from aiohttp import web from aiohttp_apispec import docs, querystring_schema from server.constants import BASE_API_PREFIX, DSP from server.scenarios.playlists.v0.get_playlists_previous_top.common import get_playlists_dsp_previous_top from server.schemas.playlists.v0.apple.previous import PlaylistsApplePreviousTop from server.utils.response import dump_response_schema router = web.RouteTableDef() @router.get(BASE_API_PREFIX + "/playlists/apple/previous/top/") @docs( tags=["playlist", "apple"], summary="Get apple previous track top playlists containing track_id(s).", ) @querystring_schema(PlaylistsApplePreviousTop.Request) @dump_response_schema(PlaylistsApplePreviousTop.Response) async def get(request: web.Request) -> web.Response: return await get_playlists_dsp_previous_top(DSP.APPLE, **request["querystring"])