TMS 运单开放接口-下单
基本信息
- 方法:
POST - 路径:
/label/create
用途
同步创建 TMS 运单、扣费、并向承运商下单,返回 TMS 运单号、主跟踪号、面单地址、跟踪号列表和费用明细。
公共请求头
所有 TMS 运单开放接口都需要传以下请求头:
Content-Type: application/json
Apikey: {{api_key}}
Apisign: {{api_sign}}
Timestamp: {{timestamp}}
请求参数
请求体顶层是 shipment.Shipment 结构,并通过同一个 body 解析出 accountId、serviceCode、apiUserCode。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| apiUserCode | string | 是 | 客户编号;必须与鉴权用户一致 |
| serviceCode | string | 是 | 服务代码,例如 UPARCEL_GROUND;为空会返回 serviceCode is required |
| accountId | int | 否 | 指定账号 ID;当前未消费,预留字段 |
| orderUserReferenceCode | string | 否 | 外部参考号 |
| shipFrom | object | 是 | 发件地址 |
| shipTo | object | 是 | 收件地址 |
| returnAddress | object | 否 | 退件地址 |
| packages | array | 是 | 包裹列表,至少 1 条 |
| products | array | 否 | 商品列表,国际件建议传 |
| options | object | 否 | 附加选项 |
| sellerOrderNumber | string | 否 | 卖家订单号;options.isUniqueSellerOrderNumber 为真时不允许重复提交 |
| shipmentTrackingManifestType | int | 否 | Manifest 类型;用户 ManifestShippingType=2 且未传时默认 2 |
| user | object | 否 | 用户对象;当前未消费 |
地址对象字段
用于 shipFrom、shipTo、returnAddress 等字段。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| code | string | 否 | 地址编码 |
| name | string | 否 | 名称/公司名 |
| attentionName | string | 否 | 联系人姓名 |
| countryCode | string | 是 | 国家代码,如 US |
| stateCode | string | 否 | 州/省代码,如 CA、NY |
| city | string | 否 | 城市 |
| addressLine1 | string | 是 | 地址行 1 |
| addressLine2 | string | 否 | 地址行 2 |
| addressLine3 | string | 否 | 地址行 3 |
| postalCode | string | 是 | 邮编 |
| phone | string | 否 | 联系电话 |
| phoneExtension | string | 否 | 电话分机 |
| string | 否 | 邮箱 | |
| memo | string | 否 | 备注 |
| mid | string | 否 | MID 标识,部分国际件场景使用 |
| isResidential | bool | 否 | 是否住宅地址,默认 false |
| verifyStatus | int | 否 | 地址校验状 态,一般由响应回填,请求可不传 |
说明:Gin 绑定仅校验地址对象本身非空;实际调用时 countryCode、addressLine1、postalCode 为业务必填。
包裹对象字段
用于 packages[] 数组元素,至少 1 条。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | int | 否 | 包裹 ID,内部使用,开放接口可不传 |
| length | float | 是 | 长度,单位由 options.dimensionUnitCode 决定 |
| width | float | 是 | 宽度 |
| height | float | 是 | 高度 |
| weight | float | 是 | 重量,单位由 options.weightUnitCode 决定 |
| quantity | int | 否 | 数量,默认 1 |
| declaredValue | float | 否 | 单包裹申报价值 |
| reference1 | string | 否 | 参考号 1 |
| reference2 | string | 否 | 参考号 2 |
| reference3 | string | 否 | 参考号 3 |
| hazMat | object | 否 | 危险品信息 |
| freightClass | string | 否 | 货运等级,LTL 等场景使用 |
| quantityUnitPcs | int | 否 | 件数单位 |
危险品对象字段
嵌套在 packages[].hazMat 中,仅危险品包裹需要传。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| Reference_number | string | 否 | 参考号 |
| shippingName | string | 否 | 危险品正式运输名称 |
| RegulationSet | string | 否 | 法规集,空运常用 IATA |
| TransportationMode | string | 否 | 运输模式,常用 CAO |
| classDivisionNumber | string | 否 | 危险等级/分类号 |
| quantity | string | 否 | 危险品数量 |
| IDNumber | string | 否 | UN/ID 编号 |
| UOM | string | 否 | 计量单位 |
| PackagingType | string | 否 | 包装类型,如 FIBERBOARD BOX |
商品对象字段
用于 products[] 数组元素,国际件建议传。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| id | int | 否 | 商品 ID,内部使用,开放接口可不传 |
| description | string | 否 | 商品描述 |
| quantity | int | 否 | 数量 |
| weight | float | 否 | 重量 |
| declaredValue | float | 否 | 申报价值 |
| declaredValueClass | int | 否 | 申报价值等级 |
| hsCode | string | 否 | HS 编码 |
| originCountry | string | 否 | 原产国代码 |
附加选项对象字段
用于 options 字段。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| deliveryConfirmation | string | 否 | 签收确认类型,如 signature、adultSignature |
| shipDate | string | 否 | 发货日期,格式 YYYY-MM-DD |
| packageType | string | 否 | 包装类型,如 YOUR_PACKAGING |
| dimensionUnitCode | string | 否 | 尺寸单位,常用 IN 或 CM |
| weightUnitCode | string | 否 | 重量单位,常用 LBS 或 KG |
| declaredValueCurrencyCode | string | 否 | 申报价值币种,如 USD |
| isUniqueSellerOrderNumber | bool | 否 | 卖家订单号是否唯一,默认 false |
用户对象字段
用于 user 字段,本接口当前未消费,仅做字段透传。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| userCode | string | 否 | 客户编号 |
| userName | string |