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_2m6aqdb9/schedule?date=2026-10-12&tz=UTC
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | Timeless 70s Tunes! Timeless 70s Tunes!Funky grooves, power anthems & pop hits, these tunes stand the test of time! | 2h | ||
| 02:00 | 70s Chart Rewind! 70s Chart Rewind!All the big hits from 1970 - 1979! | 2h | ||
| 04:00 | Hot Stuff: 70s Pin-Ups! Hot Stuff: 70s Pin-Ups!From Rock Rebels to disco queens, these are the 70s Pin ups of dreams | 1h | ||
| 05:00 | 70s Disco Inferno! 70s Disco Inferno!All the best disco and dance hits from the 70s that will keep the party moving. | 2h | ||
| 07:00 | Golden 70s Hits! Golden 70s Hits!Non-stop hits from the golden era of music! | 2h | ||
| 09:00 | Pop Muzik: 70s Big Ones! Pop Muzik: 70s Big Ones!Huge pop hits to transport you back to the 70s! | 2h | ||
| 11:00 | Soundtrack To The 70s! Soundtrack To The 70s!This is your ultimate soundtrack to the 70s, filled with golden grooves, rock riffs & pop hits! | 2h | ||
| 13:00 | The 70s Power Hour! The 70s Power Hour!Packed with huge pop, rock & dance hits, this playlist will take you right back to the 70s! | 1h | ||
| 14:00 | A-List 70s Hits! A-List 70s Hits!Chart toppers and huge hooks, these are the songs that everyone was talking about. | 2h | ||
| 16:00 | 70s Club Classics! 70s Club Classics!Funky basslines, disco lights & power vocals! The biggest club classics from 1970 - 1979! | 2h | ||
| 18:00 | Gimme Gimme Big 70s Hits! Gimme Gimme Big 70s Hits!It's all about the anthems right now as we rewind to one of the biggest decades in music! | 2h | ||
| 20:00 | Night Fever! 70s Anthems! Night Fever! 70s Anthems!Transport yourself to the 70s with these iconic Funk, Disco and party Hits | 2h | ||
| 22:00 | 70s Guitar Heroes! 70s Guitar Heroes!The golden age of guitar heroes! Tune in for the greatest players of the decade. | 1h | ||
| 23:00 | Play That Funky 70s Music! Play That Funky 70s Music!Funky beats and grooves that will take you righ back to the 70s | 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_2m6aqdb9/schedule?date=2026-10-12&tz=UTC" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_2m6aqdb9/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_2m6aqdb9/history?from=2026-07-01T00:00:00Z&to=2026-07-02T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_2m6aqdb9/schedule?date=2026-10-12&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_2m6aqdb9/schedule?date=2026-10-12&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_2m6aqdb9/schedule", params={"date": "2026-10-12", "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_2m6aqdb9/schedule?date=2026-10-12, the first programme { "data": [ { "id": "ls_x0qkmfd6", "channel": "ch_2m6aqdb9", "start": "2026-10-12T00:00:00Z", "stop": "2026-10-12T02:00:00Z", "title": "Timeless 70s Tunes! Timeless 70s Tunes!", "sub_title": null, "description": "Funky grooves, power anthems & pop hits, these tunes stand the test of time!", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 14, "date": "2026-10-12", "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 | Wednesday 1 July 2026 | Category |
|---|---|---|
| 23:00 | School Of Rock 1970 - 1979 | |
| 01:00 | Blockbuster Hits Of The 70s | |
| 03:00 | High Energy Hits! 70s Work Out | |
| 11 more programmes that day, on Archive | ||
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.