Free key: real listings for yesterday, 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.

Bulk export files

The nightly bulk files, on the Complete plan: one gzip of JSON lines per country and one for the world, each slot as Listings gives it, with rows, size and SHA-256. Kept seven days.

Paid plansLive data
GEThttps://api.tvguideapi.com/v1/exports
Try itRuns the real call with your key
200 OK

Parameters

ParameterInTypeRequiredDescriptionExample
countryquerystringoptionalA country code, or ALL for the world file. Leave out for every file.GB
On the Complete plan only; other plans get 403 upgrade_required naming Complete. Each file covers midnight UTC of its day to 48 hours after it was made. Download one with /v1/exports/{day}/{file}; a download counts as one call.

Request

curl -H "Authorization: Bearer $TVG_KEY" \
  "https://api.tvguideapi.com/v1/exports"

Sample response

{
    "data": [
        {
            "file": "2026-10-20/GB.jsonl.gz",
            "day": "2026-10-20",
            "country": "GB",
            "channels": 512,
            "rows": 61840,
            "bytes": 4210388,
            "sha256": "9f2c4e...",
            "url": "https://api.tvguideapi.com/v1/exports/2026-10-20/GB.jsonl.gz"
        }
    ],
    "meta": {
        "count": 1,
        "next": null,
        "took_ms": 41
    }
}

Errors