- API reference
API reference
OpenAPI 3.0.0
Every endpoint and webhook event of the partner API. We build these pages from the OpenAPI file that a test keeps equal to the API routes.
Download the spec at /openapi.json. Agents can read every page as Markdown: see /llms.txt.
Get started
- POSTExchange a docs sign-in code/public/docs-sessions/exchange
- POSTStart a sandbox docs session/public/docs-sessions/sandbox
- GETGet the current docs session/public/docs-sessions/current
- GETList your connected users (docs picker)/public/docs-sessions/current/integration-users
- DELSign out of the docs/public/docs-sessions/current
Connect your users
- GETStart a sign-in (service picker)/{slug}
- GETStart a sign-in with one service/{slug}/{integrationType}/auth
- GETPoll the sign-in status/app/integrations/byUniqueId/{uniqueId}
- GETGet a hosted sign-in attempt/app/integrations/{authModelUUID}
- GETGet the result of a sign-in/public/integrations/auth/{authModelUUID}
- GETGet a connected user/public/integrations/user/{integrationUserUUID}
- GETGet the user's service profile ("Me")/api/{integrationUserUUID}/users/profile
- POSTForce a token refresh/public/integrations/refreshAuthToken
- DELDelete integration user/public/integrations/user/{integrationUserUUID}
- GETGet your public sign-in profile/app/users/{slug}
Read and write a user's library
- GETGet user's playlists/api/{integrationUserUUID}/playlists
- POSTCreate playlist/api/{integrationUserUUID}/playlists
- GETGet playlist/api/{integrationUserUUID}/playlists/{playlistId}
- PUTUpdate playlist/api/{integrationUserUUID}/playlists/{playlistId}
- DELRemove playlist/api/{integrationUserUUID}/playlists/{playlistId}
- GETGet playlist items/api/{integrationUserUUID}/playlists/{playlistId}/items
- POSTAdd items to playlist/api/{integrationUserUUID}/playlists/{playlistId}/items
- PUTUpdate playlist items/api/{integrationUserUUID}/playlists/{playlistId}/items
- DELRemove playlist items/api/{integrationUserUUID}/playlists/{playlistId}/items
- GETGet liked tracks/api/{integrationUserUUID}/liked/tracks
- POSTAdd tracks to library/api/{integrationUserUUID}/liked/tracks
- DELRemove tracks from library/api/{integrationUserUUID}/liked/tracks
- GETGet user's liked albums/api/{integrationUserUUID}/albums
- POSTAdd album to user's library/api/{integrationUserUUID}/albums
- GETGet album/api/{integrationUserUUID}/albums/{albumId}
- DELRemove album from user's library/api/{integrationUserUUID}/albums/{albumId}
- GETGet album tracks/api/{integrationUserUUID}/albums/{albumId}/items
- GETGet user's liked artists/api/{integrationUserUUID}/artists
- POSTAdd artist to user's library/api/{integrationUserUUID}/artists
- GETGet artist/api/{integrationUserUUID}/artists/{artistId}
- DELRemove artist from user's library/api/{integrationUserUUID}/artists/{artistId}
- POSTSearch tracks, albums and artists/api/{integrationUserUUID}/search
Search and match the catalog
- POSTSearch/public/search
- GETSearch Introspection/public/search/introspection
- POSTMatch items into other services/public/search/match
- POSTInspect/public/inspect/url
- POSTInspect Playlist Items/public/inspect/playlistItems
- POSTEmbed player/public/embed/url
- GETEmbed player page/public/embed/{resourceType}/{resourceId}
Managed Transfers
- POSTCreate transfer session/public/transfer-sessions
- PUTPush destination token/public/transfer-sessions/{sessionUuid}/target-auth
- DELEnd transfer session/public/transfer-sessions/{sessionUuid}
- GETGet transfer summary/public/transfers/{transferUuid}
- GETList unmatched items of a transfer/public/transfers/{transferUuid}/unmatched
- GETList unmatched items of all transfers/public/transfers/unmatched