BKFC API
Bare Knuckle Fighting Championship as clean JSON: every event since 2018, results with method, round and time, round-by-round punch stats, fighter records, official rankings, champions, and results as they post on fight night. New to it? Start with the BKFC API overview.
https://api.citoapi.com/api/v1Punch stats for every bout since BKFC 1
Every completed bout carries punches landed and thrown for both corners, split by head and body, distance and clinch, with knockdowns, round by round. That is the full official stat record back to the first BKFC card in 2018, not just recent events.
GET /api/v1/bkfc/bouts/bkfc-fight-night-bethlehem--gregoris-cisneros--ryan-petersen/roundsWhat BKFC data is available?
Results pages
Event results with method, round and time for every bout, and punch totals for both corners.
Stat dashboards
Round-by-round punch breakdowns and career accuracy for fighter pages and fight analysis.
Fighter profiles
Records, rankings, fight histories and official headshots across 1,600+ fighters.
Rankings pages
Official rankings per division, champions and interim champions.
Matchup previews
Head-to-head records and both fighters' recent results before the next card.
Fight night
Card status and results as each bout finishes, by polling /bkfc/live or holding the /bkfc/live/stream SSE connection open.
From the next card to a result
6 calls, real idsGET /bkfc/events/upcomingGET /bkfc/events/bkfc-95-newark/boutsGET /bkfc/liveGET /bkfc/bouts/bkfc-fight-night-bethlehem--gregoris-cisneros--ryan-petersenGET /bkfc/bouts/bkfc-fight-night-bethlehem--gregoris-cisneros--ryan-petersen/roundsGET /bkfc/fighters/ryan-petersenPromotion & search
GET/api/v1/bkfcBkfcPromotion overview: counts, next event, current champions.
/api/v1/bkfccurl "https://api.citoapi.com/api/v1/bkfc" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/search?q=arlovskiSearchSearch fighters and events by name.
/api/v1/bkfc/search?q=arlovskicurl "https://api.citoapi.com/api/v1/bkfc/search?q=arlovski" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/sync/statusStatusData freshness: when each source was last read.
/api/v1/bkfc/sync/statuscurl "https://api.citoapi.com/api/v1/bkfc/sync/status" \
-H "x-api-key: YOUR_API_KEY"Events & fight cards
GET/api/v1/bkfc/eventsList EventsEvery event since BKFC 1 (2018), newest first: numbered cards, Fight Nights, Prospects and international events.
/api/v1/bkfc/eventscurl "https://api.citoapi.com/api/v1/bkfc/events" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/events/upcomingUpcoming ScheduleScheduled cards with date, local start time, venue and bout count.
/api/v1/bkfc/events/upcomingcurl "https://api.citoapi.com/api/v1/bkfc/events/upcoming" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/events/recentRecent MatchesMost recent completed cards.
/api/v1/bkfc/events/recentcurl "https://api.citoapi.com/api/v1/bkfc/events/recent" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/events/{slug}SlugOne event: date, venue, status (slug e.g. bkfc-95-newark).
/api/v1/bkfc/events/{slug}curl "https://api.citoapi.com/api/v1/bkfc/events/{slug}" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/events/{slug}/boutsEvent BoutsThe fight card in running order with results and punch totals.
/api/v1/bkfc/events/{slug}/boutscurl "https://api.citoapi.com/api/v1/bkfc/events/{slug}/bouts" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/events/{slug}/changesChangesCard changes: bouts added, cancelled or moved, results and finish times corrected.
/api/v1/bkfc/events/{slug}/changescurl "https://api.citoapi.com/api/v1/bkfc/events/{slug}/changes" \
-H "x-api-key: YOUR_API_KEY"Bouts & punch stats
GET/api/v1/bkfc/bouts?fighter=ryan-petersenEvent BoutsQuery bouts by fighter, event, division or status.
/api/v1/bkfc/bouts?fighter=ryan-petersencurl "https://api.citoapi.com/api/v1/bkfc/bouts?fighter=ryan-petersen" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/bouts/{boutId}BoutIdFull bout: winner, method, round, time, scheduled rounds, red and blue corners with punch totals.
/api/v1/bkfc/bouts/{boutId}curl "https://api.citoapi.com/api/v1/bkfc/bouts/{boutId}" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/bouts/{boutId}/roundsBout RoundsRound-by-round punch stats per corner: landed and thrown, head and body, distance and clinch, knockdowns. Starter plan and above.
/api/v1/bkfc/bouts/{boutId}/roundscurl "https://api.citoapi.com/api/v1/bkfc/bouts/{boutId}/rounds" \
-H "x-api-key: YOUR_API_KEY"Fighters & head-to-head
GET/api/v1/bkfc/fightersList FightersEvery fighter with record and division.
/api/v1/bkfc/fighterscurl "https://api.citoapi.com/api/v1/bkfc/fighters" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/fighters/{slug}SlugFighter profile: record, nickname, ranking, official headshot where BKFC publishes one.
/api/v1/bkfc/fighters/{slug}curl "https://api.citoapi.com/api/v1/bkfc/fighters/{slug}" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/fighters/{slug}/fightsFightsComplete BKFC fight history, newest first.
/api/v1/bkfc/fighters/{slug}/fightscurl "https://api.citoapi.com/api/v1/bkfc/fighters/{slug}/fights" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/fighters/{slug}/statsSlug StatsCareer punch stats: landed and thrown, accuracy, knockdowns, by target and position. Starter plan and above.
/api/v1/bkfc/fighters/{slug}/statscurl "https://api.citoapi.com/api/v1/bkfc/fighters/{slug}/stats" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/h2h?fighter1=…&fighter2=…H2hHead-to-head between two fighters (slugs or names).
/api/v1/bkfc/h2h?fighter1=…&fighter2=…curl "https://api.citoapi.com/api/v1/bkfc/h2h?fighter1=…&fighter2=…" \
-H "x-api-key: YOUR_API_KEY"Rankings, divisions & champions
GET/api/v1/bkfc/rankingsRankingsOfficial BKFC rankings for every division, with the champion.
/api/v1/bkfc/rankingscurl "https://api.citoapi.com/api/v1/bkfc/rankings" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/rankings/{division}DivisionOne division's rankings (division e.g. heavyweight, womens-flyweight).
/api/v1/bkfc/rankings/{division}curl "https://api.citoapi.com/api/v1/bkfc/rankings/{division}" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/championsChampionsCurrent champion and interim champion of every division.
/api/v1/bkfc/championscurl "https://api.citoapi.com/api/v1/bkfc/champions" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/divisionsDivisionsAll divisions, men's and women's.
/api/v1/bkfc/divisionscurl "https://api.citoapi.com/api/v1/bkfc/divisions" \
-H "x-api-key: YOUR_API_KEY"Fight night
GET/api/v1/bkfc/liveLive MatchesCards in progress, with each bout's status and result as it posts.
/api/v1/bkfc/livecurl "https://api.citoapi.com/api/v1/bkfc/live" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/live/{boutId}BoutIdThe latest state of one bout.
/api/v1/bkfc/live/{boutId}curl "https://api.citoapi.com/api/v1/bkfc/live/{boutId}" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/live/streamStreamServer-sent events: a message whenever a bout's status or result changes.
/api/v1/bkfc/live/streamcurl "https://api.citoapi.com/api/v1/bkfc/live/stream" \
-H "x-api-key: YOUR_API_KEY"GET/api/v1/bkfc/live/healthHealthWhether the fight-night pipeline is running and how fresh it is.
/api/v1/bkfc/live/healthcurl "https://api.citoapi.com/api/v1/bkfc/live/health" \
-H "x-api-key: YOUR_API_KEY"Bout example
curl "https://api.citoapi.com/api/v1/bkfc/bouts/bkfc-fight-night-bethlehem--gregoris-cisneros--ryan-petersen" \
-H "x-api-key: YOUR_API_KEY"
{
"boutId": "bkfc-fight-night-bethlehem--gregoris-cisneros--ryan-petersen",
"slot": "Main event",
"weightClass": { "label": "Welterweight" },
"scheduledRounds": 6,
"status": "completed",
"winner": { "slug": "ryan-petersen", "name": "Ryan Petersen" },
"result": { "method": "tko", "methodText": "TKO", "round": 1, "time": "1:59" },
"fighters": [
{ "corner": "red", "slug": "ryan-petersen", "result": "win",
"totals": { "landed": 31, "thrown": 52, "knockdowns": 1, "accuracyPct": 59.6 } },
{ "corner": "blue", "slug": "gregoris-cisneros", "result": "loss",
"totals": { "landed": 48, "thrown": 68, "knockdowns": 0, "accuracyPct": 70.6 } }
]
}Headshots are official BKFC images. Each one carries its credit (© Bare Knuckle Fighting Championship (BKFC)) in the payload: show it wherever the image appears.
Good to know
- Fight night data is results as each bout finishes. Punch stats arrive with the official result, not punch by punch during a round.
- BKFC publishes a headshot for about 40% of fighters. The rest come back with
headshot: nullrather than someone else's photo. - Add every BKFC card to a calendar: api.citoapi.com/api/v1/public/calendars/bkfc.ics
- Aliases are accepted:
/bkfc/athletesmaps to fighters and/bkfc/fight-cardsto events. OpenAPI spec: api.citoapi.com/api/v1/openapi.json
Start with a free key
Every BKFC endpoint except career stats and round-by-round stats works on the free plan, with 500 requests a month. Starter ($15/month) adds those with 10,000 requests, with BKFC as your included game.