本指南介绍如何使用 OAuth 2.0 请求访问其他方的商家帐号。如果您是第三方提供商,请使用此工作流程允许您的应用请求访问客户的商家账号。
如果您要开发仅需要访问您的商家帐号的内部应用,请参阅访问帐号。
请求应用验证
访问 Merchant API 的应用必须完成 OAuth 验证流程。未经验证的应用会收到警告,并且功能受限。
应用是在 Google Cloud 中具有唯一 OAuth 2.0 客户端 ID 的任何应用。
验证流程通常需要 3-5 个工作日。如需了解详情并提交验证请求,请参阅应用验证。
此政策适用于所有应用。我们建议所有应用尽早完成验证流程,以免服务中断。
获取 OAuth 范围
设置增量授权以避免范围选择出现问题。
如果您请求多个 OAuth 范围,则在应用的同意屏幕中默认取消选中所有 OAuth 范围。当您的应用向用户显示同意屏幕时,用户必须手动选择每个范围来授予访问权限。
检查 OAuth 请求的响应,以验证您的应用是否获得了适当的范围。
如需了解详情,请参阅 OAuth 2.0 政策。
向请求授权
您的应用向 Merchant API 发送的每个请求都必须包含授权令牌。Google 也可通过此令牌识别您的应用。
关于授权协议
您的应用必须使用 OAuth 2.0 向请求授权,其他任何授权协议均不受支持。如果您的应用使用使用 Google 账号登录,系统会代您执行授权方面的某些操作。
使用 OAuth 2.0 向请求授权
向 Merchant API 发出的所有请求都必须由经过身份验证的用户授权。
根据您所编写的应用的类型,OAuth 2.0 的具体授权流程可能会有所不同。下面是适用于所有应用类型的大致流程:
- 开发应用时,您需要使用 Google API 控制台注册该应用。然后,Google 会提供您稍后需要用到的信息,例如客户端 ID 和客户端密钥。
- 在 Google API 控制台中激活 Merchant API。(如果 API 控制台中未列出该 API,请跳过这一步。)
- 当您的应用需要访问用户数据时,它会请求 Google 提供特定范围的访问权限。
- Google 会向相应用户显示权限请求页面,让用户授权您的应用请求他们的某些数据。
- 待该用户同意后,Google 会为您的应用提供一个时效很短的访问令牌。
- 您的应用会请求获取用户数据,并在请求中附上该访问令牌。
- 如果 Google 确定您的请求及令牌有效,就会返回您所请求的数据。
有些流程还包含其他步骤,例如使用刷新令牌获取新的访问令牌。如需详细了解适用于各类应用的不同流程,请参阅 Google 的 OAuth 2.0 文档。
以下是 Merchant API 的 OAuth 2.0 范围信息:
范围 | 含义 |
---|---|
https://www.googleapis.com/auth/content |
读取/写入权限。 |
要通过 OAuth 2.0 请求访问权限,您的应用既需要授权范围信息,也需要 Google 在您注册应用时提供的信息(如客户端 ID 和客户端密钥)。
您可以利用以下示例进行授权。