Vai al contenuto
AchaduDevelopers
API operativaVai al sito web
Cruscotto
Achadu/Developers/Controllo delle versioni

Evoluzione compatibile, migrazioni esplicite.

La versione principale è nell'URL. Le modifiche aggiuntive entrano nella v1 senza interrompere i client; Le modifiche incompatibili richiedono una nuova versione e una finestra di migrazione.

Cosa potrebbe cambiare nella versione v1

Nuovi endpoint

Ulteriori operazioni e funzionalità potrebbero essere pubblicate.

Nuovi campi facoltativi

I client dovrebbero ignorare le proprietà sconosciute nelle risposte.

Nuovi eventi

Gli abbonamenti con * possono avere tipi aggiunti al catalogo.

Nuovi valori

Le enumerazioni aperte possono ottenere stati o fornitori documentati.

Cosa richiede una nuova versione

Rimuovi o rinomina

L'endpoint, il campo o il valore esistente non scompaiono silenziosamente.

Cambia significato

Semantica, unità o formato incompatibili richiedono un nuovo contratto.

Rendilo obbligatorio

Un campo facoltativo non diventa obbligatorio all'interno della stessa versione.

Cambia autenticazione

Le modifiche di autorizzazione incompatibili ricevono la propria migrazione.

Ciclo di ammortamento

1
Annuncio

Il cambiamento entra nella storia con sostituzione e impatto.

2
Migrazione

Le due forme coesistono durante la finestra informativa.

3
Avviso in produzione

La documentazione e le risposte identificano il contratto interrotto.

4
Chiusura

La rimozione avviene solo nella data annunciata.

Come scrivere un client resiliente

Ignora i campi di risposta sconosciuti.
Tratta le enumerazioni sconosciute come stato valido non supportato.
Non dipende dall'ordine delle proprietà JSON.
Utilizza la versione dall'URL, non una versione dedotta dall'SDK.
Tieni traccia della cronologia prima di aggiornare un cliente generato.