DataForSEO
SEO, search-engine results, keyword research, backlinks and AI visibility data.
OnPage API Microdata
Validates the structured data on one crawled url. Reads a finished crawl, so it needs the id from post_dataforseo_on_page_submit and returns crawl_progress plus a crawl_status of max_crawl_pages, pages_in_queue and pages_crawled - check those before trusting a small result, because a crawl still running simply has less to report. ⚠️ The page must have been part of the crawl: asking for a URL that was not returns status_code 40406, Requested page was not submitted for crawling, inside an HTTP 200. Widen max_crawl_pages or set start_url on the submit call if the page you want is missing. 💰 Free upstream: querying a finished crawl costs nothing, only the crawl itself does.
- Тип: array object[]
- idТип: stringобязательно
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"
- urlТип: stringобязательно
resource URL required field you can get this URL in the response of the Pages endpoint example: https://dataforseo.com/apis
- 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
- Тип: object200
Successful response
- Тип: numbercost
total tasks cost, USD
- Тип: 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
- Тип: stringstatus
_message general informational message you can find the full list of general informational messages here
- Тип: array string[]tasks
array of tasks
- Тип: integertasks
_count the number of tasks in the tasks array
- Тип: integertasks
_error the number of tasks in the tasks array returned with an error
- Тип: numbertasks
.cost cost of the task, USD
- Тип: objecttasks
.data contains the same parameters that you specified in the POST request
- Тип: stringtasks
.id task identifier unique task identifier in our system in the UUID format
- Тип: array string[]tasks
.path URL path
- Тип: array string[]tasks
.result array of results
- Тип: integertasks
.result _count number of elements in the result array
- Тип: stringtasks
.result .crawl _progress status of the crawling session possible values: in_progress, finished
- Тип: objecttasks
.result .crawl _status details of the crawling session
- Тип: integertasks
.result .crawl _status .max _crawl _pages maximum number of pages to crawl indicates the max_crawl_pages limit you specified when setting a task
- Тип: integertasks
.result .crawl _status .pages _crawled number of crawled pages
- Тип: integertasks
.result .crawl _status .pages _in _queue number of pages that are currently in the crawling queue
- Тип: objecttasks
.result .inspection _info information related to microdata validation
- Тип: array string[]tasks
.result .inspection _info .fields microdata fields an array of objects containing data fields related to the certain microdata type
- Тип: array string[]tasks
.result .inspection _info .fields .fields microdata fields an array of objects containing data fields related to the certain microdata type
- Тип: stringtasks
.result .inspection _info .fields .name field name name of the data field
- Тип: objecttasks
.result .inspection _info .fields .test _results microdata validation test results sub-type microdata test results that contain detected errors and related messages
- Тип: stringtasks
.result .inspection _info .fields .test _results .level level of microdata error can take the following values: fatal, error, warning, info
- Тип: stringtasks
.result .inspection _info .fields .test _results .message message associated with an error message providing the details of the detected error
- Тип: array string[]tasks
.result .inspection _info .fields .types list of microdata sub-types
- Тип: array string[]tasks
.result .inspection _info .fields .value microdata value microdata value specified on a target web page
- Тип: array string[]tasks
.result .inspection _info .types parent microdata types for a full list of available types, please visit schema.org
- Тип: array string[]tasks
.result .items items array
- Тип: integertasks
.result .items _count number of items in the results array
- Тип: objecttasks
.result .test _summary microdata validation test results
- Тип: integertasks
.result .test _summary .error number of serious microdata errors
- Тип: integertasks
.result .test _summary .fatal number of fatal microdata errors
- Тип: integertasks
.result .test _summary .info number of microdata information flags
- Тип: integertasks
.result .test _summary .warning number of microdata warnings
- Тип: stringtasks
.result .type type of the item = ‘json_ld’
- Тип: 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
- Тип: stringtasks
.status _message informational message of the task you can find the full list of general informational messages here
- Тип: stringtasks
.time execution time, seconds
- Тип: stringtime
execution time, seconds
- Тип: 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/on_page/microdata \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '[
{
"id": "",
"url": "",
"tag": ""
}
]'
{
"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.crawl_progress": "string",
"tasks.result.crawl_status": {},
"tasks.result.crawl_status.max_crawl_pages": 1,
"tasks.result.crawl_status.pages_in_queue": 1,
"tasks.result.crawl_status.pages_crawled": 1,
"tasks.result.test_summary": {},
"tasks.result.test_summary.fatal": 1,
"tasks.result.test_summary.error": 1,
"tasks.result.test_summary.warning": 1,
"tasks.result.test_summary.info": 1,
"tasks.result.items_count": 1,
"tasks.result.items": [
"string"
],
"tasks.result.type": "string",
"tasks.result.inspection_info": {},
"tasks.result.inspection_info.types": [
"string"
],
"tasks.result.inspection_info.fields": [
"string"
],
"tasks.result.inspection_info.fields.name": "string",
"tasks.result.inspection_info.fields.types": [
"string"
],
"tasks.result.inspection_info.fields.value": [
"string"
],
"tasks.result.inspection_info.fields.test_results": {},
"tasks.result.inspection_info.fields.test_results.level": "string",
"tasks.result.inspection_info.fields.test_results.message": "string",
"tasks.result.inspection_info.fields.fields": [
"string"
]
}