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_q85w3apt/schedule?date=2026-10-14&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:01 | Garage Sale MysteryA woman investigates a string of burglaries and the death of a friend. | 1h 41m | ||
| 00:42 | Wedding Planner MysteryA wedding planner (Erica Durance) investigates a suspicious death and the kidnapping of a bride. | 1h 40m | ||
| 02:22 | The Blackwater LightshipHallmark Hall of Fame. Tells the compelling story of reconciliation between 3 generations of women. | 1h 49m | ||
| 04:11 | Candles on Bay StreetA married man (Eion Bailey) reunites with an old high-school sweetheart (Alicia Silverstone). | 1h 49m | ||
| 06:00 | Pack of Lies1960s Londoners let British intelligence use their home to spy on their friends across the street. | 1h 40m | ||
| 07:40 | Away & BackHallmark Hall of Fame. Jack, a widowed father of three young children, meets Ginny. | 1h 50m | ||
| 09:30 | Beyond the BlackboardTeacher Stacey Bess (Emily VanCamp) inspires homeless students. | 1h 49m | ||
| 11:19 | The Shell SeekersAn Englishwoman (Angela Lansbury) reviews her life with her adult children in mind. | 1h 51m | ||
| 13:10 | J.L. Family RanchJohn Landsburg faces federal bureaucracy when his old enemy alleges that he doesn't own his ranch. | 1h 38m | ||
| 14:48 | Good Witch HalloweenHallmark Original Movie. Cassie and the town of Middleton are preparing for the annual Harvest Festival. | 1h 35m | ||
| 16:23 | Good Witch: Curse From a RoseCassie's college roommate is on a mission to disrupt Middleton's Halloween festivities. | 1h 38m | ||
| 18:01 | Good Witch: Secrets of Grey HouseCassie (Catherine Bell) welcomes a popular fantasy author and her editor to Grey House. | 1h 38m | ||
| 19:39 | Good Witch: SpellboundHallmark Original Movie. A long-forgotten prophecy is unearthed in the basement of city hall. | 1h 36m | ||
| 21:15 | Good Witch: Tale of Two HeartsCassie's precious family heirloom, a beautiful red ruby, goes missing from the History of Halloween in Middleton museum exhibit just in time for th... | 1h 38m | ||
| 22:53 | Love Struck CaféAn aspiring architect gets the opportunity of a lifetime, but there's an unfortunate catch. | 1h 36m |
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_q85w3apt/schedule?date=2026-10-14&tz=America/New_York" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_q85w3apt/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_q85w3apt/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_q85w3apt/schedule?date=2026-10-14&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_q85w3apt/schedule?date=2026-10-14&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_q85w3apt/schedule", params={"date": "2026-10-14", "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_q85w3apt/schedule?date=2026-10-14, the first programme { "data": [ { "id": "ls_ajbwdht3", "channel": "ch_q85w3apt", "start": "2026-10-14T03:01:00Z", "stop": "2026-10-14T04:42:00Z", "title": "Garage Sale Mystery", "sub_title": null, "description": "A woman investigates a string of burglaries and the death of a friend.", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 15, "date": "2026-10-14", "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 | Monday 13 October 2025 | 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.