List filters

Return the live, valid values for the sound effect filter parameters. Genre filters are exact matches, so this is where the values come from — hardcoding a list means an empty page the day the catalog changes.

GET/api/v4/search/soundfxs/filters/

This endpoint takes no parameters.

Example request

curl "https://api.slipstreammusic.com/api/v4/search/soundfxs/filters/" \
  -H "Authorization: Bearer $PARTNER_API_KEY"

Example response

{
  "genres": {
    "values": [
      { "value": "Atmosphere", "soundfxs": 52180 },
      { "value": "Cartoon", "soundfxs": 13384 },
      { "value": "Animals", "soundfxs": 5942 },
      { "value": "Abstract", "soundfxs": 750 }
    ]
  },
  "secondary_genres": {
    "values": [
      { "value": "Rain", "soundfxs": 1904 },
      { "value": "Ambience", "soundfxs": 1233 },
      { "value": "Aircraft", "soundfxs": 486 }
    ]
  },
  "duration": {
    "values": [{ "value": [1, 1521] }]
  }
}
FieldDescription
genresValues accepted by genre_name. soundfxs is the number of sound effects in the catalog with that value.
secondary_genresValues accepted by secondary_genre_name. A separate list from genres, not a breakdown of it — the two fields are independent assignments.
durationAllowed duration range in seconds as [min, max]. Pass any sub-range via length__range=<min>__<max>, with both bounds filled in.

That is the whole response. There is no moods, tempo, vocals, or bpm key here: sound effects don’t carry those, so nothing filters on them.

Reusing your music filter parser

The response is shaped like the music filters endpoint — the same { "values": [{ "value": ... }] } envelope, with a per-value count on the discrete lists and a [min, max] pair on the range. One parser serves both; only the set of keys and the count field name (soundfxs here, tracks there) differ.

Errors

HTTPWhen
403The API key is missing or unrecognised, or your account doesn’t have sound effects enabled