Geriye uyumsuz bir değişiklik — yeniden adlandırılmış bir alan, kaldırılmış bir uç nokta, farklı bir hata biçimi — eski davranışa göre yazılmış her istemciyi bozar. Sürümleme, sağlayıcının yeni davranışı yeni bir sürüm olarak yayınlamasına ve eskisinin çalışmaya devam etmesine izin verir; istemcilere de geçiş için bir süre tanır.
Sürüm genellikle URL yolunda (/v1/, /v2/), bazen bir başlıkta ya da Accept medya türünde, ara sıra bir tarih olarak taşınır. Uyumlu değişiklikler — yeni isteğe bağlı alanlar, yeni uç noktalar — aynı sürüm içinde yayınlanır. Eski bir sürüm emekliye ayrılırken sağlayıcı bunu önceden duyurur, çoğu zaman yanıtlarına Deprecation ve Sunset başlıkları ekleyerek.
Bir alan eklemenin her zaman güvenli olduğu sanılır. Bilinmeyen alanları yok sayan istemciler için güvenlidir; katı serileştiriciler ya da anlık görüntü (snapshot) testleri kullananları bozar. Neyin “uyumsuz” sayıldığı istemcilerin gerçekte ne yaptığına bağlıdır; bu yüzden sağlayıcılar uyumluluk kurallarını yayımlar.
Friends API’si iki sürümü birden çalıştırır: GET /friends/v1/characters kullanımdan kalkmış olarak işaretlidir, GET /friends/v2/characters ise job alanını occupation olarak yeniden adlandırır ve listeyi yeniden sarar; GET /friends/version desteklenenleri listeler.
Tüm sözlük maddeleri · Test teknikleri · 39 mock REST API’nin tamamı
Son güncelleme