from aiohttp import web from aiohttp_apispec import docs, querystring_schema from server.constants import BASE_API_PREFIX from server.scenarios.playlists.amazon.track_in_playlist import get_amazon_track_in_playlist from server.schemas.playlists.amazon.track_in_playlist import PlaylistsAmazonTrack from server.utils.response import dump_response_schema router = web.RouteTableDef() @router.get(BASE_API_PREFIX + "/playlists/amazon/track/") @docs( tags=["playlists", "apple"], summary="Get Track data in Amazon playlist identified by passed isrc and playlist_id", ) @querystring_schema(PlaylistsAmazonTrack.Request) @dump_response_schema(PlaylistsAmazonTrack.Response) async def get(request: web.Request) -> web.Response: params = request["querystring"] result = await get_amazon_track_in_playlist(**params) return result