Skip to main content
GET
Rate limit tier: general (600 req/min) — see Rate limits. Fetches a run by its run_id. The path is flat — no workflow id, no /results/ sub-path — and the response carries the run’s status and its results envelope in one shot, so a completed run is a single round-trip.

Status model

The endpoint always returns 200 while the run exists — there are no precondition errors while the extraction is in flight. Poll until status is terminal; a run that ended in error or cancelled stays readable with results: null. For production integrations, prefer webhooks over polling. The results envelope matches the shape documented at Response formats — the same parse, classifications, splits, and extractions sections v2 returned from its /results/ route. It’s the read path that changed, not the envelope. Unknown ids — including runs belonging to another organization — return 404.

Authorizations

Authorization
string
header
required

API key issued from app.anyformat.ai/api-key. Send as Authorization: Bearer <key>.

Path Parameters

run_id
string
required

Response

Successful Response

Flat single-run read: lifecycle status plus results inline.

results is null until the run reaches processed, then carries the same results envelope GET /v2/workflows/{id}/files/{id}/results/ returns — no separate results endpoint, no 412 while in flight.

id
string
required

Unique identifier of the run (hyphenated UUID).

Example:

"069dcc2c-e14c-7606-8000-2ee4fb17b4f9"

workflow_id
string
required

The workflow this run executed (hyphenated UUID).

Example:

"0686bb97-8c30-70f0-8000-97669e000eb8"

document_packet_id
string
required

The document packet the run executed on (hyphenated UUID).

Example:

"069dcc2c-e14c-7606-8000-2ee4fb17b4e1"

status
enum<string>
required

Execution status. Non-terminal: queued, in_progress. Terminal: processed (success), error, cancelled.

Available options:
queued,
in_progress,
processed,
error,
cancelled
Example:

"processed"

created_at
string<date-time> | null

Timestamp when the run was triggered (ISO 8601).

updated_at
string<date-time> | null

Timestamp of the run's last status change (ISO 8601).

results
ResultsResponseV3 · object | null

Extraction results envelope; null until status is processed. Same shape as the v2 results endpoint.