ytdl-org/youtube-dl · error · ExtractorError
Show not found in A&E feed (too new?)
Error message
Show not found in A&E feed (too new?)
What it means
Raised by the A&E Networks extractor when the feeds.video.aetnd.com API returns results whose first entry does not match the filter key/value parsed from the URL (or returns no results at all). The '(too new?)' hint reflects the common case where the feed API lags behind the website for freshly published shows. Marked expected=True.
Source
Thrown at youtube_dl/extractor/aenetworks.py:89
raise last_e
self._sort_formats(formats)
return {
'id': video_id,
'formats': formats,
'subtitles': subtitles,
}
def _extract_aetn_info(self, domain, filter_key, filter_value, url):
requestor_id, brand = self._DOMAIN_MAP[domain]
result = self._download_json(
'https://feeds.video.aetnd.com/api/v2/%s/videos' % brand,
filter_value, query={'filter[%s]' % filter_key: filter_value})
result = traverse_obj(
result, ('results',
lambda k, v: k == 0 and v[filter_key] == filter_value),
get_all=False)
if not result:
raise ExtractorError('Show not found in A&E feed (too new?)', expected=True,
video_id=remove_start(filter_value, '/'))
title = result['title']
video_id = result['id']
media_url = result['publicUrl']
theplatform_metadata = self._download_theplatform_metadata(self._search_regex(
r'https?://link\.theplatform\.com/s/([^?]+)', media_url, 'theplatform_path'), video_id)
info = self._parse_theplatform_metadata(theplatform_metadata)
auth = None
if theplatform_metadata.get('AETN$isBehindWall'):
resource = self._get_mvpd_resource(
requestor_id, theplatform_metadata['title'],
theplatform_metadata.get('AETN$PPL_pplProgramId') or theplatform_metadata.get('AETN$PPL_pplProgramId_OLD'),
theplatform_metadata['ratings'][0]['rating'])
auth = self._extract_mvpd_auth(
url, video_id, requestor_id, resource)
info.update(self._extract_aen_smil(media_url, video_id, auth))
info.update({
'title': title,View on GitHub (pinned to 956b8c5855)
Solutions
- Retry later — if the content is genuinely new, the feed usually indexes it within hours
- Verify the URL slug against the show page on the site and correct any mismatch
- Try the canonical theplatform link if you can find it, bypassing the A&E feed lookup
- If it fails for old content too, check upstream yt-dlp for feed API schema changes
Defensive patterns
Strategy: retry
Validate before calling
# Probe the feed before extraction
import requests
r = requests.get('https://feeds.video.aetnd.com/api/v2/aetv/videos',
params={'filter[show]': show_slug}).json()
results = r.get('results') or []
match = results[0] if results and results[0].get('show') == show_slug else None
if not match:
schedule_retry(url, hours=1) # feed may lag for new episodes Try / catch
try:
info = ydl.extract_info(url)
except ExtractorError as e:
if 'Show not found in A&E feed' in str(e):
schedule_retry(url, delay_hours=2) # too-new content indexes later
else:
raise Prevention
- Delay automated downloads of brand-new A&E episodes by a few hours to let the feed catch up
- Validate show slugs against the site before queueing
- Treat this error as retryable in job schedulers, not as a permanent failure
When it happens
Trigger: GET https://feeds.video.aetnd.com/api/v2/<brand>/videos?filter[<key>]=<value> where traverse_obj over ('results', k==0 and v[key]==value) yields nothing; brand feed not yet updated for a just-aired episode; show slug changed so filter_value never matches.
Common situations: Downloading an episode minutes after broadcast; URL copied from a promo page whose slug differs from the canonical show slug; feed API schema change dropping results entries; brand map mismatch for a new A&E domain.
Related errors
- %s said: %s
- %s said: %s
- Video %s has been deleted
- Video %s does not exist
- This post doesn't contain a video
AI-assisted analysis of ytdl-org/youtube-dl@956b8c5855 (2026-08-14).
Data as JSON: /api/errors/8053fec0873ae3bc.
Report an issue: GitHub.