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/Sarajevo 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/Sarajevo. The same day from the API: GET /v1/channels/ch_j6qfzy5w/schedule?date=2026-10-14&tz=Europe/Sarajevo
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 21:00 | LoL - LEC: Summer Dan 16LEC (League of Legends European Championship) najprestižnija je europska liga u videoigri League of Legends. Sezona je podijeljena u tri dijela: zi... | 4h | ||
| 01:00 | LoL - LEC: Summer Dan 17LEC (League of Legends European Championship) najprestižnija je europska liga u videoigri League of Legends. Sezona je podijeljena u tri dijela: zi... | 3h 10m | ||
| 04:10 | EGS - Vrijedi li igrati?Escape Game Show odgovara na najvažnije pitanje kada je riječ o novim naslovima: Vrijedi li igrati? | 10m | ||
| 04:20 | GGGaming emisija za rekreativne i hardcore gamere. Uz humorističan osvrt na aktualne događaje, pokazat ćemo vam svijet gaminga! | 10m | ||
| 04:30 | SGA - Shift 2 Games: Game dizajnProgram nastao u suradnji sa Serbian Gaming Associationom odškrinut će vam vrata u svijet gaminga. Donosimo razgovore s iskusnim gamerima i tvorcim... | 30m | ||
| 05:00 | Escape Game Show: Silent Hill: Townfall - Horor koji smo čekaliEGS je emisija koja se bavi kompjuterskim igrama i igračkom scenom kao i edukacijom roditelja kako da pristupe kompjuterskim igrama. | 1h | ||
| 06:00 | Escape Game Show: Silent Hill: Townfall - Horor koji smo čekaliEGS je emisija koja se bavi kompjuterskim igrama i igračkom scenom kao i edukacijom roditelja kako da pristupe kompjuterskim igrama. | 1h | ||
| 07:00 | E-Sports: League of Legends - EBL: Summer Polufinale Dan 1Sezona Zimskog Splita Esports Balkan League donosi povratak najjačih timova regije i nove nade iz balkanskog esportsa. Veliko finale sezone odlučuj... | 3h 10m | ||
| 10:10 | SGA - Shift 2 Games: Dizajn zvuka u igramaProgram nastao u suradnji sa Serbian Gaming Associationom odškrinut će vam vrata u svijet gaminga. Donosimo razgovore s iskusnim gamerima i tvorcim... | 30m | ||
| 10:40 | SGA - Shift 2 Games: Obrazovanje u gejminguProgram nastao u suradnji sa Serbian Gaming Associationom odškrinut će vam vrata u svijet gaminga. Donosimo razgovore s iskusnim gamerima i tvorcim... | 20m | ||
| 11:00 | E-Sports: League of Legends - EBL: Summer Polufinale Dan 2Sezona Zimskog Splita Esports Balkan League donosi povratak najjačih timova regije i nove nade iz balkanskog esportsa. Veliko finale sezone odlučuj... | 2h 10m | ||
| 13:10 | EGS - Vrijedi li igrati?Escape Game Show odgovara na najvažnije pitanje kada je riječ o novim naslovima: Vrijedi li igrati? | 10m | ||
| 13:20 | GGGaming emisija za rekreativne i hardcore gamere. Uz humorističan osvrt na aktualne događaje, pokazat ćemo vam svijet gaminga! | 10m | ||
| 13:30 | SGA - Shift 2 Games: Produkcija video igaraProgram nastao u suradnji sa Serbian Gaming Associationom odškrinut će vam vrata u svijet gaminga. Donosimo razgovore s iskusnim gamerima i tvorcim... | 30m | ||
| 14:00 | Gran Turismo World Series: Milan - Nations Cup: Round 1 MilanNova sezona Gran Turismo World Seriesa započinje u Milanu, koji će ugostiti prvo ovogodišnje izdanje prestižnog Nations Cupa. Najbolji svjetski voz... | 2h | ||
| 16:00 | Escape Game Show: Onimusha Way of the Sword - Fantastična akciona avanturaEGS je emisija koja se bavi kompjuterskim igrama i igračkom scenom kao i edukacijom roditelja kako da pristupe kompjuterskim igrama. | 1h | ||
| 17:00 | Fortuna podcast: Profesionalni igrač i poznati strimer ft.DoubleAimFortuna ozbiljno shvaća igre, stoga za vas donosimo sve o najnovijim trendovima u gamingu, e-sportovima, kao i zanimljive razgovore s iskusnim gejm... | 1h | ||
| 18:00 | LoL - LEC: Summer Dan 18LEC (League of Legends European Championship) najprestižnija je europska liga u videoigri League of Legends. Sezona je podijeljena u tri dijela: zi... | 4h 30m | ||
| 22:30 | EGS - Vrijedi li igrati?Escape Game Show odgovara na najvažnije pitanje kada je riječ o novim naslovima: Vrijedi li igrati? | 10m | ||
| 22:40 | SGA - Shift 2 Games: Game ArtProgram nastao u suradnji sa Serbian Gaming Associationom odškrinut će vam vrata u svijet gaminga. Donosimo razgovore s iskusnim gamerima i tvorcim... | 5h 20m |
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_j6qfzy5w/schedule?date=2026-10-14&tz=Europe/Sarajevo" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_j6qfzy5w/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_j6qfzy5w/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_j6qfzy5w/schedule?date=2026-10-14&tz=Europe/Sarajevo"); 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_j6qfzy5w/schedule?date=2026-10-14&tz=Europe/Sarajevo", { 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_j6qfzy5w/schedule", params={"date": "2026-10-14", "tz": "Europe/Sarajevo"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_j6qfzy5w/schedule?date=2026-10-14, the first programme { "data": [ { "id": "ls_pavaz5sq", "channel": "ch_j6qfzy5w", "start": "2026-10-13T19:00:00Z", "stop": "2026-10-13T23:00:00Z", "title": "LoL - LEC: Summer Dan 16", "sub_title": null, "description": "LEC (League of Legends European Championship) najprestižnija je europska liga...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 20, "date": "2026-10-14", "tz": "Europe/Sarajevo" } }
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 150 countries.