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/Singapore 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/Singapore. The same day from the API: GET /v1/channels/ch_ssrw9ybv/schedule?date=2026-10-17&tz=Asia/Singapore
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 22:30 | 星際嗜血族2210年,一支奉命營救人類、抵禦吸血鬼襲擊的隊伍,卻發現吸血鬼正密謀全面接管世界,並且得到來自意想不到勢力的協助。 | 1h 40m | ||
| 00:10 | 穆荷蘭大道一位充滿希望的洛杉磯女演員與一位失憶女子結為好友。當她們共同尋找她身份的過程中,現實與幻覺交織,這是一場如夢似幻,關於野心、身份與好萊塢黑暗面的驚悚之... | 2h 20m | ||
| 02:30 | 冷血奇兵在 16 世紀黑暗且瘟疫肆虐的歐洲,一群冷酷無情的雇傭兵為了向背叛他們的貴族領主復仇,劫持了領主兒子美麗的未婚妻。 | 2h 10m | ||
| 04:40 | 鳥人為了在一系列超級英雄電影宣告終結後重振自己的演藝事業,一名瘋狂的演員自編、自導、自演了一部百老匯舞台劇。沒想到,在首映禮上他試圖舉槍自盡後,這部戲竟然... | 1h 20m | ||
| 06:00 | 鳥人為了在一系列超級英雄電影宣告終結後重振自己的演藝事業,一名瘋狂的演員自編、自導、自演了一部百老匯舞台劇。沒想到,在首映禮上他試圖舉槍自盡後,這部戲竟然... | 35m | ||
| 06:35 | 飢餓遊戲:星火燎原在贏得第74屆飢餓遊戲後,凱妮絲·艾佛丁(Katniss Everdeen)平安返鄉。然而,她逐漸察覺反抗的火種正在暗中燃起,而都城依然牢牢掌控著帕納姆。隨著新一屆飢餓遊... | 2h 20m | ||
| 08:55 | 白宮末日當重裝雇傭兵圍攻白宮,一名面試特勤局失敗的特警必須衝破封鎖線,奮力營救總統、拯救被扣為人質的女兒,並阻止第三次世界大戰爆發。 | 2h 10m | ||
| 11:05 | 騎士出任務當一對亡命鴛鴦那段光鮮亮麗卻時而致命的冒險,演變成充滿背叛、死裡逃生、虛假身分以及令人頭昏眼花的愛情糾葛迷宮時,他們才終於意識到,此時此刻唯一能指望的... | 1h 50m | ||
| 12:55 | 大野兩條龍一名懶散卻擁有驚人槍速的槍手「三一」(Trinity)出沒於一座塵土飛揚的邊境小鎮,發現自己身為逃犯的哥哥竟然在此冒充當地警長。兩人最終半推半共地聯手,保護一... | 1h 55m | ||
| 14:50 | 飢餓遊戲:自由幻夢 終結戰帕納姆全境進入全面戰爭,凱妮絲挺身而出,在最終對決中直面殘暴的史諾總統。革命的高潮已至,命運的決戰即將揭曉。 | 2h 10m | ||
| 17:00 | 天崩地裂皮爾斯・布洛斯南主演《但丁峰》,一座寧靜小鎮面臨甦醒火山帶來的熔岩末日。爆炸性的動作場面與緊張懸疑,讓這部災難驚悚片成為必看之作! | 1h 45m | ||
| 18:45 | 白宮末日當重裝雇傭兵圍攻白宮,一名面試特勤局失敗的特警必須衝破封鎖線,奮力營救總統、拯救被扣為人質的女兒,並阻止第三次世界大戰爆發。 | 2h 10m | ||
| 20:55 | Z字特攻隊二戰期間,一群澳洲突擊隊員向日軍發動秘密任務,企圖營救一名受困的外交官 | 1h 35m | ||
| 22:30 | 鳥人為了在一系列超級英雄電影宣告終結後重振自己的演藝事業,一名瘋狂的演員自編、自導、自演了一部百老匯舞台劇。沒想到,在首映禮上他試圖舉槍自盡後,這部戲竟然... | 1h 55m |
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_ssrw9ybv/schedule?date=2026-10-17&tz=Asia/Singapore" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_ssrw9ybv/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_ssrw9ybv/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_ssrw9ybv/schedule?date=2026-10-17&tz=Asia/Singapore"); 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_ssrw9ybv/schedule?date=2026-10-17&tz=Asia/Singapore", { 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_ssrw9ybv/schedule", params={"date": "2026-10-17", "tz": "Asia/Singapore"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_ssrw9ybv/schedule?date=2026-10-17, the first programme { "data": [ { "id": "ls_7q8w85t2", "channel": "ch_ssrw9ybv", "start": "2026-10-16T14:30:00Z", "stop": "2026-10-16T16:10:00Z", "title": "星際嗜血族", "sub_title": null, "description": "2210年,一支奉命營救人類、抵禦吸血鬼襲擊的隊伍,卻發現吸血鬼正密謀全面接管世界,...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 14, "date": "2026-10-17", "tz": "Asia/Singapore" } }
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.