DataForSEO
SEO, search-engine results, keyword research, backlinks and AI visibility data.
Search Intent
Classifies keywords as informational, navigational, commercial or transactional. Returns language_code, items_count and items. Wrapped in DataForSEO's envelope: data in tasks[0].result, outcome in tasks[0].status_code - a rejected request still returns HTTP 200. Intent decides what a page has to be before volume decides whether it is worth writing; pair it with post_dataforseo_labs_google_keyword_overview_live.
- Type: array object[]
- keywordsType: array string[]required
target keywords required field UTF-8 encoding maximum number of keywords you can specify in this array: 1000; the keywords will be converted to lowercase format learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article
- languageType: string
_name requiredfull name of the language required field if don’t specify language_code you can receive the list of available languages with their language_name by making a separate request to https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages Note: this endpoint currently supports the following languages only: Arabic, ar, Chinese(Traditional), zh-TW, Czech, cs, Danish, da, Dutch, nl, English, en, Finnish, fi, French, fr, German, de, Hebrew, he, Hindi, hi, Italian, it, Japanese, ja, Korean, ko, Malay, ms, Norwegian(Bokmål), nb, Polish, pl, Portuguese, pt, Romanian, ro, Russian, ru, Spanish, es, Swedish, sv, Thai, th, Ukrainian, uk, Vietnamese, vi, Bulgarian, bg, Croatian, hr, Serbian, sr, Slovenian, sl, Bosnian, bs, Greek, el, Hungarian, hu, Slovak, sk, Turkish, tr example: English
- languageType: string
_code language code required field if don’t specify language_name you can receive the list of available languages with their language_code by making a separate request to https://api.dataforseo.com/v3/dataforseo_labs/locations_and_languages Note: this endpoint currently supports these languages only; example: en
- tagType: 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
- Type: object200
Successful response
- Type: numbercost
total tasks cost, USD
- Type: integerstatus
_code 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
- Type: stringstatus
_message general informational message you can find the full list of general informational messages here
- Type: array string[]tasks
array of tasks
- Type: integertasks
_count the number of tasks in the tasks array
- Type: integertasks
_error the number of tasks in the tasks array returned with an error
- Type: numbertasks
.cost cost of the task, USD
- Type: objecttasks
.data contains the same parameters that you specified in the POST request
- Type: stringtasks
.id task identifier unique task identifier in our system in the UUID format
- Type: array string[]tasks
.path URL path
- Type: array string[]tasks
.result array of results
- Type: integertasks
.result _count number of elements in the result array
- Type: array string[]tasks
.result .items array of items with relevant traffic estimation data
- Type: integertasks
.result .items _count the number of results returned in the items array
- Type: stringtasks
.result .items .keyword target keyword in a POST array
- Type: objecttasks
.result .items .keyword _intent search intent data relevant for the specified keyword
- Type: stringtasks
.result .items .keyword _intent .label search intent name possible values: informational, navigational, commercial, transactional
- Type: numbertasks
.result .items .keyword _intent .probability search intent probability 1 indicates the highest probability
- Type: array string[]tasks
.result .items .secondary _keyword _intents contains objects with other possible search intents for the specified keyword
- Type: stringtasks
.result .items .secondary _keyword _intents .label search intent name possible values: informational, navigational, commercial, transactional
- Type: numbertasks
.result .items .secondary _keyword _intents .probability search intent probability
- Type: stringtasks
.result .language _code language code in a POST array if there is no data, then the value is null
- Type: integertasks
.status _code 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
- Type: stringtasks
.status _message informational message of the task you can find the full list of general informational messages here
- Type: stringtasks
.time execution time, seconds
- Type: stringtime
execution time, seconds
- Type: stringversion
the current version of the API
application/json - 400
Bad request
- 401
Unauthorized
- 402
The request cannot proceed because a billing requirement is not met.
- 403
The account is not permitted to perform this operation.
- 429
Rate limit exceeded
- 500
Internal server error
- 502
The service could not complete the request.
- 503
The API or billing service is temporarily unavailable.
- 504
The service timed out while processing the request.
- default
The operation failed. Keep the response request ID when contacting Felo support.
curl https://openapi.felo.ai/v1/beta/dataforseo/dataforseo_labs/google/search_intent/live \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '[
{}
]'
{
"version": "string",
"status_code": 1,
"status_message": "string",
"time": "string",
"cost": 1,
"tasks_count": 1,
"tasks_error": 1,
"tasks": [
"string"
],
"tasks.id": "string",
"tasks.status_code": 1,
"tasks.status_message": "string",
"tasks.time": "string",
"tasks.cost": 1,
"tasks.result_count": 1,
"tasks.path": [
"string"
],
"tasks.data": {},
"tasks.result": [
"string"
],
"tasks.result.language_code": "string",
"tasks.result.items_count": 1,
"tasks.result.items": [
"string"
],
"tasks.result.items.keyword": "string",
"tasks.result.items.keyword_intent": {},
"tasks.result.items.keyword_intent.label": "string",
"tasks.result.items.keyword_intent.probability": 1,
"tasks.result.items.secondary_keyword_intents": [
"string"
],
"tasks.result.items.secondary_keyword_intents.label": "string",
"tasks.result.items.secondary_keyword_intents.probability": 1
}