Versions in this module Expand all Collapse all v1 v1.0.2 May 14, 2026 Changes in this version + const DefaultBaseURL + const DefaultUserAgent + type Scrobbles []ScrobbleResult + func (s *Scrobbles) UnmarshalJSON(data []byte) error + type UserTaggings struct + Albums AlbumList + Artists ArtistList + Tracks TrackList v1.0.1 May 14, 2026 v1.0.0 May 13, 2026 Changes in this version + type APIClient interface + Call func(ctx context.Context, httpMethod string, apiMethod string, params url.Values, ...) error + type APIError struct + Code int + Message string + func (e *APIError) Error() string + type Album struct + Artist interface{} + ID string + Image []Image + Listeners string + MBID string + Name string + Playcount json.Number + Rank json.Number + ReleaseDate string + Streamable string + Text string + Title string + TopTags *TopTags + Tracks *Tracks + URL string + Wiki *Wiki + type AlbumGetInfoResponse struct + Album Album + type AlbumGetTagsResponse struct + Tags struct{ ... } + type AlbumGetTopTagsResponse struct + TopTags struct{ ... } + type AlbumList []Album + func (a *AlbumList) UnmarshalJSON(data []byte) error + type AlbumSearchResponse struct + Results struct{ ... } + type AlbumService struct + func NewAlbumService(client APIClient) *AlbumService + func (s *AlbumService) AddTags(ctx context.Context, artist, album, tags string) error + func (s *AlbumService) GetInfo(ctx context.Context, artist, album string, options url.Values) (*AlbumGetInfoResponse, error) + func (s *AlbumService) GetTags(ctx context.Context, artist, album string, options url.Values) (*AlbumGetTagsResponse, error) + func (s *AlbumService) GetTopTags(ctx context.Context, artist, album string, options url.Values) (*AlbumGetTopTagsResponse, error) + func (s *AlbumService) RemoveTag(ctx context.Context, artist, album, tag string) error + func (s *AlbumService) Search(ctx context.Context, album string, options url.Values) (*AlbumSearchResponse, error) + type Artist struct + Bio *Bio + Image []Image + Listeners json.Number + MBID string + Match float64 + Name string + Playcount json.Number + Rank json.Number + Similar *Similar + Stats *Stats + Streamable string + Tagcount json.Number + Tags *Tags + URL string + type ArtistCorrection struct + Artist Artist + Index string + type ArtistGetCorrectionResponse struct + Corrections struct{ ... } + type ArtistGetInfoResponse struct + Artist Artist + type ArtistGetSimilarResponse struct + SimilarArtists struct{ ... } + type ArtistGetTagsResponse struct + Tags struct{ ... } + type ArtistGetTopAlbumsResponse struct + TopAlbums struct{ ... } + type ArtistGetTopTagsResponse struct + TopTags struct{ ... } + type ArtistGetTopTracksResponse struct + TopTracks struct{ ... } + type ArtistList []Artist + func (a *ArtistList) UnmarshalJSON(data []byte) error + type ArtistSearchResponse struct + Results struct{ ... } + type ArtistService struct + func NewArtistService(client APIClient) *ArtistService + func (s *ArtistService) AddTags(ctx context.Context, artist, tags string) error + func (s *ArtistService) GetCorrection(ctx context.Context, artist string) (*ArtistGetCorrectionResponse, error) + func (s *ArtistService) GetInfo(ctx context.Context, artist string, options url.Values) (*ArtistGetInfoResponse, error) + func (s *ArtistService) GetSimilar(ctx context.Context, artist string, options url.Values) (*ArtistGetSimilarResponse, error) + func (s *ArtistService) GetTags(ctx context.Context, artist string, options url.Values) (*ArtistGetTagsResponse, error) + func (s *ArtistService) GetTopAlbums(ctx context.Context, artist string, options url.Values) (*ArtistGetTopAlbumsResponse, error) + func (s *ArtistService) GetTopTags(ctx context.Context, artist string, options url.Values) (*ArtistGetTopTagsResponse, error) + func (s *ArtistService) GetTopTracks(ctx context.Context, artist string, options url.Values) (*ArtistGetTopTracksResponse, error) + func (s *ArtistService) RemoveTag(ctx context.Context, artist, tag string) error + func (s *ArtistService) Search(ctx context.Context, artist string, options url.Values) (*ArtistSearchResponse, error) + type Attr struct + Artist string + Country string + From string + Page json.Number + PerPage json.Number + Tag string + To string + Total json.Number + TotalPages json.Number + User string + type AuthService struct + func (s *AuthService) AuthURL(token string) string + func (s *AuthService) GetMobileSession(ctx context.Context, username, password string) (Session, error) + func (s *AuthService) GetSession(ctx context.Context, token string) (Session, error) + func (s *AuthService) GetToken(ctx context.Context) (string, error) + type Bio struct + Content string + Published string + Summary string + type Chart struct + From string + Text string + To string + type ChartGetTopArtistsResponse struct + Artists struct{ ... } + type ChartGetTopTagsResponse struct + Tags struct{ ... } + type ChartGetTopTracksResponse struct + Tracks struct{ ... } + type ChartList []Chart + func (c *ChartList) UnmarshalJSON(data []byte) error + type ChartService struct + func NewChartService(client APIClient) *ChartService + func (s *ChartService) GetTopArtists(ctx context.Context, options url.Values) (*ChartGetTopArtistsResponse, error) + func (s *ChartService) GetTopTags(ctx context.Context, options url.Values) (*ChartGetTopTagsResponse, error) + func (s *ChartService) GetTopTracks(ctx context.Context, options url.Values) (*ChartGetTopTracksResponse, error) + type Client struct + Album *AlbumService + Artist *ArtistService + Auth *AuthService + Chart *ChartService + Geo *GeoService + Library *LibraryService + Tag *TagService + Track *TrackService + User *UserService + func New(apiKey string, apiSecret string, opts ...Option) *Client + func (c *Client) Call(ctx context.Context, httpMethod string, apiMethod string, params url.Values, ...) error + type Date struct + Text json.Number + UnixTime json.Number + type Friend struct + Country string + Image []Image + Name string + RealName string + Registered Date + URL string + type FriendList []Friend + func (f *FriendList) UnmarshalJSON(data []byte) error + type GeoGetTopArtistsResponse struct + TopArtists struct{ ... } + type GeoGetTopTracksResponse struct + Tracks struct{ ... } + type GeoService struct + func NewGeoService(client APIClient) *GeoService + func (s *GeoService) GetTopArtists(ctx context.Context, country string, options url.Values) (*GeoGetTopArtistsResponse, error) + func (s *GeoService) GetTopTracks(ctx context.Context, country string, options url.Values) (*GeoGetTopTracksResponse, error) + type Image struct + Size string + Text string + type LibraryGetArtistsResponse struct + Artists struct{ ... } + type LibraryService struct + func NewLibraryService(client APIClient) *LibraryService + func (s *LibraryService) GetArtists(ctx context.Context, user string, options url.Values) (*LibraryGetArtistsResponse, error) + type Option func(*Client) + func WithBaseURL(baseURL string) Option + func WithHTTPClient(httpClient *http.Client) Option + func WithSessionKey(sessionKey string) Option + func WithUserAgent(userAgent string) Option + type ScrobbleResult struct + Album TrackCorrectionEntity + Artist TrackCorrectionEntity + Timestamp string + Track TrackCorrectionEntity + type ScrobbleResults []ScrobbleResult + func (s *ScrobbleResults) UnmarshalJSON(data []byte) error + type Session struct + Key string + Name string + Subscriber json.Number + type Similar struct + Artist ArtistList + Tag TagList + type Stats struct + Listeners json.Number + Playcount json.Number + type Streamable struct + FullTrack string + Text string + type Tag struct + Count json.Number + Name string + Reach json.Number + Streamable string + Taggings json.Number + URL string + Wiki *Wiki + type TagGetInfoResponse struct + Tag Tag + type TagGetSimilarResponse struct + SimilarTags struct{ ... } + type TagGetTopAlbumsResponse struct + Albums struct{ ... } + type TagGetTopArtistsResponse struct + TopArtists struct{ ... } + type TagGetTopTagsResponse struct + TopTags struct{ ... } + type TagGetTopTracksResponse struct + Tracks struct{ ... } + type TagGetWeeklyChartListResponse struct + WeeklyChartList struct{ ... } + type TagList []Tag + func (t *TagList) UnmarshalJSON(data []byte) error + type TagService struct + func NewTagService(client APIClient) *TagService + func (s *TagService) GetInfo(ctx context.Context, tag string, options url.Values) (*TagGetInfoResponse, error) + func (s *TagService) GetSimilar(ctx context.Context, tag string, options url.Values) (*TagGetSimilarResponse, error) + func (s *TagService) GetTopAlbums(ctx context.Context, tag string, options url.Values) (*TagGetTopAlbumsResponse, error) + func (s *TagService) GetTopArtists(ctx context.Context, tag string, options url.Values) (*TagGetTopArtistsResponse, error) + func (s *TagService) GetTopTags(ctx context.Context, options url.Values) (*TagGetTopTagsResponse, error) + func (s *TagService) GetTopTracks(ctx context.Context, tag string, options url.Values) (*TagGetTopTracksResponse, error) + func (s *TagService) GetWeeklyChartList(ctx context.Context, tag string, options url.Values) (*TagGetWeeklyChartListResponse, error) + type Tags struct + Tag TagList + type TopTags struct + Tag TagList + type Track struct + Album interface{} + Artist interface{} + Attr *TrackAttr + Date *Date + Duration json.Number + Image []Image + Listeners json.Number + MBID string + Name string + Playcount json.Number + Rank json.Number + Streamable interface{} + TopTags *TopTags + URL string + Wiki *Wiki + type TrackAttr struct + NowPlaying string + Rank json.Number + type TrackCorrection struct + Track Track + type TrackCorrectionEntity struct + Corrected string + Text string + type TrackGetCorrectionResponse struct + Corrections struct{ ... } + type TrackGetInfoResponse struct + Track Track + type TrackGetSimilarResponse struct + SimilarTracks struct{ ... } + type TrackGetTagsResponse struct + Tags struct{ ... } + type TrackGetTopTagsResponse struct + TopTags struct{ ... } + type TrackList []Track + func (t *TrackList) UnmarshalJSON(data []byte) error + type TrackNowPlayingResponse struct + NowPlaying struct{ ... } + type TrackScrobbleResponse struct + Scrobbles struct{ ... } + type TrackSearchResponse struct + Results struct{ ... } + type TrackService struct + func NewTrackService(client APIClient) *TrackService + func (s *TrackService) AddTags(ctx context.Context, artist, track, tags string) error + func (s *TrackService) GetCorrection(ctx context.Context, artist, track string) (*TrackGetCorrectionResponse, error) + func (s *TrackService) GetInfo(ctx context.Context, artist, track string, options url.Values) (*TrackGetInfoResponse, error) + func (s *TrackService) GetSimilar(ctx context.Context, artist, track string, options url.Values) (*TrackGetSimilarResponse, error) + func (s *TrackService) GetTags(ctx context.Context, artist, track string, options url.Values) (*TrackGetTagsResponse, error) + func (s *TrackService) GetTopTags(ctx context.Context, artist, track string, options url.Values) (*TrackGetTopTagsResponse, error) + func (s *TrackService) Love(ctx context.Context, artist, track string) error + func (s *TrackService) RemoveTag(ctx context.Context, artist, track, tag string) error + func (s *TrackService) Scrobble(ctx context.Context, artist, track string, timestamp int64, options url.Values) (*TrackScrobbleResponse, error) + func (s *TrackService) Search(ctx context.Context, track string, options url.Values) (*TrackSearchResponse, error) + func (s *TrackService) Unlove(ctx context.Context, artist, track string) error + func (s *TrackService) UpdateNowPlaying(ctx context.Context, artist, track string, options url.Values) (*TrackNowPlayingResponse, error) + type Tracks struct + Track TrackList + type User struct + Age json.Number + Bootstrap json.Number + Country string + Gender string + Image []Image + Name string + Playcount json.Number + Playlists json.Number + RealName string + Registered Date + Subscriber json.Number + URL string + type UserGetFriendsResponse struct + Friends struct{ ... } + type UserGetInfoResponse struct + User User + type UserGetLovedTracksResponse struct + LovedTracks struct{ ... } + type UserGetPersonalTagsResponse struct + Taggings struct{ ... } + type UserGetRecentTracksResponse struct + RecentTracks struct{ ... } + type UserGetTopAlbumsResponse struct + TopAlbums struct{ ... } + type UserGetTopArtistsResponse struct + TopArtists struct{ ... } + type UserGetTopTagsResponse struct + TopTags struct{ ... } + type UserGetTopTracksResponse struct + TopTracks struct{ ... } + type UserGetWeeklyAlbumChartResponse struct + WeeklyAlbumChart struct{ ... } + type UserGetWeeklyArtistChartResponse struct + WeeklyArtistChart struct{ ... } + type UserGetWeeklyChartListResponse struct + WeeklyChartList struct{ ... } + type UserGetWeeklyTrackChartResponse struct + WeeklyTrackChart struct{ ... } + type UserService struct + func NewUserService(client APIClient) *UserService + func (s *UserService) GetFriends(ctx context.Context, user string, options url.Values) (*UserGetFriendsResponse, error) + func (s *UserService) GetInfo(ctx context.Context, user string, options url.Values) (*UserGetInfoResponse, error) + func (s *UserService) GetLovedTracks(ctx context.Context, user string, options url.Values) (*UserGetLovedTracksResponse, error) + func (s *UserService) GetPersonalTags(ctx context.Context, user, tag, taggingType string, options url.Values) (*UserGetPersonalTagsResponse, error) + func (s *UserService) GetRecentTracks(ctx context.Context, user string, options url.Values) (*UserGetRecentTracksResponse, error) + func (s *UserService) GetTopAlbums(ctx context.Context, user string, options url.Values) (*UserGetTopAlbumsResponse, error) + func (s *UserService) GetTopArtists(ctx context.Context, user string, options url.Values) (*UserGetTopArtistsResponse, error) + func (s *UserService) GetTopTags(ctx context.Context, user string, options url.Values) (*UserGetTopTagsResponse, error) + func (s *UserService) GetTopTracks(ctx context.Context, user string, options url.Values) (*UserGetTopTracksResponse, error) + func (s *UserService) GetWeeklyAlbumChart(ctx context.Context, user string, options url.Values) (*UserGetWeeklyAlbumChartResponse, error) + func (s *UserService) GetWeeklyArtistChart(ctx context.Context, user string, options url.Values) (*UserGetWeeklyArtistChartResponse, error) + func (s *UserService) GetWeeklyChartList(ctx context.Context, user string) (*UserGetWeeklyChartListResponse, error) + func (s *UserService) GetWeeklyTrackChart(ctx context.Context, user string, options url.Values) (*UserGetWeeklyTrackChartResponse, error) + type Wiki struct + Content string + Published string + Summary string