콘텐츠로 이동

錯誤處理

ANKK Public API 會傳回標準 HTTP 狀態碼,以及包含詳細資訊的 JSON 錯誤內容。


所有錯誤回應均遵循以下架構:

{
"error": "idempotency_conflict",
"message": "The idempotency key was already used with a different request payload.",
"param": "idempotency_key"
}

狀態碼錯誤碼意義與建議操作
400 Bad Requestinvalid_input, validation_failed格式錯誤的請求主體或參數。請修正酬載。
401 Unauthorizedunauthorized, invalid_api_key缺少或無效的 API 金鑰。
403 Forbiddeninsufficient_scope, quota_exceeded缺少權限範圍或超出方案配額。
404 Not Foundnot_found找不到資源 (content_id, connection_id)。
409 Conflictidempotency_conflict冪等性金鑰被重複使用於不匹配的酬載。
423 Lockedbrand_locked品牌因帳單或政策而被鎖定。請檢查 帳單
429 Too Many Requestsrate_limited超出速率限制。請根據 Retry-After 延後重試。
500 Server Errorinternal_server_error伺服器內部問題。可配合退避策略重試。
503 Service Unavailablesns_provider_unavailable外部社群網路服務中斷。請稍後重試。

{
"error": "insufficient_scope",
"message": "The API key does not have the required 'publishing:create' scope."
}
{
"error": "idempotency_conflict",
"message": "Idempotency key 'launch-001' is already bound to a different request hash.",
"param": "idempotency_key"
}
{
"error": "sns_content_media_maximum_exceeded",
"message": "Bluesky supports a maximum of 4 images per post.",
"param": "media"
}

  • 可重試 (5xx, 網路逾時):使用完全相同的 idempotency_key 重新發送,並配合指數抖動退避策略。
  • 不可重試 (400, 401, 403, 404, 409):修改用戶端程式碼或酬載,再使用新的冪等性金鑰重新發出請求。