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 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_xkj59055/schedule?date=2026-10-13&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 00:00 | Tasty PresentsTasty celebrates National Noodle Month with a marathon of comfort classics, global noodle dishes, Worth It price battles, and creative builds—from ... | National Noodle Month | 1h 30m | |
| 01:30 | Ultimate Potato FavoritesFrom crispy fries to fancy creations, Tasty celebrates potatoes with swaps, challenges, and recipes dedicated to everyone's favorite comfort food. | The Ultimate Potato Dishes, Swaps & Creations | 1h 30m | |
| 03:00 | Tasty PresentsTasty celebrates National Snack Day by bringing people from different cultures together to swap snacks, taste global favorites, and share honest re... | National Snack Day | 1h | |
| 04:00 | Tasty Presents On nowTasty celebrates National Cocktail Day with a collection of signature cocktails, cultural drinks, Worth It tastings, and spirited swaps—from classi... | National Cocktail Day | 1h | |
| 05:00 | Tasty's Making It BigTasty Producer Alvin takes on the challenge of turning one of his friends' food fantasies into a giant, delicious reality. Will it be a dream come ... | Making a Giant McDonald's Apple Pie & Soup Dumpling | 45m | |
| 05:45 | Tasty's Making It BigTasty Producer Alvin takes on the challenge of turning one of his friends' food fantasies into a giant, delicious reality. Will it be a dream come ... | Making a 50-Pound Gummy Bear & a 30-Pound Cinnamon Roll | 1h 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_xkj59055/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_xkj59055/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_xkj59055/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_xkj59055/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_xkj59055/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_xkj59055/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_xkj59055/schedule?date=2026-10-13, the first programme { "data": [ { "id": "ls_m21ct7ny", "channel": "ch_xkj59055", "start": "2026-10-13T04:00:00Z", "stop": "2026-10-13T05:30:00Z", "title": "Tasty Presents", "sub_title": "National Noodle Month", "description": "Tasty celebrates National Noodle Month with a marathon of comfort classics, g...", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 6, "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 150 countries.