Major League Baseball Schedule API

Operations pertaining to schedules

OpenAPI Specification

major-league-baseball-schedule-api-openapi.yml Raw ↑
openapi: 3.0.1
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