Google Ads API 对 API 操作施加了限制, 可在单个 mutate 请求中发送下表总结了 需要注意的一些重要限制和配额
请求类型、限制和错误代码 | ||
---|---|---|
具有基本访问权限的操作 | 每天 15,000 项 API 操作 |
RESOURCE_EXHAUSTED
|
Mutate 请求 | 每个请求 10,000 次操作 |
TOO_MANY_MUTATE_OPERATIONS
|
规划服务请求 | 每秒 1 次查询 |
RESOURCE_EXHAUSTED
|
转化上传服务请求 | 每个请求 2,000 次转化 |
TOO_MANY_CONVERSIONS_IN_REQUEST
|
结算和账号预算服务请求 | 每个 mutate 请求 1 项操作 |
TOO_MANY_MUTATE_OPERATIONS
|
API 的每天操作限制
API 的每日使用限制基于 API 数量 操作。API 操作是 get 请求和 mutate 操作的总和。API 的每天操作限制取决于开发者令牌的访问权限级别。通过 “访问权限级别和允许的用途”指南概述了 具体的 API 操作限制
超出这些限制的请求会被拒绝,并显示以下错误:
RESOURCE_EXHAUSTED
。
gRPC 限制
所有的 Google Ads API客户端库都使用 gRPC,用于生成请求和响应。默认情况下,gRPC 协议具有 邮件大小为 4 MB,但是我们的客户端库将邮件大小上限设置为 64 MB,以提高效率。
回复数量不得超过此限制。例如,一个搜索请求 很多字段可能会生成大小超过 64 MB 的响应。接收者 您可以减少所选字段的数量,或使用 streaming。对于 mutate,请减少发送的操作数量 。
超出此限制的请求不会生成
GoogleAdsError
,但会生成
429 Resource Exhausted
gRPC 错误。请参阅 gRPC 错误代码列表和
消息。
Mutate 请求
除了计算用户的日常操作配额外,mutate 每个请求包含的操作不得超过 10,000 个。
超出此限制的请求会被拒绝,并显示以下错误:
TOO_MANY_MUTATE_OPERATIONS
。
有关特定服务和请求类型的其他限制和注意事项,请参阅 下一个步骤。
搜索请求
一个 Search
或 SearchStream
请求算作一次操作,
每日操作配额一个 SearchStream
请求计为一个 API 操作
而不考虑批次数量。
分页请求
分页请求(例如,包含有效
next_page_token
)不计入用户的每日操作配额。
不过,包含过期或无效页面令牌的分页请求
会生成异常,并会计入每日操作配额。
如需详细了解分页,请参阅将结果分页。
其他类型的请求
不是 Get
、Mutate
、Search
或 SearchStream
请求的请求
在用户的每日操作配额中计为 1 次操作。
此类要求的一些示例包括:
BatchJobService.ListMutateJobResults
ConversionUploadService.UploadCallConversions
ConversionUploadService.UploadClickConversions
OfflineUserDataJobService.AddOfflineUserDataJobOperations
OfflineUserDataJobService.CreateOfflineUserDataJob
UserDataService.UploadUserData
返回 API 异常的请求
被拒且
GoogleAdsFailure
仍会计入
用户的每日操作配额
请求失败但不返回
GoogleAdsFailure
,例如来自于
不会计入用户的每日操作配额
因为请求永远不会到达服务例如,
网络连接失败。
规划服务
由于费用和复杂性方面的原因,以下 Planning 服务方法 这与其他请求类型不同
限制为每个客户 ID 每秒 1 个请求:
KeywordPlanIdeaService.GenerateKeywordIdeas
KeywordPlanIdeaService.GenerateKeywordHistoricalMetrics
KeywordPlanIdeaService.GenerateKeywordForecastMetrics
违反这些限制的请求会被拒绝,并显示以下错误:
RESOURCE_EXHAUSTED
。1 QPS 按每 60 秒 60 次请求计算。
限制为每个客户 ID 每秒 2 个请求:
创建关键字方案时,请注意这些限制。
关键字方案对象 | 数量上限 |
---|---|
每个账号 KeywordPlan |
10000 |
每 KeywordPlan KeywordPlanAdGroup |
200 |
每 KeywordPlan KeywordPlanAdGroupKeyword |
10000 |
KeywordPlanCampaignKeyword (否定关键字) |
1000 |
每 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 Ads 客户代表解决。
向客户账号发送的邀请
您可以通过
CustomerUserAccessService
。因为
该功能会向其他用户发送邀请电子邮件,
因此其行为存在一些限制:
对于同一客户,用户只能收到一个待处理的邀请 。如果后续请求再次向用户发送邀请 已有待处理的邀请,则系统会返回以下错误:
ACCESS_INVITATION_ERROR_EMAIL_ADDRESS_ALREADY_HAS_PENDING_INVITATION
。客户账号每次的待处理邀请不能超过 70 个。 如果发送的请求导致超出此值,则此错误为 返回:
ACCESS_INVITATION_ERROR_PENDING_INVITATIONS_LIMIT_EXCEEDED
。
用户数据
您可以通过
UserDataService
和
OfflineUserDataJobService
。
在指定的创建或移除 UserData
操作中,每个
一组 user_identifiers
应针对单个用户。
为了执行这项操作
OfflineUserDataJobError.TOO_MANY_USER_IDENTIFIERS
或
UserDataError.TOO_MANY_USER_IDENTIFIERS
则会返回错误。user_identifiers
已设置 UserData
。
其他类型的限制
重复字段(如操作列表)中包含的项目过多
则会出现以下错误:
REQUEST_SIZE_LIMIT_EXCEEDED
。
此错误消息也可能是由其他问题导致的。
如果您遇到此限制,并且发出的请求使用重复的 字段中,尝试部署一个 mutate 请求中的操作列表。
进行 GAQL 查询时,最大项数
为 20,000。IN
如果您超过了该限制,
FILTER_HAS_TOO_MANY_VALUES
错误。