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 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_fe56h9t2/schedule?date=2026-10-14&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | FBI: Most WantedAfter a manipulative student commits murder in a fit of jealousy, the team races to capture her before she escapes across the border; Jess teaches ... | 1h | ||
| 01:00 | Star Trek: Deep Space NineA strange game introduced to the space station by a race from the Gamma Quadrant tests Quark's ethics and the senior officers' resourcefulness. | 1h | ||
| 02:00 | Star Trek: VoyagerVoyager transmits The Doctor to another Starfleet ship thousands of light years away in an attempt to tell them they are still alive, but when he a... | 1h | ||
| 03:00 | Star Trek: EnterpriseCapt. Archer mediates a dispute between Vulcans and Andorians threatening to go to war over a small planet. | 1h | ||
| 04:00 | Walker, Texas RangerThe mob intimidates a local supper club into laundering money and Walker steps in to save the club and its owner, a crooner refusing to bend the ru... | 1h | ||
| 05:00 | RenegadeDutch Dixon and Bobby both search for Reno when an accident leaves him temporarily paralyzed and suffering from amnesia. | 1h | ||
| 06:00 | The Fall GuyItalian townspeople provoke local crooks by asking Colt to interrupt filming on a western to search for World War II buried treasure. | 1h | ||
| 07:00 | Nash BridgesNash and the team track down a vigilante intent on bringing murderers to justice; Caitlin and Joe form a partnership to deliver doughnuts via the I... | 1h | ||
| 08:00 | Walker, Texas RangerWalker investigates the death of a lawyer who was on the verge of a major lawsuit accusing the city's police department of brutality. | 1h | ||
| 09:00 | The RebelJohnny testifies at a trial, then finds he has unwittingly helped pull off a land swindle. | 30m | ||
| 09:30 | TrackdownSomeone is trying to kill Hoby's sister. | 30m | ||
| 10:00 | Wanted: Dead or AliveJosh has doubts about an alleged murderer. | 30m | ||
| 10:30 | Wanted: Dead or AliveJosh believes a female killer is innocent. | 30m | ||
| 11:00 | CheyenneCheyenne saves a schoolteacher from three vengeful brothers. | 1h | ||
| 12:00 | The High ChaparralA disturbed Civil War veteran, a former friend of Buck's, takes Buck, Victoria, Manolito and Don Sebastian prisoner at the ranch. | 1h | ||
| 13:00 | MacGyverMacGyver dreams of living in the Old West, where he is forced to help a trio of women escape from outlaws. | 1h | ||
| 14:00 | The A-TeamThe team must free three CIA agents from a Caribbean prison before an ambitious dictator strikes a deal with the Soviet military. | 1h | ||
| 15:00 | NCISThe NCIS team joins forces with the FBI when a burned and mummified body found in a furnace turns out to be that of a serial killer the FBI had bee... | 1h | ||
| 16:00 | NCISA highly classified robotic vehicle causes the death of a Navy lieutenant working on a high-level project for the Department of Defense; Tony's sec... | 1h | ||
| 17:00 | NCISThe team battles local biases when it investigates the murder of a high-level Marine intelligence officer found in a small-town motel room. | 1h | ||
| 18:00 | NCISThe NCIS team must track down a wanted terrorist (Enzo Cilenti) who has obtained a missing chemical weapon before he carries out his plan to attack... | 1h | ||
| 19:00 | NCISDucky goes undercover to stop the illegal sale of the Navy's top-secret weapons system to a high-priority arms dealer (Armand Assante). | 1h | ||
| 20:00 | CSI: Crime Scene InvestigationWhen Dr. Robbins' wife discovers a nude corpse in their bedroom, the CSI team begins an investigation. | 1h | ||
| 21:00 | CSI: Crime Scene InvestigationWhen a professional hit takes place at a law firm that Willows recommended to a friend, she helps the FBI investigate. | 1h | ||
| 22:00 | CSI: Crime Scene InvestigationThe CSI team must say goodbye to colleague Catherine Willows after she makes a life-altering decision. | 1h | ||
| 23:00 | DatelineWhen young mother and paramedic Annamarie Cochrane Rintala is found dead at the bottom of her basement stairs, it takes four trials and 13 years be... | 1h |
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_fe56h9t2/schedule?date=2026-10-14&tz=America/New_York" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_fe56h9t2/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_fe56h9t2/history?from=2026-06-25T00:00:00Z&to=2026-06-26T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_fe56h9t2/schedule?date=2026-10-14&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_fe56h9t2/schedule?date=2026-10-14&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_fe56h9t2/schedule", params={"date": "2026-10-14", "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_fe56h9t2/schedule?date=2026-10-14, the first programme { "data": [ { "id": "ls_cxqdcwy6", "channel": "ch_fe56h9t2", "start": "2026-10-14T04:00:00Z", "stop": "2026-10-14T05:00:00Z", "title": "FBI: Most Wanted", "sub_title": null, "description": "After a manipulative student commits murder in a fit of jealousy, the team ra...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 26, "date": "2026-10-14", "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 | Thursday 25 June 2026 | Category |
|---|---|---|
| 01:00 | Star Trek: Deep Space Nine | Series, Science fiction |
| 02:00 | Star Trek: Voyager | Series, Science fiction |
| 03:00 | Star Trek: Enterprise | Series, Science fiction |
| 22 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.