You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

UPS REST API:Tracking接口与Track by Reference接口的区别及使用咨询

UPS REST API:Tracking接口与Track by Reference接口的区别及使用咨询

嘿,我最近在折腾UPS的REST API,刚好把Tracking接口和Track by Reference接口的区别摸了个大概,也分享下我用Tracking接口的实际经验~

先说说我熟的Tracking接口吧——只要手里有UPS官方的追踪号码,这个接口用起来特别顺手。我当时是按照官方帮助文档的说明来写的请求代码,亲测有效:

const inquiryNumber = "my tracking number";
$query = array(
  "locale" => "en_US",
  "returnSignature" => "false",
  "returnMilestones" => "false",
  "returnPOD" => "false"
);

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer {你的API访问令牌}",
    "Content-Type: application/json"
  ],
  CURLOPT_URL => "https://onlinetools.ups.com/api/track/v1/details/{$inquiryNumber}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "GET"
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

你看,代码里的inquiryNumber就是填UPS追踪号的地方,还能通过locale设置返回信息的语言区域,returnSignaturereturnMilestones这些参数可以控制要不要返回签名、运输里程碑这类额外信息,按需调整就行,返回的响应数据特别精准。

再说说和Track by Reference接口的核心区别:

  • 查询依据不同:Tracking接口必须用UPS生成的专属追踪号码;Track by Reference接口则是用你自己系统的参考编号(比如订单号、出库单号),但前提是你在创建UPS运单的时候,已经把这个参考号和对应的UPS追踪号做了绑定关联
  • 适用场景不同:如果手里直接有UPS追踪号,用Tracking接口是最快最直接的;要是只有自己系统里的参考号,又不想额外存UPS追踪号,那Track by Reference接口就更适合,但查询的时候可能需要补充发货日期范围、收件人信息这类参数来缩小查询范围,避免结果混乱
  • 查询精度不同:Tracking接口因为是精准匹配追踪号,返回结果几乎不会出错;Track by Reference接口如果参考号重复或者参数不全,可能会返回多个匹配结果,需要你再做筛选

我自己用下来,Tracking接口的稳定性很高,只要参数配置对、追踪号有效,基本不会掉链子。如果是用Track by Reference的话,一定要确保运单创建时的参考号绑定正确,不然查询的时候容易找不到对应记录。

内容来源于stack exchange

火山引擎 最新活动