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_xsxpf8ca/schedule?date=2026-10-15&tz=Asia/Taipei
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | 700俱樂部 | 30m | ||
| 00:30 | 遇見祝福 | 5m | ||
| 00:35 | 真情部落格 | 55m | ||
| 01:30 | 福氣人生 | 30m | ||
| 02:00 | 恩典365 | 5m | ||
| 02:05 | 經典音樂河 | 25m | ||
| 02:30 | 寇住幸福 | 30m | ||
| 03:00 | 救恩之光(雙語) | 30m | ||
| 03:30 | 展翅上騰 | 30m | ||
| 04:00 | 真情部落格 | 1h | ||
| 05:00 | 禱告大軍迎接復興 | 30m | ||
| 05:30 | 空中聖經學院 | 30m | ||
| 06:00 | 來 跳讚美操 | 12m | ||
| 06:12 | 來 跳讚美操 | 13m | ||
| 06:25 | 恩典365 | 5m | ||
| 06:30 | 陸可鐸時間 | 30m | ||
| 07:00 | 禱告大軍迎接復興 | 30m | ||
| 07:30 | 空中主日學 | 30m | ||
| 08:00 | 禱告大軍迎接復興 | 30m | ||
| 08:30 | 救恩之光(雙語) | 30m | ||
| 09:00 | 遇見祝福 | 5m | ||
| 09:05 | 真情部落格 | 55m | ||
| 10:00 | 家庭8點檔轉轉發現愛 | 50m | ||
| 10:50 | 機智青年生活 | 10m | ||
| 11:00 | 愛+好醫生 | 30m | ||
| 11:30 | 天堂敬拜 | 30m | ||
| 12:00 | 福氣人生 | 30m | ||
| 12:30 | 國度視野-好消息會客室 | 30m | ||
| 13:00 | 遇見祝福 | 5m | ||
| 13:05 | 真情部落格 | 55m | ||
| 14:00 | 家庭8點檔轉轉發現愛 | 50m | ||
| 14:50 | 愛我們的家 | 10m | ||
| 15:00 | 頌泉心靈醫治特會 | 1h | ||
| 16:00 | 健康新煮流 | 30m | ||
| 16:30 | 愛+好醫生 | 30m | ||
| 17:00 | 大家說英語 | 30m | ||
| 17:30 | 蔬菜狂想曲 | 30m | ||
| 18:00 | 福氣人生 | 30m | ||
| 18:30 | 健康新煮流 | 30m | ||
| 19:00 | 共享觀點 | 15m | ||
| 19:15 | 共享觀點 | 15m | ||
| 19:30 | 愛+好醫生 | 30m | ||
| 20:00 | 家庭8點檔轉轉發現愛 | 50m | ||
| 20:50 | 機智青年生活 | 10m | ||
| 21:00 | 遇見祝福 | 5m | ||
| 21:05 | 真情部落格 | 55m | ||
| 22:00 | 精選系列生命更新專題 | 1h | ||
| 23:00 | 與天使有約 | 1h |
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_xsxpf8ca/schedule?date=2026-10-15&tz=Asia/Taipei" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_xsxpf8ca/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_xsxpf8ca/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_xsxpf8ca/schedule?date=2026-10-15&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_xsxpf8ca/schedule?date=2026-10-15&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_xsxpf8ca/schedule", params={"date": "2026-10-15", "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_xsxpf8ca/schedule?date=2026-10-15, the first programme { "data": [ { "id": "ls_4jzb95fh", "channel": "ch_xsxpf8ca", "start": "2026-10-14T16:00:00Z", "stop": "2026-10-14T16:30:00Z", "title": "700俱樂部", "sub_title": null, "description": null, "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 48, "date": "2026-10-15", "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.