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_b2kjm388/schedule?date=2026-10-13&tz=UTC
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:29 | Europe's WildernessThis episode is about the capercaillie and the story also begins in the far north: Biologists capture wild animals in central Sweden and take them ... | S02 E01 | 59m | |
| 00:28 | Heroes Of The Wild Frontiers On nowWhat seems calm and tranquil may not necessarily be so. Under the tranquility there maybe a vibrant dynamic world and above water there maybe dange... | S01 E01 | 27m | |
| 00:55 | Heroes Of The Wild FrontiersSnow Leopard is the one of the most elusive big cats in the world. This episode details how the wildlife guards and the wildlife department has set... | S01 E02 | 28m | |
| 01:22 | Destination Wild: Wild IslandsZanzibar is a land of giants. Isolated from mainland Africa these islands harbour some of the most unique animals with many being the largest found... | S01 E01 | 59m | |
| 02:21 | Bucketlist AfricaAfrica: one of the most iconic and diverse continents. It's packed with a spectacular range of habitats and environments, and home to some of the b... | 57m | ||
| 03:17 | Fight for LifeNature is red in tooth and claw – animals face daily battles to protect themselves and secure the resources they need to survive. For predators to ... | 54m | ||
| 04:11 | Lions RuleOn the African plains lions rule. They're not the biggest or fastest animals around, but stealth, teamwork and the strength of the pride means they... | 57m | ||
| 05:08 | Endangered with Michaela StrachanSeeks to find the rare and endangered species of South Africa and establish what we need to do to conserve them. Documenting and recording the stat... | S01 E13 | 28m |
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_b2kjm388/schedule?date=2026-10-13&tz=UTC" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_b2kjm388/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_b2kjm388/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_b2kjm388/schedule?date=2026-10-13&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_b2kjm388/schedule?date=2026-10-13&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_b2kjm388/schedule", params={"date": "2026-10-13", "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_b2kjm388/schedule?date=2026-10-13, the first programme { "data": [ { "id": "ls_kn0wzdy7", "channel": "ch_b2kjm388", "start": "2026-10-12T23:29:38Z", "stop": "2026-10-13T00:28:12Z", "title": "Europe's Wilderness", "sub_title": "S02 E01", "description": "This episode is about the capercaillie and the story also begins in the far n...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 8, "date": "2026-10-13", "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 155 countries.