Job Queue
POST/admin/jobs/cancel-bulk
Authorization
bearer_token In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Admin variant of the bulk-cancel kill switch (/admin/jobs/cancel-bulk).
Sweeps across users: a specific user when user_id is set, otherwise
every user in the system.
Response Body
application/json
curl -X POST "https://example.com/admin/jobs/cancel-bulk" \ -H "Content-Type: application/json" \ -d '{}'{ "cancelled_count": 0}POST/admin/jobs/cleanup
curl -X POST "https://example.com/admin/jobs/cleanup"{ "deleted_count": 0, "retention_days": 0}GET/api/v1/job-queues
Authorization
bearer_token In: header
Query Parameters
Search queues by name
Filter by active status
Filter by auto-created status
Filter by tag key
Page number (1-indexed)
int320 <= valueNumber of results per page
int320 <= valueSort order (e.g., "-created_at", "name")
Response Body
application/json
curl -X GET "https://example.com/api/v1/job-queues"{ "pagination": { "has_more": true, "page": 0, "page_size": 0, "total": 0 }, "queues": [ { "active": true, "auto_created": true, "completed_count": 0, "created_at": "2019-08-24T14:15:22Z", "default_priority": null, "description": "string", "dlq_config": null, "failed_count": 0, "id": "string", "name": "string", "owner_id": "string", "pending_count": 0, "processing_count": 0, "retention_days": 0, "retry_policy": null, "tags": { "property1": "string", "property2": "string" }, "updated_at": "2019-08-24T14:15:22Z" } ]}POST/api/v1/job-queues
Authorization
bearer_token In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request to create a new job queue
Response Body
application/json
curl -X POST "https://example.com/api/v1/job-queues" \ -H "Content-Type: application/json" \ -d '{ "name": "string" }'{ "created_at": "2019-08-24T14:15:22Z", "id": "string", "name": "string"}GET/api/v1/job-queues/{queue_id}
Authorization
bearer_token In: header
Path Parameters
Queue ID
Response Body
application/json
curl -X GET "https://example.com/api/v1/job-queues/string"{ "active": true, "auto_created": true, "completed_count": 0, "created_at": "2019-08-24T14:15:22Z", "default_priority": null, "description": "string", "dlq_config": null, "failed_count": 0, "id": "string", "name": "string", "owner_id": "string", "pending_count": 0, "processing_count": 0, "retention_days": 0, "retry_policy": null, "tags": { "property1": "string", "property2": "string" }, "updated_at": "2019-08-24T14:15:22Z"}PATCH/api/v1/job-queues/{queue_id}
Authorization
bearer_token In: header
Path Parameters
Queue ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request to update an existing job queue
Response Body
application/json
curl -X PATCH "https://example.com/api/v1/job-queues/string" \ -H "Content-Type: application/json" \ -d '{}'{ "active": true, "auto_created": true, "completed_count": 0, "created_at": "2019-08-24T14:15:22Z", "default_priority": null, "description": "string", "dlq_config": null, "failed_count": 0, "id": "string", "name": "string", "owner_id": "string", "pending_count": 0, "processing_count": 0, "retention_days": 0, "retry_policy": null, "tags": { "property1": "string", "property2": "string" }, "updated_at": "2019-08-24T14:15:22Z"}DELETE/api/v1/job-queues/{queue_id}
Authorization
bearer_token In: header
Path Parameters
Queue ID
Query Parameters
Force deletion even if queue has pending jobs
Response Body
curl -X DELETE "https://example.com/api/v1/job-queues/string"GET/api/v1/job-queues/{queue_id}/dlq
Authorization
bearer_token In: header
Path Parameters
Queue ID
Query Parameters
Maximum number of dead-lettered entries to return (default 50, max 500)
int320 <= valueResponse Body
application/json
curl -X GET "https://example.com/api/v1/job-queues/string/dlq"{ "entries": [ { "dead_lettered_at": 0, "entry_id": "string", "error": "string", "job": null, "job_id": "string" } ], "queue": "string", "total": 0}POST/api/v1/job-queues/{queue_id}/dlq/redrive
Authorization
bearer_token In: header
Path Parameters
Queue ID
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request to redrive (replay) dead-lettered jobs of a queue back onto the
schedule. With no job_ids every redrivable dead-lettered job for the queue
is replayed; otherwise only the listed ones are.
Response Body
application/json
curl -X POST "https://example.com/api/v1/job-queues/string/dlq/redrive" \ -H "Content-Type: application/json" \ -d '{}'{ "redriven_count": 0, "skipped_job_ids": [ "string" ]}POST/api/v1/job-queues/{queue_id}/pause
Authorization
bearer_token In: header
Path Parameters
Queue ID
Response Body
application/json
curl -X POST "https://example.com/api/v1/job-queues/string/pause"{ "active": true, "auto_created": true, "completed_count": 0, "created_at": "2019-08-24T14:15:22Z", "default_priority": null, "description": "string", "dlq_config": null, "failed_count": 0, "id": "string", "name": "string", "owner_id": "string", "pending_count": 0, "processing_count": 0, "retention_days": 0, "retry_policy": null, "tags": { "property1": "string", "property2": "string" }, "updated_at": "2019-08-24T14:15:22Z"}POST/api/v1/job-queues/{queue_id}/resume
Authorization
bearer_token In: header
Path Parameters
Queue ID
Response Body
application/json
curl -X POST "https://example.com/api/v1/job-queues/string/resume"{ "active": true, "auto_created": true, "completed_count": 0, "created_at": "2019-08-24T14:15:22Z", "default_priority": null, "description": "string", "dlq_config": null, "failed_count": 0, "id": "string", "name": "string", "owner_id": "string", "pending_count": 0, "processing_count": 0, "retention_days": 0, "retry_policy": null, "tags": { "property1": "string", "property2": "string" }, "updated_at": "2019-08-24T14:15:22Z"}GET/api/v1/jobs
Authorization
bearer_token In: header
Query Parameters
Job status enum
Value in
- "scheduled"
- "processing"
- "completed"
- "failed"
- "cancelled"
int640 <= valueint640 <= valueint320 <= valueint320 <= valueResponse Body
application/json
curl -X GET "https://example.com/api/v1/jobs"{ "jobs": [ { "attempts": 0, "completed_at": 0, "created_at": "2019-08-24T14:15:22Z", "error": "string", "id": "string", "last_attempt_at": 0, "payload": null, "priority": "critical", "queue": "string", "scheduled_at": 0, "status": "scheduled", "updated_at": "2019-08-24T14:15:22Z", "user_id": "string", "webhook_config": { "active": true, "created_at": 0, "events": [ "string" ], "headers": { "property1": "string", "property2": "string" }, "id": "string", "secret": "string", "updated_at": 0, "url": "string" } } ], "limit": 0, "offset": 0, "total": 0}POST/api/v1/jobs/cancel-bulk
Authorization
bearer_token In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request to bulk-cancel scheduled jobs (emergency kill switch). Only jobs
in the scheduled state are cancelled — that includes jobs parked
between retry attempts. Filters narrow the target set; with no filters,
every scheduled job owned by the caller is cancelled.
Response Body
application/json
curl -X POST "https://example.com/api/v1/jobs/cancel-bulk" \ -H "Content-Type: application/json" \ -d '{}'{ "cancelled_count": 0}POST/api/v1/jobs/schedule
Authorization
bearer_token In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request to schedule a new job
Response Body
application/json
curl -X POST "https://example.com/api/v1/jobs/schedule" \ -H "Content-Type: application/json" \ -d '{ "webhook": { "url": "string" } }'{ "job_id": "string", "queue": "string", "scheduled_at": 0, "status": "scheduled"}POST/api/v1/jobs/schedule-batch
Authorization
bearer_token In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Request to schedule multiple jobs
Response Body
application/json
curl -X POST "https://example.com/api/v1/jobs/schedule-batch" \ -H "Content-Type: application/json" \ -d '{ "jobs": [ { "webhook": { "url": "string" } } ] }'{ "failed": [ { "error": "string", "index": 0 } ], "failure_count": 0, "success_count": 0, "successful": [ { "job_id": "string", "queue": "string", "scheduled_at": 0, "status": "scheduled" } ], "total": 0}GET/api/v1/jobs/{job_id}
Authorization
bearer_token In: header
Path Parameters
Job ID
Response Body
application/json
curl -X GET "https://example.com/api/v1/jobs/string"{ "attempts": 0, "completed_at": 0, "created_at": "2019-08-24T14:15:22Z", "error": "string", "id": "string", "last_attempt_at": 0, "payload": null, "priority": "critical", "queue": "string", "scheduled_at": 0, "status": "scheduled", "updated_at": "2019-08-24T14:15:22Z", "user_id": "string", "webhook_config": { "active": true, "created_at": 0, "events": [ "string" ], "headers": { "property1": "string", "property2": "string" }, "id": "string", "secret": "string", "updated_at": 0, "url": "string" }}DELETE/api/v1/jobs/{job_id}
Authorization
bearer_token In: header
Path Parameters
Job ID
Response Body
curl -X DELETE "https://example.com/api/v1/jobs/string"GET/api/v1/queues
curl -X GET "https://example.com/api/v1/queues"[ "string"]GET/api/v1/queues/{queue_name}/stats
Authorization
bearer_token In: header
Path Parameters
Queue name
Response Body
application/json
curl -X GET "https://example.com/api/v1/queues/string/stats"{ "avg_processing_time_ms": 0, "completed_last_hour": 0, "failed_last_hour": 0, "oldest_job_age_seconds": 0, "processing": 0, "queue": "string", "scheduled": 0, "success_rate": 0.1}GET/health/job_queue
curl -X GET "https://example.com/health/job_queue"{ "processor_running": true, "redis": "string", "scheduler_running": true, "status": "string"}