Wersjonowanie pozwala rozwijać API ze zmianami łamiącymi (breaking changes) bez psucia istniejących klientów. Istnieją trzy główne strategie plus proces wycofywania (deprecation).
Trzy strategie
1. Wersjonowanie w URI — wersja jest w ścieżce.
GET /v1/users/42 HTTP/1.1
GET /v2/users/42 HTTP/1.1
Najprostsze i najbardziej widoczne; łatwe do routingu, cache'owania i testowania w przeglądarce. Wada: technicznie łamie zasadę „URI identyfikuje zasób" (ten sam użytkownik ma teraz dwa URL-e). To zdecydowanie najczęstszy wybór (GitHub, Stripe historycznie).
