Skip to the content
  1. Docs
  2. Get started

Services and features

Core + Managed TransfersGuide · 2 min
The music services a user can connect, and what the API can do on each one. Generated from the same service metadata as the API.

Music services differ in what their APIs allow. The table shows what MusicAPI can do on each service for a connected user. It is built from the same service metadata that the API uses, so it changes when a service changes.

source: fym-shared music-services
Service · id
Status
Update playlists
Remove tracks
Library albums
Library artists
Search by ISRC
Returns ISRC
Page size max
Tracks per playlist
Setup
Spotify
spotify
Live
✓supported
✓supported
✓supported
✓supported
✓supported
✓supported
50
10,000
Apple Music
appleMusic
Live
—not supported
—not supported
✓supported
✓supported
✓supported
✓supported
25
—
YouTube
youtube
Live
✓supported
✓supported
—not supported
—not supported
—not supported
—not supported
50
—
Tidal
tidal
Live
✓supported
—not supported
✓supported
✓supported
—not supported
✓supported
20
—
Amazon Music
amazonMusic
Live
✓supported
✓supported
✓supported
✓supported
✓supported
✓supported
100
2,500
Deezer
deezer
Live
✓supported
✓supported
✓supported
✓supported
—not supported
—not supported
50
2,000
SoundCloud
soundCloud
Live
✓supported
✓supported
—not supported
✓supported
—not supported
✓supported
50
500
Boomplay
boomplay
Live
✓supported
✓supported
✓supported
—not supported
✓supported
✓supported
50
—
Audiomack
audiomack
Live
✓supported
✓supported
✓supported
✓supported
—not supported
✓supported
50
—
Audius
audius
Live
✓supported
✓supported
—not supported
—not supported
—not supported
—not supported
50
—
Qobuz
qobuz
Live
✓supported
✓supported
✓supported
✓supported
—not supported
✓supported
500
1,000
Resso
resso
No longer available
—not supported
—not supported
—not supported
—not supported
—not supported
—not supported
—
—
Unavailable
✓supported
—not supported, or no limit known
Page size maxthe cap for limitParam

Read the table

  • Update playlists: rename a playlist and change its description. Creating a playlist and adding tracks work on every live service.
  • Remove tracks: remove items from a playlist or from the liked tracks.
  • Library albums and Library artists: read the saved albums and the followed artists.
  • Search by ISRC: the user search (POST /api/{integrationUserUUID}/search) takes an isrc.
  • Returns ISRC: tracks in answers carry an isrc. Matching across services is better when both sides have it.
  • Page size max: the highest limitParam the service takes. A higher value is cut to this.
  • Tracks per playlist: the service's own cap on playlist length.

A call that a service does not support answers 418 with internalCode: 15 (NotSupportedMethod).

Services that are not available

Resso shut down, and MusicAPI no longer supports it. See Resso.

Napster is no longer supported. Napster closed its music streaming service in January 2026 (Digital Music News), so its public and authenticated endpoints stopped working.

Demo services

Two services exist only for tests and demos. They need no sign-in and never show in a public service list.

ServiceIntegration typeWhat it does
DemoifydemoA pretend destination. It keeps what a transfer writes.
Sample librarysampleA fixed sample library to read from.

The docs sandbox and Demoify use them.

Catalog search sources

The catalog endpoints (no connected user) cover their own list of services. Ask the API for the live list:

curl
curl "https://api.musicapi.com/public/search/introspection" \
  -H "Authorization: Token $MUSICAPI_CLIENT_ID"
200 OK (shortened)
{
  "sources": ["spotify", "appleMusic", "deezer", "tidal", "youtube"],
  "authSources": ["spotify", "appleMusic", "youtube", "tidal"],
  "types": ["track", "album", "artist"]
}

sources are the values that POST /public/search and POST /public/search/match take. authSources are the services a user can connect.