API 錯誤

API 以標準 HTTP 狀態碼及統一的回應主體回報錯誤。成功的回應直接回傳資料,不包裝於信封物件中。

錯誤格式

發生錯誤時,回應主體為 JSON 物件,包含單一欄位 error,其值為人類可讀的訊息:

{"error":"reaction not found"}

請優先依據 HTTP 狀態碼判斷,error 文字用於日誌記錄及對使用者的提示。

狀態碼

  • 200 OK — 請求成功,主體包含資料。
  • 201 Created — 已建立新資源(部分 POST 端點)。
  • 204 No Content — 成功但無主體(部分刪除操作)。
  • 400 Bad Request — 請求主體或參數不正確。
  • 401 Unauthorized — Token 遺失、無效或已過期;或該路由無法使用個人 Token 存取。
  • 402 Payment Required — 操作受限於方案或配額(例如自訂媒體儲存需要 Premium)。
  • 403 Forbidden — Token 缺少此路由所需的存取範圍。
  • 404 Not Found — 資源不存在或不屬於你。
  • 409 Conflict — 狀態衝突(例如唯一值重複)。
  • 422 Unprocessable Entity — 主體語法正確,但未通過業務邏輯驗證。
  • 429 Too Many Requests — 超過請求頻率限制(參見限制)。
  • 500 Internal Server Error — 伺服器內部錯誤;請稍後重試。

如何處理

2xx 代碼視為成功。遇到 401/403 時,請檢查 Token 及其存取範圍。遇到 4xx429 除外)時,請勿原封不動地重試——先修正請求。遇到 4295xx 時,可採用指數退避策略重試。

延伸閱讀