curl --request POST \
--url https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
[
{
"target": [
{
"domain": "<string>",
"keyword": "<string>",
"search_filter": "<string>",
"search_scope": [
"<string>"
],
"include_subdomains": true,
"match_type": "<string>"
}
],
"location_name": "<string>",
"location_code": 123,
"language_name": "<string>",
"language_code": "<string>",
"platform": "<string>",
"filters": [
"<unknown>"
],
"order_by": [
"<string>"
],
"offset": 123,
"search_after_token": "<string>",
"limit": 123,
"tag": "<string>"
}
]
'import requests
url = "https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live"
payload = [
{
"target": [
{
"domain": "<string>",
"keyword": "<string>",
"search_filter": "<string>",
"search_scope": ["<string>"],
"include_subdomains": True,
"match_type": "<string>"
}
],
"location_name": "<string>",
"location_code": 123,
"language_name": "<string>",
"language_code": "<string>",
"platform": "<string>",
"filters": ["<unknown>"],
"order_by": ["<string>"],
"offset": 123,
"search_after_token": "<string>",
"limit": 123,
"tag": "<string>"
}
]
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify([
{
target: [
{
domain: '<string>',
keyword: '<string>',
search_filter: '<string>',
search_scope: ['<string>'],
include_subdomains: true,
match_type: '<string>'
}
],
location_name: '<string>',
location_code: 123,
language_name: '<string>',
language_code: '<string>',
platform: '<string>',
filters: ['<unknown>'],
order_by: ['<string>'],
offset: 123,
search_after_token: '<string>',
limit: 123,
tag: '<string>'
}
])
};
fetch('https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
[
'target' => [
[
'domain' => '<string>',
'keyword' => '<string>',
'search_filter' => '<string>',
'search_scope' => [
'<string>'
],
'include_subdomains' => true,
'match_type' => '<string>'
]
],
'location_name' => '<string>',
'location_code' => 123,
'language_name' => '<string>',
'language_code' => '<string>',
'platform' => '<string>',
'filters' => [
'<unknown>'
],
'order_by' => [
'<string>'
],
'offset' => 123,
'search_after_token' => '<string>',
'limit' => 123,
'tag' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live"
payload := strings.NewReader("[\n {\n \"target\": [\n {\n \"domain\": \"<string>\",\n \"keyword\": \"<string>\",\n \"search_filter\": \"<string>\",\n \"search_scope\": [\n \"<string>\"\n ],\n \"include_subdomains\": true,\n \"match_type\": \"<string>\"\n }\n ],\n \"location_name\": \"<string>\",\n \"location_code\": 123,\n \"language_name\": \"<string>\",\n \"language_code\": \"<string>\",\n \"platform\": \"<string>\",\n \"filters\": [\n \"<unknown>\"\n ],\n \"order_by\": [\n \"<string>\"\n ],\n \"offset\": 123,\n \"search_after_token\": \"<string>\",\n \"limit\": 123,\n \"tag\": \"<string>\"\n }\n]")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("[\n {\n \"target\": [\n {\n \"domain\": \"<string>\",\n \"keyword\": \"<string>\",\n \"search_filter\": \"<string>\",\n \"search_scope\": [\n \"<string>\"\n ],\n \"include_subdomains\": true,\n \"match_type\": \"<string>\"\n }\n ],\n \"location_name\": \"<string>\",\n \"location_code\": 123,\n \"language_name\": \"<string>\",\n \"language_code\": \"<string>\",\n \"platform\": \"<string>\",\n \"filters\": [\n \"<unknown>\"\n ],\n \"order_by\": [\n \"<string>\"\n ],\n \"offset\": 123,\n \"search_after_token\": \"<string>\",\n \"limit\": 123,\n \"tag\": \"<string>\"\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "[\n {\n \"target\": [\n {\n \"domain\": \"<string>\",\n \"keyword\": \"<string>\",\n \"search_filter\": \"<string>\",\n \"search_scope\": [\n \"<string>\"\n ],\n \"include_subdomains\": true,\n \"match_type\": \"<string>\"\n }\n ],\n \"location_name\": \"<string>\",\n \"location_code\": 123,\n \"language_name\": \"<string>\",\n \"language_code\": \"<string>\",\n \"platform\": \"<string>\",\n \"filters\": [\n \"<unknown>\"\n ],\n \"order_by\": [\n \"<string>\"\n ],\n \"offset\": 123,\n \"search_after_token\": \"<string>\",\n \"limit\": 123,\n \"tag\": \"<string>\"\n }\n]"
response = http.request(request)
puts response.read_body{
"version": "<string>",
"status_code": 123,
"status_message": "<string>",
"time": "<string>",
"cost": 123,
"tasks_count": 123,
"tasks_error": 123,
"tasks": [
"<string>"
],
"tasks.id": "<string>",
"tasks.status_code": 123,
"tasks.status_message": "<string>",
"tasks.time": "<string>",
"tasks.cost": 123,
"tasks.result_count": 123,
"tasks.path": [
"<string>"
],
"tasks.data": {},
"tasks.result": [
"<string>"
],
"tasks.result.total_count": 123,
"tasks.result.current_offset": 123,
"tasks.result.search_after_token": "<string>",
"tasks.result.items_count": 123,
"tasks.result.items": [
"<string>"
],
"tasks.result.items.platform": "<string>",
"tasks.result.items.model_name": "<string>",
"tasks.result.items.location_code": 123,
"tasks.result.items.language_code": "<string>",
"tasks.result.items.question": "<string>",
"tasks.result.items.answer": "<string>",
"tasks.result.items.sources": [
"<string>"
],
"tasks.result.items.sources.snippet": "<string>",
"tasks.result.items.sources.source_name": "<string>",
"tasks.result.items.sources.thumbnail": "<string>",
"tasks.result.items.sources.markdown": "<string>",
"tasks.result.items.sources.position": 123,
"tasks.result.items.sources.title": "<string>",
"tasks.result.items.sources.domain": "<string>",
"tasks.result.items.sources.url": "<string>",
"tasks.result.items.sources.publication_date": "<string>",
"tasks.result.items.search_results": [
"<string>"
],
"tasks.result.items.search_results.description": "<string>",
"tasks.result.items.search_results.breadcrumb": "<string>",
"tasks.result.items.search_results.position": 123,
"tasks.result.items.search_results.title": "<string>",
"tasks.result.items.search_results.domain": "<string>",
"tasks.result.items.search_results.url": "<string>",
"tasks.result.items.search_results.publication_date": "<string>",
"tasks.result.items.ai_search_volume": 123,
"tasks.result.items.monthly_searches": [
"<string>"
],
"tasks.result.items.monthly_searches.year": 123,
"tasks.result.items.monthly_searches.month": 123,
"tasks.result.items.monthly_searches.search_volume": 123,
"tasks.result.items.first_response_at": "<string>",
"tasks.result.items.last_response_at": "<string>",
"tasks.result.items.brand_entities": [
"<string>"
],
"tasks.result.items.brand_entities.position": 123,
"tasks.result.items.brand_entities.title": "<string>",
"tasks.result.items.brand_entities.category": "<string>",
"tasks.result.items.fan_out_queries": [
"<string>"
]
}实时 LLM 提及
助手提到你的目标的那些具体回答。
curl --request POST \
--url https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
[
{
"target": [
{
"domain": "<string>",
"keyword": "<string>",
"search_filter": "<string>",
"search_scope": [
"<string>"
],
"include_subdomains": true,
"match_type": "<string>"
}
],
"location_name": "<string>",
"location_code": 123,
"language_name": "<string>",
"language_code": "<string>",
"platform": "<string>",
"filters": [
"<unknown>"
],
"order_by": [
"<string>"
],
"offset": 123,
"search_after_token": "<string>",
"limit": 123,
"tag": "<string>"
}
]
'import requests
url = "https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live"
payload = [
{
"target": [
{
"domain": "<string>",
"keyword": "<string>",
"search_filter": "<string>",
"search_scope": ["<string>"],
"include_subdomains": True,
"match_type": "<string>"
}
],
"location_name": "<string>",
"location_code": 123,
"language_name": "<string>",
"language_code": "<string>",
"platform": "<string>",
"filters": ["<unknown>"],
"order_by": ["<string>"],
"offset": 123,
"search_after_token": "<string>",
"limit": 123,
"tag": "<string>"
}
]
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify([
{
target: [
{
domain: '<string>',
keyword: '<string>',
search_filter: '<string>',
search_scope: ['<string>'],
include_subdomains: true,
match_type: '<string>'
}
],
location_name: '<string>',
location_code: 123,
language_name: '<string>',
language_code: '<string>',
platform: '<string>',
filters: ['<unknown>'],
order_by: ['<string>'],
offset: 123,
search_after_token: '<string>',
limit: 123,
tag: '<string>'
}
])
};
fetch('https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
[
'target' => [
[
'domain' => '<string>',
'keyword' => '<string>',
'search_filter' => '<string>',
'search_scope' => [
'<string>'
],
'include_subdomains' => true,
'match_type' => '<string>'
]
],
'location_name' => '<string>',
'location_code' => 123,
'language_name' => '<string>',
'language_code' => '<string>',
'platform' => '<string>',
'filters' => [
'<unknown>'
],
'order_by' => [
'<string>'
],
'offset' => 123,
'search_after_token' => '<string>',
'limit' => 123,
'tag' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live"
payload := strings.NewReader("[\n {\n \"target\": [\n {\n \"domain\": \"<string>\",\n \"keyword\": \"<string>\",\n \"search_filter\": \"<string>\",\n \"search_scope\": [\n \"<string>\"\n ],\n \"include_subdomains\": true,\n \"match_type\": \"<string>\"\n }\n ],\n \"location_name\": \"<string>\",\n \"location_code\": 123,\n \"language_name\": \"<string>\",\n \"language_code\": \"<string>\",\n \"platform\": \"<string>\",\n \"filters\": [\n \"<unknown>\"\n ],\n \"order_by\": [\n \"<string>\"\n ],\n \"offset\": 123,\n \"search_after_token\": \"<string>\",\n \"limit\": 123,\n \"tag\": \"<string>\"\n }\n]")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("[\n {\n \"target\": [\n {\n \"domain\": \"<string>\",\n \"keyword\": \"<string>\",\n \"search_filter\": \"<string>\",\n \"search_scope\": [\n \"<string>\"\n ],\n \"include_subdomains\": true,\n \"match_type\": \"<string>\"\n }\n ],\n \"location_name\": \"<string>\",\n \"location_code\": 123,\n \"language_name\": \"<string>\",\n \"language_code\": \"<string>\",\n \"platform\": \"<string>\",\n \"filters\": [\n \"<unknown>\"\n ],\n \"order_by\": [\n \"<string>\"\n ],\n \"offset\": 123,\n \"search_after_token\": \"<string>\",\n \"limit\": 123,\n \"tag\": \"<string>\"\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "[\n {\n \"target\": [\n {\n \"domain\": \"<string>\",\n \"keyword\": \"<string>\",\n \"search_filter\": \"<string>\",\n \"search_scope\": [\n \"<string>\"\n ],\n \"include_subdomains\": true,\n \"match_type\": \"<string>\"\n }\n ],\n \"location_name\": \"<string>\",\n \"location_code\": 123,\n \"language_name\": \"<string>\",\n \"language_code\": \"<string>\",\n \"platform\": \"<string>\",\n \"filters\": [\n \"<unknown>\"\n ],\n \"order_by\": [\n \"<string>\"\n ],\n \"offset\": 123,\n \"search_after_token\": \"<string>\",\n \"limit\": 123,\n \"tag\": \"<string>\"\n }\n]"
response = http.request(request)
puts response.read_body{
"version": "<string>",
"status_code": 123,
"status_message": "<string>",
"time": "<string>",
"cost": 123,
"tasks_count": 123,
"tasks_error": 123,
"tasks": [
"<string>"
],
"tasks.id": "<string>",
"tasks.status_code": 123,
"tasks.status_message": "<string>",
"tasks.time": "<string>",
"tasks.cost": 123,
"tasks.result_count": 123,
"tasks.path": [
"<string>"
],
"tasks.data": {},
"tasks.result": [
"<string>"
],
"tasks.result.total_count": 123,
"tasks.result.current_offset": 123,
"tasks.result.search_after_token": "<string>",
"tasks.result.items_count": 123,
"tasks.result.items": [
"<string>"
],
"tasks.result.items.platform": "<string>",
"tasks.result.items.model_name": "<string>",
"tasks.result.items.location_code": 123,
"tasks.result.items.language_code": "<string>",
"tasks.result.items.question": "<string>",
"tasks.result.items.answer": "<string>",
"tasks.result.items.sources": [
"<string>"
],
"tasks.result.items.sources.snippet": "<string>",
"tasks.result.items.sources.source_name": "<string>",
"tasks.result.items.sources.thumbnail": "<string>",
"tasks.result.items.sources.markdown": "<string>",
"tasks.result.items.sources.position": 123,
"tasks.result.items.sources.title": "<string>",
"tasks.result.items.sources.domain": "<string>",
"tasks.result.items.sources.url": "<string>",
"tasks.result.items.sources.publication_date": "<string>",
"tasks.result.items.search_results": [
"<string>"
],
"tasks.result.items.search_results.description": "<string>",
"tasks.result.items.search_results.breadcrumb": "<string>",
"tasks.result.items.search_results.position": 123,
"tasks.result.items.search_results.title": "<string>",
"tasks.result.items.search_results.domain": "<string>",
"tasks.result.items.search_results.url": "<string>",
"tasks.result.items.search_results.publication_date": "<string>",
"tasks.result.items.ai_search_volume": 123,
"tasks.result.items.monthly_searches": [
"<string>"
],
"tasks.result.items.monthly_searches.year": 123,
"tasks.result.items.monthly_searches.month": 123,
"tasks.result.items.monthly_searches.search_volume": 123,
"tasks.result.items.first_response_at": "<string>",
"tasks.result.items.last_response_at": "<string>",
"tasks.result.items.brand_entities": [
"<string>"
],
"tasks.result.items.brand_entities.position": 123,
"tasks.result.items.brand_entities.title": "<string>",
"tasks.result.items.brand_entities.category": "<string>",
"tasks.result.items.fan_out_queries": [
"<string>"
]
}total_count、current_offset、search_after_token 和 items——翻过前几页后用 token 翻页而不是 offset。单条实测 7.7 KB。⚠️ target 是对象数组,每项形如 {"domain": "..."} 或 {"keyword": "..."};传裸字符串会被判类型错,传字符串数组会报「Each target item must be an object」。过滤字段见 get_dataforseo_ai_llm_mentions_available_filters。 响应包在信封里:数据在 tasks[0].result,成败在 tasks[0].status_code——请求被拒时 HTTP 仍是 200。 要计数而不是回答本身,用 post_dataforseo_ai_llm_mentions_aggregated_metrics_live。
示例
curl -X POST "https://api.aisa.one/apis/v1/dataforseo/ai_optimization/llm_mentions/search/live" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '[{"target": "...", "domain_entity": "...", "domain": "..."}]'
// 把整段复制给 Claude Code、Codex、Cursor 或任意 coding agent。
// 连接、授权、跑通这个例子需要的东西都在里面 ——
// 不用粘贴任何 key,浏览器里点一次 Allow 就好。
{
"operation_id": "post_dataforseo_ai_llm_mentions_search_live",
"arguments": {},
"max_price_usd": 0.05
}
// ── for the agent ─────────────────────────────────────────────────────────
// Register the AIsa MCP server, then call its `use` tool with the JSON above.
// name aisa
// endpoint https://mcp.aisa.one/mcp
// transport streamable-http
// auth OAuth. The server publishes RFC 9728 metadata, so open a
// browser and the user clicks Allow once — nothing to paste.
// If AISA_API_KEY is set, send it as a bearer header instead.
// Use your own MCP mechanism, not a hand-edited config file:
// Codex codex mcp add aisa --url https://mcp.aisa.one/mcp
// Claude Code claude mcp add --transport http -s user aisa https://mcp.aisa.one/mcp
// Cursor / VS Code a "url" entry for https://mcp.aisa.one/mcp in the MCP config
// The server lists five tools over https://mcp.aisa.one/servers worth of APIs:
// search, get_details, use, batch_use, list_categories. search and
// get_details are free; use is billed per call and max_price_usd refuses
// anything above the cap before spending. This operation's full contract —
// every argument, the response shape, the price and the pitfalls — is at
// https://aisa.one/docs/zh/api-reference/dataforseo/post_dataforseo-ai-optimization-llm-mentions-search-live.md
// Then run the call and show me the result.
https://mcp.aisa.one/mcp —— Claude Code、
Codex、Cursor、VS Code 都可以。鉴权走 OAuth:客户端打开浏览器,你点一次
Allow,不需要粘贴任何 key。各客户端的具体命令和每次调用的价格见
aisa.one/zh-cn/mcp。授权
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
请求体
包含目标实体的对象数组,必填字段。您最多可以在 target 字段中指定 10 个实体(对象)。一个目标实体可以包含一个 domain 或一个 keyword 以及相关参数。示例:包含 domain 实体的 target 数组 [{"domain": "en.wikipedia.org", "search_filter": "exclude"}];包含 keyword 实体的 target 数组 [{"keyword": "bmw", "search_scope": ["question"], "match_type ": "partial_match"}];包含多个实体的 target 数组 [{"domain": "en.wikipedia.org", "search_filter": "exclude"}, {"keyword": "bmw", "match_type ": "partial_match", "search_scope": ["answer"]}]
- Option 1
- Option 2
Show child attributes
Show child attributes
搜索位置的完整名称,可选字段。如果使用此字段,则无需指定 location_code。如果未指定此字段,默认使用值为 2840 的 location_code;您可以单独向 https://api.dataforseo.com/v3/ai_optimization/llm_mentions/locations_and_languages 发出请求,以获取搜索引擎可用位置及其 location_name 的列表。注意:chat_gpt 数据仅适用于 United States
搜索位置代码,可选字段。如果使用此字段,则无需指定 location_name。可通过向 https://api.dataforseo.com/v3/ai_optimization/llm_mentions/locations_and_languages 单独发送请求,获取搜索引擎的可用位置及其 location_code。默认值:2840。注意:chat_gpt 数据仅适用于 2840
搜索语言的完整名称,可选字段;如果使用此字段,则无需指定 language_code;如果未指定此字段,将默认使用值为 en 的 language_code;你可以单独请求 https://api.dataforseo.com/v3/ai_optimization/llm_mentions/locations_and_languages,以获取搜索引擎可用语言及其 language_name 的列表。注意:chat_gpt 数据仅支持英语
搜索语言代码,可选字段。如果使用此字段,则无需指定 language_name;可通过向 https://api.dataforseo.com/v3/ai_optimization/llm_mentions/locations_and_languages 单独发送请求,获取搜索引擎的可用语言及其 language_code_by。默认值:en。注意:chat_gpt 数据仅适用于 en onlyn
目标平台。可选字段。可能的值:chat_gpt、google。默认值:google。注意:返回的数据取决于所选平台。注意 #2:chat_gpt 数据仅适用于美国和英语
结果筛选参数数组,可选字段;可以同时添加多个筛选条件(最多 8 个筛选条件);应在条件之间设置逻辑运算符 and、or;支持以下运算符:=, , in, not_in, like, not_like, ilike, not_ilike, match, not_match;可以将 % 运算符与 like 和 not_like 配合使用,以匹配由零个或多个字符组成的任意字符串;示例:["ai_search_volume",">","1000"]所有可用筛选条件的完整列表可在此处查看。
结果排序规则,可选字段。你可以使用与 filters 数组中相同的值对结果进行排序。可用的排序类型:asc - 结果将按升序排列;desc - 结果将按降序排列。你应使用逗号设置排序类型,例如:["ai_search_volume,desc"]。请注意,单个请求中最多可以设置三条排序规则。你应使用逗号分隔多条排序规则。
返回的提及数据中 results 数组的偏移量,可选字段。默认值:0。示例:如果指定值 10,results 数组中的前十个提及对象将被忽略,并提供后续对象的数据。注意:最大值为 9,000;如果需要偏移更多结果,请使用 search_after_token
用于后续请求的 token;可选字段;每个请求的响应中都会在同名字段中提供;尝试通过单次请求获取超过 20,000 条结果时,请使用此参数以避免超时;通过指定响应数组中的唯一 search_after_token 值,您将获得初始任务的后续结果;每个后续任务的 search_after_token 值都是唯一的;注意:如果请求中指定了 search_after_token,则所有其他参数都应与上一个请求保持一致
返回对象的最大数量,可选字段,默认值:100,最大值:1000
用户定义的任务标识符。可选字段。字符数限制为 255。您可以使用此参数标识任务并将其与结果匹配;您将在响应的 data 对象中找到指定的 tag 值
响应
成功响应
API 的当前版本
通用状态码;您可以在此处查看完整的响应码列表。注意:我们强烈建议设计必要的系统来处理相关异常或错误情况
常规信息消息;可在此处查看常规信息消息的完整列表
执行时间(秒)
任务总成本(美元)
tasks 数组中的任务数量
返回错误的 tasks 数组中的任务数量
任务数组
任务标识符,系统中采用 UUID 格式的唯一任务标识符
DataForSEO 生成的任务状态码;范围为:10000-60000;完整响应代码列表可在此处查看
任务的信息性消息,你可以在此处查看通用信息性消息的完整列表
执行时间(秒)
任务成本(美元)
结果数组中的元素数量
URL 路径
包含您在 POST 请求中指定的相同参数
结果数组
与请求相关的结果总数
items 数组中省略的 mentions 对象数量
后续请求的 token。在设置新任务时指定唯一的 search_after_token,即可获取初始任务的后续结果;每个后续任务的 search_after_token 值都是唯一的
items 数组中返回的结果数量
包含相关提及数据
在 POST 数组中接收的平台
数据来源的 AI 模型名称。注意:对于 google 平台类型,该值始终为 google_ai_overview
POST 数组中的位置代码
POST 数组中的语言代码
相关问题
Markdown 格式的相关答案,即使用 Markdown 标记语言格式化的结果内容
来源数组,包含模型在最终回答中引用或依赖的来源
来源描述
来源名称
来源缩略图
Markdown 格式的元素内容,即使用 Markdown 标记语言格式化的结果内容
在结果中的位置
来源标题
来源域名
来源 URL
结果发布日期和时间,格式为:“年-月-日 时:分:秒 UTC_时差小时数:UTC_时差分钟数”,示例:2019-11-15 12:57:46 +00:00
搜索结果数组,包含模型在查找信息时检索到的所有网页搜索输出,包括重复项和未使用的条目
结果描述
面包屑导航
在结果中的位置
结果标题
结果域名
结果 URL
结果发布日期和时间,格式为:“年-月-日 时:分:秒 UTC_时差小时数:UTC_时差分钟数”,示例:2019-11-15 12:57:46 +00:00
关键词当前的 AI 搜索量比率;在此处了解有关此指标的更多信息
每月 AI 搜索量比率,由对象组成的数组,包含某年特定月份的 AI 搜索量比率
年
月
某年特定月份的 AI 搜索量比率;可在此处详细了解此指标
响应数据首次记录的日期和时间,采用 UTC 格式:“yyyy-mm-dd hh-mm-ss +00:00” 示例:2025-10-21 06:25:30 +00:00
响应数据上次更新的日期和时间,采用 UTC 格式:“yyyy-mm-dd hh-mm-ss +00:00”;示例:2025-10-21 06:25:30 +00:00
品牌实体数组,包含响应中提及的品牌信息
在结果中的位置
品牌名称
品牌类别
扩展查询数组,包含从主查询派生的相关搜索查询,以提供更全面的响应