錯誤回應

如果 API 要求成功,API 會傳回 200 OK 狀態碼,以及回應主體中要求的資料。如果發生錯誤,API 會傳回 Google API 定義的其中一個標準錯誤代碼,並對應至 HTTP 狀態碼,以及包含錯誤資訊的回應主體。發生錯誤時,請檢查 JSON 回應主體中的 message 和 status 欄位,瞭解詳細資料,以便進行偵錯。

錯誤格式

如果要求導致錯誤,API 會傳回適當的 HTTP 狀態碼和 JSON 回應主體。錯誤回應包含 error 物件,結構如下:

{
  "error": {
    "code": 403,
    "message": "User does not have sufficient permissions for this property.",
    "status": "PERMISSION_DENIED"
  }
}

error 物件包含下列欄位:

欄位 說明
程式碼 HTTP 狀態碼,例如 400、401、403、429 或 500。
訊息 簡短說明錯誤。
狀態 標準錯誤代碼,例如 INVALID_ARGUMENT、UNAUTHENTICATED、PERMISSION_DENIED、RESOURCE_EXHAUSTED 或 INTERNAL。

常見錯誤

下表列出 API 傳回的常見錯誤。

HTTP 狀態碼 標準程式碼 原因 說明
400 INVALID_ARGUMENT 要求無效 要求格式錯誤。這可能是因為缺少或無效的參數,例如日期範圍有誤或篩選器格式有誤。
401 UNAUTHENTICATED 憑證無效 要求中不含目標資源的有效驗證憑證。如果缺少 OAuth 2.0 存取權杖、權杖無效或已過期,就可能發生這種情況。請按照「使用 OAuth 2.0 進行驗證」一文中的操作說明,取得有效權杖。
403 PERMISSION_DENIED 權限不足 已驗證的使用者無法存取要求的 Google Analytics 資源。
429 RESOURCE_EXHAUSTED 超過配額 要求因達到 API 配額上限而遭拒。詳情請參閱「Data API 限制和配額」。您可能已超過每個專案或每個資源的限制。
500 INTERNAL 內部伺服器錯誤 發生未預期的伺服器錯誤。這通常是暫時性問題,建議以指數輪詢方式重試要求。為避免超出伺服器錯誤配額,請務必實作指數輪詢策略,並設定重試次數上限。
503 UNAVAILABLE 無法使用服務 服務暫時無法使用,這通常是暫時性問題,建議以指數輪詢方式重試要求。為避免超出伺服器錯誤配額,請務必實作指數輪詢策略,並設定重試次數上限。