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 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_19np6v5n/schedule?date=2026-10-16&tz=Asia/Taipei
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | 料理職人通宵做美食料理職人通宵做美食 | 2h | ||
| 02:00 | 歡樂智多星益智遊戲節目,題目千變萬化,吃的用的玩的,和你一起腦力激盪,補充快樂泉源! | 1h | ||
| 03:00 | 風起西州製衣才女庫狄琉璃與裴行儉婚後面對大長公主的屢次使計刁難,琉璃聰慧應對,化險為夷。裴行儉因意外被貶遠赴西州上任,夫妻攜手同心,琉璃發揮自己的長才,傳... | 1h | ||
| 04:00 | 風起西州製衣才女庫狄琉璃與裴行儉婚後面對大長公主的屢次使計刁難,琉璃聰慧應對,化險為夷。裴行儉因意外被貶遠赴西州上任,夫妻攜手同心,琉璃發揮自己的長才,傳... | 1h | ||
| 05:00 | 無血無淚講述了小時候因父母離婚而分開的姐妹在命運的漩渦中以兒媳和婆婆的身份再次相遇,在慾望和矛盾中走向破裂的悲劇故事。 | 1h | ||
| 06:00 | 日本職人神技!老外好吃驚日本職人神技!老外好吃驚 | 3h | ||
| 09:00 | 綜藝大集合以走出戶外的互動遊戲和民眾同樂,高額的獎金讓節目精采有趣,節目內容好玩又好笑 | 2h | ||
| 11:00 | 週末最強大由綜藝大哥胡瓜、金鐘女視帝陳亞蘭以及全方位藝人歐弟聯手主持,這夢幻的主持陣容將為台灣的綜藝市場開創嶄新格局。 | 2h | ||
| 13:00 | 料理職人通宵做美食料理職人通宵做美食 | 2h | ||
| 15:00 | 老闆真有趣!人氣爆棚店美食綜藝,專門搜羅日本各地擁有「獨特個性老闆」的排隊名店。 | 1h | ||
| 16:00 | 請世界吃桌(美國紐約)台灣跨國辦桌實境美食節目,其中紐約篇記錄了「辦桌台灣隊」前往美國紐約時報廣場挑戰極限、席開辦桌的精彩過程。 | 2h | ||
| 18:00 | 請世界吃桌(美國紐約)台灣跨國辦桌實境美食節目,其中紐約篇記錄了「辦桌台灣隊」前往美國紐約時報廣場挑戰極限、席開辦桌的精彩過程。 | 2h | ||
| 20:00 | 請世界吃桌(美國紐約)台灣跨國辦桌實境美食節目,其中紐約篇記錄了「辦桌台灣隊」前往美國紐約時報廣場挑戰極限、席開辦桌的精彩過程。 | 2h | ||
| 22:00 | 開火開伙透過餐車展開17天環島料理冒險,走訪台灣13個城市,除了要完成各地指定任務、尋找在地食材,更得在限定時間內完成營業挑戰,最終以每日營業額決定勝負。 | 2h |
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_19np6v5n/schedule?date=2026-10-16&tz=Asia/Taipei" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_19np6v5n/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_19np6v5n/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_19np6v5n/schedule?date=2026-10-16&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_19np6v5n/schedule?date=2026-10-16&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_19np6v5n/schedule", params={"date": "2026-10-16", "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_19np6v5n/schedule?date=2026-10-16, the first programme { "data": [ { "id": "ls_kjv81pb4", "channel": "ch_19np6v5n", "start": "2026-10-15T16:00:00Z", "stop": "2026-10-15T18:00:00Z", "title": "料理職人通宵做美食", "sub_title": null, "description": "料理職人通宵做美食", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 14, "date": "2026-10-16", "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.