FedEx API sürüm belirleme
FedEx API sürüm belirleme
FedEx'te API sürümlerini yönetmek için semantik sürüm belirleme kullanıyoruz. Her sürüm, ana.alt sürüm biçimiyle temsil edilir (örneğin, Ship API 1.1). Yeni bir ana sürüm, değişikliğin geriye dönük uyumsuz olduğu anlamına gelir ve yeni bir alt sürüm ise geriye dönük uyumlu bir değişikliği belirtir.
FedEx'te basit URI sürüm belirlemeyi takip ediyoruz. Bu sadece URI yolunda temsil edilen ana sürüm numarasını içerir. URI yolunda bir alt sürüm numarasının bulunmadığına lütfen dikkat edin. Bu strateji, API'nin belirli sürümlerini belirlemek için URI yönlendirmesini kullanır.
Örnek: /ship/v1/shipments
Sürüm belirleme stratejisi yönlendirme ilkeleri
FedEx API'leri için daha az ana sürüm yayımlamayı ve yeni olan ana sürümün yayımlanmasından itibaren iki yıl içinde eski ana sürümü kullanımdan kaldırmayı planlıyoruz. Örnek olarak yayımlanan bir "N" ana sürümünü ele alırsak "N-1" sürümü, "N" sürümünün yayımlandığı tarihten itibaren iki yıl süreyle desteklenecektir.
Örnek: 2020'de V1.0 sürümünün yayımlandığını düşünelim. 2021'de V2.0 ana sürümü yayımlanırsa V1.0, 2023'te kullanımdan kaldırılır.
Alt sürümler, yeni işlevlerin ve özellik güncellemelerinin çoğunu destekleyecektir.
Örnek: Ana sürüm 1.0'den sonraki 1.1, 1.2 gibi alt sürümler yayınlanarak yeni işlev ve özellik güncellemeleri getirilecektir.
Herhangi bir zamanda, belirli bir API ile ilgili tüm uç noktalar aynı ana sürüme sahip olacaktır. Belgelerin en son sürümü yalnızca FedEx Developer Portal'da bulunabilir. Ancak her API'nin Genel Bakış sayfasının altında ana ve alt sürüm değişikliklerini ayrıntılı olarak gösteren bir değişiklik günlüğü bulunacaktır.
API ana sürümleri ne zaman yayınlanır?
API'lerimiz için ana sürüm sayısını en aza indirmeye çalışıyoruz. Ancak, yeni bir ana sürümün kaçınılmaz olduğu bazı durumlar söz konusudur. Aşağıda, yeni bir ana sürümün yayınlanmasının temel nedenlerinden bazıları verilmiştir:
- Mevcut bir numaralandırma değeri kaldırıldığında veya istekte veya yanıtta biçim veya değerin kendisi değiştiğinde
Örnek: LocationSearchCriterion ögesi için “GEOGRAPHIC_COORDINATES” numaralandırma değeri N sürümünde kaldırılır; tarih söz dizimi YY-AA-GG biçiminden AA-GG-YYYY biçimi olarak değiştirilir; yanıt olarak konum türü FEDEX_ONSITE yerine ONSITE olarak değiştirilir
- İstekte veya yanıtta mevcut bir öğe kaldırıldığında
Örnek: pickupType ögesi N sürümünde oran talebinden kaldırılır (veya yeniden adlandırılır)
- Mevcut bir yöntem kaldırıldığında
Örnek: FedEx Express etiketlerini oluşturma ve iptal etme yöntemi N sürümünde artık desteklenmez.
- İsteğe bağlı veya koşullu olan mevcut bir öğe, istekte zorunlu yapıldığında
Örnek: N sürümünde FedEx Express® Freight gönderileri için rezervasyon numarası artık zorunlu bir öğedir.
- API tasarım değişiklikleri olduğunda
Örnek: İstek ve yanıt yapısı yeniden düzenlenir.
- Hata kodlarında ve hata mesajlarında değişiklikler yaşandığında
Örnek: INCORRECT.WEIGHT olan hata kodunun WEIGHT.LIMIT.EXCEEDED olarak değişmesi
API alt sürümleri ne zaman yayınlanır?
- Yeni bir numaralandırma değeri eklendiğinde
Örnek: N sürümünde serviceType öğesi için yeni bir taşıma teklifi eklenir.
- Yeni bir öğe eklendiğinde
Örnek: Uluslararası gönderi için aracı telefon numarasını içeren yeni bir isteğe bağlı öğe
- Yeni bir yöntem eklendiğinde
Örnek: Uluslararası ticaret belgelerinin yüklendikten sonra değiştirilmesine yönelik bir yöntem N sürümüne eklenir.
- Zorunlu olan mevcut bir öğe isteğe bağlı hâle getirildiğinde
Örnek: FedEx, belge kimliğini kullanıcı bilgilerine göre türetebileceği için belge kimliği artık isteğe bağlıdır.
SSS
FedEx'in eski sürümü kullanımdan kaldırabilmesi için URI'yi iki yıl içinde en son sürüme güncellemelisiniz.
Yeni özelliklere ve değişikliklere uyum sağlamak için geriye dönük uyumlu olan ve bu nedenle entegrasyonunuzu bozması beklenmeyen alt sürümler yayımlanır. Yeni bir alt sürüme yükseltme zorunluluğu yoktur fakat müşteri ihtiyaçlarını karşılamak üzere oluşturulan yeni özellikleri kullanmak için genellikle alt sürüme yükseltilmesi en iyi uygulama olarak önerilir.
FedEx Web Hizmetlerinde her değişiklik yeni bir WSDL sürümünü veya bir ana sürümü gerektirir ve bu da müşteriler için yükseltme işlemini zorlaştırır. FedEx API'leri için yeni özelliklerin çoğu alt sürümlerle uygulamaya konulabilir ve bu da müşterilerin yükseltme işlemini kolaylaştırır. Daha fazla alt API sürümü ve daha az ana sürüm olacaktır.