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/Madrid time, what is on now and next, and the same data in your app with one call.
All times Europe/Madrid. The same day from the API: GET /v1/channels/ch_0tnkq7hq/schedule?date=2026-10-13&tz=Europe/Madrid
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:48 | Terapia con CharlieDespiden a Sean del club cuando Charlie se acuesta con una de las estrípers. | Charlie y el baile erótico de la perdición | Series, Comedy | 24m |
| 00:12 | Terapia con CharlieCharlie le concede una entrevista con un preso muy agresivo a una reportera de buen ver. | Charlie pone a prueba su fuerza de voluntad | Series, Comedy | 25m |
| 00:37 | Terapia con Charlie On nowCharlie y Jordan comparten una habitación de hotel para dejar en evidencia a un terapeuta de parejas (Michael Gross). | Charlie y el terapeuta médium | Series, Comedy | 25m |
| 01:01 | Terapia con CharlieCharlie le consigue a Sean una cita con una tía buena a pesar de que sabe que está liado con Jordan. | Charlie se interpone entre Sean y Jordan | Series, Comedy | 24m |
| 01:26 | Terapia con CharlieCharlie se mete en problemas con su grupo de la prisión después de acostarse con la alcaidesa nueva. | Charlie cumple condena con la alcaidesa | Series, Comedy | 24m |
| 01:49 | Terapia con CharlieCharlie ayuda a un paciente de su grupo de la prisión a intentar escapar sin ni siquiera darse cuenta. | Charlie y el secreto de la alcaidesa | Series, Comedy | 24m |
| 02:14 | Terapia con CharlieCharlie intenta controlar sus impulsos agresivos cuando conoce a una chica preciosa que no sale con tíos como él. | Charlie y el enfado maldito | Series, Comedy | 24m |
| 02:38 | Terapia con CharlieCharlie le declara la guerra al basurero. | Charlie y el basurero | Series, Comedy | 23m |
| 03:01 | Terapia con CharlieCharlie se pone paranoico al descubrir que está saliendo con una detective privada. | Charlie y el caso de la buenorra curiosa | Series, Comedy | 24m |
| 03:25 | Terapia con CharlieJordan engaña a Charlie para que se acueste con su hermana de la hermandad, y Patrick ve una oportunidad cuando Lacey comienza a salir con un produ... | Charlie se une a la hermandad | Series, Comedy | 24m |
| 03:50 | Terapia con CharlieCharlie intenta demostrarle a la detective privada que puede ponerle los cuernos sin que lo descubra. | Charlie juega al escondite de los cuernos | Series, Comedy | 24m |
| 04:14 | Terapia con CharlieUna friki de la tecnología toma a Charlie como rehén. | Charlie y la venganza de la friki | Series, Comedy | 24m |
| 04:39 | Terapia con CharlieCharlie ayuda a Nolan a liberar su ira y acaba creando un monstruo. | Charlie y la maldición del puño volador | Series, Comedy | 25m |
| 05:03 | Terapia con CharlieCharlie deja que cinco prostitutas se rehabiliten en su casa. | Charlie y la casa llena de prostitutas | Series, Comedy | 25m |
| 05:28 | Terapia con CharlieCharlie droga a Patrick para intentar acabar con la crisis de confianza que tiene. | Charlie droga a Patrick | Series, Comedy | 24m |
| 05:52 | Terapia con CharlieCharlie hace que Lacey se prometa con un millonario baboso (Gilbert Gottfried). | Charlie y Lacey van a por todas | Series, Comedy | 24m |
| 06:16 | Terapia con CharlieCharlie casi se carga el matrimonio de Ed y Jordan le tira los trastos a Nolan. | Charlie y el día más horrible y espantoso de Acción de Gracias | Series, Comedy | 25m |
| 06:41 | Terapia con CharlieCharlie se va a Las Vegas, pero se le complica la existencia tras una noche de borrachera. | Charlie apuesta en Las Vegas | Series, Comedy | 24m |
| 07:05 | Terapia con CharlieCharlie arriesga su vida para acostarse con una amante de las emociones fuertes. | Charlie y el retorno de la chica peligrosa | Series, Comedy | 24m |
| 07:30 | Terapia con CharlieCharlie se entromete entre Jordan y su exmarido. | Charlie se lleva a la cama a Jordan y a su ex | Series, Comedy | 24m |
| 07:53 | Terapia con CharlieCharlie está atrapado en un sueño en el que no puede distinguir la realidad de la fantasía. | Charlie vive el sueño | Series, Comedy | 24m |
| 08:18 | Terapia con CharlieUna celestina empareja a Charlie y a Sean con las personas equivocadas. | Charlie conoce a su cita | Series, Comedy | 25m |
| 08:42 | Terapia con CharlieCharlie se mete en la vida amorosa de Lacey y Nolan y consigue que los presos secuestren a Nolan. | Charlie y la relación desastrosa | Series, Comedy | 24m |
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_0tnkq7hq/schedule?date=2026-10-13&tz=Europe/Madrid" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_0tnkq7hq/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_0tnkq7hq/history?from=2026-10-05T00:00:00Z&to=2026-10-06T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_0tnkq7hq/schedule?date=2026-10-13&tz=Europe/Madrid"); 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_0tnkq7hq/schedule?date=2026-10-13&tz=Europe/Madrid", { 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_0tnkq7hq/schedule", params={"date": "2026-10-13", "tz": "Europe/Madrid"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_0tnkq7hq/schedule?date=2026-10-13, the first programme { "data": [ { "id": "ls_g4btmrr8", "channel": "ch_0tnkq7hq", "start": "2026-10-12T21:48:10Z", "stop": "2026-10-12T22:12:39Z", "title": "Terapia con Charlie", "sub_title": "Charlie y el baile erótico de la perdición", "description": "Despiden a Sean del club cuando Charlie se acuesta con una de las estrípers.", "category": [ "series", "comedy", "late night comedies" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 23, "date": "2026-10-13", "tz": "Europe/Madrid" } }
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.