spotify library

A dart library for interfacing with the Spotify API.

Classes

Actions
Album
Json representation of an album
Albums
Endpoint for albums v1/albums
AlbumSimple
Artist
Json representation of an artist
Artists
Endpoint for artists v1/artists
ArtistSimple
Json representation of a simplified artist
AudioAnalysis
JSON representation of a track's analysis information
AudioAnalysisEndpoint
Endpoint of a tracks audio analysis
AudioFeature
Json representation of an audio feature
AudioFeatures
Endpoint of audio features v1/audio-features
AuthorizationScope
Class holding all available authorization scopes. See Spotify scopes documentation
BasePage<T>
Base class that represents a generic response page.
BasePaging<T>
A generic representation of a JSON page
Browse
Endpoint of browse v1/browse
BundledPages
Page that allows multiple types (artist, track, episode etc.) together
Categories
Endpoint of browsing the categories v1/browse/categories
Category
Json representation of a category
ConnectAuthorizationScope
Json representation of copyright
Cursor
Json representation of a cursor
CursorPage<T>
A page that uses a cursor to get to the next page
CursorPages<T>
Handles retrieval of a page through a cursor
CursorPaging<T>
Json representation of a page with cursor information
Device
Json representation of a device
EndpointBase
Base class of all endpoint classes
EndpointPaging
Base class of all endpoints using pagination
Episode
Json representation of an episode
EpisodeFull
Json representation of an episode with information about its show
Episodes
Endpoint of episodes v1/episodes
ExternalIds
Json representation of an external id
ExternalUrls
Json representation of an external url
FollowAuthorizationScope
Followers
Json representation of followers
Image
Json representation of an image
ImagesAuthorizationScope
LibraryAuthorizationScope
ListeningHistoryAuthorizationScope
Markets
Endpoint for v1/markets
Me
Endpoint for authenticated users v1/me/*
NextStrategy<T>
Generic strategy to first and next
Offset
Page<T>
A page that uses an offset to get to the next page.
Pages<T>
Handles retrieval of a page through an offset
Paging<T>
Json representation of a page with offset information
PlaybackState
Json representation of the playback state
PlayerContext
Json representation of the context of the playback state
PlayerEndpoint
Endpoint of the player
PlayHistory
Json representation of the playback history
Playlist
Json representation of a playlist
PlaylistAuthorizationScope
Playlists
Endpoint of playlists
PlaylistsFeatured
Json representation of a featured playlist. Used as a wrapper object.
PlaylistSimple
Json representation of a simplified playlist
PlaylistTrack
Json representation of a playlist with a single track
PositionOffset
"position" is zero based and can’t be negative.
Queue
Json representation of the playback queue
Recommendations
Json representation of the recommendations
RecommendationsEndpoint
RecommendationsSeed
Json representation of the recommendation seed
Endpoint of the search v1/search
Section
JSON representation of track section in the analysis
Segment
JSON representation of track segment in the analysis
Show
Json representation of a show
Shows
Endpoint of shows v1/shows
SinglePages<T, V extends BasePage<T>>
Base class that handles retrieval of pages with one type (e.g. Artist, Playlist etc.)
SpotifyApi
Accesspoint for the spotify api
SpotifyApiBase
SpotifyApiCredentials
Holds information about credentials to access the api.
SpotifyError
Json representation of an API error
StartOrResumeOptions
StartWithContextOptions
StartWithUrisOptions
TimeInterval
JSON representation of a time interval inside AudioAnalysis.bars, AudioAnalysis.beats and AudioAnalysis.tatums,
Track
Json representation of a track
TrackAudioAnalysis
JSON representation of the track analysis summary
Tracks
Endpoint of tracks v1/tracks
TrackSaved
A song saved in a Spotify user’s “Your Music” library
TrackSimple
Json representation of a simplified track.
TracksMe
UriOffset
"uri" is a string representing the uri of the item to start at. Example: "spotify:track:1301WleyT98MSxVHPZCA6M"
User
Json representation of a user
UserAuthorizationScope
UserPublic
Json representation of a publicly displayed user
Users

Enums

AlbumType
CopyrightType
CurrentlyPlayingType
Representation of what is currently playing
DatePrecision
DeviceType
API supported types
FollowingType
Market
RepeatState
Representation of the current repeat state
SearchType
Type for narrowing the search results
TimeRange

Mixins

CursorStrategy<T>
Strategy to get the next set of elements from a cursor
OffsetStrategy<T>
Strategy to get the next set of elements from an offset

Constants

defaultLimit → const int

Functions

batches<T>(Iterable<T> source, int size) Iterable<List<T>>
convertToIntIfDoubleValue(dynamic jsonValue) int?
Helper function to overcome the current spotify bug
convertToIntIfDoubleValueWithoutNull(dynamic jsonValue) int
itemsNativeFromJson(List json) Iterable
itemsNativeToJson(Iterable? items) List<Map>

Typedefs

FilterFunction = bool Function(dynamic json)
ParserFunction<T> = T Function(dynamic object)

Exceptions / Errors

ApiRateException
Exception when the api requests have exceeded the rate limit
AuthorizationException
An exception raised when OAuth2 authorization fails.
ExpirationException
An exception raised when attempting to use expired OAuth2 credentials.
SpotifyException