74.3M 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/Seoul 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/Seoul. The same day from the API: GET /v1/channels/ch_h3n37vr6/schedule?date=2026-10-14&tz=Asia/Seoul
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:55 | MBN 뉴스김은미 앵커가 진행하는 고품격 시사 대담 월~금 오후 4시 방송 | 와이드 | 1h 44m | |
| 01:28 | 2026년 10월 13일 아침&매일경제조간신문을 한 눈에... | 1h 17m | ||
| 01:39 | MBN 뉴스공정하고 신뢰받는 MBN 고품격 종합뉴스 | 7 | 1h 9m | |
| 02:45 | 2026년 10월 13일 전국네트워크뉴스전국네트워크뉴스 | 10m | ||
| 02:55 | 2026년 10월 13일 굿모닝MBN On now굿모닝MBN | 52m | ||
| 03:47 | 2026년 10월 13일 아침&매일경제조간신문을 한 눈에... | 1h 17m | ||
| 05:04 | 2026년 10월 13일 전국네트워크뉴스전국네트워크뉴스 | 10m | ||
| 05:15 | 2026년 10월 13일 굿모닝MBN굿모닝MBN | 52m | ||
| 06:07 | 2026년 10월 13일 아침&매일경제조간신문을 한 눈에... | 1h 17m | ||
| 07:24 | 2026년 10월 13일 전국네트워크뉴스전국네트워크뉴스 | 10m | ||
| 07:34 | 2026년 10월 13일 굿모닝MBN굿모닝MBN | 52m |
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_h3n37vr6/schedule?date=2026-10-14&tz=Asia/Seoul" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_h3n37vr6/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_h3n37vr6/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_h3n37vr6/schedule?date=2026-10-14&tz=Asia/Seoul"); 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_h3n37vr6/schedule?date=2026-10-14&tz=Asia/Seoul", { 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_h3n37vr6/schedule", params={"date": "2026-10-14", "tz": "Asia/Seoul"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_h3n37vr6/schedule?date=2026-10-14, the first programme { "data": [ { "id": "ls_9s6am1xx", "channel": "ch_h3n37vr6", "start": "2026-10-13T14:55:32Z", "stop": "2026-10-13T16:39:47Z", "title": "MBN 뉴스", "sub_title": "와이드", "description": "김은미 앵커가 진행하는 고품격 시사 대담 월~금 오후 4시 방송", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 11, "date": "2026-10-14", "tz": "Asia/Seoul" } }
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 | Thursday 10 October 2019 | 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.