Data API / DataForSEO / DataForSEO Labs
Historical Rank Overview
A domain's rank overview as it stood at each point in the available history. This one takes no limit parameter, but it is priced per call rather than per item, so send the whole list at once. Wrapped in DataForSEO's envelope: data in tasks[0].result, outcome in tasks[0].status_code - a rejected request still returns HTTP 200. Check get_dataforseo_labs_google_available_history first - it names the dates that exist, and asking for a date outside them returns nothing rather than an error. The current snapshot is post_dataforseo_labs_google_domain_rank_overview_live.
Parameters
No path, query, or header parameters.
Request body
targetstringRequireddomain required field the domain name of the target website the domain should be specified without https:// and www.
location_namestringOptionalfull 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
location_codeintegerOptionallocation 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
language_namestringOptionalfull 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 locations with their language_name by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: English
language_codestringOptionallanguage 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 locations with their language_code by making a separate request to the https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages example: en
date_fromstringOptionalstarting date of the time range optional field if you don’t specify this field, the data will be provided for the previous 6 months minimal possible value: 2020-10-01 date format: "yyyy-mm-dd"
date_tostringOptionalending date of the time range optional field if you don’t specify this field, the today’s date will be used by default date format: "yyyy-mm-dd" example: "2021-04-01"
correlatebooleanOptionalcorrelate data with previously obtained datasets optional field default value: true if you use this parameter, our system will correlate data you obtain now with previously obtained datasets this parameter is intended to mitigate any inconsistencies that may result from changes to our database we recommend always setting correlate to true
ignore_synonymsbooleanOptionalignore highly similar keywords optional field if set to true, only data based on core keywords will be returned, data for all highly similar keywords will be excluded; default value: false
include_clickstream_databooleanOptionalinclude or exclude data from clickstream-based metrics in the result optional field if the parameter is set to true, you will receive clickstream_etv, clickstream_gender_distribution, and clickstream_age_distribution fields with clickstream data in the response; default value: false; Note: historical clickstream data is available from 2024/05 (May, 2024); 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
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 request
curl -X POST "https://openapi.felo.ai/v1/beta/dataforseo/dataforseo_labs/google/historical_rank_overview/live" \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target": "<string>",
"location_name": "<string>",
"location_code": 0,
"language_name": "<string>",
"language_code": "<string>",
"date_from": "<string>",
"date_to": "<string>",
"correlate": false
}'Response
Response fields
versionstringOptionalthe current version of the API
status_codeintegerOptionalgeneral status code you can find the full list of the response codes here Note: we strongly recommend designing a necessary system for handling related exceptional or error conditions
status_messagestringOptionalgeneral informational message you can find the full list of general informational messages here
timestringOptionalexecution time, seconds
costnumberOptionaltotal tasks cost, USD
tasks_countintegerOptionalthe number of tasks in the tasks array
tasks_errorintegerOptionalthe number of tasks in the tasks array returned with an error
tasksstring[]Optionalarray of tasks
idstringOptionaltask identifier unique task identifier in our system in the UUID format
status_codeintegerOptionalstatus code of the task generated by DataForSEO; can be within the following range: 10000-60000 you can find the full list of the response codes here
status_messagestringOptionalinformational message of the task you can find the full list of general informational messages here
timestringOptionalexecution time, seconds
costnumberOptionalcost of the task, USD
result_countintegerOptionalnumber of elements in the result array
pathstring[]OptionalURL path
dataobjectOptionalcontains the same parameters that you specified in the POST request
resultstring[]Optionalarray of results
se_typestringOptionalsearch engine type
targetstringOptionaltarget domain in a POST array
location_codeintegerOptionallocation code in a POST array
language_codestringOptionallanguage code in a POST array
total_countintegerOptionaltotal amount of results in our database relevant to your request
items_countintegerOptionalthe number of results returned in the items array
itemsstring[]Optionalcontains historical ranking and traffic data
se_typestringOptionalsearch engine type
yearintegerOptionalyear for which the data is provided
monthintegerOptionalmonth for which the data is provided
metricsobjectOptionalranking data relevant to the specified domain
organicobjectOptionalranking and traffic data from organic search
pos_1integerOptionalnumber of organic SERPs where the domain ranks #1
pos_2_3integerOptionalnumber of organic SERPs where the domain ranks #2-3
pos_4_10integerOptionalnumber of organic SERPs where the domain ranks #4-10
pos_11_20integerOptionalnumber of organic SERPs where the domain ranks #11-20
pos_21_30integerOptionalnumber of organic SERPs where the domain ranks #21-30
pos_31_40integerOptionalnumber of organic SERPs where the domain ranks #31-40
pos_41_50integerOptionalnumber of organic SERPs where the domain ranks #41-50
pos_51_60integerOptionalnumber of organic SERPs where the domain ranks #51-60
pos_61_70integerOptionalnumber of organic SERPs where the domain ranks #61-70
pos_71_80integerOptionalnumber of organic SERPs where the domain ranks #71-80
pos_81_90integerOptionalnumber of organic SERPs where the domain ranks #81-90
pos_91_100integerOptionalnumber of organic SERPs where the domain ranks #91-100
etvnumberOptionalestimated traffic volume estimated organic monthly traffic to the domain calculated as the product of CTR (click-through-rate) and search volume values of all keywords the domain ranks for learn more about how the metric is calculated in this help center article
countintegerOptionaltotal count of organic SERPs that contain the domain
estimated_paid_traffic_costnumberOptionalestimated cost of converting organic search traffic into paid represents the estimated monthly cost of running ads (USD) for all keywords that a domain ranks for the metric is calculated as the product of organic etv and paid cpc values and indicates the cost of driving the estimated volume of monthly organic traffic through PPC advertising in Google Search learn more about how the metric is calculated in this help center article
is_newintegerOptionalnumber of new ranked elements indicates how many new ranked elements were found for the indicated target
is_upintegerOptionalrank went up indicates how many ranked elements of the indicated target went up
is_downintegerOptionalrank went down indicates how many ranked elements of the indicated target went down
is_lostintegerOptionallost ranked elements indicates how many ranked elements of the indicated target were previously presented in SERPs, but weren’t found during the last check
clickstream_etvintegerOptionalestimated traffic volume based on clickstream data calculated as the product of click-through-rate and clickstream search volume values of all keywords the domain ranks for to retrieve results for this field, the parameter include_clickstream_data must be set to true learn more about how the metric is calculated in this help center article
clickstream_gender_distributionobjectOptionaldistribution of estimated clickstream-based metrics by gender to retrieve results for this field, the parameter include_clickstream_data must be set to true learn more about how the metric is calculated in this help center article
femaleintegerOptionalnumber of female users in the relevant clickstream dataset
maleintegerOptionalnumber of male users in the relevant clickstream dataset
clickstream_age_distributionobjectOptionaldistribution of clickstream-based metrics by age to retrieve results for this field, the parameter include_clickstream_data must be set to true learn more about how the metric is calculated in this help center article
18-24integerOptionalnumber of users in the relevant clickstream dataset that fall within the 18-24 age range
25-34integerOptionalnumber of users in the relevant clickstream dataset that fall within the 25-34 age range
35-44integerOptionalnumber of users in the relevant clickstream dataset that fall within the 35-44 age range
45-54integerOptionalnumber of users in the relevant clickstream dataset that fall within the 45-54 age range
55-64integerOptionalnumber of users in the relevant clickstream dataset that fall within the 55-64 age range
paidobjectOptionalranking and traffic data from paid search
pos_1integerOptionalnumber of paid SERPs where the domain ranks #1
pos_2_3integerOptionalnumber of paid SERPs where the domain ranks #2-3
pos_4_10integerOptionalnumber of paid SERPs where the domain ranks #4-10
pos_11_20integerOptionalnumber of paid SERPs where the domain ranks #11-20
pos_21_30integerOptionalnumber of paid SERPs where the domain ranks #21-30
pos_31_40integerOptionalnumber of paid SERPs where the domain ranks #31-40
pos_41_50integerOptionalnumber of paid SERPs where the domain ranks #41-50
pos_51_60integerOptionalnumber of paid SERPs where the domain ranks #51-60
pos_61_70integerOptionalnumber of paid SERPs where the domain ranks #61-70
pos_71_80integerOptionalnumber of paid SERPs where the domain ranks #71-80
pos_81_90integerOptionalnumber of paid SERPs where the domain ranks #81-90
pos_91_100integerOptionalnumber of paid SERPs where the domain ranks #91-100
etvnumberOptionalestimated traffic volume estimated paid monthly traffic to the domain calculated as the product of CTR (click-through-rate) and search volume values of all keywords the domain ranks for learn more about how the metric is calculated in this help center article
countintegerOptionaltotal count of paid SERPs that contain the domain
estimated_paid_traffic_costnumberOptionalestimated cost of monthly search traffic represents the estimated cost of paid monthly traffic (USD) based on etv and cpc values learn more about how the metric is calculated in this help center article
is_newintegerOptionalnumber of new ranked elements indicates how many new ranked elements were found for the indicated target
is_upintegerOptionalrank went up indicates how many ranked elements of the indicated target went up
is_downintegerOptionalrank went down indicates how many ranked elements of the indicated target went down
is_lostintegerOptionallost ranked elements indicates how many ranked elements of the indicated target were previously presented in SERPs, but weren’t found during the last check
clickstream_etvintegerOptionalestimated traffic volume based on clickstream data calculated as the product of click-through-rate and clickstream search volume values of all keywords the domain ranks for to retrieve results for this field, the parameter include_clickstream_data must be set to true learn more about how the metric is calculated in this help center article
clickstream_gender_distributionobjectOptionaldistribution of estimated clickstream-based metrics by gender to retrieve results for this field, the parameter include_clickstream_data must be set to true learn more about how the metric is calculated in this help center article
femaleintegerOptionalnumber of female users in the relevant clickstream dataset
maleintegerOptionalnumber of male users in the relevant clickstream dataset
clickstream_age_distributionobjectOptionaldistribution of clickstream-based metrics by age to retrieve results for this field, the parameter include_clickstream_data must be set to true learn more about how the metric is calculated in this help center article
18-24integerOptionalnumber of users in the relevant clickstream dataset that fall within the 18-24 age range
25-34integerOptionalnumber of users in the relevant clickstream dataset that fall within the 25-34 age range
35-44integerOptionalnumber of users in the relevant clickstream dataset that fall within the 35-44 age range
45-54integerOptionalnumber of users in the relevant clickstream dataset that fall within the 45-54 age range
55-64integerOptionalnumber of users in the relevant clickstream dataset that fall within the 55-64 age range