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_amhxnjfp/schedule?date=2026-10-16&tz=UTC
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:30 | Prisoner: Cell Block HVera blames Jim's rosters for her being a physical wreck. Bob admits he is seeing Meg when Tracey challenges him. Doreen is interviewed by Dr Hende... | S2 E73, Episode 155 | 1h | |
| 00:30 | AutopsyThe world learned on June 8, 2018, that Anthony Bourdain had died by suicide. This episode examines the beloved chef, travel writer and documentari... | 55m | ||
| 01:25 | AutopsyOn May 14, 1998, the world was saddened by news that the singer and actor Frank Sinatra had died. Autopsy reports reveal the cause behind the death... | 50m | ||
| 02:15 | Inside the Tower of LondonIt's May 2023 and preparations are under way for one of the biggest royal occasions in seven decades: the coronation of King Charles III, with 17 Y... | S6 E3, Episode 3 | 45m | |
| 03:00 | TeleshoppingShop by phone from the comfort of your home. | 2h | ||
| 05:00 | JML PresentsShop JML, the home for clever ideas. | 30m | ||
| 05:30 | Shop: Thane OffersVisit Thane.tv and browse our selection of award winning home and fitness products that let you do more with less! | 30m | ||
| 06:00 | Cruise TV with LoveitBookitYour one-stop-shop for all things cruise; bringing you the hottest destinations, ground-breaking ships and the latest deals to ensure your next cru... | 1h | ||
| 07:00 | New: Cruise TV with LoveitBookitYour one-stop-shop for all things cruise; bringing you the hottest destinations, ground-breaking ships and the latest deals to ensure your next cru... | 1h | ||
| 08:00 | The Highland VetObservational documentary series following vets in Thurso and Wick. (S2 Ep6) | S2 E6, Episode 6 | 1h | |
| 09:00 | The Highland VetSeries following vets in Thurso and Wick. Shondie and Lee-Ann battle through the night to save a two-month-old Tamaskan puppy with a broken jaw and... | S3 E1, Episode 1 | 1h | |
| 10:00 | Ben Fogle: New Lives in the WildBen meet Aleks, a Norwegian model who now resides in the deserts of Botswana, learning about her incredible journey and meeting her adopted family,... | S20 E1, Bulgaria | 1h | |
| 12:00 | Murder She WroteWhen Jessica is called for jury service, she finds herself with the arduous task of unravelling a double murder. (S2 Ep13) | S2 E13, Trial By Error | 1h | |
| 13:00 | Murder She WroteWhen a number of guests become ill following breakfast at the popular Joshua Peabody Inn, Jessica suspects foul play. (S2 Ep14) | S2 E14, Keep The Home Fries Burning | 1h | |
| 14:00 | Columbo: Troubled WatersA vacation turns into a homicide investigation for Columbo when a murder takes place aboard his cruise liner. Murder mystery thriller starring Pete... | 2h | ||
| 16:00 | Monsters of the Deep: 20,000 Leagues Under the SeaExploring the undersea world of killers like the Anglerfish, Dunkleosteus and Stoplight Loose-Jaw, with insights from the likes of Steve Backshall.... | S1 E1, Episode 1 | 1h | |
| 17:00 | Monsters of the Deep: 20,000 Leagues Under the SeaExploring deep-sea giants like the giant squid and Cookiecutter shark. Steve Backshall uncovers ocean monsters and new discoveries like Ichthyotita... | S1 E2, Episode 2 | 1h | |
| 18:00 | Ben Fogle: New Lives in the WildBen journeys to rural Thailand to meet Yidan, who left city life to build a farm from scratch. As he helps her work, he uncovers the reasons behind... | S20 E3, Italy | 1h | |
| 19:00 | Ben Fogle: New Lives in the Wild...the Wild. The adventurer returns, visiting former war journalist Ali to find out what took his host from reporting on the front line to life on ... | S21 E1, Botswana | 1h | |
| 20:00 | TaggartNew DCI Matt Burke takes over the case of the murder of a politician's activist son, who threatened his father's property deal. Is Jardine too clo... | S18 E1, Death Trap | 2h 5m | |
| 22:05 | Prisoner: Cell Block HSarah leaves Jim's flat in a hurry. Judy tells Tracey to go to Erica about the threatening note. Chrissie worries that her baby will soon be taken ... | S2 E74, Episode 156 | 1h | |
| 23:05 | Prisoner: Cell Block HThe police car is ambushed: the driver from McNally's gang and a policewoman are both shot. Doreen has a visitor at home. (S2 Ep75) | S2 E75, Episode 157 | 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_amhxnjfp/schedule?date=2026-10-16&tz=UTC" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_amhxnjfp/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_amhxnjfp/history?from=2025-10-12T00:00:00Z&to=2025-10-13T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_amhxnjfp/schedule?date=2026-10-16&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_amhxnjfp/schedule?date=2026-10-16&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_amhxnjfp/schedule", params={"date": "2026-10-16", "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_amhxnjfp/schedule?date=2026-10-16, the first programme { "data": [ { "id": "ls_23pbdtcp", "channel": "ch_amhxnjfp", "start": "2026-10-15T23:30:00Z", "stop": "2026-10-16T00:30:00Z", "title": "Prisoner: Cell Block H", "sub_title": null, "description": "Vera blames Jim's rosters for her being a physical wreck. Bob admits he is se...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 22, "date": "2026-10-16", "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 | 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.