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/Hong_Kong 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/Hong_Kong. The same day from the API: GET /v1/channels/ch_g0m2z7hz/schedule?date=2026-10-17&tz=Asia/Hong_Kong
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:40 | 怒海狂蛛海上救難隊員阿傑為了生計及克服之前同伴遇難的陰影,再次乘坐漁船出海謀生,卻再次遭遇巨大的危機。在船上的人不僅要面對惡劣的暴雨天氣,還有海底未知生物正對... | 1h 50m | ||
| 01:30 | 目中無人盛世大唐氣象萬千,各色人物皆在江湖中行走,身懷絕技的盲眼“捉刀人成瞎子,遇上慘遭滅門和淩辱的酒家女倪燕。原本不與人有過多交情的成瞎子卻意外與她產生關聯,... | 1h 20m | ||
| 02:50 | 茅山大師城裡驚現“僵屍病毒,人心惶惶,民不聊生。茅山弟子雲淩與三位師兄弟奉命下山盡辦法解救百姓於水火,不料四人卻步入幕後黑手的陷阱,被幻蠱術迷惑,挑撥四人之間的... | 1h 25m | ||
| 04:15 | 大海怪明朝末年,大明水師軍官林嘯為了阻止東瀛倭寇得到“神機武庫,及要找回失蹤的戰友陸老大,而接受了水師參將向吉的徵召,踏上兇險的尋寶之路。航行中,神秘海怪族羣... | 1h 20m | ||
| 05:35 | 大魚漁民子豪生活在海邊小鎮歸港,以捕魚為生。有一天,他偶然遇到一位神秘的女孩小藝,兩人互生情愫,終於走在一起。但好景不長,突然有一個名叫老金的神秘中年人到來... | 25m | ||
| 06:00 | 大魚漁民子豪生活在海邊小鎮歸港,以捕魚為生。有一天,他偶然遇到一位神秘的女孩小藝,兩人互生情愫,終於走在一起。但好景不長,突然有一個名叫老金的神秘中年人到來... | 1h 15m | ||
| 07:15 | 幽靈狙擊手雷霆安保公司的幽靈小隊,由林森帶領隊友執行解救女科學家南茜的任務。眾人救南後在撤離時見到一名小孩被關在籠裡,趕去營救,卻聽到槍響,之後全軍覆沒。於偉剛... | 1h 20m | ||
| 08:35 | 臥狼行動邊防部隊正在追蹤國內最大毒梟組織旭東商會的一批價值數百萬美元的毒品,卻被劉老三團夥搶走。警方找到在監獄服刑劉的兄弟大飛,說服他幫忙找回毒品。組織老大... | 1h 20m | ||
| 09:55 | 降魔大師邊境小鎮妖魔遺禍,吳靖子發出請柬,請各位降妖高手前來支援。市井遊民阿拾,意外被孟珠救下後竟愛上孟珠,要拜她為師,一路跟著孟珠及其他降妖高手前往小鎮去消滅... | 1h 30m | ||
| 11:25 | 反飆車行動香港警隊與黑勢力誓不兩立,一個以程志飛為隊長的“反飛車組組成反飆車隊,另一個以蔣小海為首的“飛車黨是一群黑市非法街頭飆車黨。因為一局地下飆車賽,警方在調... | 1h 20m | ||
| 12:45 | 棺山古墓觀山太保傳人張三爺應師弟赫老道之邀,與徒弟前往棺山找尋傳說中的麻姑墓。相傳內裡不僅有珍貴寶物,還有長生之術。他們為探尋真相去尋找古墓,而當古墓即將開啟... | 1h 25m | ||
| 14:10 | 風起洛陽之陰陽界武周時期,生活在洛陽洛河水兩端但不同出生的兩個少女意外被捲入懸案之中。一位是金吾衛隊長的女兒趙青青,另一位是生於市井底層的女孩小騙子。她們一同遭遇在... | 1h 30m | ||
| 15:40 | 狄仁傑之幽兵借路武周時期,禦史中丞胡顯德一家被殺,武則天派狄仁傑前往調查。狄調查發現,原本老實本分的胡離奇般參與了一場大案,此案可能是一宗案中案。在查案過程中,狄不斷遇... | 1h 20m | ||
| 17:00 | 食人鯊一群偷獵者在公海上對鯊魚進行殘酷的捕殺,激怒了大白鯊。偷獵者死於鯊魚的口中,之後盛怒的大白鯊把注意力轉向了在附近遊艇上慶祝畢業的四個好友。於是,四人與... | 1h 15m | ||
| 18:15 | 東遊韓渺是八仙之一韓湘子的化身,在一個缺水猶如沙漠的世界一路向東歷練。而正在執掌東海的龍女因失去記憶,化成了一條魚精,意外遇到和自己有宿世因緣的韓渺。二人... | 1h 20m | ||
| 19:35 | 落魄保鑣之危機疑雲前海外某安保公司的精英隊員韓彬,在一次保護任務時失敗,從此銷聲匿跡,頹廢終日。老拍檔希望韓能重新振作,在他極力邀請下,韓答應保護明星蘇曉琪前往東南亞某國... | 1h 25m | ||
| 21:00 | 快進者高尚是一名普通的救護車司機,從小就懷抱著賽車夢想。他誤打誤撞捲入一場飆車糾紛中,結識了一流賽車機械師鮑佳音,令他有機會開啓賽車手之路。在他猶疑不知應該... | 1h 45m | ||
| 22:45 | 精武陳真為了取長補短,陳真遠赴日本學習工業技術。留學期間,陳真與擅長形意拳的武術家薛自立一起,為了捍衛中國人民的尊嚴,他們勇敢面對日本軍部官員的比武挑戰。一場... | 1h 20m |
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_g0m2z7hz/schedule?date=2026-10-17&tz=Asia/Hong_Kong" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_g0m2z7hz/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_g0m2z7hz/history?from=2025-10-12T00:00:00Z&to=2025-10-13T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_g0m2z7hz/schedule?date=2026-10-17&tz=Asia/Hong_Kong"); 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_g0m2z7hz/schedule?date=2026-10-17&tz=Asia/Hong_Kong", { 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_g0m2z7hz/schedule", params={"date": "2026-10-17", "tz": "Asia/Hong_Kong"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_g0m2z7hz/schedule?date=2026-10-17, the first programme { "data": [ { "id": "ls_98kxwrbd", "channel": "ch_g0m2z7hz", "start": "2026-10-16T15:40:00Z", "stop": "2026-10-16T17:30:00Z", "title": "怒海狂蛛", "sub_title": null, "description": "海上救難隊員阿傑為了生計及克服之前同伴遇難的陰影,再次乘坐漁船出海謀生,卻再次...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 18, "date": "2026-10-17", "tz": "Asia/Hong_Kong" } }
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 | Sunday 12 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.