73.8M listings
Every country's schedule under one key, one shape and one set of ids.
GET /v1/now
What every channel in a country is showing this minute, with the next programme after it.
MIT, no lock-in
Every lab tool reads only the public API with your own key, so it runs on the free key.
Working normally
Checked every minute from outside our own servers.
The full schedule in America/New_York time, what is on now and next, and the same data in your app with one call. Search any past day on the Archive plan.
All times America/New_York. The same day from the API: GET /v1/channels/ch_d3ze55kw/schedule?date=2026-10-13&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | Untold Stories of the ER: An ER MiracleA young boy is taken to the ER after being in a horrific accident. His head is severed and doctors race to save his life. | S2 E13, An ER Miracle | Series, Human interest | 1h |
| 01:00 | Killer MysteriesA deranged man, with an unforgettable nickname, terrorizes New York City in the late 1970s, leaving a trail of dead and wounded in his wake. | The Son of Sam | Series, Documentary | 30m |
| 01:30 | Killer MysteriesA soccer mom moonlighting as an escort disappears from Western Colorado. | The Escort Murder | Series, Documentary | 30m |
| 02:00 | Killer MysteriesA drug abuser kills an innocent coed in Oregon. | Joel Courtney | Documentary, Series | 30m |
| 02:30 | Killer MysteriesA short-order cook with aspirations of country stardom falls on hard times. | Horror in Tennessee | Documentary, Series | 30m |
| 03:00 | I Lived with a KillerRichard Beasley uses a Craigslist ad to lure three men to their deaths. | S1 E2, The Playboy Killer | Documentary, Series | 1h |
| 04:00 | I Lived with a KillerMichael Bear Carson and his wife, Suzan, leave a trail of death when they set out to kill witches. | S1 E8, The Iceman Richard Kuklinski | Documentary, Series | 1h |
| 05:00 | Dr. G: Medical ExaminerA train passenger behaves oddly en route to Arizona and then disappears. The next day his bloodied body is found in Texas. Dr. G attempts to piece ... | S3 E5, Deadly Arrest | Human interest, Series | 1h |
| 06:00 | Dr. G: Medical Examiner On nowDario Romano is found dead by his son at the bottom of the attic ladder. What happened to this 45-year-old? With Dr. G’s guidance, Dr. Stephany mus... | S6 E11, A Deadly Deal | Human interest, Series | 1h |
| 07:00 | Dr. G: Medical ExaminerA quadriplegic woman loved by her community is found dead in an Orlando park 150ft from her motorized wheelchair. Children find her lifeless body f... | S2 E12, Kiss of Death? | Human interest, Series | 1h |
| 08:00 | I Shouldn't Be AliveA man drives his quad bike in the Canadian Wilderness and loses control of it. | S3 E3, Nightmare on the Mountain | Documentary, Series | 1h |
| 09:00 | I Shouldn't Be AliveThree friends sky diving trip goes horribly wrong when their plane gets caught by a storm. | S3 E6, Fear in Freefall | Documentary, Series | 1h |
| 10:00 | I Shouldn't Be AliveLost in the rain forest Join jungle guide Myke Hawke in the Amazon as he wrestles anacondas, spots deadly poisons, and tries to survive and make it... | S1 E3, Escape from the Amazon | Documentary, Series | 1h |
| 15:00 | Almost UnsolvedA young nurse is murdered on her way to work, and though a suspect is charged and imprisoned, the entire investigation is called into question. | S1 E3, Travesty | Drama, Series | 1h |
| 16:00 | Almost UnsolvedAn unsolved double murder becomes Vancouver's most notorious cold case when a worker discovers a shallow grave in a famous park. | S1 E17, Closure | Drama, Series | 1h |
| 17:00 | World's Most Evil KillersStephen Farrow committed two murders in early 2012 motivated by an obsessive hatred of Christianity, which he attributed to sexual abuse from a pri... | Stephen Farrow | Documentary, Series | 1h |
| 18:00 | World's Most Evil Killers: Joe O'ReillyLess than 20 minutes after dropping her children off at school, Rachel O'Reilly was murdered. | Joe O'Reilly | Drama, Series | 1h |
Copy, add your key, run. The free key reads yesterday and today on every channel, 500 calls a day.
curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_d3ze55kw/schedule?date=2026-10-13&tz=America/New_York" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_d3ze55kw/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_d3ze55kw/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_d3ze55kw/schedule?date=2026-10-13&tz=America/New_York"); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("TVG_KEY")], ]); foreach (json_decode(curl_exec($ch), true)["data"] as $slot) { echo $slot["start"], " ", $slot["title"], "\n"; }
const r = await fetch("https://api.tvguideapi.com/v1/channels/ch_d3ze55kw/schedule?date=2026-10-13&tz=America/New_York", { headers: { Authorization: `Bearer ${process.env.TVG_KEY}` }, }); const { data } = await r.json(); data.forEach(s => console.log(s.start, s.title, s.flags.live ? "LIVE" : ""));
import os, requests r = requests.get( "https://api.tvguideapi.com/v1/channels/ch_d3ze55kw/schedule", params={"date": "2026-10-13", "tz": "America/New_York"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_d3ze55kw/schedule?date=2026-10-13, the first programme { "data": [ { "id": "ls_5z52gjxd", "channel": "ch_d3ze55kw", "start": "2026-10-13T04:00:00Z", "stop": "2026-10-13T05:00:00Z", "title": "Untold Stories of the ER: An ER Miracle", "sub_title": "An ER Miracle", "description": "A young boy is taken to the ER after being in a horrific accident. His head i...", "category": [ "series", "human interest", "reality" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 17, "date": "2026-10-13", "tz": "America/New_York" } }
What was on, on any date we hold: for research, catch-up, clip finding or proving a broadcast. Any window up to 31 days with /v1/channels/{id}/history on the Archive plan.
| Time | Tuesday 10 October 2023 | Category |
|---|---|---|
| Nothing held for that day. Try another date. | ||
8 calls cover a channel from its details to its past. Each one opens in the documentation with Try it.
A free key in a minute, with Google. No card. Yesterday and today on every channel in 150 countries.