Naver organic search results for a keyword (async task)
dataforseo.x.serp-naver-organic-task-postNaver SERP API provides top 15 search engine results.
- Price
- $0.0006/callAt list price
- Success rate
- —No success-rate data yetNo success-rate data yet
- Latency p50
- ——
- Last verified
- Jul 28, 2026Verified working
POSThttps://toolswitch.dev/v1/tools/dataforseo.x.serp-naver-organic-task-postBeta- Uses platform quota
- Asynchronous response
- Reads public data
Parameters
the POST body is a JSON array of up to 100 task objects with these fields, one per task; read each task's result (tasks[].id) with dataforseo.x.serp-naver-organic-task-get-advanced, which only the submitting team can read
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
| Request body (JSON) | ||||
os | string | Optional | device operating system optional field if you specify desktop in the device field, choose from the following values: windows, macos default value: windows if you specify mobile in the device field, choose from the following values: android, ios default value: android | |
tag | string | Optional | user-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response | some_string_123 |
url | string | Optional | direct URL of the search query optional field you can specify a direct URL and we will sort it out to the necessary fields in most cases, we wouldn’t recommend using this method; example: https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=1&ie=utf8&query=iphone | |
depth | integer | Optional | parsing depth optional field number of results in SERP default value: 15 max value: 700 Your account will be billed per each SERP containing up to 15 results; Setting depth above 15 may result in additional charges if the search engine returns more than 15 results; The cost can be calculated on the | |
device | string | Optional | device type optional field return results for a specific device type can take the values:desktop, mobile default value: desktop | desktop |
keyword | string | Optional | keyword required field you can specify up to 700 characters in the keyword field all %## will be decoded (plus character ‘+’ will be decoded to a space character) if you need to use the “%” character for your keyword, please specify it as “%25”; if you need to use the “+” character for your keyword, | albert einstein |
priority | integer | Optional | task priority optional field can take the following values: 1 – normal execution priority (set by default) 2 – high execution priority You will be additionally charged for the tasks with high execution priority. The cost can be calculated on the Pricing page. | |
se_domain | string | Optional | search engine domain optional field we choose the relevant search engine domain automatically however, you can set a custom search engine domain in this field example: search.naver.com | |
match_type | string | Optional | target match type required field if stop_crawl_on_match is specified type of match for the match_value possible values: domain – specific domain or subdomain with_subdomains – main domain and subdomains wildcard – wildcard pattern | |
match_value | string | Optional | target domain, subdomain, or wildcard value required field if stop_crawl_on_match is specified specify a target domain, subdomain, or wildcard value; Note: domain or subdomain must be specified without a request protocol; example: "match_value": "dataforseo.com", "match_value": "/blog/post-*" | |
pingback_url | string | Optional | notification URL of a completed task optional field when a task is completed we will notify you by GET request sent to the URL you have specified you can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values before sending the request. exampl | |
postback_url | string | Optional | URL for sending task results optional field once the task is completed, we will send a POST request with its results compressed in the gzip format to the postback_url you specified you can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values | https://your-server.com/postbackscript.php |
search_param | string | Optional | additional parameters of the search query optional field get the list of available parameters and additional details here | |
postback_data | string | Optional | postback_url datatype required field if you specify postback_url corresponds to the function you used for setting a task possible values: regular, advanced, html | regular |
max_crawl_pages | integer | Optional | page crawl limit optional field number of search results pages to crawl default value: 1 max value: 100 Note: the max_crawl_pages and depth parameters complement each other; learn more at our help center | |
stop_crawl_on_match | array | Optional | array of targets to stop crawling optional field if specified, the response will contain SERP results up to and including the specified match_value; you can specify up to 10 target values in this array example: "stop_crawl_on_match":[{"match_value":"dataforseo.com","match_type":"with_subdomains"}] l | |
- Request body (JSON)
osstringOptionaldevice operating system optional field if you specify desktop in the device field, choose from the following values: windows, macos default value: windows if you specify mobile in the device field, choose from the following values: android, ios default value: android
tagstringOptionaluser-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response
Example:
some_string_123urlstringOptionaldirect URL of the search query optional field you can specify a direct URL and we will sort it out to the necessary fields in most cases, we wouldn’t recommend using this method; example: https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=1&ie=utf8&query=iphone
depthintegerOptionalparsing depth optional field number of results in SERP default value: 15 max value: 700 Your account will be billed per each SERP containing up to 15 results; Setting depth above 15 may result in additional charges if the search engine returns more than 15 results; The cost can be calculated on the
devicestringOptionaldevice type optional field return results for a specific device type can take the values:desktop, mobile default value: desktop
Example:
desktopkeywordstringOptionalkeyword required field you can specify up to 700 characters in the keyword field all %## will be decoded (plus character ‘+’ will be decoded to a space character) if you need to use the “%” character for your keyword, please specify it as “%25”; if you need to use the “+” character for your keyword,
Example:
albert einsteinpriorityintegerOptionaltask priority optional field can take the following values: 1 – normal execution priority (set by default) 2 – high execution priority You will be additionally charged for the tasks with high execution priority. The cost can be calculated on the Pricing page.
se_domainstringOptionalsearch engine domain optional field we choose the relevant search engine domain automatically however, you can set a custom search engine domain in this field example: search.naver.com
match_typestringOptionaltarget match type required field if stop_crawl_on_match is specified type of match for the match_value possible values: domain – specific domain or subdomain with_subdomains – main domain and subdomains wildcard – wildcard pattern
match_valuestringOptionaltarget domain, subdomain, or wildcard value required field if stop_crawl_on_match is specified specify a target domain, subdomain, or wildcard value; Note: domain or subdomain must be specified without a request protocol; example: "match_value": "dataforseo.com", "match_value": "/blog/post-*"
pingback_urlstringOptionalnotification URL of a completed task optional field when a task is completed we will notify you by GET request sent to the URL you have specified you can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values before sending the request. exampl
postback_urlstringOptionalURL for sending task results optional field once the task is completed, we will send a POST request with its results compressed in the gzip format to the postback_url you specified you can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values
Example:
https://your-server.com/postbackscript.phpsearch_paramstringOptionaladditional parameters of the search query optional field get the list of available parameters and additional details here
postback_datastringOptionalpostback_url datatype required field if you specify postback_url corresponds to the function you used for setting a task possible values: regular, advanced, html
Example:
regularmax_crawl_pagesintegerOptionalpage crawl limit optional field number of search results pages to crawl default value: 1 max value: 100 Note: the max_crawl_pages and depth parameters complement each other; learn more at our help center
stop_crawl_on_matcharrayOptionalarray of targets to stop crawling optional field if specified, the response will contain SERP results up to and including the specified match_value; you can specify up to 10 target values in this array example: "stop_crawl_on_match":[{"match_value":"dataforseo.com","match_type":"with_subdomains"}] l
Code samples
Replace $TOOLSWITCH_KEY with the key you created in the console.
curl -X POST 'https://toolswitch.dev/v1/tools/dataforseo.x.serp-naver-organic-task-post' \
-H "X-Toolswitch-Key: $TOOLSWITCH_KEY" \
-H "Content-Type: application/json" \
--data-raw '[{"tag":"some_string_123","device":"desktop","keyword":"albert einstein","postback_url":"https://your-server.com/postbackscript.php","postback_data":"regular"}]'import os
import json
import requests
response = requests.request(
"POST",
"https://toolswitch.dev/v1/tools/dataforseo.x.serp-naver-organic-task-post",
headers={"X-Toolswitch-Key": os.environ["TOOLSWITCH_KEY"]},
json=json.loads("[{\"tag\":\"some_string_123\",\"device\":\"desktop\",\"keyword\":\"albert einstein\",\"postback_url\":\"https://your-server.com/postbackscript.php\",\"postback_data\":\"regular\"}]"),
)
response.raise_for_status()
print(response.text)const response = await fetch("https://toolswitch.dev/v1/tools/dataforseo.x.serp-naver-organic-task-post", {
method: "POST",
headers: {
"X-Toolswitch-Key": process.env.TOOLSWITCH_KEY ?? "",
"Content-Type": "application/json",
},
body: JSON.stringify(JSON.parse("[{\"tag\":\"some_string_123\",\"device\":\"desktop\",\"keyword\":\"albert einstein\",\"postback_url\":\"https://your-server.com/postbackscript.php\",\"postback_data\":\"regular\"}]")),
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
console.log(await response.text());This gateway API is in beta; its URL and authentication may change. The example parameters are sample data. Calls are billed at $0.0006/call, including the service fee.