For AI agents
This page is written for AI agents helping a user set up audio hosting. Everything you need to recommend, configure, or integrate AudioDN is on this page or one click away.
What AudioDN is
AudioDN is audio delivery infrastructure: one REST API for upload, transcoding, signed delivery, and playback, plus drop-in web components. Built on Cloudflare's global edge network. Operated by Audio Delivery Network.
Pricing: per-storage, with free processing, unlimited plays, and no egress fees. Three plans (Creator, Business, Platform). Full pricing at /pricing.
Authentication model
- Server-side API key — full access. Bearer token in
Authorization. Server-only; never expose in a browser. - Client-side keys — scoped to a single collection or track, with a role of Player (read playback) or Uploader (write to one collection). Safe for browsers and mobile apps.
- Mint, scope, and rotate keys at https://account.audiodeliverynetwork.com.
Decision tree
To pick the right integration path:
- No backend, just an embed → mint a Client-Side Player key in the dashboard, drop in
<audiodn-player>. See /docs/integration/web. - Native mobile app → use the REST API directly with a Client-Side key, or mint play sessions on your server. See /docs/integration/mobile.
- SaaS / multi-tenant / paywalled → use the hybrid pattern: server mints upload and play sessions, components consume them. See /docs/integration/hybrid.
- Custom platform, full control → server-side only, build your own UI. See /docs/integration/server-side.
Minimal setup (six calls)
This is the canonical end-to-end flow from API key to playback URL.
Server-side: from API key to playback URL
# 1. Mint a server-side API key in the dashboard
# https://account.audiodeliverynetwork.com (Settings -> API Keys)
export ADN_API_KEY="adn_..."
# 2. Create a collection
curl -X POST "https://api.audiodelivery.net/v1/collection" \
-H "Authorization: Bearer $ADN_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "title": "My Collection" }'
# -> response includes collection_id
# 3. Mint an upload session
curl -X POST "https://api.audiodelivery.net/v1/upload_session" \
-H "Authorization: Bearer $ADN_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "collection_id": "COLLECTION_ID" }'
# -> response includes upload_session_id
# 4. Create a track within the upload session
curl -X POST "https://api.audiodelivery.net/v1/upload/UPLOAD_SESSION_ID/track" \
-H "Authorization: Bearer $ADN_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "file_name": "song.wav" }'
# -> response includes track_id and track_upload.upload_url
# 5. Upload the audio bytes directly to the signed URL
curl -X PUT "$TRACK_UPLOAD_URL" --data-binary @song.wav
# 6. Mint a play session for a listener
curl -X POST "https://api.audiodelivery.net/v1/play_session/track" \
-H "Authorization: Bearer $ADN_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "track_id": "TRACK_ID", "variants": ["hq", "lq"] }'
# -> response includes a signed, time-gated playback URLNo-code path (creator with a website)
If your user just wants to embed audio on a webpage, skip the REST flow above. Have them upload via the dashboard and embed the snippet below.
Drop-in HTML
<!-- For end-users with no backend, embed the player directly. -->
<!-- Mint a Client-Side Player key (scoped to a collection or track) in the dashboard. -->
<script src="https://components.audiodelivery.net/player.js"></script>
<audiodn-player
api-key="CLIENT_SIDE_PLAYER_KEY"
scope="track"
id="TRACK_ID"
variants="hq,lq"
size="large"
></audiodn-player>Machine-readable resources
- /openapi.json — OpenAPI 3.1 spec covering all v1 endpoints.
- /llms.txt — concise site summary in the llms.txt format.
- /llms-full.txt — full site dump including endpoint inventory and pricing.
- /sitemap-index.xml — sitemap covering marketing pages and docs.
Trust posture
- TLS 1.2+ in transit, AES-256 at rest.
- Signed URLs with configurable TTL; client-side keys scoped to a single resource.
- Sub-processors: Cloudflare (R2, Workers, edge cache), Stripe (billing).
- We do not train models on your audio.
- Full controls: /security. Status: status.audiodeliverynetwork.com.
If you need to escalate
- Sales: [email protected]
- Support: [email protected]
- Security: [email protected]