74.6M 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_nnr4xra8/schedule?date=2026-10-16&tz=America/New_York
| Time | Programme | Episode | Category | Length |
|---|---|---|---|---|
| 23:53 | 30-Minute MealsItalian barbecued chicken with polenta; spinach and arugula salad. | 30-Minute Meals | 23m | |
| 00:16 | 30-Minute MealsSaffron spaghetti alla carbonara. | 30-Minute Meals | 25m | |
| 00:41 | 30-Minute MealsPasta e fagiole al forno; lemon-pepper salad. | 30-Minute Meals | 25m | |
| 01:06 | 30-Minute MealsBeer braised shrimp with Louisiana salsa and rice; fried green beans with bacon. | 30-Minute Meals | 25m | |
| 01:31 | 30-Minute MealsGrilled eggplant panini. | 30-Minute Meals | 23m | |
| 01:54 | 30-Minute MealsGorgonzola filled meatballs; garlic mashed potatoes with spinach. | 30-Minute Meals | 25m | |
| 02:19 | 30-Minute MealsReuben mac-n-cheese; iceberg wedges with Russian dressing. | 30-Minute Meals | 23m | |
| 02:42 | 30-Minute MealsItalian hummus and toast; mozzarella salad; orecchiette with crab. | 30-Minute Meals | 23m | |
| 03:05 | 30-Minute MealsRomanesco with red snapper; lemon-pepper ricotta spread on toast; polenta with pancetta and peas. | 30-Minute Meals | 23m | |
| 03:28 | 30-Minute MealsBaba ganoush and pita crisps; harvest moon macaroni; spicy sundaes. | 30-Minute Meals | 25m | |
| 03:53 | 30-Minute MealsGreek hummus; chicken souvlaki sticks with yogurt dip; orzo with feta and tomatoes. | 30-Minute Meals | 23m | |
| 04:16 | 30-Minute MealsCreamy mushroom spaghetti; warm spinach salad. | 30-Minute Meals | 23m | |
| 04:39 | 30-Minute MealsTurkey cutlets with gravy; raw stuffin' salad; walnut ice cream with maple-cream berries. | 30-Minute Meals | 23m | |
| 05:02 | 30-Minute MealsThanksgiving foods with an Italian twist. | 30-Minute Meals | 23m | |
| 05:25 | 30-Minute MealsTuna and vegetable salad; balsamic-soaked bacon-wrapped scallops; super shrimp scampi. | 30-Minute Meals | 25m | |
| 05:50 | 30-Minute MealsSteakhouse sliders; mini steak fries; Gorgonzola spinach artichoke dip; spicy fennel shrimp. | 30-Minute Meals | 23m | |
| 06:13 | 30-Minute MealsMediterranean fish tacos; orzo with chick peas. | S24 E1, All Day Delish | 25m | |
| 06:38 | 30-Minute MealsFlorentine prosciutto wrapped chicken; spinach fettuccine with Gorgonzola cream sauce. | S24 E2, Simply Special | 25m | |
| 07:03 | 30-Minute MealsRoasted red pepper dip; portabella pizzas; prosciutto wrapped pears and arugula; mini tuna melts. | 30-Minute Meals | 23m | |
| 07:26 | 30-Minute MealsRoasted thick cut potato chips; MOP sausage burgers; BLT salad. | 30-Minute Meals | 23m | |
| 07:49 | 30-Minute MealsFrench country pork and peppercorn burger; dill and celery potato salad. | 30-Minute Meals | 25m | |
| 08:14 | 30-Minute MealsMini meatball minestra; grilled provolone; Italian grilled cheese. | S24 E7, Old Fave, New Flave | 23m | |
| 08:37 | 30-Minute MealsCorn muffins with bacon and cheddar cheese. | S24 E8, Serious Surf and Turf | 23m | |
| 09:00 | 30-Minute MealsBreaded chicken cutlets; macaroni and cheese with ham; sautéed greens 'n' shrooms. | S24 E17, It's a Smash | 23m | |
| 09:23 | 30-Minute MealsSweet chocolate finish for a romantic meal for two. | S28 E27, Have a Ball | 25m | |
| 09:48 | 30-Minute MealsBraised bockwurst; warm vegetable hard cider; kraut with German-style potatoes. | S24 E10, Rally the Troops | 25m |
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_nnr4xra8/schedule?date=2026-10-16&tz=America/New_York" # what is on now, and next curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_nnr4xra8/now" # any past day (Archive plan) curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/channels/ch_nnr4xra8/history?from=2026-10-06T00:00:00Z&to=2026-10-07T00:00:00Z"
$ch = curl_init("https://api.tvguideapi.com/v1/channels/ch_nnr4xra8/schedule?date=2026-10-16&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_nnr4xra8/schedule?date=2026-10-16&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_nnr4xra8/schedule", params={"date": "2026-10-16", "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_nnr4xra8/schedule?date=2026-10-16, the first programme { "data": [ { "id": "ls_770kfdb1", "channel": "ch_nnr4xra8", "start": "2026-10-16T03:53:00Z", "stop": "2026-10-16T04:16:00Z", "title": "30-Minute Meals", "sub_title": "30-Minute Meals", "description": "Italian barbecued chicken with polenta; spinach and arugula salad.", "category": [], "flags": { "new": false, "live": false } } ], "meta": { "count": 26, "date": "2026-10-16", "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.