Spotify Show Has Video
Metadata
Spotify Show Has Video
Check whether a Spotify podcast show has any video episodes
GET
Spotify Show Has Video
Overview
Return whether a Spotify show (podcast) has any video episode. No download is performed — the answer is read from Spotify’s episode metadata (mediaTypes), so it works even though the audio tracks are DRM-protected.
Each episode advertises a mediaTypes list: an episode with a video variant is ["VIDEO", "AUDIO"], an audio-only episode is ["AUDIO"]. The show has_video when at least one episode contains VIDEO.
Path Parameters
string
required
The Spotify show id — the base62 id from a show URL, e.g.
11VjrLJfoiNvgjjqov4RWh in https://open.spotify.com/show/11VjrLJfoiNvgjjqov4RWh.Header Parameters
string
required
Your API key for authentication.
Response
string
The Spotify show id you queried.
boolean
true when at least one episode exposes a video variant.integer
How many episodes were inspected to reach the answer. When answered from the episode list (the normal path) this equals
total_episodes.integer
Total number of episodes the show lists.
boolean
true when the answer is authoritative (every episode was inspected, or a video episode was found). When false, a has_video: false only means “no video episode was seen in the portion inspected” — not a guarantee the whole show is audio-only.boolean
true when the response was served from the 24-hour server-side cache. Cached responses are not billed.Examples
Success Response
Error Responses
502 response means a transient upstream issue while resolving the show (Spotify hiccup, token capture, or proxy). Retry after a short delay.
Billing
Each resolved lookup (a cache miss) is billed as a flat 1 MiB of data transfer — the same unit as downloads, so it appears on your usage dashboard and invoice with no separate line item. Roughly 1,024 lookups = 1 GB. Cache hits are free. Results are cached server-side for 24 hours per show; repeat lookups for the same show within that window are served instantly and are not billed.Use Cases
Catalog pre-filtering
Before ingesting a show, decide whether to route it to a video or audio pipeline.UI hints
Badge a show as “Video” in your front-end as soon as a user pastes a Spotify show link.Notes
- First lookup latency: a cache miss takes a few seconds (it lists the show’s episodes upstream). Subsequent lookups within 24 hours are instant (
cached: true). - Mixed shows:
has_videoistrueif any episode has video, even when most episodes are audio-only. - Authoritative negatives: a
has_video: falsewithdeterminate: truemeans the whole show was inspected and no video episode exists.
