Skip to main content
Use the Public API to sync campaigns and soundlinks into your tools, pull metrics, and create or manage wallet-funded campaigns and soundlinks.

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.
Not sure which to pick? See SDK overview.

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.

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

All v1 routes live under /v1/*.
Send your API key on every request:
See Authentication for scopes and security.
Successful responses:
Errors use the same shape with an error field instead of data. See Errors.
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.