Execute a document processing step asynchronously
Process documents using the specified Step configuration asynchronously.
Supported file formats:
- image/jpeg (JPEG)
- image/png (PNG)
- image/gif (GIF)
- image/bmp (BMP)
- image/webp (WebP)
- application/pdf (PDF)
Size limits:
- Maximum file size: 100MB
- URL download timeout: 30 seconds
Request methods:
- multipart/form-data: Direct file upload
- application/json with base64: Base64-encoded image
- application/json with URL: Image URL for automatic download
Async workflow:
- Submit document for processing (returns execution_id)
- Poll
/api/steps-async/status/{executionId}for completion - Retrieve extracted data when status is SUCCESS
Authorization
ApiKeyAuth Bearer token for API authentication
In: header
Path Parameters
Step ID for processing
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://app.docutray.com/api/steps-async/cm5vm9hx30001m5cgh0p9v8qa" \ -H "Content-Type: application/json" \ -d '{ "image_base64": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAAA==" }'{
"id": "cm5vm9hx30001m5cgh0p9v8qa",
"status": "ENQUEUED",
"step_id": "cm5vm9hx30001m5cgh0p9v8qb",
"step_name": "Invoice Processing"
}{
"message": "Validation error",
"errors": [
"string"
]
}{
"error": "Invalid API key"
}{
"message": "Step not found or access denied"
}{
"message": "Step not found or access denied"
}{
"message": "URL download timeout (30000ms)"
}{
"message": "File exceeds maximum allowed size (100MB)"
}{
"message": "Unsupported Content-Type. Use multipart/form-data or application/json."
}{
"error": "Rate limit exceeded",
"limitType": "minute",
"limit": 0,
"remaining": 0,
"resetTime": 0,
"retryAfter": 0
}{
"message": "Internal server error: Failed to initiate step processing"
}Start asynchronous document type identification POST
Identify the document type asynchronously from a provided list of options. **Supported file formats:** - image/jpeg (JPEG) - image/png (PNG) - image/gif (GIF) - image/bmp (BMP) - image/webp (WebP) - application/pdf (PDF) **Size limits:** - Maximum file size: 100MB - URL download timeout: 30 seconds **Request methods:** 1. **multipart/form-data**: Direct file upload 2. **application/json with base64**: Base64-encoded image 3. **application/json with URL**: Image URL for automatic download **Async workflow:** 1. Submit document for identification (returns identification_id) 2. Poll `/api/identify-async/status/{id}` for completion 3. Retrieve identified document type when status is SUCCESS
Get step execution status GET
Retrieves the current status and results of a step execution with standardized response format. **Status values:** - `ENQUEUED`: Request received, waiting to be processed - `PROCESSING`: Currently being processed - `SUCCESS`: Processing completed successfully - `ERROR`: Processing failed **Polling recommendation:** - Poll every 1-2 seconds for small documents - Poll every 3-5 seconds for large documents or PDFs