{
  "openapi": "3.0.1",
  "info": {
    "title": "UFC API (AI Fighting Intelligence Engine)",
    "description": "The most comprehensive MMA data & AI prediction API on Apify. Get real-time UFC fight cards, official rankings, fighter stats, head-to-head comparisons, AI-powered fight predictions, premium fantasy H2H analysis, and breaking combat sports news — all as clean, structured JSON.",
    "version": "0.0",
    "x-build-id": "EbDdGJbScYDz6Syzk"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/visita~fighting-intelligence-engine/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-visita-fighting-intelligence-engine",
        "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/visita~fighting-intelligence-engine/runs": {
      "post": {
        "operationId": "runs-sync-visita-fighting-intelligence-engine",
        "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/visita~fighting-intelligence-engine/run-sync": {
      "post": {
        "operationId": "run-sync-visita-fighting-intelligence-engine",
        "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",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "⚙️ Operation Mode",
            "enum": [
              "api_query",
              "predict_event",
              "fantasy_h2h"
            ],
            "type": "string",
            "description": "Select the task (Billed Operations).",
            "default": "api_query"
          },
          "query_type": {
            "title": "🔍 API Query Type",
            "enum": [
              "upcoming_events",
              "fighter_head_to_head",
              "latest_news",
              "current_rankings",
              "fight_predictions",
              "fighter_profile",
              "fighter_factors",
              "tournament_calendar",
              "championship_medalists",
              "tournament_locations",
              "organization_profile",
              "organizations",
              "weight_classes",
              "combat_styles",
              "athletes",
              "events",
              "weight_class_leaders",
              "recent_events"
            ],
            "type": "string",
            "description": "Select query",
            "default": "upcoming_events"
          },
          "target_org": {
            "title": "🏢 Organization / Promotion",
            "enum": [
              "ALL",
              "UFC",
              "PFL",
              "Bellator MMA",
              "ONE Championship",
              "BKFC",
              "KSW",
              "Rizin Fighting Federation",
              "Invicta FC",
              "Boxing",
              "International Boxing Association",
              "World Boxing",
              "World Karate Federation",
              "USA Boxing",
              "GLORY Kickboxing",
              "CWFC",
              "LFA",
              "Deep MMA",
              "Shooto",
              "Pride FC",
              "Strikeforce",
              "World Extreme Cagefighting"
            ],
            "type": "string",
            "description": "Select target organization or promotion for queries (events, roster, rankings, predictions) and daily sync. Choose 'ALL' for universal multi-org queries.",
            "default": "UFC"
          },
          "division": {
            "title": "⚖️ Weight Division",
            "type": "string",
            "description": "Optional weight class filter (e.g. 'Heavyweight', 'Lightweight', 'Welterweight', 'Bantamweight')."
          },
          "sport_name": {
            "title": "🥋 Sport Discipline",
            "type": "string",
            "description": "Optional combat sport filter (e.g. 'MMA', 'Boxing', 'Kickboxing', 'Bare Knuckle Boxing', 'Karate')."
          },
          "location": {
            "title": "📍 City / Location Filter",
            "type": "string",
            "description": "Optional city, region, or country filter for events and venues (e.g. 'Las Vegas', 'Tokyo', 'London', 'Poland', 'Riyadh')."
          },
          "fighter_name": {
            "title": "👤 Fighter Name",
            "type": "string",
            "description": "Enter the name of a fighter (e.g. 'Jon Jones') for Fighter Profile API."
          },
          "fighter_a": {
            "title": "🥊 Fighter A",
            "type": "string",
            "description": "First fighter for Head-to-Head stats (e.g. 'Jon Jones')."
          },
          "fighter_b": {
            "title": "🥊 Fighter B",
            "type": "string",
            "description": "Second fighter for Head-to-Head stats (e.g. 'Stipe Miocic')."
          },
          "news_limit": {
            "title": "📰 Number of News Articles",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "How many recent news articles to fetch for 'Latest MMA News' query.",
            "default": 10
          },
          "num_events": {
            "title": "📊 Number of Events",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "How many upcoming events to get predictions for (predict_event mode). Default 1 = next event only.",
            "default": 1
          },
          "admin_daily_sync": {
            "title": "🚀 Daily System Sync",
            "type": "boolean",
            "description": "Smart 6-stage pipeline: roster, upcoming events, event completion, conditional rankings (only after fights complete), news, AI news enrichment. Schedule daily.",
            "default": false
          },
          "admin_decision_sync": {
            "title": "🧠 Decision Engine Sync",
            "type": "boolean",
            "description": "Regenerates AI fight predictions for ALL upcoming events using latest news and stats. Schedule daily, 30 min after Daily Sync.",
            "default": false
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}