DataForSEO
SEO, search-engine results, keyword research, backlinks and AI visibility data.
設定 Google 自然搜尋 SERP 任務
將 Google 上某個關鍵字的排名結果排入佇列,在 tasks[0].id 中傳回任務 id。採用 DataForSEO 的信封結構:資料位於 tasks[0].result,結果狀態位於 tasks[0].status_code——被拒絕的請求仍會回傳 HTTP 200。即時版本會立即回應,對單次查詢更簡單;當批次作業會超過一次工具呼叫的時間時,請使用佇列。
計費參考
- 計量方式:依回報的回應成本計量。
- 參考請求估算:0.02 美元。
- 參考客戶倍率:1.0。不得對已結算的客戶金額再次套用。
僅供參考的中繼資料,並非帳戶報價、保證價格或消費上限。資源額度並非 Felo 額度。最終費用依 Felo 計費記錄為準。
- 類型: array (object | null)[]
- browser類型: integer | null
_screen _height 瀏覽器螢幕高度
選填欄位
你可以為特定裝置設定自訂瀏覽器螢幕高度,以計算像素排名;
可指定範圍:
240-9999;依預設,該參數設為:
1080(desktop);640(mobile,android);812(mobile,iOS);注意:要使用此參數,請將
calculate_rectangles設為true - browser類型: integer | null
_screen _resolution _ratio 瀏覽器螢幕解析度比例
選填欄位
你可以為特定裝置設定自訂瀏覽器螢幕解析度比例,以計算像素排名;
可指定範圍:
0.5-3;依預設,該參數設為:
1(desktop);3(mobile,android);3(mobile,iOS);注意:要使用此參數,請將
calculate_rectangles設為true - browser類型: integer | null 格式: int64
_screen _width 瀏覽器螢幕寬度
選填欄位
你可以為特定裝置設定自訂瀏覽器螢幕寬度,以計算像素排名;
可指定範圍:
240-9999;依預設,該參數設為:
1920(desktop);360(mobile,android);375(mobile,iOS);注意:要使用此參數,請將
calculate_rectangles設為true - calculate類型: boolean | null
_rectangles - depth類型: integer | null
解析深度
選填欄位
SERP 中的結果數量
預設值:
10最大值:
700
帳戶將按每個最多包含 10 筆結果的 SERP 計費;將深度設為 10 以上可能會產生額外費用(如果搜尋引擎傳回超過 10 筆結果);
費用可在 定價頁計算。
- device類型: string | null
裝置類型
選填欄位
傳回特定裝置類型的結果
可取的值為:
desktop、mobile預設值:
desktop - expand類型: boolean | null
_ai _overview - find類型: array string[] | null
_targets _in 要檢查目標的 SERP 元素類型
選填欄位
要啟用此參數,還必須啟用
stop_crawl_on_match指定應檢查哪些 SERP 元素類型以比對目標
如果未指定,將檢查所有帶有
url和domain欄位的第一層元素是否比對目標可取的值:
organic、paid、local_pack、featured_snippet、events、google_flights、images、jobs、knowledge_graph、local_service、map、scholarly_articles、third_party_reviews、twitter注意:不能包含與
ignore_targets_in相同的元素類型範例:
"find_targets_in": ["organic", "featured_snippet"]詳情請參閱我們說明中心中的此參數說明
- group類型: boolean | null
_organic _results 顯示相關結果
選填欄位
如果設為
true,回應中的related_result元素將作為其父層自然結果的摘要提供;如果設為
false,related_result元素將作為個別的自然結果提供;預設值:
true - ignore類型: array string[] | null
_targets _in 要從目標搜尋中排除的 SERP 元素類型
選填欄位
要啟用此參數,還必須啟用
stop_crawl_on_match指定在搜尋目標比對時應排除哪些 SERP 元素類型
可取的值:
organic、paid、local_pack、featured_snippet、events、google_flights、images、jobs、knowledge_graph、local_service、map、scholarly_articles、third_party_reviews、twitter注意:不能包含與
find_targets_in相同的元素類型範例:
"ignore_targets_in": ["paid", "images"]詳情請參閱我們說明中心中的此參數說明
- keyword類型: string
關鍵字
必填欄位
在
keyword欄位中最多可指定 700 個字元所有 %## 都將被解碼(另外,字元 ‘+’ 會被解碼為空格字元)
如果需要在
keyword中使用 “%” 字元,請將其指定為 “%25”;如果需要在
keyword中使用 “+” 字元,請將其指定為 “%2B”;如果此欄位包含 ‘allinanchor:’、‘allintext:’、‘allintitle:’、‘allinurl:’、‘cache:’、‘define:’、‘filetype:’、‘id:’、‘inanchor:’、‘info:’、‘intext:’、‘intitle:’、‘inurl:’、‘link:’、‘site:’,每個任務的費用將乘以 5
有關 DataForSEO API 中
keyword與keywords欄位的規則與限制,請參閱這篇說明中心文章 - language類型: string
_code 搜尋引擎語言代碼
未指定
language_name時為必填欄位如果使用此欄位,則無需指定
language_name可個別向
https://api.dataforseo.com/v3/serp/google/languages發出請求,取得搜尋引擎的可用語言及其language_code清單範例:
en - language類型: string
_name 搜尋引擎語言全名
未指定
language_code時為必填欄位如果使用此欄位,則無需指定
language_code可個別向
https://api.dataforseo.com/v3/serp/google/languages發出請求,取得搜尋引擎的可用語言及其language_name清單範例:
English - load類型: boolean | null
_async _ai _overview 載入非同步 AI 概覽
選填欄位
設為
true以取得 SERP 中的ai_overview項目,即使它們是非同步載入的;如果設為
false,你將只能從快取中取得ai_overview項目;預設值:
false注意:使用此參數將額外收取 $0.0006;
如果該元素不存在或包含
"asynchronous_ai_overview": false,所有額外費用將退還至你的帳戶餘額 - location類型: integer
_code 搜尋引擎地點代碼
未指定
location_name或location_coordinate時為必填欄位如果使用此欄位,則無需指定
location_name或location_coordinate可個別向
https://api.dataforseo.com/v3/serp/google/locations發出請求,取得搜尋引擎的可用地點及其location_code清單範例:
2840 - location類型: string
_coordinate 地點的 GPS 座標
未指定
location_name或location_code時為必填欄位如果使用此欄位,則無需指定
location_name或location_codelocation_coordinate參數應採用 "latitude,longitude,radius" 格式"latitude" 與 "longitude" 的最大小數位數:7
"radius" 的最小值:199(mm)
"radius" 的最大值:199999(mm)
範例:
53.476225,-2.243572,200 - location類型: string
_name 搜尋引擎地點全名
未指定
location_code或location_coordinate時為必填欄位如果使用此欄位,則無需指定
location_code或location_coordinate可個別向
https://api.dataforseo.com/v3/serp/google/locations發出請求,取得搜尋引擎的可用地點及其location_name清單範例:
London,England,United Kingdom - match類型: string
_type 目標比對類型
指定
stop_crawl_on_match時為必填欄位match_value的比對類型可取的值:
domain– 特定網域或子網域with_subdomains– 主網域和子網域wildcard– 萬用字元模式 - match類型: string
_value 目標網域、子網域或萬用字元值
指定
stop_crawl_on_match時為必填欄位指定目標網域、子網域或萬用字元值;
注意:網域或子網域指定時不得包含請求通訊協定;
範例:
"match_value": "dataforseo.com","match_value": "/blog/post-*" - max類型: integer | null
_crawl _pages - os類型: string | null
裝置作業系統
選填欄位
如果在
device欄位中指定desktop,請從以下值中選擇:windows、macos預設值:
windows如果在
device欄位中指定mobile,請從以下值中選擇:android、ios預設值:
android - people類型: integer | null
_also _ask _click _depth 相應元素上的點擊次數
選填欄位
指定
people_also_ask元素上的點擊深度,以取得額外的people_also_ask_element項目;注意 你的帳戶將按每次點擊額外計費 $0.00015,無論任務優先順序為何;
如果該元素不存在或我們執行的點擊次數少於你指定的次數,所有額外費用將退還至你的帳戶餘額
可取的值:
1到4 - pingback類型: string | null
_url 任務完成通知 URL
選填欄位
任務完成後,我們會向你指定的 URL 傳送 GET 請求進行通知
可將 ‘$id’ 字串用作
$id變數,將 ‘$tag’ 用作經 URL 編碼的$tag變數。傳送請求前我們會設定必要的值。範例:
http://your-server.com/pingscript?id=$idhttp://your-server.com/pingscript?id=$id&tag=$tag注意:
pingback_url中的特殊字元會進行 URL 編碼;例如,
#字元會編碼為%23
詳情請參閱我們的說明中心
- postback類型: string
_data postback_url 資料類型
指定
postback_url時為必填欄位對應於將傳送至你伺服器的資料類型
可取的值為:
regular、advanced、html - postback類型: string | null
_url 用於傳送任務結果的 URL
選填欄位
任務完成後,我們會將結果以
gzip格式壓縮,並向你指定的postback_url傳送 POST 請求可將 ‘$id’ 字串用作
$id變數,將 ‘$tag’ 用作經 URL 編碼的$tag變數。傳送請求前我們會設定必要的值範例:
http://your-server.com/postbackscript?id=$idhttp://your-server.com/postbackscript?id=$id&tag=$tag注意:
postback_url中的特殊字元會進行 URL 編碼;例如,
#字元會被編碼為%23
詳情請參閱我們的 說明中心
- priority類型: integer | null
- remove類型: array string[] | null
_from _url 從 URL 中移除特定參數
選填欄位
使用此欄位,最多可指定 10 個要從結果 URL 中移除的參數
範例:
"remove_from_url": ["srsltid"] - se類型: string | null
_domain 搜尋引擎網域
選填欄位
我們會根據你指定的地點和語言自動選擇相關的搜尋引擎網域
不過,你也可以在此欄位中設定自訂搜尋引擎網域
範例:
google.co.uk, google.com.au, google.de等。 - search類型: string | null
_param 搜尋查詢的附加參數
選填欄位
注意:以下搜尋引擎參數不受支援,如果指定將被自動取消:lr、cr、as_qdr、as_sitesearch、as_occt、as_filetype。 - stop類型: array (object | null)[] | null
_crawl _on _match 用於停止爬取的目標陣列 選填欄位 如果指定,回應將包含截至並包括指定 match_value 的 SERP 結果; 此陣列中最多可指定 10 個目標值 範例: "stop_crawl_on_match":[{"match_value":"dataforseo.com","match_type":"with_subdomains"}] 可在我們的說明中心瞭解此參數 - https://dataforseo.com/help-center/using-the-stop_crawl_on_match-parameter-in-serp-api 你的帳戶將按透過指定目標爬取的每個 SERP 計費
- match類型: string | null
_type 目標比對類型 指定 stop_crawl_on_match 時為必填欄位; match_value 的比對類型 可能的值:domain、with_subdomains、wildcard
- match類型: string | null
_value 目標網域或萬用字元值 指定 stop_crawl_on_match 時為必填欄位; 指定目標網域或萬用字元值; 注意:網域名稱必須不含請求協定; 範例:dataforseo.com
- tag類型: string | null
使用者自訂任務識別碼
選填欄位
字元數上限為 255
可使用此參數識別任務,並將其與結果對應
指定的
tag值可在回應的data物件中找到 - target類型: string | null
_search _mode 目標比對模式
選填欄位
要啟用此參數,還必須啟用
stop_crawl_on_match定義在
stop_crawl_on_match中指定多個目標時,爬取應如何停止可能的值:
all、anyall– 僅當找到所有指定目標時,爬取才停止any– 找到任意單一目標時,爬取即停止預設值:
any詳情請參閱我們 說明中心中的此參數說明
- url類型: string | null
搜尋查詢的直接 URL
選填欄位
你可以指定一個直接 URL,我們會將其解析為必要欄位。請注意,此方法對我們的 API 而言處理難度最高,且要求你在 URL 中指定確切的語言和地點。大多數情況下,我們不建議使用此方法。
範例:
https://www.google.co.uk/search?q=%20rank%20tracker%20api&hl=en&gl=GB&uule=w+CAIQIFISCXXeIa8LoNhHEZkq1d1aOpZS
注意:以下搜尋引擎參數不受支援,如果在 URL 中指定將被自動取消:lr、cr、as_qdr、as_sitesearch、as_occt、as_filetype。
- 類型: object | null · Response36Afe1097B20_SerpGoogleOrganicTaskPostResponseInfo200
- 類型: number | null 格式: doublecost
任務總費用,美元
- 類型: integer | nullstatus
_code 一般狀態碼 完整回應碼清單請見此處
- 類型: string | nullstatus
_message 一般資訊訊息 完整的一般資訊訊息清單請見此處
- 類型: array (object | null)[] | nulltasks
任務陣列
- 類型: object | null · Response36Afe1097B20_SerpGoogleOrganicTaskPostTaskInfo
- cost類型: number | null 格式: double
任務總費用,美元
- data類型: object | null
包含你在 POST 請求中指定的相同參數
- property類型: object | null
Name
- id類型: string | null
任務識別碼 我們系統中 UUID 格式的唯一任務識別碼
- path類型: array (string | null)[] | null
URL 路徑
- result類型: object | null
結果陣列
在此情況下,該值將為null - result類型: integer | null 格式: int64
_count result 陣列中的元素數
- status類型: integer | null
_code 任務的狀態碼 由 DataForSEO 產生,範圍如下:10000-60000 完整回應碼清單請見此處
- status類型: string | null
_message 任務的資訊訊息 完整的一般資訊訊息清單請見此處
- time類型: string | null
執行時間,秒
- 類型: integer | null 格式: int64tasks
_count tasks 陣列中的任務數
- 類型: integer | null 格式: int64tasks
_error tasks 陣列中傳回錯誤的任務數
- 類型: string | nulltime
總執行時間,秒
- 類型: string | nullversion
API 的目前版本
application/json - 400
無法處理該要求。請檢查請求參數。
- 401
需要有效的 Felo API 金鑰。
- 402
由於未符合計費要求,要求無法繼續。
- 403
該帳戶無權執行此操作。
- 429
已達到要求或支出上限。
- 502
服務無法完成該要求。
- 503
API 或計費服務暫時無法使用。
- 504
服務在處理要求時逾時。
- default
錯誤回應;上游透傳回應可能採用供應商格式
application/json
curl https://openapi.felo.ai/v1/beta/dataforseo/serp/google/organic/task_post \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '[
{
"language_code": "en",
"location_code": 2840,
"keyword": "albert einstein"
},
{
"language_name": "English",
"location_name": "United States",
"keyword": "albert einstein",
"priority": 2,
"tag": "some_string_123",
"pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag"
},
{
"url": "https://www.google.co.uk/search?q=albert%20einstein&hl=en&gl=GB&uule=w+CAIQIFISCXXeIa8LoNhHEZkq1d1aOpZS",
"postback_data": "html",
"postback_url": "https://your-server.com/postbackscript"
}
]'
{
"version": null,
"status_code": null,
"status_message": null,
"time": null,
"cost": null,
"tasks_count": null,
"tasks_error": null,
"tasks": [
{
"id": null,
"status_code": null,
"status_message": null,
"time": null,
"cost": null,
"result_count": null,
"path": [
null
],
"data": null,
"result": null
}
]
}