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/Berlin time, what is on now and next, and the same data in your app with one call.
All times Europe/Berlin. The same day from the API: GET /v1/channels/ch_07jn3mpr/schedule?date=2026-10-13&tz=Europe/Berlin
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:42 | La mujer de Judas: Capítulo 31Natalia quiere buscar a “La Mujer de Judas” para contar su leyenda. Se siente irresistiblemente atraída hacia esa mujer, Altagracia del Toro, quien... | S1 E31, Episode 31 | Drama, Series | 44m |
| 00:26 | La mujer de Judas: Capítulo 32 On nowNatalia quiere buscar a “La Mujer de Judas” para contar su leyenda. Se siente irresistiblemente atraída hacia esa mujer, Altagracia del Toro, quien... | S1 E32, Episode 32 | Drama, Series | 45m |
| 01:11 | La mujer de Judas: Capítulo 33Natalia quiere buscar a “La Mujer de Judas” para contar su leyenda. Se siente irresistiblemente atraída hacia esa mujer, Altagracia del Toro, quien... | S1 E33, Episode 33 | Drama, Series | 43m |
| 01:54 | La mujer de Judas: Capítulo 34Natalia quiere buscar a “La Mujer de Judas” para contar su leyenda. Se siente irresistiblemente atraída hacia esa mujer, Altagracia del Toro, quien... | S1 E34, Episode 34 | Drama, Series | 45m |
| 02:39 | La mujer de Judas: Capítulo 35Natalia quiere buscar a “La Mujer de Judas” para contar su leyenda. Se siente irresistiblemente atraída hacia esa mujer, Altagracia del Toro, quien... | S1 E35, Episode 35 | Drama, Series | 44m |
| 03:23 | La mujer de Judas: Capítulo 36Natalia quiere buscar a “La Mujer de Judas” para contar su leyenda. Se siente irresistiblemente atraída hacia esa mujer, Altagracia del Toro, quien... | S1 E36, Episode 36 | Drama, Series | 45m |
| 04:08 | Ángel RebeldeRaúl le dice a Luiggi que pedirá a Cristal en matrimonio Luiggi le dice a Raúl que él es un hombre que se vende, que aunque se casara con Cristal ... | S1 E49, Capítulo 49 | Telenovela, Series | 54m |
| 05:03 | Ángel RebeldeRaúl y Cristal se casan por el civil y al final Cristal esta feliz, sin embargo Raúl parece mas bien preocupado., Andrés le confiesa a Pepita que a... | S1 E50, Capítulo 50 | Telenovela, Series | 55m |
| 05:58 | Ángel RebeldeEl inspector hace las preguntas de rigor, Enriqueta le aclara que Graciela tenia poco tiempo en la casa y no tenia problemas con nadie, Leonel muy ... | S1 E51, Capítulo 51 | Telenovela, Series | 57m |
| 06:55 | AbigailBertha en terapia intensiva logra decirle a Carlos Alfredo que Abigail lo engaña con otro. | S1 E103, Episode 103 | Telenovela, Series | 48m |
| 07:43 | AbigailCarlos Alfredo le pide a su esposa todas las joyas. Abigail palidece al oir esto. | S1 E104, Episode 104 | Telenovela, Series | 50m |
| 08:33 | Secreto de Amor: Episodio 34Lisandro no permite que María Clara le cuente su verdad y le pide que solo trate de amarlo. Coralia y Florencio discuten una vez más por el romance... | Episodio 34 | Telenovela, Series | 56m |
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_07jn3mpr/schedule?date=2026-10-13&tz=Europe/Berlin" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_07jn3mpr/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_07jn3mpr/history?from=2026-10-05T00:00:00Z&to=2026-10-06T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_07jn3mpr/schedule?date=2026-10-13&tz=Europe/Berlin"); 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_07jn3mpr/schedule?date=2026-10-13&tz=Europe/Berlin", { 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_07jn3mpr/schedule", params={"date": "2026-10-13", "tz": "Europe/Berlin"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_07jn3mpr/schedule?date=2026-10-13, the first programme { "data": [ { "id": "ls_ym53bjah", "channel": "ch_07jn3mpr", "start": "2026-10-12T21:42:59Z", "stop": "2026-10-12T22:26:59Z", "title": "La mujer de Judas: Capítulo 31", "sub_title": "Capítulo 31", "description": "Natalia quiere buscar a “La Mujer de Judas” para contar su leyenda. Se siente...", "category": [ "drama", "series" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 12, "date": "2026-10-13", "tz": "Europe/Berlin" } }
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 155 countries.