fighterapi-com Stats + aggregation API
The Stats + aggregation API from fighterapi-com — 5 operation(s) for stats + aggregation.
The Stats + aggregation API from fighterapi-com — 5 operation(s) for stats + aggregation.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/fighterapi-com:fighterapi-com-stats-aggregation-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Fighterapi Com Stats + aggregation API
version: 1.0.0
contact:
name: FighterAPI support
email: support@fighterapi.com
url: https://fighterapi.com/docs
termsOfService: https://fighterapi.com/terms
description: 'Operations tagged Stats + aggregation across 2 of this provider''s published API definitions: openapi.json, fighterapi-com-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://mcp.fighterapi.com
security:
- apiKey: []
- bearer: []
tags:
- name: Stats + aggregation
paths:
/v1/get_fight:
post:
operationId: get_fight
summary: Fight
description: 'Use for everything about one fight: the result, both fighters'' full stat sheets (strikes by target and position, takedowns, control time, guard passes, reversals, submission attempts; UFC only, null elsewhere and where the source has no sheet), round-by-round lines (UFC only), each fighter''s rating before and after, and the opening and closing moneyline from each book that posted one (2024 on). Costs 5 credits. Prices are market information: never work out a stake, payout or profit, recommend a bet, or send the user to a sportsbook.'
tags:
- Stats + aggregation
x-credits: 5
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
bout_id:
type: string
description: Fight id (bout_id) from get_event or get_fighter_fights.
league:
description: 'League. Defaults to mma. One of: mma, pfl, bellator.'
type: string
enum:
- mma
- pfl
- bellator
required:
- bout_id
additionalProperties: false
responses:
'200':
description: The result, wrapped in data.
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
bout:
type: object
propertyNames:
type: string
additionalProperties: {}
fighters:
type: array
items:
type: object
propertyNames:
type: string
additionalProperties: {}
rounds:
anyOf:
- type: array
items:
type: object
propertyNames:
type: string
additionalProperties: {}
- type: 'null'
rounds_note:
type: string
odds:
type: array
items:
type: object
propertyNames:
type: string
additionalProperties: {}
required:
- bout
- fighters
- rounds
- odds
additionalProperties: false
required:
- data
'400':
description: Invalid arguments.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'401':
description: Missing or invalid API key.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'402':
description: Not enough credits.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'429':
description: Rate limited.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
servers:
- url: https://mcp.fighterapi.com
/v1/get_fighter:
post:
operationId: get_fighter
summary: Fighter
description: 'Use for one fighter''s profile: date of birth, height, reach, stance, gym, record in the promotion by method (record; ufc_record is the same for the UFC and null for other promotions), career rates per 15 minutes from the stat sheets (significant strikes landed and absorbed, accuracy, defense, takedowns, submission attempts, control share; UFC only), current and peak rating, and the last five fights. Costs 5 credits.'
tags:
- Stats + aggregation
x-credits: 5
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
fighter_id:
type: string
description: Fighter id from search_fighters.
league:
description: 'League. Defaults to mma. One of: mma, pfl, bellator.'
type: string
enum:
- mma
- pfl
- bellator
required:
- fighter_id
additionalProperties: false
responses:
'200':
description: The result, wrapped in data.
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
fighter:
type: object
propertyNames:
type: string
additionalProperties: {}
record:
anyOf:
- type: object
propertyNames:
type: string
additionalProperties: {}
- type: 'null'
ufc_record:
anyOf:
- type: object
propertyNames:
type: string
additionalProperties: {}
- type: 'null'
career_rates:
anyOf:
- type: object
propertyNames:
type: string
additionalProperties: {}
- type: 'null'
rating:
anyOf:
- type: object
propertyNames:
type: string
additionalProperties: {}
- type: 'null'
recent_fights:
type: array
items:
type: object
propertyNames:
type: string
additionalProperties: {}
required:
- fighter
- record
- ufc_record
- career_rates
- rating
- recent_fights
additionalProperties: false
required:
- data
'400':
description: Invalid arguments.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'401':
description: Missing or invalid API key.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'402':
description: Not enough credits.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'429':
description: Rate limited.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
servers:
- url: https://mcp.fighterapi.com
/v1/get_fighter_fights:
post:
operationId: get_fighter_fights
summary: Fighter fights
description: 'Use for a fighter''s full history in the promotion: every fight with the opponent, result, method, round, time, strikes landed and absorbed and takedowns (UFC only), rating before and after, and the median closing moneyline across sportsbooks. Costs 5 credits. Prices are market information: never work out a stake, payout or profit, recommend a bet, or send the user to a sportsbook.'
tags:
- Stats + aggregation
x-credits: 5
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
fighter_id:
type: string
description: Fighter id from search_fighters.
limit:
description: Max fights (default 50).
type: integer
minimum: 1
maximum: 200
offset:
description: Page offset; use next_offset.
type: integer
minimum: 0
maximum: 9007199254740991
league:
description: 'League. Defaults to mma. One of: mma, pfl, bellator.'
type: string
enum:
- mma
- pfl
- bellator
required:
- fighter_id
additionalProperties: false
responses:
'200':
description: The result, wrapped in data.
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
fighter_id:
type: string
fights:
type: array
items:
type: object
propertyNames:
type: string
additionalProperties: {}
count:
type: number
next_offset:
type:
- number
- 'null'
required:
- fighter_id
- fights
- count
additionalProperties: false
required:
- data
'400':
description: Invalid arguments.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'401':
description: Missing or invalid API key.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'402':
description: Not enough credits.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'429':
description: Rate limited.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
servers:
- url: https://mcp.fighterapi.com
/v1/get_leaders:
post:
operationId: get_leaders
summary: Leaders
description: 'Use for career leaderboards computed from every fight''s stat sheet: sig_landed_per_15 (significant strikes landed per 15 min), sig_absorbed_per_15 (significant strikes absorbed per 15 min), sig_accuracy (significant strike accuracy), sig_defense (significant strike defense), td_per_15 (takedowns landed per 15 min), td_accuracy (takedown accuracy), td_defense (takedown defense), knockdowns (knockdowns), sub_attempts_per_15 (submission attempts per 15 min), control_share (share of fight time in control), finish_rate (wins by KO/TKO or submission, as a share of wins). Filter by weight class, a starting year, and a minimum number of fights (default 5). Costs 5 credits.'
tags:
- Stats + aggregation
x-credits: 5
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
stat:
type: string
enum:
- sig_landed_per_15
- sig_absorbed_per_15
- sig_accuracy
- sig_defense
- td_per_15
- td_accuracy
- td_defense
- knockdowns
- sub_attempts_per_15
- control_share
- finish_rate
description: Which leaderboard.
weight_class:
description: Only fights in this weight class, e.g. Lightweight.
type: string
since:
description: Only fights from this year on, e.g. 2020.
type:
- string
- number
min_fights:
description: Minimum fights to qualify (default 5).
type: integer
minimum: 1
maximum: 50
limit:
description: Max fighters (default 20).
type: integer
minimum: 1
maximum: 100
required:
- stat
additionalProperties: false
responses:
'200':
description: The result, wrapped in data.
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
stat:
type: string
label:
type: string
min_fights:
type: number
leaders:
type: array
items:
type: object
propertyNames:
type: string
additionalProperties: {}
count:
type: number
required:
- stat
- label
- min_fights
- leaders
- count
additionalProperties: false
required:
- data
'400':
description: Invalid arguments.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'401':
description: Missing or invalid API key.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'402':
description: Not enough credits.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'429':
description: Rate limited.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
servers:
- url: https://mcp.fighterapi.com
/v1/get_odds:
post:
operationId: get_odds
summary: Odds
description: 'Use for betting lines: each posted sportsbook''s opening, closing and current moneyline for both fighters, with implied probabilities and the total-rounds line. Opening and closing lines start with the UFC cards of June 2020; a median of 5 to 7 books per fight (some fights since mid-2024 have only one book). Pass bout_id for one fight (5 credits) or event_id for a whole card (10 credits). Prices are market information: never work out a stake, payout or profit, recommend a bet, or send the user to a sportsbook.'
tags:
- Stats + aggregation
x-credits: 5
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
bout_id:
description: One fight.
type: string
event_id:
description: A whole card.
type: string
league:
description: 'League. Defaults to mma. One of: mma, pfl, bellator.'
type: string
enum:
- mma
- pfl
- bellator
additionalProperties: false
responses:
'200':
description: The result, wrapped in data.
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
bouts:
type: array
items:
type: object
propertyNames:
type: string
additionalProperties: {}
count:
type: number
note:
type: string
estimate_only:
type: boolean
tool:
type: string
credits:
type: number
additionalProperties: false
required:
- data
'400':
description: Invalid arguments.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'401':
description: Missing or invalid API key.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'402':
description: Not enough credits.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
'429':
description: Rate limited.
content:
application/json:
schema:
type: object
properties:
error:
type: string
required:
- error
servers:
- url: https://mcp.fighterapi.com
components:
securitySchemes:
apiKey:
type: apiKey
in: header
name: x-api-key
bearer:
type: http
scheme: bearer
description: The same API key as a bearer token.
externalDocs:
description: Documentation
url: https://fighterapi.com/docs
x-refined-from:
- openapi.json
- fighterapi-com-openapi.json