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_b5scdyxh/schedule?date=2026-10-12&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | Ghost WhispererMelinda heads out to check on a student at a local college who has been haunted after seeing a movie. | S3 E15, Horror Show | Crime, Series | 1h |
| 01:00 | Ghost WhispererMelinda helps professor Payne deal with an ex and her 10-year-old son, all while helping put to rest the jealous ghost of his dead wife. | S3 E16, Deadbeat Dads | Crime, Series | 1h |
| 02:00 | Ghost WhispererWhen Melinda is given the file number of a murder case for which her father was lead prosecutor in 1979. With the file, Melinda sets out to find wh... | S3 E17, Stranglehold | Crime, Series | 1h |
| 03:00 | Ghost WhispererMelinda searches for Paul Eastman and answers from her mother about her father. | S3 E18, Pater Familias | Crime, Series | 1h |
| 04:00 | Ghost WhispererMelinda discovers Eli shares her abilities after having a near death experience. | S4 E1, Firestarter | Crime, Series | 1h |
| 05:00 | Ghost WhispererMelinda is contacted by Grace, a popular former classmate, because she thinks she is being haunted. | S4 E2, Big Chills | Crime, Drama | 1h |
| 06:00 | Ghost WhispererA ghost haunts an online gaming community and Melinda joins the game to find a way to help the ghost. | S4 E3, Ghost in the Machine | Crime, Drama | 1h |
| 07:00 | Ghost WhispererOn a cruise ship filled with ghosts, Melinda tries to help a ghost looking for the fiancé who wronged her. | S4 E4, Save Our Souls | Crime, Drama | 1h |
| 08:00 | Ghost WhispererA woman who was accidentally switched at birth dies in surgery. | S4 E5, Bloodline | Crime, Drama | 1h |
| 09:00 | Ghost WhispererMelinda tries to calm ghosts causing issues at a wedding. | S4 E6, Imaginary Friends and Enemies | Crime, Drama | 1h |
| 10:00 | Ghost WhispererWhile dealing with issues in her personal life, Melinda has difficulty helping a troubled teenage ghost. | S4 E7, Threshold | Crime, Drama | 1h |
| 11:00 | Ghost WhispererAfter Jim's spirit goes into another body, Melinda tries to help him regain his memory. | S4 E8, Heart & Soul | Series, Drama | 1h |
| 12:00 | Ghost WhispererMelinda helps the ghost of a little girl who has been missing for 12 years and blames her brother. | S4 E9, Pieces of You | Series, Drama | 1h |
| 13:00 | Ghost WhispererA confused ghost must get needs Melinda's help to come to terms with her marriage and cross over. | S4 E10, Ball & Chain | Series, Drama | 1h |
| 14:00 | Ghost WhispererMelinda helps a 14 year boy bring his parents back together so they will discuss the real reason for his death. | S4 E11, Life on the Line | Series, Drama | 1h |
| 15:00 | Ghost WhispererOn a road trip with Jim/Sam, Melinda encounters her fair share of trouble. | S4 E12, This Joint's Haunted | Series, Drama | 1h |
| 16:00 | Ghost WhispererMelinda discovers a local lake is filled with distressed ghosts because their bodies have been dumped there rather than properly cremated. | S4 E13, Body of Water | Series, Drama | 1h |
| 17:00 | Ghost WhispererMelinda helps a ghost protect her daughter from dating a bad boy. | S4 E14, Slow Burn | Series, Drama | 1h |
| 18:00 | Ghost WhispererMelinda encounters the spirit who died during a sorority initiation ceremony while searching for a girl that's gone missing in the same manner. | S4 E15, Greek Tragedy | Series, Drama | 1h |
| 19:00 | Ghost WhispererLinus investigates a haunting with high tech equipment while Melinda tells Jim/Sam about her gift. | S4 E16, Ghost Busted | Drama, Series | 1h |
| 20:00 | Ghost WhispererMelinda and Jim/Sam work to understand what's happening in a troubled kindergarten class. | S4 E17, Delusion of Grandview | Drama, Series | 1h |
| 21:00 | Ghost WhispererMelinda encounters another "step in" spirit like Jim/Sam. | S4 E18, Leap of Faith | Drama, Series | 1h |
| 22:00 | Ghost WhispererA young woman (Hillary Duff) is being haunted. | S4 E19, Thrilled to Death | Drama, Series | 1h |
| 23:00 | Ghost WhispererGhosts cause problems for a soap opera filming in town and Melinda and Jim/Sam make a shocking discovery. | S4 E20, Stage Fright | Drama, Series | 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_b5scdyxh/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_b5scdyxh/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_b5scdyxh/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_b5scdyxh/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_b5scdyxh/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_b5scdyxh/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_b5scdyxh/schedule?date=2026-10-12, the first programme { "data": [ { "id": "ls_p6y2sc3r", "channel": "ch_b5scdyxh", "start": "2026-10-12T04:00:00Z", "stop": "2026-10-12T05:00:00Z", "title": "Ghost Whisperer", "sub_title": "Horror Show", "description": "Melinda heads out to check on a student at a local college who has been haunt...", "category": [ "crime", "series", "drama" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 24, "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.