From a53abf766852ecda22c951f60c721a618bc29012 Mon Sep 17 00:00:00 2001
From: theofficialomega <30985701+BellezaEmporium@users.noreply.github.com>
Date: Sat, 18 Apr 2026 12:42:25 +0200
Subject: [PATCH] add France.tv & directv fixes
---
sites/directv.com/__data__/content.json | 5833 ++++++++++----------
sites/directv.com/__data__/no-content.json | 25 +-
sites/directv.com/directv.com.channels.xml | 2199 ++++----
sites/directv.com/directv.com.config.js | 168 +-
sites/directv.com/directv.com.test.js | 83 +-
sites/france.tv/__data__/content.json | 1028 ++++
sites/france.tv/france.tv.channels.xml | 19 +
sites/france.tv/france.tv.config.js | 135 +
sites/france.tv/france.tv.test.js | 54 +
sites/france.tv/readme.md | 21 +
10 files changed, 5512 insertions(+), 4053 deletions(-)
create mode 100644 sites/france.tv/__data__/content.json
create mode 100644 sites/france.tv/france.tv.channels.xml
create mode 100644 sites/france.tv/france.tv.config.js
create mode 100644 sites/france.tv/france.tv.test.js
create mode 100644 sites/france.tv/readme.md
diff --git a/sites/directv.com/__data__/content.json b/sites/directv.com/__data__/content.json
index 9ab30cb36..33ac86ae4 100644
--- a/sites/directv.com/__data__/content.json
+++ b/sites/directv.com/__data__/content.json
@@ -1,2953 +1,3016 @@
{
- "schedule": [
+ "schedules": [
{
- "secLiveStreaming": "N",
- "chNum": 249,
- "authCode": "NA",
- "chRec": true,
- "chCall": "COMWHD",
- "chId": 2598,
- "secondaryChannelId": 0,
- "chHd": true,
- "secondary": false,
- "blackOut": false,
- "chAdult": false,
- "chCat": [
- "Entertainment & Music Channels",
- "HDTV Channels"
- ],
- "chLogoId": 157,
- "detailsLinkUrl": "/Channels/Comedy-Central-West-HD-249",
- "schedules": [
+ "channelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "contents": [
{
- "primaryImageUrl": "/db_photos/movies/AllPhotosAPGI/19526/19526_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Comedy",
- "Movies Anywhere",
- "Action/Adventure",
- "Science Fiction"
+ "apgId": "EP000169160174",
+ "canonicalId": "fd8646f0-d4ee-e996-5dd4-a41648186aac",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/19526/19526_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "Men in Black",
- "episodeNumber": null,
- "duration": 120,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "V"
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T00:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "b0c8df8c-3732-3874-8a36-6810951767c3",
+ "scheduleId": "b0c8df8c-3732-3874-8a36-6810951767c3",
+ "startTime": "2026-04-06T00:00:00Z"
+ }
],
- "dimension": "2D",
- "ltd": "",
- "programID": "MV000510190000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T00:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/19526/19526_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "Movies",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/movies/AllPhotosAPGI/29160/29160_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Comedy",
- "Movies Anywhere",
- "Action/Adventure",
- "Science Fiction"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/29160/29160_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "Men in Black II",
- "episodeNumber": null,
- "duration": 120,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "MV001173520000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T02:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/29160/29160_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "Movies",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/movies/AllPhotosAPGI/8797139/8797139_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Comedy",
- "Movies Anywhere",
- "Action/Adventure",
- "Science Fiction"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/8797139/8797139_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "Men in Black 3",
- "episodeNumber": null,
- "duration": 150,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "MV003695340000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T04:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/8797139/8797139_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "Movies",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/movies/AllPhotosAPGI/11928727/11928727_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Comedy",
- "Movies Anywhere",
- "Action/Adventure"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/11928727/11928727_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "Ride Along 2",
- "episodeNumber": null,
- "duration": 120,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "V"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "MV007793670000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T06:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/11928727/11928727_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "Movies",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 2,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270441",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T08:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Informative Murder Porn",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 17,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 4,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270445",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T09:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Goth Kids 3: Dawn of the Posers",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 17,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 5,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270446",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T09:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Taming Strange",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 17,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 10,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270451",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T10:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Hobbit",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 17,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 6,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270782",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T10:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Season Finale",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 23,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 7,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270783",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T11:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Board Girls",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 23,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 8,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270784",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T11:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Turd Burglars",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 23,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 9,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270785",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T12:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Basic Cable",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 23,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 8,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270467",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T12:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "C... Magic",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 18,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/13662735/p13662735_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Product Info",
- "Shopping"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/13662735/p13662735_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "Sex Toys - 50 Percent OFF!",
- "episodeNumber": null,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "SH025929710000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T13:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "SD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/13662735/p13662735_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/16255884/p16255884_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Product Info",
- "Shopping"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/16255884/p16255884_b_v5_aa_p.jpg",
- "rating": "NR (Not Rated)",
- "description": null,
- "title": "Men's Health: All-Natural Secret for Prostate Health",
- "episodeNumber": null,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "SH030991650000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T13:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "SD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/16255884/p16255884_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/default/TV/tv.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Product Info",
- "Shopping"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/default/TV/tv_p.jpg",
- "rating": "TVG",
- "description": null,
- "title": "Jane Seymour, Kate Walsh share their skin secrets",
- "episodeNumber": null,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "SH043806090000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T14:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "SD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/default/TV/tv_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/194833/p194833_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Parks and Recreation",
- "episodeNumber": 3,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP011281150009",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T14:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Beauty Pageant",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 2,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/194833/p194833_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Parks and Recreation",
- "episodeNumber": 4,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP011281150010",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T15:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Practice Date",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 2,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/194833/p194833_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Parks and Recreation",
- "episodeNumber": 5,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP011281150011",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T15:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Sister City",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 2,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160038/EP000169160038_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160038/EP000169160038_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Seinfeld",
- "episodeNumber": 12,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP000169160038",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T16:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Red Dot",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 3,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160038/EP000169160038_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160001/EP000169160001_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160001/EP000169160001_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Seinfeld",
- "episodeNumber": 13,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP000169160001",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T16:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Subway",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 3,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160001/EP000169160001_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160002/EP000169160002_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160002/EP000169160002_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Seinfeld",
- "episodeNumber": 14,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP000169160002",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T17:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Pez Dispenser",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 3,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160002/EP000169160002_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160006/EP000169160006_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160006/EP000169160006_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Seinfeld",
- "episodeNumber": 16,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP000169160006",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T17:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Fix-Up",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 3,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160006/EP000169160006_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 12,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330123",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T18:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Scott's Tots",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 14,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330125",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T18:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Banker",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330126/EP007261330126_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330126/EP007261330126_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 15,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330126",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T19:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Sabre",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330126/EP007261330126_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330127/EP007261330127_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330127/EP007261330127_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 16,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330127",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T19:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Manager and Salesman",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330127/EP007261330127_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 17,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330242",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T20:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Delivery",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
+ "contentType": "EPISODE",
+ "description": "George finds the ideal napping spot at work; Jerry has his kitchen rebuilt; Elaine meets a new beau (Vince Grant).",
+ "displayTitle": "Seinfeld",
"episodeNumber": 18,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
+ "episodeTitle": "The Nap",
+ "genres": [
+ "Sitcom"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330243",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T20:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Delivery",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-04-10",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "5a75c460-5cbb-4ea3-acba-5911532801b3",
+ "seasonNumber": 8,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 AE",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160174",
+ "resourceType": "CONTENT",
+ "resourceId": "b0c8df8c-3732-3874-8a36-6810951767c3",
+ "editId": "46b19f74-eb27-4294-b260-aa73b9824e50",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
+ "apgId": "EP000169160175",
+ "canonicalId": "6e06ec4d-fb11-4e76-e396-bbee1f52b798",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T01:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "5673f156-6b7f-3c69-9ae6-ffa8a818fe5b",
+ "scheduleId": "5673f156-6b7f-3c69-9ae6-ffa8a818fe5b",
+ "startTime": "2026-04-06T00:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "George begins to wonder what his new girlfriend (Suzanne Cryer) isn't telling him when she says, \"Yada, yada, yada.\"",
+ "displayTitle": "Seinfeld",
"episodeNumber": 19,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
+ "episodeTitle": "The Yada Yada",
+ "genres": [
+ "Sitcom"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330129",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T21:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "St. Patrick's Day",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-04-24",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "5a75c460-5cbb-4ea3-acba-5911532801b3",
+ "seasonNumber": 8,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 AF",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160175",
+ "resourceType": "CONTENT",
+ "resourceId": "5673f156-6b7f-3c69-9ae6-ffa8a818fe5b",
+ "editId": "bf725e10-9e51-40eb-8e3a-bc85a7138c2d",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
+ "apgId": "EP000169160176",
+ "canonicalId": "e816f1ec-5cba-e4d3-6bb6-62bfe4a52441",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T01:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "2a7eac91-13b5-3b67-a3d4-0cb622497beb",
+ "scheduleId": "2a7eac91-13b5-3b67-a3d4-0cb622497beb",
+ "startTime": "2026-04-06T01:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Newman nixes Kramer's millennium-party plans; Jerry obsesses about his position on his girlfriend's speed dial.",
+ "displayTitle": "Seinfeld",
"episodeNumber": 20,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
+ "episodeTitle": "The Millennium",
+ "genres": [
+ "Sitcom"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330130",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T21:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "New Leads",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-05-01",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "5a75c460-5cbb-4ea3-acba-5911532801b3",
+ "seasonNumber": 8,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 B0",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160176",
+ "resourceType": "CONTENT",
+ "resourceId": "2a7eac91-13b5-3b67-a3d4-0cb622497beb",
+ "editId": "efe18f88-382f-4e2c-838c-66c3124bfdc0",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330131/EP007261330131_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
+ "apgId": "EP000169160177",
+ "canonicalId": "a2efb7ff-4c1f-9fba-97a0-a1016d69b82a",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330131/EP007261330131_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T02:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "8feb255f-0340-38f6-bf0d-f2d07363f77e",
+ "scheduleId": "8feb255f-0340-38f6-bf0d-f2d07363f77e",
+ "startTime": "2026-04-06T01:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Elaine's new business, selling only the upper part of muffins, is challenged to dispose of the unused bottoms.",
+ "displayTitle": "Seinfeld",
"episodeNumber": 21,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
+ "episodeTitle": "The Muffin Tops",
+ "genres": [
+ "Sitcom"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330131",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T22:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Happy Hour",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330131/EP007261330131_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-05-08",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "5a75c460-5cbb-4ea3-acba-5911532801b3",
+ "seasonNumber": 8,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 B1",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160177",
+ "resourceType": "CONTENT",
+ "resourceId": "8feb255f-0340-38f6-bf0d-f2d07363f77e",
+ "editId": "f445e903-00cf-4d92-92b9-2bf4d9f0bf80",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
+ "apgId": "EP002960010307",
+ "canonicalId": "941d52c6-2784-6c0b-d048-9733311ff085",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 22,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T02:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC"
+ ],
+ "resourceId": "5c23b28f-8883-3f03-a1ee-4ca03a0d10c8",
+ "scheduleId": "5c23b28f-8883-3f03-a1ee-4ca03a0d10c8",
+ "startTime": "2026-04-06T02:00:00Z"
+ }
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330134",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T22:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Secretary's Day",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330135/EP007261330135_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330135/EP007261330135_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 23,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330135",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T23:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Body Language",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330135/EP007261330135_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 24,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330136",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T23:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Cover-Up",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "N"
- }
- ],
- "chKey": "2598_1571684400000",
- "chName": "Comedy Central West HD",
- "chDesc": "The only 24-hour, all-comedy network. Spotlights Emmy and CableAce Award-winning shows like Dr. Katz: Professional Therapist, plus sitcoms, stand-up, animation, talk shows and movies.",
- "liveStreaming": "N",
- "digitalAdInsertableLive": false
- },
- {
- "secLiveStreaming": "N",
- "chNum": 249,
- "authCode": "NA",
- "chRec": true,
- "chCall": "COMHD",
- "chId": 3035,
- "secondaryChannelId": 0,
- "chHd": true,
- "secondary": false,
- "blackOut": false,
- "chAdult": false,
- "chCat": [
- "Alternate content",
- "Entertainment & Music Channels",
- "HDTV Channels"
- ],
- "chLogoId": 390,
- "detailsLinkUrl": "/Channels/Comedy-Central-HD-249",
- "schedules": [
- {
- "primaryImageUrl": "/db_photos/movies/AllPhotosAPGI/29160/29160_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Comedy",
- "Movies Anywhere",
- "Action/Adventure",
- "Science Fiction"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/29160/29160_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "Men in Black II",
- "episodeNumber": null,
- "duration": 120,
- "disableFastForward": true,
- "restartMaterialId": "B007881332U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "MV001173520000",
- "blackoutCode": "NA",
- "airTime": "2023-01-14T23:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/29160/29160_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "Movies",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/movies/AllPhotosAPGI/8797139/8797139_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Comedy",
- "Movies Anywhere",
- "Action/Adventure",
- "Science Fiction"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/8797139/8797139_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "Men in Black 3",
- "episodeNumber": null,
- "duration": 150,
- "disableFastForward": true,
- "restartMaterialId": "B007881439U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "MV003695340000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T01:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/8797139/8797139_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "Movies",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/movies/AllPhotosAPGI/11928727/11928727_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Comedy",
- "Movies Anywhere",
- "Action/Adventure"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/11928727/11928727_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "Ride Along 2",
- "episodeNumber": null,
- "duration": 120,
- "disableFastForward": true,
- "restartMaterialId": "B007881572U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "V"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "MV007793670000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T03:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/11928727/11928727_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "Movies",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 2,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882364U3",
- "price": 0,
- "repeat": true,
- "lookBack": true,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270441",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T05:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Informative Murder Porn",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 17,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
+ "contentType": "EPISODE",
+ "description": "Viewers are taken for a behind-the-scenes look at a \"Family Guy\" production week; Peter is replaced and pitches a new series to Fox Television Group Chairmen and CEO's Dana Walden and Gary Newman.",
+ "displayTitle": "Family Guy",
"episodeNumber": 4,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882409U3",
- "price": 0,
- "repeat": true,
- "lookBack": true,
- "tvAdvisory": [
- "D",
- "L"
+ "episodeTitle": "Inside Family Guy",
+ "genres": [
+ "Comedy",
+ "Sitcom",
+ "Animated"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270445",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T06:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Goth Kids 3: Dawn of the Posers",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 17,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
+ "metadataLanguage": "en",
+ "originalAirDate": "2016-10-23",
+ "parentalRating": "TV14",
+ "releaseYear": 2016,
+ "seasonId": "7f1d42d9-0f8e-468f-a354-ddd552c95c53",
+ "seasonNumber": 15,
+ "seriesEditId": "fd684468-02d1-4a9d-a05a-83e7ba5b84c0",
+ "seriesId": "e79aa78f-f6b0-20fa-6b4c-a167fb50afe7",
+ "stbContentId": "1 1 48441 133",
+ "title": "Family Guy",
+ "tmsConnectorId": "SH002960010000",
+ "tmsId": "EP002960010307",
+ "resourceType": "CONTENT",
+ "resourceId": "5c23b28f-8883-3f03-a1ee-4ca03a0d10c8",
+ "editId": "9dc1b4ad-0ebf-4981-9a18-1d90c23127c8",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
+ "apgId": "EP002960010308",
+ "canonicalId": "1ad407eb-28e4-45fc-11ad-b6ef842e9a46",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T03:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC"
+ ],
+ "resourceId": "ae1db982-7a91-3f55-9767-0fa294ac63ba",
+ "scheduleId": "ae1db982-7a91-3f55-9767-0fa294ac63ba",
+ "startTime": "2026-04-06T02:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Taylor Swift agrees to go to the homecoming dance with Chris; Peter decides to become an Uber driver.",
+ "displayTitle": "Family Guy",
"episodeNumber": 5,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882432U3",
- "price": 0,
- "repeat": true,
- "lookBack": true,
- "tvAdvisory": [
- "D",
- "L"
+ "episodeTitle": "Chris Has Got a Date, Date, Date, Date, Date",
+ "genres": [
+ "Comedy",
+ "Sitcom",
+ "Animated"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270446",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T06:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Taming Strange",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 17,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
+ "metadataLanguage": "en",
+ "originalAirDate": "2016-11-06",
+ "parentalRating": "TV14",
+ "releaseYear": 2016,
+ "seasonId": "7f1d42d9-0f8e-468f-a354-ddd552c95c53",
+ "seasonNumber": 15,
+ "seriesEditId": "fd684468-02d1-4a9d-a05a-83e7ba5b84c0",
+ "seriesId": "e79aa78f-f6b0-20fa-6b4c-a167fb50afe7",
+ "stbContentId": "1 1 48441 134",
+ "title": "Family Guy",
+ "tmsConnectorId": "SH002960010000",
+ "tmsId": "EP002960010308",
+ "resourceType": "CONTENT",
+ "resourceId": "ae1db982-7a91-3f55-9767-0fa294ac63ba",
+ "editId": "97134128-8626-4670-b544-2e31b6d78575",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
+ "apgId": "EP002960010309",
+ "canonicalId": "3a548ce4-8087-349e-9f43-6f149f3e38b4",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 10,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882467U3",
- "price": 0,
- "repeat": true,
- "lookBack": true,
- "tvAdvisory": [
- "D",
- "L"
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T03:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC"
+ ],
+ "resourceId": "52956f83-5d07-3796-9524-893b571a22ae",
+ "scheduleId": "52956f83-5d07-3796-9524-893b571a22ae",
+ "startTime": "2026-04-06T03:00:00Z"
+ }
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270451",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T07:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Hobbit",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 17,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
+ "contentType": "EPISODE",
+ "description": "Peter and Lois decide not to vaccinate Stewie after reading about the potential side effects; the rest of Quahog soon follows suit.",
+ "displayTitle": "Family Guy",
"episodeNumber": 6,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882501U3",
- "price": 0,
- "repeat": true,
- "lookBack": true,
- "tvAdvisory": [
- "L"
+ "episodeTitle": "Hot Shots",
+ "genres": [
+ "Comedy",
+ "Sitcom",
+ "Animated"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270782",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T07:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Season Finale",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 23,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
+ "metadataLanguage": "en",
+ "originalAirDate": "2016-11-13",
+ "parentalRating": "TV14",
+ "releaseYear": 2016,
+ "seasonId": "7f1d42d9-0f8e-468f-a354-ddd552c95c53",
+ "seasonNumber": 15,
+ "seriesEditId": "fd684468-02d1-4a9d-a05a-83e7ba5b84c0",
+ "seriesId": "e79aa78f-f6b0-20fa-6b4c-a167fb50afe7",
+ "stbContentId": "1 1 48441 135",
+ "title": "Family Guy",
+ "tmsConnectorId": "SH002960010000",
+ "tmsId": "EP002960010309",
+ "resourceType": "CONTENT",
+ "resourceId": "52956f83-5d07-3796-9524-893b571a22ae",
+ "editId": "ca06af67-9e0e-44f4-bdb6-934af5efaebb",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
+ "apgId": "EP002960010310",
+ "canonicalId": "8efeb1d4-724f-ca8f-11da-6559586fa6d4",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T04:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC"
+ ],
+ "resourceId": "6e5d270b-68a4-3c16-b847-dab23cd5e392",
+ "scheduleId": "6e5d270b-68a4-3c16-b847-dab23cd5e392",
+ "startTime": "2026-04-06T03:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "The cast re-enacts \"The Great Gatsby,\" \"The Adventures of Huckleberry Finn\" and \"Of Mice and Men.\"",
+ "displayTitle": "Family Guy",
"episodeNumber": 7,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882549U3",
- "price": 0,
- "repeat": true,
- "lookBack": true,
- "tvAdvisory": [
- "L"
+ "episodeTitle": "High School English",
+ "genres": [
+ "Comedy",
+ "Sitcom",
+ "Animated"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270783",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T08:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Board Girls",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 23,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
+ "metadataLanguage": "en",
+ "originalAirDate": "2016-11-20",
+ "parentalRating": "TV14",
+ "releaseYear": 2016,
+ "seasonId": "7f1d42d9-0f8e-468f-a354-ddd552c95c53",
+ "seasonNumber": 15,
+ "seriesEditId": "fd684468-02d1-4a9d-a05a-83e7ba5b84c0",
+ "seriesId": "e79aa78f-f6b0-20fa-6b4c-a167fb50afe7",
+ "stbContentId": "1 1 48441 136",
+ "title": "Family Guy",
+ "tmsConnectorId": "SH002960010000",
+ "tmsId": "EP002960010310",
+ "resourceType": "CONTENT",
+ "resourceId": "6e5d270b-68a4-3c16-b847-dab23cd5e392",
+ "editId": "04b0a0cf-f485-434f-b578-db84bb62ccbb",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
+ "apgId": "EP002960010311",
+ "canonicalId": "98432cdb-31bb-27af-850c-dcd0a348656f",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T04:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC"
+ ],
+ "resourceId": "36d7fc6f-1f70-3c52-89c9-3cf400f0b064",
+ "scheduleId": "36d7fc6f-1f70-3c52-89c9-3cf400f0b064",
+ "startTime": "2026-04-06T04:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "When Peter overhears Carter's plan to save money by using toxic chemicals in the brewery's beer cans, he tells a journalist about it; Brian asks for Stewie's help when his driver's license expired.",
+ "displayTitle": "Family Guy",
"episodeNumber": 8,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882576U3",
- "price": 0,
- "repeat": true,
- "lookBack": true,
- "tvAdvisory": [
- "L"
+ "episodeTitle": "Carter and Tricia",
+ "genres": [
+ "Comedy",
+ "Sitcom",
+ "Animated"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270784",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T08:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Turd Burglars",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 23,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
+ "metadataLanguage": "en",
+ "originalAirDate": "2016-12-04",
+ "parentalRating": "TV14",
+ "releaseYear": 2016,
+ "seasonId": "7f1d42d9-0f8e-468f-a354-ddd552c95c53",
+ "seasonNumber": 15,
+ "seriesEditId": "fd684468-02d1-4a9d-a05a-83e7ba5b84c0",
+ "seriesId": "e79aa78f-f6b0-20fa-6b4c-a167fb50afe7",
+ "stbContentId": "1 1 48441 137",
+ "title": "Family Guy",
+ "tmsConnectorId": "SH002960010000",
+ "tmsId": "EP002960010311",
+ "resourceType": "CONTENT",
+ "resourceId": "36d7fc6f-1f70-3c52-89c9-3cf400f0b064",
+ "editId": "9f6d1653-17ae-480e-ae4d-7501c9c29454",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
+ "apgId": "EP002960010312",
+ "canonicalId": "2c37fbe3-6535-9ead-d3b8-ccbfba3ab936",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T05:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC"
+ ],
+ "resourceId": "65011367-6a08-3e42-94e2-0bc67b4f0cca",
+ "scheduleId": "65011367-6a08-3e42-94e2-0bc67b4f0cca",
+ "startTime": "2026-04-06T04:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Peter gets power hungry when he's asked to fill in for a mall Santa; Stewie and Brian decide to crash holiday office parties for free food, fun and women.",
+ "displayTitle": "Family Guy",
"episodeNumber": 9,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882621U3",
- "price": 0,
- "repeat": true,
- "lookBack": true,
- "tvAdvisory": [
- "L"
+ "episodeTitle": "How the Griffin Stole Christmas",
+ "genres": [
+ "Comedy",
+ "Sitcom",
+ "Holiday",
+ "Animated"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270785",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T09:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Basic Cable",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 23,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
+ "metadataLanguage": "en",
+ "originalAirDate": "2016-12-11",
+ "parentalRating": "TV14",
+ "releaseYear": 2016,
+ "seasonId": "7f1d42d9-0f8e-468f-a354-ddd552c95c53",
+ "seasonNumber": 15,
+ "seriesEditId": "fd684468-02d1-4a9d-a05a-83e7ba5b84c0",
+ "seriesId": "e79aa78f-f6b0-20fa-6b4c-a167fb50afe7",
+ "stbContentId": "1 1 48441 138",
+ "title": "Family Guy",
+ "tmsConnectorId": "SH002960010000",
+ "tmsId": "EP002960010312",
+ "resourceType": "CONTENT",
+ "resourceId": "65011367-6a08-3e42-94e2-0bc67b4f0cca",
+ "editId": "ca489484-cfc4-4e48-bccc-3c9e5da60f9c",
+ "itemType": "VIDEO_PROGRAM"
},
{
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
+ "apgId": "EP002298270305",
+ "canonicalId": "f75fc527-993f-d52c-4732-163087c1ba2f",
+ "categories": [
+ "TVShow"
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "South Park",
- "episodeNumber": 8,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882665U3",
- "price": 0,
- "repeat": true,
- "lookBack": true,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270467",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T09:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "C... Magic",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 18,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/13662735/p13662735_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Product Info",
- "Shopping"
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T05:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVMA",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "db8a692e-7033-324a-908a-6f8bd938df7a",
+ "scheduleId": "db8a692e-7033-324a-908a-6f8bd938df7a",
+ "startTime": "2026-04-06T05:00:00Z"
+ }
],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/13662735/p13662735_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
- "title": "Sex Toys - 50 Percent OFF!",
- "episodeNumber": null,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882701U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "SH025929710000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T10:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "SD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/13662735/p13662735_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/16255884/p16255884_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Product Info",
- "Shopping"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/16255884/p16255884_b_v5_aa_p.jpg",
- "rating": "NR (Not Rated)",
- "description": null,
- "title": "Men's Health: All-Natural Secret for Prostate Health",
- "episodeNumber": null,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882739U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "SH030991650000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T10:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "SD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/16255884/p16255884_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/default/TV/tv.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Product Info",
- "Shopping"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/default/TV/tv_p.jpg",
- "rating": "TVG",
- "description": null,
- "title": "Jane Seymour, Kate Walsh share their skin secrets",
- "episodeNumber": null,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882812U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "SH043806090000",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T11:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "SD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/default/TV/tv_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/194833/p194833_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Parks and Recreation",
- "episodeNumber": 3,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882858U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP011281150009",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T11:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Beauty Pageant",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 2,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/194833/p194833_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Parks and Recreation",
- "episodeNumber": 4,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882910U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP011281150010",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T12:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Practice Date",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 2,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/194833/p194833_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Parks and Recreation",
- "episodeNumber": 5,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882952U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP011281150011",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T12:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Sister City",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 2,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/194833/p194833_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160038/EP000169160038_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160038/EP000169160038_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Seinfeld",
- "episodeNumber": 12,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007882999U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP000169160038",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T13:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Red Dot",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 3,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160038/EP000169160038_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160001/EP000169160001_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160001/EP000169160001_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Seinfeld",
- "episodeNumber": 13,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883030U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP000169160001",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T13:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Subway",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 3,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160001/EP000169160001_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160002/EP000169160002_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160002/EP000169160002_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Seinfeld",
- "episodeNumber": 14,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883080U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP000169160002",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T14:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Pez Dispenser",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 3,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160002/EP000169160002_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160006/EP000169160006_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160006/EP000169160006_aa_p.jpg",
- "rating": "TVPG",
- "description": null,
- "title": "Seinfeld",
- "episodeNumber": 16,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883111U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "EP000169160006",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T14:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Fix-Up",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 3,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH000169160000/EP000169160006/EP000169160006_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 12,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883166U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330123",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T15:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Scott's Tots",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 14,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883199U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330125",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T15:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Banker",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330126/EP007261330126_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330126/EP007261330126_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 15,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883237U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330126",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T16:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Sabre",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330126/EP007261330126_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330127/EP007261330127_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330127/EP007261330127_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 16,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883274U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330127",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T16:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Manager and Salesman",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330127/EP007261330127_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 17,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883325U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330242",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T17:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Delivery",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 18,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883353U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330243",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T17:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Delivery",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 19,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883369U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330129",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T18:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "St. Patrick's Day",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 20,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883424U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330130",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T18:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "New Leads",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330131/EP007261330131_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330131/EP007261330131_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 21,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883486U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330131",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T19:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Happy Hour",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330131/EP007261330131_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 22,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883509U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330134",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T19:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Secretary's Day",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330135/EP007261330135_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330135/EP007261330135_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 23,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883536U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330135",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T20:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Body Language",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330135/EP007261330135_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 24,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883577U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330136",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T20:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Cover-Up",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 25,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883619U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330137",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T21:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "The Chump",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 26,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883652U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330138",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T21:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Whistleblower",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 6,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330142/EP007261330142_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330142/EP007261330142_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
+ "contentType": "EPISODE",
+ "description": "South Park citizens contend with widespread use of a racial slur.",
+ "displayTitle": "South Park",
"episodeNumber": 1,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883695U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
+ "episodeTitle": "With Apologies to Jesse Jackson",
+ "genres": [
+ "Sitcom",
+ "Animated"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330142",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T22:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Nepotism",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 7,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330142/EP007261330142_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330143/EP007261330143_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330143/EP007261330143_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 2,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883731U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330143",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T22:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Counseling",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 7,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330143/EP007261330143_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/185008/p185008_b_v5_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 3,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883784U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330144",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T23:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Andy's Play",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 7,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/185008/p185008_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330145/EP007261330145_aa.jpg",
- "restartAllowed": true,
- "subcategoryList": [
- "Series",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330145/EP007261330145_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "The Office",
- "episodeNumber": 4,
- "duration": 30,
- "disableFastForward": true,
- "restartMaterialId": "B007883797U3",
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
- "D",
- "L"
- ],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP007261330145",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T23:30:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Sex Ed",
- "authCode": "NA",
- "format": "HD",
- "seasonNumber": 7,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/episodes/SH007261330000/EP007261330145/EP007261330145_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 1,
- "liveStreaming": "B"
- }
- ],
- "chKey": "3035_1668769200000",
- "chName": "Comedy Central HD",
- "chDesc": "The only 24-hour, all-comedy network. Spotlights Emmy and CableAce Award-winning shows like Dr. Katz: Professional Therapist, plus sitcoms, stand-up, animation, talk shows and movies.",
- "liveStreaming": "B",
- "digitalAdInsertableLive": false
- },
- {
- "secLiveStreaming": "N",
- "chNum": 249,
- "authCode": "NA",
- "chRec": true,
- "chCall": "COM",
- "chId": 249,
- "secondaryChannelId": 0,
- "chHd": false,
- "secondary": false,
- "blackOut": false,
- "chAdult": false,
- "chCat": [
- "Entertainment & Music Channels"
- ],
- "chLogoId": 272,
- "detailsLinkUrl": "/Channels/Comedy-Central-249",
- "schedules": [
- {
- "primaryImageUrl": "/db_photos/movies/AllPhotosAPGI/29160/29160_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Comedy",
- "Movies Anywhere",
- "Action/Adventure",
- "Science Fiction"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/29160/29160_aa_p.jpg",
- "rating": "TV14",
- "description": null,
- "title": "Men in Black II",
- "episodeNumber": null,
- "duration": 120,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "dimension": "2D",
- "ltd": "",
- "programID": "MV001173520000",
- "blackoutCode": "NA",
- "airTime": "2023-01-14T23:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": null,
- "authCode": "NA",
- "format": "SD",
- "seasonNumber": null,
- "listViewPrimaryImageUrl": "/db_photos/movies/AllPhotosAPGI/29160/29160_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "Movies",
- "hd": 0,
- "liveStreaming": "N"
- },
- {
- "primaryImageUrl": "/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg",
- "restartAllowed": false,
- "subcategoryList": [
- "Series",
- "Animation",
- "Comedy"
- ],
- "gridViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_p.jpg",
- "rating": "TVMA",
- "description": null,
+ "metadataLanguage": "en",
+ "originalAirDate": "2007-03-07",
+ "parentalRating": "TVMA",
+ "releaseYear": 2007,
+ "seasonId": "69efb6e8-17ee-4a05-a87f-33e5bf671eb7",
+ "seasonNumber": 11,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 131",
"title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270305",
+ "resourceType": "CONTENT",
+ "resourceId": "db8a692e-7033-324a-908a-6f8bd938df7a",
+ "editId": "739bebd6-7df3-425c-acbf-8dc2e3efee91",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270308",
+ "canonicalId": "8ece3941-1c89-b379-b1e8-2acfe3f86a17",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T06:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "a1abddcf-cce8-365d-bd56-4588b7715c9b",
+ "scheduleId": "a1abddcf-cce8-365d-bd56-4588b7715c9b",
+ "startTime": "2026-04-06T05:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Hillary Clinton comes to South Park for a campaign rally; Cartman follows a lead on a possible terrorist attack.",
+ "displayTitle": "South Park",
"episodeNumber": 4,
- "duration": 30,
- "price": 0,
- "repeat": true,
- "lookBack": false,
- "tvAdvisory": [
+ "episodeTitle": "The Snuke",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2007-03-28",
+ "parentalRating": "TV14",
+ "releaseYear": 2007,
+ "seasonId": "69efb6e8-17ee-4a05-a87f-33e5bf671eb7",
+ "seasonNumber": 11,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 134",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270308",
+ "resourceType": "CONTENT",
+ "resourceId": "a1abddcf-cce8-365d-bd56-4588b7715c9b",
+ "editId": "9e6bdcd9-26a3-4f1f-aaf9-9c9d9eebac2e",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270309",
+ "canonicalId": "eaba4aa9-6e23-5769-177c-607e713a6383",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T06:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVMA",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "ca99de1f-7303-3041-984d-e305eff1ecae",
+ "scheduleId": "ca99de1f-7303-3041-984d-e305eff1ecae",
+ "startTime": "2026-04-06T06:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Stan searches for the real story behind eggs and bunnies in the Easter ritual.",
+ "displayTitle": "South Park",
+ "episodeNumber": 5,
+ "episodeTitle": "Fantastic Easter Special",
+ "genres": [
+ "Sitcom",
+ "Holiday",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2007-04-04",
+ "parentalRating": "TVMA",
+ "releaseYear": 2007,
+ "seasonId": "69efb6e8-17ee-4a05-a87f-33e5bf671eb7",
+ "seasonNumber": 11,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 135",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270309",
+ "resourceType": "CONTENT",
+ "resourceId": "ca99de1f-7303-3041-984d-e305eff1ecae",
+ "editId": "a62d5d1f-38a3-41b8-8f1a-17c8159ea8a3",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270442",
+ "canonicalId": "12e579ef-5f24-6c76-75d6-fd004f2030c4",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T07:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "76e94f25-73d1-39e6-b71b-0652a6a9a4a1",
+ "scheduleId": "76e94f25-73d1-39e6-b71b-0652a6a9a4a1",
+ "startTime": "2026-04-06T06:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "When Ms. Garrison is the victim of another failed relationship, she takes it out on the fourth-graders.",
+ "displayTitle": "South Park",
+ "episodeNumber": 6,
+ "episodeTitle": "D-Yikes!",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2007-04-11",
+ "parentalRating": "TV14",
+ "releaseYear": 2007,
+ "seasonId": "69efb6e8-17ee-4a05-a87f-33e5bf671eb7",
+ "seasonNumber": 11,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 1BA",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270442",
+ "resourceType": "CONTENT",
+ "resourceId": "76e94f25-73d1-39e6-b71b-0652a6a9a4a1",
+ "editId": "39061e8c-e88d-4dd2-ba26-253379ceb78d",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270311",
+ "canonicalId": "619c4f4e-7ed9-1926-53fa-f01132c4a2eb",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T07:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "0e0a32a2-5b63-3f20-8265-34e1e7226f98",
+ "scheduleId": "0e0a32a2-5b63-3f20-8265-34e1e7226f98",
+ "startTime": "2026-04-06T07:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "The boys attempt to find a solution to the increasing number of homeless people in South Park.",
+ "displayTitle": "South Park",
+ "episodeNumber": 7,
+ "episodeTitle": "Night of the Living Homeless",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2007-04-18",
+ "parentalRating": "TV14",
+ "releaseYear": 2007,
+ "seasonId": "69efb6e8-17ee-4a05-a87f-33e5bf671eb7",
+ "seasonNumber": 11,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 137",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270311",
+ "resourceType": "CONTENT",
+ "resourceId": "0e0a32a2-5b63-3f20-8265-34e1e7226f98",
+ "editId": "76a97798-517b-4cc3-82f6-431b04ed0bc2",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270313",
+ "canonicalId": "ae4aa43f-5e15-a525-f51a-4e1a8201655f",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T08:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVMA",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "332f3ca8-e60f-3698-b01c-f7972faeda91",
+ "scheduleId": "332f3ca8-e60f-3698-b01c-f7972faeda91",
+ "startTime": "2026-04-06T07:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Cartman discovers the joys of having Tourette's syndrome; drunk with the power of saying whatever he wants without getting in trouble for it, he lines up National TV Coverage to take advantage of his new life with no filters.",
+ "displayTitle": "South Park",
+ "episodeNumber": 8,
+ "episodeTitle": "Le Petit Tourette",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2007-10-03",
+ "parentalRating": "TVMA",
+ "releaseYear": 2007,
+ "seasonId": "69efb6e8-17ee-4a05-a87f-33e5bf671eb7",
+ "seasonNumber": 11,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 139",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270313",
+ "resourceType": "CONTENT",
+ "resourceId": "332f3ca8-e60f-3698-b01c-f7972faeda91",
+ "editId": "ee106ae9-87c4-4343-b76a-c60f33808032",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270314",
+ "canonicalId": "4b81dd62-9575-53fa-2945-66c2fbdc6d3b",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T08:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "dd1ab194-ea31-3827-b94f-f6b70d0c55ee",
+ "scheduleId": "dd1ab194-ea31-3827-b94f-f6b70d0c55ee",
+ "startTime": "2026-04-06T08:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Randy becomes a local hero when he thinks that he may have broken a world record.",
+ "displayTitle": "South Park",
+ "episodeNumber": 9,
+ "episodeTitle": "More Crap",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2007-10-10",
+ "parentalRating": "TV14",
+ "releaseYear": 2007,
+ "seasonId": "69efb6e8-17ee-4a05-a87f-33e5bf671eb7",
+ "seasonNumber": 11,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 13A",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270314",
+ "resourceType": "CONTENT",
+ "resourceId": "dd1ab194-ea31-3827-b94f-f6b70d0c55ee",
+ "editId": "bce6075c-8685-487a-8219-9de9ba12d288",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270318",
+ "canonicalId": "5d34cb14-422b-27cd-427c-7f46dc610306",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T09:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "09c8ec39-e426-38c4-83f4-0446bc7f116d",
+ "scheduleId": "09c8ec39-e426-38c4-83f4-0446bc7f116d",
+ "startTime": "2026-04-06T08:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Stan's superior skills on \"Guitar Hero\" damage his friendship with Kyle.",
+ "displayTitle": "South Park",
+ "episodeNumber": 13,
+ "episodeTitle": "Guitar Queer-O",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2007-11-07",
+ "parentalRating": "TV14",
+ "releaseYear": 2007,
+ "seasonId": "69efb6e8-17ee-4a05-a87f-33e5bf671eb7",
+ "seasonNumber": 11,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 13E",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270318",
+ "resourceType": "CONTENT",
+ "resourceId": "09c8ec39-e426-38c4-83f4-0446bc7f116d",
+ "editId": "aedaecdc-65ef-4010-a527-39b03bd7ca1c",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270319",
+ "canonicalId": "b6afaaae-d303-8c88-f4e8-a6ad2c02dd36",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T09:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "57d4a1ba-f935-3658-8911-e4200d02cfef",
+ "scheduleId": "57d4a1ba-f935-3658-8911-e4200d02cfef",
+ "startTime": "2026-04-06T09:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "A secret list created by the girls in the fourth grade, rates every boy's looks from cutest to ugliest.",
+ "displayTitle": "South Park",
+ "episodeNumber": 14,
+ "episodeTitle": "The List",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2007-11-14",
+ "parentalRating": "TV14",
+ "releaseYear": 2007,
+ "seasonId": "69efb6e8-17ee-4a05-a87f-33e5bf671eb7",
+ "seasonNumber": 11,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 13F",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270319",
+ "resourceType": "CONTENT",
+ "resourceId": "57d4a1ba-f935-3658-8911-e4200d02cfef",
+ "editId": "cbd113ac-91e7-456e-899a-160d9dfd048d",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270331",
+ "canonicalId": "a524e22a-4855-64c4-3b52-f3299810bdf8",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T10:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "5959e97c-0f39-310a-a72a-2b2e18eb3934",
+ "scheduleId": "5959e97c-0f39-310a-a72a-2b2e18eb3934",
+ "startTime": "2026-04-06T09:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Cartman comes face to face with his own mortality when his routine tonsillectomy goes horribly wrong.",
+ "displayTitle": "South Park",
+ "episodeNumber": 1,
+ "episodeTitle": "Tonsil Trouble",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-03-12",
+ "parentalRating": "TV14",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 14B",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270331",
+ "resourceType": "CONTENT",
+ "resourceId": "5959e97c-0f39-310a-a72a-2b2e18eb3934",
+ "editId": "c80486a5-1de7-4f49-ac59-3e9ad072a6a4",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP010591100066",
+ "canonicalId": "ba545ed6-ec0b-4b33-405f-eff9eb957a6c",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T10:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "744a6214-6a41-305f-8105-41598ac3098d",
+ "scheduleId": "744a6214-6a41-305f-8105-41598ac3098d",
+ "startTime": "2026-04-06T10:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Cleveland volunteers to take Roberta on a college visit to his alma mater as an excuse to relive his college days; Rallo helps Cleveland Jr. learn to sleep without a stuffed animal.",
+ "displayTitle": "The Cleveland Show",
+ "episodeNumber": 18,
+ "episodeTitle": "B.M.O.C.",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2012-04-29",
+ "parentalRating": "TV14",
+ "releaseYear": 2012,
+ "seasonId": "6753a5b1-9f29-456a-800f-2ab45bcd3360",
+ "seasonNumber": 3,
+ "seriesEditId": "0179dc85-d2a9-4d22-af98-b88db99cb47a",
+ "seriesId": "1fa48e75-65cb-b625-77d0-fcdd09e245bb",
+ "stbContentId": "1 1 102926 42",
+ "title": "The Cleveland Show",
+ "tmsConnectorId": "SH010591100000",
+ "tmsId": "EP010591100066",
+ "resourceType": "CONTENT",
+ "resourceId": "744a6214-6a41-305f-8105-41598ac3098d",
+ "editId": "5351fe68-f43a-404c-a87a-7528a0de9ba3",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP010591100067",
+ "canonicalId": "88d1a4fe-5bf0-eea7-cb04-eee2d88f3c17",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T11:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "bf99a4cc-42c4-3656-9a5a-42b9df1bbe4b",
+ "scheduleId": "bf99a4cc-42c4-3656-9a5a-42b9df1bbe4b",
+ "startTime": "2026-04-06T10:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Cleveland Jr. goes on a church trip to impress the girl he likes; Donna's ex-boyfriend returns from Iraq to find her married.",
+ "displayTitle": "The Cleveland Show",
+ "episodeNumber": 19,
+ "episodeTitle": "Jesus Walks",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2012-04-29",
+ "parentalRating": "TV14",
+ "releaseYear": 2012,
+ "seasonId": "6753a5b1-9f29-456a-800f-2ab45bcd3360",
+ "seasonNumber": 3,
+ "seriesEditId": "0179dc85-d2a9-4d22-af98-b88db99cb47a",
+ "seriesId": "1fa48e75-65cb-b625-77d0-fcdd09e245bb",
+ "stbContentId": "1 1 102926 43",
+ "title": "The Cleveland Show",
+ "tmsConnectorId": "SH010591100000",
+ "tmsId": "EP010591100067",
+ "resourceType": "CONTENT",
+ "resourceId": "bf99a4cc-42c4-3656-9a5a-42b9df1bbe4b",
+ "editId": "3f1a2f0c-8ebb-45f0-a629-6560125a0706",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP010591100068",
+ "canonicalId": "a9eba177-502d-5cd4-1c3e-4aa4894f4146",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T11:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "af5bf021-39bf-3a42-ab07-048eab522fad",
+ "scheduleId": "af5bf021-39bf-3a42-ab07-048eab522fad",
+ "startTime": "2026-04-06T11:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Cleveland Jr. loses respect for his father when Cleveland falls off the toilet and gets a concussion; Rallo is finally tall enough to ride his favorite roller coaster.",
+ "displayTitle": "The Cleveland Show",
+ "episodeNumber": 20,
+ "episodeTitle": "Flush of Genius",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2012-05-06",
+ "parentalRating": "TV14",
+ "releaseYear": 2012,
+ "seasonId": "6753a5b1-9f29-456a-800f-2ab45bcd3360",
+ "seasonNumber": 3,
+ "seriesEditId": "0179dc85-d2a9-4d22-af98-b88db99cb47a",
+ "seriesId": "1fa48e75-65cb-b625-77d0-fcdd09e245bb",
+ "stbContentId": "1 1 102926 44",
+ "title": "The Cleveland Show",
+ "tmsConnectorId": "SH010591100000",
+ "tmsId": "EP010591100068",
+ "resourceType": "CONTENT",
+ "resourceId": "af5bf021-39bf-3a42-ab07-048eab522fad",
+ "editId": "27ab7a56-ae3e-4759-8d0d-00c131be4a59",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP010591100069",
+ "canonicalId": "ce5af602-3fc1-ae87-7b51-e3d12313698e",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T12:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "4e3974cf-abf0-3329-8e28-2427298076be",
+ "scheduleId": "4e3974cf-abf0-3329-8e28-2427298076be",
+ "startTime": "2026-04-06T11:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "When an unexpected event leads Donna's estranged mother to find Cleveland, he arranges to reunite the two women.",
+ "displayTitle": "The Cleveland Show",
+ "episodeNumber": 21,
+ "episodeTitle": "Mama Drama",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2012-05-13",
+ "parentalRating": "TV14",
+ "releaseYear": 2012,
+ "seasonId": "6753a5b1-9f29-456a-800f-2ab45bcd3360",
+ "seasonNumber": 3,
+ "seriesEditId": "0179dc85-d2a9-4d22-af98-b88db99cb47a",
+ "seriesId": "1fa48e75-65cb-b625-77d0-fcdd09e245bb",
+ "stbContentId": "1 1 102926 45",
+ "title": "The Cleveland Show",
+ "tmsConnectorId": "SH010591100000",
+ "tmsId": "EP010591100069",
+ "resourceType": "CONTENT",
+ "resourceId": "4e3974cf-abf0-3329-8e28-2427298076be",
+ "editId": "1aec0101-9245-4332-9f78-7575403db707",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270332",
+ "canonicalId": "a013b67f-ce33-349e-212f-104560bdcc63",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T12:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVMA",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "166eef89-1ba8-3ebd-b17b-eac85dccde02",
+ "scheduleId": "166eef89-1ba8-3ebd-b17b-eac85dccde02",
+ "startTime": "2026-04-06T12:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "When the boys help Britney Spears get to the North Pole, they discover the shocking secret behind her popularity.",
+ "displayTitle": "South Park",
+ "episodeNumber": 2,
+ "episodeTitle": "Britney's New Look",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-03-19",
+ "parentalRating": "TVMA",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 14C",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270332",
+ "resourceType": "CONTENT",
+ "resourceId": "166eef89-1ba8-3ebd-b17b-eac85dccde02",
+ "editId": "ba4cf7f5-ad02-4c28-8be8-79190f3e6c63",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270333",
+ "canonicalId": "7651a8e6-8d0e-a6d3-4c33-18388bcba670",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T13:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVMA",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "5905e2b3-dc74-3300-a930-eb7608a1ffce",
+ "scheduleId": "5905e2b3-dc74-3300-a930-eb7608a1ffce",
+ "startTime": "2026-04-06T12:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "In a South Park homage to the 1981 film, Heavy Metal, the boys are trying to get Kenny off the latest drug craze that's captured the junior high and under set.",
+ "displayTitle": "South Park",
+ "episodeNumber": 3,
+ "episodeTitle": "Major Boobage",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-03-26",
+ "parentalRating": "TVMA",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 14D",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270333",
+ "resourceType": "CONTENT",
+ "resourceId": "5905e2b3-dc74-3300-a930-eb7608a1ffce",
+ "editId": "be1e9e68-9817-4292-b3aa-daf9b903bc31",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270334",
+ "canonicalId": "c441fbd0-65cd-16ec-128f-e0a6e2eeb7a0",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 2100,
+ "endTime": "2026-04-06T13:35:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVMA",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "b3575918-4302-372b-a0c0-0fdd501d5c94",
+ "scheduleId": "b3575918-4302-372b-a0c0-0fdd501d5c94",
+ "startTime": "2026-04-06T13:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "The head of the World Canadian Bureau leads the country into a strike and the responsibility of brokering a settlement rests with the boys.",
+ "displayTitle": "South Park",
+ "episodeNumber": 4,
+ "episodeTitle": "Canada on Strike!",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-04-02",
+ "parentalRating": "TVMA",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 14E",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270334",
+ "resourceType": "CONTENT",
+ "resourceId": "b3575918-4302-372b-a0c0-0fdd501d5c94",
+ "editId": "bcf57fd5-61e2-40ab-a02b-85ae04bed519",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270335",
+ "canonicalId": "a7d11091-8bb7-9616-194d-3e8db3433975",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 2100,
+ "endTime": "2026-04-06T14:10:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "6c380fcf-8b95-3b4d-84c6-02781822112d",
+ "scheduleId": "6c380fcf-8b95-3b4d-84c6-02781822112d",
+ "startTime": "2026-04-06T13:35:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "While Ms. Garrison is off trying to find a way to become the man he was always intended to be, Cartman is put in charge of the classroom.",
+ "displayTitle": "South Park",
+ "episodeNumber": 5,
+ "episodeTitle": "Eek, a Penis!",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-04-09",
+ "parentalRating": "TV14",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 14F",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270335",
+ "resourceType": "CONTENT",
+ "resourceId": "6c380fcf-8b95-3b4d-84c6-02781822112d",
+ "editId": "c1d5977e-dc4c-4039-82dd-740ee1a4e5a8",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270336",
+ "canonicalId": "dba0be33-c499-db0b-fa4f-3cb18c0beb4d",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 2100,
+ "endTime": "2026-04-06T14:45:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "e692efb0-ab25-319b-bcd5-9d15801bc5c8",
+ "scheduleId": "e692efb0-ab25-319b-bcd5-9d15801bc5c8",
+ "startTime": "2026-04-06T14:10:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Randy packs up his family and heads west when he wakes up to find the Internet is gone.",
+ "displayTitle": "South Park",
+ "episodeNumber": 6,
+ "episodeTitle": "Over Logging",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-04-16",
+ "parentalRating": "TV14",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 150",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270336",
+ "resourceType": "CONTENT",
+ "resourceId": "e692efb0-ab25-319b-bcd5-9d15801bc5c8",
+ "editId": "b61eff7d-0f52-4f60-9e5f-6f67c35997f5",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270337",
+ "canonicalId": "f6add436-828e-c88d-c165-48a20f0afc24",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T15:15:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "bc7e16b7-be94-3e27-a8f2-ec2a7f85b646",
+ "scheduleId": "bc7e16b7-be94-3e27-a8f2-ec2a7f85b646",
+ "startTime": "2026-04-06T14:45:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "While the kids are on a field trip to a living museum, Cartman makes Butters sneak away from the class to go to the amusement center next door.",
+ "displayTitle": "South Park",
+ "episodeNumber": 7,
+ "episodeTitle": "Super Fun Time",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-04-23",
+ "parentalRating": "TV14",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 151",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270337",
+ "resourceType": "CONTENT",
+ "resourceId": "bc7e16b7-be94-3e27-a8f2-ec2a7f85b646",
+ "editId": "b08d9ff0-7bfd-40a7-afa8-243f514a3677",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270340",
+ "canonicalId": "ff578271-3944-c625-5d5e-ba1a2de53916",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 2100,
+ "endTime": "2026-04-06T15:50:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "2a96124f-e0ef-3c73-b4aa-1a6f89578bf0",
+ "scheduleId": "2a96124f-e0ef-3c73-b4aa-1a6f89578bf0",
+ "startTime": "2026-04-06T15:15:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Butters stands with Cartman as he confronts the Chinese after a tragic event.",
+ "displayTitle": "South Park",
+ "episodeNumber": 8,
+ "episodeTitle": "The China Probrem",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-10-08",
+ "parentalRating": "TV14",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 154",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270340",
+ "resourceType": "CONTENT",
+ "resourceId": "2a96124f-e0ef-3c73-b4aa-1a6f89578bf0",
+ "editId": "4e419c66-0058-41fc-84fa-fd8b43532f6b",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270341",
+ "canonicalId": "d44ba864-fbfd-deac-b5eb-51604bfde847",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 2100,
+ "endTime": "2026-04-06T16:25:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVMA",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "a2658147-adfd-3bcd-820d-36fc4acdc6b9",
+ "scheduleId": "a2658147-adfd-3bcd-820d-36fc4acdc6b9",
+ "startTime": "2026-04-06T15:50:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Wendy gets in trouble when she threatens to beat up Cartman after school.",
+ "displayTitle": "South Park",
+ "episodeNumber": 9,
+ "episodeTitle": "Breast Cancer Show Ever",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-10-15",
+ "parentalRating": "TVMA",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 155",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270341",
+ "resourceType": "CONTENT",
+ "resourceId": "a2658147-adfd-3bcd-820d-36fc4acdc6b9",
+ "editId": "f43a75d4-edcd-4dbf-b121-6e277bedec70",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270344",
+ "canonicalId": "224bc66a-bf44-6776-7d01-dc16bfb73384",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 2100,
+ "endTime": "2026-04-06T17:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVMA",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "653abb31-2110-352c-a073-8c288a3aeeb2",
+ "scheduleId": "653abb31-2110-352c-a073-8c288a3aeeb2",
+ "startTime": "2026-04-06T16:25:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "While the country celebrates the outcome of the election, the new President-elect arrives at the White House prematurely.",
+ "displayTitle": "South Park",
+ "episodeNumber": 12,
+ "episodeTitle": "About Last Night...",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-11-05",
+ "parentalRating": "TVMA",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 158",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270344",
+ "tvAdvisories": [
"D",
"L"
],
- "dimension": "2D",
- "ltd": "",
- "programID": "EP002298270445",
- "blackoutCode": "NA",
- "airTime": "2023-01-15T06:00:00.000+0000",
- "secLiveStreaming": "N",
- "prOrd": 0,
- "episodeTitle": "Goth Kids 3: Dawn of the Posers",
- "authCode": "NA",
- "format": "SD",
- "seasonNumber": 17,
- "listViewPrimaryImageUrl": "/db_photos/showcards/v5/AllPhotosAPGT/184338/p184338_b_v5_aa_l.jpg",
- "eventCode": "",
- "mainCategory": "TV",
- "hd": 0,
- "liveStreaming": "N"
+ "resourceType": "CONTENT",
+ "resourceId": "653abb31-2110-352c-a073-8c288a3aeeb2",
+ "editId": "495d289a-f80f-454c-a070-61f7b8589503",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270345",
+ "canonicalId": "9a7dce54-49bc-3bba-9b03-22118dc7f4ce",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T17:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "92ba1a5c-583a-3a10-99f0-01466e5cb7ea",
+ "scheduleId": "92ba1a5c-583a-3a10-99f0-01466e5cb7ea",
+ "startTime": "2026-04-06T17:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "The boys must embrace the latest fad to hit South Park Elementary or risk their status as the coolest kids in school.",
+ "displayTitle": "South Park",
+ "episodeNumber": 13,
+ "episodeTitle": "Elementary School Musical",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-11-12",
+ "parentalRating": "TV14",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 159",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270345",
+ "tvAdvisories": [
+ "D",
+ "L"
+ ],
+ "resourceType": "CONTENT",
+ "resourceId": "92ba1a5c-583a-3a10-99f0-01466e5cb7ea",
+ "editId": "8186158a-894c-45a8-beec-d993780e2da8",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP002298270346",
+ "canonicalId": "6abb8eb7-263a-b734-e7c4-a05adddfc4c5",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T18:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "27b1368e-5de5-36a8-b3e4-7cea765f0b59",
+ "scheduleId": "27b1368e-5de5-36a8-b3e4-7cea765f0b59",
+ "startTime": "2026-04-06T17:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "The Goth Kids are angry when the other children can't tell the difference between a goth and a vampire.",
+ "displayTitle": "South Park",
+ "episodeNumber": 14,
+ "episodeTitle": "The Ungroundable",
+ "genres": [
+ "Sitcom",
+ "Animated"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2008-11-19",
+ "parentalRating": "TV14",
+ "releaseYear": 2008,
+ "seasonId": "83f1699b-6e35-45a7-a50f-c02fd4afabbe",
+ "seasonNumber": 12,
+ "seriesEditId": "bf0ea01c-3e9f-458c-ac80-2ab99798c7ec",
+ "seriesId": "daa235fb-5ddc-f267-6016-1b84897680ce",
+ "stbContentId": "1 1 381C3 15A",
+ "title": "South Park",
+ "tmsConnectorId": "SH002298270000",
+ "tmsId": "EP002298270346",
+ "tvAdvisories": [
+ "L",
+ "D"
+ ],
+ "resourceType": "CONTENT",
+ "resourceId": "27b1368e-5de5-36a8-b3e4-7cea765f0b59",
+ "editId": "93f318ee-8334-47b7-8a18-247af2a078cd",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP000169160178",
+ "canonicalId": "9086d8fc-1048-eaef-3a64-3a861831c57c",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T18:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "ecc310aa-471b-3190-943d-1bc6cc6b3772",
+ "scheduleId": "ecc310aa-471b-3190-943d-1bc6cc6b3772",
+ "startTime": "2026-04-06T18:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "George's plans for a summer getaway are foiled; Elaine's well-meaning criticism of a co-worker is not well-received.",
+ "displayTitle": "Seinfeld",
+ "episodeNumber": 22,
+ "episodeTitle": "The Summer of George",
+ "genres": [
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-05-15",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "5a75c460-5cbb-4ea3-acba-5911532801b3",
+ "seasonNumber": 8,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 B2",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160178",
+ "resourceType": "CONTENT",
+ "resourceId": "ecc310aa-471b-3190-943d-1bc6cc6b3772",
+ "editId": "0508c9ca-8088-4640-8a02-707bb1710c9e",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP000169160180",
+ "canonicalId": "ca7a2846-ca64-5da9-1d21-a44080f6ff5b",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T19:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "2571bb90-019f-32bc-b3f0-f3b2f893650f",
+ "scheduleId": "2571bb90-019f-32bc-b3f0-f3b2f893650f",
+ "startTime": "2026-04-06T18:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Competing comic Bania warms to Jerry's crowds; Elaine and David unite for a European trip; Kramer reconsiders butter.",
+ "displayTitle": "Seinfeld",
+ "episodeNumber": 1,
+ "episodeTitle": "The Butter Shave",
+ "genres": [
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-09-25",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "6020c194-97b3-4ba3-8636-0b1f7700797d",
+ "seasonNumber": 9,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 B4",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160180",
+ "resourceType": "CONTENT",
+ "resourceId": "2571bb90-019f-32bc-b3f0-f3b2f893650f",
+ "editId": "f871f0d2-9a80-40e9-ac27-b703b8f7fa34",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP000169160181",
+ "canonicalId": "20c58bda-283a-83a4-d5cd-65b1604da15b",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T19:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "d4fc0134-a38a-3484-85f1-556057e60bbd",
+ "scheduleId": "d4fc0134-a38a-3484-85f1-556057e60bbd",
+ "startTime": "2026-04-06T19:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Jerry finds part of his new date's anatomy of interest; George's job is threatened; Elaine's relationship sputters.",
+ "displayTitle": "Seinfeld",
+ "episodeNumber": 2,
+ "episodeTitle": "The Voice",
+ "genres": [
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-10-02",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "6020c194-97b3-4ba3-8636-0b1f7700797d",
+ "seasonNumber": 9,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 B5",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160181",
+ "resourceType": "CONTENT",
+ "resourceId": "d4fc0134-a38a-3484-85f1-556057e60bbd",
+ "editId": "7f3a29cc-f08f-484b-8ba0-c57327d933e7",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP000169160182",
+ "canonicalId": "47eb6bce-b7ca-a3a5-d180-df9ec2999572",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T20:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "65983181-91ba-372d-90d1-bcbb157ac34b",
+ "scheduleId": "65983181-91ba-372d-90d1-bcbb157ac34b",
+ "startTime": "2026-04-06T19:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Jerry tries to reveal more of his feelings on the advice of his new girlfriend (Lori Loughlin). With Jason Alexander.",
+ "displayTitle": "Seinfeld",
+ "episodeNumber": 3,
+ "episodeTitle": "The Serenity Now",
+ "genres": [
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-10-09",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "6020c194-97b3-4ba3-8636-0b1f7700797d",
+ "seasonNumber": 9,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 B6",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160182",
+ "resourceType": "CONTENT",
+ "resourceId": "65983181-91ba-372d-90d1-bcbb157ac34b",
+ "editId": "27e4f5e7-e8dc-494c-98f6-ba1bc83db816",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP000169160183",
+ "canonicalId": "3d76869a-42ef-4d84-59d8-deb1afb4ce69",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "badges": [
+ "OnNow"
+ ],
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T20:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "5a881f69-2e7a-3ff4-9698-23e4f0306af7",
+ "scheduleId": "5a881f69-2e7a-3ff4-9698-23e4f0306af7",
+ "startTime": "2026-04-06T20:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "At his parents' insistence, Jerry is coached by personal trainer Izzy Mandelbaum (Lloyd Bridges) to lose weight.",
+ "displayTitle": "Seinfeld",
+ "episodeNumber": 4,
+ "episodeTitle": "The Blood",
+ "genres": [
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-10-16",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "6020c194-97b3-4ba3-8636-0b1f7700797d",
+ "seasonNumber": 9,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 B7",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160183",
+ "resourceType": "CONTENT",
+ "resourceId": "5a881f69-2e7a-3ff4-9698-23e4f0306af7",
+ "editId": "eb701267-4bd4-4794-93ac-94bfc103d237",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP000169160184",
+ "canonicalId": "c97d635a-7370-8b56-7908-f5049a0c5f86",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "badges": [
+ "AiringOn"
+ ],
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T21:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TVPG",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "c38d520b-f414-3d65-aa15-787e7f909565",
+ "scheduleId": "c38d520b-f414-3d65-aa15-787e7f909565",
+ "startTime": "2026-04-06T20:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Jerry, promised a vehicle as payment for a performance, winds up getting a van instead of a car; Elaine meets a new man; Kramer has no need for mail.",
+ "displayTitle": "Seinfeld",
+ "episodeNumber": 5,
+ "episodeTitle": "The Junk Mail",
+ "genres": [
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "1997-10-30",
+ "parentalRating": "TVPG",
+ "releaseYear": 1997,
+ "seasonId": "6020c194-97b3-4ba3-8636-0b1f7700797d",
+ "seasonNumber": 9,
+ "seriesEditId": "42df0f3e-b723-4618-bb7a-170890de7e4f",
+ "seriesId": "f95949d9-807e-8584-e299-ad8c19f23b6f",
+ "stbContentId": "1 1 4214 B8",
+ "title": "Seinfeld",
+ "tmsConnectorId": "SH000169160000",
+ "tmsId": "EP000169160184",
+ "resourceType": "CONTENT",
+ "resourceId": "c38d520b-f414-3d65-aa15-787e7f909565",
+ "editId": "2cbd7da2-3b27-4c60-a9c3-f5bb331fa55f",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP007261330025",
+ "canonicalId": "64ad4956-d5b9-d833-13bb-1f4d0d0e6f6a",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "badges": [
+ "AiringOn"
+ ],
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T21:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "be6f5511-6f50-318e-b1c4-92d2082c3d1b",
+ "scheduleId": "be6f5511-6f50-318e-b1c4-92d2082c3d1b",
+ "startTime": "2026-04-06T21:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Michael takes the Dunder Mifflin employees ice skating to celebrate his birthday; Kevin waits nervously for test results.",
+ "displayTitle": "The Office",
+ "episodeNumber": 19,
+ "episodeTitle": "Michael's Birthday",
+ "genres": [
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2006-03-30",
+ "parentalRating": "TV14",
+ "releaseYear": 2006,
+ "seasonId": "d2866d40-460c-4a91-9fd7-97e58414692e",
+ "seasonNumber": 2,
+ "seriesEditId": "f18e497e-0521-4854-9f7f-f06ea7678696",
+ "seriesId": "7777272c-b235-c317-c2b5-34eec10be5f9",
+ "stbContentId": "1 1 B1475 19",
+ "title": "The Office",
+ "tmsConnectorId": "SH007261330000",
+ "tmsId": "EP007261330025",
+ "tvAdvisories": [
+ "D",
+ "L"
+ ],
+ "resourceType": "CONTENT",
+ "resourceId": "be6f5511-6f50-318e-b1c4-92d2082c3d1b",
+ "editId": "0601e6c9-2987-44c0-9668-267880d6d2db",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP007261330026",
+ "canonicalId": "b455fe85-60df-c74d-afe4-561680ee4e4b",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "badges": [
+ "AiringOn"
+ ],
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T22:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "2858d7cf-1f71-3a81-97d2-d6b58e46655e",
+ "scheduleId": "2858d7cf-1f71-3a81-97d2-d6b58e46655e",
+ "startTime": "2026-04-06T21:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Dwight finds half a joint in the parking lot and launches a full investigation; Michael asks an unusual favor.",
+ "displayTitle": "The Office",
+ "episodeNumber": 20,
+ "episodeTitle": "Drug Testing",
+ "genres": [
+ "Comedy",
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2006-04-27",
+ "parentalRating": "TV14",
+ "releaseYear": 2006,
+ "seasonId": "d2866d40-460c-4a91-9fd7-97e58414692e",
+ "seasonNumber": 2,
+ "seriesEditId": "f18e497e-0521-4854-9f7f-f06ea7678696",
+ "seriesId": "7777272c-b235-c317-c2b5-34eec10be5f9",
+ "stbContentId": "1 1 B1475 1A",
+ "title": "The Office",
+ "tmsConnectorId": "SH007261330000",
+ "tmsId": "EP007261330026",
+ "tvAdvisories": [
+ "D",
+ "L"
+ ],
+ "resourceType": "CONTENT",
+ "resourceId": "2858d7cf-1f71-3a81-97d2-d6b58e46655e",
+ "editId": "1edad4e2-7e46-47d9-8d9c-120ea02fce4f",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP007261330027",
+ "canonicalId": "31b61ce4-f7cc-4728-7261-d4ee2ba9a684",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "badges": [
+ "AiringOn"
+ ],
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T22:30:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "5021f00b-f422-3f4e-8b32-e784308aa354",
+ "scheduleId": "5021f00b-f422-3f4e-8b32-e784308aa354",
+ "startTime": "2026-04-06T22:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Chaos ensues when Michael takes responsibility for conflict resolution from the Human Relations department.",
+ "displayTitle": "The Office",
+ "episodeNumber": 21,
+ "episodeTitle": "Conflict Resolution",
+ "genres": [
+ "Comedy",
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2006-05-04",
+ "parentalRating": "TV14",
+ "releaseYear": 2006,
+ "seasonId": "d2866d40-460c-4a91-9fd7-97e58414692e",
+ "seasonNumber": 2,
+ "seriesEditId": "f18e497e-0521-4854-9f7f-f06ea7678696",
+ "seriesId": "7777272c-b235-c317-c2b5-34eec10be5f9",
+ "stbContentId": "1 1 B1475 1B",
+ "title": "The Office",
+ "tmsConnectorId": "SH007261330000",
+ "tmsId": "EP007261330027",
+ "tvAdvisories": [
+ "D",
+ "L"
+ ],
+ "resourceType": "CONTENT",
+ "resourceId": "5021f00b-f422-3f4e-8b32-e784308aa354",
+ "editId": "ff96f579-5f52-4f66-8671-4cb370c5c239",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP007261330028",
+ "canonicalId": "19930fc0-2d74-d74b-f100-ece9d354a7c6",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "badges": [
+ "AiringOn"
+ ],
+ "consumableType": "LINEAR",
+ "duration": 1800,
+ "endTime": "2026-04-06T23:00:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "d7a1de1a-058b-39b7-8c7c-72ce4c885e6c",
+ "scheduleId": "d7a1de1a-058b-39b7-8c7c-72ce4c885e6c",
+ "startTime": "2026-04-06T22:30:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Employees take some big gambles when they host a charity casino-night in their warehouse.",
+ "displayTitle": "The Office",
+ "episodeNumber": 22,
+ "episodeTitle": "Casino Night",
+ "genres": [
+ "Comedy",
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2006-05-11",
+ "parentalRating": "TV14",
+ "releaseYear": 2006,
+ "seasonId": "d2866d40-460c-4a91-9fd7-97e58414692e",
+ "seasonNumber": 2,
+ "seriesEditId": "f18e497e-0521-4854-9f7f-f06ea7678696",
+ "seriesId": "7777272c-b235-c317-c2b5-34eec10be5f9",
+ "stbContentId": "1 1 B1475 1C",
+ "title": "The Office",
+ "tmsConnectorId": "SH007261330000",
+ "tmsId": "EP007261330028",
+ "tvAdvisories": [
+ "D",
+ "L"
+ ],
+ "resourceType": "CONTENT",
+ "resourceId": "d7a1de1a-058b-39b7-8c7c-72ce4c885e6c",
+ "editId": "575416ca-102c-4580-be04-fc89612eb658",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP007261330030",
+ "canonicalId": "be6fdd4f-3bed-150d-2cf9-4d250840798c",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "badges": [
+ "AiringOn"
+ ],
+ "consumableType": "LINEAR",
+ "duration": 2100,
+ "endTime": "2026-04-06T23:35:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "3e5add4b-ce49-3ebd-9198-a2cae149b3d6",
+ "scheduleId": "3e5add4b-ce49-3ebd-9198-a2cae149b3d6",
+ "startTime": "2026-04-06T23:00:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Michael unintentionally outs a gay employee; the situation with Jim and Pam.",
+ "displayTitle": "The Office",
+ "episodeNumber": 1,
+ "episodeTitle": "Gay Witch Hunt",
+ "genres": [
+ "Comedy",
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2006-09-21",
+ "parentalRating": "TV14",
+ "releaseYear": 2006,
+ "seasonId": "f02f89ca-ad62-412e-a454-0529d1c5c4e2",
+ "seasonNumber": 3,
+ "seriesEditId": "f18e497e-0521-4854-9f7f-f06ea7678696",
+ "seriesId": "7777272c-b235-c317-c2b5-34eec10be5f9",
+ "stbContentId": "1 1 B1475 1E",
+ "title": "The Office",
+ "tmsConnectorId": "SH007261330000",
+ "tmsId": "EP007261330030",
+ "tvAdvisories": [
+ "L",
+ "S",
+ "D"
+ ],
+ "resourceType": "CONTENT",
+ "resourceId": "3e5add4b-ce49-3ebd-9198-a2cae149b3d6",
+ "editId": "b72d0da1-7b19-4c77-8f5d-5ae25b9ac02b",
+ "itemType": "VIDEO_PROGRAM"
+ },
+ {
+ "apgId": "EP007261330031",
+ "canonicalId": "c2d06f78-fef5-314e-9d21-8384332af0e4",
+ "categories": [
+ "TVShow"
+ ],
+ "consumables": [
+ {
+ "augmentation": {
+ "constraints": {
+ "isPlayable": false,
+ "isRecordable": false,
+ "isRestart": true,
+ "isLookback": false,
+ "isDAI": false,
+ "isFastForwardDisabled": true,
+ "isExtendable": false,
+ "isCDVRUpsell": false
+ }
+ },
+ "badges": [
+ "AiringOn"
+ ],
+ "consumableType": "LINEAR",
+ "duration": 2100,
+ "endTime": "2026-04-07T00:10:00Z",
+ "format": "HD",
+ "metadataLanguage": "en",
+ "parentalRating": "TV14",
+ "programChannelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "qualifiers": [
+ "CC",
+ "1080p",
+ "HDTV"
+ ],
+ "resourceId": "00dfec0b-2e5f-3cbb-96a6-820b68b35537",
+ "scheduleId": "00dfec0b-2e5f-3cbb-96a6-820b68b35537",
+ "startTime": "2026-04-06T23:35:00Z"
+ }
+ ],
+ "contentType": "EPISODE",
+ "description": "Michael organizes a party in his hotel room when he, Dwight and Jan attend the Northeastern Mid-Market Office Supply Convention in Philadelphia.",
+ "displayTitle": "The Office",
+ "episodeNumber": 2,
+ "episodeTitle": "The Convention",
+ "genres": [
+ "Comedy",
+ "Sitcom"
+ ],
+ "metadataLanguage": "en",
+ "originalAirDate": "2006-09-28",
+ "parentalRating": "TV14",
+ "releaseYear": 2006,
+ "seasonId": "f02f89ca-ad62-412e-a454-0529d1c5c4e2",
+ "seasonNumber": 3,
+ "seriesEditId": "f18e497e-0521-4854-9f7f-f06ea7678696",
+ "seriesId": "7777272c-b235-c317-c2b5-34eec10be5f9",
+ "stbContentId": "1 1 B1475 1F",
+ "title": "The Office",
+ "tmsConnectorId": "SH007261330000",
+ "tmsId": "EP007261330031",
+ "tvAdvisories": [
+ "D",
+ "L"
+ ],
+ "resourceType": "CONTENT",
+ "resourceId": "00dfec0b-2e5f-3cbb-96a6-820b68b35537",
+ "editId": "e9a95e8f-8be1-4e09-94db-b05970a25485",
+ "itemType": "VIDEO_PROGRAM"
}
- ],
- "chKey": "249_1586426400000",
- "chName": "Comedy Central",
- "chDesc": "Comedy Central - The only 24-hour, all-comedy network. Spotlights Emmy and CableAce Award-winning shows like Dr. Katz: Professional Therapist, plus sitcoms, stand-up, animation, talk shows and movies.",
- "liveStreaming": "N",
- "digitalAdInsertableLive": false
+ ]
}
- ],
- "reporting": {
- "channelschedules": {
- "success": false,
- "reportingData": "reporting for app/json/channelschedules/channelschedules not implemented yet"
- }
- },
- "messagekeys": null,
- "contingencies": []
+ ]
}
\ No newline at end of file
diff --git a/sites/directv.com/__data__/no-content.json b/sites/directv.com/__data__/no-content.json
index 8b246c7c3..8610eeb7d 100644
--- a/sites/directv.com/__data__/no-content.json
+++ b/sites/directv.com/__data__/no-content.json
@@ -1,27 +1,8 @@
{
- "errors": [
+ "schedules": [
{
- "text": "Service failure: see errors or BulkOperationErrors for details",
- "field": "",
- "reason": "INTERNAL_SERVER_ERROR"
- }
- ],
- "statusCode": 500,
- "apiResponse": {
- "messages": "NOTE: see res.contingencies for size-filtered message values"
- },
- "reporting": {
- "channelschedules": {
- "success": false,
- "reportingData": "reporting for app/json/channelschedules/channelschedules not implemented yet"
- }
- },
- "messagekeys": null,
- "contingencies": [
- {
- "key": "ent_ep_guide_backend_unavailable_error_message",
- "value": "Due to technical issues the guide is currently unavailable, please check back to soon.",
- "level": "ERROR"
+ "channelId": "5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b",
+ "contents": []
}
]
}
\ No newline at end of file
diff --git a/sites/directv.com/directv.com.channels.xml b/sites/directv.com/directv.com.channels.xml
index 9373f8792..35ce2939e 100644
--- a/sites/directv.com/directv.com.channels.xml
+++ b/sites/directv.com/directv.com.channels.xml
@@ -1,1046 +1,1159 @@
- WINS
- Parkersburg, WV WCHS ABC 8 A3 HD
- Parkersburg, WV WCHS ABC 8 SD
- Parkersburg, WV WTAP NBC 15 A3 HD
- Parkersburg, WV WTAPDT2 MNT 17 A3 SD
- Parkersburg, WV WOVA FOX 22 A3 HD
- Parkersburg, WV WIYE CBS 47 A3 HD
- A3 Parkersburg 65 PBS (Virt)
- QVC (70)
- Home Shopping Network 70-1
- Home Shopping Network 70-1 (HD)
- QVC HD (70)
- News Mix 71
- Jewelry Television (72)
- SHOP HQ (73)
- SALE Network.
- Shop LC (75)
- QVC2 (76)
- NEW TV (77)
- COOL Network 78
- QVC2 (79)
- COZI TV
- GRIT
- BounceTV
- WOW TV 83
- IDEA Channel 84
- RENEW TV (85-1)
- Get IT Infomercial 85-3
- Save
- HOME TV (85-2)
- VALU 86
- DEALS
- BEST Channel 88
- VISION TV Channel 89
- FRESH (91)
- CRAVE (92)
- Celebrity Shopping TV 95
- SEEK 97 HD
- Interactive Advertising Channel HD (98)
- XTRA (99)
- DTV4K
- CINE4K 107
- CINE4K PPV
- Interactive Advertising Channel HD 111
- Seasonal Sports Offer Channel
- DTV Cinema 114 HD
- DTV Cinema 115
- DTV Cinema 118 HD
- DTV Cinema 119
- DTV Cinema 120
- DTV Cinema 123 HD
- DTV Cinema 124
- DTV Cinema 126 HD
- DTV Cinema 127 HD
- DTV Cinema 128 HD
- DTV Cinema 129 HD
- DTV Cinema 130 HD
- DTV Cinema 155 HD
- DTV Cinema 156 HD
- DTV Cinema 157 HD
- DTV Cinema 158 HD
- DTV Cinema 159
- DTV Cinema 160
- DTV Cinema 161
- DTV Cinema 162
- DTV Cinema 163
- DTV Cinema 164
- DTV Cinema 165
- DTV Cinema 166
- DTV Cinema 167
- DTV Cinema 168
- DTV Cinema 169
- DTV Cinema 170
- DTV Cinema 171
- DTV Cinema 172
- DTV Cinema 173
- DTV Cinema 174
- DTV Cinema 175
- DTV Cinema 176
- DTV Cinema 177
- DTV Cinema 181
- Kids Mix Channel
- News Mix
- CNN
- CNN HD
- COOL Network 203
- HLN
- HLN HD
- SPORTS MIX HD (205)
- ESPN
- ESPN HD
- ESPNews
- ESPNews HD
- ESPNU HD
- ESPNU
- ESPN2
- ESPN2 HD
- NFL Network
- NFL Network Alternate
- NFL Network Alternate HD
- NFL Network HD
- MLB Network Alt. 213-1
- MLB Network
- MLB Network HD
- MLB Network Alt. 213-1 HD
- MAVTV HD
- NHL Network
- NHL Network Alternate
- NHL Network Alternate HD
- NHL Network HD
- NBA TV
- NBA TV HD
- Tennis Channel
- Tennis Channel HD
- Golf Channel
- Golf Channel HD
- FOX Sports 1
- FOX Sports 1 HD
- CBS Sports Network
- CBS Sports Network HD
- Save 222 (Infomercial)
- Celebrity Shopping TV
- AVC (Infomercial)
- HOME TV (225)
- Shop LC
- MALL (Infomercial)
- GEM Shopping Network
- HGTV
- HGTV HD
- Magnolia Network
- Magnolia Network HD
- Food Network
- Food Network HD
- Cooking Channel
- Cooking Channel HD
- Game Show Network
- Game Show Network HD
- WOW TV 234
- Tastemade
- E!
- E! HD
- Bravo
- Bravo HD
- ReelzChannel
- ReelzChannel HD
- SundanceTV
- SundanceTV HD
- Home Shopping Network
- Home Shopping Network HD
- Paramount Network
- Paramount Network HD
- USA Network
- USA Network HD
- XPLOR
- SYFY
- SYFYHD
- TNT
- TNT HD
- TNT West HD
- truTV
- truTV HD
- TBS
- TBS West HD
- TBS HD
- FX
- FX HD
- Comedy Central
- Comedy Central West HD
- Comedy Central HD
- SECRET TV (250)
- Oxygen True Crime
- Oxygen True Crime HD
- Lifetime
- Lifetime HD
- LMN
- LMN HD
- AMC
- AMC HD
- XTRA Network
- TCM
- TCM HD
- FX Movie
- FX Movie Channel HD
- FXX
- FXX HD
- WE tv
- WE tv HD
- Discovery Life
- VISION TV Channel 262
- XPLOR (262-1)
- Get It Infomercial
- BBC America
- BBC America HD
- A&E
- A&E HD
- FYI
- FYI HD
- BEST Channel 268
- History
- History HD
- IDEA Channel 270
- VICE
- VICE HD
- Logo
- POP
- POP HD
- Ovation
- Ovation HD
- QVC
- QVC HD
- National Geographic
- National Geographic HD
- Travel Channel
- Travel Channel HD
- Discovery
- Discovery HD
- OWN
- OWN HD
- OWN West
- TLC
- TLC HD
- MotorTrend HD
- Animal Planet
- Animal Planet HD
- Nat Geo WILD
- Nat Geo Wild HD
- Science
- Science HD
- Investigation Discovery
- Investigation Discovery HD
- Destination America
- Destination America HD
- American Heroes Channel
- American Heroes HD
- PBS Kids
- Disney Junior
- Disney Junior HD
- Disney Channel (East)
- Disney Channel HD
- Disney Channel (West)
- Disney XD
- Disney XD HD
- BabyFirst
- Discovery Family Channel HD
- Discovery Family Channel
- Universal Kids
- Universal Kids HD
- Cartoon Network
- Cartoon Network HD
- Cartoon Network West
- Boomerang
- Nickelodeon East
- Nickelodeon East HD
- Nickelodeon West
- Nick Jr.
- Nick Jr. HD
- Nicktoons
- TeenNick
- TV Land
- TV Land HD
- ION Television East HD
- NewsNation
- NewsNation HD
- CRAVE
- SALE Network
- HSN2
- Freeform
- Freeform HD
- Hallmark
- Hallmark Channel HD
- Jewelry Television
- VALU
- QVC2
- Shop HQ
- QVC Channel 317
- QVC HD (317)
- QVC3
- NEW TV (319)
- Scientology Network
- NHK World News
- Go4IT
- Family Entertainment Television
- RENEW TV (324)
- SECRET TV
- FRESH
- Jewish Life TV
- Great American Family
- Great American Family HD
- CMT
- CMT HD
- TV One HD
- BET
- BET HD
- BET West HD
- BET Her
- MTV
- MTV West HD
- MTV HD
- MTV2
- MTV2 HD
- IFC
- IFC HD
- VH1
- VH1 HD
- MTV Classic
- SEEK HD
- UPTV
- Fuse HD
- AXS TV HD
- Cleo TV
- theGrio
- i24 News
- Son Life Broadcasting HD
- RFD HD TV
- BBC World News HD
- Free Speech TV
- Newsmax TV HD
- Newsmax TV
- CSPAN
- CSPAN 2
- NASA TV
- Bloomberg TV
- Bloomberg TV HD
- Cheddar News
- CNBC
- CNBC HD
- MSNBC
- MSNBC HD
- CNBC World
- CNNi
- Fox Business Network
- Fox Business Network HD
- FOX News Channel
- FOX News Channel HD
- AccuWeather HD
- The Weather Channel
- The Weather Channel HD
- GEB America
- INSP HD
- INSP
- God TV
- VICTORY
- World Harvest Television
- Hope Channel
- Daystar
- EWTN
- TBN Inspire
- Trinity Broadcast Network HD
- The WORD Network
- BYUtv
- LinkTV
- Christian Television Net
- TCT Network
- NRB
- Living Faith Network
- IMPACT TV
- ASPIRE (HD)
- Comedy TV HD
- Justice Central HD
- Revolt HD
- FM HD
- JBS
- PBSNET
- WCBS (New York) CBS East
- WCBS (New York) CBS HD East
- KCBS (Los Angeles) CBS West
- KCBS (Los Angeles) CBS HD West
- WNBC (New York) NBC East
- WNBC (New York) NBC HD East
- KNBC (Los Angeles) NBC West
- KNBC (Los Angeles) NBC HD West
- CW Plus
- KTLA CW West
- WABC (New York) ABC East
- WABC (New York) ABC HD East
- KABC (Los Angeles) ABC West
- KABC (Los Angeles) ABC HD West
- WNYW (New York) FOX East
- WNYW (New York) FOX HD East
- KTTV (Los Angeles) FOX West
- KTTV (Los Angeles) FOX HD West
- Aqui
- Univision East
- Univision East HD
- Univision West
- Galavision
- Galavision HD
- megaTV
- MegaTV HD
- Telemundo East
- Telemundo West
- UniMas SD West
- UniMas West HD
- VePlus
- Universo
- Universo HD
- Telefe
- Multimedios
- Discovery en Espanol
- WAPA America
- Videorola
- Nuestra Tele
- Caracol TV
- NTN 24
- CNN en Espanol
- Atreseries
- Cine Estelar
- Cinelatino
- Cine Nostalgia
- BabyTV
- Starz Encore en Espanol
- Centroamerica TV
- TeleCentro
- Hola TV
- Peru Magico
- ZooMoo
- Bandamax
- Hogar de HGTV
- Nat Geo Mundo
- Discovery Familia
- TV Chile
- Ecuavisa Internacional
- SUR Peru
- Vme
- Azteca America
- Estrella TV
- History en Espanol
- Pasiones
- Tr3S
- Canal 22 Internacional
- Once Mexico
- Enlace
- Sony Cine
- Viendo Movies
- De Pelicula
- De Pelicula Clasico
- FOROtv
- Univision telenovelas
- INFO Temp 7
- ESNE PIO
- Ecuador TV
- Antena 3
- Atres Cine
- TVE
- HITN
- Cine Mexicano
- TUDN HD
- TUDN
- FOX Deportes
- FOX Deportes HD
- ESPN Deportes
- ESPN Deportes HD
- GolTV
- TyC Sports
- Nuestra Vision
- Estrella News
- Meganoticias
- MLS Direct Kick 475
- MLS Direct Kick 475 HD
- MLS Direct Kick 476
- MLS Direct Kick 476 HD
- MLS Direct Kick 477 HD
- MLS Direct Kick 477
- MLS Direct Kick 478 HD
- MLS Direct Kick 478
- MLS Direct Kick 479
- MLS Direct Kick 479 HD
- MLS Direct Kick 480
- MLS Direct Kick 480 HD
- MLS Direct Kick 481
- MLS Direct Kick 481 HD
- MLS Direct Kick 482
- MLS Direct Kick 482 HD
- MLS Direct Kick 483
- MLS Direct Kick 483 HD
- MLS Direct Kick 484
- MLS Direct Kick 484 HD
- MLS Direct Kick 485
- MLS Direct Kick 485 HD
- MLS Direct Kick 486
- MLS Direct Kick 486 HD
- MLS Direct Kick 487
- MLS Direct Kick 487 HD
- MLS Direct Kick 488
- MLS Direct Kick 488 HD
- MLS Direct Kick 489
- MLS Direct Kick 489 HD
- MLS Direct Kick 490
- MLS Direct Kick 490 HD
- DTV Cinema 496
- HBO East
- HBO HD East
- HBO 2 East
- HBO2 HD East
- HBO Signature
- HBO Signature HD East
- HBO West
- HBO West HD
- HBO 2 West
- HBO2 West HD
- HBO Comedy HD
- HBO Family East
- HBO Family East HD
- HBO Family West
- HBO Zone HD
- HBO Latino
- HBO Latino HD
- Cinemax
- Cinemax East HD
- Cinemax West
- Cinemax West HD
- MoreMAX
- MoreMAX HD
- ActionMax HD
- 5StarMAX HD
- MovieMAX
- ThrillerMAX HD
- Cinemax Latino HD
- STARZ East
- STARZ East HD
- STARZ West
- STARZ West HD
- STARZ Kids & Family HD
- STARZ Comedy HD
- STARZ Edge
- STARZ Edge HD
- STARZ in Black
- STARZ in Black HD
- STARZ Cinema HD
- STARZ Encore
- STARZ Encore HD
- STARZ Encore West
- STARZ Encore Classic
- STARZ Encore Westerns
- STARZ Encore Suspense
- STARZ Encore Black
- STARZ Encore Action
- STARZ Encore Action HD
- STARZ Encore Family
- Showtime (E)
- Showtime HD East
- Showtime (W)
- Showtime HD West
- SHOWTIME 2
- SHOWTIME 2 HD
- SHOxBET HD
- SHOxBET
- Showtime Extreme
- Showtime Extreme HD
- Showtime Showcase HD
- Showtime Next HD
- Showtime FamilyZone
- The Movie Channel East
- The Movie Channel East HD
- The Movie Channel West
- The Movie Channel Xtra HD
- Flix
- AMC+ HD
- MGM+ HD
- MGM+ Hits East
- MGM+ Marquee HD
- Dog TV
- So Yummy
- Hallmark Drama HD
- Hallmark Movies & Mysteries HD
- HDNET MOVIES
- Sony Movies
- Smithsonian Channel HD
- Crime & Investigation HD
- MTV Live HD
- Shorts TV HD
- Commercial Special Events 574
- Playboy TV Monthly Offer
- Playboy TV HD
- Playboy 2 (577)
- Playboy en Espanol 578
- BraZZers TV Monthly Offer
- Hustler & Playboy TV Offers
- Adult PPV - Ch. 582
- Adult PPV - Ch. 583
- Adult PPV - Ch. 584
- Vivid TV Monthly Offer
- Penthouse TV Monthly Offer
- Hustler Monthly Offer
- Adult All Access Pass Ch. 591
- Adult All Access Pass Ch. 592
- Adult Billboard IPPV Ch 593
- Reality Kings
- Penthouse TV
- Bang U
- BraZZers TV
- Vivid TV
- Hustler TV
- SPORTS MIX HD (600)
- FanDuel TV HD
- Cowboy Channel
- Pursuit Channel
- Sportsman Channel
- Outdoor Channel HD
- Outdoor Channel
- Stadium College Sports Atlantic
- Stadium College Sports Central
- Stadium College Sports Pacific
- BTN
- BTN HD
- SEC Network Alternate
- SEC Network Alternate HD
- SEC Network HD
- SEC Network
- ACC Network
- ACC Network HD
- FOX Sports 2
- FOX Sports 2 HD
- FOX Soccer Plus
- Next Level Sports HD
- NESN
- NESN HD
- NBC Sports Boston Alternate
- NBC Sports Boston Alternate HD
- NBC Sports Boston
- NBC Sports Boston HD
- Yankee Ent. & Sports (YES)
- YES (Alternate)
- YES HD
- YES HD (Alternate)
- Madison Square Garden
- Madison Square Garden HD
- MSG/MSGSN Alternate 635-3 HD
- MSG Sportsnet
- MSG Alternate 635-1
- MSG/MSGSN Alternate 635-2
- MSG/MSGSN Alternate 635-3
- MSG Sportsnet HD
- MSG Alternate HD 635-1
- MSG/MSGSN Alternate 635-2 HD
- SportsNet New York
- SportsNet New York HD
- MASN
- MASN HD
- NBC Sports Washington
- NBC Sports Washington (Alternate)
- NBC Sports Washington HD
- NBC Sports Washington HD (Alternate)
- Bally Sports South Extra 2
- Bally Sports South
- Bally Sports South Extra 4
- Bally Sports South Extra 5
- Bally Sports South Extra 2 HD
- Bally Sports South HD
- Bally Sports South Extra 4 HD
- Bally Sports South Extra 5 HD
- Bally Sports South Extra 3
- Bally Sports South Extra 3 HD
- Bally Sports Southeast Extra 3
- Bally Sports Southeast Extra 3 HD
- Bally Sports Southeast Extra 2
- Bally Sports Southeast Extra 2 HD
- Bally Sports Southeast
- Bally Sports Southeast Extra
- Bally Sports Southeast HD
- Bally Sports Southeast Extra HD
- Bally Sports Sun Extra 2
- Bally Sports Sun Extra 2 HD
- Bally Sports Sun
- Bally Sports Sun Extra
- Bally Sports Sun HD
- Bally Sports Sun Extra HD
- Bally Sports Florida
- Bally Sports Florida Extra
- Bally Sports Florida HD
- Bally Sports Florida Extra 2
- Bally Sports Florida Extra 2 HD
- Bally Sports Florida Extra HD
- Bally Sports Florida Extra 3
- Bally Sports Florida Extra 3 HD
- AT&T SportsNet Pittsburgh (Alternate)
- AT&T SportsNet Pittsburgh HD (Alternate)
- AT&T SportsNet Pittsburgh (Alternate 2)
- AT&T SportsNet Pittsburgh HD (Alternate 2)
- AT&T SportsNet Pittsburgh
- AT&T SportsNet Pittsburgh HD
- Bally Sports Ohio Extra
- Bally Sports Ohio Extra HD
- Bally Sports Ohio
- Bally Sports Cincinnati Extra
- Bally Sports Cincinnati Extra HD
- Bally Sports Cincinnati
- Bally Sports Great Lakes
- Bally Sports Great Lakes HD
- Bally Sports Detroit
- Bally Sports Detroit Extra
- Bally Sports Detroit HD
- Bally Sports Detroit Extra HD
- Bally Sports Detroit Extra 2
- Bally Sports Detroit Extra 2 HD
- Marquee Sports Network
- Marquee Sports Network HD
- NBC Sports Chicago
- NBC Sports Chicago Plus 2
- NBC Sports Chicago Plus 2 HD
- NBC Sports Chicago HD
- Bally Sports North Extra 2
- Bally Sports North Extra 2 HD
- Bally Sports North
- Bally Sports North HD
- Bally Sports Wisconsin Extra
- Bally Sports Wisconsin Extra HD
- Bally Sports Wisconsin HD
- Bally Sports Midwest Extra
- Bally Sports Midwest Extra HD
- Bally Sports Midwest Extra 2
- Bally Sports Midwest Extra 2 HD
- Bally Sports Midwest Extra 3
- Bally Sports Midwest Extra 3 HD
- Bally Sports Midwest
- Bally Sports Kansas City
- Bally Sports Midwest HD
- Bally Sports Kansas City HD
- AT&T SportsNet Southwest (Alternate)
- AT&T SportsNet Southwest HD (Alternate)
- AT&T SportsNet Southwest
- AT&T SportsNet Southwest HD
- Bally Sports Oklahoma HD
- Bally Sports Southwest Extra 4
- Bally Sports Southwest Extra 4 HD
- Bally Sports Southwest Extra 5
- Bally Sports Southwest Extra 5 HD
- Bally Sports Southwest Extra 2
- Bally Sports Southwest Extra 2 HD
- Bally Sports Southwest Extra 3
- Bally Sports Southwest Extra 3 HD
- Bally Sports Southwest
- Bally Sports Southwest HD
- Longhorn Network HD
- Altitude Sports
- Altitude Sports HD
- AT&T SportsNet Rocky Mountain
- AT&T SportsNet Rocky Mountain HD
- AT&T SportsNet Rocky Mountain West HD
- AT&T SportsNet Rocky Mountain West
- Bally Sports Arizona Extra
- Bally Sports Arizona Extra HD
- Bally Sports Arizona
- Bally Sports Arizona HD
- Bally Sports Arizona Extra 2
- Bally Sports Arizona Extra 2 HD
- ROOT Sports Northwest Plus 2
- ROOT SPORTS Northwest
- ROOT SPORTS Northwest Plus
- ROOT Sports Northwest Plus 2 HD
- ROOT SPORTS Northwest HD
- ROOT SPORTS Northwest Plus HD
- Spectrum SportsNet LA
- Spectrum SportsNet LA HD
- Spectrum SportsNet HD
- Spectrum SportsNet
- Spectrum SportsNet (Alternate)
- Spectrum SportsNet HD (Alternate)
- Bally Sports West
- Bally Sports West HD
- Bally Sports West Extra
- Bally Sports West Extra HD
- Bally Sports SoCal Extra
- Bally Sports SoCal Extra HD
- Bally Sports SoCal
- Bally Sports SoCal HD
- Bally Sports San Diego Extra
- Bally Sports San Diego Extra HD
- Bally Sports San Diego Extra 2
- Bally Sports San Diego Extra 2 HD
- Bally Sports San Diego HD
- Bally Sports San Diego
- NBC Sports Bay Area
- NBC Sports Bay Area HD
- NBC Sports Bay Area Plus (Alternate 2)
- NBC Sports Bay Area Plus HD (Alternate 2)
- NBC Sports California (Alternate 2)
- NBC Sports California
- NBC Sports California HD
- NBC Sports California HD (Alternate2)
- NFL Sunday Ticket Game Mix 1 HD
- NFL Sunday Ticket Game Mix 2 HD
- NFL Red Zone 703 HD
- NFL Fantasy Zone 704 HD
- NFL Sunday Ticket 705
- NFL Sunday Ticket 705 HD
- NFL Sunday Ticket 706
- NFL Sunday Ticket 706 HD
- NFL Sunday Ticket 707
- NFL Sunday Ticket 707 HD
- NFL Sunday Ticket 708
- NFL Sunday Ticket 708 HD
- NFL Sunday Ticket 709
- NFL Sunday Ticket 709 HD
- NFL Sunday Ticket 710
- NFL Sunday Ticket 710 HD
- NFL Sunday Ticket 711
- NFL Sunday Ticket 711 HD
- NFL Sunday Ticket 712
- NFL Sunday Ticket 712 HD
- NFL Sunday Ticket 713
- NFL Sunday Ticket 713 HD
- NFL Sunday Ticket 714
- NFL Sunday Ticket 714 HD
- NFL Sunday Ticket 715
- NFL Sunday Ticket 715 HD
- NFL Sunday Ticket 716
- NFL Sunday Ticket 716 HD
- NFL Sunday Ticket 717
- NFL Sunday Ticket 717 HD
- NFL Sunday Ticket 718
- NFL Sunday Ticket 718 HD
- NBA League Pass 747
- NBA League Pass HD 747
- NBA League Pass 748
- NBA League Pass HD 748
- NBA League Pass 749
- NBA League Pass HD 749
- NBA League Pass 750
- Order 2022-23 NBA LEAGUE PASS NOW!
- NBA LP Authorization Slide
- NBA League Pass 750 HD
- NBA League Pass 765
- NBA League Pass 765 HD
- NBA League Pass 766
- NBA League Pass 766 HD
- NBA League Pass 767
- NBA League Pass 767 HD
- NBA League Pass 768
- NBA League Pass 768 HD
- NHL Center Ice 769
- Order 2022-23 NHL CENTER ICE NOW!
- You are all set to watch the 2022-23 season of NHL CENTER ICE
- NHL Center Ice 769 HD
- NHL Center Ice 771
- NHL Center Ice 771 HD
- NHL Center Ice 773
- NHL Center Ice 773 HD
- NHL Center Ice 774
- NHL Center Ice 774 HD
- NHL Center Ice 775
- NHL Center Ice 775 HD
- NHL Center Ice 776
- NHL Center Ice 776 HD
- NHL Center Ice 777
- NHL Center Ice 777 HD
- NHL Center Ice 778
- NHL Center Ice 778 HD
- NHL Center Ice 779
- NHL Center Ice 779 HD
- NHL Center Ice 780
- NHL Center Ice 780 HD
- NHL Center Ice 781
- NHL Center Ice 781 HD
- NHL Center Ice 782
- NHL Center Ice 782 HD
- NHL Center Ice 783
- NHL Center Ice 783 HD
- NHL Center Ice 784
- NHL Center Ice 784 HD
- NHL Center Ice 785
- NHL Center Ice 785 HD
- NHL Center Ice 786
- NHL Center Ice 786 HD
- NHL Center Ice 787
- NHL Center Ice 787 HD
- NHL Center Ice 788
- NHL Center Ice 789
- NHL Center Ice 790
- NHL Center Ice 791
- NHL Center Ice 792
- ESPN College Extra 793 HD
- NHL Center Ice 793
- ESPN College Extra 794 HD
- ESPN College Extra 795 HD
- ESPN College Extra 796 HD
- ESPN College Extra 797 HD
- ESPN College Extra 798 HD
- iHeartRADIO
- Music Choice TV
- Music Choice Big Band
- Music Choice Malt Shop Favorites
- Music Choice '60s Movement
- Music Choice '70s
- Music Choice 70's Ultra
- Music Choice '80s
- Music Choice '80s Ultra
- Music Choice '90s
- Music Choice Singers & Swing
- Music Choice Classic Country
- Music Choice Country Classic Ultra
- Music Choice Country Hits
- Music Choice Americana
- Music Choice Honky Tonk
- Music Choice Bluegrass
- Music Choice Folk
- Music Choice Today's Country
- Music Choice Today's Country Ultra
- Music Choice Sounds of the Seasons
- Music Choice Hit List
- Music Choice Y2K
- Music Choice Max
- Music Choice Love Songs
- Music Choice Contemporary Instrumentals
- Music Choice Pop Hits
- Music Choice Movie Scores
- Music Choice Broadway
- Music Choice Lounge
- Music Choice Hip-Hop And R&B
- Music Choice Contemporary Christian
- Music Choice Gospel
- Music Choice Gospel Hallelujah
- Music Choice '80s Rock
- Music Choice Metal
- Music Choice Indie
- Music Choice Adult Alternative
- Music Choice Classic Rock
- Music Choice Classic Rock Ultra
- Music Choice Alternative
- Music Choice Hard Rock
- Music Choice Coffee Shop Cuts
- Music Choice Rock Hits
- Music Choice Classic Alternative
- Music Choice New Wave
- Music Choice Pop & Country
- Music Choice Rock
- Music Choice R&B Classics
- Music Choice R&B Soul
- Music Choice Funk
- Music Choice Classic Dance
- Music Choice Rap
- Music Choice Mainstream Rap
- Music Choice Throwback Jamz
- Music Choice Soft Rock
- Music Choice Jazz Vocal Hits
- Music Choice Smooth Jazz
- Music Choice Jazz
- Music Choice Easy Listening
- Music Choice Blues
- Music Choice Jazz Vocal Standards
- Music Choice New Age
- Music Choice Soundscapes
- Music Choice Soundscapes Ultra
- Music Choice Classic Christmas
- Music Choice Dance/EDM
- Music Choice Workout
- Music Choice K-Pop
- Music Choice Retro Workout
- Music Choice Reggae
- Music Choice Symphony
- Music Choice Classical Masterpieces
- Music Choice Light Classical
- Music Choice Teen Beats
- Music Choice Kids Only!
- Music Choice Toddler Tunes
- Music Choice Romances
- Music Choice Pop Latino
- Music Choice Tropicales
- Music Choice Musica Urbana
- Music Choice Mexicana
- Music Choice Brazilian Pop
- Music Choice Rock Latino
- Music Choice Latin Jazz
- Music Choice Party Favorites
- Music Choice Taste of Italy
- Music Choice Italian Favorites
- Music Choice Irish Favorites
- Music Choice Nature Sounds
- Music Choice Filipino
- Music Choice Vietnamese
- US Open Mix Channel
- US Open Network Simulcast
- US Open Court Channel 1
- US Open Court Channel 2
- US Open Court Channel 3
- US Open Court Channel 4
- US Open Court Channel 5
- MediaSet Italia (99R)
- Rai Italia
- Rai News 24
- Rai World Premium
- Radio Rai
- SBTN (99R)
- VGN TV
- Tviet (99R)
- Viet Face (99R)
- S Channel
- Vien Thao (99R)
- Vietv (99R)
- Film 24H
- Honvietv
- Little Saigon Radio Channel (99R)
- TV Japan
- Nippon TV HD
- Channel NECO International
- NHK World News 2049
- Phoenix TV (2050)
- Phoenix Info News (99R)
- CCTV4
- CGTN 2053 (99R)
- Charming China 2055
- CTI TV (99R)
- CBO (99R)
- TFC - The Filipino Channel (99R)
- GMA Pinoy TV
- PBO
- Cinema One Global
- OPM TV
- MOR 101.9 (99R)
- DZMM (99R)
- Myx
- Sari Sari Channel
- GMA Life (99R)
- ANC (99R)
- TV5 (99R)
- SBS 2080 (99R)
- SBS HD
- MBC
- KBS America HD
- KBS America
- YTN
- SBS Plus (99R)
- KBS Korea
- EBS (99R)
- MBN (99R)
- Tan
- CTS
- RadioS
- Arirang TV
- GZTV
- 88 TV
- Phoenix Hong Kong
- 88 Films
- I Cable Finance
- I Cable News
- CTI Zhong Tian
- CCTV-4 2113
- Phoenix TV (2115)
- Charming China 2116
- CGTN 2119
- TV Globo (99R)
- SporTV
- RTVI
+ NBC Sports Boston
+ SEC Network
+ NHL Center Ice Mix
+ Nick Jr. HD
+ SBS HD
+ MLB Extra Innings HD 731
+ Paramount+ with SHOWTIME EAST HD
+ Deal Zone
+ New York, NY WJLP METV 33 A3 HD
+ LMN
+ Phoenix Info News (99R)
+ VGN TV
+ 20/20
+ HBO West
+ Scripps News
+ DEALS
+ MovieSphere
+ New York, NY WKOB-LD IND 42 A3 SD
+ SECRET TV (250)
+ MLB Extra Innings 730
+ JBS
+ USA Network
+ Crime + Investigation HD
+ Aqui
+ FanDuel Sports Network South Extra 2 HD
+ Dateline 24/7
+ STARZ Encore Suspense
+ Cinemax West HD
+ CBS Sports Network HD
+ VICE
+ Players TV
+ NBC Sports 1
+ Lionsgate Collection
+ Surf Cinema
+ The Pet Collective
+ FanDuel Sports Network North Extra 2 HD
+ Chicago Sports Network HD
+ FOX Deportes (103A)
+ FanDuel Sports Network Midwest Extra
+ Altitude Sports (Alternate)
+ truTV HD
+ Univision telenovelas
+ MLB Extra Innings HD 741
+ Paramount+ with SHOWTIME WEST
+ NBA League Pass 769
+ TCT Network
+ College Mix 205-1
+ NBC Sports California HD
+ Justice Central HD
+ Discovery en Espanol
+ Portlandia
+ NBC Sports California Plus
+ Investigation Discovery HD
+ MLB Extra Innings 729
+ NFL RedZone HD
+ NBA League Pass 756
+ LooLoo Kids
+ ESPN+ 4
+ Drool
+ FanDuel Sports Network South Extra
+ Tennis Channel 2
+ MLB Extra Innings HD 733
+ STARZ East
+ Oxygen True Crime HD
+ STARZ East HD
+ Cinemax West
+ SALE Network
+ SportsNet Pittsburgh (Alternate 2)
+ Cold Case Files
+ Cartoon Network West
+ ESPN
+ NHL Center Ice 783 HD
+ NTN 24 (103A)
+ MLB Extra Innings HD 736
+ Investigation Discovery
+ FanDuel Sports Network Detroit
+ ESPN Deportes HD
+ NBA League Pass 751 HD
+ Shop LC HD
+ MSG Sportsnet HD
+ COOL Network 78
+ Chicago Sports Network Plus
+ POP HD
+ America's Funniest Home Videos
+ MLS on Apple TV 10
+ The Walking Dead Universe
+ Space City Home Network Alternate
+ ESPN+ 1
+ The Weather Channel
+ MLS on Apple TV 13
+ MLB Colorado Rockies SD
+ Interactive Advertising Channel HD (98)
+ FanDuel Sports Network Southwest Extra 4 HD
+ Lionsgate Collection (561)
+ FanDuel Sports Network Cincinnati Extra HD
+ FM HD
+ INSP HD
+ NRB
+ SEC Network HD
+ Earth Touch
+ TNT HD
+ NBA League Pass 760
+ SALE Network.
+ ESPN+ 6
+ MagellanTV Wildest
+ Lionsgate Collection
+ FanDuel Sports Network Southeast HD
+ PokerGo
+ AT HOME with family handyman
+ STARZ Encore West
+ FOX Weather
+ Bravo
+ MLB Extra Innings 731
+ NHL Center Ice 777
+ Tan
+ Universo (103A)
+ BET West HD
+ ACC Network HD
+ AMC
+ Comedy Central
+ NHL Center Ice 781
+ Recipe TV
+ Rai News 24
+ BYUtv
+ NHL Center Ice 778
+ Ebony TV
+ Freeform
+ Discovery HD
+ QVC HD (317)
+ NBA League Pass 759 HD
+ MLB San Diego Padres HD
+ MTV2
+ Marquee Sports Network HD.
+ MBN (99R)
+ CW Plus
+ FanDuel Sports Network Southeast Extra HD
+ HBO East
+ HBO HD East
+ NBA League Pass 765
+ ESPN2
+ FanDuel Sports Network Florida Extra 3
+ New York, NY WLIW PBS 21 SD
+ NHL Center Ice 787 HD
+ Fail Army
+ NHL Center Ice 779 HD
+ Discovery Familia (103A)
+ BEST Channel 268
+ MLB San Diego Padres SD
+ Love After Lockup
+ Science
+ NHL Center Ice 774 HD
+ Curiosity Now
+ Daystar Espanol
+ HBO Drama HD
+ MBC
+ FanDuel Sports Network Florida Extra HD
+ FanDuel Sports Network Ohio
+ NHL Center Ice 773 HD
+ MLB Extra Innings 723
+ NBA TV
+ NBA League Pass 763 HD
+ NHL Center Ice 770 HD
+ FanDuel Sports Network Ohio Extra
+ NESN+ HD (Alternate)
+ NBA League Pass 761
+ TFC - The Filipino Channel (99R)
+ New York, NY WNET PBS 13 SD
+ HBO Hits West
+ MTV2 HD
+ Chicago Sports Network
+ FanDuel Sports Network Detroit HD
+ Cinemáx HD
+ Million Dollar Listing Vault
+ Free Speech TV
+ Comedy Central West HD
+ Dog Whisperer
+ NBA League Pass 752
+ FanDuel Sports Network Oklahoma
+ FanDuel Sports Network Midwest Extra 2
+ TCM HD
+ History & Warfare
+ MTV HD
+ CSPAN
+ Comedy TV HD
+ FanDuel Sports Network Southwest Extra 2 HD
+ NBA League Pass 748 HD
+ I Cable Finance
+ FanDuel Sports Network Florida Extra 2 HD
+ FYI HD
+ Showtime FamilyZone HD
+ TBS
+ MEGA TV (103A)
+ HBO West HD
+ Waypoint TV
+ NHL Center Ice 788 HD
+ MLB Extra Innings 727
+ Radio Rai
+ MSG/MSGSN Alternate 635-3
+ STARZ Encore Action
+ NBA League Pass 753
+ SECRET TV
+ Red Bull TV
+ FanDuel Sports Network Ohio
+ MALL
+ HITN (103A)
+ STARZ in Black
+ Animal Planet
+ Rai Italia
+ SportsNet Pittsburgh Alternate
+ NHL Center Ice 782 HD
+ Crime Scenes
+ Altitude Sports HD
+ TyC Sports
+ NBA League Pass 764 HD
+ NBC Sports California (Alternate 2)
+ TC Internacional
+ Great American Family HD
+ SYFY
+ LMN HD
+ A3 New York 05 WNYW Fox
+ MLB Extra Innings HD 726
+ SportsNet Pittsburgh+ HD (Alternate)
+ NHL Center Ice 786 HD
+ NHL Center Ice 770
+ NHL Center Ice 791 HD
+ ESPNews
+ Cinemax
+ CNNi
+ Tastemade Travel
+ i24 News
+ Are We There Yet
+ NHL Center Ice 774
+ Pursuit Channel
+ Viet Face (99R)
+ MLB Extra Innings 736
+ KTTV (Los Angeles) FOX West
+ Flix
+ FanDuel Sports Network Kansas City HD
+ TV One HD
+ Spectrum SportsNet HD
+ NFL Network
+ HLN HD
+ FanDuel Sports Network Indiana HD
+ Spectrum SportsNet
+ FanDuel Sports Network Oklahoma HD
+ History HD
+ Estrella News
+ Food Network
+ Disney Channel HD
+ FanDuel Sports Network Detroit Extra HD
+ New York, NY WRNN IND 62 A3 HD
+ SHOxBET
+ Cowboy Channel
+ Declassified
+ ACC Digital Network
+ Today All Day
+ WNBA on ION 3
+ MGM+
+ Revolt HD
+ Movie Favorites by Lifetime
+ HBO Latino
+ BTN HD
+ NBA League Pass HD Mix
+ Nick Jr.
+ MLB Extra Innings 737
+ Nat Geo WILD
+ MSG ALT-2
+ Phoenix TV (2050)
+ WNBC (New York) NBC East
+ HBO Movies HD
+ ShortsTV HD
+ New York, NY WPIX CW 11 A3 HD
+ MLB Extra Innings HD 740
+ MLB Extra Innings HD 725
+ Bloomberg TV HD
+ Cooking Channel HD
+ Vme
+ A3 New York 07 WABC ABC
+ Oxygen True Crime Archives
+ New York, NY WFUT UMas 68 SD
+ True CRMZ
+ FanDuel Sports Network Southwest Extra 5 HD
+ Fox Sports
+ MLB Extra Innings 741
+ INSP
+ New York, NY WEDW PBS 49 A3 HD
+ Game Show Network HD
+ FanDuel Sports Network Southeast Extra
+ NBA League Pass 769 HD
+ NBC Sports California
+ CUT
+ Logo
+ NHL Center Ice 793 HD
+ The Movie Channel Xtra HD
+ Confess by Nosey
+ New York, NY WNJN PBS 50 A3 HD
+ STARZ West
+ BEST Channel 98-7
+ New York, NY WZME IND 43 SD
+ Nickelodeon East HD
+ SportsNet Pittsburgh HD
+ ESPN+ 2
+ NBC Sports Boston HD
+ RTVI
+ Love Nature
+ FanDuel Sports Network SoCal
+ MLB Strike Zone HD
+ Tribeca Festival+
+ News Mix
+ America's Got Talent
+ NBA League Pass 746
+ MLB Colorado Rockies HD
+ FanDuel Sports Network Sun Extra HD
+ Antena 3
+ Jamie Oliver
+ NHL Center Ice 783
+ TV Chile (103A)
+ MLB Extra Innings 735
+ SportsGrid
+ FanDuel TV HD
+ MLB Extra Innings 724
+ TV Globo
+ News Mix 71
+ CGTN 2119
+ Discovery Turbo HD
+ Freeform HD
+ RFD HD TV
+ FanDuel Sports Network North
+ Dance Moms by Lifetime
+ Sportsman Channel
+ Alien Nation by DUST
+ TLC
+ BBC News
+ IDEA Channel 270
+ MLB Extra Innings 722
+ MTV Live HD
+ CRAVE
+ Nicktoons
+ NBA League Pass 766
+ AMC+ HD
+ College Mix 600-1
+ STARZ Encore Action HD
+ Willow 2
+ FanDuel Sports Network Southwest Extra HD
+ YES HD (Alternate)
+ INWONDER
+ Save 222 (Infomercial)
+ FOX Deportes HD
+ Duck Dynasty
+ Cinemax Hits HD
+ Tiny House Nation
+ PBS Kids
+ FanDuel Sports Network Indiana
+ History
+ MLB Strike Zone
+ National Geographic
+ Sari Sari Channel
+ Jewish Life TV
+ Altitude Sports
+ FanDuel Sports Network Midwest HD
+ FanDuel Sports Network Florida
+ MLB Extra Innings HD 728
+ Joel Osteen
+ HBO Hits HD East
+ Yankees Entertainment & Sports Network
+ CINE4K 107
+ FanDuel Sports Network Detroit
+ The Weather Channel HD
+ Charming China 2055
+ I (Almost) Got Away With It
+ New York, NY WKOB-LD IND 42 SD
+ ReelzChannel
+ NHL Center Ice 780
+ A&E HD
+ Love Kills
+ I Cable News
+ Shepherd's Chapel
+ True Crime Now
+ Somos Novelas
+ Nickelodeon West
+ XTRA (99)
+ NHL Center Ice 773
+ TUDN
+ NHL Center Ice 771 HD
+ MLS on Apple TV 03
+ NHL Center Ice 778 HD
+ FanDuel Sports Network Southwest Extra
+ FanDuel Sports Network Southwest Extra 3
+ Cine Mexicano
+ FanDuel Sports Network Wisconsin
+ Living Faith Network
+ NBC Sports 3
+ FanDuel Sports Network Southwest HD
+ NHL Center Ice 771
+ Bizarre Foods with Andrew Zimmern
+ Tr3S (103A)
+ NHL Center Ice 790 HD
+ FanDuel Sports Network South Extra 4
+ Yu-Gi-Oh!
+ KBS America HD
+ MovieSphere Gold
+ MeatEater
+ ESPNU HD
+ NBC Sports California (Alternate)
+ The First
+ Telemundo East
+ MLB Extra Innings HD 724
+ ANC (99R)
+ MS Now
+ Fox Business Network
+ NBA League Pass 745 HD
+ NHL Center Ice 772 HD
+ Travel Channel HD
+ BET HD
+ Willow Sports
+ Rai World Premium
+ MTV
+ Texas Rangers
+ PBSNET
+ STARZ Encore
+ WNBA on ION 1
+ Cooking Channel
+ TUDN HD
+ Univision East HD
+ SHOxBET HD
+ Science HD
+ CNBC
+ Fuse HD
+ NBA League Pass 764
+ Little Saigon Radio Channel (99R)
+ KTLA CW West
+ STARZ Edge
+ FanDuel Sports Network Southwest Extra 5
+ FOROtv
+ FanDuel Sports Network Florida
+ Lifetime
+ VICTORY
+ MLS on Apple TV 15
+ BET
+ Nosey
+ HSN2
+ ION Television East HD
+ NBA League Pass 751
+ Galavision
+ Dove TV
+ Golf Channel
+ Court TV
+ EBS (99R)
+ USA Network HD
+ NEW TV (319)
+ SHOWTIME 2 HD
+ truTV
+ HBO Hits East
+ Sports Illustrated
+ De Pelicula (103A)
+ MLB Extra Innings 732
+ New York, NY WNET PBS 13 A3 HD
+ America's Value Channel (98-4)
+ Hogar de HGTV
+ Texas Rangers HD
+ XPLOR
+ Scientology Network
+ QVC HD
+ FanDuel Sports Network South Extra 3 HD
+ Interactive Advertising Channel HD 111
+ Videorola
+ FanDuel Sports Network SoCal
+ New York, NY WPXN ION 31 A3 HD
+ Seasonal Sports Offer Channel
+ Discovery Family Channel HD
+ QVC (70)
+ NHL Center Ice 780 HD
+ Anger Management
+ FOX Sports 1
+ Showtime Showcase HD
+ Rig TV
+ MSG Alternate 635-1
+ World Harvest Television
+ MSG ALT-1
+ Space City Home Network
+ NBA League Pass 766 HD
+ KNBC (Los Angeles) NBC West
+ CNN HD
+ Pop TV
+ NBA FAST Channel
+ Car Chase Channel
+ OWN West
+ New York, NY WNYE ETV 25 SD
+ S Channel
+ SPORTS MIX HD (600)
+ MLB Extra Innings 742
+ Cinemax East HD
+ So Yummy
+ MSG/MSGSN Alternate 635-2 HD
+ How To
+ Destination America
+ Big Ten Network Overflow 4
+ New York, NY WZME IND 43 A3 HD
+ Caracol TV
+ Starz Encore en Espanol (103A)
+ WNYW (New York) FOX East
+ GoTraveler
+ FanDuel Sports Network Midwest
+ HBO Comedy HD
+ GMA Life (99R)
+ MLB Arizona Diamondbacks HD
+ NBA League Pass 747 HD
+ NBC Sports Bay Area Plus HD Alternate
+ NHL Center Ice 779
+ TeleCentro
+ SBS 2080 (99R)
+ Space City Home Network Alternate
+ FOX News Channel
+ Travel Channel
+ MGM+ MARQUEE
+ Women's Sports Network
+ RVTV
+ VALU (91)
+ VISION TV Channel 89
+ NBA League Pass 755
+ MLS on Apple TV 11
+ NHL Center Ice 775 HD
+ ESPN Deportes (103A)
+ UPTV
+ Buzzr
+ FanDuel Sports Network West
+ QVC2 (79)
+ Family Entertainment Television
+ NBA League Pass 762 HD
+ NBA League Pass 768
+ The Masked Singer
+ FanDuel Sports Network South
+ Enlace
+ Magnolia Network
+ New York, NY WMBC IND 63 A3 HD
+ SNL Vault
+ ESPN8: The Ocho
+ E!
+ New York, NY WJLP METV 33 SD
+ E! Keeping Up
+ ESNE PIO
+ XTRA Network
+ Chicago Sports Network Plus 2 HD
+ WE tv
+ Animal Planet HD
+ Monumental Sports Network
+ NHL Center Ice 787
+ NHL Center Ice 786
+ MSG Sportsnet
+ IMPACT TV
+ HBO Drama
+ Vien Thao (99R)
+ Modern Marvels
+ Sony Movies
+ Nickelodeon East
+ NHL Center Ice 775
+ Pasiones
+ FanDuel Sports Network Southwest Extra 3 HD
+ Chicago Sports Network Plus HD
+ NBC Sports Bay Area Plus (Alternate 2)
+ Comedy Central HD
+ FanDuel Sports Network North Extra HD
+ Discovery Life
+ Nuestra Tele
+ NewsNation HD
+ NHL Kraken HD
+ NESN PLUS
+ Daystar HD
+ Let's Make a Deal
+ Heroes & Icons
+ NBA League Pass 748
+ The Price is Right: Drew Carey
+ Always Funny
+ Pureflix TV
+ MLB Extra Innings HD 742
+ NHL Network Alternate
+ Ecuavisa Internacional (103A)
+ NHL Network
+ Horror by Alter
+ MLB Extra Innings HD 727
+ Sweet Escapes
+ ESPN+ 7
+ FYI
+ New York, NY WMBC IND 63 SD
+ NBA TV HD
+ NHL Center Ice 788
+ NBC News Now
+ ZooMoo
+ Ax Men
+ In Touch +
+ GolfPass
+ New York, NY WNJU TMO 47 SD
+ WNYW (New York) FOX HD East
+ IDEA Channel
+ Big Ten Network Overflow 3
+ Hola TV
+ Golf Channel HD
+ FanDuel Sports Network South Extra 3
+ New York, NY WLNY IND 55 A3 HD
+ Magnolia Network HD
+ AXS TV HD
+ Get IT Infomercial (98-5)
+ God TV
+ MLB Extra Innings HD 734
+ KTTV (Los Angeles) FOX HD West
+ FOX Soul
+ New York WNYW 5 Fox
+ LifeS
+ STARZ Cinema HD
+ FanDuel Sports Network Cincinnati Extra
+ MLB Cleveland Guardians
+ MASN HD
+ BounceTV
+ Bravo HD
+ Centroamerica TV (103A)
+ TBS HD
+ Nat Geo Wild HD
+ DZMM (99R)
+ NHL Center Ice 793
+ NBA League Pass 754 HD
+ NBC Sports 2
+ Honvietv
+ ASPIRE (HD)
+ Spectrum SportsNet LA HD
+ NHL Center Ice 791
+ Discovery Family Channel
+ MLB Extra Innings 728
+ TBS West HD
+ SBS Plus (99R)
+ CINE4K PPV
+ A3 New York 02 WCBS CBS
+ WINS
+ Cosmic Frontiers
+ STARZ Edge HD
+ MEGA TV HD
+ Cinema One Global
+ Discovery
+ Total Crime
+ XPLOR (262-1)
+ NBA League Pass 763
+ WNBA on ION 2
+ Altitude Sports Alternate
+ MLB Extra Innings 744
+ The Movie Channel East HD
+ Showtime Next HD
+ MLB Extra Innings 721
+ COOL Network 203
+ Destination America HD
+ Military Heroes
+ TV5 (99R)
+ MS Now HD
+ The Movie Channel West
+ NBC Sports Bay Area Plus (Alternate)
+ MLB Extra Innings HD 744
+ NHL Center Ice 790
+ Atreseries
+ NHK World News
+ MLB Extra Innings HD 732
+ Paramount Network HD
+ NBA League Pass 755 HD
+ SUR Peru (103A)
+ Mythbusters
+ NHK World News 2049
+ KBS America
+ FanDuel Sports Network Wisconsin Extra
+ MLS on Apple TV 14
+ NHL Center Ice 777 HD
+ Film 24H
+ STARZ Encore Classic
+ VePlus
+ NHL Kraken
+ SportsNet New York
+ Myx
+ NHL Center Ice 781 HD
+ Mysterious Worlds
+ Tastemade Home
+ NHL Center Ice 776 HD
+ OPM TV
+ MediaSet Italia (99R)
+ Crime 360
+ MLB Extra Innings 733
+ Galavision HD
+ FanDuel Sports Network South Extra 2
+ NHL Network HD
+ MLB Extra Innings HD 722
+ KCBS (Los Angeles) CBS West
+ FanDuel Sports Network South
+ WIRED2fish TV
+ Cartoon Network
+ FanDuel Sports Network Florida Extra
+ MLS on Apple TV 05
+ MLS on Apple TV 02
+ Pursuit UP
+ Go4IT
+ FanDuel Sports Network North Extra 2
+ Disney Junior
+ MLS on Apple TV 04
+ Univision East
+ MeTV
+ Cinelatino
+ FanDuel Sports Network Southwest
+ NBC Sports California Plus 2
+ Ovation HD
+ Mid Atlantic Sports Network Alt.
+ MLB Extra Innings HD 738
+ FanDuel Sports Network Detroit Extra 2
+ MSG ALT-3
+ Space City Home Network HD
+ FanDuel Sports Network SoCal Extra HD
+ Cheddar News
+ FanDuel Sports Network SoCal HD
+ NBA League Pass 753 HD
+ WNBC (New York) NBC HD East
+ IFC HD
+ Christian Television Net
+ VH1 HD
+ Jewelry Television (72)
+ El Rey Rebel
+ GEB America
+ RACER Network
+ FanDuel Sports Network Midwest
+ VICE HD
+ Monumental Sports Network HD
+ CRAVE (92)
+ NHL Center Ice 772
+ OWN
+ NBC Sports Boston Alternate
+ STARZ Encore HD
+ CCTV-4 2113
+ FanDuel Sports Network Ohio Extra HD
+ Arirang TV
+ Paramount+ with SHOWTIME EAST
+ History en Espanol
+ MGM+ HITS
+ IFC
+ FanDuel Sports Network South Extra 5 HD
+ Outdoor Channel
+ NHL Center Ice 792 HD
+ Charming China 2116
+ NBA League Pass 757 HD
+ American Heroes Channel
+ iHeartRADIO
+ Chicago Sports Network Plus
+ Yankee Ent. & Sports (YES)
+ CGTN 2053 (99R)
+ New York, NY WXTV UNI 41 SD
+ CNN en Espanol (103A)
+ NBA Mavs
+ ReelzChannel HD
+ Cinemax Hits
+ BET Her
+ New York, NY WNYE ETV 25 A3 HD
+ NHL Center Ice 785 HD
+ EarthX
+ MLS on Apple TV 06
+ TV Land HD
+ SundanceTV
+ WOW TV 98-1
+ FanDuel Sports Network South HD
+ FanDuel Sports Network Southwest Extra 2
+ Home Shopping Network HD
+ Paramount+ with SHOWTIME WEST HD
+ NBA League Pass 746 HD
+ NBC Sports Boston Alternate HD
+ STARZ Kids & Family HD
+ MLB Extra Innings 740
+ FanDuel Sports Network Kansas City
+ AccuWeather HD
+ NBA Blazers HD
+ Beach Day
+ Vietv (99R)
+ Showtime Extreme HD
+ NBA League Pass 761 HD
+ NESN HD
+ Sony Cine
+ CTI TV (99R)
+ FanDuel Sports Network Florida HD
+ De Pelicula Clasico (103A)
+ NBA League Pass 759
+ MLB Extra Innings HD 735
+ STARZ West HD
+ New York, NY WRNN IND 62 SD
+ Spectrum SportsNet Alternate
+ All Reality WeTV
+ WCBS (New York) CBS East
+ Multimedios
+ Three Stooges
+ Supermarket Sweep
+ The MLB Channel
+ Monumental Sports Network HD (Alternate)
+ The Movie Channel East
+ Altitude Sports HD (Alternate)
+ NHL Network Alternate HD
+ MLB Extra Innings HD 730
+ FanDuel Sports Network Cincinnati
+ FanDuel Sports Network Sun HD
+ Canal 22 Internacional
+ New York, NY WWOR MNT 9 SD
+ Madison Square Garden HD
+ ABC Localish
+ NewsNation
+ FanDuel Sports Network Cincinnati HD
+ A3 New York 04 WNBC NBC
+ PBO
+ ESPN+ 3
+ TCM
+ FX HD
+ Hallmark
+ Get It Infomercial
+ All Women's Sports
+ MLB Extra Innings 734
+ FanDuel Sports Network Southeast Extra 2
+ NBC Sports Bay Area HD
+ WOW TV 234
+ Ovation
+ TNA
+ KCBS (Los Angeles) CBS HD West
+ New York, NY WLNY IND 55 SD
+ UniMas SD West (103A)
+ Bandamax (103A)
+ Ice Road Truckers
+ NHL Center Ice 785
+ GMA Pinoy TV
+ Disney XD HD
+ Smithsonian Channel HD
+ Mid Atlantic Sports Net. HD Alt.
+ Showtime Extreme
+ NBC Sports Now
+ NFL Network HD
+ VALU
+ The Price is Right: The Barker Era
+ QVC2 (76)
+ SportsNet Pittsburgh
+ MOR 101.9 (99R)
+ QVC HD (70)
+ Univision West (103A)
+ FanDuel Sports Network Midwest Extra HD
+ MLB Minnesota Twins HD
+ NBA League Pass 752 HD
+ Universo HD
+ Phoenix TV (2115)
+ INSP Western Bound
+ NESN
+ E! HD
+ FanDuel Sports Network Southeast
+ Home Shopping Network
+ SportsNet New York HD
+ FanDuel Sports Network Southeast
+ Food Network HD
+ NBC Sports California HD (Alternate)
+ HGTV HD
+ SEEK
+ Disney Junior HD
+ Cartoon Network HD
+ AMC HD
+ NHL Center Ice 789 HD
+ KBS Korea
+ Telemundo West (103A)
+ ABC News Live
+ RadioS
+ TV Land
+ CBS Sports Network
+ NHL Center Ice 789
+ HDNET MOVIES
+ SHOWTIME 2
+ NBA League Pass 745
+ NBA League Pass 767
+ Blossom
+ New York, NY WNJN PBS 50 SD
+ NEW TV (77)
+ FanDuel Sports Network Southwest Extra 4
+ MLB Extra Innings 726
+ New York, NY WFUT UMas 68 A3 HD
+ American Heroes HD
+ Big 12
+ Next Level Sports HD
+ Cine Estelar
+ MLB Extra Innings HD 721
+ Madison Square Garden
+ TLC HD
+ beIN SPORTS XTRA
+ FanDuel Sports Network West HD
+ Bob Ross Channel
+ Cinemax Action HD
+ Danger TV
+ FOX Sports 2
+ MLB Minnesota Twins
+ HerSphere
+ NHL Center Ice 784 HD
+ FanDuel Sports Network Florida Extra 2
+ CMT HD
+ WCBS (New York) CBS HD East
+ CNBC HD
+ Cinemax Classics HD
+ STARZ Comedy HD
+ MSG/MSGSN Alternate 635-3 HD
+ SportsNet Pittsburgh (Alternate)
+ MLB Network HD
+ Willow HD
+ EWTN
+ FanDuel Sports Network South Extra 4 HD
+ STARZ Encore Westerns
+ Hallmark Mystery
+ Big Ten Network Overflow 2
+ FanDuel Sports Network Detroit Extra
+ MLB Extra Innings 738
+ CTS
+ WABC (New York) ABC East
+ Disney XD
+ YES Network
+ theGrio
+ Comedy Dynamics
+ FanDuel Sports Network Southeast Extra 3 HD
+ Real Housewives Vault
+ FOX Sports 2 HD
+ COZI TV
+ MeTV Toons
+ ESPNews HD
+ Hope Channel
+ FanDuel Sports Network West Extra HD
+ FanDuel Sports Network North
+ NBA League Pass 758 HD
+ FanDuel Sports Network Southeast Extra 2 HD
+ HBO Hits West HD
+ INFO Temp 7
+ MLB Network
+ Tastemade
+ NBA League Pass 760 HD
+ TNT
+ MLS on Apple TV 12
+ MSG/MSGSN Alternate 635-2
+ Hallmark Channel HD
+ Living With Evil
+ National Geographic HD
+ CNBC World
+ NBA Mavs HD
+ FanDuel Sports Network Florida Extra 3 HD
+ FanDuel Sports Network Sun Extra 2 HD
+ VH1
+ YTN
+ DAZN Ringside
+ FanDuel Sports Network Wisconsin
+ Hallmark Family
+ A&E
+ NHL Center Ice 776
+ FanDuel Sports Network Sun Extra 2
+ MLB Extra Innings HD 739
+ New York, NY WWOR MNT 9 A3 HD
+ QVC3
+ FanDuel Sports Network Midwest Extra 2 HD
+ MLS on Apple TV 08
+ UnXplained Zone
+ Atres Cine
+ Stories by AMC
+ Space City Home Network HD Alternate
+ Tennis Channel
+ Monumental Sports Network (Alternate)
+ The WORD Network
+ Fuel TV
+ NBC Sports Bay Area Plus HD (Alternate 2)
+ Ryz Sports
+ DraftKings
+ QVC2
+ Lifetime HD
+ Nippon TV HD
+ ESPN HD
+ New York, NY WLIW PBS 21 A3 HD
+ America's Test Kitchen
+ Documentary+
+ Trinity Broadcast Network HD
+ Disney Channel (East)
+ WAPA America (103A)
+ Spectrum SportsNet HD (Alternate)
+ Great American Romcoms
+ DIRECTV 4K Live 2
+ Fox Business Network HD
+ FanDuel Sports Network Southeast
+ ACC Network
+ Racing America
+ New York WNBC 4 NBC
+ EWTN Espanol
+ KABC (Los Angeles) ABC West
+ Stadium Stream
+ FOX Soccer Plus HD
+ ESPNU
+ Tennis Channel HD
+ WE tv HD
+ FXX HD
+ FX
+ Monumental Sports Network Alternate
+ The Jim Rome Show
+ Celebrity Shopping TV
+ YES HD
+ NBC Sports Bay Area
+ Pickleball TV
+ Start TV
+ TeenNick
+ MTV Classic
+ MLB Extra Innings HD 737
+ FanDuel Sports Network Ohio HD
+ DIRECTV 4K Live
+ Family Movie Classics
+ FX Movie Channel HD
+ Game Show Network
+ GZTV
+ MLS on Apple TV 09
+ CTI Zhong Tian
+ HLN
+ STARZ in Black HD
+ Speedvision
+ NBA League Pass 768 HD
+ Cleo TV
+ NBC Sports California HD (Alternate2)
+ Positiv
+ UniMas West HD
+ YES (Alternate)
+ FanDuel Sports Network Sun
+ FanDuel Sports Network West
+ FX Movie
+ BabyFirst
+ Cine Nostalgia
+ CMT
+ Spectrum SportsNet LA
+ America's Value Channel
+ BTN
+ Son Life Broadcasting HD
+ Newsmax TV HD
+ MLB Extra Innings HD 723
+ Marquee Sports Network
+ NHL Center Ice 792
+ FOX Soccer Plus
+ SportsNet Pittsburgh HD (Alternate 2)
+ NBA League Pass 765 HD
+ New York, NY WXTV UNI 41 A3 HD
+ CBO (99R)
+ Bravo Vault
+ MLB Extra Innings HD 743
+ Tribeca Festival+
+ 88 Films
+ BBC America
+ Billiard TV
+ NBA Blazers
+ SPORTS MIX HD (205)
+ Torque by History
+ Seasonal Sport Offer Channel
+ New York WABC 7 ABC
+ NHL Center Ice 784
+ BabyTV
+ New York, NY WPXN ION 31 SD
+ ESPN+ 5
+ NBA League Pass 762
+ FOX News Channel HD
+ Jewelry Television
+ GEM Shopping Network
+ NBA League Pass 767 HD
+ Disney Channel (West)
+ Bloomberg TV
+ MTV West HD
+ TVE (103A)
+ New York WCBS 2 CBS
+ New York, NY WPIX CW 11 SD
+ New York, NY WNJU TMO 47 A3 HD
+ GRIT
+ Fight Network
+ Gusto TV
+ FanDuel Sports Network South Extra HD
+ NBC Sports Bay Area Plus HD (Alternate)
+ Say Yes To The Dress
+ SEEK (97)
+ MLB Extra Innings 725
+ WABC (New York) ABC HD East
+ STARZ Encore Black
+ MSG Alternate HD 635-1
+ Oxygen True Crime
+ CNN
+ FXX
+ Marquee Sports Network.
+ Acorn TV Mysteries
+ FanDuel Sports Network North HD
+ NHL Tampa Bay Lightning
+ MLB Extra Innings 739
+ Boomerang
+ HBO Latino HD
+ NESN+ (Alternate)
+ Nat Geo Mundo
+ SBTN
+ PowerNation
+ CCTV4
+ FanDuel Sports Network Wisconsin Extra HD
+ Yahoo Finance
+ QVC Channel 317
+ FanDuel Sports Network SoCal Extra
+ MLB Cleveland Guardians HD
+ QVC
+ The Design Network
+ KABC (Los Angeles) ABC HD West
+ MASN
+ Yes Network HD
+ Paramount Network
+ Estrella TV
+ Newsmax TV
+ Shop LC HD 75
+ Outdoor Channel HD
+ FanDuel Sports Network Midwest Extra 3
+ NHL Center Ice 782
+ FOX Sports 1 HD
+ Great American Family
+ Commercial Special Events 574
+ FanDuel Sports Network North Extra
+ Cinema Dinamita
+ Celebrity Shopping TV 95
+ Telefe
+ BBC America HD
+ INFAST
+ Nuestra Vision
+ VISION TV Channel 262
+ SYFYHD
+ TBN Inspire
+ Family Feud (Steve Harvey)
+ Home Shopping Network 70-1 (HD)
+ FanDuel Sports Network Sun
+ FanDuel Sports Network Detroit Extra 2 HD
+ FanDuel Sports Network Sun Extra
+ STARZ Encore Family
+ NBA League Pass 747
+ KNBC (Los Angeles) NBC HD West
+ SundanceTV HD
+ 88 TV
+ Swerve Combat
+ HGTV
+ OWN HD
+ GREAT
+ MLS on Apple TV 07
+ ESPN2 HD
+ MLB Extra Innings HD 729
+ FanDuel Sports Network West Extra
+ FanDuel Sports Network Wisconsin HD
+ MLS on Apple TV 01
+ FanDuel Sports Network Southeast Extra 3
+ NHL Tampa Bay Lightning SD
+ NBA League Pass 756 HD
+ TNT West HD
+ Ghosts are Real
+ Tviet (99R)
+ MLB Extra Innings 743
+ 50 Cent Action Channel
+ Dog TV
+ Home Shopping Network 70-1
+ MASN2
+ Willow 2
+ Canal Once
+ CSPAN 2
+ FanDuel Sports Network South Extra 5
+ Spectrum SportsNet (Alternate)
+ Save
+ Meganoticias
diff --git a/sites/directv.com/directv.com.config.js b/sites/directv.com/directv.com.config.js
index 5d8c924e3..9bfd9ded4 100644
--- a/sites/directv.com/directv.com.config.js
+++ b/sites/directv.com/directv.com.config.js
@@ -1,41 +1,84 @@
-const cheerio = require('cheerio')
const axios = require('axios')
const dayjs = require('dayjs')
const utc = require('dayjs/plugin/utc')
dayjs.extend(utc)
+let token = null
+async function fetchToken() {
+ if (token) return token
+ try {
+ token = await axios
+ .post('https://api.cld.dtvce.com/authn-tokengo/v3/v2/tokens?client_id=DTVE_DFW_WEB_Chrome_G', null, {
+ headers: {
+ 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36',
+ 'cache-control': 'no-cache',
+ 'origin': 'https://www.directv.com',
+ 'pragma': 'no-cache',
+ 'priority': 'u=1, i',
+ 'referer': 'https://www.directv.com/',
+ 'sec-ch-ua': '"Chromium";v="146", "Not-A.Brand";v="24", "Brave";v="146"',
+ 'sec-ch-ua-mobile': '?0',
+ 'sec-ch-ua-platform': '"Windows"',
+ 'sec-fetch-dest': 'empty',
+ 'sec-fetch-mode': 'cors',
+ 'sec-fetch-site': 'cross-site',
+ 'sec-gpc': '1'
+ }
+ })
+ .then(r => r.data)
+ .then(d => d.access_token)
+ return token
+ } catch (error) {
+ console.error('Error fetching token (potential geo-block or API issue):', error)
+ return null
+ }
+}
+
module.exports = {
site: 'directv.com',
days: 2,
request: {
- cache: {
- ttl: 60 * 60 * 1000 // 1 hour
- },
- headers: {
- 'Accept-Language': 'en-US,en;q=0.5',
- Connection: 'keep-alive'
+ cache: {
+ ttl: 60 * 60 * 1000 // 1 hour
+ },
+ async headers() {
+ await fetchToken()
+ return {
+ 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36',
+ Authorization: `Bearer ${token}`,
+ 'cache-control': 'no-cache',
+ 'origin': 'https://www.directv.com',
+ 'pragma': 'no-cache',
+ 'priority': 'u=1, i',
+ 'referer': 'https://www.directv.com/',
+ 'sec-ch-ua': '"Chromium";v="146", "Not-A.Brand";v="24", "Brave";v="146"',
+ 'sec-ch-ua-mobile': '?0',
+ 'sec-ch-ua-platform': '"Windows"',
+ 'sec-fetch-dest': 'empty',
+ 'sec-fetch-mode': 'cors',
+ 'sec-fetch-site': 'cross-site',
+ 'sec-gpc': '1'
+ }
}
},
url({ date, channel }) {
- const [channelId, childId] = channel.site_id.split('#')
- return `https://www.directv.com/json/channelschedule?channels=${channelId}&startTime=${date.format()}&hours=24&chId=${childId}`
+ return `https://api.cld.dtvce.com/discovery/edge/schedule/v1/service/schedule?startTime=${date.valueOf()}&endTime=${date.add(24, 'hour').valueOf()}&channelIds=${channel.site_id}&include4K=false&is4Kcompatible=false&includeTVOD=true`
},
async parser({ content, channel }) {
const programs = []
const items = parseItems(content, channel)
for (let item of items) {
if (item.programID === '-1') continue
- const detail = await loadProgramDetail(item.programID)
const start = parseStart(item)
- const stop = start.add(item.duration, 'm')
+ const stop = parseStop(item)
programs.push({
title: item.title,
sub_title: item.episodeTitle,
- description: parseDescription(detail),
+ description: parseDescription(item),
rating: parseRating(item),
- date: parseYear(detail),
- category: item.subcategoryList,
+ date: parseFullReleaseDate(item) ?? parseYear(item),
+ category: parseCategory(item),
season: item.seasonNumber,
episode: item.episodeNumber,
image: parseImage(item),
@@ -47,72 +90,81 @@ module.exports = {
return programs
},
async channels() {
- const codes = [10001]
+ // alternate https://www.directv.com/dtvassets/dtv/dev/uf/CHLUP/chnlListingPageData.json
+ // though i don't think you could fetch the schedule from the API with this
let channels = []
- for (let code of codes) {
- const html = await axios
- .get('https://www.directv.com/guide', {
- headers: {
- cookie: `dtve-prospect-zip=${code}`
- }
- })
- .then(r => r.data)
- .catch(console.log)
-
- const $ = cheerio.load(html)
- const script = $('#dtvClientData').html()
- const [, json] = script.match(/var dtvClientData = (.*);/) || [null, null]
- const data = JSON.parse(json)
-
- data.guideData.channels.forEach(item => {
- channels.push({
- lang: 'en',
- site_id: item.chNum,
- name: item.chName
- })
+ const html = await axios
+ .get('https://api.cld.dtvce.com/discovery/metadata/channel/v5/service/allchannels?sort=OrdCh%253DASC', {
+ headers: {
+ Authorization: `Bearer ${await fetchToken()}`,
+ 'Accept-Language': 'en-US,en;q=0.5',
+ Connection: 'keep-alive'
+ }
})
- }
+ .then(r => r.data)
+ .catch(console.log)
+
+ const data = html?.channelInfoList
+
+ if (data && Array.isArray(data)) {
+ data.forEach(item => {
+ channels.push({
+ lang: 'en',
+ site_id: item.resourceId,
+ name: item.channelName,
+ icon: item.imageList && item.imageList.length > 0 ? item.imageList[0].imageUrl : null
+ })
+ })
+ }
return channels
}
}
-function parseDescription(detail) {
- return detail ? detail.description : null
+function parseDescription(item) {
+ return item ? item.description : null
}
-function parseYear(detail) {
- return detail ? detail.releaseYear : null
+function parseCategory(item) {
+ return item && item.genres ? item.genres : null
+}
+// DirecTV are the only ones to put the episode/movie's full release date. Kudos to them.
+function parseFullReleaseDate(item) {
+ return item ? item.originalAirDate : null
+}
+function parseYear(item) {
+ return item ? item.releaseYear : null
}
function parseRating(item) {
- return item.rating
+ return item.parentalRating
? {
system: 'MPA',
- value: item.rating
+ value: item.parentalRating
}
: null
}
function parseImage(item) {
- return item.primaryImageUrl ? `https://www.directv.com${item.primaryImageUrl}` : null
-}
-function loadProgramDetail(programID) {
- return axios
- .get(`https://www.directv.com/json/program/flip/${programID}`)
- .then(r => r.data)
- .then(d => d.programDetail)
- .catch(console.err)
+ return item.images?.length > 0 ? item.images[0].defaultImageUrl : null
}
function parseStart(item) {
- return dayjs.utc(item.airTime)
+ return dayjs.utc(item.consumables?.[0]?.startTime)
+}
+
+function parseStop(item) {
+ return dayjs.utc(item.consumables?.[0]?.endTime)
}
function parseItems(content, channel) {
- const data = JSON.parse(content)
- if (!data) return []
- if (!Array.isArray(data.schedule)) return []
+ try {
+ const data = JSON.parse(content)
+ if (!data) return []
+ if (!Array.isArray(data.schedules)) return []
- const [, childId] = channel.site_id.split('#')
- const channelData = data.schedule.find(i => i.chId == childId)
- return channelData.schedules && Array.isArray(channelData.schedules) ? channelData.schedules : []
+ const channelData = data.schedules.find(i => i.channelId === channel.site_id)
+ return channelData?.contents && Array.isArray(channelData.contents) ? channelData.contents : []
+ } catch (error) {
+ console.error('Error parsing content:', error)
+ return []
+ }
}
diff --git a/sites/directv.com/directv.com.test.js b/sites/directv.com/directv.com.test.js
index a4abfa0ca..5b9f179a0 100644
--- a/sites/directv.com/directv.com.test.js
+++ b/sites/directv.com/directv.com.test.js
@@ -10,36 +10,29 @@ dayjs.extend(utc)
jest.mock('axios')
-const date = dayjs.utc('2023-01-15', 'YYYY-MM-DD').startOf('d')
+// Mock token fetching
+axios.post.mockImplementation((url) => {
+ if (url === 'https://api.cld.dtvce.com/authn-tokengo/v3/v2/tokens?client_id=DTVE_DFW_WEB_Chrome_G') {
+ return Promise.resolve({ data: '/S2dAVfUtUdnt6adfOBn+QrLZ2GymKSfxIGgfI/tRrOCf22bhs7aLmwmeKTUp0br3aHU2M/Rtv5Y43Kl9unTtNau8w48K3dNjVVH2gyrgvGvUxfVa8rXXuv9RBesXSric6ltlS4yDIjRtuOpmiU5Imt8O1zHWjA9K3/8M84oRQywb0HpE4tkTT3RBG5Cmz+wX5If6Hbb3ndFacEhUjpvCI0mAqPlI2r7x7/73quuoByp0+updUmyjWF+5SVkUBx5.ycdisTLMPpwxjYERYDmA7zm7Pq2ukk5KJk8duRW8lMg=' })
+ }
+})
+
+const date = dayjs.utc('2026-06-04', 'YYYY-MM-DD').startOf('d')
const channel = {
- site_id: '249#249',
+ site_id: '5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b',
xmltv_id: 'ComedyCentralEast.us'
}
it('can generate valid url', () => {
const result = url({ date, channel })
expect(result).toBe(
- 'https://www.directv.com/json/channelschedule?channels=249&startTime=2023-01-15T00:00:00Z&hours=24&chId=249'
+ `https://api.cld.dtvce.com/discovery/edge/schedule/v1/service/schedule?startTime=${date.valueOf()}&endTime=${date.add(24, 'hour').valueOf()}&channelIds=5070bc2e-dd69-4dee-98b4-a4c5e3b1fd7b&include4K=false&is4Kcompatible=false&includeTVOD=true`
)
})
it('can parse response', done => {
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.json'))
- axios.get.mockImplementation(url => {
- if (url === 'https://www.directv.com/json/program/flip/MV001173520000') {
- return Promise.resolve({
- data: JSON.parse(fs.readFileSync(path.resolve(__dirname, '__data__/program1.json')))
- })
- } else if (url === 'https://www.directv.com/json/program/flip/EP002298270445') {
- return Promise.resolve({
- data: JSON.parse(fs.readFileSync(path.resolve(__dirname, '__data__/program2.json')))
- })
- } else {
- return Promise.resolve({ data: '' })
- }
- })
-
parser({ content, channel })
.then(result => {
result = result.map(p => {
@@ -48,38 +41,38 @@ it('can parse response', done => {
return p
})
- expect(result).toMatchObject([
- {
- start: '2023-01-14T23:00:00.000Z',
- stop: '2023-01-15T01:00:00.000Z',
- title: 'Men in Black II',
- description:
- 'Kay (Tommy Lee Jones) and Jay (Will Smith) reunite to provide our best line of defense against a seductress who levels the toughest challenge yet to the MIBs mission statement: protecting the earth from the scum of the universe. While investigating a routine crime, Jay uncovers a plot masterminded by Serleena (Boyle), a Kylothian monster who disguises herself as a lingerie model. When Serleena takes the MIB building hostage, there is only one person Jay can turn to -- his former MIB partner.',
- date: '2002',
- image: 'https://www.directv.com/db_photos/movies/AllPhotosAPGI/29160/29160_aa.jpg',
- category: ['Comedy', 'Movies Anywhere', 'Action/Adventure', 'Science Fiction'],
+ expect(result).toHaveLength(47)
+
+ expect(result[0]).toMatchObject({
+ start: '2026-04-06T00:00:00.000Z',
+ stop: '2026-04-06T00:30:00.000Z',
+ title: 'Seinfeld',
+ sub_title: 'The Nap',
+ description: 'George finds the ideal napping spot at work; Jerry has his kitchen rebuilt; Elaine meets a new beau (Vince Grant).',
+ date: '1997-04-10',
+ season: 8,
+ episode: 18,
+ category: ['Sitcom'],
+ rating: {
+ system: 'MPA',
+ value: 'TVPG'
+ }
+ })
+
+ expect(result[46]).toMatchObject({
+ start: '2026-04-06T23:35:00.000Z',
+ stop: '2026-04-07T00:10:00.000Z',
+ title: 'The Office',
+ sub_title: 'The Convention',
+ description: 'Michael organizes a party in his hotel room when he, Dwight and Jan attend the Northeastern Mid-Market Office Supply Convention in Philadelphia.',
+ category: ['Comedy', 'Sitcom'],
+ season: 3,
+ episode: 2,
rating: {
system: 'MPA',
value: 'TV14'
}
- },
- {
- start: '2023-01-15T06:00:00.000Z',
- stop: '2023-01-15T06:30:00.000Z',
- title: 'South Park',
- sub_title: 'Goth Kids 3: Dawn of the Posers',
- description: 'The goth kids are sent to a camp for troubled children.',
- image:
- 'https://www.directv.com/db_photos/showcards/v5/AllPhotos/184338/p184338_b_v5_aa.jpg',
- category: ['Series', 'Animation', 'Comedy'],
- season: 17,
- episode: 4,
- rating: {
- system: 'MPA',
- value: 'TVMA'
- }
- }
- ])
+ })
done()
})
.catch(done)
diff --git a/sites/france.tv/__data__/content.json b/sites/france.tv/__data__/content.json
new file mode 100644
index 000000000..7b429d862
--- /dev/null
+++ b/sites/france.tv/__data__/content.json
@@ -0,0 +1,1028 @@
+[
+ {
+ "ariaLabel": "Le 6h info . Émission du jeudi 19 février 2026 . Vidéo . 30 minutes",
+ "content": {
+ "description": "Un rendez-vous réveil-matin, avec un point sur l'actualité assorti de différentes rubriques qui permettent d'en explorer certains aspects plus en profondeur.",
+ "id": 8156589,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/S9p5NdAs4OR2UbyC1NIQWsYV-K4/240x0/filters:quality(85):format(webp)/b/f/3/e85c2e8fed4a4955965dfff63c3843fb.jpg",
+ "x2": "https://medias.france.tv/BtQR9kmC4LN0RPWr9WbXfDlap5o/400x0/filters:quality(85):format(webp)/b/f/3/e85c2e8fed4a4955965dfff63c3843fb.jpg"
+ },
+ "broadcastBeginDate": "06h00",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "info",
+ "label": "Info"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "30 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Émission du jeudi 19 février 2026",
+ "titleLeading": "Le 6h info",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "info",
+ "sub_category": "jt",
+ "content_type": "video",
+ "content_title": "emission_du_jeudi_19_fevrier_2026",
+ "content_format": "integrale",
+ "program": "le_6h_info",
+ "program_id": "2367",
+ "content_id": 8156589,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "c91a950b-7f1b-42b5-b513-0b470336d1d6"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Télématin . Émission du jeudi 19 février 2026 . Vidéo . 1 heure 30 minutes",
+ "content": {
+ "description": "De l'info et de la bonne humeur, sept jours sur sept : résolument dans l'air du temps, la première matinale de France, forte de sa richesse éditoriale et de sa dynamique d'équipe, aborde de nombreuses thématiques et traite l'actualité avec sérieux et sans dramatisation.",
+ "id": 8156586,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/7_elf6zKoS8sOO941AMMeLWcrME/240x0/filters:quality(85):format(webp)/3/3/c/afbdb3622c034f01bafb6108e0287c33.jpg",
+ "x2": "https://medias.france.tv/JT03SrO-4rnPiZXPjTPSswlJ4BA/400x0/filters:quality(85):format(webp)/3/3/c/afbdb3622c034f01bafb6108e0287c33.jpg"
+ },
+ "broadcastBeginDate": "06h30",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "society",
+ "label": "Société"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "1 h 30 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Émission du jeudi 19 février 2026",
+ "titleLeading": "Télématin",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "societe|info",
+ "sub_category": "magazines_d_actualite|decryptage_et_investigation",
+ "content_type": "video",
+ "content_title": "emission_du_jeudi_19_fevrier_2026",
+ "content_format": "integrale",
+ "program": "telematin",
+ "program_id": "1283",
+ "content_id": 8156586,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "3cfb78f4-adf0-4100-90be-b337bf062221"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Journal 08h00 . Édition du jeudi 19 février 2026 . Vidéo . 30 minutes",
+ "content": {
+ "description": "Pour bien démarrer la journée, la rédaction de France 2 propose un point sur l'actualité. Les principales informations nationales et internationales sont passées en revue.",
+ "id": 8156580,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/MlJ0nPDHlk_tINBwGmaxbErv2-s/240x0/filters:quality(85):format(webp)/1/4/9/d0bc530cab624e5d9ba963b37da79941.jpg",
+ "x2": "https://medias.france.tv/hmo4z4xkDGNX2RDcFgcnSNnRI4E/400x0/filters:quality(85):format(webp)/1/4/9/d0bc530cab624e5d9ba963b37da79941.jpg"
+ },
+ "broadcastBeginDate": "08h00",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "info",
+ "label": "Info"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "30 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Édition du jeudi 19 février 2026",
+ "titleLeading": "Journal 08h00",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "info",
+ "sub_category": "jt",
+ "content_type": "video",
+ "content_title": "edition_du_jeudi_19_fevrier_2026",
+ "content_format": "integrale",
+ "program": "journal_08h00",
+ "program_id": "2375",
+ "content_id": 8156580,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "bfc04ab3-521b-4810-b6fa-cbc77537e28b"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Télématin . Émission du jeudi 19 février 2026 . Vidéo . 1 heure 15 minutes",
+ "content": {
+ "description": "De l'info et de la bonne humeur, sept jours sur sept : résolument dans l'air du temps, la première matinale de France, forte de sa richesse éditoriale et de sa dynamique d'équipe, aborde de nombreuses thématiques et traite l'actualité avec sérieux et sans dramatisation.",
+ "id": 8156583,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/GUI0YHtwVu1IqS9r_RVelgSzuIw/240x0/filters:quality(85):format(webp)/a/5/7/26046e577f7e4f60abf17a273e18e75a.jpg",
+ "x2": "https://medias.france.tv/JfV-adXMQ4TQ16RpTlA9J35BcHI/400x0/filters:quality(85):format(webp)/a/5/7/26046e577f7e4f60abf17a273e18e75a.jpg"
+ },
+ "broadcastBeginDate": "08h30",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "society",
+ "label": "Société"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "1 h 15 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Émission du jeudi 19 février 2026",
+ "titleLeading": "Télématin",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "societe|info",
+ "sub_category": "magazines_d_actualite|decryptage_et_investigation",
+ "content_type": "video",
+ "content_title": "emission_du_jeudi_19_fevrier_2026",
+ "content_format": "integrale",
+ "program": "telematin",
+ "program_id": "1283",
+ "content_id": 8156583,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "indisponible",
+ "video_factory_id": "50eec72e-9920-4850-b70b-7e37ad6e3e1f"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Jeux Olympiques d'hiver . Ski alpinisme (F et H) / Ski acrobatique (H) . Vidéo . 3 heures 15 minutes",
+ "content": {
+ "description": "Le ski-alpinisme fait son entrée aux Jeux olympiques à Cortina. Une première historique pour la discipline. Parmi les prétendants aux médailles en sprint, on retrouve le Belge Maximilien Drion. En combiné nordique, épreuve de saut à ski par équipes programmée à 10h. En ski acrobatique, les qualifications du halfpipe messieurs débutent à 10h30 av...",
+ "id": 8156574,
+ "label": null,
+ "url": "/sport/les-jeux-olympiques-d-hiver/8156574-ski-alpinisme-f-et-h-ski-acrobatique-h.html",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/M05d1Kto1XuK7A267TrnR7nUSeg/240x0/filters:quality(85):format(webp)/k/m/x/phpflhxmk.jpg",
+ "x2": "https://medias.france.tv/y_EMxE-FWAyrMKm888jH-LJTLqo/400x0/filters:quality(85):format(webp)/k/m/x/phpflhxmk.jpg"
+ },
+ "broadcastBeginDate": "09h45",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "sport",
+ "label": "Sport"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "3 h 15 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Ski alpinisme (F et H) / Ski acrobatique (H)",
+ "titleLeading": "Jeux Olympiques d'hiver",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "sport",
+ "content_type": "video",
+ "content_title": "ski_alpinisme_f_et_h_ski_acrobatique_h",
+ "content_format": "integrale",
+ "highlight": "jeux_olympiques_d_hiver",
+ "content_id": 8156574,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "6331b70c-f8cd-47fa-974e-28680033db17"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Journal 13h00 . Édition du jeudi 19 février 2026 . Vidéo . 40 minutes",
+ "content": {
+ "description": "Tous les jours, à 13h, la rédaction propose un point sur l'actualité. Les informations nationales et internationales sont passées à la loupe et mises en perspective, illustrées par des reportages sur le terrain.",
+ "id": 8156577,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/vzdnS4Qvj1-DXIFs0Dhfmaxa-gs/240x0/filters:quality(85):format(webp)/1/9/8/369a7d7cdfc94d28becb9becfa454891.jpg",
+ "x2": "https://medias.france.tv/Ual5fsCcuJJ4n--WWVnrpSNqZMM/400x0/filters:quality(85):format(webp)/1/9/8/369a7d7cdfc94d28becb9becfa454891.jpg"
+ },
+ "broadcastBeginDate": "13h00",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "info",
+ "label": "Info"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "40 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Édition du jeudi 19 février 2026",
+ "titleLeading": "Journal 13h00",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "region": "saint_pierre_et_miquelon",
+ "category": "info",
+ "sub_category": "jt",
+ "content_type": "video",
+ "content_title": "edition_du_jeudi_19_fevrier_2026",
+ "content_format": "integrale",
+ "program": "journal_13h00",
+ "program_id": "2379",
+ "content_id": 8156577,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "866477d7-9978-49fc-92db-95c51a84c299"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Journal Météo Climat . Journal Météo climat . Vidéo . 5 minutes",
+ "content": {
+ "description": "Un point quotidien sur l'actualité météo et climatique, avec des reportages et des interviews d'experts.",
+ "id": 8156568,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/GSxVDxWPpAXGdCYqe7rENQlUZLU/240x0/filters:quality(85):format(webp)/3/6/6/54adec73339a408d820cac0508c70663.jpg",
+ "x2": "https://medias.france.tv/lHI572NFvhaysIytuGQ7CIk5iPE/400x0/filters:quality(85):format(webp)/3/6/6/54adec73339a408d820cac0508c70663.jpg"
+ },
+ "broadcastBeginDate": "13h40",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "info",
+ "label": "Info"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "5 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Journal Météo climat",
+ "titleLeading": "Journal Météo Climat",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "info",
+ "sub_category": "meteo",
+ "content_type": "video",
+ "content_title": "journal_meteo_climat",
+ "content_format": "integrale",
+ "program": "journal_meteo_climat",
+ "program_id": "42535",
+ "content_id": 8156568,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "d14523e7-f77e-42b9-84dc-49dd67fdd722"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Consomag . Produit reconditionné : en cas de problème, est-il garanti ? . Vidéo . 15 minutes",
+ "content": {
+ "description": "Le magazine de l'Institut national de la consommation donne à chacun des conseils pratiques pour mieux consommer, toutes les thématiques peuvent être abordées autour de nos achats.",
+ "id": 8156571,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/4k1alPn1hkw6THco_lLFzUbyFT8/240x0/filters:quality(85):format(webp)/b/9/e/bd4ea8919ee3496fb021888fe18bfe9b.jpg",
+ "x2": "https://medias.france.tv/DxwPp0tiKk_PE3gf6QJgSYHQ6uI/400x0/filters:quality(85):format(webp)/b/9/e/bd4ea8919ee3496fb021888fe18bfe9b.jpg"
+ },
+ "broadcastBeginDate": "13h45",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "society",
+ "label": "Société"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "15 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Produit reconditionné : en cas de problème, est-il garanti ?",
+ "titleLeading": "Consomag",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "societe|info",
+ "sub_category": "magazines_d_actualite|decryptage_et_investigation",
+ "content_type": "video",
+ "content_title": "produit_reconditionne_en_cas_de_probleme_est_il_garanti",
+ "content_format": "integrale",
+ "program": "consomag",
+ "program_id": "1615",
+ "content_id": 8156571,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "39629384-910f-4f8c-9d51-00436d5187cb"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Jeux Olympiques d'hiver . Ski alpinisme (F et H) / Hockey sur glace (F) . Vidéo . 23 minutes",
+ "content": {
+ "description": "Qui seront sacrés premier et première championne olympique de ski-alpinisme, à l'issue des finales de sprint qui débutent à 14h ? En combiné nordique, le titre par équipes messieurs est décerné à l'issue de l'épreuve de ski de fond, sprint 2x7,5 km, qui débute également à 14h. Les Norvégiens sont les tenants du titre, devant l'Allemagne et le Ja...",
+ "id": 8156565,
+ "label": null,
+ "url": "/sport/les-jeux-olympiques-d-hiver/8156565-ski-alpinisme-f-et-h-hockey-sur-glace-f.html",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/Ud3CeWLgMHiwNQvtd4NEF_OWZVE/240x0/filters:quality(85):format(webp)/v/v/y/phpqdyyvv.jpg",
+ "x2": "https://medias.france.tv/qp-j3cKMmq5meo6V94hyOOcAlB4/400x0/filters:quality(85):format(webp)/v/v/y/phpqdyyvv.jpg"
+ },
+ "broadcastBeginDate": "14h00",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "sport",
+ "label": "Sport"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "23 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Ski alpinisme (F et H) / Hockey sur glace (F)",
+ "titleLeading": "Jeux Olympiques d'hiver",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "region": "wallis_et_futuna_|guadeloupe|nouvelle_caledonie|saint_pierre_et_miquelon",
+ "category": "sport",
+ "content_type": "video",
+ "content_title": "ski_alpinisme_f_et_h_hockey_sur_glace_f",
+ "content_format": "integrale",
+ "highlight": "jeux_olympiques_d_hiver",
+ "content_id": 8156565,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "644c18b3-4760-426f-9faa-ecaed8dc22e8"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Jeux Olympiques d'hiver . Patinage de vitesse (H) / Hockey sur glace (F) . Vidéo . 3 heures 25 minutes",
+ "content": {
+ "description": "En patinage de vitesse, l'épreuve du 1500 m messieurs débute à 16h30. L'Américain Jordan Stolz est favori, avec l'Allemand Finn Sonnekalb, le Néerlandais Kjeld Nuis et le Chinois Ning Zhongyan. La finale dames de hockey sur glace se joue à 19h10 à la Milano Santagiulia Ice Hockey Arena. Qui succédera au palmarès aux Canadiennes, victorieuses des...",
+ "id": 8156562,
+ "label": null,
+ "url": "/sport/les-jeux-olympiques-d-hiver/8156562-patinage-de-vitesse-h-hockey-sur-glace-f.html",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/ZU0UG9N0Bu-LZvlCdkcR9_S33RU/240x0/filters:quality(85):format(webp)/o/s/1/phpxya1so.jpg",
+ "x2": "https://medias.france.tv/ULjmo-nhuZa89e0CjOqQtbOHQ3s/400x0/filters:quality(85):format(webp)/o/s/1/phpxya1so.jpg"
+ },
+ "broadcastBeginDate": "16h30",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "sport",
+ "label": "Sport"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "3 h 25 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Patinage de vitesse (H) / Hockey sur glace (F)",
+ "titleLeading": "Jeux Olympiques d'hiver",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "sport",
+ "content_type": "video",
+ "content_title": "patinage_de_vitesse_h_hockey_sur_glace_f",
+ "content_format": "integrale",
+ "highlight": "jeux_olympiques_d_hiver",
+ "content_id": 8156562,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "d3cf848f-017c-4c5d-afa1-d1f38f4027b7"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Journal 20h00 . Édition du jeudi 19 février 2026 . Vidéo . 55 minutes",
+ "content": {
+ "description": "Les principales informations nationales et internationales sont passées à la loupe et mises en perspective, illustrées par des reportages sur le terrain.",
+ "id": 8156559,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/BTfZ2idtnBxvhxHkDXSo8_Av_WE/240x0/filters:quality(85):format(webp)/a/8/7/125078f88e4c49c888d8bae6b19f978a.jpg",
+ "x2": "https://medias.france.tv/8nx8oqOWXShe0_iXZ28D7a9oSrA/400x0/filters:quality(85):format(webp)/a/8/7/125078f88e4c49c888d8bae6b19f978a.jpg"
+ },
+ "broadcastBeginDate": "19h55",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "info",
+ "label": "Info"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "55 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Édition du jeudi 19 février 2026",
+ "titleLeading": "Journal 20h00",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "info",
+ "sub_category": "jt",
+ "content_type": "video",
+ "content_title": "edition_du_jeudi_19_fevrier_2026",
+ "content_format": "integrale",
+ "program": "journal_20h00",
+ "program_id": "2383",
+ "content_id": 8156559,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "ca0297ec-9059-4d69-8ea4-c8f950624c99"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Journal Météo Climat . Journal Météo climat . Vidéo . 1 minute",
+ "content": {
+ "description": "Un point quotidien sur l'actualité météo et climatique, avec des reportages et des interviews d'experts.",
+ "id": 8156556,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/ZmsDXtZWuKlozYx5MS4QbsHgcAs/240x0/filters:quality(85):format(webp)/e/0/d/0faaeaa70a854e02a6fe1fde2d267d0e.jpg",
+ "x2": "https://medias.france.tv/CQlKJceC4-y2L-KWmcwJ8eX_T2g/400x0/filters:quality(85):format(webp)/e/0/d/0faaeaa70a854e02a6fe1fde2d267d0e.jpg"
+ },
+ "broadcastBeginDate": "20h50",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "info",
+ "label": "Info"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "1 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Journal Météo climat",
+ "titleLeading": "Journal Météo Climat",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "info",
+ "sub_category": "meteo",
+ "content_type": "video",
+ "content_title": "journal_meteo_climat",
+ "content_format": "integrale",
+ "program": "journal_meteo_climat",
+ "program_id": "42535",
+ "content_id": 8156556,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "fcf39789-8d42-4710-b8da-0c6f87a873b3"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Epopées en bleu . Vidéo . 4 minutes",
+ "content": {
+ "description": "Gros plan en images sur les principaux événements sportifs du jour.",
+ "id": 8165610,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/HMLOxc6ONp6Ol5iZjoXWtC6qx-g/240x0/filters:quality(85):format(webp)/c/1/8/2303b6f77cc941a49ed8c63e3fc8b81c.jpg",
+ "x2": "https://medias.france.tv/N3tuxwoofZZMwGYJPgq9nbjaxJ8/400x0/filters:quality(85):format(webp)/c/1/8/2303b6f77cc941a49ed8c63e3fc8b81c.jpg"
+ },
+ "broadcastBeginDate": "20h51",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "info",
+ "label": "Info"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "4 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Epopées en bleu",
+ "titleLeading": null,
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "region": "nouvelle_caledonie|mayotte",
+ "category": "info",
+ "content_type": "video",
+ "content_title": "epopees_en_bleu",
+ "content_format": "integrale",
+ "program": "image_du_jour_sports",
+ "program_id": "91005",
+ "content_id": 8165610,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "b6181e31-30b1-4499-8702-f3d1e0676600"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Jeux olympiques de Milan-Cortina 2026 . Vidéo . 1 minute",
+ "content": {
+ "description": "Gros plan en images sur les principaux événements sportifs du jour.",
+ "id": 8156550,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/MwHIVCE1cXHBTXiWmx0oq2BcA7E/240x0/filters:quality(85):format(webp)/0/2/e/08f11d7d474145fdafa268d852bbde20.jpg",
+ "x2": "https://medias.france.tv/ylQN0h84Sd_aWuBCdkD1B9eqQAI/400x0/filters:quality(85):format(webp)/0/2/e/08f11d7d474145fdafa268d852bbde20.jpg"
+ },
+ "broadcastBeginDate": "20h55",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "info",
+ "label": "Info"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "1 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Jeux olympiques de Milan-Cortina 2026",
+ "titleLeading": null,
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "region": "nouvelle_caledonie|reunion",
+ "category": "info",
+ "content_type": "video",
+ "content_title": "jeux_olympiques_de_milan_cortina_2026",
+ "content_format": "integrale",
+ "program": "image_du_jour_sports",
+ "program_id": "91005",
+ "content_id": 8156550,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "4e3b3f90-4f82-4e08-82b4-9d5b2c1d39af"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Basique, l'essentiel de la musique . Yael Naim . Vidéo . 9 minutes",
+ "content": {
+ "description": "Une pastille consacrée à l'actualité musicale, qui braque les projecteurs sur un ou une artiste.",
+ "id": 8156553,
+ "label": null,
+ "url": "/france-2/basique-l-essentiel-de-la-musique/8156553-yael-naim.html",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/9yTg8BrHoQq0NvbZOeXaCF3fJzM/240x0/filters:quality(85):format(webp)/e/j/w/phpnwywje.png",
+ "x2": "https://medias.france.tv/7kRvH3_djLDqKEqqaXjMWkYOwnI/400x0/filters:quality(85):format(webp)/e/j/w/phpnwywje.png"
+ },
+ "broadcastBeginDate": "20h56",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "artShow",
+ "label": "Arts & spectacles"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "9 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Yael Naim",
+ "titleLeading": "Basique, l'essentiel de la musique",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "arts_et_spectacles|divertissement",
+ "sub_category": "emissions_culturelles|emissions_de_divertissement",
+ "content_type": "video",
+ "content_title": "yael_naim",
+ "content_format": "integrale",
+ "program": "basique_l_essentiel_de_la_musique",
+ "program_id": "7025",
+ "content_id": 8156553,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "330681fa-b116-4d09-b61c-856442605f47"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Mot de passe : le duel . Émission du jeudi 8 janvier 2026 . Vidéo . 8 minutes 5 secondes . Sous-titré",
+ "content": {
+ "description": "Mot de passe - Le Duel est un jeu qui consiste à faire deviner des mots à un partenaire de jeu en donnant des mots indices. Il se joue avec deux candidats face à deux célébrités. Du lundi au jeudi, ce sont les Duels et la Finale se joue en fin de semaine, le vendredi, avec le meilleur des 2 candidats et les deux célébrités.",
+ "id": 8026797,
+ "label": null,
+ "url": "/france-2/mot-de-passe-le-duel/8026797-emission-du-jeudi-8-janvier-2026.html",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/-1RzWx9FZTBPxqXus62nk8GXdd8/240x0/filters:quality(85):format(webp)/9/7/a/7eacababdb94435b9f29a0049b8ffa79.jpg",
+ "x2": "https://medias.france.tv/WCHO80CN3Dlt4C05BA8zUDw2VIA/400x0/filters:quality(85):format(webp)/9/7/a/7eacababdb94435b9f29a0049b8ffa79.jpg"
+ },
+ "broadcastBeginDate": "21h05",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "entertainment",
+ "label": "Divertissement"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "8 min 5 s",
+ "icons": [
+ {
+ "id": "st"
+ }
+ ],
+ "live": false,
+ "progress": null,
+ "title": "Émission du jeudi 8 janvier 2026",
+ "titleLeading": "Mot de passe : le duel",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "divertissement",
+ "sub_category": "jeux",
+ "content_type": "video",
+ "content_title": "emission_du_jeudi_8_janvier_2026",
+ "content_format": "integrale",
+ "program": "mot_de_passe_le_duel",
+ "program_id": "56191",
+ "content_id": 8026797,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "adf6bf06-506b-410a-8c64-59e926ab984c"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Jeux Olympiques d'hiver . Patinage artistique (F) / Ski acrobatique (F) . Vidéo . Audio-décrit . 2 heures 33 minutes",
+ "content": {
+ "description": "La soirée débute par la fin du programme libre dames de patinage artistique. L'Américaine Alysa Liu, championne du monde 2025, est la grande favorite pour le titre olympique, remporté en 2022, à Pékin, par la Russe Anna Chtcherbakova. Ses principales adversaires seront les Japonaises Kaori Sakamoto et Mone Chiba, l'Estonienne Niina Petrokina et ...",
+ "id": 8156544,
+ "label": null,
+ "url": "/sport/les-jeux-olympiques-d-hiver/8156544-patinage-artistique-f-ski-acrobatique-f.html",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/gMhZF8RFU9_ULzI56AAkDEUW7BQ/240x0/filters:quality(85):format(webp)/h/j/1/phpvra1jh.jpg",
+ "x2": "https://medias.france.tv/h9Dh0iCS-ikeAKmdAwd_nXkaTSA/400x0/filters:quality(85):format(webp)/h/j/1/phpvra1jh.jpg"
+ },
+ "broadcastBeginDate": "21h10",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "sport",
+ "label": "Sport"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "2 h 33 min",
+ "icons": [
+ {
+ "id": "ad"
+ }
+ ],
+ "live": false,
+ "progress": null,
+ "title": "Patinage artistique (F) / Ski acrobatique (F)",
+ "titleLeading": "Jeux Olympiques d'hiver",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "region": "saint_pierre_et_miquelon",
+ "category": "sport",
+ "content_type": "video",
+ "content_title": "patinage_artistique_f_ski_acrobatique_f",
+ "content_format": "integrale",
+ "highlight": "jeux_olympiques_d_hiver",
+ "content_id": 8156544,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "8fc870a9-a5d6-43ce-b8f7-e7945f5229ff"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "JO Club . Émission du jeudi 19 février 2026 . Vidéo . 1 heure",
+ "content": {
+ "description": "Tous les soirs, tout au long de ces Jeux olympiques d'hiver de Milan-Cortina, Laurent Luyat revient, avec les journalistes et consultants de France Télévisions, sur les épreuves de la journée. Il accueille les athlètes et les médaillés du jour. La journée a été marquée par du combiné nordique, avec l'épreuve par équipes messieurs, les demi-final...",
+ "id": 8156547,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/xuxaBPNFyhMiVB5eeYrZV_1nPj4/240x0/filters:quality(85):format(webp)/v/p/h/phpmhbhpv.jpg",
+ "x2": "https://medias.france.tv/szcQQVOSSqC70fcjHId4PxZ-wxE/400x0/filters:quality(85):format(webp)/v/p/h/phpmhbhpv.jpg"
+ },
+ "broadcastBeginDate": "23h00",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "info",
+ "label": "Info"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "1 h",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Émission du jeudi 19 février 2026",
+ "titleLeading": "JO Club",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "region": "martinique|guadeloupe|guyane",
+ "category": "info",
+ "content_type": "video",
+ "content_title": "emission_du_jeudi_19_fevrier_2026",
+ "content_format": "integrale",
+ "program": "jo_club",
+ "program_id": "5603",
+ "content_id": 8156547,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "19022026",
+ "content_status": "replay",
+ "video_factory_id": "98238f1c-37a0-497f-9e3a-5f05eb17ce5c"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Jeux Olympiques d'hiver . Jeux Olympiques d'hiver : Rediffusions . Vidéo . 5 heures 50 minutes",
+ "content": {
+ "description": "Les XXVes Jeux olympiques d'hiver 2026 se déroulent en Italie, à Milan et Cortina d'Ampezzo, et célèbrent les sports d'hiver avec 16 disciplines au menu de la compétition.",
+ "id": 8156541,
+ "label": null,
+ "url": "",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/PRXSSEG8Mi9gyQp37QHrILo0HNg/240x0/filters:quality(85):format(webp)/c/g/b/phpxnobgc.jpg",
+ "x2": "https://medias.france.tv/4WT0xrlA1E6GxCFWkAdtAXjsKRs/400x0/filters:quality(85):format(webp)/c/g/b/phpxnobgc.jpg"
+ },
+ "broadcastBeginDate": "00h00",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "sport",
+ "label": "Sport"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "5 h 50 min",
+ "icons": [],
+ "live": false,
+ "progress": null,
+ "title": "Jeux Olympiques d'hiver : Rediffusions",
+ "titleLeading": "Jeux Olympiques d'hiver",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "region": "martinique",
+ "category": "sport",
+ "content_type": "video",
+ "content_title": "jeux_olympiques_d_hiver_rediffusions",
+ "content_format": "integrale",
+ "highlight": "jeux_olympiques_d_hiver",
+ "content_id": 8156541,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "20022026",
+ "content_status": "indisponible",
+ "video_factory_id": "7435a412-cdf0-4eaa-8168-29f466de95ef"
+ },
+ "variant": "horizontal"
+ },
+ {
+ "ariaLabel": "Mot de passe : le duel . Émission du jeudi 8 janvier 2026 . Vidéo . 8 minutes 5 secondes . Sous-titré",
+ "content": {
+ "description": "Mot de passe - Le Duel est un jeu qui consiste à faire deviner des mots à un partenaire de jeu en donnant des mots indices. Il se joue avec deux candidats face à deux célébrités. Du lundi au jeudi, ce sont les Duels et la Finale se joue en fin de semaine, le vendredi, avec le meilleur des 2 candidats et les deux célébrités.",
+ "id": 8026797,
+ "label": null,
+ "url": "/france-2/mot-de-passe-le-duel/8026797-emission-du-jeudi-8-janvier-2026.html",
+ "thumbnail": {
+ "x1": "https://medias.france.tv/-1RzWx9FZTBPxqXus62nk8GXdd8/240x0/filters:quality(85):format(webp)/9/7/a/7eacababdb94435b9f29a0049b8ffa79.jpg",
+ "x2": "https://medias.france.tv/WCHO80CN3Dlt4C05BA8zUDw2VIA/400x0/filters:quality(85):format(webp)/9/7/a/7eacababdb94435b9f29a0049b8ffa79.jpg"
+ },
+ "broadcastBeginDate": "05h50",
+ "captionLeading": "À regarder",
+ "caption": null,
+ "category": {
+ "id": "entertainment",
+ "label": "Divertissement"
+ },
+ "channel": "francetv",
+ "csa": "TP",
+ "cta": "Regarder",
+ "duration": "8 min 5 s",
+ "icons": [
+ {
+ "id": "st"
+ }
+ ],
+ "live": false,
+ "progress": null,
+ "title": "Émission du jeudi 8 janvier 2026",
+ "titleLeading": "Mot de passe : le duel",
+ "type": "video"
+ },
+ "options": {
+
+ },
+ "tracking": {
+ "channel": "france_2",
+ "channel_type": "premium",
+ "category": "divertissement",
+ "sub_category": "jeux",
+ "content_type": "video",
+ "content_title": "emission_du_jeudi_8_janvier_2026",
+ "content_format": "integrale",
+ "program": "mot_de_passe_le_duel",
+ "program_id": "56191",
+ "content_id": 8026797,
+ "content_sponsored": false,
+ "content_logged": true,
+ "content_diffusion_date": "20022026",
+ "content_status": "indisponible",
+ "video_factory_id": "6993405a-530b-4ea7-bcb6-4c079eaab6bf"
+ },
+ "variant": "horizontal"
+ }
+]
\ No newline at end of file
diff --git a/sites/france.tv/france.tv.channels.xml b/sites/france.tv/france.tv.channels.xml
new file mode 100644
index 000000000..5eb253597
--- /dev/null
+++ b/sites/france.tv/france.tv.channels.xml
@@ -0,0 +1,19 @@
+
+
+ Arte
+ France 2
+ France 3
+ France 4
+ France 5
+ France 24
+ franceinfo:
+ LCP Public Sénat
+ Mieux
+ TV5 Monde
+ France.tv Sport
+ France.tv Docs
+ France.tv Séries
+ INA
+
+ France.tv
+
diff --git a/sites/france.tv/france.tv.config.js b/sites/france.tv/france.tv.config.js
new file mode 100644
index 000000000..885772634
--- /dev/null
+++ b/sites/france.tv/france.tv.config.js
@@ -0,0 +1,135 @@
+const dayjs = require('dayjs')
+const axios = require('axios')
+const utc = require('dayjs/plugin/utc')
+const timezone = require('dayjs/plugin/timezone')
+const customParseFormat = require('dayjs/plugin/customParseFormat')
+
+dayjs.extend(utc)
+dayjs.extend(timezone)
+dayjs.extend(customParseFormat)
+dayjs.tz.setDefault('Europe/Paris')
+
+// Because France is excellent at pointing hours, their programs ALL start at 5/6 am,
+// so we need to keep track of the earlier day's program to get the midnight programming. How... odd.
+module.exports = {
+ site: 'france.tv',
+ days: 2,
+ url: function ({ channel, date }) {
+ return `https://www.france.tv/api/epg/videos/?date=${date.format('YYYY-MM-DD')}&channel=${channel.site_id}`
+ },
+ parser: async function ({ channel, content, date }) {
+ const programs = []
+ let items = []
+
+ const dayBefore = date.subtract(1, 'd').format('YYYY-MM-DD')
+ const linkDayBefore = `https://www.france.tv/api/epg/videos/?date=${dayBefore}&channel=${channel.site_id}`
+
+ try {
+ const responseDayBefore = await axios.get(linkDayBefore)
+ const programmingDayBefore = responseDayBefore.data || []
+
+ // The broadcast day starts at ~6 AM. Programs with hour < 6 in the day-before API
+ // are actually early morning programs (00:00-05:59) of our target date.
+ if (Array.isArray(programmingDayBefore)) {
+ programmingDayBefore.forEach(item => {
+ const time = item?.content?.broadcastBeginDate
+ if (!time) return
+ const hour = parseInt(time.split('h')[0])
+
+ if (hour < 6) {
+ items.push(item)
+ }
+ })
+ }
+ } catch {
+ // Day before data unavailable, continue with current day only
+ }
+
+ // From the current day's API, only include programs starting from 6h onwards.
+ // Programs with hour < 6 belong to the next calendar day's schedule.
+ try {
+ const currentDayItems = JSON.parse(content) || []
+ if (Array.isArray(currentDayItems)) {
+ currentDayItems.forEach(item => {
+ const time = item?.content?.broadcastBeginDate
+ if (!time) return
+ const hour = parseInt(time.split('h')[0])
+
+ if (hour >= 6) {
+ items.push(item)
+ }
+ })
+ }
+ } catch {
+ return programs
+ }
+
+ items.forEach(item => {
+ const { start, stop } = parseDuration(date, item)
+ if (!start.isValid() || !stop.isValid()) return
+ // Can contain Season and Episode in title, but not always. If title is missing, skip the program
+ if (!item?.content?.title) return
+
+ let title = item.content.title
+ let season = null
+ let episode = null
+
+ const seMatch = title.match(/\s*-?\s*S(\d+)\s+E(\d+)\s*-?\s*/)
+ if (seMatch) {
+ season = parseInt(seMatch[1])
+ episode = parseInt(seMatch[2])
+ title = title.replace(seMatch[0], ' ').replace(/^\s+/, '').replace(/\s+$/, '').trim()
+ }
+
+ const fullTitle = (item.content.titleLeading ? item.content.titleLeading + (title ? ' - ' : '') : '') + title
+
+ programs.push({
+ title: fullTitle,
+ description: item.content.description,
+ image: getImageUrl(item),
+ icon: getImageUrl(item),
+ start,
+ stop,
+ season: season,
+ episode: episode,
+ rating: item.content.csa
+ })
+ })
+
+ return programs
+ }
+}
+
+function parseDuration(date, item) {
+ const current_date = date.format('YYYY-MM-DD')
+ const time = item.content?.broadcastBeginDate
+ const duration = item.content?.duration // e.g. "11 min 45 s", "1 h 30 min", "30 min"
+
+ if (!time) return { start: dayjs(null), stop: dayjs(null) }
+
+ const timeParts = time.split('h')
+
+ let durationInSeconds = 0
+ if (duration) {
+ const durationParts = duration.split(' ')
+ for (let i = 0; i < durationParts.length; i++) {
+ const part = durationParts[i]
+ if (part === 'h' && i > 0) {
+ durationInSeconds += parseInt(durationParts[i - 1]) * 3600
+ } else if (part === 'min' && i > 0) {
+ durationInSeconds += parseInt(durationParts[i - 1]) * 60
+ } else if (part === 's' && i > 0) {
+ durationInSeconds += parseInt(durationParts[i - 1])
+ }
+ }
+ }
+
+ const start = dayjs.utc(`${current_date} ${timeParts[0]}:${timeParts[1]}`, 'YYYY-MM-DD HH:mm')
+ const stop = start.add(durationInSeconds, 'second')
+ return { start, stop }
+}
+
+function getImageUrl(item) {
+ const url = item.content?.thumbnail?.x1
+ return url
+}
diff --git a/sites/france.tv/france.tv.test.js b/sites/france.tv/france.tv.test.js
new file mode 100644
index 000000000..b7be8c070
--- /dev/null
+++ b/sites/france.tv/france.tv.test.js
@@ -0,0 +1,54 @@
+const { parser, url } = require('./france.tv.config.js')
+const axios = require('axios')
+const fs = require('fs')
+const path = require('path')
+const dayjs = require('dayjs')
+const utc = require('dayjs/plugin/utc')
+const customParseFormat = require('dayjs/plugin/customParseFormat')
+dayjs.extend(customParseFormat)
+dayjs.extend(utc)
+
+jest.mock('axios')
+
+const date = dayjs.utc('2026-02-19', 'YYYY-MM-DD').startOf('d')
+const channel = {
+ site_id: 'france-2',
+ xmltv_id: 'France2.fr@HD'
+}
+
+it('can generate valid url', () => {
+ expect(url({ channel, date })).toBe('https://www.france.tv/api/epg/videos/?date=2026-02-19&channel=france-2')
+})
+
+it('can parse response', async () => {
+ axios.get.mockResolvedValue({ data: [] })
+ const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.json'))
+ const results = (await parser({ content, date, channel })).map(p => {
+ p.start = p.start.toJSON()
+ p.stop = p.stop.toJSON()
+ return p
+ })
+
+ expect(results.length).toBe(18)
+ expect(results[0]).toMatchObject({
+ title: 'Le 6h info - Émission du jeudi 19 février 2026',
+ description: "Un rendez-vous réveil-matin, avec un point sur l'actualité assorti de différentes rubriques qui permettent d'en explorer certains aspects plus en profondeur.",
+ image: 'https://medias.france.tv/S9p5NdAs4OR2UbyC1NIQWsYV-K4/240x0/filters:quality(85):format(webp)/b/f/3/e85c2e8fed4a4955965dfff63c3843fb.jpg',
+ start: '2026-02-19T06:00:00.000Z',
+ stop: '2026-02-19T06:30:00.000Z'
+ })
+ expect(results[17]).toMatchObject({
+ title: 'JO Club - Émission du jeudi 19 février 2026',
+ description: "Tous les soirs, tout au long de ces Jeux olympiques d'hiver de Milan-Cortina, Laurent Luyat revient, avec les journalistes et consultants de France Télévisions, sur les épreuves de la journée. Il accueille les athlètes et les médaillés du jour. La journée a été marquée par du combiné nordique, avec l'épreuve par équipes messieurs, les demi-final...",
+ image: 'https://medias.france.tv/xuxaBPNFyhMiVB5eeYrZV_1nPj4/240x0/filters:quality(85):format(webp)/v/p/h/phpmhbhpv.jpg',
+ start: '2026-02-19T23:00:00.000Z',
+ stop: '2026-02-20T00:00:00.000Z'
+ })
+})
+
+it('can handle empty guide', async () => {
+ axios.get.mockResolvedValue({ data: [] })
+ const results = await parser({ content: [], date, channel })
+
+ expect(results).toMatchObject([])
+})
diff --git a/sites/france.tv/readme.md b/sites/france.tv/readme.md
new file mode 100644
index 000000000..368c7a84e
--- /dev/null
+++ b/sites/france.tv/readme.md
@@ -0,0 +1,21 @@
+# france.tv
+
+https://www.france.tv/
+
+### Download the guide
+
+```sh
+npm run grab --- --site=france.tv
+```
+
+### Update channel list
+
+```sh
+npm run channels:parse --- --config=./sites/france.tv/france.tv.config.js --output=./sites/france.tv/france.tv.channels.xml
+```
+
+### Test
+
+```sh
+npm test --- france.tv
+```