为确保数据安全、强制执行访问权限控制并维护系统完整性,您必须对所有 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 账号和服务账号概览。