using System.Threading; using System.Threading.Tasks; namespace SpotifyAPI.Web { /// /// Endpoints for retrieving information about one or more tracks from the Spotify catalog. /// public interface ITracksClient { /// /// Get Spotify catalog information for multiple tracks based on their Spotify IDs. /// /// The request-model which contains required and optional parameters. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-several-tracks /// /// Task GetSeveral(TracksRequest request, CancellationToken cancel = default); /// /// Get a detailed audio analysis for a single track identified by its unique Spotify ID. /// /// The Spotify ID for the track. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-audio-analysis /// /// Task GetAudioAnalysis(string trackId, CancellationToken cancel = default); /// /// Get audio feature information for a single track identified by its unique Spotify ID. /// /// The Spotify ID for the track. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-audio-features /// /// Task GetAudioFeatures(string trackId, CancellationToken cancel = default); /// /// Get Spotify catalog information for a single track identified by its unique Spotify ID. /// /// The Spotify ID for the track. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-track /// /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1716")] Task Get(string trackId, CancellationToken cancel = default); /// /// Get Spotify catalog information for a single track identified by its unique Spotify ID. /// /// The Spotify ID for the track. /// The request-model which contains required and optional parameters. /// The cancellation-token to allow to cancel the request. /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1716")] Task Get(string trackId, TrackRequest request, CancellationToken cancel = default); /// /// Get audio features for multiple tracks based on their Spotify IDs. /// /// The request-model which contains required and optional parameters. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-several-audio-features /// /// Task GetSeveralAudioFeatures(TracksAudioFeaturesRequest request, CancellationToken cancel = default); } }