主题
Google Shopping 商品任务创建
POST /v3/merchant/google/product_info/task_post
接口说明
该接口用于创建 Google Shopping 商品采集任务。任务完成后,可获取指定商品的以下信息:
- 商品描述
- 商品图片
- 评分与评价概览
- 规格参数
- 变体信息
- 卖家信息
创建任务时,以下 3 个字段至少需要提供 1 个:
product_iddata_docidgid
请求地址
POST https://api.seermartech.cn/v3/merchant/google/product_info/task_post
计费说明
本接口在创建任务时扣费。
原文未提供固定单价,因此无法直接换算人民币。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
如使用高优级任务(priority=2),会产生额外费用。
请求格式与调用限制
- 请求方法:
POST - 请求体格式:JSON 数组
[{ ... }] - 编码:UTF-8
- 单次 POST 最多可提交 100 个任务
- 接口整体频率限制:每分钟最多 2000 次 API 调用
- 如果单次请求中任务数 100,出部分会返回错误码
40006
结果获取方式
任务创建成功后,你可以通过返回的任务唯一标识 id 获取结果。
也可以在创建任务时以下回调方式:
postback_url:任务完成后,本平台将以 POST 方式推送结果,数据为 gzip 压缩pingback_url:任务完成后,本平台将以 GET 方式发送完成通知
如果你的服务器在 10 秒未响应,连接会因时被中断,任务结果将转 Tasks Ready 列表,供后续主动拉取。
请求参数
| 字段名 | 类型 | 说明 |
|---|---|---|
product_id | string | Google Shopping 中的唯一商品标识。若未提供 data_docid 或 gid,则该字段填。建议与 data_docid、gid 一起传以获得更稳定的结果。可通过 /v3/merchant/google/products/task_post 获取。示例:4485466949985702538 |
data_docid | string | SERP 数据的唯一标识。若未提供 product_id 或 gid,则该字段填。建议与 product_id、gid 一起传。可通过 /v3/merchant/google/products/task_post 获取。示例:13071766526042404278 |
gid | string | Google Shopping 的局商品标识。若未提供 product_id 或 data_docid,则该字段填。建议与 product_id、data_docid 一起传。可通过 /v3/merchant/google/products/task_post 获取。示例:4702526954592161872 |
priority | integer | 任务优级,可选。1 表示普通优级(默认),2 表示高优级。高优级会额外扣费。 |
location_name | string | 完整地区名称。若未提供 location_code 或 location_coordinate,则该字段填。使用该字段时,无需再传 location_code 或 location_coordinate。可通过 https://api.seermartech.cn/v3/merchant/google/locations 获取可用地区。示例:London,England,United Kingdom |
location_code | integer | 地区编码。若未提供 location_name 或 location_coordinate,则该字段填。使用该字段时,无需再传 location_name 或 location_coordinate。可通过 https://api.seermartech.cn/v3/merchant/google/locations 获取。示例:2840 |
location_coordinate | string | 地理坐标,格式为 "latitude,longitude,radius"。若未提供 location_name 或 location_code,则该字段填。latitude 和 longitude 最多保留 7 位小数,radius 最小值为 199.9。示例:53.476225,-2.243572,200 |
language_name | string | 语言名。若未提供 language_code,则该字段填。使用该字段时,无需再传 language_code。可通过 https://api.seermartech.cn/v3/merchant/google/languages 获取可用语言。示例:English |
language_code | string | 语言代码。若未提供 language_name,则该字段填。使用该字段时,无需再传 language_name。可通过 https://api.seermartech.cn/v3/merchant/google/languages 获取。示例:en |
se_domain | string | 搜索引擎域名,可选。默认会根据地区与语言自动选择,也可手动指定。示例:google.co.uk、google.com.au、google.de |
tag | string | 用户自定义任务标识,可选,最长 255 个字符。便于后续将任务与业务系统记录对应。响应中的 data 对象会返回该值。 |
postback_url | string | 结果推送地址,可选。任务完成后,本平台会向该地址发送 POST 请求,并推送 gzip 压缩后的结果。可在 URL 中使用 $id 和 $tag 占位符,发送前会自动替换为值。示例:http://your-server.com/postbackscript?id=$id |
postback_data | string | postback_url 推送的数据类型,可选。当前可用值:advanced |
pingback_url | string | 完成通知地址,可选。任务完成后,本平台会以 GET 请求通知该地址。可在 URL 中使用 $id 和 $tag 占位符。示例:http://your-server.com/pingscript?id=$id&tag=$tag |
回调参数说明
postback_url和pingback_url中的特殊字符会进行 URL 编码- 例如
#会被编码为%23 $id会替换为任务 ID$tag会替换为经过 URL 编码的任务标签
响应结构
接口返回 JSON 数据 tasks 数组,用于描述本次创建的任务。
顶层字段
| 字段名 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本 |
status_code | integer | 通用状态码 |
status_message | string | 通用状态信息 |
time | string | 请求执行耗时,单位秒 |
cost | float | 本次请求总费用,单位 USD |
tasks_count | integer | tasks 数组中的任务数量 |
tasks_error | integer | 返回错误的任务数量 |
tasks | array | 任务结果数组 |
tasks 数组字段
| 字段名 | 类型 | 说明 |
|---|---|---|
id | string | 本平台任务唯一标识,UUID 格式 |
status_code | integer | 任务状态码,范围通常为 10000-60000 |
status_message | string | 任务状态信息 |
time | string | 任务执行耗时,单位秒 |
cost | float | 单个任务费用,单位 USD |
result_count | integer | result 数组中的数量 |
path | array | URL 路径 |
data | object | 回显的请求参数 |
result | array | null | 结果数组。对于任务创建接口,该值通常为 null |
状态码与错误处理
20000:请求成功40006:单次 POST 中任务数量 100,出部分报错
建议在接时统一处理:
- 顶层
status_code - 每个任务的
status_code - 回调时或回调失败场景
更多错误码可参考 /v3/appendix/errors。
请求示例
cURL
bash
curl --location --request POST "https://api.seermartech.cn/v3/merchant/google/product_info/task_post" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"location_name": "United States",
"language_name": "English",
"product_id": "1113158713975221117"
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/merchant/google/product_info/task_post"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
}
data = [
{
# 示例 1:基础任务
"location_name": "United States",
"language_name": "English",
"product_id": "1113158713975221117"
},
{
# 示例 2:高优级 + 完成通知
"location_name": "United States",
"language_name": "English",
"product_id": "1113158713975221117",
"priority": 2,
"tag": "some_string_123",
"pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag"
},
{
# 示例 3:通过 postback 直接接收结果
"location_name": "United States",
"language_name": "English",
"product_id": "1113158713975221117",
"postback_url": "https://your-server.com/postbackscript"
}
]
response = requests.post(url, headers=headers, json=data)
print(response.json)TypeScript
typescript
import axios from "axios";
const postArray = [
{
location_name: "United States",
language_name: "English",
product_id: "1113158713975221117",
priority: 2,
tag: "some_string_123",
pingback_url: "https://your-server.com/pingscript?id=$id&tag=$tag"
}
];
axios({
method: "post",
url: "https://api.seermartech.cn/v3/merchant/google/product_info/task_post",
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
},
data: postArray
})
.then((response) => {
// 输出任务创建结果
console.log(response.data);
})
.catch((error) => {
console.error(error);
});响应示例
json
{
"version": "0.1.20220627",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0632 sec.",
"cost": 0.001,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"data": {
"api": "merchant",
"function": "product_info",
"se": "google",
"language_code": "en",
"location_code": 2840,
"product_id": "1113158713975221117",
"se_type": "product_info",
"device": "desktop",
"os": "windows"
},
"result": null
}
]
}使用建议
优同时传
product_id、data_docid、gid虽然三只需提供一,但同时传更有利于提高匹稳定性。批量提交时控制单次任务数 单次请求不要 100 个任务,建议按批次发送。
有实时需求时使用回调 若你的系统希望在任务完成后自动接收通知或结果,建议
pingback_url或postback_url。按地区与语言精确采集 商品在不同地区和语言环境下可能存在差异,建议根据业务目标传明确的 location 和 language 参数。
实用场景
- 抓取商品页键信息:获取商品描述、图片、评分、规格和卖家数据,用于构建商品报库。
- 监控竞品商品信息变化:定期查询指定商品,发现评分、卖家或变体变化,竞品监测。
- 补商品知识图谱:结合
product_id、gid和字段,完善商品主数据,提高商品识别与归档能力。 - 分析不同地区的商品展示差异:按不同
location和language创建任务,比较商品在不同市场中的展示。 - 自动接收任务完成结果:通过
postback_url或pingback_url对接系统,减少轮询成本,提升数据采集效率。