LabelGrid API

LabelGrid API Documentation

LabelGrid API provides comprehensive endpoints for content providers to manage their audio catalogs, releases, distribution, and analytics. This RESTful API supports catalog management, track and release operations, distribution workflows, and integrations with external music services.

Prerequisites

The following prerequisites are required to use the LabelGrid API:

Authorization

All endpoints require authentication via API tokens. Include your token in the Authorization header as a Bearer token. You may generate and manage your API tokens in your LabelGrid account settings or Sandbox account settings.

NOTICE For experimenting and testing purposes, we highly recommend using the sandbox environment. See the "Sandbox Access" section below for details.

Sandbox Access

Sandbox IP Allowlisting

Contact support to allowlist any IP addresses you will be using to access the sandbox resources.

NOTE Allowlisting is only needed for sandbox access.

Sandbox API

You can use the following sandbox version of our API to create and manage resources without affecting your production data.

Sandbox Frontend

You can use the following sandbox version of our frontend to check your catalogue after creating resources via the API.

Keeping Your Data Secure

IMPORTANT LabelGrid takes data security seriously. Ensure you follow best practices for API key management.

Features Overview

For more information, visit our LabelGrid Help Center or contact our support team.

API Changelog

Track breaking changes, deprecations, additions, and fixes to the Public API:

Authenticated public-API responses also advertise the feed via an RFC 8288 Link: </changelog.atom>; rel="changelog" header.

API groups

Artists

Writers

Labels

Publishers

Releases

Track Files

Track Licenses

Tracks

Animated Covers

Distro Outlets

Distro Queue

Site Settings

User Info

Webhooks

Manage outbound webhooks for delivery and lifecycle events

API Tokens

Genres

Contributor Roles

Genre Categories

Statements

Transactions

Royalties

Instruments

Analytics

Languages

Stream Radar

Territories

GET /artists — Get all artists

POST /artists — Create new artist

GET /artists/{artist} — Get artist details

PATCH /artists/{artist} — Update artist

DELETE /artists/{artist} — Delete artist

POST /artists/{artist}/photo — Upload artist photo

GET /writers — Get all writers

POST /writers — Create new writer

GET /writers/{writer} — Get writer details

PATCH /writers/{writer} — Update writer

DELETE /writers/{writer} — Delete writer

GET /labels — Get all labels

POST /labels — Create new label

GET /labels/{label} — Get label details

PATCH /labels/{label} — Update label

DELETE /labels/{label} — Delete label

POST /labels/{label}/enable-beatport — Request Beatport onboarding

POST /labels/{label}/images/{imageType} — Upload label images

GET /publishers — Get all publishers

POST /publishers — Create new publisher

GET /publishers/{publisher} — Get publisher details

PATCH /publishers/{publisher} — Update publisher

DELETE /publishers/{publisher} — Delete publisher

GET /releases — Get all releases

POST /releases — Create new release

POST /releases/short-url — Generate the landing-page short URL

GET /releases/{release} — Get release details

PATCH /releases/{release} — Update release

DELETE /releases/{release} — Delete release

POST /releases/{release}/photo — Upload cover art

POST /releases/{release}/validate — Validate release

POST /releases/{release}/distribute — Distribute release

POST /releases/{release}/takedown-all — Take down release

GET /releases/{release}/quality-report — Get the Preflight QC report for a release

POST /releases/{release}/quality-report/refresh — Re-run the Preflight QC analysis for a held release

POST /releases/{release}/confirm-review — Confirm a held release into distribution review

POST /releases/{release}/withdraw-review — Withdraw a release from review

GET /releases/{release}/landing-config — Get landing-page config

PUT /releases/{release}/landing-config — Set landing-page config

GET /review-issues — Get review issues for a release

POST /review-issues/{reviewReleaseIssue}/notes — Submit a note on a review issue

GET /issue-definitions — Get the issue-definitions catalog

POST /tracks/{track}/files/{fileType}/upload-url — Get presigned upload URL

GET /tracks/{track}/files/{fileType} — Get file details

PUT /tracks/{track}/files/{fileType} — Upload new file

DELETE /tracks/{track}/files/{fileType} — Delete file

GET /tracks/{track}/licenses — List all track licenses

POST /tracks/{track}/licenses — Upload track license

GET /tracks/{track}/licenses/{trackLicense} — Get license details

POST /tracks/{track}/licenses/{trackLicense} — Update license

DELETE /tracks/{track}/licenses/{trackLicense} — Delete track license

GET /tracks/{track}/licenses/{trackLicense}/download — Get license download URL

GET /tracks — Get all tracks

POST /tracks — Create new track

GET /tracks/{track} — Get track details

PATCH /tracks/{track} — Update track

DELETE /tracks/{track} — Delete track

POST /releases/{release}/files/{assetType}/upload-url — Get presigned upload URL

GET /releases/{release}/files/{assetType} — Get file details

PUT /releases/{release}/files/{assetType} — Upload new file

DELETE /releases/{release}/files/{assetType} — Delete a file

GET /distro-outlets — Get all distro outlets

GET /queues/distro — Get all queue jobs

GET /site-settings/{label} — Get site settings

GET /site-settings/links/{label} — Get label links

GET /resolve/label/{labelSlug} — Resolve label by slug

GET /me — Get current user

GET /webhooks — List all webhooks

POST /webhooks — Create a new webhook

GET /webhooks/event-types — Get available event types

GET /webhooks/{webhook} — Get webhook details

PATCH /webhooks/{webhook} — Update a webhook

DELETE /webhooks/{webhook} — Delete a webhook

POST /webhooks/{webhook}/test — Test a webhook

GET /webhooks/{webhook}/logs — Get webhook delivery logs

POST /webhooks/{webhook}/regenerate-secret — Regenerate webhook secret

DELETE /tokens/current — Revoke the current token

DELETE /tokens/{tokenId} — Revoke a token by id

GET /genres — Get all genres

GET /contributor-roles — Get contributor roles

GET /genre-categories — Get all genre categories

GET /statements — Get all statements

GET /statements/{invoiceNumber} — Get statement details

GET /statements/{invoiceNumber}/csv — Download CSV

GET /statements/export/csv — Download CSV by date

GET /statements/{invoiceNumber}/invoice — Download invoice

GET /transactions — Get all transactions

GET /transactions/csv — Export to CSV

GET /artificial-streaming-fee/{period} — Get artificial-streaming fee breakdown

GET /royalties/breakdown — Get a per-dimension royalty breakdown

GET /royalties/artificial-streams — List artificial-stream detections

GET /instruments — Get all instruments

GET /analytics/summary — Composite analytics summary

GET /analytics/streams — Daily streams time-series grouped by date and platform

GET /analytics/listeners — Daily listeners time-series grouped by date and platform

GET /analytics/saves — Daily saves time-series grouped by date and platform

GET /analytics/skips — Daily skips time-series grouped by date and platform

GET /analytics/streams-by-country — Total streams aggregated by country

GET /analytics/streams-by-gender — Total streams aggregated by gender

GET /analytics/streams-by-age — Total streams aggregated by age group

GET /analytics/shares — Daily shares time-series grouped by date and platform

GET /analytics/completion-rate — Daily stream-weighted completion rate grouped by date and platform

GET /analytics/lyrics-view-rate — Daily stream-weighted lyrics view rate grouped by date and platform

GET /analytics/canvas-view-rate — Daily stream-weighted canvas view rate grouped by date and platform

GET /analytics/device-split — Daily stream-weighted mobile-device share grouped by date and platform

GET /analytics/source-split — Daily stream-weighted organic-source share grouped by date and platform

GET /analytics/saves-by-tier — Premium vs free saves split grouped by date and platform

GET /analytics/shares-by-country — Total shares aggregated by country

GET /languages — Get all languages

GET /stream-radar/flags — List Stream Radar flags

GET /stream-radar/flags/{streamRadarFlag} — Get a Stream Radar flag

GET /territories — Get all territories