Retrieve the current status and progress of a specific async job.
The unique job identifier (e.g., run_abc123).
Response
Current job status: queued, running, succeeded, failed, or cancelled.
Progress information (available when status is running).
Completion percentage (0-100).
Description of the current processing step.
ISO 8601 timestamp of job creation.
ISO 8601 timestamp when job started running.
ISO 8601 timestamp when job completed (succeeded, failed, or cancelled).
Recommended seconds to wait before polling again.
Error message if status is failed.
curl http://127.0.0.1:8005/api/v1/runs/run_abc123
{
"job_id": "run_abc123",
"status": "running",
"progress": {
"percentage": 50.0,
"current_step": "Processing data"
},
"created_at": "2025-01-01T00:00:00Z",
"started_at": "2025-01-01T00:00:01Z",
"retry_after": 2
}
Polling Best Practices
- Use
retry_after: Always check for the retry_after field and wait that many seconds before polling again.
- Exponential backoff: If
retry_after is not provided, use exponential backoff starting at 2 seconds.
- Consider SSE streaming: For real-time updates, use the Stream Run endpoint instead.
Error Responses
| Status | Description |
|---|
404 | Job not found |
500 | Internal server error |
See Also