刷新已授权的兑换订单物流
curl --request POST \
--url https://api.renaiss.xyz/v2/redeem/orders/{requestId}/tracking \
--header 'Authorization: Bearer <token>' \
--header 'x-builder-api-key: <api-key>'const options = {
method: 'POST',
headers: {'x-builder-api-key': '<api-key>', Authorization: 'Bearer <token>'}
};
fetch('https://api.renaiss.xyz/v2/redeem/orders/{requestId}/tracking', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.renaiss.xyz/v2/redeem/orders/{requestId}/tracking"
headers = {
"x-builder-api-key": "<api-key>",
"Authorization": "Bearer <token>"
}
response = requests.post(url, headers=headers)
print(response.text){
"requestId": "<string>",
"status": "<string>",
"tokenStatuses": {},
"address": {
"countryCode": "<string>",
"addressLine1": "<string>",
"city": "<string>",
"postalCode": "<string>",
"addressLine2": "<string>",
"state": "<string>"
},
"recipient": {
"name": "<string>",
"phone": "<string>",
"email": "jsmith@example.com",
"chineseName": "<string>"
},
"courierName": "<string>",
"estimatedDeliveryDaysMin": 123,
"estimatedDeliveryDaysMax": 123,
"fees": {
"handlingFeeInUsd": "<string>",
"shippingFeeInUsd": "<string>",
"insuranceFeeInUsd": "<string>",
"dutyAndTaxesInUsd": "<string>"
},
"trackingNumber": "<string>",
"trackingUrl": "<string>",
"shipmentStatus": "<string>",
"trackingLastSyncedAt": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"collectibles": [
{
"tokenId": "<string>",
"name": "<string>",
"frontImageUrl": "<string>",
"rixPriceInUsd": "<string>",
"rixPriceUpdatedAt": "2023-11-07T05:31:56Z",
"regionCountryCode": "<string>",
"vaultDisplayName": "<string>"
}
]
}{
"error": "Invalid redemption input",
"code": "WRONG_REQUEST_PARAMS"
}{
"error": "Required authentication credential is missing",
"code": "API_AUTH_MISSING_CREDENTIAL"
}{
"error": "Required authentication scope is missing",
"code": "API_AUTH_INSUFFICIENT_SCOPE"
}{
"error": "Redemption request failed",
"code": "REDEMPTION_ORDER_NOT_FOUND"
}{
"error": "Authentication rate limit exceeded",
"code": "API_AUTH_RATE_LIMITED"
}{
"error": "Internal server error",
"code": "FUNCTION_ERROR"
}实物兑换与配送
刷新物流信息
查询指定兑换订单的最新物流信息。
POST
/
v2
/
redeem
/
orders
/
{requestId}
/
tracking
刷新已授权的兑换订单物流
curl --request POST \
--url https://api.renaiss.xyz/v2/redeem/orders/{requestId}/tracking \
--header 'Authorization: Bearer <token>' \
--header 'x-builder-api-key: <api-key>'const options = {
method: 'POST',
headers: {'x-builder-api-key': '<api-key>', Authorization: 'Bearer <token>'}
};
fetch('https://api.renaiss.xyz/v2/redeem/orders/{requestId}/tracking', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.renaiss.xyz/v2/redeem/orders/{requestId}/tracking"
headers = {
"x-builder-api-key": "<api-key>",
"Authorization": "Bearer <token>"
}
response = requests.post(url, headers=headers)
print(response.text){
"requestId": "<string>",
"status": "<string>",
"tokenStatuses": {},
"address": {
"countryCode": "<string>",
"addressLine1": "<string>",
"city": "<string>",
"postalCode": "<string>",
"addressLine2": "<string>",
"state": "<string>"
},
"recipient": {
"name": "<string>",
"phone": "<string>",
"email": "jsmith@example.com",
"chineseName": "<string>"
},
"courierName": "<string>",
"estimatedDeliveryDaysMin": 123,
"estimatedDeliveryDaysMax": 123,
"fees": {
"handlingFeeInUsd": "<string>",
"shippingFeeInUsd": "<string>",
"insuranceFeeInUsd": "<string>",
"dutyAndTaxesInUsd": "<string>"
},
"trackingNumber": "<string>",
"trackingUrl": "<string>",
"shipmentStatus": "<string>",
"trackingLastSyncedAt": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"collectibles": [
{
"tokenId": "<string>",
"name": "<string>",
"frontImageUrl": "<string>",
"rixPriceInUsd": "<string>",
"rixPriceUpdatedAt": "2023-11-07T05:31:56Z",
"regionCountryCode": "<string>",
"vaultDisplayName": "<string>"
}
]
}{
"error": "Invalid redemption input",
"code": "WRONG_REQUEST_PARAMS"
}{
"error": "Required authentication credential is missing",
"code": "API_AUTH_MISSING_CREDENTIAL"
}{
"error": "Required authentication scope is missing",
"code": "API_AUTH_INSUFFICIENT_SCOPE"
}{
"error": "Redemption request failed",
"code": "REDEMPTION_ORDER_NOT_FOUND"
}{
"error": "Authentication rate limit exceeded",
"code": "API_AUTH_RATE_LIMITED"
}{
"error": "Internal server error",
"code": "FUNCTION_ERROR"
}请求
需要开发者密钥和钱包访问令牌
响应
错误码
在下表中查找接口返回的 HTTP 状态码和响应原文。有关各接口通用的处理建议,请参阅错误码含义与处理方式。
| HTTP | 错误码 | 文本字段 | 响应文本与处理方式 |
|---|---|---|---|
400 | WRONG_REQUEST_PARAMS | error | Invalid redemption input字段缺失、格式错误或请求体超过 16 KiB,请修正后重发。 |
401 | API_AUTH_INVALID_CREDENTIAL | error | Invalid authentication credential密钥或钱包令牌格式错误、未知、已过期或被撤销。核对密钥,刷新钱包令牌或让钱包重新登录。 |
401 | API_AUTH_MISSING_CREDENTIAL | error | Required authentication credential is missing缺少开发者密钥或钱包访问令牌。请在 x-builder-api-key 中发送密钥,并同时发送 Bearer 令牌。 |
403 | API_AUTH_CREDENTIAL_NOT_ALLOWED | error | Credential is not allowed by this policy路由不接受所提供的某些凭据。仅发送开发者密钥和钱包访问令牌。 |
403 | API_AUTH_INSUFFICIENT_SCOPE | error | Required authentication scope is missing令牌缺少所需权限,读取需 redeem:read,修改需 redeem:write。请钱包重新登录并申请相应权限。 |
403 | API_AUTH_INTEGRATION_MISMATCH | error | Authentication integrations do not match令牌和密钥属于不同开发者。请使用签发令牌的开发者对应的密钥。 |
403 | API_AUTH_SUBJECT_MISMATCH | error | Authentication subjects do not match令牌所属链与 API 不符。请针对正确的链重新验证钱包。 |
403 | GACHA_V3_BUILDER_NOT_ACCEPTED_ON_PUBLIC_API | error | This builder checks out on its own surface, not on the public API此密钥无法用于当前 API。请联系 Renaiss,无需重试。 |
404 | REDEMPTION_ORDER_NOT_FOUND | error | Redemption request failed该钱包和开发者名下没有此订单,请核对请求 ID。 |
429 | API_AUTH_RATE_LIMITED | error | Authentication rate limit exceeded已达到密钥的请求频率上限。稍候再以较低频率重试。 |
500 | API_AUTH_INVALID_CONFIGURATION | error | Internal server error若钱包认证持续失败,请将 x-request-id 提供给 Renaiss。 |
500 | API_AUTH_ERROR | error | Internal server error |
500 | FUNCTION_ERROR | error | Internal server error |
500 | REDEEM_TRACKING_SYNC_FAILEDREDEMPTION_ORDER_QUERY_FAILED | error | Internal server error请稍后重新查询。 |
授权
响应
成功