Spotify Provider
ProviderSpotify (id: spotify) queries the official Spotify Web API catalogue (/v1/search and /v1/{type}s/{id}) for artists, albums, tracks, playlists, shows, episodes and audiobooks.
Developer Application Setup & OAuth 2.0 PKCE
Spotify requires an authenticated bearer token for all Web API requests. KLookup uses the desktop OAuth 2.0 Authorization Code with PKCE flow (AuthenticationMode::OAuth2Pkce) and never bundles a client secret:
- Create an application in the Spotify Developer Dashboard.
- Add the loopback Redirect URI:
text http://127.0.0.1:43821/callback - In KLookup Settings → Providers → Spotify, enter your application's public OAuth client ID and click Connect / reauthorize in browser….
- Public catalogue searches do not request private user-library scopes by default (
scopes: []). Tokens are kept in memory for the current session or stored in KWallet when opted in, and are only restored from KWallet when explicitly requested in Settings.
Catalogue Types, Identifiers & Limits
- Default searched types:
artist,album,track. - Additional supported catalogue types (
Provider-spotify→Typesinklookuprc):playlist,show,episode,audiobook. - Result identifiers are prefixed with their Spotify catalogue type (
<type>:<id>, for exampletrack:11dFghVXANMlKmJXsNCbNl) so multi-type results and deferred detail requests (GET /v1/{type}s/{id}) stay unambiguous. - HTTP
401responses triggerauthenticationRejected()so expired tokens are invalidated or refreshed;403reports application/account policy restrictions;429and503honourRetry-Afterbackoff without automatic retry loops.