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_q85w3apt/schedule?date=2026-10-11&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:54 | Good WitchThe Middleton Merriwick is still not in bloom; an old friend of Abigail's checks into Grey House. | S3 E2, Without Magic for a Spell | 48m | |
| 00:42 | Good WitchTwo guests arrive at Grey House and are immediately at odds, Sam plans the perfect date for Cassie. | S3 E3, Day After Day | 48m | |
| 01:30 | Good WitchThe whole town is caught up in romance; Martha's promises to the town are in jeopardy. | S3 E4, How to Say I Love You! | 48m | |
| 02:18 | Good WitchWhen a visiting chef is unable to relax, Cassie helps with the Merriwick Wish Book. | S3 E5, A Birthday Wish | 48m | |
| 03:06 | Good WitchAbigail decides to sell special Venezuelan chocolates at her flower shop. | S3 E6, Say It with Candy | 48m | |
| 03:54 | Good WitchCassie invites a traveling artist to stay at Grey House; Cassie arranges the Tri-Cities Healthfest. | S3 E7, In Sickness and in Health | 48m | |
| 04:42 | Good WitchCassie decides to plan a surprise party for Sam; Grace's ulterior motives. | S3 E8, Somewhat Surprising | 50m | |
| 05:32 | Good WitchCassie discovers a 10-year-old girl playing in the bushes at Grey House. | S3 E9, Not Getting Married Today, Part 1 | 49m | |
| 06:21 | Good WitchCassie takes a trip to Chicago to clear her head; Michael and Vanessa make a big decision. | S3 E10, Not Getting Married Today, Part 2 | 48m | |
| 07:09 | Good WitchCassie gives those around her jewelry that magically turn out to be just the thing each needed. | S4 E1, With This Ring | 50m | |
| 07:59 | Good WitchAn unpublished song written by a past guest at Grey House magically spreads throughout the town. | S4 E2, In 4/4, With Emotion | 51m | |
| 08:50 | Good WitchCassie helps an expecting couple accept how different their lives will be once their baby arrives. | S4 E3, Daddy's Home | 48m | |
| 09:38 | Good WitchCassie, Sam, Nick and Grace spend a night away at the family lake house. | S4 E4, Family Time | 48m | |
| 10:26 | Good WitchGrace falls under Elizabeth Merriwick's spell after Cassie finds a trunk filled with her clothing. | S4 E5, Written Like a Merriwick | 49m | |
| 11:15 | Good WitchHallmark Original Series. Cassie and Sam play detective matchmaker. | S4 E6, Match Game | 49m | |
| 12:04 | Good WitchHallmark Original Series. Abigial shares the same history with her budding romance, Phil. | S4 E7, Til Death Do Us Part | 50m | |
| 12:54 | Good WitchCassie sets out to track down Elizabeth Merriwick's original wedding dress. | S4 E8, All Dressed Up | 48m | |
| 13:42 | Good WitchGrace enlists the help of the town in making a magical quilt that's said to grant wishes. | S4 E9, How to Make a Middleton Quilt | 48m | |
| 14:30 | Good WitchSam and Cassie have to accept that their wedding might not be as perfect as planned. | S4 E10, Tossing the Bouquet | 50m | |
| 15:20 | Good WitchOn the eve of her wedding, Cassie's long-lost foster brother Vincent makes an unexpected appearance. | S5 E1, The Forever Tree, Pt. 1 | 50m | |
| 16:10 | Good WitchWith the wedding only a day away, Grace realizes how much she misses her father. | S5 E2, The Forever Tree, Pt. 2 | 49m | |
| 16:59 | Good WitchCassie and Sam celebrate their honeymoon at a country winery. | S5 E3, The Honeymoon | 52m | |
| 17:51 | Good WitchCassie plays host to Henry, a dashing stranger, and Olivia, a visiting poet. | S5 E4, The Prince | 48m | |
| 18:39 | Good WitchMartha is reinstated as mayor of Middleton and pits Grace and Luke against each other. | S5 E5, The Tea | 48m | |
| 19:27 | Good WitchCassie, Grace and Abigail embark on a road trip to Cassie's alma mater, Wellesley College. | S5 E6, The Road Trip | 48m | |
| 20:15 | Good WitchCassie and Sam realize that they still have some things to learn about one another. | S5 E7, The Grey-cation | 48m | |
| 21:03 | Good WitchMartha discovers clues to a fabled treasure in the Middleton town charter. | S5 E8, The Treasure | 49m | |
| 21:52 | Good WitchA rare comet appears over Middleton creating a stir around the town. | S5 E9, The Comet | 49m | |
| 22:41 | Good WitchCassie pulls out all the stops to ensure that Grace and Nick's graduation day is magical. | S5 E10, The Graduation | 51m | |
| 23:32 | Good WitchCassie welcomes Grey House guest Joy, who seems to be spying on the Merriwicks. | S6 E1, The Anniversary | 48m |
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_q85w3apt/schedule?date=2026-10-11&tz=America/New_York" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_q85w3apt/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_q85w3apt/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_q85w3apt/schedule?date=2026-10-11&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_q85w3apt/schedule?date=2026-10-11&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_q85w3apt/schedule", params={"date": "2026-10-11", "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_q85w3apt/schedule?date=2026-10-11, the first programme { "data": [ { "id": "ls_rnqej2mh", "channel": "ch_q85w3apt", "start": "2026-10-11T03:54:00Z", "stop": "2026-10-11T04:42:00Z", "title": "Good Witch", "sub_title": "Good Witch", "description": "The Middleton Merriwick is still not in bloom; an old friend of Abigail's che...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 30, "date": "2026-10-11", "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.