主题
Bing 按类别获取:提交任务
GET /v3/keywords_data/bing/locations
接口说明
本接口使用 POST 方法提交 Bing 类别任务:
POST https://api.seermartech.cn/v3/keywords_data/bing/keywords_for_category/task_post
接口会根据指定的 Bing 产品或服务类别返回任务结果。任务完成后,可获取以下数据:
- 最近一个月的搜索量
- 最多过去 24 个月的搜索量趋势
- 当前每次点击费用(CPC)
- 付费搜索竞争程度
同一类别返回的不因地区而变化,但竞争程度、CPC、搜索量及月度搜索数据会根据所设置的地区返回。
本接口为标准任务提交方式,适用于不要求实时返回结果的场景。提交任务后,系统会异步处理,处理时间取决于系统负载。若需要即时获取结果,请使用 Bing 按类别获取的 Live 接口。
历史数据最长支持 24 个月。
计费说明
账户在成功提交任务时扣费。单次请求最多返回 700 个及完整数据;无论返回 1 个还是 700 个,单次请求的费用相同。
参考价约 ¥0.36 / 任务。批量提交多个任务时,将按任务数量计费。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
请求使用 UTF-8 编码的 JSON 格式,并通过 POST 方法提交。平台限流以认证说明中的 30/60/120 次/分钟规则为准。若单次请求 100 个任务,出部分将返回错误码 40006。
任务提交后,可以通过返回的任务 ID 查询结果,也可以在请求中设置 postback_url 或 pingback_url,由本平台在任务完成后主动通知。
postback_url:任务完成后向指定地址发送结果的 POST 请求,使用 gzip 压缩。pingback_url:任务完成后向指定地址发送 GET 请求。- 如果回调服务器在 10 秒未响应,连接将因时中断,任务会转
tasks_ready列表。 - URL 中可以使用
$id和$tag占位符,平台发送请求时会替换为任务 ID 和经过 URL 编码的标签值。 postback_url和pingback_url中的特殊字符会进行 URL 编码,例如#会编码为%23。
请求参数
请求体是 JSON 数组,数组中的每个对象代表一个任务。
| 参数 | 类型 | 填 | 说明 |
|---|---|---|---|
category_code | integer | 是 | Bing 产品或服务类别 ID。可通过 GET /v3/keywords_data/bing/categories 获取可用类别。 |
location_name | string | 条件填 | 搜索引擎地区的完整名称。未指定 location_code 或 location_coordinate 时填。使用此参数后,不需要再传另外两个地区参数。示例:London,England,United Kingdom |
location_code | integer | 条件填 | 搜索引擎地区代码。未指定 location_name 或 location_coordinate 时填。可通过 GET /v3/keywords_data/bing/locations 获取。示例:2840 |
location_coordinate | string | 条件填 | 地区 GPS 坐标,格式为 纬度,经度。未指定 location_name 或 location_code 时填。数据将坐标所属国家返回。示例:52.6178549,-155.352142 |
language_name | string | 条件填 | 搜索引擎语言名称。未指定 language_code 时填。目前支持:English。 |
language_code | string | 条件填 | 搜索引擎语言代码。未指定 language_name 时填。目前支持:en。 |
keywords_negative | array | 否 | 要从结果中排除的列表,最多 200 个。指定的会转换为小写。 |
device | string | 否 | 设备类型。可选值:desktop、mobile、tablet、all。默认值:all。 |
date_from | string | 否 | 数据时间范围的开始日期,格式为 yyyy-mm-dd。最早支持查询过去 24 个月的数据。不传时默认返回最近 12 个月数据。示例:2020-01-01 |
date_to | string | 否 | 数据时间范围的结束日期,格式为 yyyy-mm-dd。不传时默认返回最近 12 个月数据;最早可设置为两年前,最晚可设置为当前日期后一个月。不建议对过去一年使用自定义时间范围。示例:2020-03-15 |
sort_by | string | 否 | 结果排序字段,支持 search_volume、competition、cpc、relevance,按降序排列。默认值:relevance。 |
search_partners | boolean | 否 | 是否 Bing 搜索合作伙伴网络的数据。true 表示返回 Bing、Yahoo、AOL 及合作伙伴网站的自有、运营和联盟网络数据;默认值 false,返回 Bing、AOL 和 Yahoo 搜索网络数据。 |
postback_url | string | 否 | 任务完成后接收结果的 POST 回调地址。支持 $id 和 $tag 占位符。示例:https://your-server.com/postbackscript?id=$id&tag=$tag |
pingback_url | string | 否 | 任务完成后接收通知的 GET 地址。支持 $id 和 $tag 占位符。示例:https://your-server.com/pingscript?id=$id&tag=$tag |
tag | string | 否 | 自定义任务标识,最长 255 个字符。可用于任务与结果,指定值会出现在响应的 data 对象中。 |
地区参数 location_name、location_code、location_coordinate 三选一;语言参数 language_name、language_code 二选一。
请求示例
curl
bash
curl --location --request POST \
"https://api.seermartech.cn/v3/keywords_data/bing/keywords_for_category/task_post" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"location_name": "United States",
"category_code": 13895
},
{
"language_code": "en",
"location_code": 2840,
"category_code": 13895,
"tag": "some_string_123",
"pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag"
},
{
"location_name": "United States",
"language_name": "English",
"category_code": 13895,
"postback_url": "https://your-server.com/postbackscript"
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/keywords_data/bing/keywords_for_category/task_post"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
}
tasks = [
{
"location_name": "United States",
"category_code": 13895,
},
{
"language_code": "en",
"location_code": 2840,
"category_code": 13895,
"tag": "some_string_123",
"pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag",
},
{
"location_name": "United States",
"language_name": "English",
"category_code": 13895,
"postback_url": "https://your-server.com/postbackscript",
},
]
response = requests.post(url, headers=headers, json=tasks)
result = response.json()
if result.get("status_code") == 20000:
print(result)
else:
print(
f"请求失败,错误码:{result.get('status_code')},"
f"消息:{result.get('status_message')}"
)TypeScript
typescript
import axios from "axios";
const tasks = [
{
location_name: "United States",
category_code: 13895,
},
{
language_code: "en",
location_code: 2840,
category_code: 13895,
tag: "some_string_123",
pingback_url: "https://your-server.com/pingscript?id=$id&tag=$tag",
},
{
location_name: "United States",
language_name: "English",
category_code: 13895,
postback_url: "https://your-server.com/postbackscript",
},
];
axios
.post(
"https://api.seermartech.cn/v3/keywords_data/bing/keywords_for_category/task_post",
tasks,
{
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
}
)
.then((response) => {
console.log("任务提交结果:", response.data);
})
.catch((error) => {
console.error("请求失败:", error.response?.data || error.message);
});响应说明
接口返回 JSON 对象 tasks 数组每个已提交任务的信息。任务提交接口只负责创建任务,因此每个任务的 result 值为 null。
顶层响应字段
| 字段 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本。 |
status_code | integer | 请求级状态码。 |
status_message | string | 请求级提示信息。 |
time | string | 请求执行耗时,单位为秒。 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
tasks_count | integer | tasks 数组中的任务数量。 |
tasks_error | integer | tasks 数组中返回错误的任务数量。 |
tasks | array | 任务信息数组。 |
任务字段
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 任务唯一标识,UUID 格式。 |
status_code | integer | 任务状态码,通常在 10000 至 60000 范围。 |
status_message | string | 任务状态说明。 |
time | string | 任务执行耗时,单位为秒。 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
result_count | integer | result 数组中的数量。任务提交成功时通常为 0。 |
path | array | 请求路径信息。 |
data | object | 本次任务提交时使用的参数及接口数据。 |
result | array/null | 任务结果。提交任务阶段为 null。 |
完整状态码和错误码请参考错误码文档。
响应示例
json
{
"version": "0.1.20200130",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0683 sec.",
"cost": 1.08,
"tasks_count": 3,
"tasks_error": 0,
"tasks": [
{
"id": "01301831-1535-0107-0000-21cc045291e0",
"status_code": 20100,
"status_message": "Task Created.",
"time": "0.0020 sec.",
"cost": 0.36,
"result_count": 0,
"path": [
"v3",
"keywords_data",
"bing",
"keywords_for_category",
"task_post"
],
"data": {
"api": "keywords_data",
"function": "keywords_for_category",
"se": "bing",
"language_code": "en",
"location_code": 2840,
"category_code": 13895,
"pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag",
"tag": "some_string_123"
},
"result": null
},
{
"id": "01301831-1535-0107-0000-77a3219d7e0b",
"status_code": 20100,
"status_message": "Task Created.",
"time": "0.0022 sec.",
"cost": 0.36,
"result_count": 0,
"path": [
"v3",
"keywords_data",
"bing",
"keywords_for_category",
"task_post"
],
"data": {
"api": "keywords_data",
"function": "keywords_for_category",
"se": "bing",
"language_name": "English",
"location_name": "United States",
"category_code": 13895,
"postback_url": "https://your-server.com/postbackscript"
},
"result": null
}
]
}实用场景
- 挖掘指定 Bing 行业类别的,快速构建 SEO选题池并扩大覆盖范围。
- 按国家、城市或坐标提交类别任务,比较不同市场的搜索量、CPC 和竞争程度,为地区化 SEO 制定优级。
- 按设备类型分析表现,识别移动端与桌面端的搜索需求差异,优化页面和广告投放策略。
- 结合历史搜索量趋势筛选,发现季节性需求和长期增长词,支持日历与预算规划。
- 通过负面排除无词,减少低价值分析结果,提高研究和投放决策效率。