Documentation
¶
Index ¶
- type Album
- type Alias
- type ApiKey
- type Artist
- type ArtistWithFullAliases
- type ClientSource
- type LbzAdditionalInfo
- type LbzArtist
- type LbzListenType
- type LbzMBIDMapping
- type LbzSubmitListenPayload
- type LbzSubmitListenRequest
- type LbzTrackMeta
- type Listen
- type Session
- type SimpleArtist
- type Track
- type User
- type UserRole
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Album ¶
type Album struct {
ID int32 `json:"id"`
MbzID *uuid.UUID `json:"musicbrainz_id"`
Title string `json:"title"`
Image *uuid.UUID `json:"image"`
Artists []SimpleArtist `json:"artists"`
VariousArtists bool `json:"is_various_artists"`
ListenCount int64 `json:"listen_count"`
TimeListened int64 `json:"time_listened"`
FirstListen int64 `json:"first_listen"`
// Spotify metadata
Genres []string `json:"genres,omitempty"`
ReleaseDate string `json:"release_date,omitempty"`
Popularity int `json:"popularity,omitempty"`
SpotifyID string `json:"spotify_id,omitempty"`
Label string `json:"label,omitempty"`
ReleaseDatePrecision string `json:"release_date_precision,omitempty"`
}
type Artist ¶
type Artist struct {
ID int32 `json:"id"`
MbzID *uuid.UUID `json:"musicbrainz_id"`
Name string `json:"name"`
Aliases []string `json:"aliases"`
Image *uuid.UUID `json:"image"`
ListenCount int64 `json:"listen_count"`
TimeListened int64 `json:"time_listened"`
FirstListen int64 `json:"first_listen"`
IsPrimary bool `json:"is_primary,omitempty"`
// Spotify metadata
Genres []string `json:"genres,omitempty"`
Bio string `json:"bio,omitempty"`
Popularity int `json:"popularity,omitempty"`
SpotifyID string `json:"spotify_id,omitempty"`
Followers int `json:"followers,omitempty"`
}
type ArtistWithFullAliases ¶
type ArtistWithFullAliases struct {
ID int32 `json:"id"`
MbzID *uuid.UUID `json:"musicbrainz_id"`
Name string `json:"name"`
Aliases []Alias `json:"aliases"`
Image *uuid.UUID `json:"image"`
ImageSource string `json:"image_source,omitempty"`
ListenCount int64 `json:"listen_count"`
TimeListened int64 `json:"time_listened"`
FirstListen int64 `json:"first_listen"`
IsPrimary bool `json:"is_primary,omitempty"`
// Spotify metadata
Genres []string `json:"genres,omitempty"`
Bio string `json:"bio,omitempty"`
Popularity int `json:"popularity,omitempty"`
SpotifyID string `json:"spotify_id,omitempty"`
}
type ClientSource ¶ added in v0.1.30
type LbzAdditionalInfo ¶ added in v0.1.30
type LbzAdditionalInfo struct {
MediaPlayer string `json:"media_player,omitempty"`
SubmissionClient string `json:"submission_client,omitempty"`
SubmissionClientVersion string `json:"submission_client_version,omitempty"`
ReleaseMBID string `json:"release_mbid,omitempty"`
ReleaseGroupMBID string `json:"release_group_mbid,omitempty"`
ArtistMBIDs []string `json:"artist_mbids,omitempty"`
ArtistNames []string `json:"artist_names,omitempty"`
RecordingMBID string `json:"recording_mbid,omitempty"`
DurationMs int32 `json:"duration_ms,omitempty"`
Duration int32 `json:"duration,omitempty"`
Tags []string `json:"tags,omitempty"`
AlbumArtist string `json:"albumartist,omitempty"`
}
type LbzListenType ¶ added in v0.1.30
type LbzListenType string
const ( ListenTypeSingle LbzListenType = "single" ListenTypePlayingNow LbzListenType = "playing_now" ListenTypeImport LbzListenType = "import" )
type LbzMBIDMapping ¶ added in v0.1.30
type LbzSubmitListenPayload ¶ added in v0.1.30
type LbzSubmitListenPayload struct {
ListenedAt int64 `json:"listened_at,omitempty"`
TrackMeta LbzTrackMeta `json:"track_metadata"`
}
type LbzSubmitListenRequest ¶ added in v0.1.30
type LbzSubmitListenRequest struct {
ListenType LbzListenType `json:"listen_type,omitempty"`
Payload []LbzSubmitListenPayload `json:"payload,omitempty"`
}
type LbzTrackMeta ¶ added in v0.1.30
type LbzTrackMeta struct {
ArtistName string `json:"artist_name"` // required
TrackName string `json:"track_name"` // required
ReleaseName string `json:"release_name,omitempty"`
MBIDMapping LbzMBIDMapping `json:"mbid_mapping"`
AdditionalInfo LbzAdditionalInfo `json:"additional_info,omitempty"`
}
type Listen ¶
a Listen is the same thing as a 'scrobble' but i despise the word scrobble so i will not use it
type SimpleArtist ¶
type Track ¶
type Track struct {
ID int32 `json:"id"`
Title string `json:"title"`
Artists []SimpleArtist `json:"artists"`
MbzID *uuid.UUID `json:"musicbrainz_id"`
ListenCount int64 `json:"listen_count"`
Duration int32 `json:"duration"`
Image *uuid.UUID `json:"image"`
AlbumID int32 `json:"album_id"`
Album *string `json:"album,omitempty"`
TimeListened int64 `json:"time_listened"`
FirstListen int64 `json:"first_listen"`
// Spotify metadata
SpotifyID string `json:"spotify_id,omitempty"`
Popularity int `json:"popularity,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.