def METHOD_NAME(self, url):
    display_id = self._match_id(url)
    meta = self._download_json(
        f'https://api.sportdeutschland.tv/api/stateless/frontend/assets/{display_id}',
        display_id, query={'access_token': 'true'})
    info = {
        'display_id': display_id,
        **traverse_obj(meta, {
            'id': (('id', 'uuid'), ),
            'title': (('title', 'name'), {strip_or_none}),
            'description': 'description',
            'channel': ('profile', 'name'),
            'channel_id': ('profile', 'id'),
            'is_live': 'currently_live',
            'was_live': 'was_live',
            'channel_url': ('profile', 'slug', {lambda x: f'https://sportdeutschland.tv/{x}'}),
        }, get_all=False)
    }
    parts = traverse_obj(meta, (('livestream', ('videos', ...)), ))
    entries = [{
        'title': join_nonempty(info.get('title'), f'Part {i}', delim=' '),
        **traverse_obj(info, {'channel': 'channel', 'channel_id': 'channel_id',
                              'channel_url': 'channel_url', 'was_live': 'was_live'}),
        **self._process_video(info['id'], video),
    } for i, video in enumerate(parts, 1)]
    return {
        '_type': 'multi_video',
        **info,
        'entries': entries,
    } if len(entries) > 1 else {
        **info,
        **entries[0],
        'title': info.get('title'),
    }