Politique relative aux changements incompatibles

Découvrez comment ElevenLabs définit les changements incompatibles dans les API.

Vue d’ensemble

Afin de concilier développement rapide et stabilité, ElevenLabs applique des règles précises pour définir les changements incompatibles dans le périmètre de l’API. Cette page indique ce que nous considérons ou non comme un changement incompatible.

Toutes les mises à jour et modifications de l’API sont publiées chaque semaine dans le journal des modifications.

Modifications des réponses et des schémas

Nous distinguons soigneusement les modifications additives et soustractives des réponses de l’API. L’ajout de nouveaux champs aux modèles de réponse n’est pas considéré comme incompatible. Lors de l’intégration de notre API, votre client API doit ignorer les champs qu’il ne reconnaît pas et ne pas appliquer de vérifications strictes de typage aux réponses de l’API. Presque tous les clients API modernes le font par défaut.

La suppression de champs de réponse existants ou la modification de leur structure est incompatible, car les applications clientes peuvent dépendre de la présence de ces champs et du maintien de leur format attendu.

Modification des paramètres

Les modifications des paramètres de l’API suivent un modèle de compatibilité strict. L’ajout de paramètres obligatoires à des points de terminaison existants est toujours incompatible, car les appels clients existants échoueront lors de la validation. En revanche, l’ajout de paramètres facultatifs, avec des valeurs par défaut ou explicitement indiqués comme facultatifs, n’est pas incompatible, car les appels clients existants peuvent continuer sans modification. De même, toute modification des types ou formats de paramètres, ou le fait de rendre obligatoires des paramètres auparavant facultatifs, est considérée comme incompatible, car elle modifie le contrat attendu par les clients.

Modification des points de terminaison et des chemins

La suppression de points de terminaison entiers ou de chemins d’API est intrinsèquement incompatible, car les applications clientes qui les appellent recevront des erreurs. Les points de terminaison peuvent être marqués comme obsolètes, mais ils ne seront pas supprimés sans communication suffisante auprès de tous les utilisateurs concernés.