Skip to content

List this tenant's jobs

GET
/v1/jobs
curl --request GET \
--url https://example.com/v1/jobs \
--header 'Authorization: Bearer <token>'

List job headers, newest first — always scoped to the calling tenant.

tenant_id is server-injected (never caller-supplied); when the caller doesn’t narrow job_type, the filter defaults to the workflow job types so the listing never strays outside this surface.

job_type
Any of:
Array<string>
Allowed values: MODEL_GENERATOR BACKGROUND_GENERATOR COMPLEMENTARY_GARMENT_GENERATOR PRODUCT_TO_MODEL_DIRECT PRODUCT_TO_MODEL_PHASED BACKGROUND_SWAP_WITH_IMAGE BACKGROUND_SWAP_WITH_SPEC MODEL_SWAP_WITH_IMAGE

Filter to one or more job types (repeatable). Omit for the default workflow set.

status
Any of:
JobStatus

Studio job lifecycle. Mirrors studio.schema.common.JobStatus.

string
Allowed values: NOT_STARTED IN_PROGRESS SUCCESS FAILURE

Filter to one job status.

created_after
Any of:
string format: date-time

Keep jobs created strictly after this.

limit
Any of:
integer
>= 1 <= 200
offset
Any of:
integer
X-Shopify-Hmac-Sha256
Any of:
string

Successful Response

Media type application/json
JobListResponse

Paged GET /v1/jobs response.

object
jobs
Jobs

The page of job headers, newest first.

Array<object>
JobSummaryResponse

One job header in a GET /v1/jobs listing.

job_type is typed as a plain string on this boundary (studio may add job types without a gateway release); the filter side stays the strict :data:CtmJobType Literal.

object
public_id
required
Public Id

The job’s ULID public_id.

string
job_type
required
Job Type

The job’s type (UPPER_SNAKE, e.g. MODEL_GENERATOR).

string
status
required
JobStatus

The job’s current status.

string
Allowed values: NOT_STARTED IN_PROGRESS SUCCESS FAILURE
created_at
required
Created At

Job creation timestamp (UTC).

string format: date-time
limit
required
Limit

Page size that was applied.

integer
offset
required
Offset

Page offset that was applied.

integer
count
required
Count

Number of jobs in this page.

integer
Example
{
"jobs": [
{
"status": "NOT_STARTED"
}
]
}

Validation Error

Media type application/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Example generated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}