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_srjmd0zd/schedule?date=2026-10-13&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:43 | Hélène et les garçons: L'enregistrementLes filles ont écrit les paroles de la chanson et Hélène l'enregistre sur une cassette. Mais alors que ses amis s'apprêtent à faire le tour des mai... | S1 E51, L'enregistrement | Series, Biographical drama | 27m |
| 00:10 | Hélène et les garçons: Un ingénieur en or massifC'est le jour J ! John Wander, un célèbre ingénieur du son, doit venir écouter les garçons. Hélène et ses amies soignent leur look, tandis que Nico... | S1 E52, Un ingénieur en or massif | Series, Biographical drama | 26m |
| 00:36 | Hélène et les garçons: La séance du siècleL'enregistrement s'est très bien passé et Johanna attend la copie que John a mixée. Or, le lendemain matin, elle ne revient pas seulement avec la c... | S1 E53, La séance du siècle | Series, Biographical drama | 28m |
| 01:04 | Hélène et les garçons: Le mensongeJohanna, qui a décidé de vivre une double idylle avec Christian et John, est au bord de la dépression. Elle décide de trancher et a recours au syst... | S1 E54, Le mensonge | Series, Biographical drama | 28m |
| 01:32 | Hélène et les garçons: La déchéanceChristian est très ébranlé par la révélation de Johanna sur son idylle avec John. Il refuse de croire que c'est pourtant lui qu'elle aime et dispar... | S1 E55, La déchéance | Series, Biographical drama | 25m |
| 01:57 | Hélène et les garçons: Le fond du trouEtienne et Nicolas sont toujours à la recherche de Christian. Nathalie apporte, triomphante, une lettre de rupture que Christian lui a donné pour J... | S1 E56, Le fond du trou | Series, Biographical drama | 27m |
| 02:24 | Hélène et les garçons: Le pardonChristian se remet peu à peu de sa crise de folie mais ne veut plus revoir Johanna. Très malheureuse, cette dernière essaie de le récupérer par tou... | S1 E57, Le pardon | Series, Biographical drama | 28m |
| 02:52 | Hélène et les garçons: Le promoteurUn promoteur ayant décidé de l'acheter, les garçons vont devoir libérer le garage. Que faire ? Christian décide de draguer Sophie, dont le père a u... | S1 E58, Le promoteur | Series, Biographical drama | 28m |
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_srjmd0zd/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_srjmd0zd/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_srjmd0zd/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_srjmd0zd/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_srjmd0zd/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_srjmd0zd/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_srjmd0zd/schedule?date=2026-10-13, the first programme { "data": [ { "id": "ls_j3250qgc", "channel": "ch_srjmd0zd", "start": "2026-10-13T03:43:00Z", "stop": "2026-10-13T04:10:00Z", "title": "Hélène et les garçons: L'enregistrement", "sub_title": "L'enregistrement", "description": "Les filles ont écrit les paroles de la chanson et Hélène l'enregistre sur une...", "category": [ "series", "biographical drama", "drama" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 8, "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 155 countries.