Music Delivery

40

Music Delivery quickstart

This flow is for an approved organization preparing its first Direct API or guided bulk delivery. It creates durable work without treating request completion as publication or processor completion.

Prerequisites

Before sending catalog data, the organization needs a current Partner agreement, a provisioned sender, an active write cohort and a scoped credential. A human representative completes agreement actions; a bearer credential cannot accept legal terms. Compare the channel boundaries and agreement requirements.

Validate without writing

Call validateMusicDelivery with the business manifest. Validation is strict and write-free. Resolve every blocking issue and preserve the returned normalized manifest hash and publication-attestation binding.

curl --request POST \
  https://api.kasty.app/api/v1/music-deliveries/validate \
  --header 'Authorization: Bearer YOUR_SCOPED_CREDENTIAL' \
  --header 'Content-Type: application/json' \
  --data @manifest.json

See Validation for JSON paths, blocking errors and warnings.

Submit idempotently

Add the exact versioned rights declaration when the current rollout requires it, then call submitMusicDelivery. The authenticated sender plus message.id is the idempotency key. Replaying the same normalized payload and evidence returns the existing batch; reusing the key for different content conflicts.

Store the returned batch public ID. A successful response means Kasty accepted durable work, not that audio processing finished.

Upload assets

For every declared asset, call createMusicDeliveryUploadIntent. Upload the exact bytes directly to the returned object-scoped URL with the required headers, then call completeMusicDeliveryUpload.

Expired URLs renew the same logical (batch, assetRef) intent. Do not create a new asset identity. Read Assets and uploads before implementing progress UI.

Follow durable work

Poll getMusicDeliveryBatch, list item state and inspect stable issues. Upload progress, storage verification, catalog coordination and media processing are different phases. Retry only work explicitly marked retryable through retryMusicDeliveryBatch.

Continue with Jobs and retries, Issues and Rights and video use.