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 Europe/Zurich 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 Europe/Zurich. The same day from the API: GET /v1/channels/ch_a3y5mf9q/schedule?date=2026-10-12&tz=Europe/Zurich
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:37 | Building GreenIn downtown Guangzhou, China, one of the greenest structures on earth is rising, known as Pearl River Tower. | Building Green: Episode 4 | 49m | |
| 00:27 | Dancing on IcebergsIn 2018 Kiwi choreographer Corey Baker made history when he filmed a world first; a dance film to highlight the impact of climate change on Antarct... | 1h 25m | ||
| 01:51 | Top Dive SitesMaking up nearly seven hundred islands, cays, and coral reef deposits, the Bahamas boasts a diverse ecosystem. | Bahamas | 29m | |
| 02:21 | Top Dive SitesThe Addu and Foammulah Atolls in the Maldives are home to tropical fish and vast stretches of coral reefs. | Maldives | 30m | |
| 02:50 | Top Dive SitesSouth of the Tropic of Cancer lie the small islands of Revillagigedo. | Baja-Revillagigedo | 30m | |
| 03:20 | Top Dive SitesAt the perfect crossroads linking three continents – Asia, Africa and Europe – lies Aqaba. | Aqaba | 19m | |
| 03:39 | ŌSENIŌSENI. | 8m | ||
| 03:47 | NIO KO BOKKNIO KO BOKK. | 13m | ||
| 04:00 | Top Dive SitesAt the perfect crossroads linking three continents – Asia, Africa and Europe – lies Aqaba. | Aqaba | 12m | |
| 04:11 | Top Dive SitesIf anything stands out in the Filipino town of Anilao, it is the reefs, a UNESCO World Heritage Site. | Anilao | 30m | |
| 04:41 | Top Dive SitesSeychelles turquoise waters hide more than 1000 fish species, making it a prime destination for diving. | Seychelles | 29m | |
| 05:10 | Top Dive SitesGardens of colored corals, marine animals and amazing wrecks contribute to the splendor of Brazil's Pernambuco. | Brazil | 28m | |
| 05:39 | ŌSENIŌSENI. | 10m | ||
| 05:48 | Aquarium: An Aquatic LifeJoin us as we delve into the inner workings of the Two Oceans Aquarium and meet the team who keep the machine running. | S1 E1, Slimy is the New Fuzzy | 59m | |
| 06:48 | Aquarium: An Aquatic LifeThis episode will introduce you to some of the Aquarium's most weird and wonderful inhabitants. | S1 E2, Seal the Deal | 59m | |
| 07:47 | Aquarium: An Aquatic LifeCome and meet one of the most popular attractions of the Two Oceans Aquarium: the party of penguins. | S1 E3, Ready for the Jelly | 59m | |
| 08:46 | Aquarium: An Aquatic LifeEver wondered how to look after dozens of tiny turtles. | S1 E4, Otter Tale | 59m | |
| 09:45 | Aquarium: An Aquatic LifeIn the aftermath of Cape Town's biggest storm in 2 decades, there’s a whole lot of work to be done at the Two Oceans Aquarium. | S1 E5, Ophelia the Octopus | 58m | |
| 10:42 | Handmade in BangladeshBangladesh’s story reveals a nation on the climate front line, shaped and threatened by water. | 1h 18m | ||
| 12:00 | NIO KO BOKKNIO KO BOKK. | 12m | ||
| 12:12 | Roaring with PrideThe lions hunt for giraffe and Kwali zones in on an unsuspecting zebra. | Roaring with Pride Lions for Africa | 50m | |
| 13:02 | Roaring with PridePhyre has to be darted to keep the balance in the pride healthy. | Roaring with Pride The Lions Share | 50m | |
| 13:52 | Roaring with PrideA historical moment is notched up for Wakanaka as she proves her predatory prowess. | Roaring with Pride Just Lion Here | 50m | |
| 14:42 | Roaring with PrideAn influx of volunteers have arrives and Nathan instructs them on how to treat, walk and cope with lions. | Roaring with Pride Predator's Progress | 50m | |
| 15:31 | Roaring with PrideWe get a first peek at the adorable additions in the denning enclosure. | Roaring with Pride Strike Force! | 50m | |
| 16:21 | Roaring with PridePenya and Paza encounter a python and the adorable cubs go on their first bush outing. | Roaring with Pride Destined for Glory | 50m | |
| 17:11 | OUTDEH: The Youth of JamaicaGet ready to be swept away by the energy, the struggles, and the unwavering spirit of three young Jamaican men as they redefine success on their ow... | 1h 25m | ||
| 18:36 | Finding Little ItalyLiguria is a land of picture-perfect villages, atmospheric ghost towns, seaside gems & grandiose villas. | S1 E1, Linguria | 53m | |
| 19:29 | Finding Little ItalyFrom the wines of Chianti to the artistic cities of Florence and Siena, Tuscany is the most Italian of regions. | S1 E2, Toscana | 53m | |
| 20:22 | Finding Little ItalyUmbria, the ‘green heart of Italy’, the ‘wilder Tuscany’, is little Italy in its purest form. | S1 E3, Umbria | 54m | |
| 21:16 | Finding Little ItalyLazio is an enormous and complex region that comprises medieval castles, pretty villages and shimmering lakes. | S1 E4, Lazio | 53m | |
| 22:10 | Finding Little ItalyEmilia-Romagna: origin of Parma ham, parmesan cheese, balsamic vinegar and Bolognese sauce. | S1 E5, Emilia | 54m | |
| 23:03 | Finding Little ItalyA land full of culinary riches, from the finest Italian wines to those nuggets of delight, the truffles. | S1 E6, Piemonte | 52m | |
| 23:55 | Save The Fear For LaterSave The Fear For Later. | 14m |
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_a3y5mf9q/schedule?date=2026-10-12&tz=Europe/Zurich" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_a3y5mf9q/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_a3y5mf9q/history?from=2025-10-12T00:00:00Z&to=2025-10-13T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_a3y5mf9q/schedule?date=2026-10-12&tz=Europe/Zurich"); 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_a3y5mf9q/schedule?date=2026-10-12&tz=Europe/Zurich", { 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_a3y5mf9q/schedule", params={"date": "2026-10-12", "tz": "Europe/Zurich"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_a3y5mf9q/schedule?date=2026-10-12, the first programme { "data": [ { "id": "ls_498djthp", "channel": "ch_a3y5mf9q", "start": "2026-10-11T21:37:53Z", "stop": "2026-10-11T22:27:17Z", "title": "Building Green", "sub_title": "Building Green: Episode 4", "description": "In downtown Guangzhou, China, one of the greenest structures on earth is risi...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 34, "date": "2026-10-12", "tz": "Europe/Zurich" } }
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 | Sunday 12 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 155 countries.