yt-dlp/yt-dlp · error · ExtractorError

Video not yet available with unknown availability

Error message

Video not yet available with unknown availability

What it means

The NOT_YET_AVAILABLE branch without details: neither availableFrom nor currentSunrise was present, so only the generic fallback message remains. The video exists but is gated on a future time the API did not disclose.

Source

Thrown at yt_dlp/extractor/servus.py:142

            raise ExtractorError('No videoUrl and no information about errors')

        elif 'FSK_BLOCKED' in playability_errors:
            details = traverse_obj(video, ('playabilityErrorDetails', 'FSK_BLOCKED'), expected_type=dict)
            message = format_field(''.join((
                format_field(details, 'minEveningHour', ' from %02d:00'),
                format_field(details, 'maxMorningHour', ' to %02d:00'),
                format_field(details, 'minAge', ' (Minimum age %d)'),
            )), None, 'Only available%s') or 'Blocked by FSK with unknown availability'

        elif 'NOT_YET_AVAILABLE' in playability_errors:
            message = format_field(
                video, (('playabilityErrorDetails', 'NOT_YET_AVAILABLE', 'availableFrom'), 'currentSunrise'),
                'Only available from %s') or 'Video not yet available with unknown availability'

        else:
            message = f'Video unavailable: {", ".join(playability_errors)}'

        raise ExtractorError(message, expected=True)

View on GitHub (pinned to 81ecd58b13)

Solutions

  1. Retry later and check the Servus listing for an air date
  2. Update yt-dlp in case timestamp parsing changed
  3. If it persists on clearly-aired content, report the payload upstream
Defensive patterns

Strategy: retry

Try / catch

from yt_dlp.utils import ExtractorError

try:
    info = ydl.extract_info(url, download=False)
except ExtractorError as e:
    if 'not yet available' not in str(e):
        raise
    # no timestamp given; back off and try again later
    schedule_retry(hours_later=12)

Prevention

When it happens

Trigger: playabilityErrors contains 'NOT_YET_AVAILABLE' and both the availableFrom and currentSunrise lookups return nothing.

Common situations: Early-listed premieres without schedule metadata; API variants omitting timestamps; schema drift after a servus.com update.

Related errors


AI-assisted analysis of yt-dlp/yt-dlp@81ecd58b13 (2026-08-22). Data as JSON: /api/errors/37abf5236606f137. Report an issue: GitHub.