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_kry3aa1a/schedule?date=2026-10-15&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | Motor City MotorsJamie and Dave compete to see who can build the better amphibious motorcycle. | S1 E5, Amphibious Motorcycles | 1h | |
| 01:00 | Motor City MotorsThe brothers attempt to turn a vintage Air Stream trailer into a sleek hovercraft. | Motor City Motors | 1h | |
| 02:00 | Motor City MotorsThe brothers build a mobile speakeasy that runs on home-brewed alcohol. | Motor City Motors | 1h | |
| 03:00 | Operation RepoMatt, Froy and Ronnie battle an entire football team and come out on top. | S10 E14, T-Bone Trouble | 30m | |
| 03:30 | Operation RepoLou needs Sonia more than ever; Lou and Carlos deal with a big man in a tiny car. | S10 E15, Flame-Thrown for a Loop | 30m | |
| 04:00 | Operation RepoSonia returns; Froy calls 911 after a drug dealer's syringe sticks Sonia. | S10 E16, Probation Abomination | 30m | |
| 04:30 | Operation RepoMatt and Sonia take on an award-winning fencing coach; a break-in at the yard rocks Lou's trust. | S10 E17, Russian Roulette | 30m | |
| 05:00 | Operation RepoFroy Jr. tries to make things right with Lou after the break-in. | S10 E18, Little Froy's Big Mistake | 30m | |
| 05:30 | Operation RepoSonia is on a mission to find out what Matt and Froy have up their sleeves. | S10 E19, M.I.A & D.E.A. | 30m | |
| 06:00 | Operation RepoSonia and Froy repossess a hummer from a bachelorette; Lou lays down some ground rules. | Operation Repo | 30m | |
| 06:30 | Operation RepoSonia and Carlos repo a car from an airline pilot; Matt and Froy are sent on a wild goose chase. | Operation Repo | 30m | |
| 07:00 | Operation RepoMatt plans revenge against Lynda; Ronnie and Carlos use their powers to tame a wild voodoo priest. | Operation Repo | 30m | |
| 07:30 | Operation RepoRonnie and Carlos try to wrestle a truck away from a storage locker auctioneer. | Operation Repo | 30m | |
| 08:00 | Graveyard CarzMark and Royal set out to pick up a Dodge Power Wagon that uncovers many old memories. | S6 E5, Privilege to Drive a '68 GTX Concertible | 1h | |
| 09:00 | Graveyard CarzWill attempts to prep and prime the 1970 Cuda; installing the convertible top for the 1967 Hemi GTX. | S6 E6, Mark Unwrapped | 1h | |
| 10:00 | Graveyard CarzMark and Alyssa keep close watch over Will when he is tasked to repeat a perfect paint job. | S7 E6, 'Cuda 'Tat | 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_kry3aa1a/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_kry3aa1a/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_kry3aa1a/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_kry3aa1a/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_kry3aa1a/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_kry3aa1a/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_kry3aa1a/schedule?date=2026-10-15, the first programme { "data": [ { "id": "ls_jntxp1kw", "channel": "ch_kry3aa1a", "start": "2026-10-15T04:00:00Z", "stop": "2026-10-15T05:00:00Z", "title": "Motor City Motors", "sub_title": "Motor City Motors", "description": "Jamie and Dave compete to see who can build the better amphibious motorcycle.", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 16, "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 155 countries.