Tribune Media · Capability
TMS OnConnect API — Programs
TMS OnConnect API — Programs. 5 operations. Lead operation: Get Program Genres. Self-contained Naftiko capability covering one Tribune Media business surface.
What You Can Do
GET
Getprogramgenres
— Get Program Genres
/v1/v1-1/programs/genres
GET
Getnewshowairings
— Get New Show Airings
/v1/v1-1/programs/newshowairings
GET
Searchprograms
— Search Programs
/v1/v1-1/programs/search
GET
Getprogrambyid
— Get Program Details
/v1/v1-1/programs/{tmsid}
GET
Getprogramairings
— Get Program Airings
/v1/v1-1/programs/{tmsid}/airings
MCP Tools
get-program-genres
Get Program Genres
read-only
idempotent
get-new-show-airings
Get New Show Airings
read-only
idempotent
search-programs
Search Programs
read-only
idempotent
get-program-details
Get Program Details
read-only
idempotent
get-program-airings
Get Program Airings
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: TMS OnConnect API — Programs
description: 'TMS OnConnect API — Programs. 5 operations. Lead operation: Get Program Genres. Self-contained Naftiko capability
covering one Tribune Media business surface.'
tags:
- Tribune Media
- Programs
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-programs
baseUri: https://data.tmsapi.com
description: TMS OnConnect API — Programs business capability. Self-contained, no shared references.
resources:
- name: v1.1-programs-genres
path: /v1.1/programs/genres
operations:
- name: getprogramgenres
method: GET
description: Get Program Genres
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: api_key
in: query
type: string
required: true
- name: v1.1-programs-newShowAirings
path: /v1.1/programs/newShowAirings
operations:
- name: getnewshowairings
method: GET
description: Get New Show Airings
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: lineupId
in: query
type: string
required: true
- name: startDateTime
in: query
type: string
required: true
- name: endDateTime
in: query
type: string
- name: includeAdult
in: query
type: boolean
- name: imageSize
in: query
type: string
- name: api_key
in: query
type: string
required: true
- name: v1.1-programs-search
path: /v1.1/programs/search
operations:
- name: searchprograms
method: GET
description: Search Programs
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: q
in: query
type: string
description: Free-form search query
required: true
- name: queryFields
in: query
type: string
- name: entityType
in: query
type: string
- name: genres
in: query
type: string
- name: subType
in: query
type: string
- name: includeAdult
in: query
type: boolean
- name: limit
in: query
type: integer
- name: offset
in: query
type: integer
- name: lineupId
in: query
type: string
- name: startDateTime
in: query
type: string
- name: endDateTime
in: query
type: string
- name: imageSize
in: query
type: string
- name: api_key
in: query
type: string
required: true
- name: v1.1-programs-tmsId
path: /v1.1/programs/{tmsId}
operations:
- name: getprogrambyid
method: GET
description: Get Program Details
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: tmsId
in: path
type: string
description: TMS program identifier
required: true
- name: imageSize
in: query
type: string
- name: imageAspectTV
in: query
type: string
- name: imageText
in: query
type: boolean
- name: market
in: query
type: string
- name: api_key
in: query
type: string
required: true
- name: v1.1-programs-tmsId-airings
path: /v1.1/programs/{tmsId}/airings
operations:
- name: getprogramairings
method: GET
description: Get Program Airings
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: tmsId
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
authentication:
type: apikey
key: api_key
value: '{{env.TRIBUNE_MEDIA_API_KEY}}'
placement: query
exposes:
- type: rest
namespace: tms-onconnect-programs-rest
port: 8080
description: REST adapter for TMS OnConnect API — Programs. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/v1-1/programs/genres
name: v1-1-programs-genres
description: REST surface for v1.1-programs-genres.
operations:
- method: GET
name: getprogramgenres
description: Get Program Genres
call: tms-onconnect-programs.getprogramgenres
with:
api_key: rest.api_key
outputParameters:
- type: object
mapping: $.
- path: /v1/v1-1/programs/newshowairings
name: v1-1-programs-newshowairings
description: REST surface for v1.1-programs-newShowAirings.
operations:
- method: GET
name: getnewshowairings
description: Get New Show Airings
call: tms-onconnect-programs.getnewshowairings
with:
lineupId: rest.lineupId
startDateTime: rest.startDateTime
endDateTime: rest.endDateTime
includeAdult: rest.includeAdult
imageSize: rest.imageSize
api_key: rest.api_key
outputParameters:
- type: object
mapping: $.
- path: /v1/v1-1/programs/search
name: v1-1-programs-search
description: REST surface for v1.1-programs-search.
operations:
- method: GET
name: searchprograms
description: Search Programs
call: tms-onconnect-programs.searchprograms
with:
q: rest.q
queryFields: rest.queryFields
entityType: rest.entityType
genres: rest.genres
subType: rest.subType
includeAdult: rest.includeAdult
limit: rest.limit
offset: rest.offset
lineupId: rest.lineupId
startDateTime: rest.startDateTime
endDateTime: rest.endDateTime
imageSize: rest.imageSize
api_key: rest.api_key
outputParameters:
- type: object
mapping: $.
- path: /v1/v1-1/programs/{tmsid}
name: v1-1-programs-tmsid
description: REST surface for v1.1-programs-tmsId.
operations:
- method: GET
name: getprogrambyid
description: Get Program Details
call: tms-onconnect-programs.getprogrambyid
with:
tmsId: rest.tmsId
imageSize: rest.imageSize
imageAspectTV: rest.imageAspectTV
imageText: rest.imageText
market: rest.market
api_key: rest.api_key
outputParameters:
- type: object
mapping: $.
- path: /v1/v1-1/programs/{tmsid}/airings
name: v1-1-programs-tmsid-airings
description: REST surface for v1.1-programs-tmsId-airings.
operations:
- method: GET
name: getprogramairings
description: Get Program Airings
call: tms-onconnect-programs.getprogramairings
with:
tmsId: rest.tmsId
lineupId: rest.lineupId
startDateTime: rest.startDateTime
endDateTime: rest.endDateTime
includeDetail: rest.includeDetail
imageSize: rest.imageSize
api_key: rest.api_key
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: tms-onconnect-programs-mcp
port: 9090
transport: http
description: MCP adapter for TMS OnConnect API — Programs. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: get-program-genres
description: Get Program Genres
hints:
readOnly: true
destructive: false
idempotent: true
call: tms-onconnect-programs.getprogramgenres
with:
api_key: tools.api_key
outputParameters:
- type: object
mapping: $.
- name: get-new-show-airings
description: Get New Show Airings
hints:
readOnly: true
destructive: false
idempotent: true
call: tms-onconnect-programs.getnewshowairings
with:
lineupId: tools.lineupId
startDateTime: tools.startDateTime
endDateTime: tools.endDateTime
includeAdult: tools.includeAdult
imageSize: tools.imageSize
api_key: tools.api_key
outputParameters:
- type: object
mapping: $.
- name: search-programs
description: Search Programs
hints:
readOnly: true
destructive: false
idempotent: true
call: tms-onconnect-programs.searchprograms
with:
q: tools.q
queryFields: tools.queryFields
entityType: tools.entityType
genres: tools.genres
subType: tools.subType
includeAdult: tools.includeAdult
limit: tools.limit
offset: tools.offset
lineupId: tools.lineupId
startDateTime: tools.startDateTime
endDateTime: tools.endDateTime
imageSize: tools.imageSize
api_key: tools.api_key
outputParameters:
- type: object
mapping: $.
- name: get-program-details
description: Get Program Details
hints:
readOnly: true
destructive: false
idempotent: true
call: tms-onconnect-programs.getprogrambyid
with:
tmsId: tools.tmsId
imageSize: tools.imageSize
imageAspectTV: tools.imageAspectTV
imageText: tools.imageText
market: tools.market
api_key: tools.api_key
outputParameters:
- type: object
mapping: $.
- name: get-program-airings
description: Get Program Airings
hints:
readOnly: true
destructive: false
idempotent: true
call: tms-onconnect-programs.getprogramairings
with:
tmsId: tools.tmsId
lineupId: tools.lineupId
startDateTime: tools.startDateTime
endDateTime: tools.endDateTime
includeDetail: tools.includeDetail
imageSize: tools.imageSize
api_key: tools.api_key
outputParameters:
- type: object
mapping: $.