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_19np6v5n/schedule?date=2026-10-17&tz=Asia/Taipei
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | 日本職人神技!老外好吃驚日本職人神技!老外好吃驚 | 3h | ||
| 03:00 | 開火開伙透過餐車展開17天環島料理冒險,走訪台灣13個城市,除了要完成各地指定任務、尋找在地食材,更得在限定時間內完成營業挑戰,最終以每日營業額決定勝負。 | 2h | ||
| 05:00 | 請世界吃桌(美國紐約)台灣跨國辦桌實境美食節目,其中紐約篇記錄了「辦桌台灣隊」前往美國紐約時報廣場挑戰極限、席開辦桌的精彩過程。 | 2h | ||
| 07:00 | 請世界吃桌(美國紐約)台灣跨國辦桌實境美食節目,其中紐約篇記錄了「辦桌台灣隊」前往美國紐約時報廣場挑戰極限、席開辦桌的精彩過程。 | 2h | ||
| 09:00 | 請世界吃桌(美國紐約)台灣跨國辦桌實境美食節目,其中紐約篇記錄了「辦桌台灣隊」前往美國紐約時報廣場挑戰極限、席開辦桌的精彩過程。 | 2h | ||
| 11:00 | 綜藝大集合以走出戶外的互動遊戲和民眾同樂,高額的獎金讓節目精采有趣,節目內容好玩又好笑 | 2h | ||
| 13:00 | 一字千金以漢字為主題並體驗中華文字之美的益智競賽節目,號稱「電視史上結合App、最緊張、最刺激的文字書寫比賽」 | 1h | ||
| 14:00 | 一字千金以漢字為主題並體驗中華文字之美的益智競賽節目,號稱「電視史上結合App、最緊張、最刺激的文字書寫比賽」 | 1h | ||
| 15:00 | 我家寶貝大冒險我家寶貝大冒險 | 3h | ||
| 18:00 | 米其林大廚激推!平價迴轉壽司米其林大廚激推!平價迴轉壽司 | 2h | ||
| 20:00 | 日本驅害達人專除巨鼠浣熊大黃蜂節目以實地跟拍的方式,記錄日本各地的專業驅除專家如何解決威脅民眾生活的「害蟲」與「害獸」危機。 | 2h 30m | ||
| 22:30 | 破冰前進!日本南極觀測船從日本出發,跨越赤道,一路航行至南極科學研究基地進行運補作業。全程跟拍巨大的日本南極觀測船(白瀨號)長達 151天 的艱辛航程。 | 1h 30m |
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-17&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-17&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-17&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-17", "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-17, the first programme { "data": [ { "id": "ls_jn404q9f", "channel": "ch_19np6v5n", "start": "2026-10-16T16:00:00Z", "stop": "2026-10-16T19:00:00Z", "title": "日本職人神技!老外好吃驚", "sub_title": null, "description": "日本職人神技!老外好吃驚", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 12, "date": "2026-10-17", "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 155 countries.