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 Europe/Moscow time, what is on now and next, and the same data in your app with one call.
All times Europe/Moscow. The same day from the API: GET /v1/channels/ch_3rs5je7a/schedule?date=2026-10-11&tz=Europe/Moscow
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:52 | DUMB S02E06 | 36m | ||
| 00:28 | DUMB S02E07 | 37m | ||
| 01:05 | DUMB S02E08 | 37m | ||
| 01:42 | DUMB S02E09 | 39m | ||
| 02:21 | DUMB S02E10 | 41m | ||
| 03:02 | DUMB S02E11 | 41m | ||
| 03:43 | DUMB S02E12 | 44m | ||
| 04:27 | DUMB S02E13 | 34m | ||
| 05:01 | DUMB S02E14 | 37m | ||
| 05:38 | DUMB S02E15 | 31m | ||
| 06:09 | DUMB S02E16 | 34m | ||
| 06:43 | DUMB S02E17 | 34m | ||
| 07:17 | DUMB S02E18 | 33m | ||
| 07:50 | DUMB S02E19 | 34m | ||
| 08:24 | DUMB S02E20 | 39m | ||
| 09:03 | DUMB S02E21 | 30m | ||
| 09:33 | DUMB S02E22 | 30m | ||
| 10:03 | DUMB S02E23 | 35m | ||
| 10:38 | DUMB S02E24 | 39m | ||
| 11:17 | DUMB S02E25 | 32m | ||
| 11:49 | Johnny and the Galilee Knights S01E01 | 45m | ||
| 12:34 | Johnny and the Galilee Knights S01E02 | 30m | ||
| 13:04 | Johnny and the Galilee Knights S01E03 | 28m | ||
| 13:32 | Johnny and the Galilee Knights S01E04 | 26m | ||
| 13:58 | Johnny and the Galilee Knights S01E05 | 28m | ||
| 14:26 | Johnny and the Galilee Knights S01E06 | 26m | ||
| 14:52 | Johnny and the Galilee Knights S01E07 | 31m | ||
| 15:23 | Johnny and the Galilee Knights S01E08 | 25m | ||
| 15:48 | Johnny and the Galilee Knights S01E09 | 31m | ||
| 16:19 | Johnny and the Galilee Knights S01E10 | 33m | ||
| 16:52 | Johnny and the Galilee Knights S01E11 | 30m | ||
| 17:22 | Johnny and the Galilee Knights S01E12 | 27m | ||
| 17:49 | Johnny and the Galilee Knights S01E13 | 43m | ||
| 18:32 | DUMB S02E01 | 35m | ||
| 19:07 | DUMB S02E02 | 32m | ||
| 19:39 | DUMB S02E03 | 34m | ||
| 20:13 | DUMB S02E04 | 30m | ||
| 20:43 | DUMB S02E05 | 34m | ||
| 21:17 | DUMB S02E06 | 36m | ||
| 21:53 | DUMB S02E07 | 37m | ||
| 22:30 | DUMB S02E08 | 37m | ||
| 23:07 | DUMB S02E09 | 40m | ||
| 23:47 | DUMB S02E10 | 40m |
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_3rs5je7a/schedule?date=2026-10-11&tz=Europe/Moscow" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_3rs5je7a/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_3rs5je7a/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_3rs5je7a/schedule?date=2026-10-11&tz=Europe/Moscow"); 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_3rs5je7a/schedule?date=2026-10-11&tz=Europe/Moscow", { 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_3rs5je7a/schedule", params={"date": "2026-10-11", "tz": "Europe/Moscow"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_3rs5je7a/schedule?date=2026-10-11, the first programme { "data": [ { "id": "ls_4ag48a2j", "channel": "ch_3rs5je7a", "start": "2026-10-10T20:52:00Z", "stop": "2026-10-10T21:28:00Z", "title": "DUMB S02E06", "sub_title": null, "description": null, "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 43, "date": "2026-10-11", "tz": "Europe/Moscow" } }
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.