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]"
}
}
エラー
- MOVED_PERMANENTLY (301)
- SEE_OTHER (303)
- NOT_MODIFIED (304)
- TEMPORARY_REDIRECT (307)
- BAD_REQUEST (400)
- UNAUTHORIZED (401)
- PAYMENT_REQUIRED (402)
- FORBIDDEN (403)
- NOT_FOUND (404)
- METHOD_NOT_ALLOWED (405)
- CONFLICT (409)
- GONE (410)
- PRECONDITION_FAILED (412)
- REQUEST_ENTITY_TOO_LARGE (413)
- REQUESTED_RANGE_NOT_SATISFIABLE (416)
- EXPECTATION_FAILED (417)
- PRECONDITION_REQUIRED (428)
- TOO_MANY_REQUESTS (429)
- INTERNAL_SERVER_ERROR (500)
- NOT_IMPLEMENTED (501)
- 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 パラメータ値で不明な出力形式が指定されています。 |
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://console.developers.google.com)を使用してアプリケーションのプロジェクトを作成してください。 |
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 を使用しています。 |