Upload a file
Changed onUpload a file to a workspace.
Files are added to an upload session and queued for asynchronous processing. To track progress, retrieve the file details using the GET endpoints to check the current status.
Idempotent upload: When external_metadata.external_id is provided and a manually-uploaded document with the same external ID already exists in the target workspace, the existing document is returned with 200 OK instead of creating a duplicate. This makes bulk re-runs safe without requiring a pre-check. Datasource-imported documents are not affected.
Accepted file formats: csv, doc, docx, htm, html, jpeg, jpg, json, md, odp, odt, pdf, png, ppt, pptx, txt, xhtml, xls, xlsx, yaml, yml
Customization Options:
- title: Customize the document title (defaults to filename without extension)
- filename: Override the uploaded filename
- parser: Specify a custom ingestion pipeline instead of using the default
Request
- Base URLhttps://api.lighton.ai
- URLhttps://api.lighton.ai/api/v3/files
- AuthHTTP bearer
Request body application/x-www-form-urlencoded
Response
Document already exists (idempotent). Returned when external_metadata.external_id matches a manually-uploaded document in the same workspace. The existing document is returned without creating a duplicate.
Changes
- breaking
added
subschema #2to theresponse propertyoneOflist for the response status - breaking
added
subschema #2to theresponse propertyoneOflist for the response status - breaking
added
subschema #2to theresponse propertyoneOflist for the response status - info
request property
deprecated (media type: multipart/form-data) - info
request property
deprecated (media type: application/x-www-form-urlencoded) - info
added the media type
application/jsonfor the response with the status - info
added the media type
application/jsonfor the response with the status - info
added the media type
application/jsonfor the response with the status - info
added the media type
application/jsonfor the response with the status - info
added the non-success response with the status
- info
added the non-success response with the status
- info
removed from the
response propertyallOflist for the response status - info
removed from the
response propertyallOflist for the response status - info
removed from the
response propertyallOflist for the response status - info
added the required property
to the response with the status - info
added the required property
to the response with the status - info
added the required property
to the response with the status
- breaking