Skip to main content
Ingest serves the API on port 8080 of the fineparser-ingest Service. Submit documents, poll the jobs until they finish, then download the results. The API has no authentication. Put it behind something that authenticates callers before you expose it. See Exposing the API.

POST /parse

A multipart/form-data request. The answer is 202 Accepted with a job ID per file. A request with several files also returns a batchId. A file that could not be accepted is listed under errors.
POST /parse is not idempotent. Submitting again after a timeout may create duplicate jobs.

GET /jobs/{jobId}

A finished job’s status is kept for orchestrator.jobRetentionSeconds (24 hours by default). After that this endpoint returns 404, but the results can still be downloaded.

GET /batch/{batchId}

Returns status for the whole request, and jobs, with each job’s jobId, file, and status in the same shape as GET /jobs/{jobId}. A batch is successful only when every job is.

GET /jobs/{jobId}/{name}

Downloads a result. Each files entry is already {jobId}/{name}, so append it to /jobs/. Downloading deletes nothing.

Errors

Errors are JSON: {"error":{"code":"...","message":"..."}}. Branch on code.

Limits

CORS

To call the API from a browser on another origin, list the origins in ingest.cors.allowedOrigins, comma-separated. None are allowed by default.