{"record":{"id":"2625d5a88cb2a5ae","repo":"langgenius/dify","slug":"formdata-is-required-for-file-uploads","errorCode":null,"errorMessage":"FormData is required for file uploads","messagePattern":"FormData is required for file uploads","errorType":"validation","errorClass":"FileUploadError","httpStatus":null,"severity":"error","filePath":"sdks/nodejs-client/src/client/base.ts","lineNumber":178,"sourceCode":"      path: '/info',\n      query: user ? { user } : undefined,\n    })\n  }\n\n  getSite(user?: string): Promise<DifyResponse<JsonObject>> {\n    if (user) {\n      ensureNonEmptyString(user, 'user')\n    }\n    return this.http.request({\n      method: 'GET',\n      path: '/site',\n      query: user ? { user } : undefined,\n    })\n  }\n\n  fileUpload(form: unknown, user: string): Promise<DifyResponse<JsonObject>> {\n    if (!isFormData(form)) {\n      throw new FileUploadError('FormData is required for file uploads')\n    }\n    ensureNonEmptyString(user, 'user')\n    appendUserToFormData(form, user)\n    return this.http.request({\n      method: 'POST',\n      path: '/files/upload',\n      data: form,\n    })\n  }\n\n  filePreview(fileId: string, user: string, asAttachment?: boolean): Promise<DifyResponse<Buffer>> {\n    ensureNonEmptyString(fileId, 'fileId')\n    ensureNonEmptyString(user, 'user')\n    return this.http.request<Buffer, 'bytes'>({\n      method: 'GET',\n      path: `/files/${fileId}/preview`,\n      query: {\n        user,","sourceCodeStart":160,"sourceCodeEnd":196,"githubUrl":"https://github.com/langgenius/dify/blob/ef8544b173fd6cd7a8e71df2cab576e52bebbfbc/sdks/nodejs-client/src/client/base.ts#L160-L196","documentation":"Error \"FormData is required for file uploads\" thrown in langgenius/dify.","triggerScenarios":"Thrown at sdks/nodejs-client/src/client/base.ts:178 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"ef8544b173fd6cd7a8e71df2cab576e52bebbfbc","analyzedAt":"2026-08-12T05:15:17.394Z","schemaVersion":2},"datasetVersion":"2026-08-12T13:17:24.610Z"}