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/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_gq0hsqmn/schedule?date=2026-10-19&tz=Asia/Seoul
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | 산하침 | 드라마, 시대극 | 1h | |
| 01:00 | 2026 MOA 여자 최고기사 결정전 | 취미/레저, 바둑 | 1h | |
| 02:00 | 2026 MOA 여자 최고기사 결정전 | 취미/레저, 바둑 | 1h | |
| 03:00 | 명작큐브 | 드라마, 단막극/단편 | 1h | |
| 04:00 | 화담록 | 드라마, 멜로 | 1h | |
| 05:00 | 인간경홍객 : 다시 만난 그대 | 드라마, 멜로 | 1h | |
| 06:00 | 인간경홍객 : 다시 만난 그대 | 드라마, 멜로 | 1h | |
| 07:00 | 운수행 | 드라마, 멜로 | 1h | |
| 08:00 | 운수행 | 드라마, 멜로 | 1h | |
| 09:00 | 칠근심간 | 드라마, 환상/sf | 1h | |
| 10:00 | 인간극장인생의 의미와 삶의 고뇌, 힘겹지만 살 만한 가치가 있는 평범한 일상. 일반인의 드라마 같은 삶의 무대에서 살아가는 리얼라이프 스토리를 통해 인생의 참 ... | 시사/다큐, 라이프/휴먼 | 1h 30m | |
| 11:30 | 인간극장인생의 의미와 삶의 고뇌, 힘겹지만 살 만한 가치가 있는 평범한 일상. 일반인의 드라마 같은 삶의 무대에서 살아가는 리얼라이프 스토리를 통해 인생의 참 ... | 시사/다큐, 라이프/휴먼 | 1h 30m | |
| 13:00 | 포청천 2011장마철이 되면 강물이 범람하는 송나라의 도성 개봉 제방의 수해원인을 조사하게 되면서 벌어지는 이야기를 그린 드라마 | 드라마, 시대극 | 1h | |
| 14:00 | 포청천 2011장마철이 되면 강물이 범람하는 송나라의 도성 개봉 제방의 수해원인을 조사하게 되면서 벌어지는 이야기를 그린 드라마 | 드라마, 시대극 | 1h | |
| 15:00 | 포청천 2011장마철이 되면 강물이 범람하는 송나라의 도성 개봉 제방의 수해원인을 조사하게 되면서 벌어지는 이야기를 그린 드라마 | 드라마, 시대극 | 1h | |
| 16:00 | 구암 허준동의보감의 저자 허준의 드라마틱한 인생과 동양의학의 세계를 극화했다. | 드라마, 역사/사극 | 1h 30m | |
| 17:30 | 구암 허준동의보감의 저자 허준의 드라마틱한 인생과 동양의학의 세계를 극화했다. | 드라마, 역사/사극 | 1h 30m | |
| 19:00 | 인간극장인생의 의미와 삶의 고뇌, 힘겹지만 살 만한 가치가 있는 평범한 일상. 일반인의 드라마 같은 삶의 무대에서 살아가는 리얼라이프 스토리를 통해 인생의 참 ... | 시사/다큐, 라이프/휴먼 | 1h 30m | |
| 20:30 | 인간극장인생의 의미와 삶의 고뇌, 힘겹지만 살 만한 가치가 있는 평범한 일상. 일반인의 드라마 같은 삶의 무대에서 살아가는 리얼라이프 스토리를 통해 인생의 참 ... | 시사/다큐, 라이프/휴먼 | 1h 30m | |
| 22:00 | 오지:객자연인 윤택의 오지 여행기 대한민국 곳곳에 위치한 오지를 찾아다니는 리얼 예능 프로그램 | 교양/정보, 일반 | 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_gq0hsqmn/schedule?date=2026-10-19&tz=Asia/Seoul" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_gq0hsqmn/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_gq0hsqmn/history?from=2025-10-13T00:00:00Z&to=2025-10-14T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_gq0hsqmn/schedule?date=2026-10-19&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_gq0hsqmn/schedule?date=2026-10-19&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_gq0hsqmn/schedule", params={"date": "2026-10-19", "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_gq0hsqmn/schedule?date=2026-10-19, the first programme { "data": [ { "id": "ls_yxdephxn", "channel": "ch_gq0hsqmn", "start": "2026-10-18T15:00:00Z", "stop": "2026-10-18T16:00:00Z", "title": "산하침", "sub_title": null, "description": null, "category": [ "드라마", "시대극" ], "flags": { "new": false, "live": false } } ], "meta": { "count": 20, "date": "2026-10-19", "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 | Monday 13 October 2025 | Category |
|---|---|---|
| 00:00 | 무인시대 | 드라마, 역사/사극 |
| 01:00 | 무인시대 | 드라마, 역사/사극 |
| 02:00 | 무인시대 | 드라마, 역사/사극 |
| 19 more programmes that day, on Archive | ||
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.