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 の割り当てを超えています。

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