Google Ads API では、1 回の変更リクエストで送信できるオペレーションの数などの API オペレーションに上限が設けられています。次の表は、注意すべき重要な上限と割り当ての一部をまとめたものです。
リクエストの種類、制限、エラーコード | ||
---|---|---|
ベーシック アクセスでの操作 | 15,000 API オペレーション/日 |
RESOURCE_EXHAUSTED
|
変更リクエスト | 10,000 オペレーション/リクエスト |
TOO_MANY_MUTATE_OPERATIONS
|
プランニング サービス リクエスト | 1 QPS |
RESOURCE_EXHAUSTED
|
コンバージョン アップロード サービス リクエスト | 2,000 コンバージョン/リクエスト |
TOO_MANY_CONVERSIONS_IN_REQUEST
|
お支払い情報とアカウント予算に関するサービス リクエスト | 1 オペレーション/mutate リクエスト |
TOO_MANY_MUTATE_OPERATIONS
|
1 日あたりの API オペレーション制限
1 日あたりの API 使用量上限は、開発者トークンごとに行われた API オペレーションの数に基づきます。API オペレーション数は、get リクエスト数と mutate オペレーション数の合計です。1 日あたりの API オペレーション制限は、開発者トークンのアクセス権によって異なります。アクセス権と使用許諾ガイドには、アクセス権ごとの API オペレーションの制限が記載されています。
これらの上限に違反するリクエストは、エラー RESOURCE_EXHAUSTED
で拒否されます。
gRPC の制限
すべての Google Ads API クライアント ライブラリは、gRPC を使用してリクエストとレスポンスを生成します。デフォルトでは、gRPC のメッセージ サイズは 4 MB ですが、効率を高めるために、クライアント ライブラリでは最大メッセージ サイズを 64 MB に設定しています。
レスポンスはこの上限を超えないようにしてください。たとえば、検索リクエストに多くのフィールドが含まれている場合、レスポンスが生成されるときにサイズが 64 MB を超えることがあります。この制限を回避するには、選択するフィールドの数を減らすか、ストリーミングを使用します。mutate の場合は、リクエストごとに送信するオペレーションを少なくします。
この制限に違反するリクエストでは、GoogleAdsError
は生成されませんが、429 Resource Exhausted
gRPC エラーが生成されます。gRPC エラーコードとメッセージのリストをご覧ください。
mutate リクエスト
mutate リクエストは、1 日あたりのオペレーション割り当てに対してカウントされるだけでなく、1 リクエストあたり 10,000 オペレーションを超えることはできません。
この制限に違反するリクエストは、エラー TOO_MANY_MUTATE_OPERATIONS
で拒否されます。
特定のサービスとリクエスト タイプに関する追加の上限と考慮事項は次のとおりです。
検索リクエスト
Search
リクエストまたは SearchStream
リクエストは、ユーザーの 1 日あたりのオペレーション割り当てに対して 1 回のオペレーションとしてカウントされます。1 つの SearchStream
リクエストは、バッチ数に関係なく、1 つの API オペレーションとしてカウントされます。
ページ分けリクエスト
ページ分けリクエスト(有効な next_page_token
を含むリクエスト)は、ユーザーの 1 日あたりのオペレーション割り当てにカウントされません。ただし、期限切れまたは無効なページトークンを含むページネーション リクエストでは例外が生成され、1 日あたりのオペレーション割り当てにカウントされます。
pagination について詳しくは、結果のページングをご覧ください。
その他のタイプのリクエスト
Get
、Mutate
、Search
、SearchStream
以外のリクエストは、ユーザーの 1 日あたりのオペレーションの割り当てに対して 1 回のオペレーションとしてカウントされます。
このようなリクエストの例をいくつか示します。
BatchJobService.ListMutateJobResults
ConversionUploadService.UploadCallConversions
ConversionUploadService.UploadClickConversions
OfflineUserDataJobService.AddOfflineUserDataJobOperations
OfflineUserDataJobService.CreateOfflineUserDataJob
UserDataService.UploadUserData
API 例外を返すリクエスト
GoogleAdsFailure
で拒否されたリクエストは、ユーザーの 1 日あたりのオペレーション割り当てにカウントされます。
ネットワーク レベルのエラーなどにより失敗しても GoogleAdsFailure
を返さないリクエストは、サービスに到達しないため、ユーザーの 1 日あたりのオペレーション割り当てにはカウントされません。ネットワーク接続の障害がその一例です。
プランニング サービス
以下に示すプラニング サービス メソッドは複雑で費用がかさむため、他のタイプのリクエストとは別の制限を受けます。
お客様 ID ごとに 1 秒あたり 1 件のリクエストに制限:
KeywordPlanIdeaService.GenerateKeywordIdeas
KeywordPlanIdeaService.GenerateKeywordHistoricalMetrics
KeywordPlanIdeaService.GenerateKeywordForecastMetrics
これらの制限に違反するリクエストは、
RESOURCE_EXHAUSTED
というエラーで拒否されます。1 QPS は 60 秒あたり 60 件のリクエストとして計算されます。
リクエスト数の上限は、お客様 ID ごとに 1 秒あたり 2 件です。
キーワード プランを作成する際は、次の上限にご留意ください。
キーワード プランのオブジェクト | 最大数 |
---|---|
KeywordPlan アカウントあたり |
10,000 |
KeywordPlan あたり KeywordPlanAdGroup |
200 |
KeywordPlan あたり KeywordPlanAdGroupKeyword |
10,000 |
KeywordPlanCampaignKeyword (除外キーワード) |
1,000 |
KeywordPlan あたり KeywordPlanCampaign |
1 |
コンバージョン アップロード サービス
リクエストあたりの呼び出しコンバージョンまたはクリック コンバージョン数は 2,000 回に制限されています。
これらの制限に違反するリクエストは、
TOO_MANY_CONVERSIONS_IN_REQUEST
というエラーで拒否されます。
コンバージョン調整アップロード サービス
リクエストあたりのコンバージョン調整数は 2,000 回に制限されています。
これらの制限に違反するリクエストは、
TOO_MANY_ADJUSTMENTS_IN_REQUEST
というエラーで拒否されます。
お支払いとアカウント予算サービス
mutate リクエストは、毎月の請求書発行が設定されたアカウントに対してのみ行うことができます。
この制限に違反するリクエストは、エラー
MUTATE_NOT_ALLOWED
で拒否されます。mutate リクエストに対して許可されるオペレーションは 1 回だけです。
この制限に違反するリクエストは、
TOO_MANY_MUTATE_OPERATIONS
というエラーで拒否されます。同じアカウントの予算オーダーが変更されるまで、少なくとも 12 時間は空けてください。12 時間が経過する前に変更を加えると、Google 広告のアカウント担当者しか解決できない回復不能なエラーが発生する可能性があります。
お客様のアカウントへの招待
新規ユーザーは、CustomerUserAccessService
を使用して既存のクライアント アカウントに招待できます。この機能は他のユーザーに招待メールを送信するため、不正使用される可能性があるため、動作に制限があります。
ユーザーは、同じクライアント アカウントに対して保留中の招待状を複数受け取ることはできません。すでに保留中の招待状があるユーザーに招待状を送信するリクエストが後で行われた場合、
ACCESS_INVITATION_ERROR_EMAIL_ADDRESS_ALREADY_HAS_PENDING_INVITATION
というエラーが返されます。クライアント アカウントで保留中の招待状は一度に 70 件までです。この値を超えるリクエストが送信されると、
ACCESS_INVITATION_ERROR_PENDING_INVITATIONS_LIMIT_EXCEEDED
というエラーが返されます。
ユーザーデータ
ユーザーデータは UserDataService
と OfflineUserDataJobService
で管理されます。特定の作成または削除 UserData
オペレーションでは、各 user_identifiers
セットが 1 人のユーザーに固有である必要があります。
これを適用するため、UserData
セットに 20 個を超える user_identifiers
が含まれている場合は、OfflineUserDataJobError.TOO_MANY_USER_IDENTIFIERS
エラーまたは UserDataError.TOO_MANY_USER_IDENTIFIERS
エラーが返されます。
その他の種類の制限
リクエストに含まれるアイテムが多すぎる繰り返しフィールド(例: オペレーションのリスト)では、REQUEST_SIZE_LIMIT_EXCEEDED
エラーが発生する可能性があります。この同じエラー メッセージは他の問題が原因である可能性もあります。
繰り返しフィールドを使用するリクエストを行って、この制限に達した場合は、mutate リクエストにオペレーションのリストを配置して、繰り返しフィールドのアイテム数を減らしてみてください。
GAQL クエリを実行する場合、IN
句内のアイテムの最大数は 20,000 です。この上限を超えると、FILTER_HAS_TOO_MANY_VALUES
エラーが返されます。