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 UTC time, what is on now and next, and the same data in your app with one call.
All times UTC. The same day from the API: GET /v1/channels/ch_af0y812s/schedule?date=2026-10-11&tz=UTC
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 03:00 | Vanderpump RulesAngelica finally moves out of the apartment she shared with her ex. Chris plans a romantic gesture for Audrey. Venus hosts SUR's annual Pride celeb... | S12 E12, Pride and Joy | 50m | |
| 03:50 | Ramsay's Kitchen Nightmares USAGordon heads to America in a bid to rescue failing restaurant owners from imminent disaster and provide them with a recipe for success. In this fir... | S3 E1, Hot Potato Café | 50m | |
| 04:40 | Ramsay's Kitchen Nightmares USAGordon visits Flamangos in rural Whitehouse, New Jersey. Mother and daughter owners Adele and Cheryl are stuck in their tropical ways but their res... | S3 E2, Flamangos | 1h 20m | |
| 06:00 | Hollyoaks: OmnibusJames fears that he's being framed. Frankie jumps into action when Leah is found unconscious. Dodger has concerns about Gemma's involvement in Ste'... | 1h 5m | ||
| 07:05 | Rude(ish) TubeA short clip from Rude Tube's naughty little sister Rude-ish Tube, featuring food and animals. | Shorts | 10m | |
| 07:15 | Modern FamilyJay and Manny set out to cut down their own Christmas tree. Meanwhile, Gloria is on edge when her mother visits. And Mitchell does last-minute shop... | S5 E10, The Old Man & the Tree | 30m | |
| 07:45 | Modern FamilyPhil ends up in jail after tricking Luke into taking a dance class. Meanwhile, Jay and Gloria plan birthday parties for Manny and Joe. Later, Mitch... | S5 E11, And One to Grow On | 25m |
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_af0y812s/schedule?date=2026-10-11&tz=UTC" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_af0y812s/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_af0y812s/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_af0y812s/schedule?date=2026-10-11&tz=UTC"); 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_af0y812s/schedule?date=2026-10-11&tz=UTC", { 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_af0y812s/schedule", params={"date": "2026-10-11", "tz": "UTC"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_af0y812s/schedule?date=2026-10-11, the first programme { "data": [ { "id": "ls_wap0hnjd", "channel": "ch_af0y812s", "start": "2026-10-11T03:00:00Z", "stop": "2026-10-11T03:50:00Z", "title": "Vanderpump Rules", "sub_title": "Pride and Joy", "description": "Angelica finally moves out of the apartment she shared with her ex. Chris pla...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 7, "date": "2026-10-11", "tz": "UTC" } }
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.