Shutterstock · Capability
Shutterstock API Reference — audio
Shutterstock API Reference — audio. 17 operations. Lead operation: List audio tracks. Self-contained Naftiko capability covering one Shutterstock business surface.
What You Can Do
GET
Gettracklist
— List audio tracks
/v1/v2/audio
POST
Createsoundbox
— Create audio collections
/v1/v2/audio/collections
GET
Getsoundboxlist
— List audio collections
/v1/v2/audio/collections
GET
Getsoundbox
— Get the details of audio collections
/v1/v2/audio/collections/{id}
POST
Renamesoundbox
— Rename audio collections
/v1/v2/audio/collections/{id}
DELETE
Deletesoundbox
— Delete audio collections
/v1/v2/audio/collections/{id}
POST
Addsoundboxitems
— Add audio tracks to collections
/v1/v2/audio/collections/{id}/items
GET
Getsoundboxitems
— Get the contents of audio collections
/v1/v2/audio/collections/{id}/items
DELETE
Deletesoundboxitems
— Remove audio tracks from collections
/v1/v2/audio/collections/{id}/items
GET
Getgenres
— List audio genres
/v1/v2/audio/genres
GET
Getinstruments
— List audio instruments
/v1/v2/audio/instruments
POST
Licensetrack
— License audio tracks
/v1/v2/audio/licenses
GET
Getaudiolicenselist
— List audio licenses
/v1/v2/audio/licenses
POST
Downloadtracks
— Download audio tracks
/v1/v2/audio/licenses/{id}/downloads
GET
Getmoods
— List audio moods
/v1/v2/audio/moods
GET
Searchaudio
— Search for tracks
/v1/v2/audio/search
GET
Gettrack
— Get details about audio tracks
/v1/v2/audio/{id}
MCP Tools
list-audio-tracks
List audio tracks
read-only
idempotent
create-audio-collections
Create audio collections
list-audio-collections
List audio collections
read-only
idempotent
get-details-audio-collections
Get the details of audio collections
read-only
idempotent
rename-audio-collections
Rename audio collections
delete-audio-collections
Delete audio collections
idempotent
add-audio-tracks-collections
Add audio tracks to collections
get-contents-audio-collections
Get the contents of audio collections
read-only
idempotent
remove-audio-tracks-collections
Remove audio tracks from collections
idempotent
list-audio-genres
List audio genres
read-only
idempotent
list-audio-instruments
List audio instruments
read-only
idempotent
license-audio-tracks
License audio tracks
list-audio-licenses
List audio licenses
read-only
idempotent
download-audio-tracks
Download audio tracks
list-audio-moods
List audio moods
read-only
idempotent
search-tracks
Search for tracks
read-only
idempotent
get-details-about-audio-tracks
Get details about audio tracks
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Shutterstock API Reference — audio
description: 'Shutterstock API Reference — audio. 17 operations. Lead operation: List audio tracks. Self-contained Naftiko
capability covering one Shutterstock business surface.'
tags:
- Shutterstock
- audio
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
SHUTTERSTOCK_API_KEY: SHUTTERSTOCK_API_KEY
capability:
consumes:
- type: http
namespace: shutterstock-audio
baseUri: https://api.shutterstock.com
description: Shutterstock API Reference — audio business capability. Self-contained, no shared references.
resources:
- name: v2-audio
path: /v2/audio
operations:
- name: gettracklist
method: GET
description: List audio tracks
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: query
type: array
description: One or more audio IDs
required: true
- name: view
in: query
type: string
description: Amount of detail to render in the response
- name: v2-audio-collections
path: /v2/audio/collections
operations:
- name: createsoundbox
method: POST
description: Create audio collections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: getsoundboxlist
method: GET
description: List audio collections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: page
in: query
type: integer
description: Page number
- name: per_page
in: query
type: integer
description: Number of results per page
- name: v2-audio-collections-id
path: /v2/audio/collections/{id}
operations:
- name: getsoundbox
method: GET
description: Get the details of audio collections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: Collection ID
required: true
- name: renamesoundbox
method: POST
description: Rename audio collections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: Collection ID
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deletesoundbox
method: DELETE
description: Delete audio collections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: Collection ID
required: true
- name: v2-audio-collections-id-items
path: /v2/audio/collections/{id}/items
operations:
- name: addsoundboxitems
method: POST
description: Add audio tracks to collections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: Collection ID
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: getsoundboxitems
method: GET
description: Get the contents of audio collections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: Collection ID
required: true
- name: page
in: query
type: integer
description: Page number
- name: per_page
in: query
type: integer
description: Number of results per page
- name: sort
in: query
type: string
description: Sort order
- name: deletesoundboxitems
method: DELETE
description: Remove audio tracks from collections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: Collection ID
required: true
- name: item_id
in: query
type: array
description: One or more item IDs to remove from the collection
- name: v2-audio-genres
path: /v2/audio/genres
operations:
- name: getgenres
method: GET
description: List audio genres
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: v2-audio-instruments
path: /v2/audio/instruments
operations:
- name: getinstruments
method: GET
description: List audio instruments
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: v2-audio-licenses
path: /v2/audio/licenses
operations:
- name: licensetrack
method: POST
description: License audio tracks
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: license
in: query
type: string
description: License type
- name: search_id
in: query
type: string
description: The ID of the search that led to licensing this track
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: getaudiolicenselist
method: GET
description: List audio licenses
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: audio_id
in: query
type: string
description: Show licenses for the specified track ID
- name: v2-audio-licenses-id-downloads
path: /v2/audio/licenses/{id}/downloads
operations:
- name: downloadtracks
method: POST
description: Download audio tracks
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: License ID
required: true
- name: v2-audio-moods
path: /v2/audio/moods
operations:
- name: getmoods
method: GET
description: List audio moods
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: v2-audio-search
path: /v2/audio/search
operations:
- name: searchaudio
method: GET
description: Search for tracks
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: artists
in: query
type: array
description: Show tracks with one of the specified artist names or IDs
- name: bpm
in: query
type: integer
description: (Deprecated; use bpm_from and bpm_to instead) Show tracks with the specified beats per minute
- name: bpm_from
in: query
type: integer
description: Show tracks with the specified beats per minute or faster
- name: bpm_to
in: query
type: integer
description: Show tracks with the specified beats per minute or slower
- name: duration
in: query
type: integer
description: Show tracks with the specified duration in seconds
- name: duration_from
in: query
type: integer
description: Show tracks with the specified duration or longer in seconds
- name: duration_to
in: query
type: integer
description: Show tracks with the specified duration or shorter in seconds
- name: genre
in: query
type: array
description: Show tracks with each of the specified genres; to get the list of genres, use `GET /v2/audio/genres`
- name: is_instrumental
in: query
type: boolean
description: Show instrumental music only
- name: instruments
in: query
type: array
description: Show tracks with each of the specified instruments; to get the list of instruments, use `GET /v2/audio/instruments`
- name: moods
in: query
type: array
description: Show tracks with each of the specified moods; to get the list of moods, use `GET /v2/audio/moods`
- name: page
in: query
type: integer
description: Page number
- name: per_page
in: query
type: integer
description: Number of results per page
- name: query
in: query
type: string
description: One or more search terms separated by spaces
- name: sort
in: query
type: string
description: Sort by
- name: sort_order
in: query
type: string
description: Sort order
- name: vocal_description
in: query
type: string
description: Show tracks with the specified vocal description (male, female)
- name: view
in: query
type: string
description: Amount of detail to render in the response
- name: fields
in: query
type: string
description: Fields to display in the response; see the documentation for the fields parameter in the overview section
- name: library
in: query
type: string
description: Which library to search
- name: language
in: query
type: string
description: Which language to search in
- name: v2-audio-id
path: /v2/audio/{id}
operations:
- name: gettrack
method: GET
description: Get details about audio tracks
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: integer
description: Audio track ID
required: true
- name: view
in: query
type: string
description: Amount of detail to render in the response
authentication:
type: bearer
token: '{{env.SHUTTERSTOCK_API_KEY}}'
exposes:
- type: rest
namespace: shutterstock-audio-rest
port: 8080
description: REST adapter for Shutterstock API Reference — audio. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/v2/audio
name: v2-audio
description: REST surface for v2-audio.
operations:
- method: GET
name: gettracklist
description: List audio tracks
call: shutterstock-audio.gettracklist
with:
id: rest.id
view: rest.view
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/collections
name: v2-audio-collections
description: REST surface for v2-audio-collections.
operations:
- method: POST
name: createsoundbox
description: Create audio collections
call: shutterstock-audio.createsoundbox
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: GET
name: getsoundboxlist
description: List audio collections
call: shutterstock-audio.getsoundboxlist
with:
page: rest.page
per_page: rest.per_page
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/collections/{id}
name: v2-audio-collections-id
description: REST surface for v2-audio-collections-id.
operations:
- method: GET
name: getsoundbox
description: Get the details of audio collections
call: shutterstock-audio.getsoundbox
with:
id: rest.id
outputParameters:
- type: object
mapping: $.
- method: POST
name: renamesoundbox
description: Rename audio collections
call: shutterstock-audio.renamesoundbox
with:
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deletesoundbox
description: Delete audio collections
call: shutterstock-audio.deletesoundbox
with:
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/collections/{id}/items
name: v2-audio-collections-id-items
description: REST surface for v2-audio-collections-id-items.
operations:
- method: POST
name: addsoundboxitems
description: Add audio tracks to collections
call: shutterstock-audio.addsoundboxitems
with:
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: GET
name: getsoundboxitems
description: Get the contents of audio collections
call: shutterstock-audio.getsoundboxitems
with:
id: rest.id
page: rest.page
per_page: rest.per_page
sort: rest.sort
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deletesoundboxitems
description: Remove audio tracks from collections
call: shutterstock-audio.deletesoundboxitems
with:
id: rest.id
item_id: rest.item_id
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/genres
name: v2-audio-genres
description: REST surface for v2-audio-genres.
operations:
- method: GET
name: getgenres
description: List audio genres
call: shutterstock-audio.getgenres
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/instruments
name: v2-audio-instruments
description: REST surface for v2-audio-instruments.
operations:
- method: GET
name: getinstruments
description: List audio instruments
call: shutterstock-audio.getinstruments
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/licenses
name: v2-audio-licenses
description: REST surface for v2-audio-licenses.
operations:
- method: POST
name: licensetrack
description: License audio tracks
call: shutterstock-audio.licensetrack
with:
license: rest.license
search_id: rest.search_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: GET
name: getaudiolicenselist
description: List audio licenses
call: shutterstock-audio.getaudiolicenselist
with:
audio_id: rest.audio_id
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/licenses/{id}/downloads
name: v2-audio-licenses-id-downloads
description: REST surface for v2-audio-licenses-id-downloads.
operations:
- method: POST
name: downloadtracks
description: Download audio tracks
call: shutterstock-audio.downloadtracks
with:
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/moods
name: v2-audio-moods
description: REST surface for v2-audio-moods.
operations:
- method: GET
name: getmoods
description: List audio moods
call: shutterstock-audio.getmoods
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/search
name: v2-audio-search
description: REST surface for v2-audio-search.
operations:
- method: GET
name: searchaudio
description: Search for tracks
call: shutterstock-audio.searchaudio
with:
artists: rest.artists
bpm: rest.bpm
bpm_from: rest.bpm_from
bpm_to: rest.bpm_to
duration: rest.duration
duration_from: rest.duration_from
duration_to: rest.duration_to
genre: rest.genre
is_instrumental: rest.is_instrumental
instruments: rest.instruments
moods: rest.moods
page: rest.page
per_page: rest.per_page
query: rest.query
sort: rest.sort
sort_order: rest.sort_order
vocal_description: rest.vocal_description
view: rest.view
fields: rest.fields
library: rest.library
language: rest.language
outputParameters:
- type: object
mapping: $.
- path: /v1/v2/audio/{id}
name: v2-audio-id
description: REST surface for v2-audio-id.
operations:
- method: GET
name: gettrack
description: Get details about audio tracks
call: shutterstock-audio.gettrack
with:
id: rest.id
view: rest.view
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: shutterstock-audio-mcp
port: 9090
transport: http
description: MCP adapter for Shutterstock API Reference — audio. One tool per consumed operation, routed inline through
this capability's consumes block.
tools:
- name: list-audio-tracks
description: List audio tracks
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.gettracklist
with:
id: tools.id
view: tools.view
outputParameters:
- type: object
mapping: $.
- name: create-audio-collections
description: Create audio collections
hints:
readOnly: false
destructive: false
idempotent: false
call: shutterstock-audio.createsoundbox
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: list-audio-collections
description: List audio collections
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.getsoundboxlist
with:
page: tools.page
per_page: tools.per_page
outputParameters:
- type: object
mapping: $.
- name: get-details-audio-collections
description: Get the details of audio collections
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.getsoundbox
with:
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: rename-audio-collections
description: Rename audio collections
hints:
readOnly: false
destructive: false
idempotent: false
call: shutterstock-audio.renamesoundbox
with:
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: delete-audio-collections
description: Delete audio collections
hints:
readOnly: false
destructive: true
idempotent: true
call: shutterstock-audio.deletesoundbox
with:
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: add-audio-tracks-collections
description: Add audio tracks to collections
hints:
readOnly: false
destructive: false
idempotent: false
call: shutterstock-audio.addsoundboxitems
with:
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-contents-audio-collections
description: Get the contents of audio collections
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.getsoundboxitems
with:
id: tools.id
page: tools.page
per_page: tools.per_page
sort: tools.sort
outputParameters:
- type: object
mapping: $.
- name: remove-audio-tracks-collections
description: Remove audio tracks from collections
hints:
readOnly: false
destructive: true
idempotent: true
call: shutterstock-audio.deletesoundboxitems
with:
id: tools.id
item_id: tools.item_id
outputParameters:
- type: object
mapping: $.
- name: list-audio-genres
description: List audio genres
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.getgenres
outputParameters:
- type: object
mapping: $.
- name: list-audio-instruments
description: List audio instruments
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.getinstruments
outputParameters:
- type: object
mapping: $.
- name: license-audio-tracks
description: License audio tracks
hints:
readOnly: false
destructive: false
idempotent: false
call: shutterstock-audio.licensetrack
with:
license: tools.license
search_id: tools.search_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: list-audio-licenses
description: List audio licenses
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.getaudiolicenselist
with:
audio_id: tools.audio_id
outputParameters:
- type: object
mapping: $.
- name: download-audio-tracks
description: Download audio tracks
hints:
readOnly: false
destructive: false
idempotent: false
call: shutterstock-audio.downloadtracks
with:
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: list-audio-moods
description: List audio moods
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.getmoods
outputParameters:
- type: object
mapping: $.
- name: search-tracks
description: Search for tracks
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.searchaudio
with:
artists: tools.artists
bpm: tools.bpm
bpm_from: tools.bpm_from
bpm_to: tools.bpm_to
duration: tools.duration
duration_from: tools.duration_from
duration_to: tools.duration_to
genre: tools.genre
is_instrumental: tools.is_instrumental
instruments: tools.instruments
moods: tools.moods
page: tools.page
per_page: tools.per_page
query: tools.query
sort: tools.sort
sort_order: tools.sort_order
vocal_description: tools.vocal_description
view: tools.view
fields: tools.fields
library: tools.library
language: tools.language
outputParameters:
- type: object
mapping: $.
- name: get-details-about-audio-tracks
description: Get details about audio tracks
hints:
readOnly: true
destructive: false
idempotent: true
call: shutterstock-audio.gettrack
with:
id: tools.id
view: tools.view
outputParameters:
- type: object
mapping: $.