Skip to main content

Endpoint

Authentication

This endpoint requires an OAuth access token. Send it as a bearer token:
Required scope: sor:write

Request Body

The request body must be a JSON object with the following fields:

Required Fields

Optional Fields

Attribute Object

Each object in the attributes array contains:

Document Field Override Object

Each object in the field_overrides array sets a pre-filled value for a specific org field, overriding the value Chamelio’s AI extraction would produce:

Request Example

Response

Success Response

Status Code: 200 OK

Response Fields

Error Responses

400 Bad Request

Returned when the access token has no user behind it. client_credentials tokens act as the admin who created the application, so this applies only to tokens issued before application creators were recorded.

401 Unauthorized

Returned when the access token is missing, unknown, revoked, or expired, or when an X-API-Key was sent instead of a bearer token. See OAuth error responses.

403 Forbidden

Returned when the token does not carry the required scope.

400 Bad Request

Returned when document_type_id is not a valid document type for your organization. Use GET /v2/core/document-types to retrieve valid values.

422 Validation Error

Returned when the request body is invalid or missing required fields.

429 Too Many Requests

Returned when your organization exceeds its per-minute request limit.

500 Internal Server Error

Returned when the document upload fails due to a server error.

Notes

The document is attributed to the access token’s user. /v2 has no impersonation, so user_email in the request body is ignored - use the API-key surface if you need to upload as another user.
Documents are processed asynchronously. After a successful upload, the document will be queued for processing. Processing time varies depending on document size and complexity.
File content must be properly base64-encoded. Ensure you encode the binary file content, not the file path or text representation.

Use Cases

This endpoint is useful for:
  • Automated document ingestion - Integrate document uploads into your existing workflows
  • Bulk document processing - Upload multiple documents programmatically
  • System integration - Connect your document management system with Chamelio
  • Custom metadata - Attach structured metadata to documents during upload for better organization and searchability