Indexing API のエラー

このドキュメントでは、Google API から返されるエラーコードとメッセージの一部を紹介します。このドキュメントの一覧では、Google API のグローバル(デフォルト)ドメインのエラーが記載されています。多くの API では独自のドメインも定義されており、そのドメインでは、グローバル ドメインにない API 固有のエラーが扱われます。それらのエラーに関しては、JSON レスポンスの domain プロパティの値は、youtube.parameter のような API 固有の値になります。

このページでは、RFC 7231 で定義されている HTTP ステータス コード別にエラーを記載しています。

下記の JSON レスポンスのサンプルは、グローバル エラーがどのように表現されるかを示しています。

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "invalidParameter",
    "message": "Invalid string value: 'asdf'. Allowed values: [mostpopular]",
    "locationType": "parameter",
    "location": "chart"
   }
  ],
  "code": 400,
  "message": "Invalid string value: 'asdf'. Allowed values: [mostpopular]"
 }
}

エラー

  1. MOVED_PERMANENTLY (301)
  2. SEE_OTHER (303)
  3. NOT_MODIFIED (304)
  4. TEMPORARY_REDIRECT (307)
  5. BAD_REQUEST (400)
  6. UNAUTHORIZED (401)
  7. PAYMENT_REQUIRED (402)
  8. FORBIDDEN (403)
  9. NOT_FOUND (404)
  10. METHOD_NOT_ALLOWED (405)
  11. CONFLICT (409)
  12. GONE (410)
  13. PRECONDITION_FAILED (412)
  14. REQUEST_ENTITY_TOO_LARGE (413)
  15. REQUESTED_RANGE_NOT_SATISFIABLE (416)
  16. EXPECTATION_FAILED (417)
  17. PRECONDITION_REQUIRED (428)
  18. TOO_MANY_REQUESTS (429)
  19. INTERNAL_SERVER_ERROR (500)
  20. NOT_IMPLEMENTED (501)
  21. SERVICE_UNAVAILABLE (503)

MOVED_PERMANENTLY (301)

エラーコード 説明
movedPermanently このリクエストと、同じオペレーションに対する後続のリクエストは、このリクエストの送信先の URL ではなく、このレスポンスの Location ヘッダーで指定された URL に送信する必要があります。

SEE_OTHER (303)

エラーコード 説明
seeOther リクエストは正常に処理されました。レスポンスを取得するには、Location ヘッダーで指定された URL に GET リクエストを送信します。
mediaDownloadRedirect リクエストは正常に処理されました。レスポンスを取得するには、Location ヘッダーで指定された URL に GET リクエストを送信します。

NOT_MODIFIED (304)

エラーコード 説明
notModified If-None-Match ヘッダーに設定された条件が満たされていません。このレスポンスは、リクエストされたドキュメントが変更されていなかったため、キャッシュに保存されたレスポンスを取得する必要があることを示します。If-None-Match HTTP リクエスト ヘッダーの値を確認してください。

TEMPORARY_REDIRECT (307)

エラーコード 説明
temporaryRedirect リクエストを処理するには、このレスポンスの Location ヘッダーで指定された URL にリクエストを再送信してください。

BAD_REQUEST (400)

エラーコード 説明
badRequest API リクエストが無効であるか、形式が正しくありません。そのため、API サーバーはリクエストを認識できませんでした。
badBinaryDomainRequest バイナリ ドメイン リクエストが無効です。
badContent リクエスト データのコンテンツ タイプ、またはマルチパート リクエストの一部のコンテンツ タイプがサポートされていません。
badLockedDomainRequest ロックドメインのリクエストが無効です。
corsRequestWithXOrigin CORS リクエストに、不正な CORS リクエストを示す XD3 X-Origin ヘッダーが含まれています。
endpointConstraintMismatch 指定された API と一致しなかったため、リクエストを処理できませんでした。URL パスの値が正しいことを確認してください。
invalid 無効な値が含まれていたため、リクエストを処理できませんでした。パラメータ値、ヘッダー値、プロパティ値のいずれかの値が無効です。
invalidAltValue alt パラメータ値で不明な出力形式が指定されています。
invalidHeader 無効なヘッダーが含まれていたため、リクエストを処理できませんでした。
invalidParameter 無効なパラメータまたはパラメータ値が含まれていたため、リクエストを処理できませんでした。API ドキュメントで、リクエストに対して有効なパラメータを確認してください。
invalidQuery リクエストが無効です。API ドキュメントで、そのリクエストでサポートされているパラメータを確認して、リクエストにパラメータの無効な組み合わせまたは無効なパラメータ値が含まれていないかどうかを確認してください。q リクエスト パラメータの値を確認してください。
keyExpired リクエストに入力された API キーの有効期限が切れています。このため、API サーバーがリクエストを行っているアプリケーションの割り当て上限を確認することができません。詳細を確認する、または新しいキーを取得するには、Google Developers Console をご覧ください。
keyInvalid リクエストに入力された API キーが無効です。このため、API サーバーがリクエストを行っているアプリケーションの割り当て上限を確認することができません。API キーを探す、または取得するには、Google Developers Console を使用してください。
lockedDomainCreationFailure OAuth トークンをクエリ文字列で受け取りましたが、この API では JSON または XML 以外のレスポンス形式は禁止されています。可能な場合は、Authorization ヘッダーで OAuth トークンを送信してください。
notDownload /download/* URL パスに送信できるのは、メディア ダウンロードのリクエストのみです。/download プレフィックスを付けずに、同じパスにリクエストを再送信してください。
notUpload アップロード リクエストではないため、リクエストを処理できませんでした。/upload/* URI に送信できるのは、アップロード リクエストのみです。/upload プレフィックスを付けずに、同じパスにリクエストを再送信してください。
parseError API サーバーがリクエストの本文を解析できません。
required API リクエストに必要な情報がありません。パラメータまたはリソース プロパティのいずれかの情報がありません。
tooManyParts 含まれているパーツが多すぎるため、マルチパート リクエストを処理できませんでした。
unknownApi リクエストが呼び出している API を認識できません。
unsupportedMediaProtocol クライアントが、サポートされていないメディア プロトコルを使用しています。
unsupportedOutputFormat alt パラメータ値で、このサービスでサポートされていない出力形式が指定されています。alt リクエスト パラメータの値を確認してください。
wrongUrlForUpload リクエストはアップロード リクエストですが、正しい URI に送信されなかったため処理できませんでした。アップロード リクエストは、/upload/* プレフィックスを含む URI に送信する必要があります。/upload プレフィックスを含んだ状態で、もう一度同じパスにリクエストを送信してください。

UNAUTHORIZED (401)

エラーコード 説明
unauthorized リクエストを行う権限がユーザーにありません。
authError リクエストで指定された認証情報が無効です。Authorization HTTP リクエスト ヘッダーの値を確認してください。
expired セッションの有効期限が切れています。Authorization HTTP リクエスト ヘッダーの値を確認してください。
lockedDomainExpired 前回有効だったロックドメインの有効期限が切れているため、リクエストを処理できませんでした。
required この API リクエストを行うには、ユーザーはログインする必要があります。Authorization HTTP リクエスト ヘッダーの値を確認してください。

PAYMENT_REQUIRED (402)

エラーコード 説明
dailyLimitExceeded402 デベロッパーが設定した 1 日の予算の上限に達しました。
quotaExceeded402 リクエストされたオペレーションに必要なリソースの数が、割り当てで認められている数を超えています。オペレーションを完了するには、お支払いが必要です。
user402 リクエストされたオペレーションには、認証済みユーザーによるお支払いが必要です。

FORBIDDEN (403)

エラーコード 説明
forbidden リクエストされたオペレーションは禁止されているため、完了できません。
accessNotConfigured お使いのプロジェクトは、この API にアクセスできないよう構成されています。Google Developers Console を使用して、プロジェクトの API を有効にしてください。
accessNotConfigured 不正があったため、プロジェクトがブロックされています。http://support.google.com/code/go/developer_compliance をご覧ください。
accessNotConfigured プロジェクトが削除対象としてマークされています。
accountDeleted リクエストの認証情報に関連付けられているユーザー アカウントが削除されています。Authorization HTTP リクエスト ヘッダーの値を確認してください。
accountDisabled リクエストの認証情報に関連付けられているユーザー アカウントが無効になっています。Authorization HTTP リクエスト ヘッダーの値を確認してください。
accountUnverified リクエストを実行しているユーザーのメールアドレスが確認されていません。Authorization HTTP リクエスト ヘッダーの値を確認してください。
concurrentLimitExceeded 同時利用の制限に達したため、リクエストを処理できませんでした。
dailyLimitExceeded API の 1 日の割り当て制限に達しました。
dailyLimitExceeded 1 日の割り当て上限に到達し、また不正があったためプロジェクトがブロックされました。この問題を解決するには、Google API コンプライアンス サポート フォームをご覧ください。
dailyLimitExceededUnreg 未認証の API の 1 日あたりの利用制限に到達したため、リクエストを処理できませんでした。API の使用を続行するには、Google Developers Console に登録する必要があります。
downloadServiceForbidden API がダウンロード サービスをサポートしていません。
insufficientAudience このオーディエンスに対するリクエストは完了できません。
insufficientAuthorizedParty このアプリケーションに対するリクエストは完了できません。
insufficientPermissions 認証済みユーザーに、このリクエストの実行に必要な権限がありません。
limitExceeded アクセス制限またはレート制限のため、リクエストを完了できません。
lockedDomainForbidden この API では、ロックドメインはサポートされていません。
quotaExceeded リクエストされたオペレーションに必要なリソースの数が、割り当てで認められている数を超えています。
rateLimitExceeded 所定の期間内に送信されたリクエスト数が多すぎます。
rateLimitExceededUnreg レート制限を超えています。API を呼び出し続けることができるようにアプリケーションを登録する必要があります。Google Developers Console を使用して登録してください。
responseTooLarge リクエストされたリソースが多すぎて返すことができません。
servingLimitExceeded API で指定された全体的なレート制限にすでに達しています。
sslRequired このオペレーションを実行するには SSL が必要です。
unknownAuth この API サーバーは、リクエストに使用される承認スキームを認識しません。Authorization HTTP リクエスト ヘッダーの値を確認してください。
userRateLimitExceeded ユーザー単位のレート制限に達しているため、リクエストを処理できませんでした。
userRateLimitExceededUnreg ユーザー単位のレート制限に達し、クライアント デベロッパーがリクエストで特定されなかったため、リクエストを処理できませんでした。Google Developer Console(https://developers.google.com/console)を使用してアプリケーションのプロジェクトを作成してください。
variableTermExpiredDailyExceeded 可変期間割り当てが期限切れで、1 日の制限に達したため、リクエストを処理できませんでした。
variableTermLimitExceeded 可変期間割り当ての制限に達したため、リクエストを処理できませんでした。

NOT_FOUND (404)

エラーコード 説明
notFound リクエストに関連付けられたリソースが見つからなかったため、リクエストされたオペレーションを処理できませんでした。
notFound リクエストに関連付けられたリソースが見つかりませんでした。過去 2 週間にこの API を使用しなかった場合は、App Engine アプリをデプロイし直し、もう一度呼び出してください。
unsupportedProtocol リクエストで使用されたプロトコルはサポートされていません。

METHOD_NOT_ALLOWED (405)

エラーコード 説明
httpMethodNotAllowed リクエストに関連付けられた HTTP メソッドはサポートされていません。

CONFLICT (409)

エラーコード 説明
conflict リクエストされたオペレーションが既存の項目と競合するため、API リクエストを完了できませんでした。たとえば、リクエストが重複する項目を作成しようとすると競合が生じます。ただし、一般的に、重複する項目はより具体的なエラーで特定されます。
duplicate すでに存在するリソースを作成しようとしたため、リクエストされたオペレーションを処理できませんでした。

GONE (410)

エラーコード 説明
deleted リクエストに関連付けられたリソースが削除されているため、リクエストを処理できませんでした。

PRECONDITION_FAILED (412)

エラーコード 説明
conditionNotMet リクエストの If-Match または If-None-Match HTTP リクエスト ヘッダーで設定された条件が満たされていません。詳しくは、HTTP 仕様の ETag をご覧ください。If-Match HTTP リクエスト ヘッダーの値を確認してください。

REQUEST_ENTITY_TOO_LARGE (413)

エラーコード 説明
backendRequestTooLarge リクエストが大きすぎます。
batchSizeTooLarge バッチ リクエストに含まれている要素が多すぎます。
uploadTooLarge リクエストで送信されたデータが大きすぎるため、リクエストを処理できませんでした。

REQUESTED_RANGE_NOT_SATISFIABLE (416)

エラーコード 説明
requestedRangeNotSatisfiable 満たすことのできない範囲がリクエストで指定されました。

EXPECTATION_FAILED (417)

エラーコード 説明
expectationFailed サーバーが、クライアントの期待値を満たすことができません。

PRECONDITION_REQUIRED (428)

エラーコード 説明
preconditionRequired リクエストに必要な前提条件が提供されていません。このリクエストを成功させるには、リクエストに If-Match または If-None-Match のどちらかのヘッダーを指定する必要があります。

TOO_MANY_REQUESTS (429)

エラーコード 説明
rateLimitExceeded 所定の期間内に送信されたリクエスト数が多すぎます。

INTERNAL_SERVER_ERROR (500)

エラーコード 説明
internalError 内部エラーのためにリクエストを処理できませんでした。

NOT_IMPLEMENTED (501)

エラーコード 説明
notImplemented リクエストされたオペレーションは実装されていません。
unsupportedMethod 不明なメソッドまたはオペレーションを実行しようとしているため、リクエストを処理できませんでした。

SERVICE_UNAVAILABLE (503)

エラーコード 説明
backendError バックエンド エラーが発生しました。
backendNotConnected 接続エラーのため、リクエストを処理できませんでした。
notReady API サーバーはリクエストを受け取る準備が整っていません。

Indexing API 固有のエラー

以下のどの場合でも、リクエストは拒否されます。また、Google は URL をクロールしません。これは、主要なエラー メッセージにも当てはまります。

BAD_REQUEST (400)

エラー メッセージ 説明
Missing attribute. 'url' attribute is required. ユーザーがリクエストに URL を設定していません。
Invalid attribute. 'url' is not in standard URL format ユーザーが URL のように見えない URL(例: 「abcd」)を設定しました。
Unknown type. 'type' attribute is required and must be 'URL_REMOVED' or 'URL_UPDATED'. ユーザーが通知タイプを設定していません。
Invalid value at 'url_notification.type' (TYPE_ENUM) ユーザーが通知タイプを URL_REMOVED または URL_UPDATED 以外に設定しました。

FORBIDDEN (403)

エラー メッセージ 説明
Permission denied. Failed to verify the URL ownership. ユーザーが所有権の確認プロセスを完了していないか、所有していない URL を更新しようとしています。

TOO_MANY_REQUESTS (429)

エラー メッセージ 説明
Insufficient tokens for quota 'indexing.googleapis.com/default_requests' ユーザーが割り当て量を超える Indexing API を使用しています。

フィードバックを送信...