Tabula API

Upload a ZIP archive

POST
/v1/uploads/batches

Uploads a ZIP archive of up to 100 documents, 200 MB unpacked and 50 MB per file. Every file becomes an upload with the batch's document type. Files of an unsupported type are listed as failed uploads. Poll the batch until its status is no longer processing.

Authorization

apiKey
headerAuthorizationBearer <token>

A company API key created in Tabula.

Request Body

multipart/form-data
  1. body
file*string

The ZIP archive, up to 200 MB.

documentType?string

What the file is. auto lets Tabula tell supplier invoices, customer invoices and other documents apart; it does not detect bank statements. other_document files the file in other documents without booking it.

Default"auto"
Value in"auto""supplier_invoice""customer_invoice""bank_statement""other_document"
externalId?string

Your ID for the file. A repeated request with the same externalId returns the original upload. Without one, a repeated file with the same document type returns the original upload.

Length1 <= length <= 200

Response Body

Accepted

application/json
  1. response
id*string

Upload batch ID.

Formatuuid
externalId*|

The externalId sent with the archive.

documentType*string
Value in"auto""supplier_invoice""customer_invoice""bank_statement""other_document"
status*string

processing: at least one upload is queued or processing. completed: every upload completed. completed_with_errors: some uploads failed. failed: every upload failed.

Value in"processing""completed""completed_with_errors""failed"
counts*

Uploads in the batch by status.

uploads*array<>

One upload per file in the archive.

createdAt*string
Formatdate-time
curl -X POST "https://example.com/v1/uploads/batches" \  -F file="string"
{  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "externalId": "string",  "documentType": "auto",  "status": "processing",  "counts": {    "total": 0,    "queued": 0,    "processing": 0,    "completed": 0,    "failed": 0,    "deleted": 0  },  "uploads": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "batchId": "5579c111-9c50-47e2-af92-f16d52e63189",      "externalId": "string",      "fileName": "string",      "documentType": "auto",      "status": "queued",      "result": {        "type": "invoice",        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",        "url": "http://example.com"      },      "error": {        "code": "unsupported_file_type",        "message": "string"      },      "createdAt": "2019-08-24T14:15:22Z"    }  ],  "createdAt": "2019-08-24T14:15:22Z"}