如何在不重写的情况下把 ShipsGo v2 客户端指向 Dockflow?

我有一个为 ShipsGo v2 海运 API 构建的客户端。它能否在 Dockflow 上使用相同的路径和请求体运行?

可以。只需更改两个值:

  1. 将基础 URL 设置为 https://api.dockflow.com/compat/shipsgo/v2
  2. 在 X-Shipsgo-User-Token 中填入 Dockflow API 密钥。在 API Console 中创建该密钥,并选择 Downstream 作用域。

一个示例,使用虚拟令牌。创建一个货运单:

POST /compat/shipsgo/v2/ocean/shipments
X-Shipsgo-User-Token: prod_acme_FAKE-TOKEN

{"reference":"PO-5521","booking_number":"BK-7741"}

响应中包含货运单 id。使用该 id 读回数据。以下响应已缩短:

GET /compat/shipsgo/v2/ocean/shipments/74123

{"message":"SUCCESS","shipment":{"id":74123,
 "reference":"PO-5521","booking_number":"BK-7741",
 "status":"BOOKED"}}

有三处不同。除 id 和集装箱号之外的列表筛选条件会被拒绝,followers 和 tags 保持为空,且不涵盖空运路线。列表按最后修改时间排序,最早的在前,所有 order_by 都会被拒绝。在导入运行之前,读取只会显示你发送的编号。Webhook 目标由 Dockflow 支持团队添加,每次投递都会携带 X-Shipsgo-Webhook-Signature。

完整字段映射和签名校验: