Launch Sale: Creator and Business plans are discounted for a limited time. View pricing

AudioDN API Documentation

Welcome to the AudioDN API documentation. This API allows you to manage audio collections, tracks, and playback sessions.

Getting Started

You can manage collections and tracks directly from your account dashboard — no code or API integration required. When you’re ready to integrate, choose the path that fits your project:

  1. Web — Use ADN web components. No backend required.
  2. Mobile — Native iOS, Android, or Flutter apps.
  3. Server-Side — Full API control from your server.
  4. Hybrid — Server-provisioned sessions with web components.
  5. Signed Delivery — Sign URLs yourself and skip play sessions for public tracks.

Prefer to start from a working example? Browse the Examples — practical walkthroughs with HTTP requests, snippets, and live demos where they help.

Choose Your Integration Path

Five approaches, from a five-minute drop-in to full server control. Pick the one that fits your project.

Track Upload Lifecycle

When a file is uploaded to AudioDN, it moves through a series of automated steps before it’s ready for playback. Here’s what happens behind the scenes:

StepStageWhat happens
1Create upload sessionYour app requests an upload session via the API (or the uploader component does it automatically with a Client-Side API key). The API returns an upload_session_id. A session can hold many tracks. Optionally include a nested track object on this request to also receive track_upload.upload_url (you can still add more tracks later); otherwise create tracks in step 2.
2Create a track in the sessionFor each additional file (or for every file if you skipped the nested track on session create), make a separate request to POST /v1/upload/:upload_session_id/track. This returns the track_id and a per-track signed upload URL in track_upload.upload_url. The session ID authorizes this request, so no API key is required.
3Upload fileThe audio file is uploaded directly to storage with a PUT to track_upload.upload_url. Once the upload completes, processing begins automatically.
4InitializationADN probes the file to extract duration, codec info, and stream metadata. A default 320-sample waveform is generated for the player. The original file is saved if the Original Upload variant is enabled.
5Variant processingEach configured variant (transcodes, previews, analysis, waveform images/videos) is processed in parallel. The track status is set to processing.
6Fallback processingIf a file is too large, too long, or hits resource limits during step 5, the job is automatically retried on a higher-capacity processor. The track status changes to fallback_processing. These tracks can take longer because dedicated resources need to spin up before processing begins. No action is needed from your side.
7Cover image & color extractionIf the audio file contains embedded cover art, ADN extracts it, uploads it to the image CDN, and scans it for a color palette. The most vibrant color is auto-selected as the player_color for theming players, and responses also include contrast-adjusted player_color_light and player_color_dark variants for light and dark backgrounds.
8Track readyOnce all variants finish, the track status is set to ready (or incomplete if some variants failed but at least one playable variant succeeded). The track is now available for playback.
9Webhook notificationIf a webhook URL is configured on the organization, ADN sends a POST request when a track reaches a terminal outcome (ready, incomplete, error, or init_error) and when its full file set is complete — not on every transitional status. Use this to trigger downstream workflows like updating your database or notifying users. See the Track Processing webhook docs.

Glossary

Client

An organization or individual that uses Audio Delivery Network (AudioDN) to manage and deliver audio content. Clients access the platform via API or web components.

Creator

A sub-account under a client. Typically represents an individual content contributor, such as an artist or podcaster. Used for tracking usage, access control, and analytics at a granular level.

Collection

A logical container (similar to a folder) used to organize one or more tracks. Collections help manage uploads, playback, and display in players.

Track

An individual audio file uploaded to AudioDN. Tracks can be music, spoken word, podcasts, or any other type of audio content.

Original (Upload)

The exact, unmodified audio file provided by the client or creator at upload time. Stored for reference and future variant generation.

Variant

A reusable recipe that defines how ADN turns an uploaded file into a deliverable output—for example an AAC or MP3 transcode, a short preview clip, a waveform image or video, or audio-analysis data. You define a variant once and ADN applies it automatically to every upload. When a single track needs an extra output that isn’t part of your standard set, you can also add a track-specific variant after the fact.

Track File

The actual output produced by applying a variant to a track—the stored, deliverable file itself (for example the AAC audio, the preview clip, or the waveform image). A track has one track file per variant, returned as its files in the API. New track files can also be created after the fact, either by adding a new variant or by generating one for a single track.

Cover Image / Cover Art

An optional image associated with a track, collection, or client account. Displayed in the player and used for aesthetic theming.

Image Colors

A palette of colors automatically extracted from a cover image (theme). Used to style players and other components.

Color

The primary accent color shown on the player and uploader UI. Selected automatically from the image colors or set manually via API.

Player (Component)

A customizable, embeddable web component that plays tracks and collections. Designed for easy integration into websites and apps.

Uploader (Component)

A customizable web component that allows users to upload audio files into collections. Includes support for track metadata and cover images.