服务账号

服务账号是一种特殊的 Google 账号。应用可以使用此类账号通过 OAuth 2.0 以编程方式访问 Google API。服务账号使用 OAuth 2.0 流程,无需人工授权。但需要使用只有您的应用可以访问的密钥文件。本指南讨论如何使用服务账号访问 Content API for Shopping。

注意:使用服务账号进行身份验证的应用只能访问您自己的 Merchant Center 账号。如果您要编写一种第三方应用,而此应用需要访问客户的 Merchant Center 账号,请参阅向请求授权指南。

前提条件

使用服务账号访问 Content API for Shopping 的步骤

  1. 生成服务账号凭据或访问您已生成的公共凭据。您需要创建 OAuth 2.0 客户端 ID 并获取 *.json 私钥文件:
    1. 转到 Google API 控制台
    2. 在页面顶部的下拉菜单中选择一个项目。如果您尚未创建任何项目,请点击新项目,创建一个项目。
    3. 如果您还没有为此项目启用 Content API for Shopping,请在 Google API 列表中搜索并启用它。
    4. 点击左上角的导航菜单 (☰),选择 API 和服务,然后选择凭据
    5. 如需设置服务账号,请选择创建凭据,然后选择服务账号
    6. 为新服务账号命名。这也用作服务账号 ID 的默认用户名。记录服务账号 ID,包括“@”字符后面的部分,以便稍后使用。点击创建,然后完成向项目和用户授予访问权限的可选步骤,并点击完成

      选择服务账号的角色不会影响对 Content API 进行的调用,因为对 Content API 方法的访问是由与 Merchant Center 中的服务账号 ID 相关联的角色决定的。如果您不确定要选择什么,只需选择项目 > 查看者

    7. 您将转到“服务账号”页面,您可以在该页面中访问新服务账号。
    8. 如需获取 JSON 私钥,请点击服务账号,然后点击密钥标签页。依次点击添加密钥 > 创建新密钥,然后选择 JSON 作为密钥类型。点击创建以下载私钥到您的计算机。
  2. 将新服务账号作为用户添加到 Merchant Center 账号中。如果您是第三方开发者,则需要让您的客户为您执行此步骤。
    1. 前往您的 Merchant Center 账号
    2. 在 Merchant Center 账号的设置中,前往账号访问权限
    3. 点击 + 添加用户,然后将服务账号 ID 用作新用户的电子邮件地址。

      如果您之前未记下服务账号 ID,请前往服务账号管理页面,然后选择您创建的项目。

    4. 为服务账号指定用户访问权限电子邮件通知偏好设置。请注意,使用 Accounts 服务需要管理员访问权限。
    5. 点击添加用户以保存偏好设置,然后返回到用户列表。服务账号 ID 应列在所选用户角色旁边。
    6. 对您要添加的其他所有服务账号重复执行上述流程。
  3. 现在,您可以使用服务账号访问 Merchant Center 账号,方法是使用 Google 应用默认凭据流程或直接使用服务账号流程。Content API for Shopping 示例显示如何在每种受支持的编程语言中使用两个流获取服务账号凭据。请查看代码示例以试用新服务账号,并了解在您自己的代码中使用服务账号需要做哪些更改。

常见问题解答

我可以使用服务账号登录 Merchant Center 界面吗?
不可以。服务账号不是常规 Google 账号,也无法访问 Merchant Center 界面。
我需要多久刷新一次服务账号访问令牌?
在 Google OAuth 2.0 授权服务器发布访问令牌的 1 小时后,访问令牌便会过期。在访问令牌过期后,应用应使用客户端库来提取另一个访问令牌。