# Sorties > Votre catalogue : les sorties avec leur statut, leurs titres et leur livraison plateforme par plateforme. Votre catalogue : les sorties avec leur statut, leurs titres et leur livraison plateforme par plateforme. URL de base `https://api.hillsmusic.com/v1`. Chaque requête envoie une clé d’API : `Authorization: Bearer hm_live_…`. - Lister les sorties - Obtenir une sortie ## Lister les sorties `GET /v1/releases` · Scope : `catalog:read` Les sorties de vos artistes et labels, de la plus récente à la plus ancienne, 50 par page. Renvoyez next_cursor dans cursor pour obtenir la page suivante ; il vaut null sur la dernière page. > **Obsolète :** les champs de statut à l’ancienne terminologie (status sur les sorties, stores[key].state sur chaque plateforme, status et previous_status dans les réponses de simulation) seront supprimés le 30 avril 2027. Utilisez plutôt release_status et delivery_state pour la sortie, stores[key].status pour chaque plateforme et, dans les réponses de simulation, release_status, delivery_state et previous_release_status. D’ici là, les réponses portent les en-têtes `Deprecation` et `Sunset`. [Ce qui change](https://developer.hillsmusic.com/fr/changelog/#2026-10-11-status-fields-sunset) > **Obsolète :** les anciennes valeurs du filtre status= (pending, rejected et distributed) ne seront plus acceptées le 30 avril 2027. Utilisez plutôt status=in_review, status=changes_requested, et status=approved avec delivery_state live ou partially_live dans la réponse. D’ici là, les réponses (lorsque la requête filtre sur l’une des anciennes valeurs) portent les en-têtes `Deprecation` et `Sunset`. [Ce qui change](https://developer.hillsmusic.com/fr/changelog/#2026-10-11-status-fields-sunset) ### Paramètres | Paramètre | Emplacement | Type | Obligatoire | Description | | --- | --- | --- | --- | --- | | `status` | query | `draft` \| `in_review` \| `pending` \| `changes_requested` \| `rejected` \| `approved` \| `distributed` \| `archived` \| `taken_down` | Non | Uniquement ce statut de sortie : draft, in_review, changes_requested, approved, archived ou taken_down. Alias obsolètes, acceptés jusqu’au 30 avril 2027 : pending (in_review), rejected (changes_requested), distributed (approved et en ligne sur au moins une plateforme). | | `cursor` | query | string | Non | Le next_cursor de la page précédente. | | `updated_since` | query | date-heure ISO | Non | Modifiées à cette date et heure ou après (pour la synchronisation). | | `limit` | query | integer (1–100) | Non | Taille de page (50 par défaut). | | `member_id` | query | integer | Non | Uniquement les sorties de cet artiste ou de ce label. | | `upc` | query | string | Non | UPC exact. | | `q` | query | string | Non | Recherche dans l’intitulé et l’artiste. | ### Exemple de requête ```bash curl "https://api.hillsmusic.com/v1/releases?status=approved&limit=20" \ -H "Authorization: Bearer $HILLS_API_KEY" ``` ### Réponse `200` ```json { "data": [ { "id": 812, "title": "Midnight Run", "version": null, "type": "single", "status": "distributed", "release_status": "approved", "review_stage": null, "delivery_state": "partially_live", "update_state": "none", "stores_live": 12, "stores_total": 30, "live_at": "2026-10-05T10:12:00Z", "artists": "Luna", "featured_artists": null, "label": "Nova Records", "genre": "Pop", "upc": "0123456789012", "release_date": "2026-11-01", "cover_url": "/api/catalog/files/cover/…", "member_id": 41, "track_count": 1, "submitted_at": "2026-10-02T08:00:00Z", "created_at": "2026-09-30T08:00:00Z", "updated_at": "2026-10-03T08:00:00Z" } ], "next_cursor": "aWQ6ODEy" } ``` ### Erreurs | Statut | Quand | | --- | --- | | 400 | invalid : un paramètre est incorrect ; field l’indique. | | 401 | unauthenticated, invalid_key, key_revoked, key_expired ou test_keys_retired. | | 403 | insufficient_scope : la clé n’a pas le scope requis ; scope l’indique. account_inactive ou api_not_in_plan. | | 429 | rate_limited : attendez le nombre de secondes indiqué par Retry-After. | ## Obtenir une sortie `GET /v1/releases/{id}` · Scope : `catalog:read` Une sortie avec ses titres et, pour chaque plateforme, son statut (voir Statuts), sa phase et son lien. status et stores[key].state gardent l’ancienne terminologie jusqu’au 30 avril 2027, date de leur suppression ; lisez plutôt release_status, delivery_state et stores[key].status. > **Obsolète :** les champs de statut à l’ancienne terminologie (status sur les sorties, stores[key].state sur chaque plateforme, status et previous_status dans les réponses de simulation) seront supprimés le 30 avril 2027. Utilisez plutôt release_status et delivery_state pour la sortie, stores[key].status pour chaque plateforme et, dans les réponses de simulation, release_status, delivery_state et previous_release_status. D’ici là, les réponses portent les en-têtes `Deprecation` et `Sunset`. [Ce qui change](https://developer.hillsmusic.com/fr/changelog/#2026-10-11-status-fields-sunset) ### Paramètres | Paramètre | Emplacement | Type | Obligatoire | Description | | --- | --- | --- | --- | --- | | `id` | path | integer | Oui | L’identifiant de la sortie. | ### Exemple de requête ```bash curl "https://api.hillsmusic.com/v1/releases/812" \ -H "Authorization: Bearer $HILLS_API_KEY" ``` ### Réponse `200` ```json { "data": { "id": 812, "title": "Midnight Run", "type": "single", "status": "distributed", "release_status": "approved", "delivery_state": "partially_live", "update_state": "none", "stores_live": 1, "stores_total": 2, "live_at": "2026-10-05T10:12:00Z", "upc": "0123456789012", "release_date": "2026-11-01", "member_id": 41, "tracks": [ { "id": 2001, "disc_number": 1, "position": 1, "title": "Midnight Run", "isrc": "USRC17607839", "explicit": "not_explicit", "duration_ms": 201000 } ], "stores": { "spotify": { "status": "live", "op": "insert", "phase": "done", "url": "https://open.spotify.com/album/…", "state": "live" }, "apple_music": { "status": "delivered", "op": "insert", "phase": "done", "url": null, "state": "sent" } } } } ``` ### Erreurs | Statut | Quand | | --- | --- | | 401 | unauthenticated, invalid_key, key_revoked, key_expired ou test_keys_retired. | | 403 | insufficient_scope : la clé n’a pas le scope requis ; scope l’indique. account_inactive ou api_not_in_plan. | | 404 | not_found : la ressource n’existe pas ou ne vous appartient pas. | | 429 | rate_limited : attendez le nombre de secondes indiqué par Retry-After. | Source: https://developer.hillsmusic.com/fr/reference/releases/