常见错误

本页面列出了常见错误,并提供了有关如何预防和处理这些错误的提示。 如需查看完整的错误列表,请参阅错误参考。如需更多支持,请访问我们的论坛

google.auth.exceptions.RefreshError

invalid_grant
摘要令牌已过期或被撤消。
常见原因 如果 Google Cloud Platform 项目针对外部用户类型配置了 OAuth 同意屏幕,且发布状态为 Testing,系统会向其颁发将在 7 天后过期的刷新令牌。
处理方式 您的 Google 项目的发布状态为“Testing”,因此刷新令牌每 7 天过期一次,您会收到 invalid_grant 错误。前往 Google API 控制台,然后前往 OAuth 权限请求页面。然后,按照以下说明将发布状态更改为 In production,以免刷新令牌在 7 天后过期。
预防建议 请参阅未经验证的应用

AdError

CANNOT_USE_AD_SUBCLASS_FOR_OPERATOR
摘要此运算符不能与广告子类一起使用。
常见原因 尝试修改广告的 status 以外的属性。
处理方式 不适用
预防建议 广告制作后就无法修改。如果您想修改广告,则必须制作新广告,然后移除旧广告。不过,您可以使用 MutateAdGroupAds 修改广告的 status
INVALID_INPUT
摘要广告中的某个字段包含无效字符。
常见原因 在网址中使用特殊字符。
处理方式 不适用
预防建议 在发出 API 请求之前,先验证应用中的网址。
LINE_TOO_WIDE
摘要广告中某个字段的长度超出了允许的长度上限。请参阅文字广告简介
常见原因 文本行过长。
处理方式 不适用
预防建议 在发出 API 请求之前,验证行的长度。

AdGroupAdError

AD_GROUP_AD_LABEL_ALREADY_EXISTS
摘要此标签已与部分广告相关联。
常见原因 尝试将标签与已关联的广告相关联。
处理方式 不适用
预防建议 首先检查要添加的标签是否已与广告相关联。
CANNOT_OPERATE_ON_REMOVED_ADGROUPAD
摘要一项操作尝试更新已移除的广告。
常见原因 广告移除后便无法再更新,也不能更改其状态。
处理方式 不适用
预防建议 确保您的代码不会尝试更新已移除的广告。

AdGroupCriterionError

INVALID_KEYWORD_TEXT
摘要关键字文字包含无效字符。请参阅添加关键字
常见原因 关键字文本包含无效字符。
处理方式 不适用
预防建议 在向 API 发出请求之前,先验证应用中的关键字文字。

AdGroupError

DUPLICATE_ADGROUP_NAME
摘要正在添加或重命名一个广告组,但名称已经被其他广告组使用。
常见原因 使用正在投放或已暂停的现有广告组的名称制作新的广告组。
处理方式 记录错误并向用户显示错误消息,可以选择推荐一个未使用的广告组名称或列出正在使用的名称。
预防建议 不适用

AssetError

DUPLICATE_ASSET
摘要单个请求中的两个操作包含一项针对具有相同二进制数据的资产的创建操作。
常见原因 mutate 请求,其中包含包含相同二进制数据的重复 create 操作。
处理方式 在单独的请求中创建资产,然后在后续请求中关联资产;或者在同一请求中使用临时 ID
预防建议 不适用

AuthenticationError

CLIENT_CUSTOMER_ID_INVALID
摘要客户账号的客户 ID 不是数字。
常见原因 使用的客户 ID 不正确。
处理方式 不适用
预防建议 123-456-7890 应该是 1234567890。如需了解详情,请参阅开始使用
CLIENT_CUSTOMER_ID_IS_REQUIRED
摘要未在 HTTP 标头中指定客户账号的客户 ID。
常见原因 未在 HTTP 标头中指定客户帐号的客户 ID。
处理方式 不适用
预防建议 所有调用都必须提供客户帐号的客户 ID,因此请确保您已在 HTTP 标头中指定客户 ID。不妨考虑使用我们的客户端库,因为它们会为您处理此问题。
CUSTOMER_NOT_FOUND
摘要未找到与标头中提供的客户 ID 对应的账号。
常见原因 尝试访问刚刚创建的账号,而该账号尚未在后端建立。
处理方式 先等待 5 分钟,然后每 30 秒重试一次。
预防建议 创建帐号后,请等待几分钟,然后再针对该帐号发出请求。
摘要请求标头中的访问令牌无效或已过期。
常见原因 访问令牌已失效。
处理方式 请求新令牌。如果您使用的是我们的某个客户端库,请参阅相关文档以了解如何刷新令牌。
预防建议 存储并重复使用访问令牌,直到过期为止。
NOT_ADS_USER
摘要用于生成访问令牌的 Google 账号未与任何 Google Ads 账号相关联。
常见原因 提供的登录信息对应于一个未启用 Google Ads 的 Google 帐号。
处理方式 请务必使用有效的 Google Ads 账号(通常是您的经理账号)登录以执行 OAuth 流程。您还可以邀请该 Google 帐号访问现有 Google Ads 帐号,具体方法为:登录您的经理帐号,选择相关客户或经理帐号,转至 Tools and Settings > Access and security,然后添加 Google 帐号电子邮件地址。
预防建议 不适用
OAUTH_TOKEN_INVALID
摘要标头中的 OAuth 访问令牌无效。
常见原因 使用 HTTP 标头传递的访问令牌不正确。
处理方式 不适用
预防建议 请确保您已传递与您账号关联的正确访问令牌。用户有时会将其与刷新令牌和授权代码混淆。如果您希望获得可访问经理帐号下所有客户帐号的凭据,请务必获取经理帐号的刷新令牌。有关详情,请参阅访问令牌和刷新令牌以及 OAuth2 指南。

AuthorizationError

CUSTOMER_NOT_ENABLED
摘要该客户账号无法访问,因为该账号未处于启用状态。
常见原因 当客户帐号尚未完成注册或已停用时,就会发生这种情况。
处理方式 登录到 Google Ads 界面,确保您已完成此帐号的注册流程。如果帐号已被停用,请参阅重新激活已撤销的 Google Ads 帐号
预防建议 您可以检查客户帐号状态是否为已取消,主动检查客户帐号是否已停用。
DEVELOPER_TOKEN_NOT_APPROVED
摘要开发者令牌仅获准用于测试帐号,并尝试访问非测试帐号。
常见原因 测试开发者令牌曾用于访问非测试帐号。
处理方式 确保您确实想要访问非测试帐号。如果是这样,您需要申请将您的开发者令牌升级为标准权限或基本权限。
预防建议 不适用
DEVELOPER_TOKEN_PROHIBITED
摘要请求中发送的项目不能带有开发者令牌。
常见原因 每个 Google API 控制台项目只能与一个经理帐号中的开发者令牌相关联。在发出 Google Ads API 请求后,开发者令牌将与 Google API 控制台项目永久配对。如果您使用的不是新的 Google API 控制台项目,则会在发出请求时遇到 DEVELOPER_TOKEN_PROHIBITED 错误。
处理方式 不适用
预防建议 如果您要切换到新经理帐号下的开发者令牌,则需要为使用新经理令牌的 Google Ads API 请求创建新的 Google API 控制台项目
USER_PERMISSION_DENIED
摘要授权客户无法访问正在操作的客户。
常见原因 以有权访问经理帐号的用户身份进行身份验证,但未在请求中指定 login-customer-id
处理方式 不适用
预防建议 login-customer-id 指定为不带连字符 (-) 的经理账号 ID。客户端库内置了对此操作的支持。

BiddingError

BID_TOO_MANY_FRACTIONAL_DIGITS
摘要出价的值不是账号所用币种最小单位的整数倍。例如,0.015 美元(15000 以微单位表示)不是有效的出价。
常见原因 不适用
处理方式 不适用
预防建议 验证出价是否是帐号所用币种最小单位的整数倍。
BID_TOO_BIG
摘要即使出价在广告系列预算范围内,也会返回此错误。
常见原因 不适用
处理方式 不适用
预防建议 检查帐号是否在参与 Google 广告助公益计划。如果是,请将每次点击费用出价限制在计划规定的上限范围内。

CampaignBudgetError

MONEY_AMOUNT_LESS_THAN_CURRENCY_MINIMUM_CPC
摘要预算金额太低。
常见原因 不适用
处理方式 不适用
预防建议 确认预算金额大于或等于帐号所用币种的最小单位。
NON_MULTIPLE_OF_MINIMUM_CURRENCY_UNIT
摘要从以百万分之一为单位的金额转换为以账号币种计价的金额时,预算金额的小数位数太多。
常见原因 不适用
处理方式 不适用
预防建议 验证预算金额是否可以被帐号所用币种的最小单位整除。

CampaignError

DUPLICATE_CAMPAIGN_NAME
摘要正在添加或重命名一个广告系列,但名称已经被其他广告系列使用。
常见原因 使用正在投放或已暂停的现有广告系列的名称制作新的广告系列。
处理方式 记录错误并向用户显示错误消息,可以选择推荐一个唯一的广告系列名称或列出正在使用的名称。
预防建议 不适用

CriterionError

KEYWORD_HAS_INVALID_CHARS
摘要添加或修改包含无效字符的关键字。
常见原因 在关键字中使用 ! @ % * 等特殊字符。
处理方式 不适用
预防建议 务必不要在关键字中使用任何不允许的字符。请参阅添加关键字

DistinctError

DUPLICATE_ELEMENT
摘要请求包含两个相同的冗余参数。
常见原因 不适用
处理方式 不适用
预防建议 在发出请求之前移除重复项(操作、参数、列表元素)。查找具有 DistinctElements 约束的字段。

InternalError

DEADLINE_EXCEEDED
摘要请求超时,无法足够快地完成返回响应。
常见原因 发出的搜索请求生成的响应内容过多,或 mutate 请求内容太大,无法处理。
处理方式 等待大约 30 秒,然后重试请求。如果错误仍然存在,请尝试将请求分解为多个较小的请求,以便更快地完成。
预防建议 请查看细分,了解细分对回答的规模有何影响。请注意 gRPC 传输层限制
INTERNAL_ERROR
摘要处理请求时发生了意外。
常见原因 API 因存在 bug 而无法正常运行。
处理方式 使用指数退避算法计划重试任何因此错误而失败的请求。
预防建议 不适用
TRANSIENT_ERROR
摘要出现暂时性的内部错误,需要重试。
常见原因 当 API 在内部遇到临时问题时,就会出现此错误。
处理方式 使用指数退避算法计划重试任何因此错误而失败的请求。
预防建议 不适用

InvalidGrantError

invalid_grant (malformed auth code)
摘要交换 OAuth 令牌的授权代码格式错误。
常见原因 当用户尝试为已经获准访问发出请求的应用的用户生成刷新令牌时,就会发生这种情况。例如,针对相同的 OAuth 客户端凭据多次运行生成用户凭据示例并向用户授权时,就可能会出现上述情况。
处理方式 要为授权用户和 OAuth 客户端凭据的指定组合重新生成刷新令牌,请撤消现有的刷新令牌。请注意,撤消令牌后,您将无法使用该令牌进行 Google Ads API 访问,并且用于生成刷新令牌的所有访问令牌也会失效。
预防建议 请务必将刷新令牌存储在安全的位置,以避免需要重新生成令牌。

MutateError

RESOURCE_NOT_FOUND
摘要请求引用的资源找不到。
常见原因 请求尝试更改或以其他方式引用不存在或已移除的资源。或者,资源的指定资源名称格式不正确。
处理方式 在提交 mutate 请求之前,使用搜索请求检索现有资源的资源名称。请参阅我们的客户端库指南,其中包括有关如何使用各种受支持的语言构建有效资源名称的文档
预防建议 请勿手动创建资源名称。使用我们的客户端库提供的某个辅助方法。

NotEmptyError

EMPTY_LIST
摘要某必填列表为空。
常见原因 将空的操作列表传入 mutate 方法。
处理方式 不适用
预防建议 不适用

QuotaError

RESOURCE_EXHAUSTED
摘要超出了系统频率限额。
常见原因 不适用
处理方式 不适用
预防建议 在请求之间设置短暂的延迟,或者将较多的操作合并到较少的请求中。

RangeError

TOO_LOW
摘要某个值低于所允许的下限。
常见原因 忘记指定 ID,导致传入值 0
处理方式 不适用
预防建议 请注意 API 参考文档中记录的所有范围限制。

RequestError

INVALID_INPUT
摘要请求格式错误。
常见原因 请求的网址或内容格式不正确。
处理方式 不适用
预防建议 不适用
REQUIRED_FIELD_MISSING
摘要请求缺少必要的信息。
常见原因 尝试添加实体时缺少必填字段。
处理方式 记录错误并向用户显示错误消息。错误的 fieldPath 属性会指明缺少哪个字段。
预防建议 请参阅 API 参考文档,了解哪些字段是必填字段。

ResourceCountLimitExceededError

RESOURCE_LIMIT
摘要该请求尝试创建的资源会导致这些资源的总数超过指定限制。
常见原因 特定上下文中可存在的资源数量存在多个限制。
处理方式 查看系统限制,确定您所遇到的问题。重复使用现有资源,或移除资源以便为新资源腾出空间。
预防建议 使用搜索查询来监控存在限制的资源数量。

StringLengthError

TOO_LONG
摘要分配给指定字段的字符串超出了长度限制。
常见原因 广告的标题或广告内容描述包含太多文字。
处理方式 确定遇到的限制,相应地修改字符串,然后重新发送请求。
预防建议 请注意字符串长度限制。