{"record":{"id":"6db90bd6c5ab5af9","repo":"Mintplex-Labs/anything-llm","slug":"document-processing-api-is-not-online-document-6db90b","errorCode":null,"errorMessage":"Document processing API is not online. Document ${originalname} will not be parsed.","messagePattern":"Document processing API is not online\\. Document (.+?) will not be parsed\\.","errorType":"http","errorClass":null,"httpStatus":500,"severity":"error","filePath":"server/endpoints/workspacesParsedFiles.js","lineNumber":138,"sourceCode":"\n  app.post(\n    \"/workspace/:slug/parse\",\n    [\n      validatedRequest,\n      flexUserRoleValid([ROLES.all]),\n      handleFileUpload,\n      validWorkspaceSlug,\n    ],\n    async function (request, response) {\n      try {\n        const user = await userFromSession(request, response);\n        const workspace = response.locals.workspace;\n        const Collector = new CollectorApi();\n        const { originalname } = request.file;\n        const processingOnline = await Collector.online();\n\n        if (!processingOnline) {\n          return response.status(500).json({\n            success: false,\n            error: `Document processing API is not online. Document ${originalname} will not be parsed.`,\n          });\n        }\n\n        const { success, reason, documents } =\n          await Collector.parseDocument(originalname);\n        if (!success || !documents?.[0]) {\n          return response.status(500).json({\n            success: false,\n            error: reason || \"No document returned from collector\",\n          });\n        }\n\n        // Get thread ID if we have a slug\n        const { threadSlug = null } = reqBody(request);\n        const thread = threadSlug\n          ? await WorkspaceThread.get({","sourceCodeStart":120,"sourceCodeEnd":156,"githubUrl":"https://github.com/Mintplex-Labs/anything-llm/blob/3aec848f2885144aa8f1e53b9731a04310d5d558/server/endpoints/workspacesParsedFiles.js#L120-L156","documentation":"Availability check in the document parse endpoint: CollectorApi.online() reported the document-processing (collector) service as unreachable, so the uploaded file cannot be parsed and the request fails with 500 naming the affected file.","triggerScenarios":"Document processing API (collector) is offline. Triggered when the collector health check fails before parsing an uploaded document, so the document cannot be parsed.","commonSituations":"See trigger scenarios.","solutions":["Start the document collector service (it must be running on COLLECTOR_PORT, default 8888).","Check COLLECTOR_PORT and the collector host configuration so the server can reach it.","Look at the collector process logs for a crash or port conflict, then retry the parse."],"exampleFix":null,"handlingStrategy":"retry","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-14T05:17:10.506Z"}