Il versioning ti permette di evolvere un'API con breaking change senza rompere i client esistenti. Ci sono tre strategie principali, più un processo di deprecazione.
Le tre strategie
1. URI versioning — la versione è nel path.
GET /v1/users/42 HTTP/1.1
GET /v2/users/42 HTTP/1.1
La più semplice e visibile; facile da instradare, mettere in cache e testare in un browser. Svantaggio: viola tecnicamente il principio "l'URI identifica una risorsa" (lo stesso utente ora ha due URL). È di gran lunga la scelta più comune (GitHub, Stripe storicamente).
