Skip to content
looot docs
Esc
↑↓navigate↵open⌘Jpreview
On this page

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.

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.

Was this page helpful?