Skip to main content
POST
https://api.aisa.one/apis/v1
/
dataforseo
/
on_page
/
keyword_density
Keyword Density
curl --request POST \
  --url https://api.aisa.one/apis/v1/dataforseo/on_page/keyword_density \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "id": "<string>",
  "keyword_length": 123,
  "url": "<string>",
  "limit": 123,
  "filters": [
    "<string>"
  ],
  "order_by": [
    "<string>"
  ],
  "tag": "<string>"
}
'
{
  "version": "<string>",
  "status_code": 123,
  "status_message": "<string>",
  "time": "<string>",
  "cost": 123,
  "tasks_count": 123,
  "tasks_error": 123,
  "tasks": [
    "<string>"
  ],
  "tasks.id": "<string>",
  "tasks.status_code": 123,
  "tasks.status_message": "<string>",
  "tasks.time": "<string>",
  "tasks.cost": 123,
  "tasks.result_count": 123,
  "tasks.path": [
    "<string>"
  ],
  "tasks.data": {},
  "tasks.result": [
    "<string>"
  ],
  "tasks.result.crawl_progress": "<string>",
  "tasks.result.crawl_status": {},
  "tasks.result.crawl_status.max_crawl_pages": 123,
  "tasks.result.crawl_status.pages_in_queue": 123,
  "tasks.result.crawl_status.pages_crawled": 123,
  "tasks.result.total_items_count": 123,
  "tasks.result.items_count": 123,
  "tasks.result.items": [
    "<string>"
  ],
  "tasks.result.items.keyword": "<string>",
  "tasks.result.items.frequency": 123,
  "tasks.result.items.density": 123
}

Documentation Index

Fetch the complete documentation index at: https://aisa.one/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
id
string
required

ID of the task required field you can get this ID in the response of the Task POST endpoint example: “07131248-1535-0216-1000-17384017ad04”

keyword_length
integer
required

number of words for a keyword required field possible values: 1, 2, 3, 4, 5

url
string

page URL optional field if you do not specify a page here, the results will be provided for the whole website if you use this field, the API response will contain only keywords from the specified page a page should be specified with absolute URL (including http:// or https://)

limit
integer

the maximum number of returned keywords optional field default value: 100 maximum value: 1000

filters
string[]

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, like, not_like you can use the % operator with like and not_like to match any string of zero or more characters example: ["keyword","=","%seo%"] [["keyword","=","%seo%"], "and", ["frequency"," [["keyword","not_like","%seo%"], "and", [["frequency",">","6"],"or",["density",">","0.02"]]] The full list of possible filters is available by this link.

order_by
string[]

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: ["frequency,desc"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: ["keyword,asc","frequency,desc"]

tag
string

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

Response

Successful response

version
string

the current version of the API

status_code
integer

general 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_message
string

general informational message you can find the full list of general informational messages here

time
string

execution time, seconds

cost
number

total tasks cost, USD

tasks_count
integer

the number of tasks in the tasks array

tasks_error
integer

the number of tasks in the tasks array returned with an error

tasks
string[]

array of tasks

tasks.id
string

task identifier unique task identifier in our system in the UUID format

tasks.status_code
integer

status 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

tasks.status_message
string

informational message of the task you can find the full list of general informational messages here

tasks.time
string

execution time, seconds

tasks.cost
number

cost of the task, USD

tasks.result_count
integer

number of elements in the result array

tasks.path
string[]

URL path

tasks.data
object

contains the same parameters that you specified in the POST request

tasks.result
string[]

array of results

tasks.result.crawl_progress
string

status of the crawling session possible values: in_progress, finished

tasks.result.crawl_status
object

details of the crawling session

tasks.result.crawl_status.max_crawl_pages
integer

maximum number of pages to crawl indicates the max_crawl_pages limit you specified when setting a task

tasks.result.crawl_status.pages_in_queue
integer

number of pages that are currently in the crawling queue

tasks.result.crawl_status.pages_crawled
integer

number of crawled pages

tasks.result.total_items_count
integer

total number of relevant items total number of keywords on the specified website or web page matching the set keyword_length and filters

tasks.result.items_count
integer

number of items in the results array

tasks.result.items
string[]

items array

tasks.result.items.keyword
string

returned keyword

tasks.result.items.frequency
integer

keyword frequency number of times the keyword appears on the website (or webpage if you specified a url)

tasks.result.items.density
integer

keyword density calculated as a ratio of frequency to the total count of keywords with the set keyword_length on the web page or website