{
  "openapi": "3.0.1",
  "info": {
    "title": "ESPN Scraper: Scores, Odds, Standings — No Login, $0.93/1k",
    "description": "NFL, NBA, MLB, NHL, college and soccer in one run: live scores, schedules, betting odds (moneyline, spread, total, open/close), standings, rosters, injuries, news, rankings and box scores. Date windows, team filter, monitor mode. No login or cookies. MCP-ready for AI agents. $0.93 per 1,000 records.",
    "version": "1.0",
    "x-build-id": "9QeNgTcJBZqPEzbOi"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/fortuitous_pirate~espn-sports-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-fortuitous_pirate-espn-sports-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/fortuitous_pirate~espn-sports-scraper/runs": {
      "post": {
        "operationId": "runs-sync-fortuitous_pirate-espn-sports-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/fortuitous_pirate~espn-sports-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-fortuitous_pirate-espn-sports-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": {
          "leagues": {
            "title": "Leagues",
            "type": "array",
            "description": "One or more leagues in a single run. Slugs: nfl, college-football (ncaaf), nba, wnba, mens-college-basketball (ncaam), womens-college-basketball (ncaaw), mlb, college-baseball, nhl, eng.1 (epl), esp.1 (laliga), ger.1 (bundesliga), ita.1 (seriea), fra.1 (ligue1), usa.1 (mls), mex.1 (ligamx), uefa.champions (ucl), uefa.europa (uel), or any ESPN 'sport/league' path such as racing/f1, mma/ufc, golf/pga. Leave empty to use the single Sport/League fields below.",
            "items": {
              "type": "string"
            }
          },
          "dataTypes": {
            "title": "Data types",
            "type": "array",
            "description": "What to pull for each league. Several can be combined in one run. Leave empty to use the single Data Type field below (default scoreboard).",
            "items": {
              "type": "string",
              "enum": [
                "scoreboard",
                "schedule",
                "odds",
                "standings",
                "teams",
                "roster",
                "injuries",
                "news",
                "rankings",
                "gameSummary"
              ],
              "enumTitles": [
                "Scoreboard (scores, status, broadcasts)",
                "Schedule",
                "Betting odds (moneyline, spread, total, open/close)",
                "Standings",
                "Teams",
                "Rosters (needs Teams)",
                "Injury report",
                "News",
                "Rankings / polls (college)",
                "Game summary / box score (needs Event IDs)"
              ]
            }
          },
          "dateMode": {
            "title": "Date window",
            "enum": [
              "current",
              "today",
              "yesterday",
              "tomorrow",
              "last7Days",
              "next7Days",
              "range"
            ],
            "type": "string",
            "description": "Which days of games to return for scoreboard, schedule and odds. 'Current slate' is ESPN's default view (this week for NFL/college football, today for daily sports). 'Range' uses Start/End date. Days are US Eastern."
          },
          "startDate": {
            "title": "Start Date",
            "type": "string",
            "description": "Start date for scores/schedule/odds (YYYYMMDD or YYYY-MM-DD, e.g. 20261025). Setting it without a Date window selects 'range'."
          },
          "endDate": {
            "title": "End Date",
            "type": "string",
            "description": "End date (inclusive, up to 62 days after Start Date). If only Start Date is set, that single day is fetched."
          },
          "teams": {
            "title": "Teams",
            "type": "array",
            "description": "Filter every data type to these teams: ESPN team ids, abbreviations (KC, LAL) or name fragments (Chiefs, Lakers). Required for rosters; with schedule it returns each team's full season schedule.",
            "items": {
              "type": "string"
            }
          },
          "gameStatus": {
            "title": "Game status",
            "type": "array",
            "description": "Only return games in these states (scoreboard, schedule, odds). Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "pre",
                "in",
                "post"
              ],
              "enumTitles": [
                "Scheduled",
                "Live",
                "Final"
              ]
            }
          },
          "liveOnly": {
            "title": "Live games only",
            "type": "boolean",
            "description": "Shortcut for Game status = Live.",
            "default": false
          },
          "eventIds": {
            "title": "Event IDs",
            "type": "array",
            "description": "ESPN event (game) ids for Game summary: box score, leaders, scoring plays and per-player stats. Take them from the eventId field of scoreboard results.",
            "items": {
              "type": "string"
            }
          },
          "monitorMode": {
            "title": "Monitor mode",
            "type": "boolean",
            "description": "Return only records that are new or changed since the previous run with the same Monitor ID (score updates, line moves, new injuries, new articles). Each output row gets changeType new/changed. Schedule it to poll.",
            "default": false
          },
          "monitorId": {
            "title": "Monitor ID",
            "type": "string",
            "description": "Name of the monitor state. Use a different ID for each saved task you schedule."
          },
          "dataType": {
            "title": "Data Type (single)",
            "enum": [
              "scoreboard",
              "standings",
              "teams",
              "schedule",
              "roster",
              "news",
              "gameSummary",
              "odds",
              "injuries",
              "rankings"
            ],
            "type": "string",
            "description": "Single data type, kept for existing tasks. Ignored when Data types is set."
          },
          "sport": {
            "title": "Sport (single)",
            "enum": [
              "football",
              "basketball",
              "baseball",
              "hockey",
              "soccer"
            ],
            "type": "string",
            "description": "Sport for the single League field, kept for existing tasks. Ignored when Leagues is set."
          },
          "league": {
            "title": "League (single)",
            "enum": [
              "nfl",
              "college-football",
              "nba",
              "wnba",
              "mens-college-basketball",
              "womens-college-basketball",
              "mlb",
              "college-baseball",
              "nhl",
              "eng.1",
              "esp.1",
              "ger.1",
              "ita.1",
              "fra.1",
              "usa.1",
              "mex.1",
              "uefa.champions",
              "uefa.europa"
            ],
            "type": "string",
            "description": "Single league, kept for existing tasks. Ignored when Leagues is set. With no league at all, the run uses NFL (or the next league that has games)."
          },
          "teamId": {
            "title": "Team ID (single)",
            "type": "string",
            "description": "Single ESPN team id, kept for existing tasks. Added to Teams."
          },
          "eventId": {
            "title": "Event/Game ID (single)",
            "type": "string",
            "description": "Single ESPN event id, kept for existing tasks. Added to Event IDs."
          },
          "season": {
            "title": "Season Year",
            "type": "integer",
            "description": "Season year for team schedules, standings and rankings (ESPN labels seasons by the year they end, e.g. 2027 for NBA 2026-27). Empty = current season."
          },
          "seasonType": {
            "title": "Season Type",
            "enum": [
              "1",
              "2",
              "3",
              "4"
            ],
            "type": "string",
            "description": "For team schedules: 1=Preseason, 2=Regular Season, 3=Postseason, 4=Offseason",
            "default": "2"
          },
          "limit": {
            "title": "Max results per league and data type",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum records returned for each league and data type combination.",
            "default": 10
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}