API Reference
Playlists
Add or remove items

Add or remove items

Add tracks, stems, or sound effects to a playlist, or remove them. Owners and can_edit collaborators can call this endpoint.

POST/api/v4/me/playlists/{slug}/tracks/

Path parameters

ParameterDescription
slugThe playlist slug.

Request body

FieldTypeRequiredDescription
actionstringYes"add" or "delete".
tracksarray of UUIDsNoTrack IDs.
stemsarray of UUIDsNoStem IDs.
soundfxsarray of UUIDsNoSound effect IDs.

At least one of tracks, stems, or soundfxs is required.

Example request — adding tracks

curl https://api.slipstreammusic.com/api/v4/me/playlists/late-night/tracks/ \
  -X POST \
  -H "Authorization: Bearer $PARTNER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "add",
    "tracks": [
      "8a4b2c1d-9e7f-4a6b-b3c2-1f8d4e5a7c6b",
      "1f3c4d5e-6a7b-8c9d-0e1f-2a3b4c5d6e7f"
    ]
  }'

Example request — removing items

curl https://api.slipstreammusic.com/api/v4/me/playlists/late-night/tracks/ \
  -X POST \
  -H "Authorization: Bearer $PARTNER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "delete",
    "tracks": ["8a4b2c1d-9e7f-4a6b-b3c2-1f8d4e5a7c6b"]
  }'

Example response

{
  "success": true,
  "added": 2,
  "skipped": 0,
  "duplicated": 0
}
FieldDescription
addedItems successfully added (always 0 for delete).
skippedItems rejected because the user can't add them — e.g., a track restricted to a higher tier.
duplicatedItems already in the playlist or duplicated within the request. Skipped without error.

This endpoint is idempotent for add: re-sending the same UUIDs returns them under duplicated, not added. Safe to retry.