Free key: real listings for yesterday and today, 500 calls a day, no card148 countriesGet yours in 30 seconds
tvguideapi

Last 30 days

API uptimefrom the monitorIncidentsfrom the monitor
All systems

Working normally

Checked every minute from outside our own servers.

Documentation/Getting started

Quick start

A key and your first call in a minute.

1. Get a key

Sign in at your account. Your key starts with tvg_live_ and is shown once: we store it hashed and keep only its first characters, so your account can show which key made which call.

2. Ask for a channel's day

curl -H "Authorization: Bearer $TVG_KEY" \
  "https://api.tvguideapi.com/v1/channels/ch_jw83a3xg/schedule?date=2026-10-07"

3. Read the answer

Every list comes back as data and meta. Each slot has start and stop in UTC, the title as the channel sent it and, where we matched it, an episode object with the series, season, number and original air date.

{
    "data": [
        {
            "id": "ls_shr78fcp",
            "channel": "ch_jw83a3xg",
            "start": "2026-10-07T19:00:00Z",
            "stop": "2026-10-07T19:30:00Z",
            "title": "EastEnders",
            "sub_title": "Episode 7012",
            "category": [
                "Soap"
            ],
            "episode": {
                "show_id": "sh_e29nzc1x",
                "episode_id": "ep_610mmeyh",
                "season": 41,
                "number": 157,
                "name": "Episode 7012",
                "orig_air": "2026-10-07",
                "matched_by": "airtime",
                "source": "tvmaze"
            },
            "flags": {
                "new": true,
                "live": false,
                "repeat": false
            }
        },
        {
            "id": "ls_shr78fcp",
            "channel": "ch_jw83a3xg",
            "start": "2026-10-07T19:30:00Z",
            "stop": "2026-10-07T20:00:00Z",
            "title": "The One Show",
            "category": [
                "Magazine"
            ],
            "flags": {
                "new": true,
                "live": true,
                "repeat": false
            }
        }
    ],
    "meta": {
        "count": 38,
        "next": "c_8f21a0",
        "took_ms": 41
    }
}

Next: the schedule endpoint in full, or use it from Claude.