UFC Live API
Fight-night clocks and bout state. Poll with REST, push with SSE, or use room-based WebSockets (+$25/mo).
BASE
https://api.citoapi.com/api/v1UFC LiveAppend any endpoint path below.
REST
Poll GET /ufc/live for the card, then GET /ufc/live/{boutId} for the fight. Use recommendedPollSeconds from the response (about 1–2s on fight night). Empty clocks stay empty — do not invent timers.
Bash
curl "https://api.citoapi.com/api/v1/ufc/live" \
-H "x-api-key: YOUR_API_KEY"JSON
{
"success": true,
"data": {
"liveBouts": [
{
"boutId": "ufc-12938",
"status": "live",
"currentRound": 3,
"currentTime": "2:27",
"red": { "fighterName": "Fighter A" },
"blue": { "fighterName": "Fighter B" },
"lagSeconds": 2,
"recommendedPollSeconds": 2,
"source": "ufc_fightmetric_cdn"
}
]
},
"meta": {
"stream": "/api/v1/ufc/live/stream",
"websocket": "/api/v1/ufc/live/ws"
}
}Single bout: GET /ufc/live/ufc-12938 (or bare FightMetric id). Fields include status, round clock, corners, liveStats when present, method/winner when final, and lag metadata.
SSE
HTTP push without WebSockets. Filter with boutId or eventSlug.
Bash
curl -N "https://api.citoapi.com/api/v1/ufc/live/stream?eventSlug=YOUR_EVENT" \
-H "x-api-key: YOUR_API_KEY" \
-H "Accept: text/event-stream"WebSocket
wss://api.citoapi.com/api/v1/ufc/live/ws
Room subscriptions for multi-bout boards. Auth with the same API key as REST. Frames do not count against request quota. Add-on is +$25/month.
- Rooms:
bout:{id},event:{slug} - Events:
ready,subscribed,ufc.live.update,ping
Endpoints
GET/api/v1/ufc/liveLive OverviewActive card: live bouts, events, lagSeconds, recommendedPollSeconds.
GET
/api/v1/ufc/liveLive OverviewActive card: live bouts, events, lagSeconds, recommendedPollSeconds.
Bash
curl "https://api.citoapi.com/api/v1/ufc/live" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/ufc/live/eventsLive EventsFight-night events tracked by the live worker.
GET
/api/v1/ufc/live/eventsLive EventsFight-night events tracked by the live worker.
Bash
curl "https://api.citoapi.com/api/v1/ufc/live/events" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/ufc/live/events/{slug}Live Event DetailOne event + bout tracking.
GET
/api/v1/ufc/live/events/{slug}Live Event DetailOne event + bout tracking.
Bash
curl "https://api.citoapi.com/api/v1/ufc/live/events/{slug}" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/ufc/events/{slug}/liveLive MatchesAlias of /ufc/live/events/{slug}.
GET
/api/v1/ufc/events/{slug}/liveLive MatchesAlias of /ufc/live/events/{slug}.
Bash
curl "https://api.citoapi.com/api/v1/ufc/events/{slug}/live" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/ufc/live/{boutId}Live BoutOne bout: clock, fighters, liveStats, lag metadata.
GET
/api/v1/ufc/live/{boutId}Live BoutOne bout: clock, fighters, liveStats, lag metadata.
Bash
curl "https://api.citoapi.com/api/v1/ufc/live/{boutId}" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/ufc/live/{boutId}/stateLive Bout StateCompact live state (Redis preferred).
GET
/api/v1/ufc/live/{boutId}/stateLive Bout StateCompact live state (Redis preferred).
Bash
curl "https://api.citoapi.com/api/v1/ufc/live/{boutId}/state" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/ufc/live/{boutId}/snapshotsLive SnapshotsHash-diffed snapshots for one bout.
GET
/api/v1/ufc/live/{boutId}/snapshotsLive SnapshotsHash-diffed snapshots for one bout.
Bash
curl "https://api.citoapi.com/api/v1/ufc/live/{boutId}/snapshots" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/ufc/live/healthLive HealthWorker health and heartbeat lag.
GET
/api/v1/ufc/live/healthLive HealthWorker health and heartbeat lag.
Bash
curl "https://api.citoapi.com/api/v1/ufc/live/health" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/ufc/live/streamLive SSE StreamSSE push. Filter with boutId and/or eventSlug.
GET
/api/v1/ufc/live/streamLive SSE StreamSSE push. Filter with boutId and/or eventSlug.
Bash
curl "https://api.citoapi.com/api/v1/ufc/live/stream" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/ufc/live/{boutId}/socketLive Transport ContractTransport contract (SSE + WebSocket).
GET
/api/v1/ufc/live/{boutId}/socketLive Transport ContractTransport contract (SSE + WebSocket).
Bash
curl "https://api.citoapi.com/api/v1/ufc/live/{boutId}/socket" \
-H "x-api-key: YOUR_API_KEY"