Soundcharts · Agentic Access
Soundcharts Agentic Access
x-agentic-access
generated
Soundcharts exposes 32 API operations that an AI agent could call, of which 1 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.
By consequence: 31 read and 1 write.
Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.
MusicAnalyticsMarket IntelligenceMetadataStreamingCharts
Operations: 32
Acting: 1
Human-in-the-loop: 0
Method: generated
By consequence
read 31
write 1
Source
Agentic Access
generated: '2026-07-15'
method: generated
source: openapi/soundcharts-openapi.yml
description: Recommended x-agentic-access execution contracts, classified heuristically from
the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind
audience per deployment. See research/curity/agentic-governance/.
summary:
operations: 32
by_action_class:
connected: 31
acting: 1
by_consequence:
read: 31
write: 1
human_in_the_loop_required: 0
operations:
- path: /api/v2/artist/{uuid}
method: get
operationId: getArtistMetadata
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/by-platform/{platform}/{identifier}
method: get
operationId: getArtistByPlatformId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/{uuid}/songs
method: get
operationId: getArtistSongs
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/{uuid}/albums
method: get
operationId: getArtistAlbums
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/{uuid}/related
method: get
operationId: getSimilarArtists
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/{uuid}/current/stats
method: get
operationId: getArtistCurrentStats
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/{uuid}/soundcharts/score
method: get
operationId: getArtistSoundchartsScore
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/song/{uuid}
method: get
operationId: getSongMetadata
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/song/by-isrc/{isrc}
method: get
operationId: getSongByIsrc
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/song/by-platform/{platform}/{identifier}
method: get
operationId: getSongByPlatformId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/song/{uuid}/audio-features
method: get
operationId: getSongAudioFeatures
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/song/{uuid}/audience/{platform}
method: get
operationId: getSongAudience
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/album/by-uuid/{uuid}
method: get
operationId: getAlbumMetadata
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/album/by-upc/{upc}
method: get
operationId: getAlbumByUpc
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/album/by-platform/{platform}/{identifier}
method: get
operationId: getAlbumByPlatformId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2.26/album/{uuid}/tracks
method: get
operationId: getAlbumTracks
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/playlist/{uuid}
method: get
operationId: getPlaylistMetadata
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/playlist/by-platform/{platform}/{identifier}
method: get
operationId: getPlaylistByPlatformId
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/playlist/{uuid}/tracks
method: get
operationId: getPlaylistTracks
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/chart/song/by-platform/{platform}
method: get
operationId: getSongChartsByPlatform
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/chart/song/{slug}/ranking/latest
method: get
operationId: getSongRankingLatest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/chart/song/{slug}/ranking/{datetime}
method: get
operationId: getSongRankingForDate
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/chart/album/{slug}/ranking/latest
method: get
operationId: getAlbumRankingLatest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/chart/tiktok/music/weekly/ranking/latest
method: get
operationId: getTiktokMusicRankingLatest
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/{uuid}/audience/{platform}
method: get
operationId: getArtistAudience
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/{uuid}/streaming/{platform}/listening
method: get
operationId: getArtistStreamingAudience
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/{uuid}/popularity/{platform}
method: get
operationId: getArtistPopularity
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/radio/{uuid}
method: get
operationId: getRadio
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/radio/by-slug/{slug}
method: get
operationId: getRadioBySlug
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/artist/{uuid}/broadcasts
method: get
operationId: getArtistRadioSpins
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /api/v2/search
method: post
operationId: search
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /api/v2/referential/platforms
method: get
operationId: getPlatforms
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none