Tribune Media · Capability

TMS OnConnect API — Sports

TMS OnConnect API — Sports. 5 operations. Lead operation: Get Organization Airings. Self-contained Naftiko capability covering one Tribune Media business surface.

Run with Naftiko Tribune MediaSports

What You Can Do

GET
Getorganizationairings — Get Organization Airings
/v1/v1-1/sports/organizations/{organizationid}/airings
GET
Getteamairings — Get Team Airings
/v1/v1-1/sports/teams/{teambrandid}/airings
GET
Getsportbyid — Get Sport Details
/v1/v1-1/sports/{sportsid}
GET
Getsporteventairings — Get Sports Event Airings
/v1/v1-1/sports/{sportsid}/events/airings
GET
Getsportnoneventairings — Get Sports Non-Event Airings
/v1/v1-1/sports/{sportsid}/non-events/airings

MCP Tools

get-organization-airings

Get Organization Airings

read-only idempotent
get-team-airings

Get Team Airings

read-only idempotent
get-sport-details

Get Sport Details

read-only idempotent
get-sports-event-airings

Get Sports Event Airings

read-only idempotent
get-sports-non-event-airings

Get Sports Non-Event Airings

read-only idempotent

Capability Spec

tms-onconnect-sports.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: TMS OnConnect API — Sports
  description: 'TMS OnConnect API — Sports. 5 operations. Lead operation: Get Organization Airings. Self-contained Naftiko
    capability covering one Tribune Media business surface.'
  tags:
  - Tribune Media
  - Sports
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    TRIBUNE_MEDIA_API_KEY: TRIBUNE_MEDIA_API_KEY
capability:
  consumes:
  - type: http
    namespace: tms-onconnect-sports
    baseUri: https://data.tmsapi.com
    description: TMS OnConnect API — Sports business capability. Self-contained, no shared references.
    resources:
    - name: v1.1-sports-organizations-organizationId-airings
      path: /v1.1/sports/organizations/{organizationId}/airings
      operations:
      - name: getorganizationairings
        method: GET
        description: Get Organization Airings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: organizationId
          in: path
          type: string
          required: true
        - name: lineupId
          in: query
          type: string
        - name: startDateTime
          in: query
          type: string
        - name: endDateTime
          in: query
          type: string
        - name: includeDetail
          in: query
          type: boolean
        - name: imageSize
          in: query
          type: string
        - name: api_key
          in: query
          type: string
          required: true
    - name: v1.1-sports-teams-teamBrandId-airings
      path: /v1.1/sports/teams/{teamBrandId}/airings
      operations:
      - name: getteamairings
        method: GET
        description: Get Team Airings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: teamBrandId
          in: path
          type: string
          required: true
        - name: lineupId
          in: query
          type: string
        - name: startDateTime
          in: query
          type: string
        - name: endDateTime
          in: query
          type: string
        - name: includeDetail
          in: query
          type: boolean
        - name: imageSize
          in: query
          type: string
        - name: market
          in: query
          type: string
        - name: api_key
          in: query
          type: string
          required: true
    - name: v1.1-sports-sportsId
      path: /v1.1/sports/{sportsId}
      operations:
      - name: getsportbyid
        method: GET
        description: Get Sport Details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sportsId
          in: path
          type: string
          required: true
        - name: includeOrg
          in: query
          type: boolean
        - name: officialOrg
          in: query
          type: boolean
        - name: imageSize
          in: query
          type: string
        - name: api_key
          in: query
          type: string
          required: true
    - name: v1.1-sports-sportsId-events-airings
      path: /v1.1/sports/{sportsId}/events/airings
      operations:
      - name: getsporteventairings
        method: GET
        description: Get Sports Event Airings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sportsId
          in: path
          type: string
          required: true
        - name: lineupId
          in: query
          type: string
          required: true
        - name: startDateTime
          in: query
          type: string
          required: true
        - name: endDateTime
          in: query
          type: string
        - name: liveOnly
          in: query
          type: boolean
        - name: imageSize
          in: query
          type: string
        - name: api_key
          in: query
          type: string
          required: true
    - name: v1.1-sports-sportsId-non-events-airings
      path: /v1.1/sports/{sportsId}/non-events/airings
      operations:
      - name: getsportnoneventairings
        method: GET
        description: Get Sports Non-Event Airings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sportsId
          in: path
          type: string
          required: true
        - name: lineupId
          in: query
          type: string
          required: true
        - name: startDateTime
          in: query
          type: string
          required: true
        - name: endDateTime
          in: query
          type: string
        - name: imageSize
          in: query
          type: string
        - name: api_key
          in: query
          type: string
          required: true
    authentication:
      type: apikey
      key: api_key
      value: '{{env.TRIBUNE_MEDIA_API_KEY}}'
      placement: query
  exposes:
  - type: rest
    namespace: tms-onconnect-sports-rest
    port: 8080
    description: REST adapter for TMS OnConnect API — Sports. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/v1-1/sports/organizations/{organizationid}/airings
      name: v1-1-sports-organizations-organizationid-airings
      description: REST surface for v1.1-sports-organizations-organizationId-airings.
      operations:
      - method: GET
        name: getorganizationairings
        description: Get Organization Airings
        call: tms-onconnect-sports.getorganizationairings
        with:
          organizationId: rest.organizationId
          lineupId: rest.lineupId
          startDateTime: rest.startDateTime
          endDateTime: rest.endDateTime
          includeDetail: rest.includeDetail
          imageSize: rest.imageSize
          api_key: rest.api_key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1-1/sports/teams/{teambrandid}/airings
      name: v1-1-sports-teams-teambrandid-airings
      description: REST surface for v1.1-sports-teams-teamBrandId-airings.
      operations:
      - method: GET
        name: getteamairings
        description: Get Team Airings
        call: tms-onconnect-sports.getteamairings
        with:
          teamBrandId: rest.teamBrandId
          lineupId: rest.lineupId
          startDateTime: rest.startDateTime
          endDateTime: rest.endDateTime
          includeDetail: rest.includeDetail
          imageSize: rest.imageSize
          market: rest.market
          api_key: rest.api_key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1-1/sports/{sportsid}
      name: v1-1-sports-sportsid
      description: REST surface for v1.1-sports-sportsId.
      operations:
      - method: GET
        name: getsportbyid
        description: Get Sport Details
        call: tms-onconnect-sports.getsportbyid
        with:
          sportsId: rest.sportsId
          includeOrg: rest.includeOrg
          officialOrg: rest.officialOrg
          imageSize: rest.imageSize
          api_key: rest.api_key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1-1/sports/{sportsid}/events/airings
      name: v1-1-sports-sportsid-events-airings
      description: REST surface for v1.1-sports-sportsId-events-airings.
      operations:
      - method: GET
        name: getsporteventairings
        description: Get Sports Event Airings
        call: tms-onconnect-sports.getsporteventairings
        with:
          sportsId: rest.sportsId
          lineupId: rest.lineupId
          startDateTime: rest.startDateTime
          endDateTime: rest.endDateTime
          liveOnly: rest.liveOnly
          imageSize: rest.imageSize
          api_key: rest.api_key
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1-1/sports/{sportsid}/non-events/airings
      name: v1-1-sports-sportsid-non-events-airings
      description: REST surface for v1.1-sports-sportsId-non-events-airings.
      operations:
      - method: GET
        name: getsportnoneventairings
        description: Get Sports Non-Event Airings
        call: tms-onconnect-sports.getsportnoneventairings
        with:
          sportsId: rest.sportsId
          lineupId: rest.lineupId
          startDateTime: rest.startDateTime
          endDateTime: rest.endDateTime
          imageSize: rest.imageSize
          api_key: rest.api_key
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: tms-onconnect-sports-mcp
    port: 9090
    transport: http
    description: MCP adapter for TMS OnConnect API — Sports. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: get-organization-airings
      description: Get Organization Airings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: tms-onconnect-sports.getorganizationairings
      with:
        organizationId: tools.organizationId
        lineupId: tools.lineupId
        startDateTime: tools.startDateTime
        endDateTime: tools.endDateTime
        includeDetail: tools.includeDetail
        imageSize: tools.imageSize
        api_key: tools.api_key
      outputParameters:
      - type: object
        mapping: $.
    - name: get-team-airings
      description: Get Team Airings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: tms-onconnect-sports.getteamairings
      with:
        teamBrandId: tools.teamBrandId
        lineupId: tools.lineupId
        startDateTime: tools.startDateTime
        endDateTime: tools.endDateTime
        includeDetail: tools.includeDetail
        imageSize: tools.imageSize
        market: tools.market
        api_key: tools.api_key
      outputParameters:
      - type: object
        mapping: $.
    - name: get-sport-details
      description: Get Sport Details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: tms-onconnect-sports.getsportbyid
      with:
        sportsId: tools.sportsId
        includeOrg: tools.includeOrg
        officialOrg: tools.officialOrg
        imageSize: tools.imageSize
        api_key: tools.api_key
      outputParameters:
      - type: object
        mapping: $.
    - name: get-sports-event-airings
      description: Get Sports Event Airings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: tms-onconnect-sports.getsporteventairings
      with:
        sportsId: tools.sportsId
        lineupId: tools.lineupId
        startDateTime: tools.startDateTime
        endDateTime: tools.endDateTime
        liveOnly: tools.liveOnly
        imageSize: tools.imageSize
        api_key: tools.api_key
      outputParameters:
      - type: object
        mapping: $.
    - name: get-sports-non-event-airings
      description: Get Sports Non-Event Airings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: tms-onconnect-sports.getsportnoneventairings
      with:
        sportsId: tools.sportsId
        lineupId: tools.lineupId
        startDateTime: tools.startDateTime
        endDateTime: tools.endDateTime
        imageSize: tools.imageSize
        api_key: tools.api_key
      outputParameters:
      - type: object
        mapping: $.