musiccompanion. versions
The versions of an entity: one row per audio edit, artwork or video the work exists as (the radio edit, the full-length mix, a station intro, a summer special). Each version is one content with its own file, label and type, and exactly one version per kind is primary: what the product plays or shows, and what MusicMaster addresses through the entity.
To add a version from a new file:
POST /api/v1/musiccompanion/entities/{id}/versionswith"source": { "upload": { ... } }, alabeland aversionType. The response carries the version and a signeduploadtarget.PUTthe file bytes toupload.urlwith the returnedupload.headers.POST /api/v1/musiccompanion/assets/{id}/confirmwithasset.idfrom the response.
To add a version from an asset already uploaded with POST /api/v1/musiccompanion/assets, pass "source": { "assetId": ... } instead.
List the versions of an entity with their assets
Every version of the entity across content kinds (AUDIO, ARTWORK, VIDEO), each with its label, type, primary flag, duration, markers and asset (the file, with its upload status). Exactly one version per kind is primary: it is what the product plays or shows and what MusicMaster addresses through the entity. Filter by kind to see one kind only, e.g. `?kind=ARTWORK` for every artwork. Download a file with GET /api/v1/musiccompanion/assets/{id}/download.
Add a version to an entity
Adds a version (a radio edit, a full-length mix, a station intro, new artwork) either from an asset uploaded with POST /api/v1/musiccompanion/assets or from a new upload. With an upload source the response carries the signed target: PUT the file there, then confirm it with POST /api/v1/musiccompanion/assets/{id}/confirm. The first version of a kind becomes primary; pass isPrimary to replace the current primary. Attaching an ONLINE audio asset queues any automatic analyses enabled on the entity type.
Retrieve a version
Retrieve a version
Rename, retype or promote a version
Changes the label or type of a version, or promotes it to primary. Promotion demotes the current primary of the same kind in the same request.
Delete a version and its files
Removes the version from the entity and deletes its content and files unless another entity still uses the same content. A deleted primary hands over to the next version of its kind. A version programmed on a channel cannot be deleted; remove it from the channel first.