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 Africa/Johannesburg time, what is on now and next, and the same data in your app with one call.
All times Africa/Johannesburg. The same day from the API: GET /v1/channels/ch_4gsxemz5/schedule?date=2026-10-12&tz=Africa/Johannesburg
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:17 | NursesDr. Hamilton makes his presence felt at St. Mary’s; Grace is catapulted into a high-stakes medical procedure. | 52m | ||
| 00:09 | Mary Kills PeopleWhen a doctor becomes involved with a patient, it sets off a chain of events that could destroy her life. | 52m | ||
| 01:01 | Mary Kills PeopleWhen Mary discovers the truth about Joel’s identity, she must quickly devise a plan to avoid police capture. | 52m | ||
| 01:53 | Mary Kills PeopleBen and Frank get closer to the truth, and an unexpected visitor to the ER sends Mary into a tailspin. | 52m | ||
| 02:46 | Mary Kills PeopleBen gets closer to learning the truth about Mary, while Des reconsiders his alliance with her. | 51m | ||
| 03:36 | Mary Kills PeopleOn the brink of losing everyone close to her, Mary considers whether she should give up her operation for good | 52m | ||
| 04:28 | Mary Kills PeopleMary decides that, in order to save her family and her career, she must accept Grady as her partner. | 51m | ||
| 05:19 | Nurse JackieJackie is ambushed by Antoinette. Coop’s dream finally comes true. | 32m | ||
| 05:52 | Nurse JackieJackie detoxes at home – with help. Frank raises an objection about Grace. | 27m | ||
| 06:19 | Nurse JackieFrank warns Jackie about a DEA investigation. Antoinette turns to Eddie. | 32m | ||
| 06:51 | Nurse JackieJackie's drug use intensifies as the DEA zeroes in on a suspect. | 32m | ||
| 07:23 | Nurse JackieJackie reluctantly attends Kevin’s wedding. Carrie makes demands on Coop. | 33m | ||
| 07:55 | Nurse JackieCoop gets a surprise. Jackie hits the road. Season finale. | 31m | ||
| 08:26 | Nurse JackieJackie suffers through a harrowing stay in a holding cell followed by sedated detox. | 33m | ||
| 08:59 | Nurse JackieJackie sets her sights on returning to All Saints, aided by her lawyer - but she can’t afford his retainer. | 32m | ||
| 09:31 | Nurse JackieUnder the Diversion Program, Jackie cannot touch patients or medication and undergoes daily urine screens. | 32m | ||
| 10:03 | Nurse JackieJackie, Dr. Prince and Akalitus run the ER without nurses when Zoey leads a walk-out to protest the closing. | 29m | ||
| 10:32 | Nurse JackieAfter an unexpected validation from Grace, Jackie is determined to stop dealing. | 32m | ||
| 11:04 | Nurse JackieDr. Prince enlists Jackie’s help to keep an ICU patient with a brain tumor from giving up his fight to live. | 31m | ||
| 11:35 | Saving HopeTempers flare as Dev’s med school rival, Billy Scott arrives at Hope Zion. | 51m | ||
| 12:27 | Saving HopeAlex tracks down the father of a patient who needs a liver transplant. Zach faces trials in the E.R. | 51m | ||
| 13:18 | Saving HopeAlex and Maggie ask Charlie for his opinion on a patient's treatment. | 51m | ||
| 14:09 | Saving HopeAlex and Maggie deal with a tough lawyer after surgical complications with their cancer study patient. | 51m | ||
| 15:01 | Saving HopeCharlie and Manny treat a couple. Maggie evaluates the interns. Billy asks Maggie to be his mentor. | 51m | ||
| 15:52 | Saving HopeThe doctors rally together to try to save an unknown man who was struck by a subway train. | 51m | ||
| 16:43 | Saving HopeAlex tries to distract herself from her grief. Charlie and Shahir try to track down Alex's brother. | 51m | ||
| 17:34 | NursesThere’s a new boss - Nurse Manager Kate Faulkner, who’s going to give the nurses all a run for their money. | 51m | ||
| 18:25 | NursesIt’s a typically crazy day at St. Mary’s when an Amber Alert rings out. | 52m | ||
| 19:17 | NursesHospitals are no stranger to the things that keep us up at night or the secrets we keep. | 51m | ||
| 20:09 | Saving HopeTempers flare as Dev’s med school rival, Billy Scott arrives at Hope Zion. | 51m | ||
| 21:00 | Saving HopeAlex tracks down the father of a patient who needs a liver transplant. Zach faces trials in the E.R. | 51m | ||
| 21:51 | Saving HopeAlex and Maggie ask Charlie for his opinion on a patient's treatment. | 51m | ||
| 22:43 | Saving HopeAlex and Maggie deal with a tough lawyer after surgical complications with their cancer study patient. | 51m | ||
| 23:34 | Saving HopeCharlie and Manny treat a couple. Maggie evaluates the interns. Billy asks Maggie to be his mentor. | 51m |
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_4gsxemz5/schedule?date=2026-10-12&tz=Africa/Johannesburg" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_4gsxemz5/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_4gsxemz5/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_4gsxemz5/schedule?date=2026-10-12&tz=Africa/Johannesburg"); 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_4gsxemz5/schedule?date=2026-10-12&tz=Africa/Johannesburg", { 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_4gsxemz5/schedule", params={"date": "2026-10-12", "tz": "Africa/Johannesburg"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_4gsxemz5/schedule?date=2026-10-12, the first programme { "data": [ { "id": "ls_pw4e16e5", "channel": "ch_4gsxemz5", "start": "2026-10-11T21:17:53Z", "stop": "2026-10-11T22:09:53Z", "title": "Nurses", "sub_title": null, "description": "Dr. Hamilton makes his presence felt at St. Mary’s; Grace is catapulted into ...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 34, "date": "2026-10-12", "tz": "Africa/Johannesburg" } }
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.