UFC live SSE stream
Server-Sent Events push feed of live bout updates, on every plan. Filter with boutId and/or eventSlug. Events: ready (sent first; carries delay_seconds and billing), ufc.live.snapshot (the bout's current state, when boutId is set), ufc.live.update, ping every 15 seconds, and error just before the server closes the stream.
Billing. An open stream counts toward your monthly quota like polling: one request when it connects, then one request for every 15 seconds it stays open (the same as polling /ufc/live every 15 seconds). When the quota runs out the stream sends an error event with code MONTHLY_LIMIT_REACHED and closes; connecting with no quota left returns 429.
Delay. Free and Starter plans receive every event 60 seconds late, the same delay as the polled live endpoints. Other plans are real-time.
Bout ids. Live payloads (stream, WebSocket, /ufc/live/{boutId}/state) carry boutId in the live form (ufc-..., also the room name) and cardBoutId, the id the card itself uses (/ufc/events/{slug}/bouts, /ufc/bouts/{id}). Join live updates to the card on cardBoutId; every endpoint accepts either form.
Room-based WebSockets: /ufc/live/ws.
Request
- Base URL: https://api.citoapi.com/api/v1
- URL: https://api.citoapi.com/api/v1/ufc/live/stream
- Auth: API key in header x-api-key
Query parameters
Response
text/event-stream (events: ready, ufc.live.snapshot, ufc.live.update, ping, error)
Changes
No recorded changes to this operation across all 1 revision of this API.