ytdl-org/youtube-dl · error · ExtractorError
Unexpected API data result
Error message
Unexpected API data result
What it means
Error "Unexpected API data result" thrown in ytdl-org/youtube-dl.
Source
Thrown at youtube_dl/extractor/orf.py:55
'ooe': ('ooe', 'oe2o', 'orfooe'),
'steiermark': ('stm', 'oe2st', 'orfstm'),
'kaernten': ('ktn', 'oe2k', 'orfktn'),
'salzburg': ('sbg', 'oe2s', 'orfsbg'),
'tirol': ('tir', 'oe2t', 'orftir'),
'vorarlberg': ('vbg', 'oe2v', 'orfvbg'),
'oe3': ('oe3', 'oe3', 'orfoe3'),
'oe1': ('oe1', 'oe1', 'orfoe1'),
}
_ID_NAMES = ('id', 'guid', 'program')
@classmethod
def _get_item_id(cls, data):
return traverse_obj(data, *cls._ID_NAMES, expected_type=txt_or_none)
@classmethod
def _get_api_payload(cls, data, expected_id, in_payload=False):
if expected_id not in traverse_obj(data, ('payload',)[:1 if in_payload else 0] + (cls._ID_NAMES, T(txt_or_none))):
raise ExtractorError('Unexpected API data result', video_id=expected_id)
return data['payload']
@staticmethod
def _extract_podcast_upload(data):
return traverse_obj(data, {
'url': ('enclosures', 0, 'url'),
'ext': ('enclosures', 0, 'type', T(mimetype2ext)),
'filesize': ('enclosures', 0, 'length', T(int_or_none)),
'title': ('title', T(txt_or_none)),
'description': ('description', T(clean_html)),
'timestamp': (('published', 'postDate'), T(parse_iso8601)),
'duration': ('duration', T(k_float_or_none)),
'series': ('podcast', 'title'),
'uploader': ((('podcast', 'author'), 'station'), T(txt_or_none)),
'uploader_id': ('podcast', 'channel', T(txt_or_none)),
}, get_all=False)
@classmethodView on GitHub (pinned to 956b8c5855)
Solutions
- Update youtube-dl; the ORF API response format changed.
When it happens
Trigger: Thrown at youtube_dl/extractor/orf.py:55 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ytdl-org/youtube-dl@956b8c5855 (2026-08-14).
Data as JSON: /api/errors/0e4e7d281495091a.
Report an issue: GitHub.