UFC Bouts
Results, totals, round-by-round stats, and fight odds
List bouts
Paginated bouts.
Query parameters
| Parameter | Type | Description |
|---|---|---|
| page | number | Page number |
| limit | number | Page size |
| hasStats | boolean | Only bouts with stats |
| includeStats | boolean | Include stat rows |
Example
curl "https://api.citoapi.com/api/v1/ufc/bouts?hasStats=true&includeStats=true" \
-H "x-api-key: YOUR_API_KEY"Bout detail
Fighters, result, method, finish round/time, referee, weight class, event.
Example
curl "https://api.citoapi.com/api/v1/ufc/bouts/YOUR_BOUT_ID" \
-H "x-api-key: YOUR_API_KEY"Response
{
"success": true,
"data": {
"id": "…",
"event": { "slug": "ufc-300", "name": "UFC 300" },
"weightClass": "Lightweight",
"result": {
"winner": "red",
"method": "Decision - Unanimous",
"round": 5,
"time": "5:00"
}
}
}Fight totals
Knockdowns, strikes, takedowns, control. Optional ?round=.
Query parameters
| Parameter | Type | Description |
|---|---|---|
| round | number | Single-round filter |
Example
curl "https://api.citoapi.com/api/v1/ufc/bouts/YOUR_BOUT_ID/stats?round=1" \
-H "x-api-key: YOUR_API_KEY"Round-by-round
Per-fighter rows by round (head/body/leg, distance/clinch/ground when present).
Query parameters
| Parameter | Type | Description |
|---|---|---|
| round | number | Optional filter |
Example
curl "https://api.citoapi.com/api/v1/ufc/bouts/YOUR_BOUT_ID/rounds" \
-H "x-api-key: YOUR_API_KEY"Fight odds
Moneyline, fight totals, method of victory, exact round, round method, round group, fight-goes-distance, finish-only moneyline and draw, per bookmaker. This endpoint is the source of truth for odds.
Query parameters
| Parameter | Type | Description |
|---|---|---|
| bookmaker | string | all | draftkings | … |
Example
curl "https://api.citoapi.com/api/v1/ufc/bouts/YOUR_BOUT_ID/odds?bookmaker=all" \
-H "x-api-key: YOUR_API_KEY"Do not read odds from the bout object
A bout payload carries a legacy odds summary shaped like { "red": null, "blue": null }. It is a leftover from an earlier source, it is usually null, and a null there does not mean the fight has no odds. Call /ufc/bouts/{boutId}/odds or /ufc/events/{slug}/odds instead.
Prop markets are posted by bookmakers closer to the event. Moneyline usually appears first, with method of victory, exact round and round method following in the days before the card. An empty markets list for a fight weeks out is expected, not missing data.
Fight-night clocks: /docs/api/ufc/live
Ship fight detail & stats
Cito is how you build UFC research tools, fighter profiles, fight cards, rankings pages, and MMA dashboards. Hit bout detail and rounds in the sandbox.
curl "https://api.citoapi.com/api/v1/ufc/bouts/{id}" \
-H "x-api-key: YOUR_API_KEY"
curl "https://api.citoapi.com/api/v1/ufc/bouts/{id}/stats" \
-H "x-api-key: YOUR_API_KEY"
curl "https://api.citoapi.com/api/v1/ufc/bouts/{id}/rounds" \
-H "x-api-key: YOUR_API_KEY"
curl "https://api.citoapi.com/api/v1/ufc/bouts/{id}/odds?bookmaker=all" \
-H "x-api-key: YOUR_API_KEY"