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 Asia/Kolkata 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 Asia/Kolkata. The same day from the API: GET /v1/channels/ch_x4f6ae79/schedule?date=2026-10-14&tz=Asia/Kolkata
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:50 | Taarak Mehta Ka Ooltah ChashmahBhakti is overjoyed when she sees a divine vision. Later, Bhakti calls the Gokuldham residents to meet someone special. | 26m | ||
| 00:16 | Taarak Mehta Ka Ooltah ChashmahGoli and Bhakti dance together. Later, Goli returns from heavy traffic to find that he has been replaced during the celebration. | 30m | ||
| 00:46 | Taarak Mehta Ka Ooltah ChashmahThe residents of Gokuldham Society feel grateful for Bhakti's presence. Later, all of them have the same dream. | 27m | ||
| 01:13 | Taarak Mehta Ka Ooltah ChashmahTaarak and his friends come up with a plan to avoid his healthy lunch. Meanwhile, Jethalal deals with a strange customer at his shop. | 28m | ||
| 01:41 | Taarak Mehta Ka Ooltah ChashmahAnjali arrives suddenly in Taarak's office when he gets ready to eat the food sent by Jethalal. However, will he get caught or escape the situation? | 21m | ||
| 02:02 | Taarak Mehta Ka Ooltah ChashmahThe men of the colony unite to secretly plan a fun Sunday for Taarak, ensuring he enjoys all his favorite foods without Anjali's knowledge. | 30m | ||
| 02:32 | Taarak Mehta Ka Ooltah ChashmahAs Anjali prepares diet food at Ratan and Roopa's home, Jethalal and the others persist with their Mission Masaledaar, aiming to assist Taarak. | 30m | ||
| 03:02 | Taarak Mehta Ka Ooltah ChashmahBhide tries to distract Anjali so that food can be delivered to Taarak. But Anjali walks into the room right when the food arrives. | 31m | ||
| 03:33 | Taarak Mehta Ka Ooltah ChashmahTaarak tries to win back Anjali with a heartfelt poem. She agrees to stay, but only if Taarak and his friends behave better. | 26m | ||
| 03:59 | RamayanIndrajit ambushes Shri Ram's army and confronts Lakshman, who arrives with divine benediction. However, Indrajit's potent arrow strike renders Laks... | 54m | ||
| 04:53 | DeviThe exploration of a mythological narrative wherein profound faith alters individual destinies within a contemporary societal context. Consequently... | 37m |
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_x4f6ae79/schedule?date=2026-10-14&tz=Asia/Kolkata" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_x4f6ae79/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_x4f6ae79/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_x4f6ae79/schedule?date=2026-10-14&tz=Asia/Kolkata"); 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_x4f6ae79/schedule?date=2026-10-14&tz=Asia/Kolkata", { 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_x4f6ae79/schedule", params={"date": "2026-10-14", "tz": "Asia/Kolkata"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_x4f6ae79/schedule?date=2026-10-14, the first programme { "data": [ { "id": "ls_37mtfsh0", "channel": "ch_x4f6ae79", "start": "2026-10-13T18:20:00Z", "stop": "2026-10-13T18:46:00Z", "title": "Taarak Mehta Ka Ooltah Chashmah", "sub_title": null, "description": "Bhakti is overjoyed when she sees a divine vision. Later, Bhakti calls the Go...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 11, "date": "2026-10-14", "tz": "Asia/Kolkata" } }
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.