{"record":{"id":"56790031114f2e3d","repo":"ytdl-org/youtube-dl","slug":"this-video-is-only-available-for-registered-users","errorCode":null,"errorMessage":"This video is only available for registered users. You may want to use --cookies.","messagePattern":"This video is only available for registered users\\. You may want to use --cookies\\.","errorType":"exception","errorClass":"ExtractorError","httpStatus":null,"severity":"error","filePath":"youtube_dl/extractor/dplay.py","lineNumber":164,"sourceCode":"    }, {\n        'url': 'https://www.discoveryplus.it/videos/biografie-imbarazzanti/luigi-di-maio-la-psicosi-di-stanislawskij',\n        'only_matching': True,\n    }, {\n        'url': 'https://www.discoveryplus.es/videos/la-fiebre-del-oro/temporada-8-episodio-1',\n        'only_matching': True,\n    }, {\n        'url': 'https://www.discoveryplus.fi/videot/shifting-gears-with-aaron-kaufman/episode-16',\n        'only_matching': True,\n    }]\n\n    def _process_errors(self, e, geo_countries):\n        info = self._parse_json(e.cause.read().decode('utf-8'), None)\n        error = info['errors'][0]\n        error_code = error.get('code')\n        if error_code == 'access.denied.geoblocked':\n            self.raise_geo_restricted(countries=geo_countries)\n        elif error_code in ('access.denied.missingpackage', 'invalid.token'):\n            raise ExtractorError(\n                'This video is only available for registered users. You may want to use --cookies.', expected=True)\n        raise ExtractorError(info['errors'][0]['detail'], expected=True)\n\n    def _update_disco_api_headers(self, headers, disco_base, display_id, realm):\n        headers['Authorization'] = 'Bearer ' + self._download_json(\n            disco_base + 'token', display_id, 'Downloading token',\n            query={\n                'realm': realm,\n            })['data']['attributes']['token']\n\n    def _download_video_playback_info(self, disco_base, video_id, headers):\n        streaming = self._download_json(\n            disco_base + 'playback/videoPlaybackInfo/' + video_id,\n            video_id, headers=headers)['data']['attributes']['streaming']\n        streaming_list = []\n        for format_id, format_dict in streaming.items():\n            streaming_list.append({\n                'type': format_id,","sourceCodeStart":146,"sourceCodeEnd":182,"githubUrl":"https://github.com/ytdl-org/youtube-dl/blob/956b8c585591b401a543e409accb163eeaaa1193/youtube_dl/extractor/dplay.py#L146-L182","documentation":"Error \"This video is only available for registered users. You may want to use --cookies.\" thrown in ytdl-org/youtube-dl.","triggerScenarios":"Thrown at youtube_dl/extractor/dplay.py:164 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Register an account and pass cookies with --cookies."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"956b8c585591b401a543e409accb163eeaaa1193","analyzedAt":"2026-08-14T18:59:47.863Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}