清单资源

注意

清单 API 仅适用于已关闭的试点参与者。 API 和文档可能会更改。

利用库存资源,可以更新 Microsoft 商家中心 (MMC) 商店中的产品的定价和可用性。 有关使用库存资源的信息,请参阅 更新产品定价。 有关演示如何更新定价和可用性的示例,请参阅 代码示例

基 URI

下面是将模板追加到的基 URI。

https://content.api.bingads.microsoft.com/shopping/v9.1

模板

若要创建用于更新产品/服务的终结点,请将相应的模板追加到基 URI。

模板 HTTP 谓词 说明
/bmc/{mmcMerchantId}/inventory/batch POST 用于在单个请求中执行多个产品定价更新。

设置为 {mmcMerchantId} MMC 存储 ID。

请求对象: Batch
响应对象: Batch
/bmc/{mmcMerchantId}/inventory/{storeCode}/products/{productUniqueId} POST 用于更新单个产品的定价和可用性。

设置为 {mmcMerchantId} MMC 存储 ID。

设置为 {storeCode} “联机”。

设置为 {productUniqueId} 完全限定的产品 ID (例如 Online:en:US:Sku123) 。

请求对象: Product
响应对象: Product

查询参数

终结点可能包括以下查询参数。

参数 说明
干运行 可选。 调试应用程序时使用 以测试调用。 包含此参数的调用不会影响生产数据。 如果发生错误,响应包含调用通常生成的任何错误,但次要错误消息(如数据质量、编辑问题和数据库相关验证)除外。 有关测试应用程序的详细信息,请参阅 沙盒

标题

下面是请求和响应标头。

说明
AuthenticationToken 请求标头。

将此标头设置为 OAuth 访问令牌。 有关获取访问令牌的信息,请参阅 对凭据进行身份验证
Content-Type 请求和响应标头。

请求或响应正文中的内容类型。 设置为 application/json
CustomerAccountId 请求标头。

代表标头中指定的客户管理的任何帐户的帐户 ID CustomerId 。 指定哪个帐户并不重要。 仅当代表客户管理帐户时,才指定此标头。
CustomerId 请求标头。

你管理的商店的客户的客户 ID。 仅当代表客户管理应用商店时,才指定此标头。 如果设置此标头,还必须设置 CustomerAccountId 标头。
DeveloperToken 请求标头。

客户端应用程序的开发人员令牌。 每个请求都必须包含此标头。 有关获取令牌的信息,请参阅 是否有 Microsoft Advertising 凭据和开发人员令牌?
位置 响应标头。

已更新的产品的 URL。
WebRequestActivityId 响应标头。

包含请求详细信息的日志条目的 ID。 如果发生错误,应始终捕获此 ID。 如果无法确定和解决问题,请包含此 ID 以及你向支持团队提供的其他信息。

请求和响应对象

下面是 API 使用的请求和响应对象。

Object 说明
定义要在批处理请求中更新的产品列表。
错误 定义错误。
ErrorResponse 定义非批处理更新的顶级错误对象。
BatchEntryError 定义在批处理期间为项发生的错误。
条目 定义批处理请求或响应中的条目。
产品 定义产品。
ProductPrice 定义产品的价格。

定义要在批中更新的产品列表。

名称 类型
条目 要批量更新的产品列表。 可以指定的最大产品数为 400。 Entry[]

BatchEntryError

定义批处理期间条目发生的错误。

名称 类型
错误 处理条目时发生的错误的列表。 Error[]
code 错误的 HTTP 状态代码。 String
消息 与错误关联的消息。 String

错误

定义错误。

名称 类型
domain 仅供内部使用。 String
消息 错误说明。 String
reason 请求失败的原因。 例如,产品验证失败。 String

ErrorResponse

定义单个产品更新的顶级错误对象。

名称 类型
error 处理项时发生的错误的列表。 Errors[]

错误

定义产品的错误列表。

名称 类型
错误 处理条目时发生的错误的列表。 Error[]
code 错误的 HTTP 状态代码。 String
消息 与错误关联的消息。 String

条目

定义批处理请求中的条目。

名称 类型
batchId 用户定义的 ID,用于在批处理请求中唯一标识此条目。 例如,如果批包含 10 个条目,则可以为它们分配 ID 1 到 10。 无符号整数
错误 一个 error 对象,其中包含发生的验证错误列表。 仅当发生错误时,响应才会包含此字段。 BatchEntryError
inventory 更新的价格和可用性。 产品
merchantId 商家中心商店 ID。 由于 URL 包含存储 ID,因此忽略此字段。 无符号 Long
productId 完全限定的产品 ID (,例如要更新的产品的 Online:en:US:Sku123) 。 不要包含具有相同产品 ID 的多个条目。 String
storeCode 标识要更新的存储区的代码。 设置为 “联机 ”可更新在线商店中产品的价格和可用性。 String

产品

定义产品。

属性 说明 类型 必需
可用 性 产品的可用性。 可能的值:
  • 有库存
  • 缺货
  • 预售
字符串
kind 对象的类型。 设置为 content#inventory 字符串
价格 产品的新价格。 以目标国家或地区的货币指定价格。 有关是否在价格中包含税款的信息,请参阅 Microsoft 商家中心目录税政策

价格必须与产品网页上显示的价格一致,并且必须介于 0.01 (1 美分) 到 100000000000000000000000000000000000000000000000 (1000 万) 的范围内。 但是,如果满足以下条件,可以将价格设置为 0.0 (零) 。
  1. 产品的 googleProductCategory 字段设置为以下类别之一:
    • 电子 > 通信 > 电话 > 移动电话
    • 电子 > 计算机 > 平板电脑
  2. 产品的 title 字段包含以下关键字之一:
    • contract
    • 安装
    • 租赁
    • 付款
    上述关键字以英语显示:但是,标题和关键字 (keyword) 必须使用指定市场的语言。

    通常,标题将包含诸如“...与分期付款计划“或”...仅包含合同”。 合同关键字 (keyword) 可用于所有市场;但是,分期付款付款租赁只能在美国市场使用。
ProductPrice
salePrice 产品的销售价格。 对于销售项目,请同时设置销售价格和销售生效日期 (请参阅 salePriceEffectiveDate) 。 如果您设置销售价格,但未设置销售价格生效日期,则销售价格将继续使用,直到产品到期或您设置生效日期。

销售价格必须介于 0.01 (1 美分) 到 1000 万 (1000 万) 。 但是,如果满足以下条件,可以将销售价格设置为 0.0 (零) 。
  1. googleProductCategory 字段设置为以下类别之一:
    • 电子 > 通信 > 电话 > 移动电话
    • 电子 > 计算机 > 平板电脑
  2. 标题字段包含以下关键字之一:
    • contract
    • 安装
    • 租赁
    • 付款
    上述关键字以英语显示:但是,标题和关键字 (keyword) 必须使用指定市场的语言。

    通常,标题将包含诸如“...与分期付款计划“或”...仅包含合同”。 合同关键字 (keyword) 可用于所有市场;但是,分期付款付款租赁只能在美国市场使用。
如果未指定,则从产品/服务中删除当前销售的价格。 不要传递 null。
ProductPrice
salePriceEffectiveDate 销售的 UTC 开始和结束日期。 仅当设置 salePrice时指定日期。

ISO 8601 格式指定开始和结束日期。 例如,2016-04-05T08:00-08:00/2016-04-10T19:30-08:00 (使用斜杠 ('/') 分隔开始日期和结束日期) 。 有关详细信息,请参阅 salePrice

如果未指定,将从产品/服务中删除当前销售日期。 不要传递 null。
字符串

ProductPrice

定义产品的价格或销售价格。

名称 类型
货币 表示价格的货币。 可能的值:
  • 澳元 ()
  • 加元 ()
  • 瑞士法郎 ()
  • (欧元)
  • 英镑 (英镑)
  • 卢比 ()
  • SEK (瑞典)
  • ) 美元 (美国 美元
String
产品的价格。 双精度

HTTP 状态代码

请求可能会返回以下 HTTP 状态代码。

状态代码 说明
200 成功。
400 错误请求。 查询参数值无效或请求正文中的某些内容无效。

如果发生错误,失败的批处理条目将包括错误。
401 未经授权。 用户的凭据无效。
403 禁止。 用户没有使用该资源的权限。
404 未找到。
409 冲突。 由于与资源的当前状态冲突,操作无法完成。
413 请求实体太大。 请求的大小超出了允许的最大大小。
500 服务器错误。