73.8M 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 America/New_York 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 America/New_York. The same day from the API: GET /v1/channels/ch_rf5b4qfg/schedule?date=2026-10-15&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | Live: SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 1h | |
| 01:00 | Live: SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 1h | |
| 02:00 | SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 1h | |
| 03:00 | SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 1h | |
| 04:00 | SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 1h | |
| 05:00 | SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 1h | |
| 06:00 | SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 1h | |
| 07:00 | Live: SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 1h | |
| 08:00 | Live: Get UpESPN's morning show features host Mike Greenberg with a rotating and diverse group of analysts opining about and analyzing the latest news from the... | Sports talk | 2h | |
| 10:00 | Live: First TakeStephen A. Smith hosts this weekday morning sports debate show. Smith provides his expert takes on the day's trending sports topics and under-the-r... | S20 E269, Episode 269 | Sports talk, News | 2h |
| 12:00 | Live: The Pat McAfee ShowFormer NFL punter Pat McAfee brings his humor and candor to the microphone to highlight the day's top stories. | Sports talk | 2h | |
| 14:00 | Live: Big Day With Peter SchragerPeter Schrager's daily show will feature rotating panelists focusing heavily on the NFL while also providing coverage of other major sports stories. | S1 E20, Episode 20 | Football | 1h |
| 15:00 | Live: NBA TodayIn-depth, comprehensive daily coverage of all aspects of the NBA from expert analysts. | Sports talk, Basketball | 1h | |
| 16:00 | NFL LiveHost Laura Rutledge takes the helm of this weekday show featuring the likes of Marcus Spears, Dan Orlovsky, Mina Kimes, and Adam Schefter. The "NFL... | S28 E115, Episode 115 | Football | 1h |
| 17:00 | Live: SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 30m | |
| 17:30 | Live: Pardon the InterruptionThe debate is the story in this fast-paced, half-hour series hosted by former Washington Post sportswriters Tony Kornheiser and Michael Wilbon. The... | Sports talk | 30m | |
| 18:00 | SabanAfter a contract dispute, Saban leaves Michigan State for an intriguing opportunity at LSU. | S1 E2, Death Valley | Series, Football | 1h |
| 19:00 | Live: College Football CountdownA look at the day's college football action, featuring news, highlights and game previews. | S21 E9, Week 6 | Sports talk, Football | 30m |
| 19:30 | Live: College FootballThe Pirates visit the Blazers in an American Conference game. The Pirates aim for a fourth straight win, after a 28-12 win over the Rice Owls behin... | Sport, Football | 3h | |
| 22:30 | Live: SportsCenterThe latest news, highlights and inside information from every corner of the sports world is presented each day on "SportsCenter," ESPN's first-ever... | News, Sports talk | 1h 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_rf5b4qfg/schedule?date=2026-10-15&tz=America/New_York" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_rf5b4qfg/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_rf5b4qfg/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_rf5b4qfg/schedule?date=2026-10-15&tz=America/New_York"); 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_rf5b4qfg/schedule?date=2026-10-15&tz=America/New_York", { 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_rf5b4qfg/schedule", params={"date": "2026-10-15", "tz": "America/New_York"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_rf5b4qfg/schedule?date=2026-10-15, the first programme { "data": [ { "id": "ls_re4fm584", "channel": "ch_rf5b4qfg", "start": "2026-10-15T04:00:00Z", "stop": "2026-10-15T05:00:00Z", "title": "Live: SportsCenter", "sub_title": null, "description": "The latest news, highlights and inside information from every corner of the s...", "category": [ "news", "sports talk" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 20, "date": "2026-10-15", "tz": "America/New_York" } }
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 | Monday 13 October 2025 | 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.