{"record":{"id":"94872c7094eb93a6","repo":"Mintplex-Labs/anything-llm","slug":"user-not-found-94872c","errorCode":null,"errorMessage":"User not found.","messagePattern":"User not found\\.","errorType":"http","errorClass":null,"httpStatus":403,"severity":"error","filePath":"server/utils/middleware/validBrowserExtensionApiKey.js","lineNumber":31,"sourceCode":"  if (!bearerKey) {\n    response.status(403).json({\n      error: \"No valid API key found.\",\n    });\n    return;\n  }\n\n  const apiKey = await BrowserExtensionApiKey.validate(bearerKey);\n  if (!apiKey) {\n    response.status(403).json({\n      error: \"No valid API key found.\",\n    });\n    return;\n  }\n\n  if (multiUserMode) {\n    const user = await User.get({ id: apiKey.user_id });\n    if (!user) {\n      response.status(403).json({\n        error: \"User not found.\",\n      });\n      return;\n    }\n\n    if (user.suspended) {\n      response.status(401).json({\n        error: \"User is suspended from system\",\n      });\n      return;\n    }\n\n    response.locals.user = user;\n  }\n\n  response.locals.apiKey = apiKey;\n  next();\n}","sourceCodeStart":13,"sourceCodeEnd":49,"githubUrl":"https://github.com/Mintplex-Labs/anything-llm/blob/3aec848f2885144aa8f1e53b9731a04310d5d558/server/utils/middleware/validBrowserExtensionApiKey.js#L13-L49","documentation":"Lookup guard in validBrowserExtensionApiKey middleware: the API key validated but, in multi-user mode, no User row exists for the key's bound user_id (user deleted), so the session cannot be established and 403 is returned.","triggerScenarios":"Browser extension API key resolved to no user. Triggered when the user owning the key no longer exists (validBrowserExtensionApiKey.js:31).","commonSituations":"See trigger scenarios.","solutions":["The API key references a user that no longer exists; re-issue a new browser extension API key for an existing user.","Verify the user account was not deleted in multi-user mode."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"3aec848f2885144aa8f1e53b9731a04310d5d558","analyzedAt":"2026-08-18T10:02:21.017Z","contentChangedAt":"2026-08-18T10:02:21.017Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}