payload.pages | object | Yes | — | target URLs of pages required field you can set up to 20 pages in this object the pages should be specified with absolute URLs (including http:// or https://) example: “pages”: { “1”:“https://www.apple.com/mac/”, “2”:“https://dataforseo.com/”, “3”:“https://support.microsoft.com/” } if you specify a single page here, we will return results only for this page; you can also use a wildcard (’*’) character to specify the search pattern example: “example.com” search for the exact URL See the live schema for the complete constraint. |
payload.exclude_pages | array | No | — | URLs of pages you want to exclude optional field you can set up to 10 pages in this array if you use this array, results will contain the keywords for which URLs from the pages object rank, but URLs from exclude_pages array do not; note that if you specify this field, the results will be based on the keywords any URL from pages ranks for regardless of intersections between them. However, you can set intersection_mode to intersect and results will contain the keywords all URLs from pages rank for See the live schema for the complete constraint. |
payload.location_name | string | No | — | full name of the location required field if you don’t specify location_code Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: United Kingdom |
payload.location_code | integer | No | — | location code required field if you don’t specify location_name Note: it is required to specify either location_name or location_code you can receive the list of available locations with their location_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: 2840 |
payload.language_name | string | No | — | full name of the language required field if you don’t specify language_code Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English |
payload.language_code | string | No | — | language code required field if you don’t specify language_name Note: it is required to specify either language_name or language_code you can receive the list of available languages with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en |
payload.item_types | array | No | — | search results type indicates type of search results included in the response optional field possible values: [“organic”, “paid”, “featured_snippet”, “local_pack”] default value: [“organic”, “paid”] |
payload.limit | integer | No | — | the maximum number of returned keywords optional field default value: 100 maximum value: 1000 |
payload.offset | integer | No | — | offset in the items array of returned keywords optional field default value: 0 if you specify 10 here, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords |
payload.include_subdomains | boolean | No | — | indicates if the subdomains will be included in the search optional field if set to false , the subdomains will be ignored default value: true |
payload.intersection_mode | string | No | — | indicates whether to intersect keywords optional field use this field to intersect or merge results for the specified URLs possible values: union , intersect union - results are based on all keywords any URL from pages rank for; intersect - results are based on the keywords all URLs from pages rank for in the same SERP: by default, results are based on the intersect mode if you specify only pages array. If you specify exclude_pages as well, results are based on the union mode |
payload.include_serp_info | boolean | No | — | include data from SERP for each keyword optional field if set to true , we will return a serp_info array containing SERP data (number of search results, relevant URL, and SERP features) for every keyword in the response default value: false |
payload.include_clickstream_data | boolean | No | — | include or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true , you will receive clickstream_keyword_info , clickstream_etv , keyword_info_normalized_with_clickstream , and keyword_info_normalized_with_bing fields in the response default value: false with this parameter enabled, you will be charged double the price for the request learn more about how clickstream-based metrics are calculated in this help center article |
payload.ignore_synonyms | boolean | No | — | ignore highly similar keywords optional field if set to true only core keywords will be returned, all highly similar keywords will be excluded; default value: false |
payload.filters | array | No | — | array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and , or between the conditions the following operators are supported: regex , not_regex , < , <= , > , >= , = , <> , in , not_in , ilike , not_ilike , like , not_like , match , not_match you can use the % operator with like and not_like , as well as ilike and not_ilike to match any string of zero or more characters note that if you want to filter by any See the live schema for the complete constraint. |
payload.order_by | array | No | — | results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc - results will be sorted in the ascending order desc - results will be sorted in the descending order you should use a comma to set up a sorting parameter example: [“keyword_data.keyword_info.competition,desc”] default rule: [“keyword_data.keyword_info.search_volume,desc”] note that you can set no more than three sorting rules in a single request you should use See the live schema for the complete constraint. |
payload.tag | string | No | — | 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 |