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.
All times America/New_York. The same day from the API: GET /v1/channels/ch_kcamnwhc/schedule?date=2026-10-12&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | Stolen: The Unsolved Theft of a $3,000,000 ViolinThe story of the stolen Davidoff Stradivarius, a top FBI art crime, remains open. | 1h | ||
| 01:00 | Astroworld AftermathStay informed with the latest breaking news and headlines. | 1h | ||
| 02:00 | ABC30 Action News Live at 11:00The ABC30 Action News Team presents Fresno area viewers with the latest news, traffic, weather, sports & more. | 35m | ||
| 02:35 | UnsolvedDetectives believe they may have the murder weapon used to strangle Cheryl Martin in Texas, 1989. | S1 E10, Unsolved? | 1h | |
| 03:35 | ABC30 Action News Live at 11:00The ABC30 Action News Team presents Fresno area viewers with the latest news, traffic, weather, sports & more. | 35m | ||
| 04:10 | ABC30 Action News Live at 11:00The ABC30 Action News Team presents Fresno area viewers with the latest news, traffic, weather, sports & more. | 35m | ||
| 04:45 | ABC30 Action News Live at 11:00The ABC30 Action News Team presents Fresno area viewers with the latest news, traffic, weather, sports & more. | 35m | ||
| 05:20 | ABC30 Action News Live at 11:00The ABC30 Action News Team presents Fresno area viewers with the latest news, traffic, weather, sports & more. | 35m | ||
| 05:55 | ABC30 Action News Live at 11:00The ABC30 Action News Team presents Fresno area viewers with the latest news, traffic, weather, sports & more. | 35m | ||
| 06:30 | ABC30 Action News Live at 11:00The ABC30 Action News Team presents Fresno area viewers with the latest news, traffic, weather, sports & more. | 35m | ||
| 07:05 | LocalishFeaturing locally-sourced stories that transcend city limits. | 25m | ||
| 07:30 | Action News AM Live 4:30AM | 30m | ||
| 08:00 | Action News AM Live 5amStay informed with the latest breaking news and headlines. | 1h | ||
| 09:00 | Action News AM Live 6AMStay informed with the latest breaking news and headlines. | 1h | ||
| 10:00 | ABC30 Action News Live at 7:00AMThe ABC30 Action News Team presents Fresno area viewers with the latest news, traffic, weather, sports & more. | 1h | ||
| 11:00 | Action News AM Live 5amStay informed with the latest breaking news and headlines. | 1h | ||
| 12:00 | Action News AM Live 6AMStay informed with the latest breaking news and headlines. | 1h | ||
| 13:00 | ABC30 Action News Live at 7:00AMThe ABC30 Action News Team presents Fresno area viewers with the latest news, traffic, weather, sports & more. | 1h | ||
| 14:00 | Action News MiddayStay informed with the latest breaking news and headlines. | 1h | ||
| 15:00 | ABC News LiveBreaking news, live interviews, press conferences and the best video from around the world. | 30m | ||
| 15:30 | ABC News LiveBreaking news, live interviews, press conferences and the best video from around the world. | 30m | ||
| 16:00 | Action News MiddayStay informed with the latest breaking news and headlines. | 1h | ||
| 17:00 | Action News MiddayStay informed with the latest breaking news and headlines. | 1h | ||
| 18:00 | Action News Live at 3 PMStay informed with the breaking news and headlines. | 30m | ||
| 18:30 | Action News MiddayStay informed with the latest breaking news and headlines. | 30m | ||
| 19:00 | Action News Live at 4:00The Action News Team offers a report on the latest news of the day, as well as updates on sports. | 1h | ||
| 20:00 | Action News Live at 3 PMStay informed with the breaking news and headlines. | 30m | ||
| 20:30 | Action News Live at 4:00The Action News Team offers a report on the latest news of the day, as well as updates on sports. | 1h | ||
| 21:30 | Action News Live at 4:00The Action News Team offers a report on the latest news of the day, as well as updates on sports. | 1h | ||
| 22:30 | Unsolved | S1 E10, Unsolved? | 30m | |
| 23:00 | LocalishFeaturing locally-sourced stories that transcend city limits. | 15m | ||
| 23:15 | Action News After the GameStay informed with the latest breaking news and headlines. | 45m |
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_kcamnwhc/schedule?date=2026-10-12&tz=America/New_York" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_kcamnwhc/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_kcamnwhc/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_kcamnwhc/schedule?date=2026-10-12&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_kcamnwhc/schedule?date=2026-10-12&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_kcamnwhc/schedule", params={"date": "2026-10-12", "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_kcamnwhc/schedule?date=2026-10-12, the first programme { "data": [ { "id": "ls_6093zyv4", "channel": "ch_kcamnwhc", "start": "2026-10-12T04:00:00Z", "stop": "2026-10-12T05:00:00Z", "title": "Stolen: The Unsolved Theft of a $3,000,000 Violin", "sub_title": null, "description": "The story of the stolen Davidoff Stradivarius, a top FBI art crime, remains o...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 32, "date": "2026-10-12", "tz": "America/New_York" } }
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.