Every job moves through six statuses:Documentation Index
Fetch the complete documentation index at: https://rendobar.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
| Status | Meaning |
|---|---|
waiting | Saved, queued for dispatch |
dispatched | Sent to the execution provider (Trigger.dev) |
running | Provider has started processing |
complete | Finished successfully — output available |
failed | Errored — see error.code and error.message |
cancelled | Cancelled before completion |
Each transition
Submission →waiting. Auth, rate limit, plan, credit pre-check, schema validation. If all pass, job is saved.
Dispatch → dispatched. Routed to an available provider. The provider receives presigned URLs for input download and output upload.
Execution → running. Provider downloads inputs, runs the job, uploads the result.
Completion → complete. Provider calls back, credits are deducted, webhook fires (if configured).
Failure → failed. No credits charged. Common codes:
| Code | Meaning |
|---|---|
PROVIDER_ERROR | Processing failed on the execution provider |
PROVIDER_TIMEOUT | Job exceeded the maximum allowed time |
VALIDATION_ERROR | Input file invalid or corrupted |
DISPATCH_EXHAUSTED | Job could not be dispatched after all retry attempts |
Timeouts
Each job type has a max execution time. Exceeding it auto-fails withPROVIDER_TIMEOUT; credits are refunded. A background job runs every 2 minutes to detect stuck jobs that were dispatched or running but never reported back.
Retries
Dispatch failures retry up to 3 times with exponential backoff. After the third failure the job moves to the dead-letter queue and is markedfailed.
To manually retry a failed job:
Real-time updates
Two ways to stop polling:- Webhooks — push events to your server. Recommended for production.
- WebSocket (dashboard) — the dashboard streams creation, status, progress, and balance over a per-org hub. Currently dashboard-only; programmatic clients should use webhooks.