Skip to content

job_terminal

HTTP status: 409 Conflict

  1. Check the job's current status with GET /api/v1/jobs/{id}. Terminal statuses are completed, failed, and canceled — none of these accept further mutation.
  2. For a re-run, submit a NEW job against the same URL with POST /api/v1/jobs. Don't try to "restart" a terminal job in place — that pattern doesn't exist.
  3. For a cancel, cancel only queued or running jobs. Polling for completed and then calling cancel returns this code (race condition; treat it as success).
  4. For the result body, terminal jobs still serve GET /api/v1/jobs/{id}/result until retention prunes them — only the job record itself is immutable.

The job reached a terminal state and we stopped accepting mutations against it. State transitions are one-way: queued → running → (completed|failed|canceled). Once a job enters one of the final three, it stays there. This is a specific case of conflict.

Contact support with your request_id (looks like req_01HF3JKB...). We'll trace the state transitions.