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/Belgrade 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/Belgrade. The same day from the API: GET /v1/channels/ch_281d9ycx/schedule?date=2026-10-15&tz=Europe/Belgrade
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:00 | Fudbal - Liga šampiona: Betis - PortoNa predlog francuskog novinara Gabriela Hanota 1955. godine osnovan je Kup prvaka, godišnje kontinentalno takmičenje u kojem nastupaju samo prvaci ... | Fudbal | 2h | |
| 01:00 | Fudbal - Italijanska liga: Lazio - MonzaSeria A je profesionalno fudbalsko takmičenje koje broji 20 ekipa u dvokružnom ligaškom prvenstvu. Još od 1929. godine kada je osnovana, Seria A po... | Fudbal | 2h | |
| 03:00 | Full ImpactPogledajte najbolje golove i najbolje momente italijanske Serije A. | Magazin | 30m | |
| 03:30 | Fudbal - Španska liga: Elche - CeltaPrimera ili popularno La Liga prva je španska fudbalska liga. Sa čak 22 osvojene titule prvaka Evrope španska Primera godinama se smatra najboljom ... | Fudbal | 2h | |
| 05:30 | Fudbal - Španska ligaPrimera ili popularno La Liga prva je španska fudbalska liga. Sa čak 22 osvojene titule prvaka Evrope španska Primera godinama se smatra najboljom ... | Magazin | 30m | |
| 06:00 | Fudbal - Italijanska liga: Lecce - BolognaSeria A je profesionalno fudbalsko takmičenje koje broji 20 ekipa u dvokružnom ligaškom prvenstvu. Još od 1929. godine kada je osnovana, Seria A po... | Fudbal | 2h | |
| 08:00 | Fudbal - Španska liga: Betis - OsasunaPrimera ili popularno La Liga prva je španska fudbalska liga. Sa čak 22 osvojene titule prvaka Evrope španska Primera godinama se smatra najboljom ... | Fudbal | 2h | |
| 10:00 | Fudbal - Italijanska liga: Lecce - BolognaSeria A je profesionalno fudbalsko takmičenje koje broji 20 ekipa u dvokružnom ligaškom prvenstvu. Još od 1929. godine kada je osnovana, Seria A po... | Fudbal | 2h | |
| 12:00 | Fudbal - Španska liga: Racing - ValenciaPrimera ili popularno La Liga prva je španska fudbalska liga. Sa čak 22 osvojene titule prvaka Evrope španska Primera godinama se smatra najboljom ... | Fudbal | 2h | |
| 14:00 | Fudbal - Italijanska liga: Sassuolo - MilanSeria A je profesionalno fudbalsko takmičenje koje broji 20 ekipa u dvokružnom ligaškom prvenstvu. Još od 1929. godine kada je osnovana, Seria A po... | Fudbal | 2h | |
| 16:00 | Fudbal - Španska liga: Real Madrid - VillarrealPrimera ili popularno La Liga prva je španska fudbalska liga. Sa čak 22 osvojene titule prvaka Evrope španska Primera godinama se smatra najboljom ... | Fudbal | 2h | |
| 18:00 | Fudbal - Italijanska liga: Cagliari - JuventusSeria A je profesionalno fudbalsko takmičenje koje broji 20 ekipa u dvokružnom ligaškom prvenstvu. Još od 1929. godine kada je osnovana, Seria A po... | Fudbal | 2h | |
| 20:00 | Sport Brothers LeagueManifestacija posvećena promociji fudbala i zdravih životnih navika u organizaciji Sports Brothers League i FK Bežanija. Na turniru se takmiče deca... | Magazin | 45m | |
| 20:45 | La Liga MomentsPogledajte najbolje momente španske La Lige! | Magazin | 15m | |
| 21:00 | Fudbal - Italijanska ligaSerija A je najviša i najelitnija fudbalska liga u Italiji. Osnovana je 1898, a trenutni format igra se od 1929. godine. Od 2004. godine u svakoj s... | Fudbal | 45m | |
| 21:45 | Fudbal: Italijanska LigaPregled najboljih 100 golova Italijanske lige. | Magazin | 45m | |
| 22:30 | Košarka - Euroleague: Milano - DubaiEuroliga je takmičenje koje je svoj put u svet evropske košarke započelo pod nazivom Kup evropskih prvaka davne 1958. godine, a prvi trofej je osvo... | Košarka | 2h |
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_281d9ycx/schedule?date=2026-10-15&tz=Europe/Belgrade" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_281d9ycx/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_281d9ycx/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_281d9ycx/schedule?date=2026-10-15&tz=Europe/Belgrade"); 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_281d9ycx/schedule?date=2026-10-15&tz=Europe/Belgrade", { 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_281d9ycx/schedule", params={"date": "2026-10-15", "tz": "Europe/Belgrade"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_281d9ycx/schedule?date=2026-10-15, the first programme { "data": [ { "id": "ls_2jv5rdx2", "channel": "ch_281d9ycx", "start": "2026-10-14T21:00:00Z", "stop": "2026-10-14T23:00:00Z", "title": "Fudbal - Liga šampiona: Betis - Porto", "sub_title": null, "description": "Na predlog francuskog novinara Gabriela Hanota 1955. godine osnovan je Kup pr...", "category": [ "fudbal" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 17, "date": "2026-10-15", "tz": "Europe/Belgrade" } }
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 154 countries.