Documentation
¶
Index ¶
- type AppleMusicRequestError
- type AuthorizeWithSpotifyResponse
- type CreateUserReq
- type GenerateTokenRequest
- type GenerateTokenResponse
- type GetMediaReq
- type RefreshToken
- type RefreshTokensResponse
- type SpotifyAuthRequest
- type SpotifyClientCredsAuthResp
- type SpotifyMeResponse
- type SpotifyRequestError
- type TokenRefreshRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AppleMusicRequestError ¶
type AppleMusicRequestError struct {
Errors []appleMusicError `json:"errors"`
}
AppleMusicRequestError represents the Apple Music Error Object
type AuthorizeWithSpotifyResponse ¶
type AuthorizeWithSpotifyResponse struct {
Email string `json:"email"`
ID string `json:"id"`
Playlists []firebase.FirestorePlaylist `json:"playlists"`
PreferredSocialPlatform firebase.FirestoreSocialPlatform `json:"preferredSocialPlatform"`
SocialPlatforms []firebase.FirestoreSocialPlatform `json:"socialPlatforms"`
Username string `json:"username"`
JWT string `json:"jwt,omitempty"`
}
AuthorizeWithSpotifyResponse represents the data to send back to the client for a user
type CreateUserReq ¶
type CreateUserReq struct {
Email string `json:"email"`
ID string `json:"id"`
SocialPlatformPath string `json:"socialPlatformPath"`
ProfileImage *firebase.SpotifyImage `json:"profileImage"`
DisplayName string `json:"displayName"`
Username string `json:"username"`
}
CreateUserReq is the payload that includes the minimal amount of data to create a user
type GenerateTokenRequest ¶
type GenerateTokenRequest struct {
UID string
}
GenerateTokenRequest represents the UID for the user that we want to create a custom token for
type GenerateTokenResponse ¶
type GenerateTokenResponse struct {
Token string `json:"token"`
}
GenerateTokenResponse represents what we will send back to the client
type GetMediaReq ¶
type GetMediaReq struct {
Provider string `json:"provider"`
MediaID string `json:"mediaId"`
MediaType string `json:"mediaType"`
// This is only an Apple Music property so remove if not passed through
Storefront string `json:"storefront,omitempty"`
}
GetMediaReq is the payload that inclues the provider, mediaId, and mediaType for finding media service
type RefreshToken ¶
type RefreshToken struct {
PlatformName string `json:"platformName"`
APIToken string `json:"access_token"`
TokenType string `json:"token_type"`
Scope string `json:"scope"`
ExpiresIn int `json:"expires_in"`
}
RefreshToken contains the generic information for a refresh token for social platform
type RefreshTokensResponse ¶
type RefreshTokensResponse struct {
RefreshTokens map[string]firebase.APIToken `json:"refreshTokens"`
}
RefreshTokensResponse contains a list of refreshed tokens for multiple social platforms
type SpotifyAuthRequest ¶
type SpotifyAuthRequest struct {
APIToken string `json:"token"`
ExpiresIn int `json:"expiresIn"`
RefreshToken string `json:"refreshToken"`
}
SpotifyAuthRequest includes APIToken needed for Spotify API
type SpotifyClientCredsAuthResp ¶
type SpotifyClientCredsAuthResp struct {
AccessToken string `json:"access_token"`
TokenType string `json:"token_type"`
ExpiresIn int `json:"expires_in"`
}
SpotifyClientCredsAuthResp includes the response for a client credentials flow from Spotify
type SpotifyMeResponse ¶
type SpotifyMeResponse struct {
DisplayName string `json:"display_name"`
Email string `json:"email"`
ID string `json:"id"`
Images []firebase.SpotifyImage `json:"images"`
Product string `json:"product"`
}
SpotifyMeResponse represents the response coming back from the /me endpoint
type SpotifyRequestError ¶
type SpotifyRequestError struct {
Error spotifyRequestErrorDetails `json:"error"`
}
SpotifyRequestError represents the Spotify Error Object
type TokenRefreshRequest ¶
type TokenRefreshRequest struct {
UID string `json:"uid"`
}
TokenRefreshRequest includes uid to grab all social platforms for user