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 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_1s8dsr1x/schedule?date=2026-10-15&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:25 | Nash BridgesNash puts Caitlin undercover to stop a thug from selling kidnapped Vietnamese women as slaves. | S5 E12, Skin Trade | Bingeworthy | 52m |
| 00:17 | Nash BridgesNash assumes the identity of a hit man to expose a drug war between two rival kingpins. | S5 E13, Liar's Poker | Bingeworthy | 53m |
| 01:10 | Nash BridgesWhen a woman falls to her death, it leads Nash into an investigation of the lives of the victim. | S5 E14, El Diablo | Bingeworthy | 54m |
| 02:04 | Nash BridgesNash fends off hit-men hired by Frankie Dwyer, who has returned in hopes of killing Nash. | S5 E15, Hit & Run | Bingeworthy | 53m |
| 02:57 | Nash BridgesNash has to track down a cop impersonator on a rampage across the city. | S5 E16, Cop Out | Bingeworthy | 53m |
| 03:50 | Nash BridgesNash and the SIU take a pregnant teen run-away into protective custody. | S5 E17, Line of Sight | Bingeworthy | 54m |
| 04:44 | Nash BridgesNash goes undercover to stop a thief from stealing high-tech computer chips for an arms dealer. | S5 E18, Heist | Bingeworthy | 53m |
| 05:37 | Nash BridgesFour women escape from a prison work detail, and an inmate informs Nash to tell him their plans. | S5 E19, Hard Cell | Bingeworthy | 53m |
| 06:30 | Nash BridgesA murder victim plants “key” evidence on Joe, and Nash and Joe on collision course with a mobster. | S5 E20, Missing Key | Bingeworthy | 53m |
| 07:23 | Nash BridgesNash’s investigation into the murder of the Chief of Police puts him in conflict with the DEA. | S5 E21, Jackpot (1) | Bingeworthy | 54m |
| 08:17 | Nash BridgesNash goes undercover in Las Vegas to track down the Chief of Police killer. | S5 E22, Jackpot (2) | Bingeworthy | 53m |
| 09:10 | Nash BridgesA mad bomber forces Nash to choose between saving Cassidy or Joe. | S6 E1, Rock and a Hard Place | Bingeworthy | 53m |
| 10:03 | Nash BridgesCassidy goes undercover to infiltrate a dangerous diamond smuggling ring. | S6 E2, Jump Start | Bingeworthy | 54m |
| 10:57 | Nash BridgesNash’s old flame Tamara is back and tangled up in an FBI investigation. | S6 E3, Lap Dance | Bingeworthy | 53m |
| 11:50 | Nash BridgesNash must stop a gang of thieves terrorizing San Francisco’s high society. | S6 E4, Land Pirates | Bingeworthy | 53m |
| 12:43 | Nash BridgesA DEA warehouse is robbed and it’s up to the SIU to retrieve the stolen cocaine. | S6 E5, Manhunt | Bingeworthy | 54m |
| 13:37 | Nash BridgesCassidy investigates a fraternity’s member’s suspicious death. | S6 E6, Double Trouble | Bingeworthy | 53m |
| 14:30 | Nash BridgesNash has to stop a bunch of wealthy slackers from killing each other for sport. | S6 E7, End Game | Bingeworthy | 53m |
| 15:23 | Nash BridgesNash and Joe are trapped in a building that’s about to explode. | S6 E8, blow out | Bingeworthy | 53m |
| 16:16 | Nash BridgesNash tries to protect a TV reporter stalked by a murderous maniac. | S6 E9, The Messenger | Bingeworthy | 54m |
| 17:10 | Nash BridgesTony B needs Nash’s help when he fakes his own death. | S6 E10, Grave Robbers | Bingeworthy | 53m |
| 18:03 | Nash BridgesNash and an AWOL Canadian Mountie battle bears and bad guys. | S6 E11, Bear Trap | Bingeworthy | 53m |
| 18:56 | Nash BridgesNash has to prove Rachel’s innocence when she is framed for murder. | S6 E12, Slam Dunk | Bingeworthy | 54m |
| 19:50 | Nash BridgesTamara’s back claiming to be married to Nash, while Nick crossed paths with a dangerous gangster. | S6 E13, Recover Me | Bingeworthy | 53m |
| 20:43 | Nash BridgesNash’s buddy Rick involves him in a deadly dispute with an angry Miami drug dealer. | S6 E14, Something Borrowed | Bingeworthy | 53m |
| 21:36 | Nash BridgesA suspect is in custody for a shooting, but Nash knows they've arrested the wrong man. | S6 E15, Out of Miami | Bingeworthy | 54m |
| 22:30 | Nash BridgesNash goes head-to-head with a delusional vigilante claiming to be his partner. | S6 E16, The Partner | Bingeworthy | 53m |
| 23:23 | Nash BridgesNash goes up against a murderous techno-geek who designs killer robots. | S6 E17, Blood Bots | Bingeworthy | 53m |
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_1s8dsr1x/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_1s8dsr1x/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_1s8dsr1x/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_1s8dsr1x/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_1s8dsr1x/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_1s8dsr1x/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_1s8dsr1x/schedule?date=2026-10-15, the first programme { "data": [ { "id": "ls_4phzaqr9", "channel": "ch_1s8dsr1x", "start": "2026-10-15T03:25:00Z", "stop": "2026-10-15T04:17:00Z", "title": "Nash Bridges", "sub_title": "Skin Trade", "description": "Nash puts Caitlin undercover to stop a thug from selling kidnapped Vietnamese...", "category": [ "bingeworthy" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 28, "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.