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 UTC 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 UTC. The same day from the API: GET /v1/channels/ch_xb89ekqj/schedule?date=2026-10-13&tz=UTC
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:00 | Premier League 26/27 - Coventry City x Newcastle UnitedAssiste ao jogo da Premier League entre Coventry City x Newcastle United. | 2627 | Futebol | 2h |
| 01:00 | Top Ou Nem Por Isso - Top Ou Nem Por Isso | 2627 | Futebol | 1h |
| 02:00 | Bundesliga 26/27 - Mainz 05 x B. LeverkusenAssiste ao jogo da Bundesliga entre Mainz 05 x Leverkusen. | 2627 | Futebol | 2h |
| 04:00 | Eredivisie 2026-27 - PSV x HeerenveenAssiste ao jogo de Eredivisie entre PSV x Heerenveen. | 2627 | Futebol | 2h |
| 06:00 | 2. Bundesliga 2026-27 - Hertha BSC x Greuther FürthAssiste ao jogo da 2 Bundesliga entre Hertha BSC x Greuther Furth. | 2627 | Futebol | 2h |
| 08:00 | La Liga EA Sports 2026-27 - Alavés x At. MadridAssiste ao jogo da LALIGA entre Alavés x Atl. Madrid. | 2627 | Futebol | 2h |
| 10:00 | Bundesliga 26/27 - B. Dortmund x Werder BremenAssiste ao jogo da Bundesliga entre Dortmund x Werder Bremen. | 2627 | Futebol | 2h |
| 12:00 | Bundesliga 26/27 - Augsburg x B. MuniqueAssiste ao jogo da Bundesliga entre Augsburg x Bayern. | 2627 | Futebol | 2h |
| 14:00 | Premier League 26/27 - Arsenal x Leeds On nowAssiste ao jogo da Premier League entre Arsenal x Leeds. | 2627 | Futebol | 2h |
| 16:00 | Informação Não Disponibilizada Pelo Canal | 2627 | Futebol | 45m |
| 16:45 | La Liga Rookies | Magazine desportivo | 15m | |
| 17:00 | Resumos DAZN - UEFA Champions League 26/27 - Sporting x GalatasarayOs melhores momentos desta jornada da UCL. | 2627 | Magazine desportivo | 1h 50m |
| 18:50 | UEFA Champions League 26/27 - Galatasaray x Barcelona (Direto)Assiste ao jogo da UEFA Champions League entre Galatasaray x Barcelona. | 2627 | Futebol | 2h 10m |
| 19:00 | UEFA Champions League 26/27 - Galatasaray x Barcelona (Direto)Assiste ao jogo da UEFA Champions League entre Galatasaray x Barcelona. | 2627 | Futebol | 2h |
| 21:00 | Premier League Stories 2025-26 - Michael CarrickComo jogador foi uma das grandes figuras da história do Manchester United. Como treinador, foi apontado como a pessoa certa para devolver os Red De... | Futebol | 30m | |
| 21:30 | UEFA Champions League 26/27 - Sabah x Slavia PragaAssiste ao jogo da UEFA Champions League entre Sabah x Slavia Praha. | 2627 | Futebol | 2h |
| 23:30 | Bundesliga - O Melhor do MêsO melhor do mês de setembro na Bundesliga. | Futebol | 30m |
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_xb89ekqj/schedule?date=2026-10-13&tz=UTC" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_xb89ekqj/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_xb89ekqj/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_xb89ekqj/schedule?date=2026-10-13&tz=UTC"); 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_xb89ekqj/schedule?date=2026-10-13&tz=UTC", { 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_xb89ekqj/schedule", params={"date": "2026-10-13", "tz": "UTC"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_xb89ekqj/schedule?date=2026-10-13, the first programme { "data": [ { "id": "ls_1w08he25", "channel": "ch_xb89ekqj", "start": "2026-10-12T23:00:00Z", "stop": "2026-10-13T01:00:00Z", "title": "Premier League 26/27 - Coventry City x Newcastle United", "sub_title": "2627", "description": "Assiste ao jogo da Premier League entre Coventry City x Newcastle United.", "category": [ "futebol" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 17, "date": "2026-10-13", "tz": "UTC" } }
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 | Thursday 10 October 2024 | 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.