FedEx API 版本管理
FedEx 使用語意版本來管理 API 版本。每個版本均由 major.minor (即 Ship API 1.1) 版本格式表示。新的主要版本表示變更無法回溯相容,新的次要版本表示變更可以回溯相容。
FedEx 奉行簡單的 URI 版本管理。只有主要版本才會出現在 URI 路徑中。請注意,次要版本編號不會出現在 URI 路徑中。此策略使用 URI 路徑來準確找出 API 的特定版本。
範例: /ship/v1/shipments
版本管理策略指導原則
我們計畫減少發布 FedEx 應用程式開發介面 (API) 主要版本,並會在較新的主要版本發布兩年後取代較舊的主要版本。例如,如果現在的主要版本是「N」,自「N」版本發布兩年內,「N-1」版本都還會繼續獲得支援。
範例:2020 年發布主要版本 V1.0。如果 2021 年發布主要版本 V2.0,那麼 V1.0 將在 2023 年遭淘汰。
次要版本將支援大多數新功能和功能更新。
範例:發布主要版本 1.0 後,將會陸續發布次要版本 1.1、1.2 等等,以加入新功能和功能更新。
在任何時間點,特定 API 的所有端點都會具備相同的主要版本。文件的最新版本只會在 FedEx Developer Portal提供。但每個 API 的「總覽」頁面下都會有一份變更記錄檔,詳細列出主要和次要版本變更。
API 主要版本何時發布?
我們致力於減少 API 的主要版本數量。但在某些情況下,仍有必要發布新的主要版本。以下列舉發布新的主要版本的幾個主要原因:
- 在移除現有列舉值,或者格式或值本身,在請求或回應中發生變更時
範例:N 版本中刪除了 locationSearchCriterion 元素的列舉值「GEOGRAPHIC_COORDINATES」;日期語法從 YY-MM-DD 變更為 MM-DD-YYYY;回應中的位置類型從 FEDEX_ONSITE 變更為 ONSITE
- 現有元素從必要變成選用時
範例:已從 N 版本的費率要求中移除 (或重新命名) pickupType 元素
- 移除現有方法時
範例:N 版本不再支援建立和取消 FedEx Express 標籤的方法
- 現有元素在請求中從選用或有條件使用變成強制使用時
範例:預約號碼現在是 N 版本 FedEx Express® 貨運的必要元素
- 應用程式開發介面 (API) 設計變更時
範例:已重新排列請求和回應結構
- 變更有錯誤代碼和錯誤訊息時
範例:將錯誤代碼從 INCORRECT.WEIGHT 變更為 WEIGHT.LIMIT.EXCEEDEDED
API 次要版本何時發布?
- 新增列舉值時
範例:N 版本為 serviceType 元素新增了運輸服務
- 新增元素時
範例:新的選用元素,可加入國際貨件的清關代理人電話號碼
- 新增方法時
範例:在 N 版本新增了上傳國際貿易文件後加以修改的方法。
- 現有元素從必要變成選用時
範例:文件 ID 現在為選用項目,因為 FedEx 可以根據使用者資訊衍生文件識別碼。
常見問答集
您必須在兩年內將 URI 更新到最新版本,因為 FedEx 會淘汰較舊的版本。
發布的次要版本已加入新功能和回溯相容的變更,因此不會破壞您的整合。您不一定要升級到新的次要版本,但通常建議最好升級到次要版本,才能使用為滿足客戶需求而建立的新功能。