Tonight's screens
Tonight's sport for a bar or venue: live events first, one row per event with every channel you receive that has it.
Paid plansLive data
GEThttps://api.tvguideapi.com/v1/venue/tonight
Try itRuns the real call with your key
200 OK
Parameters
| Parameter | In | Type | Required | Description | Example |
|---|---|---|---|---|---|
| country | query | string | required | The venue's country. | GB |
| sports | query | list | optional | Sports to show. | football,rugby |
| channels | query | list | optional | Channel ids, comma separated, up to 50. | ch_jw83a3xg,ch_7qk3m2xa |
channels limits the answer to what your venue receives.Request
curl -H "Authorization: Bearer $TVG_KEY" \ "https://api.tvguideapi.com/v1/venue/tonight?country=GB"
$ch = curl_init("https://api.tvguideapi.com/v1/venue/tonight?country=GB");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer " . getenv("TVG_KEY")],
]);
$answer = json_decode(curl_exec($ch), true);
const r = await fetch("https://api.tvguideapi.com/v1/venue/tonight?country=GB", {
headers: { Authorization: `Bearer ${process.env.TVG_KEY}` },
});
const { data, meta } = await r.json();
import os, requests
r = requests.get(
"https://api.tvguideapi.com/v1/venue/tonight?country=GB",
headers={"Authorization": f"Bearer {os.environ['TVG_KEY']}"},
)
data = r.json()["data"]
Sample response
{
"data": [
{
"start": "2026-10-18T16:30:00Z",
"local": "17:30",
"event": "Arsenal v Chelsea",
"league": "Premier League",
"live": true,
"channels": [
"ch_3vd81kpz"
]
}
],
"meta": {
"count": 1,
"next": null,
"took_ms": 41
}
}