{
  "openapi": "3.0.1",
  "info": {
    "title": "ESPN Sports Scores & Schedules - NBA, NFL, MLB, NHL, MLS, EPL..",
    "description": "Get live scores, schedules, and game results from ESPN — covering NBA, NFL, MLB, NHL, MLS, EPL, NCAA, and more. Find the next game of any team. No API key needed. Filter by team, date, or status. Empty results explain why.",
    "version": "0.2",
    "x-build-id": "UyOha3vH7vFxdwbla"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/hgservices~apify-actor-espn/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-hgservices-apify-actor-espn",
        "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/hgservices~apify-actor-espn/runs": {
      "post": {
        "operationId": "runs-sync-hgservices-apify-actor-espn",
        "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/hgservices~apify-actor-espn/run-sync": {
      "post": {
        "operationId": "run-sync-hgservices-apify-actor-espn",
        "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": [
          "leagues",
          "dateMode"
        ],
        "properties": {
          "leagues": {
            "title": "Leagues",
            "type": "array",
            "description": "League codes: nba, wnba, ncaam (NCAA men's basketball), ncaaw (NCAA women's basketball), nfl, ncaaf (NCAA football), mlb, nhl, mls, epl (English Premier League), laliga, ucl (UEFA Champions League). Ask only for the leagues you need: each league costs one request per day.",
            "items": {
              "type": "string",
              "enum": [
                "nba",
                "wnba",
                "ncaam",
                "ncaaw",
                "nfl",
                "ncaaf",
                "mlb",
                "nhl",
                "mls",
                "epl",
                "laliga",
                "ucl"
              ],
              "enumTitles": [
                "NBA",
                "WNBA",
                "NCAA Men's Basketball",
                "NCAA Women's Basketball",
                "NFL",
                "NCAA Football",
                "MLB",
                "NHL",
                "MLS",
                "English Premier League",
                "La Liga",
                "UEFA Champions League"
              ]
            },
            "default": [
              "nba",
              "nfl",
              "mlb",
              "nhl",
              "ncaam",
              "wnba"
            ]
          },
          "dateMode": {
            "title": "Date Mode",
            "enum": [
              "today",
              "tomorrow",
              "yesterday",
              "thisWeek",
              "thisWeekend",
              "next7Days",
              "last7Days",
              "single",
              "range",
              "nextGames"
            ],
            "type": "string",
            "description": "nextGames: the next games that are not over, from today - per league the next game day, or with 'teams' the next game of each team. Use it for 'when do they play next'. Many leagues skip days (NFL: mostly Thu, Sun, Mon), so 'today' is often empty. today, tomorrow, yesterday: one day. thisWeek: Mon-Sun. thisWeekend: Sat-Sun. next7Days, last7Days: 7 days from or to today. single: 'date'. range: 'startDate' to 'endDate', up to 366 days. Days are in 'timezone'.",
            "default": "today"
          },
          "date": {
            "title": "Date",
            "pattern": "^[0-9]{4}-?[0-9]{2}-?[0-9]{2}$",
            "type": "string",
            "description": "Date for 'single' date mode, as YYYYMMDD (or YYYY-MM-DD)."
          },
          "startDate": {
            "title": "Start Date",
            "pattern": "^[0-9]{4}-?[0-9]{2}-?[0-9]{2}$",
            "type": "string",
            "description": "First day for 'range' date mode, as YYYYMMDD (or YYYY-MM-DD)."
          },
          "endDate": {
            "title": "End Date",
            "pattern": "^[0-9]{4}-?[0-9]{2}-?[0-9]{2}$",
            "type": "string",
            "description": "Last day for 'range' date mode, as YYYYMMDD (or YYYY-MM-DD). A range can be up to 366 days. A longer range is cut to 366 days, and the run reports this in a notice item."
          },
          "teams": {
            "title": "Team Filter",
            "type": "array",
            "description": "Only return games of these teams. Use an ESPN code (LAL, GS, NY, WSH), a common code (GSW, NYK, WAS, LAK) or a team name (Lakers, Golden State Warriors). An entry applies to every selected league. To limit it to one league, add a league prefix, for example nba:LAC. Entries that match no team are reported in a notice item. Leave empty for all teams.",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "homeAwayFilter": {
            "title": "Home/Away Filter",
            "enum": [
              "all",
              "home",
              "away"
            ],
            "type": "string",
            "description": "Only with teams: all games of those teams, only their home games, or only their away games. With dateMode nextGames, it finds the next home (or away) game.",
            "default": "all"
          },
          "gameStatus": {
            "title": "Game Status Filter",
            "type": "array",
            "description": "pre = scheduled (not started), in = in progress, post = final (also postponed or canceled). Keep all three unless you need only one kind, for example [\"post\"] for results only.",
            "items": {
              "type": "string",
              "enum": [
                "pre",
                "in",
                "post"
              ],
              "enumTitles": [
                "Scheduled",
                "In Progress",
                "Final"
              ]
            },
            "default": [
              "pre",
              "in",
              "post"
            ]
          },
          "liveOnly": {
            "title": "Live Games Only",
            "type": "boolean",
            "description": "Only games in progress at the moment of the run. Often empty: most games are in the evening (US time). For a schedule or scores, leave it false and read status.state of each game.",
            "default": false
          },
          "startingWithinHours": {
            "title": "Starting Within Hours",
            "minimum": 1,
            "maximum": 72,
            "type": "integer",
            "description": "Only scheduled games that start in the next N hours (1-72). Games in progress and final games are kept."
          },
          "nationalTvOnly": {
            "title": "National TV Only",
            "type": "boolean",
            "description": "Only games on a US national TV or streaming network (ESPN, ABC, TNT, FOX, NBC, CBS, Prime Video and others).",
            "default": false
          },
          "networkFilter": {
            "title": "Network Filter",
            "type": "array",
            "description": "Only games on these networks, as ESPN names them (for example ESPN, TNT, ABC, Prime Video). Not case-sensitive.",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "timezone": {
            "title": "Timezone",
            "type": "string",
            "description": "IANA timezone (for example America/New_York, America/Los_Angeles, Europe/London). It sets what today, tomorrow and the other relative modes mean, and the time in dateLocal. Use the user's timezone.",
            "default": "America/New_York"
          },
          "includeNotices": {
            "title": "Explain empty or changed results",
            "type": "boolean",
            "description": "When a run returns no games, or the Actor ignored or changed part of the input, write one item with type 'notice' at the start of the dataset. It says why (for example: no NFL games today, the next ones are on Thursday) and what to change. Game items have type 'game'. Turn this off if your pipeline must get game items only. The explanation is also in the run's status message and in the SUMMARY record.",
            "default": 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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}