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 Europe/Zurich 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 Europe/Zurich. The same day from the API: GET /v1/channels/ch_b83g80x9/schedule?date=2026-10-16&tz=Europe/Zurich
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | Stargate SG-1Während einer Mission befindet sich das SG-1-Team plötzlich inmitten einer Schlacht zwischen einer Gruppe von Stargate-Soldaten und der Jaffa Armee... | S3 E9, Rules of Engagement | 45m | |
| 00:45 | Stargate SG-1Als das SG 1-Team eine Rettungsaktion aufgrund der gefangengenommenen Abydosier unternimmt, erblickt Daniel seine lang vermisste Frau Sha're. Er fo... | Sha'res Tod | 45m | |
| 01:30 | Stargate SG-1SG 1 erfährt von einem Planeten, auf dem alle Bewohner an Amnesie leiden. Keiner kann sich noch an etwas erinnern vor dem "Vorlix", einem Ereignis,... | S3 E11, Past and Present | 45m | |
| 02:15 | Stargate SG-1Sams Vater Jacob wurde von Sokar gekidnappt und auf einen Trabanten namens Netu verschleppt. Martouf macht sich auf den Weg, um Jacob zu retten. Do... | S3 E12, Jolinar's Memories | 45m | |
| 03:00 | Star Trek: EnterpriseArcher und der von dem Suliban Silik getötete Daniels sind in der Zukunft unterwegs. Sie sind entsetzt über das Ausmass der Vernichtung, das die St... | S2 E1, Shockwave (2) | 45m | |
| 03:45 | Star Trek: EnterpriseT'Pol schreibt die Geschichte neu. Bei einer ausgelassenen Feier zu Ehren ihres Jahrestages auf der Enterprise erzählt sie aus alten Tagen auf der ... | S2 E2, Carbon Creek | 45m | |
| 04:30 | Stargate AtlantisBei Experimenten mit einem Retrovirus, der das Potenzial aufweist, die Wraith in Menschen zurückzuverwandeln, gerät Col. Sheppards Leben aus Verseh... | S2 E7, Instinct | 45m | |
| 05:15 | Stargate AtlantisDas Atlantis-Team muss so schnell wie möglich eine Möglichkeit finden, um Sheppards Verwandlung in einen Wraith aufzuhalten und rückgängig zu machen. | S2 E8, Conversion | 45m | |
| 06:00 | Star Trek: Science vs. FictionIn diesem Special beschäftigt sich Astrophysiker Prof. Dr. Harald Lesch mit Impuls- und Warpantrieben. Dabei erklärt er, welche physischen Phänomen... | Impuls- und Warpantrieb | 30m |
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_b83g80x9/schedule?date=2026-10-16&tz=Europe/Zurich" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_b83g80x9/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_b83g80x9/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_b83g80x9/schedule?date=2026-10-16&tz=Europe/Zurich"); 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_b83g80x9/schedule?date=2026-10-16&tz=Europe/Zurich", { 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_b83g80x9/schedule", params={"date": "2026-10-16", "tz": "Europe/Zurich"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_b83g80x9/schedule?date=2026-10-16, the first programme { "data": [ { "id": "ls_h009xtq8", "channel": "ch_b83g80x9", "start": "2026-10-15T22:00:00Z", "stop": "2026-10-15T22:45:00Z", "title": "Stargate SG-1", "sub_title": "Regeln der Kriegsführung", "description": "Während einer Mission befindet sich das SG-1-Team plötzlich inmitten einer Sc...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 9, "date": "2026-10-16", "tz": "Europe/Zurich" } }
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 | Monday 13 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.
A free key in a minute, with Google. No card. Yesterday and today on every channel in 150 countries.