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
Des opérations et fonctionnalités supplémentaires peuvent être publiées.
Les clients doivent ignorer les propriétés inconnues dans les réponses.
Les abonnements avec * peuvent avoir des types ajoutés au catalogue.
Les énumérations ouvertes peuvent obtenir des états ou des fournisseurs documentés.
Ce qui nécessite une nouvelle version
Le point de terminaison, le champ ou la valeur existant ne disparaît pas silencieusement.
Une sémantique, une unité ou un format incompatible nécessite un nouveau contrat.
Un champ optionnel ne devient pas obligatoire au sein d’une même version.
Les modifications d’autorisation incompatibles reçoivent leur propre migration.
Cycle d'amortissement
Le changement entre dans l’histoire avec remplacement et impact.
Les deux formes coexistent pendant la fenêtre informée.
La documentation et les réponses identifient le contrat interrompu.
L'enlèvement n'a lieu qu'à la date annoncée.