Skip to content

按获取广告流量预测任务提交

接口说明

Ad Traffic By Keywords 用于按批量创建广告流量预测任务,可返回用于估算 CPC、点击量等指标的数据。相较常规搜索量接口,这类数据更适合评估某个在投放场景下的真实商业需求。

注意:自 6 月 1 日起,该接口返回的是整个任务中所有对应的整批 campaign 级数据,即一次任务提交的会一起参与结果计算。

该接口基于平台广告数据能力,返回结果会受到账号历史、已有广告素材等因素影响。为了尽量弱化这些因素的干扰,建议设置较高的 bid 值。

预测时间范围支持两种指定方式:

  1. 使用 date_fromdate_to 指定未来的日期范围;
  2. 使用 date_interval 指定相对时间区间:next_weeknext_monthnext_quarter

如果以上两种方式都未提供,默认使用 next_month

该端点采用标准异步模式: 创建任务,再通过结果接口、任务 ID、或回调方式获取结果。若你需要实时返回结果,建议使用对应的 实时(Live)接口。

请求地址

POST https://api.seermartech.cn/v3/keywords_data/google_ads/ad_traffic_by_keywords/task_post

计费说明

该接口按创建任务计费,而不是按数量计费。 单个任务中 keywords 最多可传 1000 个,无论传 1 个还是 1000 个,均按一次请求计费。

参考价约 ¥0.8000 / 次 扣费以响应头 X-SeerMarTech-Charge-CNY 为准。

请求限制

  • 每分钟最多 2000 次 API 调用
  • 每次 POST 最多提交 100 个任务 -过 100 个任务的部分会返回错误 40006
  • 单个 keywords 数组最多 1000 个

回调说明

你可以通过以下方式获取结果:

  • 使用任务唯一标识 id 后续查询
  • 设置 postback_url,任务完成后由本平台向该地址发送结果的 POST 请求(gzip 压缩)
  • 设置 pingback_url,任务完成后由本平台向该地址发送通知 GET 请求

如果你的服务器在 10 秒未响应,连接会因时被中止,任务会转 /v3/keywords_data/google_ads/ad_traffic_by_keywords/tasks_ready 列表中拉取。


请求参数

POST 请求体为 JSON 数组格式:

json
[
 {
 "keywords": ["seo marketing"],
 "bid": 999.0,
 "match": "exact"
 }
]

字段说明

字段名类型说明
keywordsarray。列表。最多 1000 个;每个最多 80 个字符、10 个单词;提交后会自动转为小写。某些组可能无返回数据;相似可能被合并统计。建议需要精确比较时分开请求。Google Ads 不支持部分特殊符号、UTF 字符或 emoji。
bidfloat。自定义最高出价。返回的预测数据基于此值;通常出价越高,返回指标越高。
matchstring。匹类型,可选:exactbroadphrase
location_namestring可选。搜索引擎地区完整名称。不填时返回范围结果。使用该字段时,不要再传 location_codelocation_coordinate。示例:London,England,United Kingdom
location_codeinteger可选。搜索引擎地区编码。不填时返回范围结果。使用该字段时,不要再传 location_namelocation_coordinate。示例:2840
location_coordinatestring可选。GPS 坐标,格式为 "latitude,longitude"。使用该字段时,不要再传 location_namelocation_code。结果将按该坐标所属国家返回。示例:52.6178549,-155.352142
language_namestring可选。搜索引擎语言完整名称。示例:English
language_codestring可选。搜索引擎语言编码。示例:en
date_fromstring当指定 date_to 时填。预测时间范围开始日期,格式:yyyy-mm-dd。最小值为明天;不得晚于 date_to。若提供 date_fromdate_to,则无需传 date_interval。示例:2021-10-30
date_tostring当指定 date_from 时填。预测时间范围结束日期,格式:yyyy-mm-dd。最小值为 date_from + 1 day;最大值为下一年当前月日。若提供 date_fromdate_to,则无需传 date_interval。示例:2022-10-30
date_intervalstring可选。预测时间区间,可选:next_weeknext_monthnext_quarter。默认:next_month。提供该字段时,无需传 date_fromdate_to
sort_bystring可选。结果排序字段,按降序排序。可选:relevanceaverage_cpccostclicks。默认:relevance
postback_urlstring可选。任务完成后,平台会向该地址发送结果的 POST 请求(gzip 压缩)。支持 $id$tag 变量占位。示例:http://your-server.com/postbackscript?id=$id&tag=$tag
pingback_urlstring可选。任务完成后,平台会向该地址发送通知 GET 请求。支持 $id$tag 变量占位。示例:http://your-server.com/pingscript?id=$id&tag=$tag
tagstring可选。用户自定义任务标识,最长 255 字符。可用于任务和业务记录,返回结果中的 data 对象会带回该值。

地区与语言列表

可通过以下容路径查询可用地区与语言:

  • 地区列表:/v3/keywords_data/google_ads/locations
  • 语言列表:/v3/keywords_data/google_ads/languages

日期参数补说明

date_from 可设置的历史边界,需要结合状态接口判断:

  • /v3/keywords_data/google_ads/status/ 返回 actual_data=false,则 date_from 可设置为上上个月及更早;
  • /v3/keywords_data/google_ads/status/ 返回 actual_data=true,则 date_from 可设置为上个月及更早。

请求示例

cURL

bash
curl --location --request POST "https://api.seermartech.cn/v3/keywords_data/google_ads/ad_traffic_by_keywords/task_post" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
 {
 "location_name": "United States",
 "language_code": "en",
 "bid": 999.00,
 "match": "exact",
 "keywords": [
 "seo marketing"
 ]
 },
 {
 "language_code": "en",
 "location_code": 2840,
 "bid": 999.00,
 "match": "exact",
 "keywords": [
 "seo marketing"
 ],
 "tag": "some_string_123",
 "pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag"
 },
 {
 "location_name": "United States",
 "language_name": "English",
 "bid": 999.00,
 "match": "exact",
 "keywords": [
 "seo marketing"
 ],
 "postback_url": "https://your-server.com/postbackscript"
 }
]'

Python

python
import requests

url = "https://api.seermartech.cn/v3/keywords_data/google_ads/ad_traffic_by_keywords/task_post"
headers = {
 "Authorization": "Bearer smt_live_YOUR_KEY",
 "Content-Type": "application/json"
}

data = [
 {
 "location_name": "United States",
 "language_code": "en",
 "bid": 999.00,
 "match": "exact",
 "keywords": ["seo marketing"]
 },
 {
 "language_code": "en",
 "location_code": 2840,
 "bid": 999.00,
 "match": "exact",
 "keywords": ["seo marketing"],
 "tag": "some_string_123",
 "pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag"
 },
 {
 "location_name": "United States",
 "language_name": "English",
 "bid": 999.00,
 "match": "exact",
 "keywords": ["seo marketing"],
 "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 postData = [
 {
 location_name: "United States",
 language_name: "English",
 bid: 999.0,
 match: "exact",
 keywords: ["seo marketing"],
 },
 {
 language_code: "en",
 location_code: 2840,
 bid: 999.0,
 match: "exact",
 keywords: ["seo marketing"],
 tag: "some_string_123",
 pingback_url: "https://your-server.com/pingscript?id=$id&tag=$tag",
 },
 {
 location_name: "United States",
 language_name: "English",
 bid: 999.0,
 match: "exact",
 keywords: ["seo marketing"],
 postback_url: "https://your-server.com/postbackscript",
 },
];

axios({
 method: "post",
 url: "https://api.seermartech.cn/v3/keywords_data/google_ads/ad_traffic_by_keywords/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);
 });

响应结构

接口返回 JSON 编码结果,顶层 tasks 数组。

顶层字段

字段名类型说明
versionstringAPI 当前版本
status_codeinteger通用状态码
status_messagestring通用状态信息
timestring执行耗时,单位秒
costfloat本次请求总费用,单位 USD
tasks_countintegertasks 数组中的任务数量
tasks_errorinteger返回错误的任务数量
tasksarray任务结果数组

tasks 数组字段

字段名类型说明
idstring任务唯一标识,UUID 格式
status_codeinteger任务状态码,范围通常为 10000-60000
status_messagestring任务状态信息
timestring单任务执行耗时,单位秒
costfloat单任务费用,单位 USD
result_countintegerresult 数组数量
patharrayURL 路径
dataobject回显请求时提交的参数
resultarray | null结果数组。对于 task_post 接口,此处通常为 null

建议对 status_codetasks[].status_code 建立完善的异常处理机制。完整错误码可参考 /v3/appendix/errors


响应示例

json
{
 "version": "3.20191128",
 "status_code": 20000,
 "status_message": "Ok.",
 "time": "0.1169 sec.",
 "cost": 0.15,
 "tasks_count": 3,
 "tasks_error": 0,
 "tasks": [
 {
 "id": "01301455-1535-0111-0000-0e193f50bc50",
 "status_code": 20100,
 "status_message": "Task Created.",
 "time": "0.0020 sec.",
 "cost": 0.05,
 "result_count": 0,
 "path": [
 "v3",
 "keywords_data",
 "google_ads",
 "ad_traffic_by_keywords",
 "task_post"
 ],
 "data": {
 "api": "keywords_data",
 "function": "ad_traffic_by_keywords",
 "se": "google_ads",
 "location_name": "United States",
 "bid": 999,
 "match": "exact",
 "keywords": [
 "seo marketing"
 ]
 },
 "result": null
 },
 {
 "id": "01301455-1535-0111-0000-0e193f50bc51",
 "status_code": 20100,
 "status_message": "Task Created.",
 "time": "0.0021 sec.",
 "cost": 0.05,
 "result_count": 0,
 "path": [
 "v3",
 "keywords_data",
 "google_ads",
 "ad_traffic_by_keywords",
 "task_post"
 ],
 "data": {
 "api": "keywords_data",
 "function": "ad_traffic_by_keywords",
 "se": "google_ads",
 "language_code": "en",
 "location_code": 2840,
 "bid": 999,
 "match": "exact",
 "keywords": [
 "seo marketing"
 ],
 "pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag",
 "tag": "some_string_123"
 },
 "result": null
 },
 {
 "id": "01301455-1535-0111-0000-1a12b9e9ee45",
 "status_code": 20100,
 "status_message": "Task Created.",
 "time": "0.0020 sec.",
 "cost": 0.05,
 "result_count": 0,
 "path": [
 "v3",
 "keywords_data",
 "google_ads",
 "ad_traffic_by_keywords",
 "task_post"
 ],
 "data": {
 "api": "keywords_data",
 "function": "ad_traffic_by_keywords",
 "se": "google_ads",
 "location_name": "United States",
 "language_name": "English",
 "bid": 999,
 "match": "exact",
 "keywords": [
 "seo marketing"
 ],
 "postback_url": "https://your-server.com/postbackscript"
 },
 "result": null
 }
 ]
}

状态码说明

状态码含义
20000请求成功
20100任务已创建
40006单次 POST 提交的任务数 100 个

更多错误码请参考 /v3/appendix/errors

使用建议

  • 若希望减少广告账号历史对预测结果的影响,建议提高 bid
  • 若要比较相似的差异,建议拆分为多个请求分别提交
  • 若不指定地区,将返回范围汇总结果
  • 若使用回调,需确保服务端能在 10 秒完成响应
  • task_post 负责创建任务,结果通常需要后续轮询或回调获取

实用场景

  • 评估商业价值:按预测 CPC 和点击量,帮助判断某个 SEO 词是否同时备较强投放价值与转化潜力。
  • 筛选优投放词:批量提交候选,根据点击量、成本或平均 CPC 排序,快速确定更值得投放的词组。
  • 对比不同地域需求差异:针对不同 location_namelocation_code 建立任务,识别高潜力国家或城市,优化本地化投放与布局。
  • 验证长尾词真实需求:通过广告流量预测补常规搜索量数据,识别看似搜索量不高但商业点击潜力强的长尾词。
  • 建立自动化预测流水线:结合 pingback_urlpostback_url 异步回收结果,持续更新库中的出价、点击与成本预估数据。

统一入口:官网 · LLM API · 控制台