openapi: 3.2.0 info: title: GN IDS API v1.9.3 Show Presentation API description: 'The purpose of this application is to provide an API to create, retrieve, update, delete, and publish client programs.' version: 1.9.3 servers: - url: /proxy/gnids/api/v1 tags: - name: show-presentation paths: /shows/versions/{gnID}/presentations: post: tags: - show-presentation summary: Create a show presentation under a show version given the version's gnID operationId: createShowPresentation parameters: - $ref: '#/components/parameters/apiKeyParam' - name: gnID in: path description: The Gracenote ID of the parent show version to create the presentation under. required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/NewShowPresentation' required: false responses: '200': description: ShowPresentationResponse content: application/json: schema: $ref: '#/components/schemas/ShowPresentationResponse' '400': description: BadRequestValidationError content: application/json: schema: type: object properties: description: type: string examples: - see fields for details. error: type: string examples: - bad_request fields: type: object additionalProperties: type: object additionalProperties: type: string examples: - subType: error: subType is a required field instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 400 '401': description: UnauthorizedError content: application/json: schema: type: object properties: description: type: string examples: - authentication failed error: type: string examples: - unauthorized instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 401 '403': description: ForbiddenError content: application/json: schema: type: object properties: description: type: string examples: - 'cannot use title language "cs": not entitled' error: type: string examples: - forbidden instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 403 '404': description: NotFoundError content: application/json: schema: type: object properties: Meta: type: object properties: rayID: type: string examples: - '"foo-bar"' code: type: integer format: int64 description: type: string error: type: string '413': description: RequestEntityTooLargeError content: application/json: schema: type: object properties: description: type: string examples: - request size exceeds 25MB limit error: type: string examples: - request_entity_too_large instance: type: string examples: - /api/v1/bulk/movies/batches meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 413 '415': description: UnsupportedMediaError content: application/json: schema: type: object properties: description: type: string examples: - request body contains badly-formed JSON error: type: string examples: - unsupported_media_type instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 415 '500': description: InternalServerError content: application/json: schema: type: object properties: description: type: string examples: - internal server error error: type: string examples: - internal_server_error instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 500 '598': description: RequestReadTimeout content: application/json: schema: type: object properties: description: type: string examples: - request read timed out error: type: string examples: - request_read_timeout instance: type: string examples: - /api/v1/bulk/movies/batches meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 598 security: - api_key: [] x-codegen-request-body-name: ShowPresentation /shows/versions/presentationRelationships: patch: tags: - show-presentation summary: Map show presentations to versions description: 'Maps one or more show presentations to their respective versions. Each presentation can only be mapped to one version. This endpoint is part of the relaxed presentation hierarchy functionality.' operationId: mapShowPresentationsToVersion requestBody: description: 'Array of version-presentation mappings to create. Each mapping associates a presentation with a version.' content: application/json: schema: type: array items: $ref: '#/components/schemas/VersionPresentationMapping' required: false responses: '200': description: VersionPresentationMappingsResponse content: application/json: schema: $ref: '#/components/schemas/VersionPresentationMappingsResponse' '400': description: BadRequestValidationError content: application/json: schema: type: object properties: description: type: string examples: - see fields for details. error: type: string examples: - bad_request fields: type: object additionalProperties: type: object additionalProperties: type: string examples: - subType: error: subType is a required field instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 400 '401': description: UnauthorizedError content: application/json: schema: type: object properties: description: type: string examples: - authentication failed error: type: string examples: - unauthorized instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 401 '403': description: ForbiddenError content: application/json: schema: type: object properties: description: type: string examples: - 'cannot use title language "cs": not entitled' error: type: string examples: - forbidden instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 403 '422': description: UnprocessableEntityError content: application/json: schema: type: object properties: description: type: string examples: - presentation GN1234567890123 is already mapped to catalog error: type: string examples: - unprocessable_entity instance: type: string examples: - /api/v1/catalogPrograms meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 422 '500': description: InternalServerError content: application/json: schema: type: object properties: description: type: string examples: - internal server error error: type: string examples: - internal_server_error instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 500 security: - api_key: [] x-codegen-request-body-name: ShowVersionPresentationMappings parameters: - $ref: '#/components/parameters/apiKeyParam' /shows/versions/presentationRelationships/{gnID}: delete: tags: - show-presentation summary: Delete version mapping from a show presentation description: 'Removes the version mapping from a show presentation, effectively making it a relaxed presentation without a direct parent version relationship.' operationId: deleteShowPresentationToVersionMapping parameters: - $ref: '#/components/parameters/apiKeyParam' - name: gnID in: path description: The Gracenote ID of the show presentation to unmap from its version. required: true schema: type: string responses: '200': description: DeleteVersionPresentationMappingsResponse content: application/json: schema: $ref: '#/components/schemas/DeleteVersionPresentationMappingsResponse' '401': description: UnauthorizedError content: application/json: schema: type: object properties: description: type: string examples: - authentication failed error: type: string examples: - unauthorized instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 401 '403': description: ForbiddenError content: application/json: schema: type: object properties: description: type: string examples: - 'cannot use title language "cs": not entitled' error: type: string examples: - forbidden instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 403 '404': description: NotFoundError content: application/json: schema: type: object properties: Meta: type: object properties: rayID: type: string examples: - '"foo-bar"' code: type: integer format: int64 description: type: string error: type: string '500': description: InternalServerError content: application/json: schema: type: object properties: description: type: string examples: - internal server error error: type: string examples: - internal_server_error instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 500 security: - api_key: [] /shows/versions/presentations: get: tags: - show-presentation summary: Query for show presentations associated with the provided filter criteria description: Currently, rootGnID and presentationGnIDs are filterable options and at least one must be provided. operationId: getShowPresentations parameters: - $ref: '#/components/parameters/apiKeyParam' - name: rootGnID in: query description: Filter show presentations by those associated with the provided show root gnID. schema: type: string - name: presentationGnIDs in: query description: Filter show presentations by the provided show presentation gnID values style: form explode: false schema: type: array items: type: string responses: '200': description: ShowPresentationsResponse content: application/json: schema: $ref: '#/components/schemas/ShowPresentationsResponse' '400': description: BadRequestError content: application/json: schema: type: object properties: description: type: string examples: - request body must not be empty error: type: string examples: - bad_request instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 400 '401': description: UnauthorizedError content: application/json: schema: type: object properties: description: type: string examples: - authentication failed error: type: string examples: - unauthorized instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 401 '403': description: ForbiddenError content: application/json: schema: type: object properties: description: type: string examples: - 'cannot use title language "cs": not entitled' error: type: string examples: - forbidden instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 403 '500': description: InternalServerError content: application/json: schema: type: object properties: description: type: string examples: - internal server error error: type: string examples: - internal_server_error instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 500 security: - api_key: [] post: tags: - show-presentation summary: Create a new show presentation without a show version description: 'Create a new show presentation without linking it to a show version. This endpoint supports relaxed presentation hierarchy where presentations can exist without being directly linked to versions.' operationId: createShowPresentationWithoutVersion requestBody: content: application/json: schema: $ref: '#/components/schemas/NewShowPresentation' required: false responses: '200': description: ShowPresentationResponse content: application/json: schema: $ref: '#/components/schemas/ShowPresentationResponse' '400': description: BadRequestValidationError content: application/json: schema: type: object properties: description: type: string examples: - see fields for details. error: type: string examples: - bad_request fields: type: object additionalProperties: type: object additionalProperties: type: string examples: - subType: error: subType is a required field instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 400 '401': description: UnauthorizedError content: application/json: schema: type: object properties: description: type: string examples: - authentication failed error: type: string examples: - unauthorized instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 401 '403': description: ForbiddenError content: application/json: schema: type: object properties: description: type: string examples: - 'cannot use title language "cs": not entitled' error: type: string examples: - forbidden instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 403 '404': description: NotFoundError content: application/json: schema: type: object properties: Meta: type: object properties: rayID: type: string examples: - '"foo-bar"' code: type: integer format: int64 description: type: string error: type: string '413': description: RequestEntityTooLargeError content: application/json: schema: type: object properties: description: type: string examples: - request size exceeds 25MB limit error: type: string examples: - request_entity_too_large instance: type: string examples: - /api/v1/bulk/movies/batches meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 413 '415': description: UnsupportedMediaError content: application/json: schema: type: object properties: description: type: string examples: - request body contains badly-formed JSON error: type: string examples: - unsupported_media_type instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 415 '500': description: InternalServerError content: application/json: schema: type: object properties: description: type: string examples: - internal server error error: type: string examples: - internal_server_error instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 500 '598': description: RequestReadTimeout content: application/json: schema: type: object properties: description: type: string examples: - request read timed out error: type: string examples: - request_read_timeout instance: type: string examples: - /api/v1/bulk/movies/batches meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 598 security: - api_key: [] x-codegen-request-body-name: NewShowPresentation parameters: - $ref: '#/components/parameters/apiKeyParam' /shows/versions/presentations/{gnID}: get: tags: - show-presentation summary: Query for a presentation of a show with the provided gnID operationId: getShowPresentation parameters: - $ref: '#/components/parameters/apiKeyParam' - name: gnID in: path description: The Gracenote ID of the presentation being queried. required: true schema: type: string responses: '200': description: ShowPresentationResponse content: application/json: schema: $ref: '#/components/schemas/ShowPresentationResponse' '401': description: UnauthorizedError content: application/json: schema: type: object properties: description: type: string examples: - authentication failed error: type: string examples: - unauthorized instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 401 '403': description: ForbiddenError content: application/json: schema: type: object properties: description: type: string examples: - 'cannot use title language "cs": not entitled' error: type: string examples: - forbidden instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 403 '404': description: NotFoundError content: application/json: schema: type: object properties: Meta: type: object properties: rayID: type: string examples: - '"foo-bar"' code: type: integer format: int64 description: type: string error: type: string '415': description: UnsupportedMediaError content: application/json: schema: type: object properties: description: type: string examples: - request body contains badly-formed JSON error: type: string examples: - unsupported_media_type instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 415 '500': description: InternalServerError content: application/json: schema: type: object properties: description: type: string examples: - internal server error error: type: string examples: - internal_server_error instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 500 security: - api_key: [] put: tags: - show-presentation summary: Update a show presentation identified by the provided gnID operationId: updateShowPresentation parameters: - $ref: '#/components/parameters/apiKeyParam' - name: gnID in: path description: The Gracenote ID of the show presentation. required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateShowPresentation' required: false responses: '200': description: ShowPresentationResponse content: application/json: schema: $ref: '#/components/schemas/ShowPresentationResponse' '400': description: BadRequestValidationError content: application/json: schema: type: object properties: description: type: string examples: - see fields for details. error: type: string examples: - bad_request fields: type: object additionalProperties: type: object additionalProperties: type: string examples: - subType: error: subType is a required field instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 400 '401': description: UnauthorizedError content: application/json: schema: type: object properties: description: type: string examples: - authentication failed error: type: string examples: - unauthorized instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 401 '403': description: ForbiddenError content: application/json: schema: type: object properties: description: type: string examples: - 'cannot use title language "cs": not entitled' error: type: string examples: - forbidden instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 403 '404': description: NotFoundError content: application/json: schema: type: object properties: Meta: type: object properties: rayID: type: string examples: - '"foo-bar"' code: type: integer format: int64 description: type: string error: type: string '413': description: RequestEntityTooLargeError content: application/json: schema: type: object properties: description: type: string examples: - request size exceeds 25MB limit error: type: string examples: - request_entity_too_large instance: type: string examples: - /api/v1/bulk/movies/batches meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 413 '415': description: UnsupportedMediaError content: application/json: schema: type: object properties: description: type: string examples: - request body contains badly-formed JSON error: type: string examples: - unsupported_media_type instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 415 '500': description: InternalServerError content: application/json: schema: type: object properties: description: type: string examples: - internal server error error: type: string examples: - internal_server_error instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 500 '598': description: RequestReadTimeout content: application/json: schema: type: object properties: description: type: string examples: - request read timed out error: type: string examples: - request_read_timeout instance: type: string examples: - /api/v1/bulk/movies/batches meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 598 security: - api_key: [] x-codegen-request-body-name: UpdatedShowPresentation delete: tags: - show-presentation summary: Delete a show's presentation with the provided gnID description: All children seasons and episodes will be deleted as well. operationId: deleteShowPresentation parameters: - $ref: '#/components/parameters/apiKeyParam' - name: gnID in: path description: The Gracenote ID of the presentation being deleted. required: true schema: type: string responses: '200': description: DeletedShowPresentationResponse content: application/json: schema: $ref: '#/components/schemas/DeletedShowPresentationResponse' '401': description: UnauthorizedError content: application/json: schema: type: object properties: description: type: string examples: - authentication failed error: type: string examples: - unauthorized instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 401 '404': description: NotFoundError content: application/json: schema: type: object properties: Meta: type: object properties: rayID: type: string examples: - '"foo-bar"' code: type: integer format: int64 description: type: string error: type: string '500': description: InternalServerError content: application/json: schema: type: object properties: description: type: string examples: - internal server error error: type: string examples: - internal_server_error instance: type: string examples: - /api/v1/shows meta: type: object properties: rayID: type: string examples: - 52fdfc07-2182-454f-963f-5f0f9a621d72 status: type: integer format: int64 examples: - 500 security: - api_key: [] components: schemas: NewShowPresentation: description: NewPresentation represents the fields required for creating a presentation of a show required: - title - subType type: object properties: cast: type: array description: 'The cast of the presentation. Each cast''s order field must be unique.' items: $ref: '#/components/schemas/Cast' crew: type: array description: 'The crew of the presentation. Each crew''s order field must be unique.' items: $ref: '#/components/schemas/Crew' descriptions: $ref: '#/components/schemas/Descriptions' externalIDs: $ref: '#/components/schemas/ExternalIDs' finaleDate: type: string description: The date at which the series ends with a series finale. format: date genres: type: array description: 'The applicable genres to the presentation. Genres are not required for creating a presentation, but at least one is required for publishing. Genres is required for update when the presentation is in publishing/published state.' items: type: string examples: - - Fantasy - Adventure originalSource: type: string description: 'The original source of the program (or network if the program originated on a network).' examples: - Lifetime presentationLabels: type: array description: 'Describes content information and/or contextual business tags to describe the intent of the presentation.' items: type: string examples: - - UK EN - US EN productionCompanies: type: array description: Any companies that have contributed in the production of the program. items: type: string examples: - - Newline productionCountries: type: array description: 'Any countries that the program was produced in. See the Gracenote Vocabulary for valid country codes.' items: type: string examples: - - CA ratings: type: array description: The ratings for this presentation. items: $ref: '#/components/schemas/Rating' examples: - - advisories: - contains strong language rating: PG-13 ratingBody: MPAA releaseDate: type: string description: 'The date on which the series was released. ReleaseDate is optional for creating a presentation, but is required for publishing. ReleaseDate is required for update when the presentation is in publishing/published state.' format: date targetAudience: type: string description: The primary demographic that the program is targeted towards. examples: - children title: $ref: '#/components/schemas/Title' subType: type: string description: The high-level type of the program. examples: - series type: type: string description: The high-level type of the program. readOnly: true examples: - show ExternalID: required: - id - isPrimary type: object properties: id: type: string description: id is the external identifier. isPrimary: type: boolean description: 'indicates that the external ID is the primary ID used to identify the program external to Gracenote. Exactly one primary external ID is allowed (and required) per program.' isProvider: type: boolean description: 'indicates that the source provider uses this ID as their internal ID for the program. Exactly one provider external ID is allowed per program.' label: type: string description: label is a tag to describe the identifier. description: ExternalID is an external (to Gracenote) identifier of the program ShowPresentationResponse: type: object properties: data: $ref: '#/components/schemas/ShowPresentation' meta: $ref: '#/components/schemas/MetaResponse' Description: required: - language - length - value type: object properties: language: type: string description: 'Language of the description''s text. User must be entitled to use the language. See the Gracenote Vocabulary for valid languages.' length: type: integer description: 'Length defines the maximum number of characters that can be used in a description. The value of the description must be less than or equal to the specified length from values 1 to 1000.' format: int64 value: type: string description: Value is the raw text description of a program. description: Description is a set of fields that describe a program DeletedShowSeason: type: object properties: episodes: type: array description: The deleted episodes that belong to the deleted show season. items: $ref: '#/components/schemas/DeletedEpisode' gnID: type: string description: The Gracenote ID of the deleted season. readOnly: true examples: - GNLZZXV00000001 showPresentationGnID: type: string description: The ID of the season's parent presentation. description: 'DeletedSeason contains the ID of the deleted Season as well as the parent and child IDs of the Season.' VersionPresentationMapping: type: object properties: presentationGnID: type: string versionGnID: type: string ExternalIDs: type: array description: ExternalIDs is a convenience alias on a slice of ExternalID types items: $ref: '#/components/schemas/ExternalID' Crew: description: 'Crew is a member who was part of a program''s production crew.' required: - name - order - type type: object properties: aka: $ref: '#/components/schemas/Name' name: $ref: '#/components/schemas/Name' order: minimum: 1 type: integer description: 'Order in which the cast member appears on the billing. Must be unique per program and cannot be negative or zero.' format: int64 examples: - 1 type: type: string description: 'Type describes the role or "crew type" of the crew member. Defined by the Gracenote Vocabulary.' VersionPresentationMappingsResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/VersionPresentationMapping' meta: $ref: '#/components/schemas/MetaResponse' MappingInfo: type: object properties: id: type: string description: 'ID contains the tmsID that the presentation is mapped to. This can be either user-provided ID or a gracenote mapped ID.' origin: type: string description: 'The possible values fr origin are sourceProvided and gracenote. If the user-provided TmsID is used, the origin is sourceProvided. If a gracenote provided TmsID is used, or if gracenote replaces the user-provided TmsID, gracenote is used.' type: type: string description: 'Type describes the type of ID that was used for mapping the presentation. Currently, only tmsID is supported.' description: 'MappingInfo contains information about how the TmsID was determined for the presentation.' Descriptions: title: Descriptions is an array of Description types type: array description: A maximum of 10 descriptions can be assigned to a program items: $ref: '#/components/schemas/Description' ShowPresentation: description: Presentation represents the Show specific presentation metadata required: - title - subType type: object properties: cast: type: array description: 'The cast of the presentation. Each cast''s order field must be unique.' items: $ref: '#/components/schemas/Cast' crew: type: array description: 'The crew of the presentation. Each crew''s order field must be unique.' items: $ref: '#/components/schemas/Crew' descriptions: $ref: '#/components/schemas/Descriptions' externalIDs: $ref: '#/components/schemas/ExternalIDs' finaleDate: type: string description: The date at which the series ends with a series finale. format: date genres: type: array description: 'The applicable genres to the presentation. Genres are not required for creating a presentation, but at least one is required for publishing. Genres is required for update when the presentation is in publishing/published state.' items: type: string examples: - - Fantasy - Adventure originalSource: type: string description: 'The original source of the program (or network if the program originated on a network).' examples: - Lifetime presentationLabels: type: array description: 'Describes content information and/or contextual business tags to describe the intent of the presentation.' items: type: string examples: - - UK EN - US EN productionCompanies: type: array description: Any companies that have contributed in the production of the program. items: type: string examples: - - Newline productionCountries: type: array description: 'Any countries that the program was produced in. See the Gracenote Vocabulary for valid country codes.' items: type: string examples: - - CA ratings: type: array description: The ratings for this presentation. items: $ref: '#/components/schemas/Rating' examples: - - advisories: - contains strong language rating: PG-13 ratingBody: MPAA releaseDate: type: string description: 'The date on which the series was released. ReleaseDate is optional for creating a presentation, but is required for publishing. ReleaseDate is required for update when the presentation is in publishing/published state.' format: date targetAudience: type: string description: The primary demographic that the program is targeted towards. examples: - children title: $ref: '#/components/schemas/Title' subType: type: string description: The high-level type of the program. examples: - series type: type: string description: The high-level type of the program. readOnly: true examples: - show catalogGnIDs: type: array description: The Gracenote IDs of the catalogs that the presentation is a part of. readOnly: true items: type: string examples: - - GNLZZWT00000001 - GNLZZWT00000002 gnID: type: string description: The Gracenote ID of the program. readOnly: true examples: - GNLZZZ200000001 mappingInfo: $ref: '#/components/schemas/MappingInfo' publishExceptions: type: object additionalProperties: type: array items: type: string description: 'A map of reason and details that describe why a program failed the publishing process. This field is only available for presentations/episodes with publishStatus = publishException, and for presentations/episodes which are self-mapped and have an issue in the mapping.' readOnly: true publishPrereqs: $ref: '#/components/schemas/FieldErrors' publishingStatus: type: string description: Describes the state of publishing in the Gracenote ID Distribution System. readOnly: true examples: - registered rootGnID: type: string description: The Gracenote ID of the presentation's parent root. readOnly: true examples: - GNLZZZ700000001 seasonGnIDs: type: array description: The Gracenote IDs of children seasons of the show presentation. readOnly: true items: type: string examples: - - GNLZZXV00000001 - GNLZZXV00000002 sourceId: type: string description: The internal Source Gracenote ID associated with the program. readOnly: true examples: - GNLZZZ400000001 tmsID: type: string description: 'TMSID is the industry gold standard identifier for recognizing and synchronizing entertainment assets. This is unique across programs. It will be assigned after successfully publishing a presentation.' readOnly: true examples: - EP12345678000000 updated: type: string description: The time the program was last updated readOnly: true versionGnID: type: string description: The Gracenote ID of the presentation's parent version. readOnly: true examples: - GNLZZZ300000001 Cast: description: Cast is an individual who performed in a production required: - name - order - role type: object properties: aka: $ref: '#/components/schemas/Name' name: $ref: '#/components/schemas/Name' order: minimum: 1 type: integer description: 'Order in which the cast member appears on the billing. Must be unique per program and cannot be negative or zero.' format: int64 examples: - 1 character: type: string description: Character is the name of the cast member's portrayed character. role: type: string description: 'Role defines the cast member''s credited contribution. Defined by the Gracenote Vocabulary.' UpdateShowPresentation: required: - title type: object properties: cast: type: array description: 'The cast of the presentation. Each cast''s order field must be unique.' items: $ref: '#/components/schemas/Cast' crew: type: array description: 'The crew of the presentation. Each crew''s order field must be unique.' items: $ref: '#/components/schemas/Crew' descriptions: $ref: '#/components/schemas/Descriptions' externalIDs: $ref: '#/components/schemas/ExternalIDs' finaleDate: type: string description: The date at which the series ends with a series finale. format: date genres: type: array description: 'The applicable genres to the presentation. Genres are not required for creating a presentation, but at least one is required for publishing. Genres is required for update when the presentation is in publishing/published state.' items: type: string examples: - - Fantasy - Adventure originalSource: type: string description: 'The original source of the program (or network if the program originated on a network).' examples: - Lifetime presentationLabels: type: array description: 'Describes content information and/or contextual business tags to describe the intent of the presentation.' items: type: string examples: - - UK EN - US EN productionCompanies: type: array description: Any companies that have contributed in the production of the program. items: type: string examples: - - Newline productionCountries: type: array description: 'Any countries that the program was produced in. See the Gracenote Vocabulary for valid country codes.' items: type: string examples: - - CA ratings: type: array description: The ratings for this presentation. items: $ref: '#/components/schemas/Rating' examples: - - advisories: - contains strong language rating: PG-13 ratingBody: MPAA releaseDate: type: string description: 'The date on which the series was released. ReleaseDate is optional for creating a presentation, but is required for publishing. ReleaseDate is required for update when the presentation is in publishing/published state.' format: date targetAudience: type: string description: The primary demographic that the program is targeted towards. examples: - children title: $ref: '#/components/schemas/Title' description: 'UpdatePresentation defines what information may be provided to modify an existing Presentation record. All field are required, pointers are used to indicate that a field was not provided. Normally we do not encourage pointer usage for basic operations, but here an exception is being made.' FieldErrors: type: array description: FieldErrors represents a collection of field errors items: $ref: '#/components/schemas/FieldError' MetaResponse: required: - rayID type: object properties: count: type: integer description: Count is the number of records included a Data field. format: int64 limit: type: integer description: Limit is the maximum requested number of objects returned by the request. format: int64 page: type: integer description: Page is the page number containing the objects in the response. format: int64 rayID: type: string description: 'RayID is the backend id of the request, generated at invocation time. Any questions or bug reports about a particular invocation should include the returned RequestID.' total: type: integer description: Total is the total number of hits on a query before pagination. format: int64 description: MetaResponse describes response data Title: required: - language - value type: object properties: language: type: string description: 'The language of the title''s text. User must be entitled to use the language. See the Gracenote Vocabulary for valid languages.' value: type: string description: The text of the title. description: 'Title holds information about a program''s title.' Name: required: - first type: object properties: first: type: string description: The first name of the member. last: type: string description: The last name of the member. middle: type: string description: The middle name of the member. prefix: type: string description: The prefix of the member's name. suffix: type: string description: The suffix of the member's name. description: 'Name contains the components of the full name of a crew or cast member.' Rating: required: - ratingBody type: object properties: advisories: type: array description: 'Content advisories that should be attached to the presentation. Free form entry. Reference the GN Vocabulary for suggested advisories.' items: type: string examples: - - contains strong language notYetRated: type: boolean description: When true, indicates that the presentation is yet to be rated. rating: type: string description: 'The assigned rating value as determined by the rating body. Required if ratingBody & notYetRated are false.' examples: - PG-13 ratingBody: type: string description: The rating body responsible for assigning ratings. examples: - MPAA ratingExempt: type: boolean description: 'When set to true, indicates that the presentation is exempt from and will not receive ratings.' description: Rating represents a rating of a program as assigned by a rating body DeletedEpisode: type: object properties: gnID: type: string description: The Gracenote ID of the deleted program. readOnly: true examples: - GNLZZXZ00000001 seasonGnID: type: string description: The Gracenote ID of the episode's parent season. description: DeletedEpisode reports the gnID of an episode and its parent Season DeleteVersionPresentationMappingsResponse: type: object properties: data: $ref: '#/components/schemas/VersionPresentationMapping' meta: $ref: '#/components/schemas/MetaResponse' DeletedShowPresentation: type: object properties: gnID: type: string description: The Gracenote ID of the deleted program. readOnly: true examples: - GNLZZZ200000001 seasons: type: array description: The deleted show seasons that belong to the deleted show presentation. readOnly: true items: $ref: '#/components/schemas/DeletedShowSeason' versionGnID: type: string description: The Gracenote ID of the presentation's parent version. readOnly: true examples: - GNLZZZ300000001 description: 'DeletedPresentation contains the ID of the deleted Presentation as well as the parent and child IDs of the Presentation.' DeletedShowPresentationResponse: type: object properties: data: $ref: '#/components/schemas/DeletedShowPresentation' meta: $ref: '#/components/schemas/MetaResponse' FieldError: type: object properties: error: type: string field: type: string level: type: string description: FieldError is used to indicate an error with a specific request field ShowPresentationsResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/ShowPresentation' meta: $ref: '#/components/schemas/MetaResponse' parameters: apiKeyParam: name: GN-APIKEY in: header description: API key to authorize the request. required: true schema: type: string examples: - your-api-key securitySchemes: api_key: type: apiKey in: header name: GN-APIKEY description: API key to authorize the request. Click Authorize and paste the key created for your application. x-original-swagger-version: '2.0'