correlationId + meta + payload — 見 錯誤處理)。當出現錯誤時,meta.errorCode 是機器可讀的錯誤鍵。本頁列出 User 與 Public API 可能產生的全部值。
如何閱讀本頁
Wire HTTP 欄是回應實際抵達時的 HTTP 狀態碼。meta.status 欄是回應體內部的應用層狀態。
meta.errorCode 欄是您在用戶端程式碼中進行分支判斷的值。
meta.error 欄描述每筆錯誤明細的形態。
本 API 的多數錯誤路徑會回傳 HTTP 200,並把邏輯狀態放在 meta.status 中(軟錯誤約定)。少數情況下會回傳真實的 HTTP 400/401/403/409——這些情況發生在回應信封被套用之前,或代表真正的 HTTP 語意。
驗證失敗
幾乎每個寫入端點都會經過 FluentValidation。在此被攔截的任何內容——缺少必填欄位、值超出範圍、國家代碼無效、批次超出上限、以Custom(...) 檢查表達的業務規則違反——都會歸併到同一個錯誤代碼:
範例回應體:
meta.error——鍵名告訴您哪些欄位有問題。
業務規則與資源錯誤
這些是請求在結構上有效,但與當前資料狀態、您的帳號,或支援基礎設施衝突時由業務邏輯拋出的錯誤。每種都帶有不同的errorCode,方便您據此分支處理。
認證與存取控制失敗
這些不是軟錯誤。它們會以真實的 HTTP 狀態碼回傳,因為它們在正常請求管線之前(或之外)產生。衝突與未找到
不常見但有可能遇到:等冪金鑰失敗
以下情況適用於在寫入類端點送出x-returnhelper-idempotency-key 標頭時,並且會以真實的 HTTP 狀態碼回傳。
金鑰的作用範圍是單一帳戶加上單一 HTTP 方法與路由,因此相同的金鑰值可在不同端點重複使用而不會衝突。
建議的用戶端處理
虛擬程式碼範例:correlationId 會出現在每一個回應中。請永遠把它記錄到日誌裡——這是 Return Helper 客服把某一次請求追溯到內部系統的方式。
錯誤代碼的定義位置
本頁記錄的錯誤代碼來自ReturnRequestApiModel.RrException 命名空間中的 RrErrorCode 常數。如果您遇到本頁未列出的 errorCode 值,請將其視為未文件化的內部錯誤,並附上 correlationId 透過客服回報。