URL keywords

The SerpstatUrlProcedure.getUrlKeywords method returns a list of keywords for which the specified URL ranks in the top-100 Google and top-50 Bing search results. It provides insights into the organic search performance of a page and is ideal for keyword research, content optimization, and competitor analysis. The data set is similar to the URL analysis — SEO research  Keywords report.

Use Case: Expand Your Keyword List with Ease
1. Analyze a Competitor: Identify a relevant competitor's page.
2. Extract Keywords: Use SerpstatUrlProcedure.getUrlKeywords to extract keywords.
3. Filter for Quality: Apply filters to select the best keywords.
4. Expand Your List: Incorporate these keywords into your existing list.

General request parameters and instructions for using Serpstat API

Search databases available

Request parameters

Parameter

Description

Type

Required

Default value

Value Options

id

A request id: the response contains the same id. 

int/string

yes

any text or number value

method

API method name

string

yes

SerpstatUrlProcedure.getUrlKeywords

params

The object with parameters {...}, it lists all the following parameters and arrays [...]

array

yes

se

ID of the search base to be searched

string

yes

g_us (search databases list)

url

Analyzed page URL

string

yes

URL-address of the page
(For example "https://www.nike.com")

filters

Filter conditions

array

no

no filtration

filter conditions are listed in the next table

sort

Sort by data (ascending and descending)

array

no

"traff"

"difficulty" - Sort the results by the level of keywords competition level to advance in organic search in the top-10

"cost" - Sort the results by cost per click (in USD)

"position" - Sort the results by position

order

Sort direction

array

no

"desc"

asc or desc

page

Page number in response

int

no

1

any number value

size

Number of results per page in response

int

no

100

number value in the range of 1-1000


Filter conditions parameters

Parameter

Description

Type

Value Options

cost

Cost per click (in US $; exact match) float any number value

cost_from

Cost per click (in US $; exact match) from float any number value
cost_to Cost per click (in US $; exact match) to float any number value

position

URL's position in Google`s top-100 results for this keyword. int any whole number in the range of 1-100

position_from

Keyword position from int any whole number in the range of 1-100
position_to Keyword position to int any whole number in the range of 1-100

concurrency

PPC Competition. Shows how difficult it would be to compete for this keyword. Max 100. The more domains use this keyword in their ads campaigns, the higher level of competition is. int any whole number in the range of 1-100

concurrency_from

PPC Competition from int any whole number in the range of 1-100
concurrency_to PPC Competition to int any whole number in the range of 1-100

keyword_length

Number of words in the keyword int any number value

difficulty

The assessment of the level of competition for a keyword to advance in organic search in the top-10.
It is measured on a scale from 0 to 100, where: 0-20 easy; 21-40 - medium; 41-60 - difficult; 61-100 - very difficult. 
More info adout difficulty of the keyword.
float any number value in the range of 1-100

difficulty_from

The difficulty of the keyword from float any number value in the range of 1-100
difficulty_to The difficulty of the keyword to float any number value in the range of 1-100

traff

Approximate traffic by keyword depending on its volume and position int any whole number

region_queries_count

Volume of the keyword by the selected region int any whole number

region_queries_count_from

Volume of the keyword by the selected region from int any whole number
region_queries_count_to Volume of the keyword by the selected region to int any whole number

region_queries_count_wide

Volume of the keyword in broad match  int any whole number

region_queries_count_wide_from

Volume of the keyword in broad match from int any whole number
region_queries_count_wide_to Volume of the keyword in broad match to int any whole number
url_contains The exact website pages ranking for the keywords string any text value
right_spelling Display or not to display misspelled keywords boolean true or false
keyword_contain Contains all keywords(exact matching) string any text value
keyword_not_contain Does not contain all keywords (exact matching) string any text value
keyword_contain_one_of Contains one of the keywords (exact matching) string any text value
keyword_not_contain_one_of Does not contain one of the keywords (exact matching) string any text value
keyword_contain_broad_match Contains all keywords (broad match) string any text value
keyword_not_contain_broad_match Does not contain all keywords (broad match) string any text value
keyword_contain_one_of_broad_match Contains one of the keywords (broad match) string any text value
keyword_not_contain_one_of_broad_match Does not contain one of the keywords (broad match) string any text value

Response parameters

Parameter

Description

id

Response id: corresponds the request id

result

Contains the answer

data Array with data
domain Domain by which the information was received
subdomain Subdomain which ranks for the keyword
keyword Keyword which the URL ranks for

keyword_length

Number of words divided by space in a keyword

url

URL appeared in the search result for the query

position

URL's position for a keyword

types

List of special elements shown in SERP (for example, video, carousel or map)

found_results

Number of results found for keyword

cost

Cost per click, $ (the indicator is updated every month)

concurrency

Keyword competition in the PPC (0-100)

region_queries_count

Search volume in selected region

region_queries_count_wide

Search volume (broad match)

geo_names

List of toponyms in the array (if toponyms are present in the keywords)

traff

Approximate traffic by keyword depending on its volume and position

difficulty

The assessment of the level of competition for a keyword to advance in organic search in the top-10 (from 0 to 100%)

first_position

The domain position of which is better than the one you are looking for was found by the keyword.

first_url

The url position of which is better than the one you are looking for was found by the keyword.

dynamic

How the position of this keyword has changed (New position — null, Position did not change — 0, Position dropped — negative value (e.g. -20), Position increased — positive value (e.g. 20))

summary_info

Object with data

page

Page number

total

Number of found keywords ranking the given domain in top

left_lines

API credits remaining

Possible errors in response
Error's code Description
400 JSON RPC 2.0 Request invalid payload. 

Oops! Something went wrong with your search. Please double-check your spelling and make sure you're using the correct format for each field
32017
Data not found. 

Please verify your search terms or try a different query.

Credits: the number of charged credits corresponds to the number of results obtained upon request. With the Serpstat API, you can only get the first 60,000 results, regardless of the number and size of the queries themselves. For more data - use the export option in the Domain Analysis, Keyword Analysis, or URL Analysis sections, or contact the manager for a personal upload of the results. 
Part of the API response, for which 1 credit is charged:

{
    "domain": "nike.com",
    "subdomain": "www.nike.com",
    "keyword": "man nike",
    "keyword_length": 2,
    "url": "https://www.nike.com/men",
    "position": 1,
    "types": [
        "snip_breadcrumbs"
        ],
    "found_results": 656000000,
    "cost": 0.38,
    "concurrency": 100,
    "region_queries_count": 40500,
    "region_queries_count_wide": 0,
    "geo_names": [],
    "traff": 6071,
    "difficulty": null,
    "dynamic": 0
},

Example
Request data:
{
    "id": "1",
    "method": "SerpstatUrlProcedure.getUrlKeywords",
    "params": {
        "se": "g_us",
        "url": "https://www.nike.com/men",
        "filters": {"cost_from": 1, "cost_to": 1000},
        "sort": {"position": "asc"},
        "page": "1",
        "size": "10"
    }
}
Response data:
{
    "id": "1",
    "result": {
        "data": [
            {
                "domain": "nike.com",
                "subdomain": "www.nike.com",
                "keyword": "nike shoes online purchase",
                "keyword_length": 4,
                "url": "https://www.nike.com/men",
                "position": 2,
                "types": [
                    "twitter",
                    "carousel",
                    "shopping_rhs",
                    "pic",
                    "also_asks",
                    "snippet_breadcrumbs"
                ],
                "found_results": 66200000,
                "cost": 1.3799999999999999,
                "concurrency": 92,
                "region_queries_count": 10,
                "region_queries_count_wide": null,
                "geo_names": [],
                "traff": 1,
                "difficulty": 90.036638012173825,
                "first_position": 1,
                "first_url": "https://www.nike.com/",
                "dynamic": 0
            },
            {
                "domain": "nike.com",
                "subdomain": "www.nike.com",
                "keyword": "shoes for men us",
                "keyword_length": 4,
                "url": "https://www.nike.com/men",
                "position": 2,
                "types": [
                    "kn_graph_carousel_list",
                    "a_box_card",
                    "snip_breadcrumbs"
                ],
                "found_results": 1660000000,
                "cost": 2.0435020000000002,
                "concurrency": 100,
                "region_queries_count": 110,
                "region_queries_count_wide": null,
                "geo_names": [],
                "traff": 15,
                "difficulty": 65.138039166735581,
                "dynamic": 3
            }
        ],
        "summary_info": {
            "page": 3,
            "total": 217,
            "left_lines": 999998
        }
    }
}

Share this article with your friends

Are you sure?

Introducing Serpstat

Find out about the main features of the service in a convenient way for you!

Please send a request, and our specialist will offer you education options: a personal demonstration, a trial period, or materials for self-study and increasing expertise — everything for a comfortable start to work with Serpstat.

Name

Email

Phone

We are glad of your comment
I agree to Serpstat`s Privacy Policy.

Thank you, we have saved your new mailing settings.

Open support chat