{
  "openapi": "3.0.1",
  "info": {
    "title": "Esports Tournament Roster Scraper",
    "description": "Scrape esports player rosters from Liquipedia across CS, Valorant, Dota 2, LoL, Rocket League and 30+ game wikis. Returns handle, real name, nationality, role, current team, full team history, status, and social handles.",
    "version": "1.0",
    "x-build-id": "l6u6ZlpJRGOSFwcKg"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/jungle_synthesizer~esports-tournament-roster-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-jungle_synthesizer-esports-tournament-roster-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/jungle_synthesizer~esports-tournament-roster-scraper/runs": {
      "post": {
        "operationId": "runs-sync-jungle_synthesizer-esports-tournament-roster-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/jungle_synthesizer~esports-tournament-roster-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-jungle_synthesizer-esports-tournament-roster-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",
        "required": [
          "games"
        ],
        "properties": {
          "sp_intended_usage": {
            "title": "What is the intended usage of this data?",
            "minLength": 1,
            "type": "string",
            "description": "What will this data feed? E.g. lead lists, KYB checks, price tracking."
          },
          "sp_improvement_suggestions": {
            "title": "How can we improve this crawler for you?",
            "minLength": 1,
            "type": "string",
            "description": "Provide any feedback or suggestions for improvements."
          },
          "sp_contact": {
            "title": "Contact email (optional)",
            "minLength": 1,
            "type": "string",
            "description": "We'll personally help with your use case. No spam."
          },
          "games": {
            "title": "Liquipedia Game Wikis",
            "type": "array",
            "description": "Which Liquipedia game wikis to scrape. Each wiki has its own player roster. Defaults to the top 5 esports titles.",
            "items": {
              "type": "string",
              "enum": [
                "counterstrike",
                "valorant",
                "dota2",
                "leagueoflegends",
                "rocketleague",
                "mobilelegends",
                "apexlegends",
                "rainbowsix",
                "overwatch",
                "starcraft2",
                "pubgmobile",
                "fighters",
                "halo",
                "callofduty",
                "fortnite",
                "tft",
                "worldoftanks",
                "trackmania",
                "hearthstone",
                "smash",
                "heroes",
                "osu",
                "paladins",
                "freefire",
                "geoguessr",
                "crossfire",
                "deadlock",
                "easportsfc",
                "wildrift",
                "brawlstars",
                "sf6",
                "sf5",
                "tekken8",
                "tekken7",
                "guilty_gear",
                "kof",
                "melee",
                "ultimate"
              ],
              "enumTitles": [
                "Counter-Strike (CS:GO / CS2)",
                "VALORANT",
                "Dota 2",
                "League of Legends",
                "Rocket League",
                "Mobile Legends: Bang Bang",
                "Apex Legends",
                "Rainbow Six",
                "Overwatch",
                "StarCraft II",
                "PUBG Mobile",
                "Fighting Games",
                "Halo",
                "Call of Duty",
                "Fortnite",
                "Teamfight Tactics",
                "World of Tanks",
                "Trackmania",
                "Hearthstone",
                "Super Smash Bros.",
                "Heroes of the Storm",
                "osu!",
                "Paladins",
                "Free Fire",
                "GeoGuessr",
                "CrossFire",
                "Deadlock",
                "EA SPORTS FC",
                "Wild Rift",
                "Brawl Stars",
                "Street Fighter 6",
                "Street Fighter V",
                "Tekken 8",
                "Tekken 7",
                "Guilty Gear -Strive-",
                "The King of Fighters XV",
                "Super Smash Bros. Melee",
                "Super Smash Bros. Ultimate"
              ]
            },
            "default": [
              "counterstrike",
              "valorant",
              "dota2",
              "leagueoflegends",
              "rocketleague"
            ]
          },
          "sources": {
            "title": "Tournament Sources (optional)",
            "type": "array",
            "description": "Leave unset for player-roster mode. Set to switch to tournament/placement mode.",
            "items": {
              "type": "string",
              "enum": [
                "liquipedia",
                "startgg",
                "tabletop_tools"
              ],
              "enumTitles": [
                "Liquipedia tournament results",
                "start.gg tournament results",
                "tabletop.tools (unsupported, always skipped)"
              ]
            }
          },
          "dateFrom": {
            "title": "Date From (tournament mode)",
            "type": "string",
            "description": "ISO date YYYY-MM-DD. Only tournaments starting on or after this date."
          },
          "dateTo": {
            "title": "Date To (tournament mode)",
            "type": "string",
            "description": "ISO date YYYY-MM-DD. Only tournaments starting on or before this date."
          },
          "onlineOnly": {
            "title": "Online Only (start.gg, tournament mode)",
            "type": "boolean",
            "description": "When true, only return online start.gg events.",
            "default": false
          },
          "startggApiToken": {
            "title": "start.gg API Token (tournament mode)",
            "type": "string",
            "description": "Free token from start.gg/admin/profile/developer. Omit to skip the start.gg source."
          },
          "maxItems": {
            "title": "Max Players",
            "type": "integer",
            "description": "Maximum records to return (players, or tournament placements in tournament mode). Keep at 15 or below for the Apify tester (5-min timeout).",
            "default": 15
          },
          "contactEmail": {
            "title": "Contact Email (User-Agent)",
            "type": "string",
            "description": "Email address embedded in the User-Agent header sent to Liquipedia, per their API Terms of Use. Identifies your run for support and rate-limit issues.",
            "default": "contact@orbtop.com"
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}