73.8M 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_nwxf87t2/schedule?date=2026-10-16&tz=Europe/Zurich
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | SpongeBob SchwammkopfSpongeBob durchlebt eine Pechsträhne, als seine glücksbringende Krawattenklammer plötzlich verschwindet. // Als Patrick nicht einschlafen kann, bit... | S15 E3, Sandy's Country Christmas | 25m | |
| 00:25 | SpongeBob SchwammkopfDie Pfadfinder verkaufen Kekse, um sich eine Marsreise zu finanzieren. Mr. Krabs schliesst sich ihnen an und startet einen Wettbewerb. Mrs. Puff is... | S15 E4, UpWard | 30m | |
| 00:55 | SpongeBob SchwammkopfThaddäus fängt als Manager in der Würstchenbude an. SpongeBob bleibt in einem Aufzug stecken. | S15 E5, Unidentified Flailing Octopus | 25m | |
| 01:20 | SpongeBob SchwammkopfSpongeBob entwickelt eine Allergie gegen sein Zuhause und sucht nach einer neuen Unterkunft. Thaddäus lässt sich die Nase operieren und braucht Spo... | S10 E7, Gary's New Toy | 25m | |
| 01:45 | SpongeBob SchwammkopfSpongeBob lernt, dass Nachahmung als ehrlichste Form der Schmeichelei gilt. Doch er kennt seine Grenzen nicht und übertreibt masslos. SpongeBob käm... | Imitations-Irrsinn; Verwurmt | 1h | |
| 02:45 | Schweiz purDiesmal wird die Gegend von Grindelwald über Goms bis zu den Engelhörnern von oben gezeigt. | 15m | ||
| 03:00 | premiumshopping.tvErleben Sie komfortables Einkaufen direkt aus der Schweiz. Das führende Homeshopping-Unternehmen bietet eine grosse Auswahl hochwertiger Produkte u... | 3h | ||
| 06:00 | The MarsupilamisDie ganze Stadt ist mit ihren Handys auf der Jagd nach Crittern, auch die Marsups spielen auf Gran Grans Handy. Mica glaubt, dass Marcel sich für A... | Critter-Jagd / Micas ungewöhnlicher Freund | 25m |
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_nwxf87t2/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_nwxf87t2/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_nwxf87t2/history?from=2025-12-04T00:00:00Z&to=2025-12-05T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_nwxf87t2/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_nwxf87t2/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_nwxf87t2/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_nwxf87t2/schedule?date=2026-10-16, the first programme { "data": [ { "id": "ls_cscyb41c", "channel": "ch_nwxf87t2", "start": "2026-10-15T22:00:00Z", "stop": "2026-10-15T22:25:00Z", "title": "SpongeBob Schwammkopf", "sub_title": "Der Pech-Bob / Der Sandmann kommt", "description": "SpongeBob durchlebt eine Pechsträhne, als seine glücksbringende Krawattenklam...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 8, "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 | Thursday 4 December 2025 | Category |
|---|---|---|
| 03:00 | premiumshopping.tv | |
| 06:00 | Die Patrick Star Show | |
| 06:35 | Die Patrick Star Show | |
| 44 more programmes that day, on Archive | ||
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.