Offre de lancement : Les forfaits Creator et Business sont réduits pour une durée limitée. Voir les tarifs

Collections

Les collections sont des conteneurs pour organiser vos pistes audio. Vous pouvez créer, mettre à jour, récupérer et supprimer les informations de collection.

Les réponses incluent deux compagnons en lecture seule de player_color : player_color_light (ajusté pour rester lisible sur un fond clair) et player_color_dark (ajusté pour un fond sombre). Ils sont dérivés de player_color en décalant la luminosité jusqu’à ce que chacun atteigne un contraste minimum, et ne peuvent pas être définis directement.

GET /v1/collection

Renvoie une liste de collections pour une organisation

Paramètres

Nom Type Obligatoire Description
limit number Facultatif Nombre maximum de collections à renvoyer
offset number Facultatif Nombre de collections à ignorer

Exemple de requête

curl -X GET "https://api.audiodelivery.net/v1/collection" \
  -H "Authorization: Bearer YOUR_API_KEY"

Réponse

{
"ok": true,
"api_request_id": "uuid",
"count": 0,
"collections": [
  {
    "id": "uuid",
    "organization_id": "uuid",
    "creator_id": "uuid | null",
    "title": "string",
    "organization_index": "string | null",
    "metadata": {},
    "theme": [],
    "player_color": "string | null",
    "player_color_light": "string | null",
    "player_color_dark": "string | null",
    "player_subtitle": "string | null",
    "is_cover_overridable": true,
    "is_theme_overridable": true
  }
]
}
GET /v1/collection/:collection_id

Renvoie les détails d'une collection spécifique

Paramètres

Nom Type Obligatoire Description
collection_id uuid Obligatoire L'identifiant de la collection à récupérer (paramètre de chemin)

Réponse

{
"ok": true,
"api_request_id": "uuid",
"collection_id": "uuid",
"collection": {
  "id": "uuid",
  "organization_id": "uuid",
  "creator_id": "uuid | null",
  "title": "string",
  "organization_index": "string | null",
  "metadata": {},
  "theme": [],
  "player_color": "string | null",
  "player_color_light": "string | null",
  "player_color_dark": "string | null",
  "player_subtitle": "string | null",
  "is_cover_overridable": true,
  "is_theme_overridable": true
}
}
POST /v1/collection

Crée une nouvelle collection

Paramètres

Nom Type Obligatoire Description
title string Obligatoire Titre de la collection
creator_id uuid Facultatif Identifiant du créateur propriétaire de la collection
organization_index string Facultatif Identifiant d'organisation
metadata object Facultatif Métadonnées d'organisation pour la collection
theme array of objects Facultatif Couleurs extraites des images de couverture
is_cover_overridable boolean Facultatif Indique si la couverture de la collection peut être remplacée au niveau de la piste
is_theme_overridable boolean Facultatif Indique si les couleurs d'image de la collection peuvent être remplacées au niveau de la piste
player_color string Facultatif Couleur du lecteur (couleur hexadécimale)
player_subtitle string Facultatif Sous-titre du lecteur

Exemple de requête

curl -X POST "https://api.audiodelivery.net/v1/collection" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "title": "My Collection",
  "player_subtitle": "Artist Name"
}'

Réponse

{
"ok": true,
"api_request_id": "uuid",
"collection_id": "uuid",
"collection": {
  "id": "uuid",
  "organization_id": "uuid",
  "creator_id": "uuid | null",
  "title": "string",
  "organization_index": "string | null",
  "metadata": {},
  "theme": [],
  "player_color": "string | null",
  "player_color_light": "string | null",
  "player_color_dark": "string | null",
  "player_subtitle": "string | null",
  "is_cover_overridable": true,
  "is_theme_overridable": true
},
"collection_cover_upload": {
  "method": "POST",
  "upload_url": "string",
  "ttl": 3600,
  "expires_at": "string"
}
}
PUT /v1/collection/:collection_id

Met à jour une collection existante

Paramètres

Nom Type Obligatoire Description
collection_id uuid Obligatoire L'identifiant de la collection à mettre à jour (paramètre de chemin)
creator_id uuid Facultatif Identifiant du créateur
organization_index string Facultatif Identifiant d'organisation
title string Facultatif Titre de la collection
metadata object Facultatif Métadonnées d'organisation
theme array of objects Facultatif Couleurs extraites des images de couverture
is_cover_overridable boolean Facultatif Indique si la couverture de la collection peut être remplacée au niveau de la piste
is_theme_overridable boolean Facultatif Indique si les couleurs d'image de la collection peuvent être remplacées au niveau de la piste
player_color string Facultatif Couleur du lecteur (couleur hexadécimale)
player_subtitle string Facultatif Sous-titre du lecteur

Réponse

{
"ok": true,
"api_request_id": "uuid",
"collection_id": "uuid",
"collection": {
  "id": "uuid",
  "organization_id": "uuid",
  "creator_id": "uuid | null",
  "title": "string",
  "organization_index": "string | null",
  "metadata": {},
  "theme": [],
  "player_color": "string | null",
  "player_color_light": "string | null",
  "player_color_dark": "string | null",
  "player_subtitle": "string | null",
  "is_cover_overridable": true,
  "is_theme_overridable": true
}
}
DELETE /v1/collection/:collection_id

Supprime une collection de façon logicielle et cascade vers ses pistes

Paramètres

Nom Type Obligatoire Description
collection_id uuid Obligatoire L'identifiant de la collection à supprimer (paramètre de chemin)

Supprimer une collection cascade : chaque piste qu’elle contient est supprimée de façon logicielle, avec les variantes et fichiers de chaque piste. Les fichiers retirés sont mis en file pour suppression du stockage d’objets.

Exemple de requête

curl -X DELETE "https://api.audiodelivery.net/v1/collection/COLLECTION_ID" \
  -H "Authorization: Bearer YOUR_API_KEY"

Réponse

{
"ok": true,
"api_request_id": "uuid",
"collection_id": "uuid",
"deleted_collection": {
  "id": "uuid",
  "organization_id": "uuid",
  "creator_id": "uuid | null",
  "title": "string",
  "organization_index": "string | null",
  "metadata": {},
  "theme": [],
  "player_color": "string | null",
  "player_color_light": "string | null",
  "player_color_dark": "string | null",
  "player_subtitle": "string | null"
}
}