72.1M 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.
All times America/New_York. The same day from the API: GET /v1/channels/ch_0hyebzjt/schedule?date=2026-10-14&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:30 | DoppelgangerA woman is haunted by her double. | 2h 22m | ||
| 00:00 | DoppelgangerA woman is haunted by her double. | 1h 53m | ||
| 01:52 | A Haunted House 2Having exorcised the demons of his ex, Malcolm is starting fresh with his new girlfriend. | 1h 59m | ||
| 03:51 | Cockneys vs. ZombiesA heist goes wrong during a zombie outbreak. | 2h 1m | ||
| 03:51 | Cockneys vs. ZombiesA heist goes wrong during a zombie outbreak. | 2h 1m | ||
| 05:52 | Pacific HeightsA couple work hard to renovate their dream house and become landlords to pay for it. | 2h 20m | ||
| 05:52 | Pacific HeightsA couple work hard to renovate their dream house and become landlords to pay for it. | 2h 20m | ||
| 08:12 | The InvitationWhen a man accepts an invitation to a dinner party hosted by his ex-wife, the unsettling past reopens old | 2h 18m | ||
| 10:30 | Body BagsA horror anthology with three chilling tales. | 2h 9m | ||
| 12:39 | Saturn 3Two lovers stationed are intruded upon by an anal-retentive technocrat from Earth | 2h | ||
| 14:39 | LabyrinthSixteen-year-old Sarah is given thirteen hours to solve a labyrinth and rescue her baby brother. | 2h 19m | ||
| 16:58 | Sabrina The Teenage WitchSent by her parents to live with her two eccentric aunts, Sabrina Sawyer discovers on her 16th birthday that she's a witch. | 2h 3m | ||
| 16:58 | Sabrina The Teenage WitchSent by her parents to live with her two eccentric aunts, Sabrina Sawyer discovers on her 16th birthday that she's a witch. | 2h 3m | ||
| 19:01 | The Exorcist IIIA chilling sequel to the horror classic. | 2h 27m | ||
| 19:01 | The Exorcist IIIA chilling sequel to the horror classic. | 2h 27m | ||
| 21:28 | A Haunted HouseMalcolm and Kisha move into their dream home, then learn that a demon also resides there. | 1h 59m | ||
| 23:27 | Night of the DemonsTeens at a Halloween party unleash demons in a haunted house. | 33m |
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_0hyebzjt/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_0hyebzjt/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_0hyebzjt/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_0hyebzjt/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_0hyebzjt/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_0hyebzjt/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_0hyebzjt/schedule?date=2026-10-14, the first programme { "data": [ { "id": "ls_a6bxzxc0", "channel": "ch_0hyebzjt", "start": "2026-10-14T03:30:31Z", "stop": "2026-10-14T05:52:59Z", "title": "Doppelganger", "sub_title": null, "description": "A woman is haunted by her double.", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 17, "date": "2026-10-14", "tz": "America/New_York" } }
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.