NewRead the Bellator API docs

The Bellator API, in the UFC's shape.

The only API with official round-by-round Bellator stats in the same fields and fighter IDs as UFC data. Bellator 131 (2014) to Bellator 172 (2017): cards, results, rounds, fighters and head-to-head, ready for cross-promotion analysis and models.

  • 20 cards, 2014 to 2017
  • 173 bouts with official round stats
  • 65 fighters shared with UFC
GET /bellator200 OK
$ curl "https://api.citoapi.com/api/v1/bellator" \ -H "x-api-key: $CITO_API_KEY"
{  "success": true,  "data": {    "promotion": {      "key": "bellator",      "name": "Bellator MMA",      "sport": "mma"    },    "coverage": {      "firstEvent": "2014-11-16",      "lastEvent": "2017-02-19",      "archive": true    },    "counts": {      "events": 20,      "bouts": 232,      "boutsWithOfficialStats": 173,      "fighters": 325,      "fightersWithUfcRecord": 65    }  }}

Seamless Integration with our MCP Server

Give Claude, Cursor, and ChatGPT the Bellator archive. One command writes the MCP config, and the next MCP release adds league bellator to combat_card, combat_bout, and combat_athlete, so agents work from real bout and fighter IDs. Your key stays on your machine.

MCPInstall the Cito MCP server
Claude
Cursor
OpenAI
Python
Cito API
Next.js
Discord
Slack
GitHub

Bellator, read like UFC

Cards, results and official round stats from Bellator's 2014 to 2017 run, in the fields your UFC code already reads.

Twenty cards, 2014 to 2017

Bellator 131 in November 2014 to Bellator 172 in February 2017, each card main event first.

Results to the second

Winner, method, round and time for 232 bouts, with finish position, submission and referee.

Official round stats

Strikes, takedowns, knockdowns and control time per corner per round on 173 bouts.

The /ufc shape

Same field names and "13 of 18" formats as UFC rounds, so one parser reads both promotions.

Same fighter IDs

65 fighters keep their UFC slug, and ufcFighterSlug marks every one of them.

Careers and head-to-head

Career totals over each fighter's Bellator bouts, strikes absorbed, and every meeting between two fighters.

What does "the same shape as UFC" mean?

A Bellator round row has the same fields and formats as a /ufc round row, so a model or stat page built on UFC rounds takes Bellator rounds without a new parser. This is round 1 of Liam McGeary's title win over Tito Ortiz at Bellator 142 (September 19, 2015), from McGeary's corner.

McGeary won by triangle choke at 4:41 of round 1. Ortiz's row for the same round shows 4 of 15 significant strikes and 2 submission attempts.
FieldFormatbellator-5600, round 1, red corner
significantStrikes"landed of attempted"6 of 11
totalStrikes"landed of attempted"16 of 24
takedowns"landed of attempted"1 of 1
head / body / legSignificant strikes by target6 of 11 / 0 of 0 / 0 of 0
distance / clinch / groundSignificant strikes by position2 of 6 / 0 of 0 / 4 of 5
knockdowns / submissionAttempts / reversalsCounts0 / 0 / 0
controlTime"m:ss", as on /ufcnull (not recorded for this bout)

How do Bellator fighters link to their UFC record?

By the same slug. 65 of the 325 Bellator fighters also have a UFC record, and they keep the id they have on /ufc/fighters/{slug}: tito-ortiz and phil-davis are the same id on both APIs. Every fighter object carries ufcFighterSlug (null without a UFC record), so joining the promotions never needs a name match.

GET /api/v1/bellator/fighters/tito-ortiz
{
  "slug": "tito-ortiz",
  "name": "Tito Ortiz",
  "record": { "wins": 1, "losses": 1, "text": "1-1-0" },
  "ufc": {
    "ufcFighterSlug": "tito-ortiz",
    "ufcFighterPath": "/api/v1/ufc/fighters/tito-ortiz"
  }
}

What is in the Bellator archive, and what is missing?

Twenty cards from Bellator's 2014 to 2017 run. Most bouts carry official round-by-round stats; a few cards are partial and some prelims have results without stats, and hasStats on every event and bout says which.

Bellator archive
Cards20: Bellator 131 (November 16, 2014) to Bellator 172 (February 19, 2017)
Bouts232, each with winner, method, round and time
Official round-by-round stats173 of the 232 bouts
Fighters325, of whom 65 also have a UFC record
Partial cardsBellator 148, 149 and 172 hold only some of their bouts (172 has no Fedor vs Mitrione)
Not coveredLive data, rankings and upcoming cards

What is the first Bellator endpoint to call?

List the cards that carry stats with /bellator/events?hasStats=true, open one with /bellator/events/{slug}, then pull any bout's rounds with /bellator/bouts/{boutId}/rounds.

curl
curl "https://api.citoapi.com/api/v1/bellator/events?hasStats=true" \
  -H "x-api-key: $CITO_API_KEY"

Endpoints you can ship with

Five groups, one UFC key. Start with a card, open a bout's rounds, then follow a fighter to their UFC record.

Bouts & round stats

Result, method, round, time, finish and referee for every bout, and official round-by-round stats on 173 of 232, in /ufc's field names and formats.

View docs
  • GET/api/v1/bellator/bouts

    Query bouts by fighter, opponent, event, weight class, method, title fight or hasStats.

  • GET/api/v1/bellator/bouts/{boutId}

    One bout: corners with totals, result, finish position and submission, referee, every round.

  • GET/api/v1/bellator/bouts/{boutId}/rounds

    Per corner per round: strikes, takedowns, control time, by target and position.

  • GET/api/v1/bellator/bouts/{boutId}/stats

    Paid plans: whole-fight totals (boutStats) and every round (roundStats).

FAQs

Coverage, plans, identity and agents

Can't find what you're looking for? Contact our customer support team

Read the Bellator docs

Build cross-promotion models

Create a free key with UFC as your game and call your first Bellator endpoint in a minute. The full archive with round stats is on Pro.