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 America/New_York time, what is on now and next, and the same data in your app with one call.
All times America/New_York. The same day from the API: GET /v1/channels/ch_j1e0xdaf/schedule?date=2026-10-13&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:45 | American Ninja WarriorDrew Drechsel and Jesse Labreck lead Team USA in a battle for worldwide ninja domination. | American Ninja Warrior | 1h 36m | |
| 01:21 | American Ninja WarriorDrew Drechsel and Jesse Labreck lead Team USA in a battle for worldwide ninja domination. | American Ninja Warrior | 2h 25m | |
| 03:46 | American Ninja WarriorA new season begins with round one of qualifiers, as the ninjas face six challenging obstacles. | S13 E1, Qualifiers 1 | 1h 37m | |
| 05:23 | American Ninja WarriorThe qualifiers continue as ninjas face six challenging obstacles including Shrinking Steps and more. | S13 E2, Qualifiers 2 | 1h 37m | |
| 07:00 | American Ninja WarriorThe qualifiers continue as ninjas face six challenging obstacles, including Air Surfer and more. | S13 E3, Qualifiers 3 | 1h 36m | |
| 08:36 | American Ninja WarriorThe qualifiers continue as ninjas face six challenging obstacles, including Double Down and more. | S13 E4, Qualifiers 4 | 1h 37m | |
| 10:13 | American Ninja WarriorThe qualifiers conclude as ninjas face six challenging obstacles, including Tilt A Whirl and more. | S13 E5, Qualifiers 5 | 1h 37m | |
| 11:50 | American Ninja WarriorThe semifinals begin as ninjas face 10 challenging obstacles, including Wall-to-Wall and more. | S13 E6, Semifinals 1 | 1h 37m | |
| 13:27 | American Ninja WarriorThe semifinals continue as competitors face up to 10 obstacles, including the new obstacle Padlock. | S13 E7, Semifinals 2 | 1h 37m | |
| 15:04 | American Ninja WarriorSemifinals continue as competitors face up to 10 obstacles, including the new obstacle Drop Zone. | S13 E8, Semifinals 3 | 1h 37m | |
| 16:41 | American Ninja WarriorThe semifinals conclude in Los Angeles as competing ninjas face up to 10 challenging obstacles. | S13 E9, Semifinals 4 | 1h 36m | |
| 18:17 | American Ninja WarriorThe finals return to Las Vegas, where the ninjas face up to eight super-sized obstacles. | S13 E10, National Finals 1 | 1h 37m | |
| 19:54 | American Ninja WarriorThe finals continue where the ninjas face up to eight supersized obstacles. | S13 E11, National Finals 2 | 1h 37m | |
| 21:31 | American Ninja WarriorThe finals conclude in Las Vegas as the remaining competitors vie for their chance to win. | S13 E12, National Finals 3 | 1h 37m | |
| 23:08 | American Ninja Warrior12 elite female competitors battle across daunting courses and the winner takes home $50,000. | American Ninja Warrior | 1h 36m |
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_j1e0xdaf/schedule?date=2026-10-13&tz=America/New_York" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_j1e0xdaf/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_j1e0xdaf/history?from=2026-10-05T00:00:00Z&to=2026-10-06T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_j1e0xdaf/schedule?date=2026-10-13&tz=America/New_York"); 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_j1e0xdaf/schedule?date=2026-10-13&tz=America/New_York", { 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_j1e0xdaf/schedule", params={"date": "2026-10-13", "tz": "America/New_York"}, headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"}, ) for slot in r.json()["data"]: print(slot["start"], slot["title"])
// GET /v1/channels/ch_j1e0xdaf/schedule?date=2026-10-13, the first programme { "data": [ { "id": "ls_4rn8dtwx", "channel": "ch_j1e0xdaf", "start": "2026-10-13T03:45:00Z", "stop": "2026-10-13T05:21:00Z", "title": "American Ninja Warrior", "sub_title": "American Ninja Warrior", "description": "Drew Drechsel and Jesse Labreck lead Team USA in a battle for worldwide ninja...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 15, "date": "2026-10-13", "tz": "America/New_York" } }
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.