跳到主要内容

概览

以下是面向合作方的 Hub REST API,预期由合作方服务端发起调用。

API 端点​

Hub API 的端点为:

https://hub-api.seayoo.com
提示

仅提供 HTTPS 端点,不提供 HTTP 端点。

API 规范​

Content-Type​

Hub API 的请求和响应,Content-Type 均使用 application/json,字符编码为 UTF-8。

请求鉴权​

所有 API 请求必须携带 Authorization header,使用 SEAYOO-HMAC-SHA256 签名算法进行身份认证。

详见 签名认证。

HTTP Status Code​

Hub API 将 HTTP Status Code 分为三类:

200​

API 调用成功。Response Body 的结构对应每个 API 的 Response 部分。

4xx​

对应问题根源在客户端侧的错误,通常不可重试(409 / 429 除外)。

Status CodeRetryableDescription
400 Bad RequestFalse请求不合法,例如请求格式不正确、缺少必需的字段等。
401 UnauthorizedFalse签名验证不通过。
403 ForbiddenFalse合作方已禁用或无权限访问该资源。
404 Not FoundFalse请求的资源不存在。
405 Method Not AllowedFalseHTTP 方法不正确。
409 ConflictTrue并发冲突,例如同一角色与奖励包上有其他发放请求正在处理中,可稍后重试。
429 Too Many RequestsTrue请求过于频繁,被限流。

5xx​

对应问题根源在服务端侧的错误,通常可重试。

Status CodeRetryableDescription
500 Internal Server ErrorTrue服务端内部错误。
503 Service UnavailableTrue服务当前不可用。

ErrorResponse​

API 调用失败时(非 HTTP 200),Response Body 返回统一的 JSON 结构:

PropertyTypeDescription
errorstring错误类型标识,可用于程序判断和日志记录。
messagestring错误的描述信息,便于排查问题。

示例:

{
"error": "binding_not_found",
"message": "No binding found for the specified partner user and game"
}

请求跟踪​

所有 API 响应都会在 HTTP Header X-Trace-Id 中包含一个请求跟踪 ID,便于联调时定位问题。如遇到异常情况,请将此跟踪 ID 提供给世游技术对接人。