DataForSEO Dataforseo Labs API / /v3/dataforseo_labs/google/ranked_keywords/live.ai
DataForSEO tool dataforseo-dataforseo-labs-google-ranked-keywords-live-ai on looot: input fields, $0.012 per call, output shape, and code to run it with curl, JavaScript or Python.
This endpoint will provide you with the list of keywords that any domain or webpage is ranking for. You will also get SERP elements related to the keyword position, as well as impressions, monthly searches and other data relevant to the returned keywords.
- Tool id:
dataforseo-dataforseo-labs-google-ranked-keywords-live-ai - Provider: DataForSEO
- Job: Live ai dataforseolabs google ranked keywords (
dataforseolabs.google.ranked-keywords.live-ai) - Price: $0.012 per call. A call that fails at the provider costs $0.
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
filters |
array | no | Array of filter conditions and logical operators. Each filter condition is an array of [field, operator, value]. Maximum 8 filters allowed. Available operators: =, <>, <, <=, >, >=, in, not_in, like, not_like, ilike, not_ilike, regex, not_regex, match, not_match Logical operators: “and”, “or” Examples: Simple filter: [[“ranked_serp_element.serp_item.rank_group”,“<=”,10]] With logical operator: [[“ranked_serp_element.serp_item.rank_group”,“<=”,10],“or”,[“ranked_serp_element.serp_item.type”,“<>… |
include_clickstream_data |
boolean | no | Include or exclude data from clickstream-based metrics in the result |
include_subdomains |
boolean | no | Include keywords from subdomains |
item_types |
array | no | display results by item type indicates the type of search results included in the response |
language_code |
string | no | language code required field example: en |
limit |
number | no | Maximum number of keywords to return |
location_name |
string | no | full name of the location required field only in format “Country” (not “City” or “Region”) example: ‘United Kingdom’, ‘United States’, ‘Canada’ |
offset |
number | no | offset in the results array of returned keywords optional field default value: 0 if you specify the 10 value, the first ten keywords in the results array will be omitted and the data will be provided for the successive keywords |
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 type example: [“keyword_data.keyword_info.competition,desc”] default rule: [“ranked_serp_element.serp_item.rank_group,asc”] note that you can set no more than three sorting rules in a single request you should use a… |
target |
string | yes | domain name or page url required field the domain name of the target website or URL of the target webpage; the domain name must be specified without https:// or www.; the webpage URL must be specified with https:// or www. Note: if you specify the webpage URL without https:// or www., the result will be returned for the entire domain rather than the specific page |
Output
The run’s result holds the provider’s answer. Signed in, looot inspect dataforseo-dataforseo-labs-google-ranked-keywords-live-ai prints its fields.
Run it
Every call needs your API token in LOOOT_TOKEN; Sign in shows how to get one. Each run also needs a new idempotency key, so a retry never pays twice. With wait: 30 the answer comes back inline when the run ends within 30 seconds. Otherwise you get the running run back: poll GET /v1/runs/<runId>.
Example input with placeholder values:
curl -X POST "https://api.looot.ai/v1/runs" \
-H "Authorization: Bearer $LOOOT_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"endpointId":"dataforseo-dataforseo-labs-google-ranked-keywords-live-ai","input":{"target":"<target>"},"wait":30}'const response = await fetch("https://api.looot.ai/v1/runs", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.LOOOT_TOKEN}`,
"Content-Type": "application/json",
"Idempotency-Key": crypto.randomUUID(),
},
body: JSON.stringify({
endpointId: "dataforseo-dataforseo-labs-google-ranked-keywords-live-ai",
input: {
target: "<target>",
},
wait: 30,
}),
});
const run = await response.json();
console.log(run.status, run.result);import os
import uuid
import requests
response = requests.post(
"https://api.looot.ai/v1/runs",
headers={
"Authorization": f"Bearer {os.environ['LOOOT_TOKEN']}",
"Idempotency-Key": str(uuid.uuid4()),
},
json={
"endpointId": "dataforseo-dataforseo-labs-google-ranked-keywords-live-ai",
"input": {
"target": "<target>",
},
"wait": 30,
},
timeout=90,
)
run = response.json()
print(run["status"], run.get("result"))To let looot pick among every provider of this job instead, send job:dataforseolabs.google.ranked-keywords.live-ai as endpointId; see the job page.