Serp

Baidu SERP API provides top 10 search engine results. These results are specific to the selected location (see the List of Locations) and other settings.

post/v3/serp/baidu/organic/task_post

Request

  • Base URL: https://api.dataforseo.com
  • URL: https://api.dataforseo.com/v3/serp/baidu/organic/task_post
  • Auth: HTTP basic

Request body

keywordstring

<em>keyword</em><br><strong>required field</strong><br>you can specify <strong>up to 700 characters</strong> in the <code>keyword</code> field<br>all %## will be decoded (plus character ‘+’ will be decoded to a space character)<br>if you need to use the “%” character for your <code>keyword</code>, please specify it as “%25”;<br>if you need to use the “+” character for your <code>keyword</code>, please specify it as “%2B”<p>learn more about rules and limitations of <code>keyword</code> and <code>keywords</code> fields in DataForSEO APIs in this <a href="https://dataforseo.com/help-center/rules-and-limitations-of-keyword-and-keywords-fields-in-dataforseo-apis" rel="noopener noreferrer" target="_blank">Help Center article</a>

priorityinteger nullable

<em>task priority</em><br>optional field<br>can take the following values:<br>1 – normal execution priority (set by default)<br>2 – high execution priority<br>You will be additionally charged for the tasks with high execution priority.<br>The cost can be calculated on the <a title="Pricing" href="https://dataforseo.com/pricing/serp/baidu-organic-serp-api" target="_blank" rel="noopener noreferrer">Pricing</a> page.

depthinteger nullable

<em>parsing depth</em><br>optional field<br>number of results in SERP<br>default value: <code>10</code><br>max value: <code>700</code><br><strong>Your account will be billed per each SERP containing up to 10 results;</strong> <br>Setting depth above 10 may result in additional charges <a href="https://dataforseo.com/help-center/how-many-results-scraped" rel="noopener noreferrer" target="_blank">if the search engine returns more than 10 results</a>;<br>The cost can be calculated on the <a title="Pricing" href="https://dataforseo.com/pricing/serp/baidu-organic-serp-api" target="_blank" rel="noopener noreferrer">Pricing</a> page.

max_crawl_pagesinteger nullable

<em>page crawl limit</em><br>optional field<br>number of search results pages to crawl<br>default value: <code>1</code><br>max value: <code>100</code><br><strong>Note:</strong> the <code>max_crawl_pages</code> and <code>depth</code> parameters complement each other;<br>learn more at <a href="https://dataforseo.com/help-center/what-is-max-crawl-pages-and-how-does-it-work" target="_blank" rel="noopener noreferrer">our help center</a>

language_namestring

<em>full name of search engine language</em><br><strong>required field if you don't specify</strong> <code>language_code</code><br>you can receive the list of available languages of the search engine with their <code>language_name</code> by making a separate request to the <code>https://api.dataforseo.com/v3/serp/{{low_se_name}}/languages</code><strong>note</strong> that the only language supported in Baidu search engine is <code>Chinese (Simplified)</code>. However, Baidu may as well return results for queries in other languages, so specifying <code>keyword</code> in Chinese is not mandatory<p>example:<br><code class="long-string">Chinese (Simplified)</code>

language_codestring

<em>search engine language code</em><br><strong>required field if you don't specify</strong> <code>language_name</code><br>you can receive the list of available languages of the search engine with their <code>language_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/serp/{{low_se_name}}/languages</code><strong>note</strong> that the only language supported in Baidu search engine is <code>Chinese (Simplified)</code> with the <code>zh_CN</code> language code. However, Baidu may as well return results for queries in other languages, so specifying <code>keyword</code> in Chinese is not mandatory<p>example:<br><code class="long-string">zh_CN</code>

location_namestring

<em>full name of search engine location</em><br><strong>required field if you don't specify</strong> <code>location_code</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_code</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engine with their <code>location_name</code> by making a separate request to the <code>https://api.dataforseo.com/v3/serp/{{low_se_name}}/locations</code><br>example:<br><code class="long-string">New York,New York,United States</code>

location_codeinteger

<em>search engine location code</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_coordinate</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_coordinate</code></strong><br>you can receive the list of available locations of the search engines with their <code>location_code</code> by making a separate request to the <code>https://api.dataforseo.com/v3/serp/{{low_se_name}}/locations</code><br>example:<br><code class="long-string">2156</code>

location_coordinatestring

<em>GPS coordinates of a location</em><br><strong>required field if you don't specify</strong> <code>location_name</code> or <code>location_code</code><br><strong>if you use this field, you don't need to specify <code>location_name</code> or <code>location_code</code></strong><br><code>location_coordinate</code> parameter should be specified in the <em>"latitude,longitude,radius"</em> format<br>the maximum number of decimal digits for <em>"latitude"</em> and <em>"longitude"</em>: 7<br>the minimum value for <em>"radius"</em>: 199.9 (mm)<br>the maximum value for <em>"radius"</em>: 199999 (mm)if you use this field, the returned results will be based on the closest city found for your coordinates. Thus, <strong>we don't recommend</strong> using this field as the results might not be relevant to the specified coordinates<br>example:<br><code class="long-string">53.476225,-2.243572,200</code>

devicestring nullable

<em>device type</em><br>optional field<br>return results for a specific device type<br>can take the values: <code>desktop</code>, <code>mobile</code>, <code>tablet</code><br>default value: <code>desktop</code>

osstring nullable

<em>device operating system</em><br>optional field<br>if you specify <code>desktop</code> in the <code>device</code> field, choose from the following values: <code>windows</code>, <code>macos</code><br>default value: <code>windows</code><br>if you specify <code>mobile</code> in the <code>device</code> field, choose from the following values: <code>android</code>, <code>ios</code><br>default value: <code>android</code><br>if you specify <code>tablet</code> in the <code>device</code> field, choose from the following values: <code>android</code>, <code>ios</code><br>default value: <code>android</code>

get_website_urlboolean nullable

<em>include direct URL for each ranked result</em><br>optional field<br>if set to <code>true</code>, the returned results will contain direct URLs of the ranked websites<br>by default, the URLs in Baidu results are encoded by the search engine,<br>for example:<br><code>http://www.baidu.com/link?url=KQt6LSwU5OHnPtB8210R8flBP40grY6lTPxH_0UO7S2kgiZMTmw3ztV0hCo5c1kL</code>default value: <code>false</code><br><strong>Note:</strong> if set to <code>true</code>, <strong>the charge per task will be multiplied by 10</strong> as our system runs a separate request for each ranked website to return its direct URL

tagstring nullable

<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response

postback_urlstring nullable

<em>URL for sending task results</em><br>optional field<br>once the task is completed, we will send a POST request with its results compressed in the <code>gzip</code> format to the <code>postback_url</code> you specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/postbackscript?id=$id</code><br><code>http://your-server.com/postbackscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>postback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href="https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api" target="_blank" rel="noopener noreferrer">Help Center</a>

postback_datastring

<em>postback_url datatype</em><br><strong>required field if you specify <code>postback_url</code></strong><br>corresponds to the datatype that will be sent to your server<br>possible values:<br><code>regular</code>, <code>html</code>

pingback_urlstring nullable

<em>notification URL of a completed task</em><br>optional field<br>when a task is completed we will notify you by GET request sent to the URL you have specified<br>you can use the ‘$id’ string as a <code>$id</code> variable and ‘$tag’ as urlencoded <code>$tag</code> variable. We will set the necessary values before sending the request.<br>example:<br><code>http://your-server.com/pingscript?id=$id</code><br><code>http://your-server.com/pingscript?id=$id&amp;tag=$tag</code><br><strong>Note:</strong> special characters in <code>pingback_url</code> will be urlencoded;<br>i.a., the <code>#</code> character will be encoded into <code>%23</code><p>learn more on our <a href="https://dataforseo.com/help-center/pingbacks-postbacks-with-dataforseo-api" target="_blank" rel="noopener noreferrer">Help Center</a>

Example request

[
  {
    "location_code": 2156,
    "keyword": "best iphone ever",
    "tag": "some_string_123",
    "priority": 2
  }
]

Response

Successful operation

versionstring nullable

the current version of the API

status_codeinteger nullable

general status code you can find the full list of the response codes here

status_messagestring nullable

general informational message you can find the full list of general informational messages here

timestring nullable

total execution time, seconds

costnumber double nullable

total tasks cost, USD

tasks_countinteger nullable

the number of tasks in the tasks array

tasks_errorinteger nullable

the number of tasks in the tasks array returned with an error

Changes

    • breaking

      the request property ///// became not nullable

    • breaking

      the request property ///// became not nullable

    • breaking

      the request property ///// became not nullable

    • breaking

      the request property ///// became not nullable

    • breaking

      the request property ///// became not nullable

    • breaking

      the request property ///// became not nullable

    • warning

      removed the request property /////

    • warning

      removed the request property /////

    • info

      api operation id SerpBaiduOrganicTaskPost removed and replaced with BaiduOrganicTaskPost