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/New_York time, what is on now and next, and the same data in your app with one call.
All times America/New_York. The same day from the API: GET /v1/channels/ch_nahyrkhn/schedule?date=2026-10-13&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 21:56 | Vou te Seguir na EscuridãoUma mulher deprimida com a morte dos pais se envolve com um homem encantador. Quando ele desaparece misteriosamente após entrar em um prédio mal as... | Movie, Supernatural horror | 2h 11m | |
| 00:07 | A Voz do Coração On nowDrew Taylor é um cantor e guitarrista de rock muito arrogante. Quando a crítica musical Kaitlyn assiste a seu show e faz uma crítica destruindo sua... | Movie, Romantic comedy | 1h 45m | |
| 01:52 | Meu Noivo é uma CelebridadeO casamento entre o famoso cantor sertanejo Zane e sua noiva Jeannette precisa ser adiado por causa da agenda de shows lotada do músico. | Drama, Movie | 1h 54m | |
| 03:46 | Um Último BeijoAté que a morte nos separe - não foi tempo suficiente para o casal Max e Abby, pois ele acabou falecendo de maneira inesperada ainda jovem. | Drama, Movie | 2h | |
| 05:46 | After The StormLauren quer reconstruir sua comunidade, incluindo a casa de sua família, após uma tempestade devastadoramente desastrosa. | Drama, Movie | 1h 50m | |
| 07:36 | Meu Amor Por GraceUma história de amor atemporal que se passa no Havaí nos anos 1920, época da segregação racial. Um jovem apaixonado quebrará barreiras sociais em b... | Drama, Movie | 2h 10m | |
| 09:46 | Um casamento muito loucoNatasha e Roman são um jovem casal que sonham com uma festa de casamento em uma cidade do litoral europeu. Mas o padrasto de Natasha, um conservado... | Movie, Dark humor & black comedies | 1h 55m |
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_nahyrkhn/schedule?date=2026-10-13&tz=America/New_York" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_nahyrkhn/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_nahyrkhn/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_nahyrkhn/schedule?date=2026-10-13&tz=America/New_York"); 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_nahyrkhn/schedule?date=2026-10-13&tz=America/New_York", { 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_nahyrkhn/schedule", params={"date": "2026-10-13", "tz": "America/New_York"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_nahyrkhn/schedule?date=2026-10-13, the first programme { "data": [ { "id": "ls_gv6vhp2f", "channel": "ch_nahyrkhn", "start": "2026-10-13T01:56:00Z", "stop": "2026-10-13T04:07:00Z", "title": "Vou te Seguir na Escuridão", "sub_title": null, "description": "Uma mulher deprimida com a morte dos pais se envolve com um homem encantador....", "category": [ "movie", "supernatural horror", "horror" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 7, "date": "2026-10-13", "tz": "America/New_York" } }
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.