本页介绍了如何使用 Merchant API 创建 Merchant Center 账号并上传示例商品。
准备工作
在 Google Cloud 项目中启用 Merchant API。
如果您使用 AppScript 中的 API 集成功能(通过 Shopping Content Service),系统会自动创建默认 Google Cloud 项目并启用 Merchant API 服务。不过,您仍需先完成一次性开发者注册,然后才能使用 Merchant API。如需了解详情,请参阅在 Apps 脚本中使用 Merchant API 服务。
创建账号
如需使用 Merchant API,您必须拥有 Merchant Center 账号。如需创建 Merchant Center 账号,请参阅 Merchant Center 使用入门。
注册为开发者
如需使用 Merchant API,您必须在 Google Cloud 项目与主 Merchant Center 账号之间建立关联。您必须为每个与 Merchant API 搭配使用的 Google Cloud 项目完成此一次性注册。
注册为开发者可实现以下两项功能:
- 它会将您的 Google Cloud 项目与您的主要 Merchant Center 账号相关联,从而建立正式的关联。
- 它通过为 Merchant Center 账号中的用户分配
API_DEVELOPER
角色来创建技术联系人。这样一来,Google 就可以向您发送有关 API 的重要更新,例如服务公告和有关新功能的信息。
注册您的 Google Cloud 项目
如需注册,请调用 developerRegistration.registerGcp
方法。此调用会将您用于进行调用的 Google Cloud 项目与您在请求中指定的 Merchant Center 账号相关联。
在请求正文中,您必须提供一个开发者电子邮件地址,以用作技术联系信息。此地址必须与某个 Google 账号(Google Workspace 账号或 Gmail 账号)相关联,例如 sampleuser@gmail.com
。
- 如果该电子邮件地址已属于 Merchant Center 账号中的某个用户,则系统会向该用户授予
API_DEVELOPER
角色。 - 如果该电子邮件地址不属于现有用户,系统会向该地址发送邀请。收件人必须接受邀请,才能以具有
API_DEVELOPER
角色的新用户身份被添加。
以下是示例请求:
POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/developerRegistration:registerGcp
{
"developerEmail": "{DEVELOPER_EMAIL}"
}
如果调用成功,则会返回 DeveloperRegistration
资源,这表示项目与账号之间的关联已确认。
{
"name": "accounts/{ACCOUNT_ID}/developerRegistration",
"gcpIds": [
"123456789012345"
]
}
管理开发者联系信息和权限
注册后,我们建议您添加多位开发者,并向他们授予额外的访问权限。
授予其他权限
API_DEVELOPER
角色是接收重要通知所必需的,但它在 Merchant Center 中的权限非常有限。如需允许此用户在 Merchant Center 界面中进行其他 API 调用或管理设置,您需要向其授予其他角色,例如 STANDARD
或 ADMIN
。如需了解详情,请参阅访问类型。
您可以使用 accounts.users.patch
方法更新用户的访问权限。
以下示例展示了如何更新用户,以向其授予 ADMIN
和 API_DEVELOPER
角色。这样,他们就可以完全管理该账号,并且还会收到与 API 相关的通信。
PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/users/{DEVELOPER_EMAIL}?update_mask=access_rights
{
"access_rights": [
"ADMIN",
"API_DEVELOPER"
]
}
添加备用开发者
为防止主开发者联系人离职后您的 API 访问权限受到影响,您应至少添加一名备用开发者。
您可以使用 accounts.users.create
方法添加用户,也可以使用 accounts.users.patch
方法更新现有用户。我们建议您同时向此用户授予 ADMIN
和 API_DEVELOPER
角色。
创建主要商品数据源
如需插入商品,您需要一个主要商品数据源。以下请求展示了如何创建可用于向您的账号中插入商品的数据源:
POST https://merchantapi.googleapis.com/datasources/v1/accounts/{ACCOUNT_ID}/dataSources HTTP/1.1
{
"primaryProductDataSource": {
"contentLanguage": "en",
"countries": [
"US"
],
"feedLabel": "US"
},
"name": "primary-data-source",
"displayName": "Primary Products Data Source"
}
将 {ACCOUNT_ID} 替换为您创建的 Merchant Center 账号的 ID。
成功运行此请求后,您应该会看到以下响应:
{
"name": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}",
"dataSourceId": "{DATASOURCE_ID}",
"displayName": "Primary Products Data Source",
"primaryProductDataSource": {
"feedLabel": "US",
"contentLanguage": "en",
"countries": [
"US"
],
"defaultRule": {
"takeFromDataSources": [
{
"self": true
}
]
}
},
"input": "API"
}
复制 name
字段的值。您需要使用此 ID 来插入商品。
您可以在 Merchant Center 界面中查看此数据源。如需了解详情,请参阅如何找到“数据源”标签页。
插入产品
如需向您的账号插入示例商品,请运行以下请求:
POST https://merchantapi.googleapis.com/products/v1/accounts/{ACCOUNT_ID}/productInputs:insert?dataSource={DATASOURCE_NAME} HTTP/1.1
{
"contentLanguage": "en",
"feedLabel": "US",
"name": "Red T-shirt",
"attributes": {
"gender": "Male",
"brand": "New brand"
},
"offerId": "tshirt-123"
}
将 {DATASOURCE_NAME} 替换为您之前复制的值。
成功运行此请求后,您应该会看到以下响应:
{
"name": "accounts/{ACCOUNT_ID}/productInputs/en~US~tshirt-123",
"product": "accounts/{ACCOUNT_ID}/products/en~US~tshirt-123",
"offerId": "tshirt-123",
"contentLanguage": "en",
"feedLabel": "US",
"attributes": {
"brand": "New brand",
"gender": "Male"
}
}
新创建的商品的商品 ID 为 en~US~tshirt-123
。您可以使用 accounts.products.get
方法检索有关此商品的详细信息。您还可以使用 Merchant Center 界面查看此商品。请参阅查看商品数据。