{
  "openapi": "3.0.1",
  "info": {
    "title": "UFC Rankings & MMA Fight Data Scraper: Results, Odds, Fighters",
    "description": "Get official UFC rankings, fight results, striking and grappling stats by position, fighter profiles with reach and stance, event cards and betting odds across UFC, PFL, Bellator and more. Export JSON or CSV, or schedule a monitor that reports new results and ranking changes.",
    "version": "0.4",
    "x-build-id": "WoU0Xf9yyQTojhx9K"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/getascraper~ufc-mma-stats-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-getascraper-ufc-mma-stats-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/getascraper~ufc-mma-stats-scraper/runs": {
      "post": {
        "operationId": "runs-sync-getascraper-ufc-mma-stats-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/getascraper~ufc-mma-stats-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-getascraper-ufc-mma-stats-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "fights",
              "fighters",
              "rankings",
              "events"
            ],
            "type": "string",
            "description": "What kind of rows this run produces: fight results with stats, fighter profiles, UFC rankings, or event cards.",
            "default": "fights"
          },
          "eventIds": {
            "title": "Event IDs",
            "type": "array",
            "description": "Specific ESPN event IDs (the eventId column of Events or Fights rows). The fastest and most exact way to target a fight card.",
            "items": {
              "type": "string"
            }
          },
          "fighterIds": {
            "title": "Fighter IDs",
            "type": "array",
            "description": "ESPN fighter IDs (the fighter1Id and fighter2Id columns of Fights rows). Leave empty in Fighters mode to list fighters of the first selected promotion.",
            "items": {
              "type": "string"
            }
          },
          "promotions": {
            "title": "Promotions",
            "type": "array",
            "description": "MMA promotions to cover. UFC is the default.",
            "items": {
              "type": "string",
              "enum": [
                "ufc",
                "pfl",
                "one",
                "bellator",
                "cagewarriors",
                "ksw",
                "rizin",
                "pride",
                "strikeforce",
                "wec",
                "invicta",
                "lfa",
                "brave",
                "acb",
                "bkfc",
                "gfl",
                "contender",
                "roadfc",
                "titanfc"
              ],
              "enumTitles": [
                "UFC",
                "PFL",
                "ONE Championship",
                "Bellator",
                "Cage Warriors",
                "KSW",
                "RIZIN",
                "PRIDE",
                "Strikeforce",
                "WEC",
                "Invicta FC",
                "LFA",
                "Brave CF",
                "ACB",
                "BKFC",
                "GFL",
                "Contender Series",
                "Road FC",
                "Titan FC"
              ]
            },
            "default": [
              "ufc"
            ]
          },
          "years": {
            "title": "Years",
            "type": "array",
            "description": "Calendar years to cover, for example [2025, 2026]. When set, it takes priority over From Date and To Date.",
            "items": {
              "type": "integer"
            }
          },
          "fromDate": {
            "title": "From Date",
            "type": "string",
            "description": "First day to include, as YYYY-MM-DD or YYYYMMDD. Used when Years is empty.",
            "default": ""
          },
          "toDate": {
            "title": "To Date",
            "type": "string",
            "description": "Last day to include, as YYYY-MM-DD or YYYYMMDD. Used when Years is empty.",
            "default": ""
          },
          "eventStatus": {
            "title": "Event status",
            "enum": [
              "all",
              "upcoming",
              "completed"
            ],
            "type": "string",
            "description": "Upcoming fight cards (with odds if enabled) or finished events only. Applies to Fights and Events modes.",
            "default": "all"
          },
          "weightClass": {
            "title": "Weight Class",
            "type": "string",
            "description": "Division name filter, for example Lightweight. Also narrows the Rankings mode to that division (men and women).",
            "default": ""
          },
          "titleFightsOnly": {
            "title": "Title Fights Only",
            "type": "boolean",
            "description": "Only championship bouts (the belt is named in the title field).",
            "default": false
          },
          "resultFilter": {
            "title": "Result Filter",
            "type": "array",
            "description": "Only include bouts with these results.",
            "items": {
              "type": "string",
              "enum": [
                "win",
                "loss",
                "draw",
                "nc"
              ],
              "enumTitles": [
                "Win",
                "Loss",
                "Draw",
                "No Contest"
              ]
            }
          },
          "methodFilter": {
            "title": "Method Filter",
            "type": "array",
            "description": "Only include bouts ending by these methods.",
            "items": {
              "type": "string",
              "enum": [
                "kotko",
                "submission",
                "decision",
                "other"
              ],
              "enumTitles": [
                "KO/TKO",
                "Submission",
                "Decision",
                "Other"
              ]
            }
          },
          "stance": {
            "title": "Stance",
            "enum": [
              "Orthodox",
              "Southpaw",
              "Switch",
              "Open Stance",
              "Sideways"
            ],
            "type": "string",
            "description": "Filter fighters by fighting stance."
          },
          "minWins": {
            "title": "Minimum Wins",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Only include fighters with at least this many career wins."
          },
          "minLosses": {
            "title": "Minimum Losses",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Only include fighters with at least this many career losses."
          },
          "activeOnly": {
            "title": "Active fighters only",
            "type": "boolean",
            "description": "Fighters mode: skip retired and inactive fighters.",
            "default": false
          },
          "includeFightStats": {
            "title": "Include fight stats",
            "type": "boolean",
            "description": "Add the two per-fighter stat rows (strikes by position, takedowns, control time) after every fight row. Turn off for results only.",
            "default": true
          },
          "includeOdds": {
            "title": "Include betting odds",
            "type": "boolean",
            "description": "Fights mode: add opening and closing moneylines and the round line when the odds feed has them.",
            "default": false
          },
          "includeFightHistory": {
            "title": "Include fight history",
            "type": "boolean",
            "description": "Fighters mode: also output every fight of each fighter across all promotions, newest data first as served.",
            "default": false
          },
          "monitorName": {
            "title": "Monitor name",
            "type": "string",
            "description": "Schedule the Actor and set a name to receive only what changed since the last run: new fights and results (Fights mode) or ranking moves (Rankings mode). Leave empty for a normal run."
          },
          "maxItems": {
            "title": "Max Items",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of rows to save. A fight with its two stat rows counts as three rows.",
            "default": 25
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "Kept for compatibility with existing schedules. The public sources used here do not need a proxy.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}