FedEx API版本控制

FedEx使用语义化版本控制来管理API版本。每个版本由“主版本号.次版本号”(如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,则将在2023年弃用V1.0。

版本

次要版本将支持大部分新功能和功能更新。

例如:发布主要版本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® Freight货件的必要元素

  • API设计有更改时

    示例:请求和响应结构重新排列

  • 错误码和错误消息有更改时

    示例:错误码从INCORRECT.WEIGHT更改为WEIGHT.LIMIT.EXCEEDED

何时发布API次要版本?

  • 添加新枚举值时

    示例:N版本中为serviceType元素添加了新的运输服务

  • 添加新元素时

    示例:用于添加国际货件清关代理人电话号码的新可选元素

  • 添加新方法时

    示例:N版本中添加了上传国际贸易文档后再进行修改的方法。

  • 现有元素从必要变为可选时

    示例:由于FedEx可根据用户信息衍生文档ID,文档ID现在为可选项。

常见问题解答

您需要在两年内将URI更新到最新版本,因为FedEx会弃用旧版本。

发布的次要版本中添加了与先前兼容的新功能和更改,因此不会中断您的集成。并不强制您升级到新的次要版本,但建议最好升级次要版本,如此才能使用为满足客户需求而创建的新功能。

在FedEx Web Services中,每个更改都需要新的WSDL版本或主要版本,因此客户升级困难较大。使用FedEx API,大部分新功能可以通过次要版本引入,客户升级变得轻松方便。API次要版本比较多,而主要版本比较少。