openapi: 3.2.0 info: title: GN IDS API v1.9.3 Publish 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: Publish paths: /bulk/publish: post: tags: - Publish summary: Submit multiple presentations for publish description: 'This API endpoint allows you to submit a list of Gracenote IDs (GnIDs) for bulk publishing. It supports publishing movies, shows, and episodes. ## Submit a list of publishables (presentations) for publishing. Provided a list of gnIDs, the API attempts to submit all the presentations at once for publishing. The publishables (presentations) will be marked as "inProcess". If image certify entitlement is active images with gracenoteUsage = true will be published alongside the presentations/seasons. ## Submit a list of publishables (presentations) with self-mapping. If provided a list of gnIDs, along with a Mapping object (mapping object should be the part of each publishable that we want to self-map), the API will attempt to publish the provided publishables (presentations) with the provided tmsID. The publishables (presentations) will be marked as "published". If image certify entitlement is active images with gracenoteUsage = true will be published alongside the presentations/seasons. ## Conditions for publish For a given publishable in the list of publishables, conditions remain same as they are for a single presentation publish In a single request, at max 1000 publications can be published. The API will not accept the request if there are more than 1000 publications in the request body. In the list, each publication must have the field "gnID". The presentations represented by the included gnIDs must fall under catalog of the requesting user. The gnIDs sent in the body of the request must correspond to the existing video presentations. The presentations must be of type movie, (and/or) show and/or episode, i.e. one request can have mixed of movie, show and episode presentations or all presentations can be of the same type. Only the following movie subTypes are publishable: featureFilm, shortFilm, trailer, and tvMovie Only the following show subTypes are publishable: series, and special Only the following episode subTypes are publishable: episode ## Fields Required for Publishing ### Movies: Root: Program Title, Title Language, Program SubType Version: Program Title, Title Language, Program SubType, Release Date OR Release Year Presentation: Program Title, Title Language, Program SubType, Release Date OR Release Year, Genres ### Shows: Root: Program Title, Title Language, Program SubType Version: Program Title, Title Language, Program SubType, Release Date Presentation: Program Title, Title Language, Program SubType, Release Date, Genres ### Episodes Episode: Program Title, Title Language, Program SubType, Release Date, Genres ## Post-conditions ### Success The API will return status code 200 along with a response body which includes the list of programs having entire hierarchy of the program. The indicated gnIDs in the response list have been submitted for publishing and will be processed by the distribution system. If self mapped, the provided IDs will be displayed and will be submitted to be processed by the distribution system. response JSON varies with the program type. ### Failure The api will return an appropriate 4xx or 5xx series status with a relevant error message. The response will have an array of responses having types PublishMovieResponse (and/or), PublishShowResponse and/or PublishEpisodeResponse. For error code 422 (unprocessable_entity), the possible error types are: publishable_not_found duplicate_publishable publish requirements not met' operationId: bulkPublishPresentations requestBody: content: application/json: schema: $ref: '#/components/schemas/BulkPublishInput' required: false responses: '200': description: PublishResponse content: application/json: schema: $ref: '#/components/schemas/PublishResponse' '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 '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 '422': description: UnprocessableEntityErrorBulkPublish content: application/json: schema: type: object properties: description: type: string examples: - bulk publishing errors descriptionDetails: type: array description: 'Possible type values: publishable_not_found, duplicate_publishable,publish requirements not met' items: type: object additionalProperties: type: object examples: - - fields: - error: at least one genre must be provided before publishing. field: genres level: presentation - error: releaseDate must be provided before publishing. if releaseYear is not specified. field: releaseDate level: presentation - error: releaseYear must be provided before publishing. if releaseDate is not specified. field: releaseYear level: presentation gnid: GNXX00000XXXXXX message: publish requirements not met error: type: string examples: - unprocessable_entity instance: type: string examples: - /api/v1/bulk/publish 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: publishables parameters: - $ref: '#/components/parameters/apiKeyParam' /publish: post: tags: - Publish summary: Submit a presentation for publish description: 'This API endpoint allows you to submit a presentation Gracenote ID (GnIDs) for publishing. It supports publishing movies, shows, and episodes. ## Submit a presentation for publishing. Provided a gnID, the API attempts to submit the presentation for publishing. The presentation will be marked as "inProcess". If image certify entitlement is active images with gracenoteUsage = true will be published alongside the presentation/seasons. ## Submit a presentation with self-mapping. If provided a gnID, along with a Mapping object, the API will attempt to publish the provided presentation with the tmsID. The presentation will be marked as "published". If image certify entitlement is active images with gracenoteUsage = true will be published alongside the presentations/seasons. ## Conditions for publish A field "gnID" which is a string must be present in request body. The presentation represented by the included gnID must fall under catalog of the requesting user. The gnID sent in the body of the request must correspond to an existing video presentation. The presentation must be of type movie, show, or episode. Only the following movie subTypes are publishable: featureFilm, shortFilm, trailer, and tvMovie Only the following show subTypes are publishable: series, and special Only the following episode subTypes are publishable: episode ## Fields Required for Publishing ### Movies: Root: Program Title, Title Language, Program SubType Version: Program Title, Title Language, Program SubType, Release Date OR Release Year Presentation: Program Title, Title Language, Program SubType, Release Date OR Release Year, Genres ### Shows: Root: Program Title, Title Language, Program SubType Version: Program Title, Title Language, Program SubType, Release Date Presentation: Program Title, Title Language, Program SubType, Release Date, Genres ### Episodes Episode: Program Title, Title Language, Program SubType, Release Date, Genres ## Post-conditions ### Success The API will return status code 200 along with a response body which includes the entire hierarchy of the program. The indicated gnIDs have been submitted for publishing and will be processed by the distribution system. If self mapped the provided ID will be displayed and will be submitted to be processed by the distribution system. response JSON varies with the program type. ### Failure The api will return an appropriate 4xx or 5xx series status with a relevant error message.' operationId: publishPresentation requestBody: content: application/json: schema: $ref: '#/components/schemas/PublishInput' required: false responses: '200': description: PublishResponse content: application/json: schema: $ref: '#/components/schemas/PublishResponse' '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 '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: PublishInput parameters: - $ref: '#/components/parameters/apiKeyParam' components: schemas: 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 PublishResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/PublishedProgram' 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 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.' Image: description: Image represents the metadata describing a source provided image required: - category - dimensions - fileType - title - url type: object properties: brandDescription: type: string description: 'Description that indicates the branding applied to the image. If the description is provided, then branded is assumed to be true. brandDescription is not required, even if branded is specified as true. Cannot exceed 1000 character length limit.' branded: type: boolean description: Indicates that the image has branded content such as a source, channel, or network name or logo. default: false category: $ref: '#/components/schemas/Category' customAttributes: type: object additionalProperties: type: string description: Custom key:value pairs to associate with the image. description: $ref: '#/components/schemas/Description' dimensions: $ref: '#/components/schemas/Dimensions' fileType: type: string description: The media or file-type of the image at the URL. enum: - bmp - ' psd' - ' jpeg' - ' jpg' - ' tiff' - ' png' gracenoteUsage: type: boolean description: 'Indicates that the client agrees that, upon a successful publish request, Gracenote may use the provided image in Gracenote''s customer-facing datasets. If the client does not agree, then this field should be set to false.' default: true languages: type: array description: Primary languages used in the image. items: type: string examples: - - en - en-GB - en-AU - es - es-ES markets: type: array description: 'Applicable markets for the image. Must conform to GN Vocabulary (ISO 3166-1 Alpha-2 codes).' items: type: string examples: - - US - MX - ES - AU - GB productionDate: type: string description: The ISO-8601 date that the image was originally created. format: date sensitive: type: boolean description: Indicates that the image contains sensitive material. default: false tags: type: array description: Custom tags to associate with the image. items: type: string title: type: string description: The tile (or name) of the image. Cannot exceed 1000 character length limit. url: type: string description: The URL at which the image file may be accessed. Cannot exceed 8000 character length limit. format: uri created: type: string description: The time at which the image was created in system. readOnly: true gnID: type: string description: The Gracenote ID of the Image. readOnly: true updated: type: string description: The time at which the image was last updated in system. readOnly: true PublishInput: type: object properties: forceCreate: type: boolean description: 'A flag to force create a new TMS ID for the program, only applicable if the program is being published for the first time.' gnID: type: string description: The GracenoteID of the program to publish mapping: $ref: '#/components/schemas/Mapping' description: PublishInput represents the input required for publishing a presentation PublishedProgram: type: object properties: gnID: type: string description: The Gracenote ID of the program root. examples: - GNLZZZ700000000 sourceId: type: string description: The internal Source ID associated with the program root. examples: - GNLZZZ400000000 subType: type: string description: The high-level sub-type of the program root. examples: - series title: $ref: '#/components/schemas/Title' type: type: string description: The high-level type of the program root. examples: - show updated: type: string description: The time the program root was last updated. version: type: object properties: color: type: string description: The color of the program. examples: - color duration: type: integer description: The runtime in milliseconds of the program. format: int64 examples: - 30800000 genres: type: array description: Version level genres of the program. items: type: string examples: - - Adventure gnID: type: string description: The Gracenote ID of the program version. examples: - GNLZZZ300000000 presentation: type: object properties: 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 publishingStatus: type: string description: Describes the state of publishing in the Gracenote ID Distribution System. readOnly: true examples: - registered 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 cast: type: array description: The cast of the presentation. items: $ref: '#/components/schemas/Cast' catalogGnIDs: type: array description: The GnIDs of the catalogs that the presentation is a part of. items: type: string examples: - - GNLZZWT00000000 crew: type: array description: The crew of the presentation. 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. Only available for shows.' format: date genres: type: array description: The presentation's genres. items: type: string examples: - - Fantasy - Adventure gnID: type: string description: The Gracenote ID of the presentation. examples: - GNLZZZ200000000 images: type: array description: The images associated with the presentation. items: $ref: '#/components/schemas/Image' 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: The companies that have contributed in the production of the program. items: type: string examples: - - Newline productionCountries: type: array description: The countries that the program was produced in. items: type: string examples: - - CA productionStatus: type: string description: 'Describes the production status of the movie presentation. Only available for movies.' examples: - completed publishPrereqs: $ref: '#/components/schemas/FieldErrors' ratings: type: array description: The presentation's ratings. items: $ref: '#/components/schemas/Rating' examples: - - advisories: - contains strong language rating: PG-13 ratingBody: MPAA releaseDate: type: string description: 'The date on which the movie was released. Only available for movies.' format: date releaseYear: type: integer description: The year in which the program was released. format: int64 examples: - 2019 rootGnID: type: string description: The Gracenote ID of the presentation's parent root. examples: - GNLZZZ700000000 season: type: object description: 'The season associated with the show presentation. Only available for episodes.' properties: cast: type: array description: 'The cast of the season. Each cast''s order field must be unique.' items: $ref: '#/components/schemas/Cast' crew: type: array description: 'The crew of the season. Each crew''s order field must be unique.' items: $ref: '#/components/schemas/Crew' descriptions: type: array description: A list of descriptions for the season. items: $ref: '#/components/schemas/Description' externalIDs: $ref: '#/components/schemas/ExternalIDs' finaleDate: type: string description: The date on which the season ends with the season's finale. format: date nonSeason: type: boolean description: Indicates that the season is a one-off occurrence and is non-repetitive. Mutually exclusive with SeasonNumber. ordinal: type: integer description: The order of which the season appears format: int64 originalSource: type: string description: 'The original source of the season (or network if the season originated on a network).' examples: - Lifetime releaseDate: type: string description: The date the season was release format: date seasonNumber: type: string description: Indicates which season of a show the season is. 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 episodeGnIDs: type: array description: The episode gnIDs which are children of the season. readOnly: true items: type: string gnID: type: string description: The Gracenote ID of the season. readOnly: true showPresentationGnID: type: string description: The show presentation GnID that is a parent of the Season. readOnly: true sourceId: type: string description: The internal Source ID associated with the program. readOnly: true updated: type: string description: The time the program was last updated. readOnly: true episode: type: object description: The published episode required: - title - subType properties: cast: type: array description: 'The cast of the presentation. Each cast''s order field must be unique.' items: $ref: '#/components/schemas/Cast' color: type: string description: 'The color of an episode. See the Gracenote Vocabulary for valid color values.' 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' duration: type: integer description: The runtime duration (in milliseconds) of the episode. format: int64 episodeNumber: type: string description: The episode's number. examples: - '1' externalIDs: $ref: '#/components/schemas/ExternalIDs' genres: type: array description: 'The applicable genres to the presentation. Genres are not required for creating an episode, but at least one is required for publishing. Genres is a required for update when the episode is in publishing/published state.' items: type: string examples: - - Fantasy - Adventure industryNetworkNumber: type: string description: The episode number provided by the original network. industryNetworkSyndicated: type: string description: The official, original episode number as provided by the syndicator. ordinal: type: integer description: The ordering of the episode format: int64 originalSource: type: string description: 'The original source of the program (or network if the program originated on a network).' examples: - Lifetime partNumbers: type: string description: Textual part numbers. examples: - Part One 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 release date of the episode. ReleaseDate is not required for creating an episode, but it is required for publishing. ReleaseDate is required for update when the episode 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: - episode type: type: string description: The high-level type of the program. readOnly: true examples: - episode 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 publishingStatus: type: string description: Describes the state of publishing in the Gracenote ID Distribution System. readOnly: true examples: - registered 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 catalogGnIDs: type: array description: The 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: - GNLZZXZ00000001 presentationLabels: type: array description: 'Describes content information and/or contextual business tags to describe the intent of the presentation.' readOnly: true items: type: string publishPrereqs: $ref: '#/components/schemas/FieldErrors' seasonGnID: type: string description: The gnID of the episode's parent season. readOnly: true examples: - GNLZZXV00000001 showPresentationGnID: type: string description: The gnID of the episode's parent show presentation. readOnly: true examples: - GNLZZZ200000001 showRootGnID: type: string description: The gnID of the episode's parent show root. readOnly: true examples: - GNLZZZ700000001 showVersionGnID: type: string description: The gnID of the episode's parent show version. readOnly: true examples: - GNLZZZ300000001 sourceId: type: string description: The internal Source Gracenote ID associated with the program. readOnly: true examples: - GNLZZZ400000001 updated: type: string description: The time the episode was last updated readOnly: true versionLabels: type: array description: 'The types associated with this version. See the Gracenote Vocabulary for suggested version types.' readOnly: true items: type: string images: type: array description: The images associated with the episode. items: $ref: '#/components/schemas/Image' images: type: array description: The images associated with the season. items: $ref: '#/components/schemas/Image' required: - subType seasonGnIDs: type: array description: 'The child seasons GnIDs of the presentation. Only available for shows.' items: type: string examples: - - GNLZZWT00000000 seasons: type: array description: 'The seasons associated with the show presentation. Only available for shows.' items: type: object description: 'Season represents a grouping of Show episodes' properties: cast: type: array description: 'The cast of the season. Each cast''s order field must be unique.' items: $ref: '#/components/schemas/Cast' crew: type: array description: 'The crew of the season. Each crew''s order field must be unique.' items: $ref: '#/components/schemas/Crew' descriptions: type: array description: A list of descriptions for the season. items: $ref: '#/components/schemas/Description' externalIDs: $ref: '#/components/schemas/ExternalIDs' finaleDate: type: string description: The date on which the season ends with the season's finale. format: date nonSeason: type: boolean description: Indicates that the season is a one-off occurrence and is non-repetitive. Mutually exclusive with SeasonNumber. ordinal: type: integer description: The order of which the season appears format: int64 originalSource: type: string description: 'The original source of the season (or network if the season originated on a network).' examples: - Lifetime releaseDate: type: string description: The date the season was release format: date seasonNumber: type: string description: Indicates which season of a show the season is. 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 episodeGnIDs: type: array description: The episode gnIDs which are children of the season. readOnly: true items: type: string gnID: type: string description: The Gracenote ID of the season. readOnly: true showPresentationGnID: type: string description: The show presentation GnID that is a parent of the Season. readOnly: true sourceId: type: string description: The internal Source ID associated with the program. readOnly: true updated: type: string description: The time the program was last updated. readOnly: true images: type: array description: The images associated with the season. items: $ref: '#/components/schemas/Image' required: - subType sourceId: type: string description: The internal Source Gracenote ID associated with the presentation. examples: - GNLZZZ400000000 subType: type: string description: The high-level sub-type of the presentation. examples: - series targetAudience: type: string description: The primary demographic that the program is targeted towards. examples: - children title: $ref: '#/components/schemas/Title' type: type: string description: The high-level type of the presentation. examples: - show updated: type: string description: The time the presentation was last updated versionGnID: type: string description: The Gracenote ID of the presentation's parent version. examples: - GNLZZZ300000000 presentationGnIDs: type: array description: A list of the version's child presentation GnIDs. items: type: string examples: - - GNLZZZ200000000 releaseDate: type: string description: The first ever release date of the program represented by the version. format: date releaseYear: type: integer description: 'The first ever release year of the program represented by the version. Only available for movies.' format: int64 examples: - 2019 rootGnID: type: string description: The GnID of the version's parent root. examples: - GNLZZZ700000000 sourceId: type: string description: The internal Source ID associated with the program version. examples: - GNLZZZ400000000 subType: type: string description: The high-level sub-type of the program version. examples: - series title: $ref: '#/components/schemas/Title' type: type: string description: The high-level type of the program version. examples: - show updated: type: string description: The time the program version was last updated. versionLabels: type: array description: A free-form list of version type. items: type: string examples: - - Director's Cut versionGnIDs: type: array description: The set of child version GnIDs of the root. items: type: string examples: - - GNLZZZ300000000 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' 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.' Mapping: type: object properties: id: type: string description: ID represents user provided tmsID type: type: string description: Type of the ID. It must be one of the types available in userMappingIDTypes in GN Vocab. description: UserMapping Mapping represents the input required for issuing a self mapped publish for a Presentation FieldErrors: type: array description: FieldErrors represents a collection of field errors items: $ref: '#/components/schemas/FieldError' 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.' 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 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 BulkPublishInput: type: object properties: publishables: type: array items: $ref: '#/components/schemas/PublishInput' description: BulkPublishInput represents a list of publishables(presentations) required for publishing together AspectRatio: title: AspectRatio defines aspect ratio values which are known to conform. type: string description: Custom aspect ratios may be used, but they will never conform. 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 Category: title: Category defines known categorical image types may conform. type: string description: Custom categories may be used, but they will not be conforming. Dimensions: required: - aspectRatio - height - width type: object properties: aspectRatio: $ref: '#/components/schemas/AspectRatio' height: maximum: 32767 type: integer description: The pixel height of the image. format: int16 width: maximum: 32767 type: integer description: The pixel width of the image. format: int16 description: Dimensions represents the dimensions of an Image 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.' 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'