Score and rewrite requests create asynchronous jobs. Creation returns 202 with
a job id and an initial state. Poll the typed job endpoint until the job reaches
a terminal state.
Public job states:
text
queued
running
succeeded
failed
cancelled
Create responses are intentionally small:
json
{
"jobId": "job_000224",
"state": "queued"
}
A queued job response contains only the id and state:
json
{
"jobId": "job_000225",
"state": "queued"
}
A failed job response includes a public error summary:
json
{
"jobId": "job_000226",
"state": "failed",
"error": {
"code": "worker_failed",
"message": "The job failed while processing.",
"retryable": false
}
}
List routes return metadata only, not item-level results or customer text:
Use the matching typed endpoint for each job kind:
text
POST /v1/score-jobs
GET /v1/score-jobs
GET /v1/score-jobs/{jobId}
POST /v1/score-jobs/{jobId}/cancel
POST /v1/rewrite-jobs
GET /v1/rewrite-jobs
GET /v1/rewrite-jobs/{jobId}
POST /v1/rewrite-jobs/{jobId}/cancel
Typed routes do not return jobs from the other kind.