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/Prague 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/Prague. The same day from the API: GET /v1/channels/ch_dxcbqnx2/schedule?date=2026-10-12&tz=Europe/Prague
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | 100% hitoviOpustite se uz najbolje hitove. | 1h | ||
| 01:00 | 24 SATA VIJESTIInformativna emisija koja donosi novosti iz svijeta glazbe. Uključuje premijere videospotova, najave novih singlova i albuma, intervjue s glazbenic... | 5m | ||
| 01:05 | 100% hitoviOpustite se uz najbolje hitove. | 55m | ||
| 02:00 | Noćna stražaDěj se odehrává v současné Moskvě, kde probíhá věčný boj mezi silami světla a tmy. Legenda vypráví o dávném dnu, kdy armády světla a tmy sváděly kr... | Akční, Fantasy | 4h | |
| 06:00 | Dobro jutro CMCPrve gutljaje kave ispijte uz najbolju glazbu na CMC-u. | 2h | ||
| 08:00 | 24 sata vijesti CMCInformativna emisija koja donosi novosti iz svijeta glazbe. Uključuje premijere videospotova, najave novih singlova i albuma, intervjue s glazbenic... | 5m | ||
| 08:05 | 100% hitovi CMCOpustite se uz najbolje hitove. | 55m | ||
| 09:00 | Balade CMCPripremite se za novi radni tjedan opuštajući se uz prekrasne balade samo na CMC televiziji. | 1h | ||
| 10:00 | 100% hitovi CMCOpustite se uz najbolje hitove. | 1h | ||
| 11:00 | CMC MixOpustite se uz mix najboljih hitova. | 1h | ||
| 12:00 | NA IZVORU STIHAKoja su mjesta inspiracije domaćih autora? Svaki tjedan prikazuje se jednan autor ili autorica na njihovom izvoru stiha. | 15m | ||
| 12:15 | Dobar dan CMCOpustite se uz najbolje hitove. | 45m | ||
| 13:00 | CMC MixOpustite se uz mix najboljih hitova. | 2h | ||
| 15:00 | Top 30 - (Nacionalna lista CMC televizije)Mix Garantiran užitak uz najveće hitove. | 45m | ||
| 15:45 | CMC MixOpustite se uz mix najboljih hitova. | 2h 15m | ||
| 18:00 | Nova pločaProvjerite koje su pjesme aktualne na hrvatskoj glazbenoj sceni. | 35m | ||
| 18:35 | 100% hitovi CMCOpustite se uz najbolje hitove. | 25m | ||
| 19:00 | Vijesti CMCSaznajte dnevne novosti i aktualnosti s domaće i strane glazbene scene te pogledajte premijere videospotova. | 15m | ||
| 19:15 | 100% hitovi CMCOpustite se uz najbolje hitove. | 45m | ||
| 20:00 | Večer uz CMCOpustite se uz najbolje hitove. | 1h | ||
| 21:00 | 24 sata vijesti CMCInformativna emisija koja donosi novosti iz svijeta glazbe. Uključuje premijere videospotova, najave novih singlova i albuma, intervjue s glazbenic... | 5m | ||
| 21:05 | TOP 20 - ZabavnihTOP 20 liste na CMC-u. | 1h 55m | ||
| 23:00 | 100% hitovi CMCOpustite se uz najbolje hitove. | 1h |
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_dxcbqnx2/schedule?date=2026-10-12&tz=Europe/Prague" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_dxcbqnx2/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_dxcbqnx2/history?from=2026-02-06T00:00:00Z&to=2026-02-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_dxcbqnx2/schedule?date=2026-10-12&tz=Europe/Prague"); 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_dxcbqnx2/schedule?date=2026-10-12&tz=Europe/Prague", { 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_dxcbqnx2/schedule", params={"date": "2026-10-12", "tz": "Europe/Prague"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_dxcbqnx2/schedule?date=2026-10-12, the first programme { "data": [ { "id": "ls_ypgr68zs", "channel": "ch_dxcbqnx2", "start": "2026-10-11T22:00:00Z", "stop": "2026-10-11T23:00:00Z", "title": "100% hitovi", "sub_title": null, "description": "Opustite se uz najbolje hitove.", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 23, "date": "2026-10-12", "tz": "Europe/Prague" } }
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 | Friday 6 February 2026 | Category |
|---|---|---|
| 06:00 | Dobro jutro | |
| 08:00 | 24 SATA VIJESTI | |
| 08:05 | 100% hitovi | |
| 18 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.