- Docs
- API reference
Changelog
Core + Managed TransfersGuide · 3 min
Changes to the MusicAPI partner API and its docs that partners see.
2026-10-16
New docs site
- The docs moved to a new site, grouped by task: get started, connect users, the user's library, the catalog, Managed Transfers, webhooks and alerts, billing, and guides for AI.
- The hosted transfer product is now called MusicAPI Managed Transfers. The REST API is MusicAPI Core. Every page carries a badge for its product.
- A setup page for each of the 12 services, now with Audius and Qobuz in the nav, and the exact callback URL to register.
- Every page has a Markdown twin (add
.mdto its URL), plus /llms.txt, /llms-full.txt and /openapi.json for AI agents. - The old docs URLs redirect to the new pages.
Webhooks and settings
- Every delivery has an
id(evt_<uuid>). A retry sends the sameid: dedupe by it. - Every event that names a transfer carries
endUserId,batchand the two integration types. See Route an event to your user. transfer.failedandtransfer.cancelledcarry the counts.transfer.failedalso carriesfailureReason,failureSideand, after a failed step,errorName.- New event
transfer.synced.transfer.progressis sent more often: at most once every 15 seconds per transfer. - The MusicAPI-branded transfer email is a setting, off by default.
- New setting Browser logins can only attach: attach-only tokens for browser sign-ins.
- Napster is no longer supported. Napster closed its music streaming service in January 2026. Its old pages redirect to Services and features.
Docs sign-in and Try it
- Sign in on the docs with your dashboard account. The examples then show your slug, your Client ID and your return URL, and Try it calls the API as your account. Your Client Secret never reaches the docs.
- A docs session lasts 8 hours, or until the browser tab closes. Your dashboard settings list the active sessions, with a revoke button.
- Signed out, Try it uses a 1-hour sandbox session for the catalog calls. Connect your own music account through the hosted sign-in of our
demoaccount, and the sandbox also runs the library calls on that account. POST /public/docs-sessions/sandboxtakes an optionalauthModelUUID(theauthModel.uuidofdata64). The spec marks the sandbox operations withx-docs.sandbox: "catalog"or"connectedUser".- New scheme
Authorization: DocsSession <token>on/public/*and/api/{integrationUserUUID}/*. It acts as your account but never as your Client Secret.
MCP server
- New MusicAPI MCP server at
https://api.musicapi.com/mcp, with OAuth 2.1 sign-in and 26 tools to set up and run your account from Claude, Cursor or ChatGPT.
API spec fixes
- The spec now comes from the API code and is tested against it.
- Credentials are alternatives: any one accepted scheme is enough. The old spec required all of them together.
POST /public/searchtakestype=track,albumorartist.POST /public/embed/urlandGET /app/integrations/byUniqueId/{uniqueId}need no credential.byUniqueIddocumentstokenOnly.- The rate limit is documented as it works: 300 requests per minute per account, in a fixed 60-second window, with
429andRetry-After. - The Client-Secret-only routes are named:
DELETE /public/integrations/user/{uuid}and the Match Results API. - The
transfer.cancelledwebhook event is documented.
Newly documented endpoints
- POST/public/search/match
- GET/public/integrations/user/{integrationUserUUID}
- GET/public/integrations/auth/{authModelUUID}
- POST/public/integrations/refreshAuthToken
- GET/app/integrations/{authModelUUID}
- GET/public/embed/{resourceType}/{resourceId}
- GET/app/users/{slug}
- The hosted sign-in parameters
requestOneTimeToken,uniqueId,forwardFailuresandmerchantUserIdon GET/{slug} - The webhook events, each with its own reference page