/developers
Developer docsAtom Files ↗
← API referenceFile intelligence · API access unavailable
API REFERENCE / FILE INTELLIGENCE

POST /v1/files/{file_id}/processing-runs

Start or rerun selected enabled processors for one immutable version.

Request fields

LocationFieldTypeRequiredDescription
HeaderAuthorizationstringYesCredential scoped to the authorized resource.
HeaderContent-Typestring (media type)Yesapplication/json.
Pathfile_idstringYesStable Atom file ID.
HeaderIdempotency-KeystringYesStable retry identity; retrying must return the same run.
Bodyversion_idstringYesImmutable source version to process.
Bodyoutputsstring (extensible)YesSpecific enabled output kinds to produce or regenerate.
Examples · extensiblethumbnailpage_ocrtranscriptdocument_summary

Request example

Example request
POST /v1/files/file_789/processing-runs
Authorization: Bearer <analysis-manage token>
Idempotency-Key: run-8427
Content-Type: application/json

{
  "version_id": "ver_012",
  "outputs": [
    "page_ocr",
    "document_summary"
  ]
}

HTTP status codes

StatusMeaning
202 AcceptedSuccess response shown below.
400 Bad RequestInvalid source version or output kinds.
401 UnauthorizedMissing, expired, or invalid credential.
403 ForbiddenCredential is valid but lacks the required scope or role.
404 Not FoundFile or version is not visible to this caller.
409 ConflictRequested output is disabled or the idempotency key was reused with different input.
429 Too Many RequestsRate limit reached; honor Retry-After when provided.
503 Service UnavailableService temporarily unavailable; retry safely.

Response fields

FieldTypeExample
run_idstringrun_123
file_idstringfile_789
version_idstringver_012
statusstring (enum)queued
Allowed values · closed enumqueuedrunningcancellation_requestedcompletedpartially_completedfailedcancelled
status_urlstring/v1/processing-runs/run_123

Response example

Example response
202 Accepted
Content-Type: application/json

{
  "run_id": "run_123",
  "file_id": "file_789",
  "version_id": "ver_012",
  "status": "queued",
  "status_url": "/v1/processing-runs/run_123"
}

How it works

This creates a retry-safe run, not a new file version. A disabled processor cannot be started through this endpoint. Regenerated artifacts receive new IDs and retain provenance; an old result is not overwritten in place.