为确保数据安全、强制执行访问权限控制并维护系统完整性,您必须对所有 Merchant API 请求进行身份验证。API 会使用经过身份验证的身份来确定调用方有权执行的操作。例如,某些调用方可能对商品数据具有只读访问权限,而其他调用方可以在 Merchant Center 中修改账号设置。
本文档是关于 Merchant API 入门的多部分系列文章中的一篇。如果您已使用 Merchant API 设置身份验证,则可以跳到下一部分: 注册成为开发者
为 Merchant API 请求授权
发送到 Merchant API 的每个请求都必须包含授权令牌,以便向 Google 标识您的应用。如需设置身份验证和授权,请确定最能描述您计划使用 Merchant API 的方式的应用场景:
您是否正在构建供其他商家使用的应用?
如果是,您将使用 OAuth 2.0 授权。在以下情况下,请选择 OAuth 2.0 授权:
- 您是第三方提供商或代理机构:您正在构建一个应用, 例如 SaaS 平台,其他商家将使用该应用来管理自己的 Merchant Center 数据。
- 您需要管理许多外部账号:您希望单个应用 能够跨不同客户拥有的 多个独立 Merchant Center 账号运行。您的客户通过登录自己的 Google 账号并在权限请求页面上点击“允许”来授予权限。
您是否正在为自己的商家构建应用?
如果是,您将使用服务账号授权 来获取 Merchant API 访问权限。 在以下情况下,请选择服务账号授权:
- 您正在构建自己的内部应用:您正在开发工具 专门为自己的商家管理自己的 Merchant Center 数据 ,或者您希望凭据归应用本身所有,而不是归 特定个人用户所有。
- 您需要自动化,而无需人工登录:您的应用运行后台 任务,例如自动库存更新或 "cron" 作业。
OAuth 2.0 授权
如果您是管理多个客户账号的第三方提供方或代理机构,则您的应用必须使用 OAuth 2.0 来为请求授权。请按照以下步骤为 Merchant API 设置 OAuth 2.0:
- 在 Google Cloud 控制台的“API 和服务”中创建 OAuth 2.0 凭据
- 将 OAuth2 客户端凭据 下载到文件(例如
client-secrets.json) - 将电子邮件账号作为用户添加到 Merchant Center:确保 您用于为请求授权的 Google 账号在 Merchant Center 中作为用户存在。如需了解详情,请参阅 如何从 Merchant Center 中添加或移除用户
- 为其分配
Admin角色以执行注册。如需详细了解角色,请参阅 在 Merchant Center 中管理用户和访问权限级别 - 使用代码示例设置身份验证:请按照官方代码示例设置身份验证和示例配置文档部分中的说明进行操作
如需详细了解 OAuth 2.0 授权,请参阅 为第三方应用授予对 Merchant Center 账号的访问权限 和 使用 OAuth 2.0 访问 Google API。
服务账号授权
您可以使用服务账号为 Merchant API 授予对 您自己的 Merchant Center 账号的访问权限。请按照以下步骤为 Merchant API 设置服务账号授权:
- 在 Google Cloud 控制台的“API 和服务”中 创建服务账号凭据
- 下载私钥:为服务账号创建并下载 JSON
格式的私钥。将该文件重命名为
service-account.json - 将服务账号添加到 Merchant Center:复制唯一的服务
账号电子邮件地址(例如
sa@project.iam.gserviceaccount.com),并将其作为新用户添加到 Merchant Center 中。如需了解详情,请参阅如何从 Merchant Center 中添加或移除用户 - 为其分配
Admin访问权限。如需详细了解访问权限级别,请参阅 在 Merchant Center 中管理用户和访问权限级别 - 使用代码示例设置身份验证:请按照官方代码示例设置身份验证和示例配置文档部分中的说明进行操作
如需详细了解服务账号授权,请参阅为 Merchant Center 账号授予 访问权限和服务账号概览。