Skip to main content
此页面由英文翻译而成。英文版为官方权威来源。如翻译内容有任何不一致之处,请以英文版为准。

错误处理

Flex Forward API 使用标准 HTTP 状态码和结构化的错误响应。本页面涵盖错误格式、状态码含义以及处理失败的指引。

错误响应格式

API 根据失败类型返回两种错误响应格式。 API 根据失败类型返回三种错误响应格式。了解预期的格式有助于编写正确的错误解析逻辑。

标准错误

用于身份验证失败、资源未找到和服务器错误:

验证错误

用于请求验证失败(HTTP 400)。包含带有字段级别错误信息的 details 数组:
details 中的每个条目包含:

HTTP 状态码

验证错误(400)

验证错误表示请求体不符合 API 模式的要求。响应一定包含带有具体字段路径的 details 数组。 常见原因:
  • 缺少必填字段(shipment.shipTocourieridempotencyKey
  • 字段格式无效(国家代码、电子邮件、电话号码)
  • 数值无效(重量必须大于 0)
重试前请修正 details 数组中列出的所有验证错误。由于未创建标签,400 响应后可以重复使用相同的 idempotencyKey

身份验证错误(401 / 403)

401 Unauthorized

x-rr-apikeyx-rr-apitoken 头部缺失或无效:
请确认两个头部均存在:

403 Forbidden

认证信息有效但无权访问请求的资源。当尝试获取属于其他账户的标签或追踪信息时会发生:

下游物流商错误(502)

当物流商服务返回错误时,API 以 HTTP 502 响应。标签会以 status: failed 保存在数据库中,并包含物流商的错误详情:
error 对象包含:
502 响应表示标签请求已到达物流商并被拒绝。重试前请检查错误消息 — 部分物流商错误(如地址验证)并非暂时性的,需要修改请求。

可重试与不可重试的错误

推荐的重试策略请参阅幂等性与重试

故障排除

所有 POST 请求必须包含 Content-Type: application/json。缺少时请求体将不会被解析,API 会返回 400 错误。
所有请求必须使用 HTTPS。请确认使用正确的环境 URL:https://api.flexforward.com(生产)或 https://sandbox.flexforward.com(开发)。
GET /labels/{id}GET /tracking/{id}id 参数必须是有效的 UUID。传入追踪号码或其他标识符格式将返回 404 错误。
HTTP 201 或 200 响应中的 status: failed 表示标签已保存但物流商拒绝了请求。请检查 error 对象中的物流商错误消息。常见原因:无效地址、不支持的目的地,或物流商账户配置问题。