fighterapi-com Stats + aggregation API

The Stats + aggregation API from fighterapi-com — 5 operation(s) for stats + aggregation.

Operations 5

POST /v1/get_fight Fight #
POST /v1/get_fighter Fighter #
POST /v1/get_fighter_fights Fighter fights #
POST /v1/get_leaders Leaders #
POST /v1/get_odds Odds #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/fighterapi-com:fighterapi-com-stats-aggregation-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

fighterapi-com-stats-aggregation-api-openapi.yml Raw ↑
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