File Upload
Upload one or multiple documents securely using the DocScanner File Upload API.
Upload Files
The File Upload API allows you to upload one or multiple documents for processing. All requests must be authenticated using an API key sent in thex-api-key header.
API keys can be generated from your Dashboard or Subscription page. Requests without a valid API key will be rejected.
Endpoint
POST /api/v1/documents/upload_filesRequest Authentication
Every request must include your API key in the request headers.
x-api-key: YOUR_API_KEY_HERERequest Format
The request must be sent as multipart/form-data. Files must be attached using thefiles[] field.
Single File Upload
curl -X POST "/api/v1/documents/upload_files" \
-H "x-api-key: YOUR_API_KEY_HERE" \
-F "files[]=@/path/to/file1.pdf"Multiple File Upload
You can upload multiple documents in a single request by attaching multiple files[] fields.
curl -X POST "/api/v1/documents/upload_files" \
-H "x-api-key: YOUR_API_KEY_HERE" \
-F "files[]=@/path/to/file1.pdf" \
-F "files[]=@/path/to/file2.jpg" \
-F "files[]=@/path/to/file3.png"Supported Formats
- PDF (.pdf)
- Images (.png, .jpg, .jpeg)
- Scanned documents
Response
On success, the API returns metadata for each uploaded file along with its initial processing status.
{
"status": 201,
"message": "1 files uploaded successfully.",
"result": [
{
"id": 102,
"user_id": 1,
"original_filename": "imagedata.jpg",
"file_type": "image",
"file_size": 74356,
"status": "processing",
"industry": null,
"created_at": "2026-01-13T15:04:27.734333+05:00",
"updated_at": "2026-01-13T15:04:27.734333+05:00",
"processed_at": null,
"s3_url": "STORAGE_IMAGE_URL/1/24eb986d-fb37-4910-8cea-fe0e1c68834c/imagedata.jpg"
}
]
}Processing Status
Uploaded files are processed asynchronously. Common status values include:
processing– File is being processedcompleted– Processing finished successfullyfailed– Processing failed
Error Responses
{
"status": 401,
"message": "API key required for API access",
"result": null
}{
"status": 400,
"message": "No files provided. Please upload the files first.",
"result": null
}Rate Limits
File upload limits and request rates depend on your active subscription plan. Exceeding limits may result in temporary request blocking.
