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/Ho_Chi_Minh 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/Ho_Chi_Minh. The same day from the API: GET /v1/channels/ch_0b72r4wm/schedule?date=2026-10-11&tz=Asia/Ho_Chi_Minh
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | Toàn cảnh 24 giờ | 30m | ||
| 00:30 | Tiếng tơ đồng: Ca tài tử trong nữ giới | 30m | ||
| 01:00 | Tọa đàm: Cảnh báo nhồi máu cơ tim từ đau thắt ngực | 1h | ||
| 02:00 | Được mùa - Chốt giá | 45m | ||
| 02:45 | Nông dân số: Số 12 | 15m | ||
| 03:00 | Khỏe cùng chuyên gia: Đau cứng khớp | 1h | ||
| 04:00 | Bản tin Nông nghiệp | 10m | ||
| 04:10 | Xổ số kiến thiết: Hậu Giang - Long An | 30m | ||
| 04:40 | Nhà nông và công nghệ: Số 41 | 5m | ||
| 04:45 | Lời xin lỗi diệu kỳ: Đời cha ăn mặn đời con khát nước | 15m | ||
| 05:00 | Phim truyện: Mặt trời lạnh - Tập 2 | 45m | ||
| 05:45 | Phim hoạt hình: Vận mệnh trong tay nàng - Tập 11 | 15m | ||
| 06:00 | Toàn cảnh 24 giờ | 45m | ||
| 06:45 | Thương nhớ miền Tây: Về miền đất gió Cà Mau | 15m | ||
| 07:00 | Thời sự | 45m | ||
| 07:45 | Sân khấu - Cải lương: Chuyện tình Lan và Điệp | 1h 30m | ||
| 09:15 | Check in Việt Nam: Sức sống Côn Đảo | 30m | ||
| 09:45 | Phim truyện: Mặt trời lạnh - Tập 3 | 45m | ||
| 10:30 | Bí mật thế kỷ: Thiên tài bị lãng quên - Phần 2 | 30m | ||
| 11:00 | Tình khúc vượt thời gian: Ngàn năm vẫn đợi | 45m | ||
| 11:45 | Ký ức miền Tây: Ai đưa qua sông | 15m | ||
| 12:00 | Tình khúc vượt thời gian: Ngàn năm vẫn đợi | 45m | ||
| 12:45 | Tiếng tơ đồng: Ca tài tử trong nữ giới | 30m | ||
| 13:15 | Lời xin lỗi diệu kỳ: Đời cha ăn mặn đời con khát nước | 15m | ||
| 13:30 | Thể thao: V League 2026 - 2027: Ninh Bình - Thanh Hóa | 1h 30m | ||
| 15:00 | Những mảnh ghép của cuộc sống: Thiên nhiên Bạch Long Vĩ | 30m | ||
| 15:30 | Ký sự: Nguồn lực bứt phá - Tập 1 | 15m | ||
| 15:45 | Phóng sự: Cà Mau - Tiềm năng đón gió, khát vọng vươn xa | 15m | ||
| 16:00 | Phim truyện: Hoa sữa về trong gió - Tập 12 | 45m | ||
| 16:45 | Sắc màu các dân tộc: Âm sắc người Xa Phó | 30m | ||
| 17:15 | Ký ức miền Tây: Mùi tre trong ký ức | 15m | ||
| 17:30 | Ca nhạc: Giọt tình buồn | 30m | ||
| 18:00 | Bản tin Nông nghiệp | 10m | ||
| 18:10 | Bản tin thể thao | 5m | ||
| 18:15 | Nông dân số: Số 13 | 15m | ||
| 18:30 | Phóng sự: Cà Mau - Tiềm năng đón gió, khát vọng vươn xa | 15m | ||
| 18:45 | Ký sự: Nguồn lực bứt phá - Tập 2 | 15m | ||
| 19:00 | Thể thao: V League 2026 - 2027: Hải Phòng - Thanh Hóa | 1h 30m | ||
| 20:30 | Phim truyện: Đại Tần Phú - Tập 69 | 45m | ||
| 21:15 | Sống khỏe mỗi ngày: Bồi bổ sức khỏe người cao tuổi | 1h | ||
| 22:15 | Phim truyện: Hoa sữa về trong gió - Tập 13 | 40m | ||
| 22:55 | Thông báo - Ghi ơn | 5m | ||
| 23:00 | Tạp chí kinh tế cuối tuần | 30m | ||
| 23:30 | Phim hoạt hình: Vận mệnh trong tay nàng - Tập 11 | 15m | ||
| 23:45 | 360 độ miền Tây: Số 39 | 15m |
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_0b72r4wm/schedule?date=2026-10-11&tz=Asia/Ho_Chi_Minh" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_0b72r4wm/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_0b72r4wm/history?from=2026-06-29T00:00:00Z&to=2026-06-30T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_0b72r4wm/schedule?date=2026-10-11&tz=Asia/Ho_Chi_Minh"); 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_0b72r4wm/schedule?date=2026-10-11&tz=Asia/Ho_Chi_Minh", { 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_0b72r4wm/schedule", params={"date": "2026-10-11", "tz": "Asia/Ho_Chi_Minh"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_0b72r4wm/schedule?date=2026-10-11, the first programme { "data": [ { "id": "ls_vfgaeaqa", "channel": "ch_0b72r4wm", "start": "2026-10-10T17:00:00Z", "stop": "2026-10-10T17:30:00Z", "title": "Toàn cảnh 24 giờ", "sub_title": null, "description": null, "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 45, "date": "2026-10-11", "tz": "Asia/Ho_Chi_Minh" } }
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 29 June 2026 | Category |
|---|---|---|
| 12:00 | Tình khúc vượt thời gian: Những miền ký ức | |
| 12:45 | Mảnh ghép hoàn hảo: Số 101 | |
| 13:20 | THTT FIFA World Cup 2026: Nam Phi - Canada | |
| 14 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 155 countries.