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 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_sm5z3h33/schedule?date=2026-10-12&tz=UTC
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:00 | The Match: Liverpool v Manchester CityAll the action as Liverpool take on Manchester City. | Soccer | 2h | |
| 01:00 | Flags and Banners: The Art of LFCAn exclusive documentary which delves into the history and culture of the club's flags and banners. | Soccer | 1h 15m | |
| 02:15 | Goal Rush: Luis DiazA collection of the best Liverpool goals scored by Luis Diaz. | Soccer | 15m | |
| 02:30 | Wembley Wizards: Liverpool's Cup DoubleRelive the Reds successful Carabao Cup and FA Cup campaigns of 2021/22 in LFCTVs exclusive mini-documentary. | Soccer | 30m | |
| 03:00 | The Match: Liverpool v Manchester CityAll the action as Liverpool take on Manchester City. | Soccer | 2h | |
| 05:00 | Ultimate XIFormer Liverpool striker Michael Owen takes on the role of fantasy manager and reveals who would make it into his Ultimate XI. | Soccer | 30m | |
| 05:30 | Liverpool's GreatestThe winner of our Liverpools Greatest poll is revealed. See who is crowned the Reds' best men's player of all time after a huge vote with the views... | Soccer | 2h | |
| 07:30 | European ClassicsOn a record-breaking Champions League night in Glasgow Liverpool silence the vociferous Ibrox crowd with a ruthless display of finishing. | Magazine | 15m | |
| 07:45 | Goal Rush: Dominik SzoboszlaiEnjoy a selection of memorable goals scored by Dominik Szoboszlai. | Soccer | 15m | |
| 08:00 | The Match: Liverpool v Manchester CityAll the action as Liverpool take on Manchester City. | Soccer | 2h | |
| 10:00 | The Match: Liverpool v Atletico MadridAll the action as Liverpool take on Atletico Madrid. | Soccer | 2h | |
| 12:00 | We are LiverpoolThe man for the big occasion joins Peter McDowall and Jan Molby to relive the highlights of his Reds career. | Soccer | 1h | |
| 13:00 | The Match: Liverpool v Manchester CityAll the action as Liverpool take on Manchester City. | Soccer | 2h | |
| 15:00 | European Royalty: The Joy of SixAn exclusive documentary in which we relive Liverpool's sixth European Cup victory in Madrid - and the subsequent parade which brought the city to ... | Soccer | 1h | |
| 16:00 | ShortcutThe best of the action as Liverpool take on Manchester City. | Soccer | 15m | |
| 16:15 | Football: Premier League U18: Stoke City v Liverpool U18: ShortcutThe best of the action as Liverpool U18 take on Stoke. | Soccer | 15m | |
| 16:30 | ShortcutThe best of the action from September 2023 as Liverpool take on LASK. | Soccer | 15m | |
| 16:45 | European ClassicsOn a record-breaking Champions League night in Glasgow Liverpool silence the vociferous Ibrox crowd with a ruthless display of finishing. | Magazine | 15m | |
| 17:00 | The Premier League Review ShowJoin Neil Mellor as he analyses the action and looks back on the stats from Liverpool's game against Manchester City. | Magazine | 30m | |
| 17:30 | All the Goals: RobboEnjoy a collection of goals and assists by Andy Robertson. | Magazine | 30m | |
| 18:00 | Press BoxMembers of the local press pack discuss all things LFC and debate some of the current wider issues in football. | Talks | 45m | |
| 18:45 | Goal Rush: Champions League 2017/18Relive all the goals from Liverpool 2017/18 Champions League campaign. | Soccer | 15m | |
| 19:00 | The Match: Liverpool v Manchester CityAll the action as Liverpool take on Manchester City. | Soccer | 2h | |
| 21:00 | The Premier League Review ShowJoin Neil Mellor as he analyses the action and looks back on the stats from Liverpool's game against Manchester City. | Magazine | 30m | |
| 21:30 | Us and ThemA documentary examining the intense rivalry that exists between Liverpool and Manchester United - focusing on history culture and of course the foo... | Soccer | 30m | |
| 22:00 | Press BoxMembers of the local press pack discuss all things LFC and debate some of the current wider issues in football. | Talks | 45m | |
| 22:45 | Shortcut On nowThe best of the action from September 2023 as Liverpool take on LASK. | Soccer | 15m | |
| 23:00 | The Match: Liverpool v Manchester CityAll the action as Liverpool take on Manchester City. | Soccer | 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_sm5z3h33/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_sm5z3h33/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_sm5z3h33/history?from=2025-10-12T00:00:00Z&to=2025-10-13T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_sm5z3h33/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_sm5z3h33/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_sm5z3h33/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_sm5z3h33/schedule?date=2026-10-12, the first programme { "data": [ { "id": "ls_p1q08jbj", "channel": "ch_sm5z3h33", "start": "2026-10-11T23:00:00Z", "stop": "2026-10-12T01:00:00Z", "title": "The Match: Liverpool v Manchester City", "sub_title": null, "description": "All the action as Liverpool take on Manchester City.", "category": [ "soccer" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 28, "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 | Thursday 12 October 2023 | 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 155 countries.