Skip to main content
Open a persistent connection and job lifecycle events arrive as they happen. Use it for live progress in your UI instead of polling.
Auth: API key on Cloud, public and rate limited self-hosted. Read the raw stream with curl -N https://cdn.openinary.dev/queue/events -H "Authorization: Bearer <api_key>", or without the header on your own instance.

Events

Each event follows the SSE format: event: <type>\ndata: <json>\n\n The heartbeat timestamp is Unix epoch milliseconds (Date.now()), not an ISO string. The priority on job:created is always 2. The stream builds its payload from a converted job object that drops the stored priority, so a thumbnail queued at 1 still reports 2 here. Read GET /queue/jobs for the real value.

Response headers

Queue Jobs

Query job details or manage individual jobs.

Video Status

Check processing status by file path.