Passer au contenu
AchaduDevelopers
API opérationnelleAller sur le site Web ↗
Tableau de bord →
Achadu/Developers/Gestion des versions

Evolution compatible, migrations explicites.

La version principale est dans l'URL. Les modifications additives sont introduites dans la v1 sans interrompre les clients ; Les modifications incompatibles nécessitent une nouvelle version et une nouvelle fenêtre de migration.

Ce qui pourrait changer dans la v1

✓
Nouveaux points de terminaison

Des opérations et fonctionnalités supplémentaires peuvent être publiées.

✓
Nouveaux champs optionnels

Les clients doivent ignorer les propriétés inconnues dans les réponses.

✓
Nouveaux événements

Les abonnements avec * peuvent avoir des types ajoutés au catalogue.

✓
De nouvelles valeurs

Les énumérations ouvertes peuvent obtenir des états ou des fournisseurs documentés.

Ce qui nécessite une nouvelle version

✓
Supprimer ou renommer

Le point de terminaison, le champ ou la valeur existant ne disparaît pas silencieusement.

✓
Changer le sens

Une sémantique, une unité ou un format incompatible nécessite un nouveau contrat.

✓
Rendre obligatoire

Un champ optionnel ne devient pas obligatoire au sein d’une même version.

✓
Changer l'authentification

Les modifications d’autorisation incompatibles reçoivent leur propre migration.

Cycle d'amortissement

1
Annonce

Le changement entre dans l’histoire avec remplacement et impact.

2
Migrations

Les deux formes coexistent pendant la fenêtre informée.

3
Avis en production

La documentation et les réponses identifient le contrat interrompu.

4
Clôture

L'enlèvement n'a lieu qu'à la date annoncée.

Comment écrire un client résilient

✓Ignorez les champs de réponse inconnus.
✓Traitez les énumérations inconnues comme un état valide non pris en charge.
✓Ne dépendez pas de l'ordre des propriétés JSON.
✓Utilisez la version de l'URL, et non une version déduite du SDK.
✓Suivez l’historique avant de mettre à jour un client généré.