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 など)。 |
| メッセージ | エラーの簡単な説明です。 |
| status | 標準的なエラーコード(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 アナリティクスのプロパティにアクセスできません。 |
| 429 | RESOURCE_EXHAUSTED |
割り当ての上限を超えています | API 割り当ての上限に達したため、リクエストが拒否されました。詳細については、Data API の上限と割り当てをご覧ください。プロジェクトごとまたはプロパティごとの上限を超えている可能性があります。 |
| 500 | INTERNAL |
内部サーバー エラー | 予期しないサーバーエラーが発生しました。通常、これは一時的な問題です。指数バックオフを使用してリクエストを再試行することをおすすめします。サーバーエラーの割り当てを超えないようにするには、再試行回数の上限を設定して指数バックオフを実装することが重要です。 |
| 503 | UNAVAILABLE |
サービスが使用できません | サービスは一時的に利用できません。通常、これは一時的な問題です。指数バックオフを使用してリクエストを再試行することをおすすめします。サーバーエラーの割り当てを超えないようにするには、再試行回数の上限を設定して指数バックオフを実装することが重要です。 |