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 UTC 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 UTC. The same day from the API: GET /v1/channels/ch_m1gt3d21/schedule?date=2026-10-17&tz=UTC
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 22:50 | In FabricBank cashier Sheila buys a red dress from an intimidating department store. Contains sexual content and some upsetting scenes. [2018] [S] [HD] | 1h 55m | ||
| 00:45 | Roman Abramovich: How He Hid His Fortune - PanoramaHe was the Russian oligarch who brought his wealth to the UK. But what's the truth about Roman Abramovich's fortune? [S,SL] [HD] | 30m | ||
| 01:15 | Time2/3. Officer Bailey hides the truth as pressure mounts in the young offender institution. Contains strong language, some violence and some upsettin... | 1h | ||
| 02:15 | This is BBC TwoHighlights of programmes on BBC Two. [HD] | 2h 45m | ||
| 05:00 | PiripenguinsFlutter's Fossil Find. The Piris find a skeleton buried in the ice and think it's an ancient ancestor. But after a series of strange discoveries, t... | S1 E34, Flutter's Fossil Find | 15m | |
| 05:15 | Big LizardWhen Dad Got the Hiccups. Dad gets a severe case of Proximan hiccups. Big Lizard and Cosima do their best to help, but their attempt to scare Dad g... | S1 E41, When Dad Got The Hiccups | 5m | |
| 05:20 | The Weasy FamilyMission Basketball. Weasy teams up with the cheating Chipmunk to win a game of basketball. [S] [HD] | 10m | ||
| 05:30 | Super Happy Magic ForestCake Out. The heroes quest to find out who is behind a string of cake thefts, but they soon realise that there is more to this mystery than meets t... | S1 E40, Cake Out | 10m | |
| 05:40 | Grizzy and the Lemmings: World TourAll Out for Silk. Grizzy and the Lemmings fight over a silkworm. [S] [HD] | S4 E57, All Out for Silk | 10m | |
| 05:50 | Duck and FrogBall Boy. Duck is a ball boy at an important tennis match, but Frog causes chaos by accidentally filling the automatic ball launcher with oranges t... | S1 E29, Ball Boy | 5m | |
| 05:55 | Pokémon HorizonsWelcome to Blueberry Academy! The Rising Volt Tacklers meet up with new and old friends at Blueberry Academy. [S,AD] [HD] | 25m | ||
| 06:20 | Winx Club - The Magic Is BackThe Firewall. Tecna's magic fails as Omega creatures launch a deadly attack. [S,AD] [HD] | S1 E17, The Firewall | 25m | |
| 06:45 | Blue Peter: Epic World Records......and Shini's Skyscraper Challenge. Epic World Records and Shini's Skyscraper Challenge. Shini scales new heights as she cleans the windows of the... | 25m | ||
| 07:10 | Newsround17/10/2026. Topical news magazine for children. [S] [HD] | 5m | ||
| 07:15 | CountryfileAnita Rani and Sean Fletcher head to the south Pennines. [S] [HD] | 1h | ||
| 08:15 | Gardeners' WorldFrances Tophill is tackling jobs in the autumn garden and introduces plants that keep colour and interest going for as long as possible. [S] [HD] | 1h | ||
| 09:15 | World Track Cycling Championships 2026Live coverage from Shanghai, including the women's madison and women's 1km time trial. [S] [HD] | 4h | ||
| 13:15 | North by NorthwestClassic, darkly comic Hitchcock thriller in which an adman is pursued both by spies, who mistake him for a double agent, and by the police, who thi... | 2h 10m | ||
| 15:25 | Flog It!46/60. Antiques series. At the Museum of Science and Industry in Manchester, Anita Manning and Michael Baggott value some extraordinary antiques in... | 40m | ||
| 16:05 | Wilderness with Simon Reeve3/4. Simon Reeve treks and canoes through Canada's rugged and frozen Yukon territory to meet the people who make the wilderness home and to search ... | S2 E3, Yukon | 1h | |
| 17:05 | Where Eagles DareSeven paratroopers are sent on a seemingly impossible mission. [1968] [S] [HD] | 2h 30m | ||
| 19:35 | Forty Hits of 1986 at the BBCForty classic hits from 1986 taken from the BBC's archives, including George Michael, Simply Red, A-ha, Samantha Fox, Pet Shop Boys and Eurythmics.... | 2h 30m | ||
| 22:05 | TOTP 1986: Big HitsTop of the Pops Big Hits is back with a bang for the year of 1986. Pop, new wave, rock, funk and R&B are all celebrated in this 60-minute special. ... | 1h | ||
| 23:05 | Top of the Pops: The Story of 1986Paul Heaton, Mick Hucknall, Sinitta, The Communards and Swing Out Sister are among the acts steering us through the changes that impacted Britain a... | 1h |
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_m1gt3d21/schedule?date=2026-10-17&tz=UTC" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_m1gt3d21/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_m1gt3d21/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_m1gt3d21/schedule?date=2026-10-17&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_m1gt3d21/schedule?date=2026-10-17&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_m1gt3d21/schedule", params={"date": "2026-10-17", "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_m1gt3d21/schedule?date=2026-10-17, the first programme { "data": [ { "id": "ls_r0ramdx3", "channel": "ch_m1gt3d21", "start": "2026-10-16T22:50:00Z", "stop": "2026-10-17T00:45:00Z", "title": "In Fabric", "sub_title": null, "description": "Bank cashier Sheila buys a red dress from an intimidating department store. C...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 24, "date": "2026-10-17", "tz": "UTC" } }
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.