Synchronous Extraction
Endpoint
Section titled “Endpoint”- Path:
POST /api/v1/extractFields - Method:
POST
Auth Requirements
Section titled “Auth Requirements”Authorization: api-key <environment-api-key>
Request Schema
Section titled “Request Schema”Send one of:
multipart/form-dataapplication/jsonwith base64 file data in top-levelfile
Supported top-level fields:
filerequiredfilenameoptional for JSON base64 uploadstemplateNamerequired unlessfilterNameis usedfilterNameoptionaldocumentSplittingoptional booleanreturnDocumentsoptional booleanreturnTextoptional booleanschemaChunkingoptional:autoorcombinedpasswordoptional string for protected documents
Contract rules enforced by the runtime:
- Nested
options.*is rejected returnBoundingBoxesis deprecated and ignored; new clients should omit it- Only the fields listed in this guide are part of the client-facing contract
- JSON/base64 uploads should use a full data URL so the file type is explicit
Response Schema
Section titled “Response Schema”Successful response:
{ "success": true, "data": { "completionTime": 2.31, "originalName": "invoice.pdf", "processedPages": 1, "documents": [ { "extracted": true, "documentName": "Invoice", "averageDocumentConfidence": 0.98, "sourcePages": [1], "content": {} } ] }}Each documents[] item may also include:
messagereasonreturnedDocumentBase64whenreturnDocuments=truereturnedTextwhenreturnText=trueusedTemplateName
Status Codes
Section titled “Status Codes”200 OKextraction completed400 Bad Requestinvalid request shape or invalid option values401 Unauthorizedmissing or invalid API key404 Not Foundrequested template/filter-scoped resource not found429 Too Many Requestssync extraction capacity guard rejected the request
Example Request
Section titled “Example Request”curl -X POST "$BASE_URL/api/v1/extractFields" \ -H "Authorization: api-key $API_KEY" \ -F "file=@invoice.pdf" \ -F "templateName=invoice" \ -F "returnText=true"Example Response
Section titled “Example Response”{ "success": true, "data": { "completionTime": 2.31, "originalName": "invoice.pdf", "processedPages": 1, "documents": [ { "extracted": true, "documentName": "Invoice", "averageDocumentConfidence": 0.98, "sourcePages": [1], "content": {}, "returnedText": "Invoice Number: INV-1001" } ] }}