The Program Annotations endpoint supports the Program Video Descriptors feature. Typically, most programs are annotated with 20-30 video descriptors, but this can vary depending on the content. For example, a documentary movie may be lightly tagged compared to a live-action franchise movie based on a comic book. Within each Video Descriptor type, there can be anywhere from 1-5 video descriptors each. Specifically for Series, tagging is done at a show level covering over-arching descriptors across seasons and episodes.
For certain genres of programs, some types may not be relevant. In such cases, video descriptors from that type will not be present. See Video Descriptor Coverage.
Each Program, identified by its TmsId, is annotated with Video Descriptors. The Program Annotations API provides the ID of the video descriptor. For each program object, Video Descriptors are grouped by video descriptor type. Within each video descriptor type, the video descriptors are sorted by descending order of importance. That is, the most important video descriptor for a given type appears first with ordinal number 1, followed by the next important video descriptor with ordinal number 2, and so on.
API Reference
Base URL:
Code
Parameters:
updateId=<updateId value>limit=<limit value>api_key=<your-api-key>
Request Parameters
| Parameter | Required? | Description |
|---|---|---|
| api_key | Yes | Your API key |
| updateId | No | Programs modified at or after updateId |
| limit | No | Batch size. Maximum number of programs to be returned. Use with updateId |
| tmsId | No | For non-batch lookups. 14-char format tmsId. Accepts comma-separated list of TMSIds |
Important: Use lookup calls for QA and troubleshooting purposes only. Gracenote does not support lookup APIs for Client production environments.
Example Requests
Return full program annotation set in batches of 1000 programs:
Code
Return Program Annotations data for set of TMSIds:
Code
Example Response
See Program Annotation XML examples
Identifying a Deleted Program Annotation
When a Program Annotation contains "deleted=true", it indicates that this annotation is no longer valid and can be deleted from your databases. For more information see Removals (Object Deletion / Inactivation).
Data Structure and Relationships
XML Schema URL: http://files.api.gracenote.com/xsd/on_update_programAnnotations_3.24.xsd
Unless stated otherwise, the XPATH in the tables below is relative to: on/programAnnotations/programAnnotation
| XPATH Element/Attribute | Description | Example |
|---|---|---|
| @TMSId | Program TMSId, used as primary identifier for the Program Annotations record | MV009352300000 |
| @rootId | Program root identifier | 13316368 |
| videoDescriptors/videoDescriptor/videoDescriptorId | Video descriptor identifier | GN1VBY6K9D0DWD4, GN0WQZ0H2MR816W |
| videoDescriptors/videoDescriptor/videoDescriptorId/weight | Weight assigned to a video descriptor | 9,7,5 |
The order of descriptor assignments to the program is arbitrary and does not imply importance.
Entity Relationship Diagram
The ProgramAnnotations endpoint works in conjunction with the Programs endpoint and VideoDescriptorsTaxonomy endpoint.
