Get started
Quickstart
Create an API key, verify it with
ping, and fetch your first campaign list
using curl.TypeScript SDK
Official
soundlink package for Node.js, serverless, and Edge — typed
methods, pagination helpers, and JSONL streaming.Warehouse connector
ELT into DuckDB or BigQuery — campaigns, soundlinks, and daily metrics.
Campaigns
Syncing campaigns
List campaigns, pagination, and warehouse join patterns.
Creating campaigns
Create wallet-funded campaigns — strategies, budget rules, creatives, and
idempotent retries.
Managing campaigns
Budget increase/decrease, geographic tier updates, and stopping delivery.
Campaign metrics
Overview, country breakdown, and engagement — which endpoint to call.
Playlist position
Daily track slots on playlist campaigns from the engagement export.
JSONL exports
Bulk campaign and soundlink metrics downloads for warehouses.
Soundlinks
Syncing soundlinks
List soundlinks not tied to a campaign, pagination, and catalog joins.
Creating soundlinks
Create a soundlink from a Spotify track or playlist URL.
Soundlink metrics
Overview, country breakdown, and engagement — which endpoint to call.
JSONL exports
Bulk soundlink metrics downloads for warehouses.
Videos
Importing videos
Import MP4s by URL and use
videoIds in Full Control campaigns.Reference
Authentication
Create keys in Settings, API key format, scopes, expiration, and
organization isolation.
OAuth Integration
Act on behalf of an organization with Authorization Code + PKCE and Client
Credentials.
Errors
Error codes, HTTP status mapping, and pagination limits.
API Reference
Full OpenAPI spec, schemas, and interactive playground.
API basics
Base URL
Base URL
/v1/*.Authentication
Authentication
Response envelope
Response envelope
Timestamps and v1 scope
Timestamps and v1 scope
All
createdAt and updatedAt fields are UTC (ISO 8601 with Z suffix).v1 covers campaign and metrics reads plus writes: campaign create, budget changes, tier updates, and stop, soundlink create, video imports, and soundlinks.