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. Search any past day on the Archive plan.
All times UTC. The same day from the API: GET /v1/channels/ch_1be48jya/schedule?date=2026-10-15&tz=UTC
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:35 | Series 22 Ep 5 with Emma Thompson | Entertainment | 43m | |
| 00:18 | Series 24 Ep 8 with Nicole Kidman | Entertainment | 48m | |
| 01:06 | Series 16 Ep 15 with Jessica Chastain | Entertainment | 41m | |
| 01:47 | Series 19 Ep 4 with Meryl Streep | Entertainment | 43m | |
| 02:30 | Series 22 Ep 4 with Hillary Clinton | Entertainment | 48m | |
| 03:18 | Series 17 Ep 2 with Carey Mulligan | Entertainment | 42m | |
| 04:00 | Series 22 Ep 10 with Rebel Wilson | Entertainment | 43m | |
| 04:43 | Series 20 Ep 16 with Andrew Garfield | Entertainment | 46m | |
| 05:29 | Series 18 Ep 10 with Lily Tomlin | Entertainment | 42m | |
| 06:11 | Series 16 Ep 2 with Hugh Grant | Entertainment | 43m | |
| 06:54 | Series 21 Ep 11 with Mark Wahlberg | Entertainment | 44m | |
| 07:38 | Series 16 Ep 19 with Sean Penn | Entertainment | 38m | |
| 08:16 | Series 22 Ep 7 wtih Hugh Grant | Entertainment | 43m | |
| 08:59 | Series 20 Ep 6 with Ben Affleck | Entertainment | 45m | |
| 09:44 | Series 19 Ep 5 with Dame Joan Collins | Entertainment | 39m | |
| 10:23 | Series 14 Ep 1 with Harrison Ford | Entertainment | 32m | |
| 10:55 | Series 18 Ep 18 with Julianne Moore | Entertainment | 41m | |
| 11:36 | Series 24 Ep 17 with Sir Patrick Stewart | Entertainment | 42m | |
| 12:18 | Series 18 Ep 7 with Kate Winslet | Entertainment | 39m | |
| 12:57 | Series 20 Ep 10 Carrie Fisher | Entertainment | 44m | |
| 13:41 | Series 20 Ep 17 with Whoopi Goldberg | Entertainment | 43m | |
| 14:24 | Series 19 Ep 12 with Dwayne Johnson | Entertainment | 42m | |
| 15:06 | Series 17 Ep 7 with George Clooney | Entertainment | 48m | |
| 15:54 | Series 24 Ep 12 with Emily Blunt | Entertainment | 42m | |
| 16:36 | Series 16 Ep 8 with Jennifer Aniston | Entertainment | 44m | |
| 17:20 | Series 14 Ep 17 with Dominic Cooper | Entertainment | 39m | |
| 17:59 | Series 18 Ep 12 with Carrie Fisher | Entertainment | 43m | |
| 18:42 | Series 16 Ep 5 with Benedict Cumberbatch | Entertainment | 40m | |
| 19:22 | Series 23 Ep 1 with Emily Blunt | Entertainment | 44m | |
| 20:06 | Series 16 Ep 18 with Jamie Dornan | Entertainment | 41m | |
| 20:47 | Series 22 Ep 1 with Ryan Gosling | Entertainment | 43m | |
| 21:30 | Series 23 Ep 3 with Benedict Cumberbatch | Entertainment | 40m | |
| 22:10 | Series 24 Ep 13 with James McAvoy | Entertainment | 45m | |
| 22:55 | Series 21 Ep 9 with Tom Cruise | Entertainment | 40m | |
| 23:35 | Series 25 Ep 9 with Chris Hemsworth | Entertainment | 44m |
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_1be48jya/schedule?date=2026-10-15&tz=UTC" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_1be48jya/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_1be48jya/history?from=2026-02-07T00:00:00Z&to=2026-02-08T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_1be48jya/schedule?date=2026-10-15&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_1be48jya/schedule?date=2026-10-15&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_1be48jya/schedule", params={"date": "2026-10-15", "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_1be48jya/schedule?date=2026-10-15, the first programme { "data": [ { "id": "ls_djt8s3zv", "channel": "ch_1be48jya", "start": "2026-10-14T23:35:00Z", "stop": "2026-10-15T00:18:00Z", "title": "Series 22 Ep 5 with Emma Thompson", "sub_title": null, "description": null, "category": [ "entertainment" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 35, "date": "2026-10-15", "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 | Saturday 7 February 2026 | Category |
|---|---|---|
| 00:07 | The Graham Norton Show | Entertainment |
| 00:48 | The Graham Norton Show | Entertainment |
| 01:32 | The Graham Norton Show | Entertainment |
| 30 more programmes that day, on Archive | ||
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.