主题
Amazon 商品评论任务创建
POST /v3/merchant/amazon/reviews/task_post
接口说明
注意
该接口当前暂时不可用。
本接口用于为指定 Amazon 商品创建评论采集任务。任务完成后,可返回目标商品的评论列表,结果针对请求中指定的 asin 生效。
评论抓取按返回条数计费,每返回 10 条评论计一次费。例如:若设置 "depth": 11,将按 20 条评论的档位计费。
- 请求方式:
POST - 请求地址:
https://api.seermartech.cn/v3/merchant/amazon/reviews/task_post
计费与调用限制
- 本接口在创建任务时扣费
- 实扣费以响应头
X-SeerMarTech-Charge-CNY为准 - 高优级任务会产生额外费用
- 单次 POST 请求最多可提交 100 个任务
- 每分钟最多可发起 2000 次 API 调用
- 若单次请求中任务数 100,出部分会返回错误
40006
结果获取方式
任务提交成功后,可通过返回的唯一任务 ID id 获取结果。
也可以在创建任务时指定以下回调方式:
postback_url:任务完成后,本平台将以 POST 方式将结果(gzip压缩)推送到你指定的地址pingback_url:任务完成后,本平台将以 GET 方式通知你指定的地址
如果你的服务端在 10 秒未响应,连接会因时中断,任务将转 /v3/merchant/amazon/reviews/tasks_ready/ 列表中你主动获取。此时错误码和错误信息取决于你的服务器。
请求体格式
POST 请求体为 JSON 数组:
json
[
{
"location_name": "United States",
"language_name": "English (United States)",
"asin": "B0773ZY26F"
}
]请求参数
| 字段名 | 类型 | 说明 |
|---|---|---|
asin | string | 商品 ID,填。即 Amazon 的唯一商品标识 ASIN。可通过商品查询接口获取。 |
priority | integer | 任务优级,可选。1:普通优级(默认);2:高优级。高优级将额外收费。 |
location_name | string | 搜索位置完整名称。当未提供 location_code 或 location_coordinate 时填。使用该字段时,无需再传 location_code 或 location_coordinate。可通过 /v3/merchant/amazon/locations 获取可用位置列表。示例:HA1,England,United Kingdom |
location_code | integer | 搜索位置编码。当未提供 location_name 或 location_coordinate 时填。使用该字段时,无需再传 location_name 或 location_coordinate。可通过 /v3/merchant/amazon/locations 获取。示例:9045969 |
location_coordinate | string | GPS 坐标位置。当未提供 location_name 或 location_code 时填。格式:latitude,longitude,radius。latitude 和 longitude 最多 7 位小数,radius 最小值为 199.9。示例:53.476225,-2.243572,200 |
language_name | string | 搜索语言完整名称。当未提供 language_code 时填。使用该字段时,无需再传 language_code。可通过 /v3/merchant/amazon/languages 获取。示例:English (United Kingdom) |
language_code | string | 搜索语言编码。当未提供 language_name 时填。使用该字段时,无需再传 language_name。可通过 /v3/merchant/amazon/languages 获取。示例:en_GB |
se_domain | string | 搜索域名,可选。系统会根据你指定的位置和语言自动选择合适域名,也可手动指定,例如 amazon.com、amazon.co.uk、amazon.fr。 |
depth | integer | 抓取深度,可选。表示需要返回的评论数量。建议按 10 的倍数设置,因为系统按每 10 条一组处理。最大值:50;默认值:10。 |
sort_by | string | 排序方式,可选。目前支持:helpful。默认:helpful。 |
reviewer_type | string | 评论类型过滤,可选。all_reviews:所有评论;avp_only_reviews:返回带 “Verified Purchase” 标记的评论。默认:all_reviews。 |
filter_by_star | string | 按星级过滤,可选。支持:all_stars、five_star、four_star、three_star、two_star、one_star、positive、critical。默认:all_stars。 |
filter_by_keyword | string | 按过滤评论,可选。最多 300 个字符。设置后返回该的评论。 |
media_type | string | 按媒体类型过滤,可选。all_contents:返回文本、图片、视频评论;media_reviews_only:返回图片和视频评论。默认:all_contents。 |
format_type | string | 按商品变体过滤,可选。all_format:返回所有商品变体的评论;current_format:返回当前商品变体评论。默认:all_format。注意:不同商品变体对应不同 ASIN。若使用 current_format,请确保传正确的 ASIN。 |
tag | string | 自定义任务标识,可选,最长 255 个字符。便于后续将任务与业务侧记录。返回结果中的 data 对象会保留该值。 |
postback_url | string | 结果推送地址,可选。任务完成后,本平台会向该地址发送结果的 POST 请求(gzip 压缩)。支持使用 $id 和 $tag 占位符。示例:http://your-server.com/postbackscript?id=$id 或 http://your-server.com/postbackscript?id=$id&tag=$tag。特殊字符会进行 URL 编码。 |
postback_data | string | postback_url 返回数据类型。当指定 postback_url 时填。可选值:advanced、html。 |
pingback_url | string | 完成通知地址,可选。任务完成后,本平台会向该地址发送 GET 请求。支持使用 $id 和 $tag 占位符。示例:http://your-server.com/pingscript?id=$id 或 http://your-server.com/pingscript?id=$id&tag=$tag。特殊字符会进行 URL 编码。 |
响应结构
接口返回 JSON 数据,一个 tasks 数组,数组中为各个已创建任务的信息。
顶层字段
| 字段名 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本 |
status_code | integer | 通用状态码。完整错误码请参考 /v3/appendix/errors |
status_message | string | 通用状态信息 |
time | string | 执行耗时,单位秒 |
cost | float | 本次请求总费用,单位 USD |
tasks_count | integer | tasks 数组中的任务数量 |
tasks_error | integer | tasks 数组中返回错误的任务数量 |
tasks | array | 任务数组 |
tasks 数组字段
| 字段名 | 类型 | 说明 |
|---|---|---|
id | string | 平台唯一任务 ID,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 |
cURL 示例
bash
curl --location --request POST "https://api.seermartech.cn/v3/merchant/amazon/reviews/task_post" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"location_name": "United States",
"language_name": "English (United States)",
"asin": "B0773ZY26F"
}
]'Python 示例
python
import requests
url = "https://api.seermartech.cn/v3/merchant/amazon/reviews/task_post"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
}
# 请求体为 JSON 数组
data = [
{
"location_name": "United States",
"language_name": "English (United States)",
"asin": "B0773ZY26F"
},
{
"location_name": "United States",
"language_name": "English (United States)",
"asin": "B0773ZY26F",
"priority": 2,
"tag": "some_string_123",
"pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag"
},
{
"location_name": "United States",
"language_name": "English (United States)",
"asin": "B0773ZY26F",
"postback_data": "html",
"postback_url": "https://your-server.com/postbackscript"
}
]
response = requests.post(url, headers=headers, json=data)
print(response.json)TypeScript 示例
ts
import axios from "axios";
const postData = [
{
// 最简单的任务创建方式
location_name: "United States",
language_name: "English (United States)",
asin: "B0773ZY26F"
},
{
// 高优级 + pingback 通知
location_name: "United States",
language_name: "English (United States)",
asin: "B0773ZY26F",
priority: 2,
tag: "some_string_123",
pingback_url: "https://your-server.com/pingscript?id=$id&tag=$tag"
},
{
// 任务完成后将结果推送到 postback_url
location_name: "United States",
language_name: "English (United States)",
asin: "B0773ZY26F",
postback_data: "html",
postback_url: "https://your-server.com/postbackscript"
}
];
axios({
method: "post",
url: "https://api.seermartech.cn/v3/merchant/amazon/reviews/task_post",
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
},
data: postData
})
.then((response) => {
console.log(response.data);
})
.catch((error) => {
console.error(error.response?.data || error.message);
});响应示例
json
{
"version": "0.1.20220407",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0727 sec.",
"cost": 0.0015,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"data": {
"api": "merchant",
"function": "reviews",
"se": "amazon",
"language_code": "en_US",
"location_code": 2840,
"asin": "B0773ZY26F",
"priority": 2,
"depth": 10,
"se_type": "reviews",
"device": "desktop",
"os": "windows"
},
"result": null
}
]
}状态码与错误处理
- 顶层
status_code=20000表示请求成功 - 单个任务的
status_code用于表示该任务是否创建成功 - 建议你在接时同时处理:
- HTTP 层错误
- 顶层接口状态码错误
tasks数组单任务错误- 常见限制类错误:
40006:单次 POST 请求中的任务数 100
完整错误码定义请参考 /v3/appendix/errors。
使用建议
depth尽量设置为 10 的倍数,因出一个 10 条计费档位而产生额外费用- 若你的业务对时效性要求较高,可使用
priority=2,但需注意额外成本 - 若需要自动接收结果,优使用
postback_url;若只需收到完成通知,可使用pingback_url - 若分析特定评论类型,可结合
reviewer_type、filter_by_star、media_type、filter_by_keyword进行精准过滤 - 若商品存在多个变体且只当前变体评论,使用
format_type=current_format时务确认 ASIN 正确无误
实用场景
- 抓取商品口碑评论:按 ASIN 批量创建评论任务,获取真实用户反馈,用于商品卖点提炼与页优化。
- 筛选差评定位问题:通过
filter_by_star=critical或one_star聚焦负面评论,快速发现质量、物流、等核心问题。 - 识别高价值已购评论:通过
reviewer_type=avp_only_reviews提取已验证购买评论,提升竞品调研和用户洞察的可信度。 - 监控带图带视频:使用
media_type=media_reviews_only获取图片/视频评论,分析用户使用场景,为营销和素材收集提供依据。 - 追踪特定反馈:通过
filter_by_keyword检索如“battery”“size”“smell”等问题,支持产品改良、客服话术优化和舆排查。