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/Taipei 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/Taipei. The same day from the API: GET /v1/channels/ch_dm21xfk6/schedule?date=2026-10-12&tz=Asia/Taipei
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 22:40 | 惡靈古堡-最終章人類存亡的最後關鍵艾莉絲,將帶領天譴日的倖存者重回一切的源頭─拉昆市,對抗保護傘公司佈下的強大軍力。在緊迫的時間內她將與昔日盟友和新加入的團員共同對... | 2h 15m | ||
| 00:55 | (重)MLB看東森 分區系列賽(重)MLB看東森 分區系列賽 | 3h | ||
| 03:55 | 洋片幕後趣洋片幕後趣 | 2h | ||
| 05:55 | 倒數反擊前海軍陸戰隊的湯瑪斯,是一名偷天換日的神鬼大盜,曾連續犯下12家銀行搶案並盜取九百多萬美金,直到他因遇見了安妮後決定金盆洗手,當他向聯邦調查局提出交... | 2h 5m | ||
| 08:00 | (直)MLB看東森 聯盟冠軍系列賽(直)MLB看東森 聯盟冠軍系列賽 | 3h | ||
| 11:00 | 絕地戰警FOR LIFE來自邁阿密警局的黃金拍檔,在重現許多經典帥氣的動作場面之餘,也不忘維持自己一貫的搞笑風格! 馬奎斯(馬汀勞倫斯 飾)已經是巡官,麥克(威爾史密斯 飾)卻... | 2h 35m | ||
| 13:35 | 煙囪小鎮的普佩一段深信「星星」存在的少年.魯必奇與垃圾人.普佩,為了守護希望與夢想的冒險故事。父親總是告訴魯必奇,在與世隔絕、煙霧迷漫的煙囪小鎮上空另一側有著「... | 2h 15m | ||
| 15:50 | 倫文敘老點柳先開倫文敘與柳先開同為才名遠播的風流才子,卻因性格南轅北轍,時常鬥嘴較勁。鄉試後兩人皆入明校求學,不僅在課業上針鋒相對,更同時追求程情,鬧出不少笑話。... | 2h | ||
| 17:50 | 七龍珠超-布羅利《七龍珠超:布羅利》是七龍珠系列第二十部劇場版,這是一個全新的「賽亞人」故事,劇情將會延續在即將結束的電視動畫《七龍珠》,關於布羅利和悟空之間的故... | 2h 10m | ||
| 20:00 | 脫稿玩家描述一個銀行小職員 (萊恩雷諾斯飾) 日復一日年復一年做著無聊的工作,過著無聊的生活,直到有一天他突然發現自己是一個暴力電玩遊戲中可有可無的配角,他想... | 2h 25m | ||
| 22:25 | 驚奇隊長原是空軍飛行員的卡蘿丹佛斯,在克里星球甦醒並失去了過往所有的記憶,她獲得驚人的超人力量,受軍隊的最高指揮官與導師揚羅格(裘德洛 飾演)指導,以克里人的... | 2h 35m |
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_dm21xfk6/schedule?date=2026-10-12&tz=Asia/Taipei" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_dm21xfk6/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_dm21xfk6/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_dm21xfk6/schedule?date=2026-10-12&tz=Asia/Taipei"); 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_dm21xfk6/schedule?date=2026-10-12&tz=Asia/Taipei", { 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_dm21xfk6/schedule", params={"date": "2026-10-12", "tz": "Asia/Taipei"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_dm21xfk6/schedule?date=2026-10-12, the first programme { "data": [ { "id": "ls_7mywn5bf", "channel": "ch_dm21xfk6", "start": "2026-10-11T14:40:00Z", "stop": "2026-10-11T16:55:00Z", "title": "惡靈古堡-最終章", "sub_title": null, "description": "人類存亡的最後關鍵艾莉絲,將帶領天譴日的倖存者重回一切的源頭─拉昆市,對抗保護...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 11, "date": "2026-10-12", "tz": "Asia/Taipei" } }
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.