Jobs
Pay for a quote and start a job, then poll it until the asset is ready.
Create a job
POST /api/v1/asset-jobs/
Authorization: Bearer rbk_...
Idempotency-Key: 5b2f0c1e-...
Content-Type: application/json{ "quote_id": "7c0e..." }Needs assets:write. The Idempotency-Key header (or an idempotency_key field) is required: 1–128 letters, digits, ., _, : or -. A UUID works. Sending the same key again returns the same job instead of paying twice.
HTTP 202 for a new job, or HTTP 200 for a replay:
{
"id": "41b8...",
"status": "queued",
"model": "flux-2-flash",
"input": { "prompt": "mossy stone tile, top-down", "asset_type": "texture_tile", "seed": 18342 },
"idempotency_key": "5b2f0c1e-...",
"credits": 250,
"charged_credits": 250,
"refunded_credits": 0,
"asset": null,
"error": null,
"created_at": "2026-10-27T18:04:11Z",
"completed_at": null,
"deadline_at": "2026-10-27T18:14:11Z"
}Credits are charged when the job starts and returned if it fails.
Get a job
GET /api/v1/asset-jobs/{job_id}/
Authorization: Bearer rbk_...Needs assets:read. status is queued, running, succeeded, failed, canceled or timed_out. Poll with backoff; when it's succeeded, asset has the result and its url. When it fails, error has the reason.
List jobs
GET /api/v1/asset-jobs/The account's jobs, newest first, paginated.