Build a fantasy MMA app
Slates, fighter pool, and scoring from UFC results
Slate
bash
curl "https://api.citoapi.com/api/v1/ufc/events/upcoming" \
-H "x-api-key: YOUR_API_KEY"
curl "https://api.citoapi.com/api/v1/ufc/events/{slug}/bouts" \
-H "x-api-key: YOUR_API_KEY"Pin lineups to bout IDs, not display names.
Fighters
bash
curl "https://api.citoapi.com/api/v1/ufc/fighters/{slug}" \
-H "x-api-key: YOUR_API_KEY"
curl "https://api.citoapi.com/api/v1/ufc/rankings" \
-H "x-api-key: YOUR_API_KEY"Scoring
bash
# Result: winner, method, round
curl "https://api.citoapi.com/api/v1/ufc/bouts/{id}" \
-H "x-api-key: YOUR_API_KEY"
# Totals: strikes, knockdowns, control
curl "https://api.citoapi.com/api/v1/ufc/bouts/{id}/stats" \
-H "x-api-key: YOUR_API_KEY"
# Per round
curl "https://api.citoapi.com/api/v1/ufc/bouts/{id}/rounds" \
-H "x-api-key: YOUR_API_KEY"javascript
function scoreBout(bout, stats) {
let pts = 0;
if (bout.result?.winner === "red") pts += 20;
if (/KO|TKO|Submission/i.test(bout.result?.method || "")) pts += 10;
pts += (stats?.sigStrikes || 0) * 0.1;
return pts;
}Score after the bout result and stats settle. Live numbers can lag. Live UI optional via Live API.
Ship fantasy scoring
Use Cito for UFC fight cards, fighter pools, rankings, and results. Lock a slate in the sandbox, then score from bout results and stats.
bash
curl "https://api.citoapi.com/api/v1/ufc/events/upcoming" \
-H "x-api-key: YOUR_API_KEY"
curl "https://api.citoapi.com/api/v1/ufc/events/{slug}/bouts" \
-H "x-api-key: YOUR_API_KEY"
# After the fight — result + totals
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"