Major League Baseball Schedule API
Operations pertaining to schedules
Operations pertaining to schedules
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/major-league-baseball-schedule-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Stats API Documentation Analytics Schedule API
description: Official API for Major League Baseball.
version: 2.0.0
servers:
- url: https://statsapi.mlb.com
description: Production
- url: https://beta-statsapi.mlb.com
description: Beta
- url: https://qa-statsapi.mlb.com
description: QA
- url: http://localhost:8080
description: Local
tags:
- name: Schedule
description: Operations pertaining to schedules
x-tag-expanded: 'false'
paths:
/api/v1/schedule/postseason:
get:
tags:
- Schedule
description: This endpoint allows you to pull postseason schedules
operationId: postseasonSchedule_1
parameters:
- name: gameTypes
in: query
description: Comma delimited list of type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: seriesNumber
in: query
required: false
schema:
type: integer
format: int32
- name: teamId
in: query
description: 'Unique Team Identifier. Format: 141, 147, etc'
required: false
schema:
type: integer
format: int32
- name: sportId
in: query
description: Unique League Identifier
required: false
schema:
type: integer
format: int32
- name: useLatestGames
in: query
required: false
schema:
type: boolean
- name: useFeaturedGame
in: query
required: false
schema:
type: boolean
- name: season
in: query
required: false
schema:
type: string
- name: publicFacing
in: query
description: 'Return public, non-public or all games. Format: Public Facing = ''Y'', Non-Public Facing = ''N'', All = ''A'''
required: false
schema:
$ref: '#/components/schemas/PublicFacingEnum'
- name: fields
in: query
description: 'Comma delimited list of specific fields to be returned. Format: topLevelNode, childNode, attribute'
required: false
schema:
uniqueItems: true
type: array
items:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ScheduleRestObject'
post:
tags:
- Schedule
operationId: postseasonSchedule
parameters:
- name: season
in: query
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
/api/v1/schedule/trackingEvents:
get:
tags:
- Schedule
description: This endpoint allows you to pull schedules for tracking events
operationId: trackingEventsSchedule
parameters:
- name: calendarTypes
in: query
description: Comma delimited list of type of calendar types
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CalendarTypes'
- name: eventTypes
in: query
description: 'Comma delimited list of type of events. <b>Note: Don''t Use. This will be deprecated in favor of calendarTypes</b>'
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CalendarTypes'
- name: teamId
in: query
description: 'Unique Team Identifier. Format: 141, 147, etc'
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: leagueId
in: query
description: Unique League Identifier
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: sportId
in: query
description: Top level organization of a sport
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: gamePk
in: query
description: Unique Primary Key Representing a Game
required: false
schema:
type: integer
format: int32
- name: gamePks
in: query
description: Comma delimited list of unique primary keys
required: false
schema:
type: array
items:
type: integer
format: int32
- name: eventIds
in: query
description: A unique identifier for non-game event
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: venueIds
in: query
description: Unique Venue Identifier
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: performerIds
in: query
description: A unique identifier for non-team event performers
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: gameTypes
in: query
description: Comma delimited list of type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: gameType
in: query
description: Type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: season
in: query
description: Season of play
required: false
schema:
type: array
items:
type: string
- name: seasons
in: query
description: Comma delimited list of Seasons of play
required: false
schema:
type: array
items:
type: string
- name: date
in: query
description: 'Date of Game. Format: YYYY-MM-DD'
required: false
schema:
type: string
format: date
- name: startDate
in: query
description: 'Start date for range of data (must be used with end date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: endDate
in: query
description: 'End date for range of data (must be used with start date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: timecode
in: query
description: 'Use this parameter to return a snapshot of the data at the specified time. Format: YYYYMMDD_HHMMSS'
required: false
schema:
type: string
- name: useLatestGames
in: query
required: false
schema:
type: boolean
- name: opponentId
in: query
description: A unique identifier for the opposing team. Must be used with Team ID
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: publicFacing
in: query
description: 'Return public, non-public or all games. Format: Public Facing = ''Y'', Non-Public Facing = ''N'', All = ''A'''
required: false
schema:
$ref: '#/components/schemas/PublicFacingEnum'
- name: fields
in: query
description: 'Comma delimited list of specific fields to be returned. Format: topLevelNode, childNode, attribute'
required: false
schema:
uniqueItems: true
type: array
items:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ScheduleRestObject'
/api/v1/schedule/private:
get:
tags:
- Schedule
description: This endpoint allows you to pull schedules with authentication enforced and a "no-cache" cache-control policy
operationId: schedulePrivate
parameters:
- name: calendarTypes
in: query
description: Comma delimited list of type of calendar types
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CalendarTypes'
- name: eventTypes
in: query
description: 'Comma delimited list of type of events. <b>Note: Don''t Use. This will be deprecated in favor of calendarTypes</b>'
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CalendarTypes'
- name: scheduleEventTypes
in: query
description: Comma delimited list of type of event types
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/ScheduleEventTypes'
- name: teamId
in: query
description: 'Unique Team Identifier. Format: 141, 147, etc'
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: leagueId
in: query
description: Unique League Identifier
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: sportId
in: query
description: Top level organization of a sport
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: gamePk
in: query
description: Unique Primary Key Representing a Game
required: false
schema:
type: integer
format: int32
- name: gamePks
in: query
description: Comma delimited list of unique primary keys
required: false
schema:
type: array
items:
type: integer
format: int32
- name: eventIds
in: query
description: A unique identifier for non-game event
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: venueIds
in: query
description: Unique Venue Identifier
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: performerIds
in: query
description: A unique identifier for non-team event performers
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: gameTypes
in: query
description: Comma delimited list of type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: gameType
in: query
description: Type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: season
in: query
description: Season of play
required: false
schema:
type: array
items:
type: string
- name: seasons
in: query
description: Comma delimited list of Seasons of play
required: false
schema:
type: array
items:
type: string
- name: date
in: query
description: 'Date of Game. Format: YYYY-MM-DD'
required: false
schema:
type: string
format: date
- name: startDate
in: query
description: 'Start date for range of data (must be used with end date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: endDate
in: query
description: 'End date for range of data (must be used with start date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: timecode
in: query
description: 'Use this parameter to return a snapshot of the data at the specified time. Format: YYYYMMDD_HHMMSS'
required: false
schema:
type: string
- name: useLatestGames
in: query
required: false
schema:
type: boolean
- name: opponentId
in: query
description: A unique identifier for the opposing team. Must be used with Team ID
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: publicFacing
in: query
description: 'Return public, non-public or all games. Format: Public Facing = ''Y'', Non-Public Facing = ''N'', All = ''A'''
required: false
schema:
$ref: '#/components/schemas/PublicFacingEnum'
- name: fields
in: query
description: 'Comma delimited list of specific fields to be returned. Format: topLevelNode, childNode, attribute'
required: false
schema:
uniqueItems: true
type: array
items:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ScheduleRestObject'
/api/v1/schedule/private/{scheduleType}:
get:
tags:
- Schedule
description: This endpoint allows you to pull schedules with authentication enforced and a "no-cache" cache-control policy
operationId: schedulePrivate_1
parameters:
- name: calendarTypes
in: query
description: Comma delimited list of type of calendar types
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CalendarTypes'
- name: eventTypes
in: query
description: 'Comma delimited list of type of events. <b>Note: Don''t Use. This will be deprecated in favor of calendarTypes</b>'
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CalendarTypes'
- name: scheduleEventTypes
in: query
description: Comma delimited list of type of event types
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/ScheduleEventTypes'
- name: teamId
in: query
description: 'Unique Team Identifier. Format: 141, 147, etc'
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: leagueId
in: query
description: Unique League Identifier
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: sportId
in: query
description: Top level organization of a sport
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: gamePk
in: query
description: Unique Primary Key Representing a Game
required: false
schema:
type: integer
format: int32
- name: gamePks
in: query
description: Comma delimited list of unique primary keys
required: false
schema:
type: array
items:
type: integer
format: int32
- name: eventIds
in: query
description: A unique identifier for non-game event
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: venueIds
in: query
description: Unique Venue Identifier
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: performerIds
in: query
description: A unique identifier for non-team event performers
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: gameTypes
in: query
description: Comma delimited list of type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: gameType
in: query
description: Type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: season
in: query
description: Season of play
required: false
schema:
type: array
items:
type: string
- name: seasons
in: query
description: Comma delimited list of Seasons of play
required: false
schema:
type: array
items:
type: string
- name: date
in: query
description: 'Date of Game. Format: YYYY-MM-DD'
required: false
schema:
type: string
format: date
- name: startDate
in: query
description: 'Start date for range of data (must be used with end date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: endDate
in: query
description: 'End date for range of data (must be used with start date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: timecode
in: query
description: 'Use this parameter to return a snapshot of the data at the specified time. Format: YYYYMMDD_HHMMSS'
required: false
schema:
type: string
- name: useLatestGames
in: query
required: false
schema:
type: boolean
- name: opponentId
in: query
description: A unique identifier for the opposing team. Must be used with Team ID
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: publicFacing
in: query
description: 'Return public, non-public or all games. Format: Public Facing = ''Y'', Non-Public Facing = ''N'', All = ''A'''
required: false
schema:
$ref: '#/components/schemas/PublicFacingEnum'
- name: fields
in: query
description: 'Comma delimited list of specific fields to be returned. Format: topLevelNode, childNode, attribute'
required: false
schema:
uniqueItems: true
type: array
items:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ScheduleRestObject'
/api/v1/schedule/postseason/tuneIn:
get:
tags:
- Schedule
description: This endpoint allows you to pull postseason schedules
operationId: tuneIn
parameters:
- name: teamId
in: query
description: 'Unique Team Identifier. Format: 141, 147, etc'
required: false
schema:
type: integer
format: int32
- name: sportId
in: query
description: Unique League Identifier
required: false
schema:
type: integer
format: int32
- name: season
in: query
description: Unique Primary Key Representing a Game
required: false
schema:
type: string
- name: fields
in: query
description: 'Comma delimited list of specific fields to be returned. Format: topLevelNode, childNode, attribute'
required: false
schema:
uniqueItems: true
type: array
items:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ScheduleRestObject'
/api/v1/schedule/postseason/series:
get:
tags:
- Schedule
description: This endpoint allows you to pull postseason schedules
operationId: postseasonScheduleSeries
parameters:
- name: gameTypes
in: query
description: Comma delimited list of type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: seriesNumber
in: query
required: false
schema:
type: integer
format: int32
- name: teamId
in: query
description: 'Unique Team Identifier. Format: 141, 147, etc'
required: false
schema:
type: integer
format: int32
- name: sportId
in: query
description: Unique League Identifier
required: false
schema:
type: integer
format: int32
- name: date
in: query
description: 'Date of Game. Format: YYYY-MM-DD'
required: false
schema:
type: string
format: date
- name: startDate
in: query
description: 'Start date for range of data (must be used with end date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: endDate
in: query
description: 'End date for range of data (must be used with start date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: useLatestGames
in: query
required: false
schema:
type: boolean
- name: useFeaturedGame
in: query
required: false
schema:
type: boolean
- name: season
in: query
required: false
schema:
type: string
- name: fields
in: query
description: 'Comma delimited list of specific fields to be returned. Format: topLevelNode, childNode, attribute'
required: false
schema:
uniqueItems: true
type: array
items:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/PostseasonScheduleRestObject'
/api/v1/schedule/games/tied:
get:
tags:
- Schedule
description: This endpoint allows you to pull tie game schedules for the given season
operationId: tieGames
parameters:
- name: sportId
in: query
description: Top level organization of a sport
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: gameTypes
in: query
description: Comma delimited list of type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: season
in: query
description: Season of play
required: true
schema:
type: string
- name: fields
in: query
description: 'Comma delimited list of specific fields to be returned. Format: topLevelNode, childNode, attribute'
required: false
schema:
uniqueItems: true
type: array
items:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ScheduleRestObject'
/api/v1/schedule:
get:
tags:
- Schedule
description: View schedule info. This endpoint allows you to pull schedules
operationId: schedule
parameters:
- name: calendarTypes
in: query
description: Comma delimited list of type of calendar types
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CalendarTypes'
- name: eventTypes
in: query
description: 'Comma delimited list of type of events. <b>Note: Don''t Use. This will be deprecated in favor of calendarTypes</b>'
required: false
deprecated: true
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CalendarTypes'
- name: scheduleEventTypes
in: query
description: Comma delimited list of type of event types
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/ScheduleEventTypes'
- name: teamId
in: query
description: 'Unique Team Identifier. Format: 141, 147, etc'
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: leagueId
in: query
description: Unique League Identifier
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: sportId
in: query
description: Top level organization of a sport
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
x-lookup:
name: Sports
- name: gamePk
in: query
description: Unique Primary Key Representing a Game
required: false
schema:
type: integer
format: int32
- name: gamePks
in: query
description: Comma delimited list of unique primary keys
required: false
schema:
type: array
items:
type: integer
format: int32
- name: eventIds
in: query
description: A unique identifier for non-game event
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: venueIds
in: query
description: Unique Venue Identifier
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: performerIds
in: query
description: A unique identifier for non-team event performers
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: gameTypes
in: query
description: Comma delimited list of type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: gameType
in: query
description: Type of Game. Available types in /api/v1/gameTypes
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/GameTypeEnum'
- name: season
in: query
description: Season of play
required: false
schema:
type: array
items:
type: string
- name: seasons
in: query
description: Comma delimited list of Seasons of play
required: false
schema:
type: array
items:
type: string
- name: date
in: query
description: 'Date of Game. Format: YYYY-MM-DD'
required: false
schema:
type: string
format: date
- name: startDate
in: query
description: 'Start date for range of data (must be used with end date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: endDate
in: query
description: 'End date for range of data (must be used with start date). Format: MM/DD/YYYY'
required: false
schema:
type: string
format: date
- name: timecode
in: query
description: 'Use this parameter to return a snapshot of the data at the specified time. Format: YYYYMMDD_HHMMSS'
required: false
schema:
type: string
- name: useLatestGames
in: query
required: false
schema:
type: boolean
- name: opponentId
in: query
description: A unique identifier for the opposing team. Must be used with Team ID
required: false
schema:
uniqueItems: true
type: array
items:
type: integer
format: int32
- name: publicFacing
in: query
description: 'Return public, non-public or all games. Format: Public Facing = ''Y'', Non-Public Facing = ''N'', All = ''A'''
required: false
schema:
$ref: '#/components/schemas/PublicFacingEnum'
- name: fields
in: query
description: 'Comma delimited list of specific fields to be returned. Format: topLevelNode, childNode, attribute'
required: false
schema:
uniqueItems: true
type: array
items:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ScheduleRestObject'
/api/v1/schedule/{scheduleType}:
get:
tags:
- Schedule
description: View schedule info. This endpoint allows you to pull schedules
operationId: schedule_1
parameters:
- name: calendarTypes
in: query
description: Comma delimited list of type of calendar types
required: false
schema:
uniqueItems: true
type: array
items:
$ref: '#/components/schemas/CalendarTypes'
- name: eventTypes
in: query
description: 'Comma delimited list of type of events. <b>Note: Don''t Use. This will be deprecated in favor of calendarTypes</b>'
required: false
deprecated: true
schema:
uniqueItems: true
type: arr
# --- truncated at 32 KB (260 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/major-league-baseball/refs/heads/main/openapi/major-league-baseball-schedule-api-openapi.yml