-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Wrapper to Lastfm API -- -- Wrapper to Lastfm API @package liblastfm @version 0.0.2.2 module Network.Lastfm.Types newtype Secret Secret :: String -> Secret (#) :: Argument a => a -> (String, String) class Argument a key :: Argument a => a -> String value :: Argument a => a -> String newtype Album Album :: String -> Album newtype AlbumArtist AlbumArtist :: String -> AlbumArtist newtype APIKey APIKey :: String -> APIKey newtype Artist Artist :: String -> Artist newtype AuthToken AuthToken :: String -> AuthToken newtype ChosenByUser ChosenByUser :: String -> ChosenByUser newtype Context Context :: String -> Context newtype Country Country :: String -> Country newtype Description Description :: String -> Description newtype Group Group :: String -> Group newtype Language Language :: String -> Language newtype Latitude Latitude :: String -> Latitude newtype Location Location :: String -> Location newtype Longitude Longitude :: String -> Longitude newtype Mbid Mbid :: String -> Mbid newtype Message Message :: String -> Message newtype Method Method :: String -> Method newtype Metro Metro :: String -> Metro newtype Name Name :: String -> Name newtype Recipient Recipient :: String -> Recipient newtype SessionKey SessionKey :: String -> SessionKey newtype Station Station :: String -> Station newtype StreamId StreamId :: String -> StreamId newtype Tag Tag :: String -> Tag newtype TaggingType TaggingType :: String -> TaggingType newtype Title Title :: String -> Title newtype Token Token :: String -> Token newtype Track Track :: String -> Track newtype User User :: String -> User newtype Username Username :: String -> Username newtype Venuename Venuename :: String -> Venuename boolToString :: Bool -> String newtype Autocorrect Autocorrect :: Bool -> Autocorrect newtype BuyLinks BuyLinks :: Bool -> BuyLinks newtype Discovery Discovery :: Bool -> Discovery newtype FestivalsOnly FestivalsOnly :: Bool -> FestivalsOnly newtype Public Public :: Bool -> Public newtype RecentTracks RecentTracks :: Bool -> RecentTracks newtype RTP RTP :: Bool -> RTP newtype UseRecs UseRecs :: Bool -> UseRecs newtype Distance Distance :: Int -> Distance newtype Duration Duration :: Int -> Duration newtype Event Event :: Int -> Event newtype Limit Limit :: Int -> Limit newtype Page Page :: Int -> Page newtype Playlist Playlist :: Int -> Playlist newtype TrackNumber TrackNumber :: Int -> TrackNumber newtype Venue Venue :: Int -> Venue newtype End End :: Integer -> End newtype EndTimestamp EndTimestamp :: Integer -> EndTimestamp newtype Fingerprint Fingerprint :: Integer -> Fingerprint newtype From From :: Integer -> From newtype Start Start :: Integer -> Start newtype StartTimestamp StartTimestamp :: Integer -> StartTimestamp newtype Timestamp Timestamp :: Integer -> Timestamp newtype To To :: Integer -> To data Bitrate B64 :: Bitrate B128 :: Bitrate data Multiplier M1 :: Multiplier M2 :: Multiplier data Order Popularity :: Order DateAdded :: Order data Status Yes :: Status Maybe :: Status No :: Status data Value ValueUser :: User -> Value ValueArtists :: [Artist] -> Value data Period Week :: Period Quater :: Period HalfYear :: Period Year :: Period Overall :: Period data APIError DoesntExist :: APIError InvalidService :: APIError InvalidMethod :: APIError AuthenticationFailed :: APIError InvalidFormat :: APIError InvalidParameters :: APIError InvalidResource :: APIError OperationFailed :: APIError InvalidSessionKey :: APIError InvalidAPIKey :: APIError ServiceOffline :: APIError SubscribersOnly :: APIError InvalidMethodSignature :: APIError TokenHasNotAuthorized :: APIError NotForStreaming :: APIError TemporaryUnavailable :: APIError LoginRequired :: APIError TrialExpired :: APIError DoesntExistAgain :: APIError NotEnoughContent :: APIError NotEnoughMembers :: APIError NotEnoughFans :: APIError NotEnoughNeighbours :: APIError NoPeakRadio :: APIError RadioNotFound :: APIError SuspendedAPIKey :: APIError Deprecated :: APIError RateLimitExceeded :: APIError data LastfmError -- | Internal Lastfm errors LastfmAPIError :: APIError -> LastfmError -- | Wrapper errors WrapperCallError :: String -> String -> LastfmError instance [overlap ok] Show Secret instance [overlap ok] Enum APIError instance [overlap ok] Show LastfmError instance [overlap ok] Error LastfmError instance [overlap ok] Show APIError instance [overlap ok] Argument Period instance [overlap ok] Argument Value instance [overlap ok] Show Value instance [overlap ok] Argument Status instance [overlap ok] Argument Order instance [overlap ok] Argument Multiplier instance [overlap ok] Argument Bitrate instance [overlap ok] Argument To instance [overlap ok] Argument Timestamp instance [overlap ok] Argument StartTimestamp instance [overlap ok] Argument Start instance [overlap ok] Argument From instance [overlap ok] Argument Fingerprint instance [overlap ok] Argument EndTimestamp instance [overlap ok] Argument End instance [overlap ok] Argument Venue instance [overlap ok] Argument TrackNumber instance [overlap ok] Argument Playlist instance [overlap ok] Argument Page instance [overlap ok] Argument Limit instance [overlap ok] Argument Event instance [overlap ok] Argument Duration instance [overlap ok] Argument Distance instance [overlap ok] Argument UseRecs instance [overlap ok] Argument RTP instance [overlap ok] Argument RecentTracks instance [overlap ok] Argument Public instance [overlap ok] Argument FestivalsOnly instance [overlap ok] Argument Discovery instance [overlap ok] Argument BuyLinks instance [overlap ok] Argument Autocorrect instance [overlap ok] Argument Venuename instance [overlap ok] Argument Username instance [overlap ok] Argument User instance [overlap ok] Argument Track instance [overlap ok] Argument Token instance [overlap ok] Argument Title instance [overlap ok] Argument TaggingType instance [overlap ok] Argument Tag instance [overlap ok] Argument StreamId instance [overlap ok] Argument Station instance [overlap ok] Argument SessionKey instance [overlap ok] Argument Recipient instance [overlap ok] Argument Name instance [overlap ok] Argument Metro instance [overlap ok] Argument Method instance [overlap ok] Argument Message instance [overlap ok] Argument Mbid instance [overlap ok] Argument Longitude instance [overlap ok] Argument Location instance [overlap ok] Argument Latitude instance [overlap ok] Argument Language instance [overlap ok] Argument Group instance [overlap ok] Argument Description instance [overlap ok] Argument Country instance [overlap ok] Argument Context instance [overlap ok] Argument ChosenByUser instance [overlap ok] Argument AuthToken instance [overlap ok] Argument Artist instance [overlap ok] Argument APIKey instance [overlap ok] Argument AlbumArtist instance [overlap ok] Argument Album instance [overlap ok] Argument a => Argument [a] instance [overlap ok] Argument a => Argument (Maybe a) -- | Response module module Network.Lastfm -- | Type synonym for Lastfm response or error. type Lastfm a = IO (Either LastfmError a) -- | Type synonym for Lastfm response type Response = String -- | Low level function. Sends POST query to Lastfm API. callAPI :: [(String, String)] -> Lastfm Response -- | Low level function. Sends signed POST query to Lastfm API. callAPIsigned :: Secret -> [(String, String)] -> Lastfm Response -- | Album API module module Network.Lastfm.API.Album -- | Tag an album using a list of user supplied tags. -- -- More: http://www.last.fm/api/show/album.addTags addTags :: (Artist, Album) -> [Tag] -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Get a list of Buy Links for a particular Album. It is required that -- you supply either the artist and track params or the mbid param. -- -- More: http://www.last.fm/api/show/album.getBuylinks getBuyLinks :: Either (Artist, Album) Mbid -> Maybe Autocorrect -> Country -> APIKey -> Lastfm Response -- | Get the metadata for an album on Last.fm using the album name or a -- musicbrainz id. See playlist.fetch on how to get the album playlist. -- -- More: http://www.last.fm/api/show/album.getInfo getInfo :: Either (Artist, Album) Mbid -> Maybe Autocorrect -> Maybe Language -> Maybe Username -> APIKey -> Lastfm Response -- | Get shouts for this album. -- -- More: http://www.last.fm/api/show/album.getShouts getShouts :: Either (Artist, Album) Mbid -> Maybe Autocorrect -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the tags applied by an individual user to an album on Last.fm. -- -- More: http://www.last.fm/api/show/album.getTags getTags :: Either (Artist, Album) Mbid -> Maybe Autocorrect -> Either User (SessionKey, Secret) -> APIKey -> Lastfm Response -- | Get the top tags for an album on Last.fm, ordered by popularity. -- -- More: http://www.last.fm/api/show/album.getTopTags getTopTags :: Either (Artist, Album) Mbid -> Maybe Autocorrect -> APIKey -> Lastfm Response -- | Remove a user's tag from an album. -- -- More: http://www.last.fm/api/show/album.removeTag removeTag :: Artist -> Album -> Tag -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Search for an album by name. Returns album matches sorted by -- relevance. -- -- More: http://www.last.fm/api/show/album.search search :: Album -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Share an album with one or more Last.fm users or other friends. -- -- More: http://www.last.fm/api/show/album.share share :: Artist -> Album -> Recipient -> Maybe Message -> Maybe Public -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Artist API module module Network.Lastfm.API.Artist -- | Tag an album using a list of user supplied tags. -- -- More: http://www.last.fm/api/show/artist.addTags addTags :: Artist -> [Tag] -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Use the last.fm corrections data to check whether the supplied artist -- has a correction to a canonical artist -- -- More: http://www.last.fm/api/show/artist.getCorrection getCorrection :: Artist -> APIKey -> Lastfm Response -- | Get a list of upcoming events for this artist. -- -- More: http://www.last.fm/api/show/artist.getEvents getEvents :: Either Artist Mbid -> Maybe Autocorrect -> Maybe Page -> Maybe Limit -> Maybe FestivalsOnly -> APIKey -> Lastfm Response -- | Get Images for this artist in a variety of sizes. -- -- More: http://www.last.fm/api/show/artist.getImages getImages :: Either Artist Mbid -> Maybe Autocorrect -> Maybe Page -> Maybe Limit -> Maybe Order -> APIKey -> Lastfm Response -- | Get the metadata for an artist. Includes biography. -- -- More: http://www.last.fm/api/show/artist.getInfo getInfo :: Either Artist Mbid -> Maybe Autocorrect -> Maybe Language -> Maybe Username -> APIKey -> Lastfm Response -- | Get a paginated list of all the events this artist has played at in -- the past. -- -- More: http://www.last.fm/api/show/artist.getPastEvents getPastEvents :: Either Artist Mbid -> Maybe Autocorrect -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get a podcast of free mp3s based on an artist. -- -- More: http://www.last.fm/api/show/artist.getPodcast getPodcast :: Either Artist Mbid -> Maybe Autocorrect -> APIKey -> Lastfm Response -- | Get shouts for this artist. Also available as an rss feed. -- -- More: http://www.last.fm/api/show/artist.getShouts getShouts :: Either Artist Mbid -> Maybe Autocorrect -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get all the artists similar to this artist. -- -- More: http://www.last.fm/api/show/artist.getSimilar getSimilar :: Either Artist Mbid -> Maybe Autocorrect -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the tags applied by an individual user to an artist on Last.fm. If -- accessed as an authenticated service and you don't supply a -- user parameter then this service will return tags for the -- authenticated user. -- -- More: http://www.last.fm/api/show/artist.getTags getTags :: Either Artist Mbid -> Maybe Autocorrect -> Either User (SessionKey, Secret) -> APIKey -> Lastfm Response -- | Get the top albums for an artist on Last.fm, ordered by popularity. -- -- More: http://www.last.fm/api/show/artist.getTopAlbums getTopAlbums :: Either Artist Mbid -> Maybe Autocorrect -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the top fans for an artist on Last.fm, based on listening data. -- -- More: http://www.last.fm/api/show/artist.getTopFans getTopFans :: Either Artist Mbid -> Maybe Autocorrect -> APIKey -> Lastfm Response -- | Get the top tags for an artist on Last.fm, ordered by popularity. -- -- More: http://www.last.fm/api/show/artist.getTopTags getTopTags :: Either Artist Mbid -> Maybe Autocorrect -> APIKey -> Lastfm Response -- | Get the top tracks by an artist on Last.fm, ordered by popularity. -- -- More: http://www.last.fm/api/show/artist.getTopTracks getTopTracks :: Either Artist Mbid -> Maybe Autocorrect -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Remove a user's tag from an artist. -- -- More: http://www.last.fm/api/show/artist.removeTag removeTag :: Artist -> Tag -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Search for an artist by name. Returns artist matches sorted by -- relevance. -- -- More: http://www.last.fm/api/show/artist.search search :: Artist -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Share an artist with Last.fm users or other friends. -- -- More: http://www.last.fm/api/show/artist.share share :: Artist -> Recipient -> Maybe Message -> Maybe Public -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Shout in this artist's shoutbox. -- -- More: http://www.last.fm/api/show/artist.shout shout :: Artist -> Message -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Auth API module module Network.Lastfm.API.Auth -- | Create a web service session for a user. Used for authenticating a -- user when the password can be inputted by the user. Only suitable for -- standalone mobile devices. -- -- More: http://www.last.fm/api/show/auth.getMobileSession getMobileSession :: Username -> APIKey -> AuthToken -> Lastfm Response -- | Fetch a session key for a user. -- -- More: http://www.last.fm/api/show/auth.getSession getSession :: APIKey -> Token -> Secret -> Lastfm Response -- | Fetch an unathorized request token for an API account. -- -- More: http://www.last.fm/api/show/auth.getToken getToken :: APIKey -> Lastfm Response -- | Construct the link to authorize token. getAuthorizeTokenLink :: APIKey -> Token -> String -- | Chart API module module Network.Lastfm.API.Chart -- | Get the hyped artists chart. -- -- More: http://www.last.fm/api/show/chart.getHypedArtists getHypedArtists :: Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the hyped tracks chart. -- -- More: http://www.last.fm/api/show/chart.getHypedTracks getHypedTracks :: Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the most loved tracks chart. -- -- More: http://www.last.fm/api/show/chart.getLovedTracks getLovedTracks :: Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the top artists chart. -- -- More: http://www.last.fm/api/show/chart.getTopArtists getTopArtists :: Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get top tags chart. -- -- More: http://www.last.fm/api/show/chart.getTopTags getTopTags :: Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the top tracks chart. -- -- More: http://www.last.fm/api/show/chart.getTopTracks getTopTracks :: Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Event API module module Network.Lastfm.API.Event -- | Set a user's attendance status for an event. -- -- More: http://www.last.fm/api/show/event.attend attend :: Event -> Status -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Get a list of attendees for an event. -- -- More: http://www.last.fm/api/show/event.getAttendees getAttendees :: Event -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the metadata for an event on Last.fm. Includes attendance and -- lineup information. -- -- More: http://www.last.fm/api/show/event.getInfo getInfo :: Event -> APIKey -> Lastfm Response -- | Get shouts for this event. -- -- More: http://www.last.fm/api/show/event.getShouts getShouts :: Event -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Share an event with one or more Last.fm users or other friends. -- -- More: http://www.last.fm/api/show/event.share share :: Event -> Recipient -> Maybe Message -> Maybe Public -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Shout in this event's shoutbox. -- -- More: http://www.last.fm/api/show/event.shout shout :: Event -> Message -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Geo API module module Network.Lastfm.API.Geo -- | Get all events in a specific location by country or city name. -- -- More: http://www.last.fm/api/show/geo.getEvents getEvents :: Maybe Latitude -> Maybe Longitude -> Maybe Location -> Maybe Distance -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get a chart of artists for a metro. -- -- More: http://www.last.fm/api/show/geo.getMetroArtistChart getMetroArtistChart :: Country -> Metro -> Maybe Start -> Maybe End -> APIKey -> Lastfm Response -- | Get a chart of hyped (up and coming) artists for a metro. -- -- More: http://www.last.fm/api/show/geo.getMetroHypeArtistChart getMetroHypeArtistChart :: Country -> Metro -> Maybe Start -> Maybe End -> APIKey -> Lastfm Response -- | Get a chart of hyped (up and coming) tracks for a metro. -- -- More: http://www.last.fm/api/show/geo.getMetroHypeTrackChart getMetroHypeTrackChart :: Country -> Metro -> Maybe Start -> Maybe End -> APIKey -> Lastfm Response -- | Get a chart of tracks for a metro. -- -- More: http://www.last.fm/api/show/geo.getMetroTrackChart getMetroTrackChart :: Country -> Metro -> Maybe Start -> Maybe End -> APIKey -> Lastfm Response -- | Get a chart of the artists which make that metro unique. -- -- More: http://www.last.fm/api/show/geo.getMetroUniqueArtistChart getMetroUniqueArtistChart :: Country -> Metro -> Maybe Start -> Maybe End -> APIKey -> Lastfm Response -- | Get a chart of the tracks which make that metro unique. -- -- More: http://www.last.fm/api/show/geo.getMetroUniqueTrackChart getMetroUniqueTrackChart :: Country -> Metro -> Maybe Start -> Maybe End -> APIKey -> Lastfm Response -- | Get a list of available chart periods for this metro, expressed as -- date ranges which can be sent to the chart services. -- -- More: http://www.last.fm/api/show/geo.getMetroWeeklyChartlist getMetroWeeklyChartlist :: Metro -> APIKey -> Lastfm Response -- | Get a list of valid countries and metros for use in the other -- webservices. -- -- More: http://www.last.fm/api/show/geo.getMetros getMetros :: Maybe Country -> APIKey -> Lastfm Response -- | Get the most popular artists on Last.fm by country. -- -- More: http://www.last.fm/api/show/geo.getTopArtists getTopArtists :: Country -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the most popular tracks on Last.fm last week by country. -- -- More: http://www.last.fm/api/show/geo.getTopTracks getTopTracks :: Country -> Maybe Location -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Group API module module Network.Lastfm.API.Group -- | Get the hype list for a group. -- -- More: http://www.last.fm/api/show/group.getHype getHype :: Group -> APIKey -> Lastfm Response -- | Get a list of members for this group. -- -- More: http://www.last.fm/api/show/group.getMembers getMembers :: Group -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get an album chart for a group, for a given date range. If no date -- range is supplied, it will return the most recent album chart for this -- group. -- -- More: http://www.last.fm/api/show/group.getWeeklyAlbumChart getWeeklyChartList :: Group -> APIKey -> Lastfm Response -- | Get an artist chart for a group, for a given date range. If no date -- range is supplied, it will return the most recent artist chart for -- this group. -- -- More: http://www.last.fm/api/show/group.getWeeklyArtistChart getWeeklyAlbumChart :: Group -> Maybe From -> Maybe To -> APIKey -> Lastfm Response -- | Get a list of available charts for this group, expressed as date -- ranges which can be sent to the chart services. -- -- More: http://www.last.fm/api/show/group.getWeeklyChartList getWeeklyArtistChart :: Group -> Maybe From -> Maybe To -> APIKey -> Lastfm Response -- | Get a track chart for a group, for a given date range. If no date -- range is supplied, it will return the most recent track chart for this -- group. -- -- More: http://www.last.fm/api/show/group.getWeeklyTrackChart getWeeklyTrackChart :: Group -> Maybe From -> Maybe To -> APIKey -> Lastfm Response -- | Library API module module Network.Lastfm.API.Library -- | Add an album or collection of albums to a user's Last.fm library. -- -- More: http://www.last.fm/api/show/library.addAlbum addAlbum :: Artist -> Album -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Add an artist to a user's Last.fm library. -- -- More: http://www.last.fm/api/show/library.addArtist addArtist :: Artist -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Add a track to a user's Last.fm library. -- -- More: http://www.last.fm/api/show/library.addTrack addTrack :: Artist -> Track -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | A paginated list of all the albums in a user's library, with play -- counts and tag counts. -- -- More: http://www.last.fm/api/show/library.getAlbums getAlbums :: User -> Maybe Artist -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | A paginated list of all the artists in a user's library, with play -- counts and tag counts. -- -- More: http://www.last.fm/api/show/library.getArtists getArtists :: User -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | A paginated list of all the tracks in a user's library, with play -- counts and tag counts. -- -- More: http://www.last.fm/api/show/library.getTracks getTracks :: User -> Maybe Artist -> Maybe Album -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Remove an album from a user's Last.fm library. -- -- More: http://www.last.fm/api/show/library.removeAlbum removeAlbum :: Artist -> Album -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Remove an artist from a user's Last.fm library. -- -- More: http://www.last.fm/api/show/library.removeArtist removeArtist :: Artist -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Remove a scrobble from a user's Last.fm library. -- -- More: http://www.last.fm/api/show/library.removeScrobble removeScrobble :: Artist -> Track -> Timestamp -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Remove a track from a user's Last.fm library. -- -- More: http://www.last.fm/api/show/library.removeTrack removeTrack :: Artist -> Track -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Playlist API module module Network.Lastfm.API.Playlist -- | Add a track to a Last.fm user's playlist. -- -- More: http://www.last.fm/api/show/playlist.addTrack addTrack :: Playlist -> Artist -> Track -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Create a Last.fm playlist on behalf of a user. -- -- More: http://www.last.fm/api/show/playlist.create create :: Maybe Title -> Maybe Description -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Radio API module module Network.Lastfm.API.Radio -- | Fetch new radio content periodically in an XSPF format. -- -- More: http://www.last.fm/api/show/radio.getPlaylist getPlaylist :: Maybe Discovery -> Maybe RTP -> Maybe BuyLinks -> Multiplier -> Bitrate -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Resolve the name of a resource into a station depending on which -- resource it is most likely to represent. -- -- More: http://www.last.fm/api/show/radio.search search :: Name -> APIKey -> Lastfm Response -- | Tune in to a Last.fm radio station. -- -- More: http://www.last.fm/api/show/radio.tune tune :: Maybe Language -> Station -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Tag API module module Network.Lastfm.API.Tag -- | Get the metadata for a tag. -- -- More: http://www.last.fm/api/show/tag.getInfo getInfo :: Tag -> Maybe Language -> APIKey -> Lastfm Response -- | Search for tags similar to this one. Returns tags ranked by -- similarity, based on listening data. -- -- More: http://www.last.fm/api/show/tag.getSimilar getSimilar :: Tag -> APIKey -> Lastfm Response -- | Get the top albums tagged by this tag, ordered by tag count. -- -- More: http://www.last.fm/api/show/tag.getTopAlbums getTopAlbums :: Tag -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the top artists tagged by this tag, ordered by tag count. -- -- More: http://www.last.fm/api/show/tag.getTopArtists getTopArtists :: Tag -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Fetches the top global tags on Last.fm, sorted by popularity (number -- of times used). -- -- More: http://www.last.fm/api/show/tag.getTopTags getTopTags :: APIKey -> Lastfm Response -- | Get the top tracks tagged by this tag, ordered by tag count. -- -- More: http://www.last.fm/api/show/tag.getTopTracks getTopTracks :: Tag -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get an artist chart for a tag, for a given date range. If no date -- range is supplied, it will return the most recent artist chart for -- this tag. -- -- More: http://www.last.fm/api/show/tag.getWeeklyArtistChart getWeeklyArtistChart :: Tag -> Maybe From -> Maybe To -> Maybe Limit -> APIKey -> Lastfm Response -- | Get a list of available charts for this tag, expressed as date ranges -- which can be sent to the chart services. -- -- More: http://www.last.fm/api/show/tag.getWeeklyChartList getWeeklyChartList :: Tag -> APIKey -> Lastfm Response -- | Search for a tag by name. Returns matches sorted by relevance. -- -- More: http://www.last.fm/api/show/tag.search search :: Tag -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Tasteometer API module module Network.Lastfm.API.Tasteometer -- | Get a Tasteometer score from two inputs, along with a list of shared -- artists. If the input is a User some additional information is -- returned. -- -- More: http://www.last.fm/api/show/tasteometer.compare compare :: Value -> Value -> Maybe Limit -> APIKey -> Lastfm Response -- | Track API module module Network.Lastfm.API.Track -- | Tag a track using a list of user supplied tags. -- -- More: http://www.last.fm/api/show/track.addTags addTags :: Artist -> Track -> [Tag] -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Ban a track for a given user profile. -- -- More: http://www.last.fm/api/show/track.ban ban :: Artist -> Track -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Get a list of Buy Links for a particular track. -- -- More: http://www.last.fm/api/show/track.getBuylinks getBuyLinks :: Either (Artist, Track) Mbid -> Maybe Autocorrect -> Country -> APIKey -> Lastfm Response -- | Use the last.fm corrections data to check whether the supplied track -- has a correction to a canonical track. -- -- More: http://www.last.fm/api/show/track.getCorrection getCorrection :: Artist -> Track -> APIKey -> Lastfm Response -- | Retrieve track metadata associated with a fingerprint id generated by -- the Last.fm Fingerprinter. Returns track elements, along with a -- rank value between 0 and 1 reflecting the confidence for each -- match. -- -- More: http://www.last.fm/api/show/track.getFingerprintMetadata getFingerprintMetadata :: Fingerprint -> APIKey -> Lastfm Response -- | Get the metadata for a track on Last.fm. -- -- More: http://www.last.fm/api/show/track.getInfo getInfo :: Either (Artist, Track) Mbid -> Maybe Autocorrect -> Maybe Username -> APIKey -> Lastfm Response -- | Get shouts for this track. Also available as an rss feed. -- -- More: http://www.last.fm/api/show/track.getShouts getShouts :: Either (Artist, Track) Mbid -> Maybe Autocorrect -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the similar tracks for this track on Last.fm, based on listening -- data. -- -- More: http://www.last.fm/api/show/track.getSimilar getSimilar :: Either (Artist, Track) Mbid -> Maybe Autocorrect -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the tags applied by an individual user to a track on Last.fm. -- -- More: http://www.last.fm/api/show/track.getTags getTags :: Either (Artist, Track) Mbid -> Maybe Autocorrect -> Either User (SessionKey, Secret) -> APIKey -> Lastfm Response -- | Get the top fans for this track on Last.fm, based on listening data. -- -- More: http://www.last.fm/api/show/track.getTopFans getTopFans :: Either (Artist, Track) Mbid -> Maybe Autocorrect -> APIKey -> Lastfm Response -- | Get the top tags for this track on Last.fm, ordered by tag count. -- -- More: http://www.last.fm/api/show/track.getTopTags getTopTags :: Either (Artist, Track) Mbid -> Maybe Autocorrect -> APIKey -> Lastfm Response -- | Love a track for a user profile. -- -- More: http://www.last.fm/api/show/track.love love :: Artist -> Track -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Remove a user's tag from a track. -- -- More: http://www.last.fm/api/show/track.removeTag removeTag :: Artist -> Track -> Tag -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Used to add a track-play to a user's profile. -- -- More; http://www.last.fm/api/show/track.scrobble scrobble :: (Timestamp, Maybe Album, Artist, Track, Maybe AlbumArtist, Maybe Duration, Maybe StreamId, Maybe ChosenByUser, Maybe Context, Maybe TrackNumber, Maybe Mbid) -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Search for a track by track name. Returns track matches sorted by -- relevance. -- -- More: http://www.last.fm/api/show/track.search search :: Track -> Maybe Page -> Maybe Limit -> Maybe Artist -> APIKey -> Lastfm Response -- | Share a track twith one or more Last.fm users or other friends. -- -- More: http://www.last.fm/api/show/track.share share :: Artist -> Track -> Recipient -> Maybe Message -> Maybe Public -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Unban a track for a user profile. -- -- More: http://www.last.fm/api/show/track.unban unban :: Artist -> Track -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Unlove a track for a user profile. -- -- More: http://www.last.fm/api/show/track.unlove unlove :: Artist -> Track -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Used to notify Last.fm that a user has started listening to a track. -- Parameter names are case sensitive. -- -- More: http://www.last.fm/api/show/track.updateNowPlaying updateNowPlaying :: Artist -> Track -> Maybe Album -> Maybe AlbumArtist -> Maybe Context -> Maybe TrackNumber -> Maybe Mbid -> Maybe Duration -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | User API module module Network.Lastfm.API.User -- | Get a list of tracks by a given artist scrobbled by this user, -- including scrobble time. Can be limited to specific timeranges, -- defaults to all time. -- -- More: http://www.last.fm/api/show/user.getArtistTracks getArtistTracks :: User -> Artist -> Maybe StartTimestamp -> Maybe EndTimestamp -> Maybe Page -> APIKey -> Lastfm Response -- | Returns the tracks banned by the user. -- -- More: http://www.last.fm/api/show/user.getBannedTracks getBannedTracks :: User -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get a list of upcoming events that this user is attending. -- -- Mpre: http://www.last.fm/api/show/user.getEvents getEvents :: User -> Maybe Page -> Maybe Limit -> Maybe FestivalsOnly -> APIKey -> Lastfm Response -- | Get a list of the user's friends on Last.fm. -- -- More: http://www.last.fm/api/show/user.getFriends getFriends :: User -> Maybe RecentTracks -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get information about a user profile. -- -- More: http://www.last.fm/api/show/user.getInfo getInfo :: Maybe User -> APIKey -> Lastfm Response -- | Get tracks loved by a user. -- -- More: http://www.last.fm/api/show/user.getLovedTracks getLovedTracks :: User -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get a list of a user's neighbours on Last.fm. -- -- More: http://www.last.fm/api/show/user.getNeighbours getNeighbours :: User -> Maybe Limit -> APIKey -> Lastfm Response -- | Gets a list of forthcoming releases based on a user's musical taste. -- -- More: http://www.last.fm/api/show/user.getNewReleases getNewReleases :: User -> Maybe UseRecs -> APIKey -> Lastfm Response -- | Get a paginated list of all events a user has attended in the past. -- -- More: http://www.last.fm/api/show/user.getPastEvents getPastEvents :: User -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the user's personal tags. -- -- More: http://www.last.fm/api/show/user.getPersonalTags getPersonalTags :: User -> Tag -> TaggingType -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get a list of a user's playlists on Last.fm. -- -- More: http://www.last.fm/api/show/user.getPlaylists getPlaylists :: User -> APIKey -> Lastfm Response -- | Get a list of the recent Stations listened to by this user. -- -- More: http://www.last.fm/api/show/user.getRecentStations getRecentStations :: User -> Maybe Page -> Maybe Limit -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Get a list of the recent tracks listened to by this user. Also -- includes the currently playing track with the nowplaying=true -- attribute if the user is currently listening. -- -- More: http://www.last.fm/api/show/user.getRecentTracks getRecentTracks :: User -> Maybe Page -> Maybe Limit -> Maybe From -> Maybe To -> APIKey -> Lastfm Response -- | Get Last.fm artist recommendations for a user. -- -- Mpre: http://www.last.fm/api/show/user.getRecommendedArtists getRecommendedArtists :: Maybe Page -> Maybe Limit -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Get a paginated list of all events recommended to a user by Last.fm, -- based on their listening profile. -- -- More: http://www.last.fm/api/show/user.getRecommendedEvents getRecommendedEvents :: Maybe Page -> Maybe Limit -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Get shouts for this user. Also available as an rss feed. -- -- More: http://www.last.fm/api/show/user.getShouts getShouts :: User -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the top albums listened to by a user. You can stipulate a time -- period. Sends the overall chart by default. -- -- More: http://www.last.fm/api/show/user.getTopAlbums getTopAlbums :: User -> Maybe Period -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the top artists listened to by a user. You can stipulate a time -- period. Sends the overall chart by default. -- -- More: http://www.last.fm/api/show/user.getTopArtists getTopArtists :: User -> Maybe Period -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the top tags used by this user. -- -- More: http://www.last.fm/api/show/user.getTopTags getTopTags :: User -> Maybe Limit -> APIKey -> Lastfm Response -- | Get the top tracks listened to by a user. You can stipulate a time -- period. Sends the overall chart by default. -- -- More: http://www.last.fm/api/show/user.getTopTracks getTopTracks :: User -> Maybe Period -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Get an album chart for a user profile, for a given date range. If no -- date range is supplied, it will return the most recent album chart for -- this user. -- -- More: http://www.last.fm/api/show/user.getWeeklyAlbumChart getWeeklyAlbumChart :: User -> Maybe From -> Maybe To -> APIKey -> Lastfm Response -- | Get an artist chart for a user profile, for a given date range. If no -- date range is supplied, it will return the most recent artist chart -- for this user. -- -- More: http://www.last.fm/api/show/user.getWeeklyArtistChart getWeeklyArtistChart :: User -> Maybe From -> Maybe To -> APIKey -> Lastfm Response -- | Get a list of available charts for this user, expressed as date ranges -- which can be sent to the chart services. -- -- More: http://www.last.fm/api/show/user.getWeeklyChartList getWeeklyChartList :: User -> APIKey -> Lastfm Response -- | Get a track chart for a user profile, for a given date range. If no -- date range is supplied, it will return the most recent track chart for -- this user. -- -- More: http://www.last.fm/api/show/user.getWeeklyTrackChart getWeeklyTrackChart :: User -> Maybe From -> Maybe To -> APIKey -> Lastfm Response -- | Shout on this user's shoutbox. -- -- More: http://www.last.fm/api/show/user.shout shout :: User -> Message -> APIKey -> SessionKey -> Secret -> Lastfm Response -- | Venue API module module Network.Lastfm.API.Venue -- | Get a list of upcoming events at this venue. -- -- More: http://www.last.fm/api/show/venue.getEvents getEvents :: Venue -> Maybe FestivalsOnly -> APIKey -> Lastfm Response -- | Get a paginated list of all the events held at this venue in the past. -- -- More: http://www.last.fm/api/show/venue.getPastEvents getPastEvents :: Venue -> Maybe FestivalsOnly -> Maybe Page -> Maybe Limit -> APIKey -> Lastfm Response -- | Search for a venue by venue name. -- -- More: http://www.last.fm/api/show/venue.search search :: Venuename -> Maybe Page -> Maybe Limit -> Maybe Country -> APIKey -> Lastfm Response