常见错误

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

google.rpc.ErrorInfo

ACCESS_TOKEN_SCOPE_INSUFFICIENT
摘要OAuth 2.0 访问令牌不具备必需的范围。
常见原因 请求被拒绝,因为所提供的访问令牌不包含 Google Ads API OAuth 2.0 范围。
如何处理 确保访问令牌具有所需的范围。此错误的常见原因是,您重复使用了使用另一组 OAuth 范围生成的现有访问令牌。如需查看如何生成具有所需范围的新访问令牌的示例,请参阅 OAuth 授权参数
预防建议 确保访问令牌具有所需的范围。使用所需范围重新验证用户身份,以获取具有所需范围的访问权限。如果您的应用使用多个 OAuth 范围,您可能需要实现精细的 OAuth 权限

google.auth.exceptions.RefreshError

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

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 账号未启用 Google Ads。
如何处理 请务必使用有效的 Google Ads 账号(通常是您的经理账号)登录,以进行 OAuth 流程。您还可以邀请 Google 账号访问现有 Google Ads 账号,方法是登录经理账号,选择相关客户账号或经理账号,前往Tools and Settings > Access and security,然后添加 Google 账号电子邮件地址。
预防建议 不适用
OAUTH_TOKEN_INVALID
摘要标头中的 OAuth 访问令牌无效。
常见原因 通过 HTTP 标头传递的访问令牌不正确。
如何处理 不适用
预防建议 请确保您已传递与您账号关联的正确访问令牌。用户有时会将其与刷新令牌和授权代码混淆。如果您希望获得可访问经理账号下所有客户账号的凭据,则务必要取得该经理账号的刷新令牌。如需了解详情,请参阅我们关于访问令牌和刷新令牌以及 OAuth2 的指南。
ORGANIZATION_NOT_ASSOCIATED_WITH_DEVELOPER_TOKEN
摘要开发者令牌已与某个 Google Cloud 组织相关联,无法再与其他组织相关联。
常见原因 开发者令牌未与 Google Cloud 组织中用于最初发出请求的 Google Cloud 项目相关联。
如何处理 如果您已使用开发者令牌发出 API 请求,请确保 OAuth 客户端 ID 与同一 Google Cloud 组织中的 Google Cloud 项目相关联。
预防建议 请务必确保您的所有 Google Cloud 项目都与同一 Google Cloud 组织相关联。一个 Google Cloud 项目只能与一个开发者令牌相关联,但一个开发者令牌可以与组织中的多个项目相关联。
DEVELOPER_TOKEN_INVALID
摘要开发者令牌无效。
常见原因 此错误的常见原因包括开发者令牌中存在拼写错误,或者在其他请求标头中错误地设置了开发者令牌。
如何处理 请务必从 API 中心复制开发者令牌,以免出现拼写错误。您可以在 Google Ads 经理账号中找到 API 中心。此外,请确保您在正确的标头中设置开发者令牌。开发者令牌有时会与 OAuth 刷新令牌和授权代码混淆。如需详细了解不同的请求标头,请点击此处
预防建议 不适用

AuthorizationError

CUSTOMER_NOT_ENABLED
摘要由于客户账号未处于启用状态,因此无法访问。
常见原因 如果客户账号未完成注册或已被停用,就会出现此错误。
如何处理 登录 Google Ads 界面,并确保您已完成此账号的注册流程。对于已停用的账号,请参阅重新启用已撤消的 Google Ads 账号
预防建议 您可以主动检查客户账号是否已停用,方法是检查状态是否为 CANCELLED
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。客户端库内置了对此的支持。