Documents
Upload a single document for processing.
Authorizations
Path parameters
project_idstringRequiredExample:
{{project_id}}Body
filestring · binaryRequiredExample:
file:///Users/ryota/Desktop/sample_document.pdfResponses
202
Successful Response
application/json
Responseobject
422
Validation Error
application/json
post
/projects/{project_id}/documents/uploadPOST /projects/{project_id}/documents/upload HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: multipart/form-data
Accept: */*
Content-Length: 58
{
"file": "file:///Users/ryota/Desktop/sample_document.pdf"
}{}Upload multiple documents for processing.
Authorizations
Path parameters
project_idstringRequired
Query parameters
storage_typestring · enumOptionalDefault:
persistencePossible values: Body
filesstring · binary[]Required
Responses
202
Successful Response
application/json
422
Validation Error
application/json
post
/projects/{project_id}/documents/batch-uploadPOST /projects/{project_id}/documents/batch-upload HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: multipart/form-data
Accept: */*
Content-Length: 12
{
"files": ""
}{
"success": true,
"data": {
"documents": [
{
"document_id": "text",
"original_name": "text",
"status": "pending"
}
]
},
"error": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Ingest a document from a public URL.
Authorizations
Path parameters
project_idstringRequired
Query parameters
storage_typestring · enumOptionalDefault:
persistencePossible values: Body
Request to ingest a document from URL.
urlstring · uri · min: 1 · max: 2083Required
URL to ingest document from
filenameany ofOptional
Custom filename to use
stringOptional
nullOptional
Responses
202
Successful Response
application/json
422
Validation Error
application/json
post
/projects/{project_id}/documents/ingest-urlPOST /projects/{project_id}/documents/ingest-url HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 47
{
"url": "https://example.com",
"filename": "text"
}{
"success": true,
"data": {
"document_id": "text",
"original_name": "text",
"status": "pending"
},
"error": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Get document metadata and processing status.
Authorizations
Path parameters
document_idstring · uuidRequired
project_idstring · uuidRequired
Project ID to operate on
Responses
200
Successful Response
application/json
422
Validation Error
application/json
get
/projects/{project_id}/documents/{document_id}GET /projects/{project_id}/documents/{document_id} HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"data": {
"document_id": "text",
"original_name": "text",
"status": "pending",
"project_id": "text",
"abstract": "text",
"error_message": "text",
"created_at": "2025-10-24T16:48:10.982Z",
"updated_at": "2025-10-24T16:48:10.982Z",
"completed_at": "2025-10-24T16:48:10.982Z",
"file_size": 1,
"mime_type": "text",
"s3_object_key": "text"
},
"error": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Get document presigned download URL.
Authorizations
Path parameters
project_idstring · uuidRequired
Project ID to operate on
document_idstring · uuidRequired
Responses
200
Successful Response
application/json
422
Validation Error
application/json
get
/projects/{project_id}/documents/{document_id}/downloadGET /projects/{project_id}/documents/{document_id}/download HTTP/1.1
Host: localhost:8000
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"data": {
"document_id": "text",
"s3_object_key": "text",
"presigned_url": "text"
},
"error": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}