Maximum number of tracks to return (default: 5)
Promise resolving to recently played track data
export async function getRecentlyPlayedTracks(
limit: number = 5,
): Promise<SpotifyRecentlyPlayedResponse> {
await ensureValidToken();
try {
const response = await retryApiCall(async () => {
return await spotifyAxios.get(
`${API_BASE_URL}/me/player/recently-played?limit=${limit}`,
{
headers: {
Authorization: `Bearer ${getAccessToken()}`,
},
},
);
});
return response.data as SpotifyRecentlyPlayedResponse;
} catch (error: unknown) {
const err = error as Error;
saveLog(`Failed to get recently played tracks: ${err.message}`, "ERROR");
throw new Error(`Failed to get recently played tracks: ${err.message}`);
}
}
Gets the user's recently played tracks