Skip to main content

A long-running background operation tracked by the API. Includes status, progress, timing, and the raw input/result JSON payloads.

jobId
string<uuid>
read-only

Unique identifier for the background job

status
enum<string>
read-only

Current job status. One of Scheduled, Processing, Done, Failed, Expired, Cancelled, or Unknown for unrecognized terminal states.

Available options:
Scheduled,
Processing,
Done,
Failed,
Expired,
Cancelled,
Unknown
category
string | null

Job category, e.g. r2/bg-jobs/email-validation. Use the suffix (email-validation) when filtering the list endpoint.

startedAt
string<date-time>
read-only

When the job started

finishedAt
string<date-time> | null

When the job reached a terminal state, or null if still running

progress
number<double> | null

Job progress in [0..1]. Null if the job hasn't reported progress yet.

Required range: 0 <= x <= 1
jsonData
string | null

Raw JSON of the input parameters captured at job creation. Opaque — shape is per-category.

jsonDataResult
string | null

Raw JSON of the job result. Populated only when status is terminal (Done / Failed). Opaque — shape is per-category.