74.3M 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 Pacific/Auckland 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 Pacific/Auckland. The same day from the API: GET /v1/channels/ch_fkx1a8ac/schedule?date=2026-10-14&tz=Pacific/Auckland
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:40 | AliveStranded after a plane crash in the snow-swept Andes mountains, members of a Uruguayan rugby team must resort to desperate measures to survive. Bas... | Episode | 2h 5m | |
| 01:45 | The Natural On nowA chance meeting with a beguiling woman shatters the dreams of a young baseballer. Sixteen years later, he is given another shot at the big leagues. | Episode | 2h 15m | |
| 04:00 | Dirty DancingIn the summer of 1963, 17-year-old Frances \"Baby\" Houseman vacations with her parents at a resort, where she meets Johnny the hotel dance instruc... | Episode | 1h 40m | |
| 05:40 | RushmoreAn eccentric youth enlists the help of a local tycoon to win the affections of his schoolteacher, only to find his mentor has designs on her too. | Episode | 1h 35m | |
| 07:15 | The Silent PartnerA bank teller anticipates a robbery and steals most of the cash himself. When the deception is exposed, a chilling game of cat and mouse ensues. | Episode | 1h 45m | |
| 09:00 | Arizona DreamA young man reluctantly leaves New York to attend the wedding of his uncle in Arizona and ends up in some very strange situations. | Episode | 2h 20m | |
| 11:20 | The Long RidersDetective Rixley relentlessly pursues a gang of outlaws led by Jesse James and Cole Younger. | Episode | 1h 40m | |
| 13:00 | The ProducersA conniving Broadway producer and his meek accountant devise a scheme where they charm wealthy old ladies into investing in a theatre show - and th... | Episode | 1h 25m | |
| 14:25 | Dirty Rotten ScoundrelsCompeting for control of the French Riviera, a high class con man and a low brow swindler decide to settle their rivalry with a bet - who can scam ... | Episode | 1h 50m | |
| 16:15 | The Man Who Fell to EarthAn alien travels to Earth in search of water for his drought-stricken planet. However, a woman and greed of other men create complications. | Episode | 2h 15m | |
| 18:30 | American History XA former neo-Nazi skinhead tries to prevent his younger brother from going down the same wrong path that he did. | Episode | 2h | |
| 20:30 | A Star is BornA cynical rock star overlooks his own dwindling career to help an up-and-coming songstress obtain her dreams of stardom. | Episode | 2h 20m | |
| 22:50 | A Man, A Woman And A BankTwo men plan to rob a bank with the help of a computer. However, a photographer complicates their daring scheme. | Episode | 1h 40m |
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_fkx1a8ac/schedule?date=2026-10-14&tz=Pacific/Auckland" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_fkx1a8ac/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_fkx1a8ac/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_fkx1a8ac/schedule?date=2026-10-14&tz=Pacific/Auckland"); 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_fkx1a8ac/schedule?date=2026-10-14&tz=Pacific/Auckland", { 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_fkx1a8ac/schedule", params={"date": "2026-10-14", "tz": "Pacific/Auckland"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_fkx1a8ac/schedule?date=2026-10-14, the first programme { "data": [ { "id": "ls_3rhnbhbn", "channel": "ch_fkx1a8ac", "start": "2026-10-13T10:40:00Z", "stop": "2026-10-13T12:45:00Z", "title": "Alive", "sub_title": null, "description": "Stranded after a plane crash in the snow-swept Andes mountains, members of a ...", "category": [ "episode" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 13, "date": "2026-10-14", "tz": "Pacific/Auckland" } }
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 10 October 2026 | Category |
|---|---|---|
| 23:40 | Sands of Iwo Jima | Episode |
| 01:30 | Richard III | Episode |
| 04:05 | Steel Magnolias | Episode |
| 10 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 150 countries.