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/Moscow 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/Moscow. The same day from the API: GET /v1/channels/ch_e1wv37k3/schedule?date=2026-10-16&tz=Europe/Moscow
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:58 | Утиные истории | 18 – Удивительное приключение на море | 22m | ||
| 00:20 | Утиные истории | 19 – Загадки Бермудского треугольника | 23m | ||
| 00:43 | Утиные истории | 20 – Лошадкины штучки | 23m | ||
| 01:06 | Утиные истории | 21 – Проклятье замка Макдак | 23m | ||
| 01:29 | Утиные истории | 22 – Оборотни | 23m | ||
| 01:52 | Утиные истории | 23 – Супер Пупс! | 23m | ||
| 02:15 | Утиные истории | 24 – Отель Стрендж Дак | 23m | ||
| 02:38 | Утиные истории | 25 – Решающая битва Зигзага | 23m | ||
| 03:01 | Утиные истории | 26 – Узник Акватраса | 23m | ||
| 03:24 | Утиные истории | 27 – С возвращением, милый Гомэр! | 23m | ||
| 03:47 | Утиные истории | 28 – Много шума из-за Макдака | 23m | ||
| 04:10 | Утиные истории | 29 – Высший пилотаж | 23m | ||
| 04:33 | Утиные истории | 30 – Куда Макдак утят не гонял | 23m | ||
| 04:56 | Утиные истории | 31 – Похитители Роботов | 23m | ||
| 05:19 | Утиные истории | 32 – Дело-труба | 23m | ||
| 05:42 | Утиные истории | 33 – Рыба-кит большие хлопоты сулит | 23m | ||
| 06:05 | Утиные истории | 34 – Утки-аквалангисты | 23m | ||
| 06:28 | Утиные истории | 35 – Кто богаче | 23m | ||
| 06:51 | Утиные истории | 36 – Утки на Диком Западе | 23m | ||
| 07:14 | Утиные истории | 37 – Ускоритель времени | 23m | ||
| 07:37 | Утиные истории | 38 – В австралийской глубинке | 23m | ||
| 08:00 | Утиные истории | 39 – В поисках пропавшей арфы | 23m | ||
| 08:23 | Утиные истории | 40 – За богатством в страну гномов | 23m | ||
| 08:46 | Утиные истории | 41 – Погоня за золотым руном | 23m | ||
| 09:09 | Утиные истории | 42 – Скрудж разоряется | 23m | ||
| 09:32 | Утиные истории | 43 – Утка что надо | 23m | ||
| 09:55 | Утиные истории | 44 – Скруджерелло | 23m | ||
| 10:18 | Утиные истории | 45 – Агент утка-00 | 23m | ||
| 10:41 | Утиные истории | 46 – Король джунглей | 23m | ||
| 11:04 | Утиные истории | 47 – Утята в будущем | 23m | ||
| 11:27 | Утиные истории | 48 – Дакворт взбунтовался | 23m | ||
| 11:50 | Утиные истории | 49 – Первая авария Зигзага | 23m | ||
| 12:13 | Утиные истории | 50 – Неуязвимый великан | 23m | ||
| 12:36 | Утиные истории | 51 – При удаче гривенника хватит | 22m | ||
| 12:58 | Утиные истории | 52 – Железная маска | 23m | ||
| 13:21 | Утиные истории | 53 – Ни капельки не страшно | 23m | ||
| 13:44 | Утиные истории | 54 – Доктор Джекилл и мистер Макдак | 23m | ||
| 14:07 | Утиные истории | 55 – Дело о десяти центах | 23m | ||
| 14:30 | Утиные истории | 56 – Свистать всех наверх | 23m | ||
| 14:53 | Утиные истории | 57 – Марафон фильмов ужасов | 23m | ||
| 15:16 | Утиные истории | 58 – Племянники против Купидона | 23m | ||
| 15:39 | Утиные истории | 59 – Засекаем время | 23m | ||
| 16:02 | Утиные истории | 60 – Селезень, который мог стать королём | 23m | ||
| 16:25 | Утиные истории | 61 – Бабби в опасности | 23m | ||
| 16:48 | Утиные истории | 62 – Утиный переполох | 23m | ||
| 17:11 | Утиные истории | 63 – Пещера Али-Баббы | 23m | ||
| 17:34 | Утиные истории | 64 – Текущий счёт | 23m | ||
| 17:57 | Утиные истории | 65 – Замороженный счёт | 23m | ||
| 18:20 | Утиные истории | 66 – Приключения утко-робота | 23m | ||
| 18:43 | Утиные истории | 67 – Клуб миллиардеров Братьев Гавс | 23m | ||
| 19:06 | Утиные истории | 68 – Спасти деньги | 23m | ||
| 19:29 | Утиные истории | 69 – Страна Тра-ля-ля | 23m | ||
| 19:52 | Утиные истории | 70 – Моя мама ясновидящая | 23m | ||
| 20:15 | Утиные истории | 71 – День карманных денег | 23m | ||
| 20:38 | Утиные истории | 72 – Баббео и Джульетта | 23m | ||
| 21:01 | Утиные истории | 73 – Три добрых мамочки | 23m | ||
| 21:24 | Утиные истории | 74 – Юные воротилы бизнеса | 23m | ||
| 21:47 | Утиные истории | 75 – Скрудж – синий воротничок | 23m | ||
| 22:10 | Утиные истории | 76 – Металлические страсти | 23m | ||
| 22:33 | Утиные истории | 77 – Великое прозрение Бабби | 23m | ||
| 22:56 | Утиные истории | 78 – Денежная инфляция | 23m | ||
| 23:19 | Утиные истории | 79 – Гавсомания | 23m | ||
| 23:42 | Утиные истории | 80 – Великое надувательство | 23m |
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_e1wv37k3/schedule?date=2026-10-16&tz=Europe/Moscow" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_e1wv37k3/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_e1wv37k3/history?from=2026-01-28T00:00:00Z&to=2026-01-29T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_e1wv37k3/schedule?date=2026-10-16&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_e1wv37k3/schedule?date=2026-10-16&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_e1wv37k3/schedule", params={"date": "2026-10-16", "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_e1wv37k3/schedule?date=2026-10-16, the first programme { "data": [ { "id": "ls_6hr556ym", "channel": "ch_e1wv37k3", "start": "2026-10-15T20:58:00Z", "stop": "2026-10-15T21:20:00Z", "title": "Утиные истории | 18 – Удивительное приключение на море", "sub_title": null, "description": null, "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 63, "date": "2026-10-16", "tz": "Europe/Moscow" } }
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 | Wednesday 28 January 2026 | Category |
|---|---|---|
| 19:11 | Флинтстоуны 4, с. 13 | |
| 19:33 | Флинтстоуны 4, с. 14 – The Flintstones: The Masquerade Party | |
| 19:55 | Флинтстоуны 4, с. 15 | |
| 10 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.