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 America/Mexico_City time, what is on now and next, and the same data in your app with one call.
All times America/Mexico_City. The same day from the API: GET /v1/channels/ch_kejhfaew/schedule?date=2026-10-15&tz=America/Mexico_City
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:00 | Queen of the DesertGertrude Bell's life as an explorer, cartographer, and archaeologist for the British Empire. | 2h 30m | ||
| 01:30 | Rookie BlueTraci dirige su primer caso de homicidio; Oliver busca calma en un retiro con sus amigos. | S4 E10, You Are Here | 30m | |
| 02:00 | Rookie BlueAndy y Sam encubren a Marlo; una redada antidrogas toma un giro inesperado. | S4 E11, Deception | 1h | |
| 03:00 | Rookie BlueLa División 15 sufre una emboscada; Chloe es herida y Oliver enfrenta una decisión de vida o muerte. | S4 E12, Under Fire | 1h | |
| 04:00 | Rookie BlueUn tirador vengativo ataca al equipo; Oliver es secuestrado y el secreto de Marlo sale a la luz. | S4 E13, You Can See the Stars | 30m | |
| 04:30 | Glass JawA champion boxer seeks to reclaim his reputation after a stint in prison. | 2h | ||
| 06:30 | Chica buena malaA medida que avanza en la búsqueda de la verdad, Alice se enfrentará a sus superiores y algo oscuro. | 30m | ||
| 07:00 | Rookie BlueLa División 15, con Sam en cirugía y Chloe en estado crítico, Andy y Dov enfrentan atraco. | S5 E1, Blink | 1h | |
| 08:00 | Rookie BlueDespués del despido de Frank, Oliver es ascendido a sargento interino, Andy es mentor del novato Moore. | S5 E2, All by Her Selfie | 30m | |
| 08:30 | Rookie BlueOficiales incautan bienes ilegales; Andy y Nick atacan un garito, Sam y Andy investigan un caso intrigante. | S5 E3, Heart Breakers, Money Makers | 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_kejhfaew/schedule?date=2026-10-15&tz=America/Mexico_City" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_kejhfaew/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_kejhfaew/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_kejhfaew/schedule?date=2026-10-15&tz=America/Mexico_City"); 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_kejhfaew/schedule?date=2026-10-15&tz=America/Mexico_City", { 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_kejhfaew/schedule", params={"date": "2026-10-15", "tz": "America/Mexico_City"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_kejhfaew/schedule?date=2026-10-15, the first programme { "data": [ { "id": "ls_14v2rc2t", "channel": "ch_kejhfaew", "start": "2026-10-15T05:00:00Z", "stop": "2026-10-15T07:30:00Z", "title": "Queen of the Desert", "sub_title": null, "description": "Gertrude Bell's life as an explorer, cartographer, and archaeologist for the ...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 10, "date": "2026-10-15", "tz": "America/Mexico_City" } }
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.