openapi: 3.0.1 info: title: DataForSEO AiOptimization OnPage API description: DataForSEO API is the starting point on your journey towards building powerful SEO software. With DataForSEO you can get all the data you need to build an efficient application while also saving your time and budget. DataForSEO API is using the REST technology for interchanging data between your application and our service. The data exchange is made through the widely used HTTP protocol, which allows applying our API to almost all programming languages. version: 1.0.0 servers: - url: https://api.dataforseo.com - url: https://sandbox.dataforseo.com tags: - name: OnPage paths: /v3/on_page/id_list: post: tags: - OnPage description: 'This endpoint is designed to provide you with a list of IDs and metadata for all On-Page tasks created within the specified time period, including both successful and uncompleted tasks. for more info please visit ''https://docs.dataforseo.com/v3/on_page/id_list/?bash''' operationId: OnPageIdList requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageIdListRequestInfo' nullable: true example: - datetime_from: '2026-04-12 04:39:39 +00:00' datetime_to: '2026-04-14 04:39:39 +00:00' limit: 100 offset: 0 sort: desc include_metadata: true responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageIdListResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/errors: post: tags: - OnPage description: 'By calling this endpoint you will receive information about the OnPage API tasks that returned an error within the past 7 days. for more info please visit ''https://docs.dataforseo.com/v3/on_page/errors/?bash''' operationId: OnPageErrors requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageErrorsRequestInfo' nullable: true example: - limit: 10 offset: 0 filtered_function: pingback_url responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageErrorsResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/force_stop: post: tags: - OnPage description: 'This endpoint is designed to force stop the crawl process of websites you specified in a task. The execution of all the tasks associated with the IDs indicated in your request to this endpoint will be stopped. You will still be able to obtain the data on pages that have been scanned until the crawling process was stopped. for more info please visit ''https://docs.dataforseo.com/v3/on_page/force_stop/?bash''' operationId: ForceStop requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageForceStopRequestInfo' nullable: true example: - id: 08121600-1535-0216-0000-37b4c7a34453 - id: 08121600-1535-0216-0000-d6a5000b6897 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageForceStopResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/available_filters: get: tags: - OnPage description: 'OnPage API supports plenty of customizable crawling parameters that allow you to adapt the extraction of website data to your requirements and modify the thresholds for various performance indicators. ‌‌ Here you will find all the necessary information about filters and thresholds that can be used with DataForSEO OnPage API endpoints. for more info please visit ''https://docs.dataforseo.com/v3/on_page/filters_and_thresholds/?bash''' operationId: OnPageAvailableFilters responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageAvailableFiltersResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/task_post: post: tags: - OnPage description: 'OnPage API checks websites for 60+ customizable on-page parameters defines and displays all found flaws and opportunities for optimization so that you can easily fix them. It checks meta tags, duplicate content, image tags, response codes, and other parameters on every page. You can find the full list of OnPage API check-up parameters in the Pages section. for more info please visit ''https://docs.dataforseo.com/v3/on_page/task_post/?bash''' operationId: TaskPost requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageTaskPostRequestInfo' nullable: true example: - target: dataforseo.com max_crawl_pages: 10 load_resources: true enable_javascript: true custom_js: meta = {}; meta.url = document.URL; meta; tag: some_string_123 pingback_url: https://your-server.com/pingscript?id=$id&tag=$tag responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageTaskPostResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/tasks_ready: get: tags: - OnPage description: 'The ‘Tasks Ready’ endpoint is designed to provide you with a list of completed tasks, which results haven’t been collected yet. for more info please visit ''https://docs.dataforseo.com/v3/on_page-tasks_ready/?bash''' operationId: OnPageTasksReady responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageTasksReadyResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/summary/{id}: get: tags: - OnPage description: 'Using this function, you can get the overall information on a website as well as drill down into exact on-page issues of a website that has been scanned. As a result, you will know what functions to use for receiving detailed data for each of the found issues. for more info please visit ''https://docs.dataforseo.com/v3/on_page/summary/?bash''' operationId: Summary parameters: - name: id in: path description: 'task identifier required field you can get this ID in the response of the Task POST endpoint example: “07131248-1535-0216-1000-17384017ad04”' required: true schema: type: string example: 00000000-0000-0000-0000-000000000000 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageSummaryResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/pages: post: tags: - OnPage description: 'This endpoint returns a list of crawled pages with on-page check-ups and other metrics related to the page performance. Using this function you will get page-specific data with detailed information on how well your pages are optimized for search. for more info please visit ''https://docs.dataforseo.com/v3/on_page/pages/?bash''' operationId: Pages requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPagePagesRequestInfo' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 filters: - - resource_type - '=' - html - and - - meta.scripts_count - '>' - 40 order_by: - meta.content.plain_text_word_count,desc limit: 10 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPagePagesResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/pages_by_resource: post: tags: - OnPage description: 'This endpoint will return the list of pages where a specific resource is located. Using this function you will also get the data related to the pages that contain a specified resource. You can get the URL of a resource using the Resources endpoint. for more info please visit ''https://docs.dataforseo.com/v3/on_page/page_by_resource/?bash''' operationId: PagesByResource requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPagePagesByResourceRequestInfo' nullable: true example: - id: 02241700-1535-0216-0000-034137259bc1 url: https://www.etsy.com/about/jobs.workco2018.js? responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPagePagesByResourceResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/resources: post: tags: - OnPage description: 'This endpoint will provide you with a list of resources, including images, scripts, stylesheets, and broken elements. You will get a detailed overview of every resource found on the crawled pages. for more info please visit ''https://docs.dataforseo.com/v3/on_page/resources/?bash''' operationId: Resources requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageResourcesRequestInfo' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 filters: - - resource_type - '=' - image - and - - size - '>' - 100000 order_by: - size,desc limit: 10 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageResourcesResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/duplicate_tags: post: tags: - OnPage description: 'This endpoint returns a list of pages that contain duplicate title or description tags. The response also contains data related to page performance. for more info please visit ''https://docs.dataforseo.com/v3/on_page/duplicate_tags/?bash''' operationId: DuplicateTags requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateTagsRequestInfo' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 type: duplicate_description limit: 10 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateTagsResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/duplicate_content: post: tags: - OnPage description: 'This endpoint returns a list of pages that have content similar to the page specified in the request. The response also contains data related to page performance and the similarity index that indicates how similar the compared pages are. for more info please visit ''https://docs.dataforseo.com/v3/on_page/duplicate_content/?bash''' operationId: DuplicateContent requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateContentRequestInfo' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 url: https://www.etsy.com/ responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateContentResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/links: post: tags: - OnPage description: 'This endpoint will provide you with a list of internal and external links detected on a target website. The following link types are supported: anchor – links that point to a specific portion of a webpage; image – links that point to an image; canonical – links that point to a canonical page; meta – links with meta http-equiv=refresh ; alternate – links with link rel="alternate" pointing to an alternative version of a webpage ; redirect – links with redirect status. for more info please visit ''https://docs.dataforseo.com/v3/on_page/links/?bash''' operationId: Links requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLinksRequestInfo' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 page_from: /apis/google-trends-api filters: - - dofollow - '=' - true - and - - direction - '=' - external limit: 10 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageLinksResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/redirect_chains: post: tags: - OnPage description: 'Redirect chains occur when there are at least two redirects between the initial URL and the destination URL. For example, if page A redirects to page B which redirects to page C, such a series of redirects is considered a redirect chain. Sometimes, if page B redirects back to page A, the redirect chain becomes closed and is considered a redirect loop. for more info please visit ''https://docs.dataforseo.com/v3/on_page/redirect_chains/?bash''' operationId: RedirectChains requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageRedirectChainsRequestInfo' nullable: true example: - id: 03051327-4536-0216-1000-3b458a2cfcca url: https://test_rdr.dataforseo.com/a/ responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageRedirectChainsResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/non_indexable: post: tags: - OnPage description: 'This endpoint returns a list of pages that are blocked from being indexed by Google and other search engines through robots.txt, HTTP headers, or meta tags settings. for more info please visit ''https://docs.dataforseo.com/v3/on_page/non_indexable/?bash''' operationId: NonIndexable requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageNonIndexableRequestInfo' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 filters: - - reason - '=' - robots_txt - and - - url - like - '%go%' limit: 10 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageNonIndexableResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/waterfall: post: tags: - OnPage description: 'This endpoint is designed to provide you with the page speed insights. Using this function you can get detailed information about the page loading time, time to secure connection, the time it takes to load page resources, and so on. for more info please visit ''https://docs.dataforseo.com/v3/on_page/waterfall/?bash''' operationId: Waterfall requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageWaterfallRequestInfo' nullable: true example: - id: 08101204-0696-0216-0000-644a7b21a48a url: https://dataforseo.com/tag/broken-links responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageWaterfallResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/keyword_density: post: tags: - OnPage description: 'This endpoint will provide you with keyword density and keyword frequency data for terms appearing on the specified website or web page. You can filter and sort the data that will be retrieved with this API call. for more info please visit ''https://docs.dataforseo.com/v3/on_page/keyword_density/?bash''' operationId: KeywordDensity requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageKeywordDensityRequestInfo' nullable: true example: - id: 09101923-1535-0216-0000-2389a8854b70 url: https://dataforseo.com/ keyword_length: 2 filters: - frequency - '>' - 5 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageKeywordDensityResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/microdata: post: tags: - OnPage description: 'This endpoint is designed to validate structured JSON-LD data and Microdata. Using this function you will obtain microdata available on the specified page of the target website and detailed results of its validation. To use this endpoint, set the validate_micromarkup parameter to true in the POST request to OnPage API. for more info please visit ''https://docs.dataforseo.com/v3/on_page/microdata/?bash''' operationId: Microdata requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageMicrodataRequestInfo' nullable: true example: - id: 02241700-1535-0216-0000-034137259bc1 url: https://dataforseo.com/apis responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageMicrodataResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/raw_html: post: tags: - OnPage description: 'This endpoint returns the HTML of a page you indicate in the request. for more info please visit ''https://docs.dataforseo.com/v3/on_page/raw_html/?bash''' operationId: RawHtml requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageRawHtmlRequestInfo' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 url: https://dataforseo.com/apis responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageRawHtmlResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/page_screenshot: post: tags: - OnPage description: 'Using this endpoint, you can capture a full high-quality screenshot of any webpage. In this way, you can review the target page as the DataForSEO crawler and Googlebot see it. for more info please visit ''https://docs.dataforseo.com/v3/on_page/page_screenshot/?bash''' operationId: PageScreenshot requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPagePageScreenshotRequestInfo' nullable: true example: - url: https://dataforseo.com/apis responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPagePageScreenshotResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/content_parsing: post: tags: - OnPage description: 'This endpoint allows parsing the content on any page you specify and will return the structured content of the target page, including link URLs, anchors, headings, and textual content. for more info please visit ''https://docs.dataforseo.com/v3/on_page/content_parsing/?bash''' operationId: ContentParsing requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageContentParsingRequestInfo' nullable: true example: - url: https://dataforseo.com/blog/a-versatile-alternative-to-google-trends-exploring-the-power-of-dataforseo-trends-api id: 11161551-1535-0216-0000-500b3f307f92 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageContentParsingResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/content_parsing/live: post: tags: - OnPage description: 'This endpoint allows parsing the content on any page you specify and will return the structured content of the target page, including link URLs, anchors, headings, and textual content. for more info please visit ''https://docs.dataforseo.com/v3/on_page/content_parsing/live/?bash''' operationId: ContentParsingLive requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageContentParsingLiveRequestInfo' nullable: true example: - url: https://dataforseo.com/blog/a-versatile-alternative-to-google-trends-exploring-the-power-of-dataforseo-trends-api responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageContentParsingLiveResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/instant_pages: post: tags: - OnPage description: 'Using this function you will get page-specific data with detailed information on how well a particular page is optimized for organic search. for more info please visit ''https://docs.dataforseo.com/v3/on_page/instant_pages/?bash''' operationId: InstantPages requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageInstantPagesRequestInfo' nullable: true example: - url: https://dataforseo.com/blog enable_javascript: true custom_js: meta = {}; meta.url = document.URL; meta; responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageInstantPagesResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/lighthouse/languages: get: tags: - OnPage description: 'You will receive the list of languages by calling this API.   As a response of the API server, you will receive JSON-encoded data containing a tasks array with the information specific to the set tasks. for more info please visit ''https://docs.dataforseo.com/v3/on_page/lighthouse/languages/?bash''' operationId: LighthouseLanguages responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseLanguagesResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/lighthouse/audits: get: tags: - OnPage description: 'The OnPage Lighthouse API is based on Google’s open-source Lighthouse project and provides data on the quality of web pages. for more info please visit ''https://docs.dataforseo.com/v3/on_page/lighthouse/audits/?bash''' operationId: LighthouseAudits responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseAuditsResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/lighthouse/versions: get: tags: - OnPage description: 'OnPage Lighthouse API is based on Google’s open-source Lighthouse project and provides data on the quality of web pages. for more info please visit ''https://docs.dataforseo.com/v3/on_page/lighthouse/versions/?bash''' operationId: LighthouseVersions responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseVersionsResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/lighthouse/task_post: post: tags: - OnPage description: 'The OnPage Lighthouse API is based on Google’s open-source Lighthouse project for measuring the quality of web pages and web apps. for more info please visit ''https://docs.dataforseo.com/v3/on_page/lighthouse/task_post/?bash''' operationId: LighthouseTaskPost requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseTaskPostRequestInfo' nullable: true example: - url: https://dataforseo.com for_mobile: true tag: some_string_123 pingback_url: https://your-server.com/pingscript?id=$id&tag=$tag responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseTaskPostResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/lighthouse/tasks_ready: get: tags: - OnPage description: 'The ‘Tasks Ready’ endpoint is designed to provide you with the list of completed tasks, which haven’t been collected yet. If you use the Standard method without specifying the postback_url, you can receive the list of id for all completed tasks using this endpoint. Then, you can collect the results using the ‘Task GET’ endpoint. for more info please visit ''https://docs.dataforseo.com/v3/on_page/lighthouse/tasks_ready/?bash''' operationId: LighthouseTasksReady responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseTasksReadyResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/lighthouse/task_get/json/{id}: get: tags: - OnPage description: 'The OnPage Lighthouse API is based on Google’s open-source Lighthouse project for measuring the quality of web pages and web apps. This endpoint will provide you with the results of Lighthouse Audit. Use the id received in the response of your Task POST request to get the results. The response will include data about all categories and audits specified in the Task POST. By default, the response will include all available data about the webpage including its performance, accessibility, progressive web apps, SEO, and compliance with best practices. for more info please visit ''https://docs.dataforseo.com/v3/on_page/lighthouse/task_get/json/?bash''' operationId: LighthouseTaskGetJson parameters: - name: id in: path description: 'task identifier required field you can get this ID in the response of the Task POST endpoint example: “07131248-1535-0216-1000-17384017ad04”' required: true schema: type: string example: 00000000-0000-0000-0000-000000000000 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseTaskGetJsonResponseInfo' nullable: true security: - basicAuth: [] /v3/on_page/lighthouse/live/json: post: tags: - OnPage description: 'The OnPage Lighthouse API is based on Google’s open-source Lighthouse project for measuring the quality of web pages and web apps. for more info please visit ''https://docs.dataforseo.com/v3/on_page/lighthouse/live/json/?bash''' operationId: LighthouseLiveJson requestBody: content: application/json: schema: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseLiveJsonRequestInfo' nullable: true example: - url: https://dataforseo.com for_mobile: true tag: some_string_123 responses: '200': description: Successful operation content: application/json: schema: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseLiveJsonResponseInfo' nullable: true security: - basicAuth: [] components: schemas: OnPageNonIndexableRequestInfo: type: object properties: id: type: string description: '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”' limit: type: integer description: 'the maximum number of returned pages optional field default value: 100 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned pages optional field default value: 0 if you specify the 10 value, the first ten pages in the results array will be omitted and the data will be provided for the successive pages' nullable: true filters: type: array items: type: object nullable: true description: '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: ["reason","=","robots_txt"][["reason","<>","robots_txt"], "and", ["url","not_like","%/wp-admin/%"]] [["url","not_like","%/wp-admin/%"], "and", [["reason","<>","meta_tag"],"or",["reason","<>","http_header"]]] The full list of possible filters is available by this link.' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 filters: - - reason - '=' - robots_txt - and - - url - like - '%go%' limit: 10 OnPageDuplicateContentItem: type: object properties: url: type: string description: URL of the specified page nullable: true total_count: type: integer description: total count of duplicate pages format: int64 nullable: true pages: type: array items: type: object oneOf: - $ref: '#/components/schemas/DuplicatePageInfo' nullable: true description: pages with duplicate content nullable: true BaseResponseTaskInfo: properties: id: type: string description: 'task identifier unique task identifier in our system in the UUID format' nullable: true status_code: type: integer description: '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' nullable: true status_message: type: string description: 'informational message of the task you can find the full list of general informational messages here' nullable: true time: type: string description: execution time, seconds nullable: true cost: type: number description: total tasks cost, USD format: double nullable: true result_count: type: integer description: number of elements in the result array format: int64 nullable: true path: type: array items: type: string nullable: true description: URL path nullable: true data: type: object additionalProperties: type: object nullable: true description: contains the same parameters that you specified in the POST request nullable: true OnPageDuplicateTagsRequestInfo: type: object properties: id: type: string description: '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”' type: type: string description: type of element accumulator: type: string description: 'tag value optional field specify a title or description here if you want to receive a list of duplicate pages that contains this tag' nullable: true limit: type: integer description: 'the maximum number of returned pages optional field default value: 100 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned pages optional field default value: 0 if you specify the 10 value, the first ten pages in the results array will be omitted and the data will be provided for the successive pages' nullable: true tag: type: string description: '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' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 type: duplicate_description limit: 10 OnPageDuplicateContentRequestInfo: type: object properties: id: type: string description: '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: type: string description: 'page URL required field specify the initial page you want to receive duplicate content for' similarity: type: integer description: 'content similarity score by default, the content is considered duplicate if the value is greater than or equals 6 you can specify any similarity score in the 0-to-10 range' nullable: true limit: type: integer description: 'the maximum number of returned pages optional field default value: 100 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned pages optional field default value: 0 if you specify the 10 value, the first ten pages in the results array will be omitted and the data will be provided for the successive pages' nullable: true tag: type: string description: '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' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 url: https://www.etsy.com/ OnPageMicrodataResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true test_summary: type: object oneOf: - $ref: '#/components/schemas/TestSummary' description: microdata validation test results nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageMicrodataInfoItem' nullable: true description: items array nullable: true TopicInfo: type: object properties: h_title: type: string description: meta title nullable: true main_title: type: string description: main title of the block nullable: true author: type: string description: content author name nullable: true language: type: string description: content language nullable: true level: type: integer description: HTML level nullable: true primary_content: type: array items: type: object oneOf: - $ref: '#/components/schemas/SectionContentItemInfo' nullable: true description: 'primary content on the page you can find more information about content priority calculation in this help center article' nullable: true secondary_content: type: array items: type: object oneOf: - $ref: '#/components/schemas/SectionContentItemInfo' nullable: true description: 'secondary content on the page you can find more information about content priority calculation in this help center article' nullable: true table_content: type: array items: type: object oneOf: - $ref: '#/components/schemas/TableContentInfo' nullable: true description: content of the table on the page nullable: true OnPageRawHtmlResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: object oneOf: - $ref: '#/components/schemas/OnPageRawHtmlItem' description: items object nullable: true OnPageLighthouseTasksReadyResultInfo: type: object properties: id: type: string description: 'task identifier of the completed task unique task identifier in our system in the UUID format' nullable: true tag: type: string description: user-defined task identifier nullable: true endpoint_json: type: string description: URL for collecting the results of the OnPage Lighthouse JSON task nullable: true OnPageWaterfallResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageWaterfallItem' nullable: true description: items array nullable: true OnPageAvailableFiltersResultInfo: type: object properties: resources: type: object additionalProperties: type: string nullable: true nullable: true pages: type: object additionalProperties: type: string nullable: true nullable: true non_indexable: type: object additionalProperties: type: string nullable: true nullable: true links: type: object additionalProperties: type: string description: type of element nullable: true nullable: true pages_by_resource: type: object additionalProperties: type: string nullable: true nullable: true redirect_chains: type: object additionalProperties: type: string nullable: true nullable: true keyword_density: type: object additionalProperties: type: string nullable: true nullable: true invalid_resources: type: object additionalProperties: type: string nullable: true nullable: true OnPageNonIndexableResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageNonIndexableTaskInfo' nullable: true description: array of tasks nullable: true SectionContentItemInfo: type: object properties: text: type: string description: 'secondary content on the page you can find more information about content priority calculation in this help center article' nullable: true url: type: string description: 'page URL. displayed in case the text is a link anchor' nullable: true urls: type: array items: type: object oneOf: - $ref: '#/components/schemas/ContentUrlInfo' nullable: true description: contains other URLs and anchors found in the content element nullable: true OnPageMicrodataResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageMicrodataTaskInfo' nullable: true description: array of tasks nullable: true OnPagePagesByResourceRequestInfo: type: object properties: id: type: string description: '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: type: string description: 'resource URL required field you can get this URL in the response of the Resources endpoint example: https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js' limit: type: integer description: 'the maximum number of returned pages optional field default value: 100 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned pages optional field default value: 0 if you specify the 10 value, the first ten pages in the results array will be omitted and the data will be provided for the successive pages' nullable: true filters: type: array items: type: object nullable: true description: '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: ["meta.external_links_count","<=",50]["url","like","https://dataforseo.com/apis/dataforseo-labs-api"] [["checks.high_waiting_time","=",false], "and",["resource_type","=","html"]] [["page_timing.duration_time","<",100],"and",[["checks.large_page_size","=",false],"or",["checks.high_waiting_time","=",false]]] The full list of possible filters is available by this link.' nullable: true order_by: type: array items: type: string description: '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: ["meta.external_links_count,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: ["page_timing.dom_complete,asc","size,desc"]' nullable: true tag: type: string description: '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' nullable: true example: - id: 02241700-1535-0216-0000-034137259bc1 url: https://www.etsy.com/about/jobs.workco2018.js? OnPageContentParsingResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/ContentParsingElement' nullable: true description: items array nullable: true OnPagePagesResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true search_after_token: type: string nullable: true current_offset: type: integer nullable: true total_items_count: type: integer description: total number of relevant items in the database format: int64 nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/BaseOnPageResourceItem' nullable: true description: items array nullable: true OnPageLinksRequestInfo: type: object properties: id: type: string description: '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”' page_from: type: string description: 'relative page URL optional field if you use this field, the API response will contain only links from the specified page note that in this field you can specify relative URLs only' nullable: true page_to: type: string description: 'relative page URL optional field if you use this field, the API response will contain only internal links pointing to the specified page note that in this field you can specify relative URLs only' nullable: true limit: type: integer description: 'the maximum number of returned links optional field default value: 100 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned links optional field default value: 0 if you specify the 10 value, the first ten links in the results array will be omitted and the data will be provided for the successive links' nullable: true filters: type: array items: type: object nullable: true description: '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: ["direction","=","external"] [["domain_to","<>","example.com"], "and", ["link_from","not_like","%example.com/blog%"]] [["direction","=","external"], "and", [["link_from","like","%example.com/blog%"],"or",["link_from","like","%example.com/help%"]]] The full list of possible filters is available by this link.' nullable: true search_after_token: type: string description: 'token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 20,000 results in a single request; by specifying the unique search_after_token value from the response array, you will get the subsequent results of the initial task; search_after_token values are unique for each subsequent task ; Note: if the search_after_token is specified in the request, all other parameters should be identical to the previous request' nullable: true tag: type: string description: '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' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 page_from: /apis/google-trends-api filters: - - dofollow - '=' - true - and - - direction - '=' - external limit: 10 OnPageDuplicateContentTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateContentResultInfo' nullable: true description: array of results nullable: true OnPageResourcesTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageResourcesResultInfo' nullable: true description: array of results nullable: true OnPageNonIndexableTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageNonIndexableResultInfo' nullable: true description: array of results nullable: true OnPageLighthouseTaskPostResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseTaskPostTaskInfo' nullable: true description: array of tasks nullable: true OnPageTasksReadyResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageTasksReadyTaskInfo' nullable: true description: array of tasks nullable: true OnPageRawHtmlResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageRawHtmlTaskInfo' nullable: true description: array of tasks nullable: true OnPageWaterfallItem: type: object properties: page_url: type: string description: URL of the page nullable: true time_to_interactive: type: integer description: 'Time To Interactive (TTI) metric the time it takes until the user can interact with a page (in milliseconds)' nullable: true dom_complete: type: integer description: 'time to load resources the time it takes until the page and all of its subresources are downloaded (in milliseconds)' nullable: true connection_time: type: integer description: 'time to connect to a server the time it takes until the connection with a server is established (in milliseconds)' nullable: true time_to_secure_connection: type: integer description: 'time to establish a secure connection the time it takes until the secure connection with a server is established (in milliseconds)' nullable: true request_sent_time: type: integer description: 'time to send a request to a server the time it takes until the request to a server is sent (in milliseconds)' nullable: true waiting_time: type: integer description: time to first byte (TTFB) in milliseconds nullable: true download_time: type: integer description: time it takes for a browser to receive a response (in milliseconds) nullable: true duration_time: type: integer description: total time it takes until a browser receives a complete response from a server (in milliseconds) nullable: true fetch_start: type: integer description: 'time to start downloading the HTML resource the amount of time the browser needs to start downloading a page' nullable: true fetch_end: type: integer description: 'time to complete downloading the HTML resource the amount of time the browser needs to complete downloading a page' nullable: true resources: type: array items: type: object oneOf: - $ref: '#/components/schemas/WaterfallResourceInfo' nullable: true description: 'resource-specific timing contains separate arrays with timing for each resource found on the page' nullable: true OnPageDuplicateTagsTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateTagsResultInfo' nullable: true description: array of results nullable: true OnPageTasksReadyResultInfo: type: object properties: id: type: string description: 'task identifier of the completed task unique task identifier in our system in the UUID format' nullable: true target: type: string description: target website specified when setting a task nullable: true date_posted: type: string description: date when the task was posted (in the UTC format) nullable: true tag: type: string description: user-defined task identifier nullable: true OnPageContentParsingLiveResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageContentParsingLiveTaskInfo' nullable: true description: array of tasks nullable: true OnPageRawHtmlTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageRawHtmlResultInfo' nullable: true description: array of results nullable: true OnPageKeywordDensityResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true total_items_count: type: integer description: 'total number of relevant items total number of keywords on the specified website or web page matching the set keyword_length and filters' format: int64 nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageKeywordDensityItem' nullable: true description: items array nullable: true OnPageKeywordDensityRequestInfo: type: object properties: id: type: string description: '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: type: integer description: 'number of words for a keyword required field possible values: 1, 2, 3, 4, 5' url: type: string description: '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://)' nullable: true limit: type: integer description: 'the maximum number of returned keywords optional field default value: 100 maximum value: 1000' nullable: true filters: type: array items: type: object nullable: true description: '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","<","6"]] [["keyword","not_like","%seo%"], "and", [["frequency",">","6"],"or",["density",">","0.02"]]] The full list of possible filters is available by this link.' nullable: true order_by: type: array items: type: string description: '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"]' nullable: true tag: type: string description: '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' nullable: true example: - id: 09101923-1535-0216-0000-2389a8854b70 url: https://dataforseo.com/ keyword_length: 2 filters: - frequency - '>' - 5 OnPageNonIndexableItem: type: object properties: reason: type: string description: 'the reason why the page is non-indexable can take the following values: robots_txt, meta_tag, http_header, attribute, too_many_redirects' nullable: true url: type: string description: url of the non-indexable page nullable: true TableContentItemInfo: type: object properties: row_cells: type: array items: type: object oneOf: - $ref: '#/components/schemas/RowCellInfo' nullable: true description: content of the row cells of the header nullable: true PageSectionContentInfo: type: object properties: primary_content: type: array items: type: object oneOf: - $ref: '#/components/schemas/SectionContentItemInfo' nullable: true description: 'primary content on the page you can find more information about content priority calculation in this help center article' nullable: true secondary_content: type: array items: type: object oneOf: - $ref: '#/components/schemas/SectionContentItemInfo' nullable: true description: 'secondary content on the page you can find more information about content priority calculation in this help center article' nullable: true table_content: type: array items: type: object oneOf: - $ref: '#/components/schemas/TableContentInfo' nullable: true description: content of the table on the page nullable: true OnPagePagesRequestInfo: type: object properties: id: type: string description: '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”' limit: type: integer description: 'the maximum number of returned pages optional field default value: 100 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned pages optional field default value: 0 if you specify the 10 value, the first ten pages in the results array will be omitted and the data will be provided for the successive pages' nullable: true filters: type: array items: type: object nullable: true description: '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: ["meta.external_links_count","<=",50]["url","like","https://dataforseo.com/apis/dataforseo-labs-api"][["checks.high_waiting_time","=",false], "and",["resource_type","=","html"]][["page_timing.duration_time","<",100],"and",[["checks.large_page_size","=",false],"or",["checks.high_waiting_time","=",false]]]The full list of possible filters is available by this link.' nullable: true order_by: type: array items: type: string description: '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: ["meta.external_links_count,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: ["page_timing.dom_complete,asc","size,desc"]' nullable: true search_after_token: type: string description: 'token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 20,000 results in a single request; by specifying the unique search_after_token value from the response array, you will get the subsequent results of the initial task; search_after_token values are unique for each subsequent task ; Note: if the search_after_token is specified in the request, all other parameters should be identical to the previous request' nullable: true tag: type: string description: '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' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 filters: - - resource_type - '=' - html - and - - meta.scripts_count - '>' - 40 order_by: - meta.content.plain_text_word_count,desc limit: 10 OnPageAvailableFiltersTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageAvailableFiltersResultInfo' nullable: true nullable: true OnPageLinksTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLinksResultInfo' nullable: true description: array of results nullable: true OnPageSummaryResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true crawl_gateway_address: type: string description: 'crawler ip address displays the IP address used by the crawler to initiate the current crawling session you can find the full list of IPs used by our crawler in the Overview section' nullable: true crawl_stop_reason: type: string description: 'reason why the crawling stopped information about the reason why the crawling process stopped; possible values: limit_exceeded – the limit set in the max_crawl_pages was exceeded; empty_queue – all URLs in the queue were crawled; force_stopped – the crawling process was halted using the On Page API Force Stop function; unexpected_exception – an internal error was encountered while crawling the target, contact support for more info' nullable: true domain_info: type: object oneOf: - $ref: '#/components/schemas/DomainInfo' description: 'domain-wide info on-page information about the target domain and crawling process' nullable: true page_metrics: type: object oneOf: - $ref: '#/components/schemas/PageMetrics' description: 'page-specific info metrics information on the target website pages' nullable: true AvailibleVersions: type: object properties: version: type: string description: lighthouse version nullable: true default: type: boolean description: 'the version is used by default if false, the version is not used by default and should be specified in the corresponding field of the POST request if necessary' nullable: true HunspellInfo: type: object properties: hunspell_language_code: type: string description: spellcheck language code nullable: true misspelled: type: array items: type: object oneOf: - $ref: '#/components/schemas/HunspellMisspelledInfo' nullable: true description: array of misspelled words nullable: true MicrodataFieldsInfo: type: object properties: name: type: string description: 'field name name of the data field' nullable: true types: type: array items: type: string nullable: true description: list of microdata types nullable: true value: type: string description: 'microdata value microdata value specified on a target web page' nullable: true test_results: type: object oneOf: - $ref: '#/components/schemas/MessageInfo' description: 'microdata validation test results sub-type microdata test results that contain detected errors and related messages' nullable: true fields: type: array items: type: object oneOf: - $ref: '#/components/schemas/MicrodataFieldsInfo' nullable: true description: 'microdata fields an array of objects containing data fields related to the certain microdata type' nullable: true OnPageInstantPagesRequestInfo: type: object properties: url: type: string description: 'target page url required field absolute URL of the target page; Note #1: results will be returned for the specified URL only; Note #2: to prevent denial-of-service events, tasks that contain a duplicate crawl host will be returned with a 40501 error; to prevent this error from occurring, avoid setting tasks with the same domain if at least one of your previous tasks with this domain (including a page URL on the domain) is still in a crawling queue' custom_user_agent: type: string description: 'custom user agent optional field custom user agent for crawling a website example: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 default value: Mozilla/5.0 (compatible; RSiteAuditor)' nullable: true browser_preset: type: string description: 'preset for browser screen parameters optional field if you use this field, you don’t need to indicate browser_screen_width, browser_screen_height, browser_screen_scale_factorpossible values: desktop, mobile, tabletdesktop preset will apply the following values: browser_screen_width: 1920 browser_screen_height: 1080 browser_screen_scale_factor: 1 mobile preset will apply the following values: browser_screen_width: 390 browser_screen_height: 844 browser_screen_scale_factor: 3 tablet preset will apply the following values: browser_screen_width: 1024 browser_screen_height: 1366 browser_screen_scale_factor: 2 Note: to use this parameter, set enable_javascript or enable_browser_rendering to true' nullable: true browser_screen_width: type: integer description: 'browser screen width optional field you can set a custom browser screen width to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored;Note: to use this parameter, set enable_javascript or enable_browser_rendering to trueminimum value, in pixels: 240 maximum value, in pixels: 9999' format: int64 nullable: true browser_screen_height: type: integer description: 'browser screen height optional field you can set a custom browser screen height to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored;Note: to use this parameter, set enable_javascript or enable_browser_rendering to trueminimum value, in pixels: 240 maximum value, in pixels: 9999' nullable: true browser_screen_scale_factor: type: number description: 'browser screen scale factor optional field you can set a custom browser screen resolution ratio to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored;Note: to use this parameter, set enable_javascript or enable_browser_rendering to trueminimum value: 0.5 maximum value: 3' nullable: true store_raw_html: type: boolean description: 'store HTML of a crawled page optional field set to true if you want get the HTML of the page using the OnPage Raw HTML endpoint default value: false' nullable: true accept_language: type: string description: 'language header for accessing the website optional field all locale formats are supported (xx, xx-XX, xxx-XX, etc.) Note: if you do not specify this parameter, some websites may deny access; in this case, pages will be returned with the "type":"broken in the response array' nullable: true load_resources: type: boolean description: 'load resources optional field set to true if you want to load image, stylesheets, scripts, and broken resources default value: false Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true enable_javascript: type: boolean description: 'load javascript on a page optional field set to true if you want to load the scripts available on a page default value: false Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true enable_browser_rendering: type: boolean description: 'emulate browser rendering to measure Core Web Vitals optional field by using this parameter you will be able to emulate a browser when loading a web page; enable_browser_rendering loads styles, images, fonts, animations, videos, and other resources on a page; default value: false set to true to obtain Core Web Vitals (FID, CLS, LCP) metrics in the response; if you use this field, parameters enable_javascript, and load_resources are enabled automatically; Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true disable_cookie_popup: type: boolean description: "disable the cookie popup \noptional field\nset to true if you want to disable the popup requesting cookie consent from the user;\ndefault value:\nfalse" nullable: true return_despite_timeout: type: boolean description: 'return data on pages despite the timeout error optional field if true, the data will be provided on pages that failed to load within 120 seconds and responded with a timeout error; default value: false' nullable: true enable_xhr: type: boolean description: 'enable XMLHttpRequest on a page optional field set to true if you want our crawler to request data from a web server using the XMLHttpRequest object default value: falseif you use this field, enable_javascript must be set to true;' nullable: true custom_js: type: string description: 'custom javascript optional fieldNote that the execution time for the script you enter here should be 700 ms maximum; for example, you can use the following JS snippet to check if the website contains Google Tag Manager as a scr attribute: let meta = { haveGoogleAnalytics: false, haveTagManager: false };\r\nfor (var i = 0; i < document.scripts.length; i++) {\r\n let src = document.scripts[i].getAttribute(\"src\");\r\ n if (src != undefined) {\r\n if (src.indexOf(\"analytics.js\") >= 0)\r\n meta.haveGoogleAnalytics = true;\r\n\tif (src.indexOf(\"gtm.js\") >= 0)\r\n meta.haveTagManager = true;\r\n }\r\n}\ r\nmeta;the returned value depends on what you specified in this field. For instance, if you specify the following script: meta = {}; meta.url = document.URL; meta.test = ''test''; meta; as a response you will receive the following data: "custom_js_response": { "url": "https://dataforseo.com/", "test": "test" } Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true validate_micromarkup: type: boolean description: 'enable microdata validation optional field if set to true, you can use the OnPage API Microdata endpoint with the id of the task; default value: false' nullable: true check_spell: type: boolean description: 'check spelling optional field set to true to check spelling on a website using Hunspell library default value: false' nullable: true checks_threshold: type: object additionalProperties: type: integer format: int64 nullable: true description: 'custom threshold values for checks optional field you can specify custom threshold values for the parameters included in the checks array of OnPage API responses; Note: only integer threshold values can be modified;' nullable: true switch_pool: type: boolean description: 'switch proxy pool optional field if true, additional proxy pools will be used to obtain the requested data; the parameter can be used if a multitude of tasks is set simultaneously, resulting in occasional rate-limit and/or site_unreachable errors' nullable: true ip_pool_for_scan: type: string description: 'proxy pool optional field you can choose a location of the proxy pool that will be used to obtain the requested data; the parameter can be used if page content is inaccessible in one of the locations, resulting in occasional site_unreachable errors possible values: us, de' nullable: true example: - url: https://dataforseo.com/blog enable_javascript: true custom_js: meta = {}; meta.url = document.URL; meta; OnPageTaskPostRequestInfo: type: object properties: target: type: string description: 'target domain required field domain name should be specified without https:// and www. if you specify the page URL, the results will be returned for the domain included in the URL' max_crawl_pages: type: integer description: 'crawled pages limit required field the number of pages to crawl on the specified domain Note: if you set max_crawl_pages to 1 and do not specify start_url or set a homepage in it, the following sitewide checks will be disabled: test_canonicalization, enable_www_redirect_check, test_hidden_server_signature, test_page_not_found, test_directory_browsing, test_https_redirect to enable them anyway, set force_sitewide_checks to trueif you set max_crawl_pages to 1 and specify start_url other than a homepage, all sitewide checks will be disabled; to enable them anyway, set force_sitewide_checks to true' start_url: type: string description: "the first url to crawl \noptional field\nNote: you should specify an absolute URL\nif you want to crawl a single page, specify its URL in this field and additionally set the max_crawl_pages parameter to 1\nyou can also use the live Instant Pages endpoint to get page-specific data" nullable: true force_sitewide_checks: type: boolean description: 'enable sitewide checks when crawling a single page optional field set to true to get data on sitewide checks when crawling a single page; default value: false' nullable: true priority_urls: type: array items: type: string description: 'urls to be crawled bypassing the queue optional field URLs specified in this array will be crawled in the first instance, bypassing the crawling queue; Note: you should specify the absolute URL; you can specify up to 20 URLs; all URLs in the array must belong to the target domain; subdomains will be ignored unless the allow_subdomains parameter is set to trueexample: "priority_urls": [ "https://dataforseo.com/apis/serp-api", "https://dataforseo.com/contact" ]' nullable: true max_crawl_depth: type: integer description: 'crawl depth optional field the linking depth of the pages to crawl; for example, starting page of the crawl is level 0, pages that have links from that page are level 1, etc.' nullable: true crawl_delay: type: integer description: 'delay between hits, ms optional field the custom delay between crawler hits to the server default value: 2000' nullable: true store_raw_html: type: boolean description: 'store HTML of crawled pages optional field set to true if you want to get the HTML of the page using the OnPage Raw HTML endpoint default value: false' nullable: true enable_content_parsing: type: boolean description: 'parse content on crawled pages optional field set to true to use the OnPage Content Parsing endpoint default value: false' nullable: true support_cookies: type: boolean description: 'support cookies on crawled pages optional field set to true to support cookies when crawling the pages default value: false' nullable: true accept_language: type: string description: 'language header for accessing the website optional field all locale formats are supported (xx, xx-XX, xxx-XX, etc.) Note: if you do not specify this parameter, some websites may deny access; in this case, pages will be returned with the "type":"broken in the response array' nullable: true custom_robots_txt: type: string description: 'custom robots.txt settings optional field example: Disallow: /directory1/' nullable: true robots_txt_merge_mode: type: string description: 'merge with or override robots.txt settings optional field possible values: merge, override; set to override if you want to ignore website crawling restrictions and other robots.txt settings default value: merge; Note: if set to override, specify the custom_robots_txt parameter' nullable: true custom_user_agent: type: string description: 'custom user agent optional field custom user agent for crawling a website example: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 default value: Mozilla/5.0 (compatible; RSiteAuditor)' nullable: true browser_preset: type: string description: 'preset for browser screen parameters optional field if you use this field, you don’t need to indicate browser_screen_width, browser_screen_height, browser_screen_scale_factorpossible values: desktop, mobile, tabletdesktop preset will apply the following values:browser_screen_width: 1920 browser_screen_height: 1080 browser_screen_scale_factor: 1mobile preset will apply the following values:browser_screen_width: 390 browser_screen_height: 844 browser_screen_scale_factor: 3tablet preset will apply the following values:browser_screen_width: 1024 browser_screen_height: 1366 browser_screen_scale_factor: 2 Note: to use this parameter, set enable_javascript or enable_browser_rendering to true' nullable: true browser_screen_width: type: integer description: 'browser screen width optional field you can set a custom browser screen width to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored; Note: to use this parameter, set enable_javascript or enable_browser_rendering to trueminimum value, in pixels: 240 maximum value, in pixels: 9999' format: int64 nullable: true browser_screen_height: type: integer description: 'browser screen height optional field you can set a custom browser screen height to perform an audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored; Note: to use this parameter, set enable_javascript or enable_browser_rendering to trueminimum value, in pixels: 240 maximum value, in pixels: 9999' nullable: true browser_screen_scale_factor: type: number description: 'browser screen scale factor optional field you can set a custom browser screen resolution ratio to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored; Note: to use this parameter, set enable_javascript or enable_browser_rendering to trueminimum value: 0.5 maximum value: 3' nullable: true respect_sitemap: type: boolean description: 'respect sitemap when crawling optional field set to true if you want to follow the order of pages indicated in the primary sitemap when crawling; default value: false Note: if set to true, the click_depth value in the API response will equal 0; the max_crawl_depth field of the request will be ignored, you can specify the number of pages to crawl using the max_crawl_pages parameter' nullable: true custom_sitemap: type: string description: 'custom sitemap url optional field the URL of the page where the alternative sitemap is located Note: if you want to use this parameter, respect_sitemap should be true' nullable: true crawl_sitemap_only: type: boolean description: 'crawl only pages indicated in the sitemap optional field set to true if you want to crawl only the pages indicated in the sitemap if you set this parameter to true and do not specify custom_sitemap, we will crawl the default sitemap default value: false Note: if you want to use this parameter, respect_sitemap should be true' nullable: true load_resources: type: boolean description: 'load resources optional field set to true if you want to load image, stylesheets, scripts, and broken resources default value: false Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true enable_www_redirect_check: type: boolean description: 'check if the domain implemented the www redirection optional field set to true if you want to check if the requested domain implemented the www to non-www or non-www to www redirect; default value: false' nullable: true enable_javascript: type: boolean description: 'load javascript on a page optional field set to true if you want to load the scripts available on a page default value: false Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true enable_xhr: type: boolean description: 'enable XMLHttpRequest on a page optional field set to true if you want our crawler to request data from a web server using the XMLHttpRequest object default value: false;if you use this field, enable_javascript must be set to true;' nullable: true enable_browser_rendering: type: boolean description: 'emulate browser rendering to measure Core Web Vitals optional field by using this parameter you will be able to emulate a browser when loading a web page; enable_browser_rendering loads styles, images, fonts, animations, videos, and other resources on a page; default value: false set to true to obtain Core Web Vitals (FID, CLS, LCP) metrics in the response; if you use this field, enable_javascript, and load_resources parameters must be set to true Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true disable_cookie_popup: type: boolean description: 'disable the cookie popup optional field set to true if you want to disable the popup requesting cookie consent from the user; default value: false' nullable: true custom_js: type: string description: 'custom javascript optional field Note that the execution time for the script you enter here should be 700 ms maximum, for example, you can use the following JS snippet to check if the website contains Google Tag Manager as a scr attribute: let meta = { haveGoogleAnalytics: false, haveTagManager: false };\r\nfor (var i = 0; i < document.scripts.length; i++) {\r\n let src = document.scripts[i].getAttribute(\"src\");\r\n if (src != undefined) {\r\n if (src.indexOf(\"analytics.js\") >= 0)\r\n meta.haveGoogleAnalytics = true;\r\n\tif (src.indexOf(\"gtm.js\") >= 0)\r\n meta.haveTagManager = true;\r\n }\r\n}\ r\nmeta;the returned value depends on what you specified in this field. For instance, if you specify the following script: meta = {}; meta.url = document.URL; meta.test = ''test''; meta; as a response you will receive the following data: "custom_js_response": { "url": "https://dataforseo.com/", "test": "test" } Note: the length of the script you enter must be no more than 2000 characters Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true validate_micromarkup: type: boolean description: 'enable microdata validation optional field set to true if you want to use the OnPage API Microdata endpoint default value: false' nullable: true allow_subdomains: type: boolean description: 'include pages on subdomains optional field set to true if you want to crawl all subdomains of a target website default value: false' nullable: true allowed_subdomains: type: array items: type: string description: 'subdomains to crawl optional field specify subdomains that you want to crawl example: ["blog.site.com", "my.site.com", "shop.site.com"] Note: to use this parameter, the allow_subdomains parameter should be set to false; otherwise, the content of allowed_subdomains field will be ignored and the results will be returned for all subdomains' nullable: true disallowed_subdomains: type: array items: type: string description: 'subdomains not to crawl optional field specify subdomains that you don’t want to crawl example: ["status.site.com", "docs.site.com"] Note: to use this parameter, the allow_subdomains parameter should be set to true' nullable: true check_spell: type: boolean description: 'check spelling optional field set to true to check spelling on a website using Hunspell library default value: false' nullable: true check_spell_language: type: string description: 'language of the spell check optional field supported languages: ‘hy’, ‘eu’, ‘bg’, ‘ca’, ‘hr’, ‘cs’, ‘da’, ‘nl’, ‘en’, ‘eo’, ‘et’, ‘fo’, ‘fa’, ‘fr’, ‘fy’, ‘gl’, ‘ka’, ‘de’, ‘el’, ‘he’, ‘hu’, ‘is’, ‘ia’, ‘ga’, ‘it’, ‘rw’, ‘la’, ‘lv’, ‘lt’, ‘mk’, ‘mn’, ‘ne’, ‘nb’, ‘nn’, ‘pl’, ‘pt’, ‘ro’, ‘gd’, ‘sr’, ‘sk’, ‘sl’, ‘es’, ‘sv’, ‘tr’, ‘tk’, ‘uk’, ‘vi’ Note: if no language is specified, it will be set automatically based on page content' nullable: true check_spell_exceptions: type: array items: type: string description: 'words excluded from spell check optional field specify the words that you want to exclude from spell check maximum word length: 100 characters maximum amount of words: 1000 example: "SERP", "minifiers", "JavaScript"' nullable: true calculate_keyword_density: type: boolean description: 'calculate keyword density for the target domain optional field set to true if you want to calculate keyword density for website pages default value: false Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article once the crawl is completed, you can obtain keyword density values with the Keyword Density endpoint' nullable: true checks_threshold: type: object additionalProperties: type: integer format: int64 nullable: true description: 'custom threshold values for checks optional field you can specify custom threshold values for the parameters included in the checks object of OnPage API responses; Note: only integer threshold values can be modified; for example, the high_loading_time and large_page_size parameters are set to 3 seconds and 1 megabyte respectively by default; if you want to change these thresholds to 1 second and 1000 kbytes, use the following snippet: "checks_threshold": { "high_loading_time": 1, "large_page_size": 1000 }available customizable parameters with default values: "title_too_short", default value: 30, type: "int" "title_too_long", default value: 65, type: "int" "small_page_size", default value: 1024, type: "int" "large_page_size", default value: 1048576 (1024 * 1024), type: "int" "low_character_count", default value: 1024, type: "int" "high_character_count", default value: 256000 (250 * 1024), type: "int" "low_content_rate", default value: 0.1, type: "float" "high_content_rate", default value: 0.9, type: "float" "high_loading_time", default value: 3000, type: "int" "high_waiting_time", default value: 1500, type: "int" "low_readability_rate", default value: 15.0, type: "float" "irrelevant_description", default value: 0.2, type: "float" "irrelevant_title", default value: 0.3, type: "float" "irrelevant_meta_keywords", default value: 0.6, type: "float"' nullable: true disable_sitewide_checks: type: array items: type: string description: 'prevent certain sitewide checks from running optional field specify the following checks to prevent them from running on the target website: "test_page_not_found" "test_canonicalization" "test_https_redirect" "test_directory_browsing"example: "disable_sitewide_checks": ["test_directory_browsing", "test_page_not_found"]learn more on our help center' nullable: true disable_page_checks: type: array items: type: string description: 'prevent certain page checks from running optional field specify certain checks to prevent them from running and impacting the onpage_scoreexample: "disable_page_checks": ["is_5xx_code", "is_4xx_code"]' nullable: true switch_pool: type: boolean description: 'switch proxy pool optional field if true, additional proxy pools will be used to obtain the requested data; the parameter can be used if a multitude of tasks is set simultaneously, resulting in occasional rate-limit and/or site_unreachable errors' nullable: true return_despite_timeout: type: boolean description: 'return data on pages despite the timeout error optional field if true, the data will be provided on pages that failed to load within 120 seconds and responded with a timeout error; default value: false' nullable: true tag: type: string description: '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' nullable: true pingback_url: type: string description: 'notification URL of a completed task optional field when a task is completed we will notify you by GET request sent to the URL you have specified you can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values before sending the request. example: http://your-server.com/pingscript?id=$id http://your-server.com/pingscript?id=$id&tag=$tag Note: special characters in pingback_url will be urlencoded; i.a., the # character will be encoded into %23 learn more on our Help Center' nullable: true example: - target: dataforseo.com max_crawl_pages: 10 load_resources: true enable_javascript: true custom_js: meta = {}; meta.url = document.URL; meta; tag: some_string_123 pingback_url: https://your-server.com/pingscript?id=$id&tag=$tag OnPageDuplicateContentResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateContentItem' nullable: true description: items array nullable: true OnPageSummaryResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageSummaryTaskInfo' nullable: true description: array of tasks nullable: true OnPageInstantPagesTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageInstantPagesResultInfo' nullable: true description: array of results nullable: true OnPageLighthouseVersionsTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseVersionsResultInfo' nullable: true description: array of results nullable: true TestSummary: type: object properties: fatal: type: integer description: number of fatal microdata errors nullable: true error: type: integer description: number of serious microdata errors nullable: true warning: type: integer description: number of microdata warnings nullable: true info: type: integer description: number of microdata information flags nullable: true PageContentInfo: type: object properties: header: type: object oneOf: - $ref: '#/components/schemas/PageSectionContentInfo' description: content of the header of the table nullable: true footer: type: object oneOf: - $ref: '#/components/schemas/PageSectionContentInfo' description: content of the footer of the table nullable: true main_topic: type: array items: type: object oneOf: - $ref: '#/components/schemas/TopicInfo' nullable: true description: 'main topic on the page you can find more information about topic priority calculation in this help center article' nullable: true secondary_topic: type: array items: type: object oneOf: - $ref: '#/components/schemas/TopicInfo' nullable: true description: 'secondary topic on the page you can find more information about topic priority calculation in this help center article' nullable: true ratings: type: array items: type: object oneOf: - $ref: '#/components/schemas/ContentRatingInfo' nullable: true description: contains objects with rating information for the products displayed on the page nullable: true offers: type: array items: type: object oneOf: - $ref: '#/components/schemas/ContentOfferInfo' nullable: true description: 'array of products displayed on the page contains objects with information on products displayed on the page' nullable: true comments: type: array items: type: object oneOf: - $ref: '#/components/schemas/ContentCommentInfo' nullable: true description: 'array of comments displayed on the page contains objects with information on comments related to displayed products' nullable: true contacts: type: object oneOf: - $ref: '#/components/schemas/Contacts' description: 'contact information contains contact information displayed on the page' nullable: true OnPageContentParsingTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageContentParsingResultInfo' nullable: true description: array of results nullable: true OnPageContentParsingLiveTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageContentParsingLiveResultInfo' nullable: true description: array of results nullable: true OnPageLighthouseVersionsResultInfo: type: object properties: availible_versions: type: array items: type: object oneOf: - $ref: '#/components/schemas/AvailibleVersions' nullable: true nullable: true OnPageInstantPagesResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageInstantPagesTaskInfo' nullable: true description: array of tasks nullable: true OnPageResourceIssueInfo: type: object properties: errors: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageResourceIssueItemInfo' nullable: true description: resource errors nullable: true warnings: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageResourceIssueItemInfo' nullable: true description: resource warnings nullable: true description: resource errors and warnings OnPageResourceIssueItemInfo: type: object properties: line: type: integer description: line where the error was found nullable: true column: type: integer description: column where the error was found nullable: true message: type: string description: 'text message of the error the full list of possible HTML errors can be found here' nullable: true status_code: type: integer description: 'status code of the error possible values: 0 — Unidentified Error; 501 — Html Parse Error; 1501 — JS Parse Error; 2501 — CSS Parse Error; 3501 — Image Parse Error; 3502 — Image Scale Is Zero; 3503 — Image Size Is Zero; 3504 — Image Format Invalid' nullable: true OnPageLighthouseLiveJsonRequestInfo: type: object properties: url: type: string description: 'target URL required field target page should be specified with its absolute URL (including http:// or https://) example: https://dataforseo.com/' for_mobile: type: boolean description: 'applies mobile emulation optional field if set to true, Lighthouse will use mobile device and screen emulation to test the page against mobile environment if set to false, the results will be provided for desktop default value: false' nullable: true categories: type: array items: type: string description: 'categories of Lighthouse audits optional field each category is a collection of audits and audit groups that applies weighting and scoring to the section (see official definition) if you ignore this field, we will return data for all categories unless you specify audits use this field to get data for specific categories you indicate here possible values: seo, performance, best_practices, accessibility' nullable: true audits: type: array items: type: string description: "Lighthouse audits\noptional field\naudits are individual tests Lighthouse runs for each specific feature/optimization/metric to produce a numeric score (see official definition); \nif you ignore this field, we will return data for all audits;\nuse this field to get data for specific audits you indicate here;\nNote: that some audits do not belong to a specific category and are stand-alone page quality measurements;\nin general, there can be several use cases:\n1. if you ignore categories, you can use this field to get data for the specified audits only\nfor example, if you ignore \"categories\" and specify \"audits\": [\"metrics/cumulative-layout-shift\",\"metrics/largest-contentful-paint\",\"metrics/total-blocking-time\"], you will get data only for these audits\n2. if you specify a category, you can use this field to additionally receive audits that do not belong to the category(-ies) you specified\nfor example, if you specify \"categories\": [\"seo\"] and \"audits\": [\"metrics/cumulative-layout-shift\",\"metrics/largest-contentful-paint\",\"metrics/total-blocking-time\"], you will get only these audits under “performance” and all audits under “seo”\nyou can get the full list of possible audits here" nullable: true version: type: string description: 'lighthouse version optional field you can obtain the results specific to a certain Lighthouse version by specifying its number the list of available versions is available through the Lighthouse Versions endpoint' nullable: true language_name: type: string description: 'lighthouse language name optional field you can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/on_page/lighthouse/languages default value: English' nullable: true language_code: type: string description: 'lighthouse language code optional field you can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/on_page/lighthouse/languages default value: en' nullable: true tag: type: string description: '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' nullable: true example: - url: https://dataforseo.com for_mobile: true tag: some_string_123 OnPageResourcesResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageResourcesTaskInfo' nullable: true description: array of tasks nullable: true OnPageRedirectChainsTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageRedirectChainsResultInfo' nullable: true description: array of results nullable: true OnPageSummaryTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageSummaryResultInfo' nullable: true description: array of results nullable: true ScreenshotItem: type: object properties: image: type: string description: 'screenshot of the requested page URL of the page screenshot on the DataForSEO storage note: the page screenshot saved on the DataForSEO storage only remains accessible for one day after making the request' nullable: true OnPageLighthouseLanguagesResultInfo: type: object properties: language_name: type: string description: language name nullable: true language_code: type: string description: language code according to ISO 639-1 nullable: true OnPageDuplicateTagsResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateTagsTaskInfo' nullable: true description: array of tasks nullable: true OnPageLighthouseLanguagesTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseLanguagesResultInfo' nullable: true description: array of results nullable: true OnPageLighthouseLanguagesResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseLanguagesTaskInfo' nullable: true description: array of tasks nullable: true OnPageKeywordDensityItem: type: object properties: keyword: type: string description: returned keyword nullable: true frequency: type: integer description: 'keyword frequency number of times the keyword appears on the website (or webpage if you specified a url)' nullable: true density: type: number description: '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' nullable: true OnPageRawHtmlItem: type: object properties: html: type: string description: HTML page nullable: true OnPagePageScreenshotResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true error_message: type: string description: 'error message if the url you indicated returns a 404 status code or is not a valid URL, you will obtain "error_message":"Screenshot is empty" if no error is encountered, the value will be null' nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/ScreenshotItem' nullable: true description: items array nullable: true ContentRatingInfo: type: object properties: name: type: string description: 'rating name here you can find the following elements: Max5, Percents, CustomMax' nullable: true rating_value: type: string description: the value of the rating nullable: true rating_count: type: string description: number of votes nullable: true max_rating_value: type: string description: maximum value for the rating name nullable: true relative_rating: type: string description: relative rating nullable: true OnPagePageScreenshotRequestInfo: type: object properties: url: type: string description: 'page url required field absolute URL of the page to snap note: if the URL you indicate here returns a 404 status code or the indicated value is not a valid URL, you will obtain "error_message":"Screenshot is empty" in the response array' accept_language: type: string description: 'language header for accessing the website optional field all locale formats are supported (xx, xx-XX, xxx-XX, etc.) note: if you do not specify this parameter, some websites may deny access; in this case, you will obtain "error_message":"Screenshot is empty" in the response array' nullable: true custom_user_agent: type: string description: 'custom user agent optional field custom user agent for crawling a website example: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 default value: Mozilla/5.0 (compatible; RSiteAuditor)' nullable: true browser_preset: type: string description: 'preset for browser screen parameters optional field if you use this field, you don’t need to indicate browser_screen_width, browser_screen_height, browser_screen_scale_factor possible values: desktop, mobile, tablet desktop preset will apply the following values: browser_screen_width: 1920 browser_screen_height: 1080 browser_screen_scale_factor: 1 mobile preset will apply the following values: browser_screen_width: 390 browser_screen_height: 844 browser_screen_scale_factor: 3 tablet preset will apply the following values: browser_screen_width: 1024 browser_screen_height: 1366 browser_screen_scale_factor: 2 Note: in this endpoint, the enable_browser_rendering, enable_javascript, load_resources, and enable_xhr parameters are always enabled.' nullable: true browser_screen_width: type: integer description: 'browser screen width optional field you can set a custom browser screen width to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored; minimum value, in pixels: 240 maximum value, in pixels: 9999' format: int64 nullable: true browser_screen_height: type: integer description: 'browser screen height optional field you can set a custom browser screen height to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored; minimum value, in pixels: 240 maximum value, in pixels: 9999' nullable: true browser_screen_scale_factor: type: number description: 'browser screen scale factor optional field you can set a custom browser screen resolution ratio to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored; minimum value: 0.5 maximum value: 3' nullable: true full_page_screenshot: type: boolean description: 'take a screenshot of the full page optional field set to false if you want to capture only the part of the page displayed before scrolling default value: true' nullable: true disable_cookie_popup: type: boolean description: "disable the cookie popup \noptional field\nset to true if you want to disable the popup requesting cookie consent from the user;\ndefault value:\nfalse" nullable: true switch_pool: type: boolean description: 'switch proxy pool optional field if true, additional proxy pools will be used to obtain the requested data; the parameter can be used if a multitude of tasks is set simultaneously, resulting in occasional rate-limit and/or site_unreachable errors' nullable: true ip_pool_for_scan: type: string description: 'proxy pool optional field you can choose a location of the proxy pool that will be used to obtain the requested data; the parameter can be used if page content is inaccessible in one of the locations, resulting in occasional site_unreachable errors possible values: us, de' nullable: true example: - url: https://dataforseo.com/apis OnPageLighthouseTasksReadyTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseTasksReadyResultInfo' nullable: true description: array of results nullable: true CacheControl: type: object properties: cachable: type: boolean description: indicates whether the page is cacheable nullable: true ttl: type: integer description: 'time to live the amount of time the browser caches a resource' nullable: true OnPagePageScreenshotTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPagePageScreenshotResultInfo' nullable: true description: array of results nullable: true OnPageForceStopResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageForceStopTaskInfo' nullable: true description: array of tasks nullable: true HtmlContentInfo: type: object properties: plain_text_size: type: integer description: total size of the text on the page measured in bytes nullable: true plain_text_rate: type: number description: 'plaintext rate value plain_text_size to size ratio' format: double nullable: true plain_text_word_count: type: integer description: number of words on the page nullable: true automated_readability_index: type: number description: Automated Readability Index nullable: true coleman_liau_readability_index: type: number description: Coleman–Liau Index nullable: true dale_chall_readability_index: type: number description: Dale–Chall Readability Index nullable: true flesch_kincaid_readability_index: type: number description: Flesch–Kincaid Readability Index nullable: true smog_readability_index: type: number description: SMOG Readability Index nullable: true description_to_content_consistency: type: number description: 'consistency of the meta description tag with the page content measured from 0 to 1' nullable: true title_to_content_consistency: type: number description: 'consistency of the meta title tag with the page content measured from 0 to 1' nullable: true meta_keywords_to_content_consistency: type: number description: 'consistency of meta keywordstag with the page content measured from 0 to 1' nullable: true RowCellInfo: type: object properties: text: type: string description: content of the row cells of the header nullable: true urls: type: array items: type: object oneOf: - $ref: '#/components/schemas/ContentUrlInfo' nullable: true description: contains other URLs and anchors found in the content element nullable: true is_header: type: boolean description: content of the row cells of the header nullable: true OnPageErrorsResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageErrorsTaskInfo' nullable: true description: array of tasks nullable: true OnPageMicrodataTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageMicrodataResultInfo' nullable: true description: array of results nullable: true OnPageInstantPagesResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object description: 'details of the crawling session in this case the value will be null' nullable: true crawl_gateway_address: type: string description: 'crawler ip address displays the IP address used by the crawler to initiate the current crawling session you can find the full list of IPs used by our crawler in the Overview section' nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/BaseOnPageResourceItem' nullable: true description: items array nullable: true DomainInfo: type: object properties: name: type: string description: domain name nullable: true cms: type: string description: 'content management system content management system identified on a website the content of the generator meta tag the data is taken from the first random page that returns the 200 response code if our crawler was unable to identify the cms, the value would be null' nullable: true ip: type: string description: domain ip address nullable: true server: type: string description: 'website server the version of the server detected on a website the content of the server header the information is taken from the first page which response code is 200' nullable: true crawl_start: type: string description: 'time when the crawling start date and time when the website was sent for crawling in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2019-11-15 12:57:46 +00:00' nullable: true crawl_end: type: string description: 'time when the crawling ended date and time when the crawling was finished in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2019-11-15 12:57:46 +00:00 Note: informative only if "crawl_progress" is "finished" if "crawl_progress" is in_progress, the value will be null' nullable: true extended_crawl_status: type: string description: 'crawl status and errors indicates the reason why a website was not crawled; can take the following values: no_errors – no crawling errors were detected; site_unreachable – our crawler could not reach a website and thus was not able to obtain a status code; invalid_page_status_code – status code of the first crawled page >= 400; forbidden_meta_tag – the first crawled page contains the tag; forbidden_robots – robots.txt forbids crawling the page; forbidden_http_header – HTTP header of the page contains “X-Robots-Tag: noindex” ; too_many_redirects – the first crawled page has more than 10 redirects; unknown – the reason is unknown' nullable: true ssl_info: type: object oneOf: - $ref: '#/components/schemas/SslInfo' description: 'ssl certificate info information about the Secure Sockets Layer protocol detected on a website' nullable: true checks: type: object additionalProperties: type: boolean nullable: true description: 'website checks other on-page check-ups related to the website' nullable: true total_pages: type: integer description: 'total crawled pages the total number of crawled pages' format: int64 nullable: true page_not_found_status_code: type: integer description: 'status code returned by a non-existent page in most cases, it is recommended a server returns a 404 response code' nullable: true canonicalization_status_code: type: integer description: 'status code returned by a canonicalized page the checkup of the server behavior when our crawler tries to access the website via IP; in most cases, it is recommended that canonicalized pages respond with a 301 or 302 status code' nullable: true directory_browsing_status_code: type: integer description: 'status code returned by a directory the status code returned by a directory page on a target website in most cases, it is recommended that directories respond with a 403 or 401 status code' nullable: true www_redirect_status_code: type: integer description: 'redirect status code the status code of the www to non-www redirect in most cases, it is recommended that redirect returns a 301 status code' nullable: true main_domain: type: string description: root domain name nullable: true OnPageLighthouseLiveJsonResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseLiveJsonTaskInfo' nullable: true description: array of tasks nullable: true OnPageErrorsTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageErrorsResultInfo' nullable: true description: array of results nullable: true OnPageLighthouseTaskGetJsonResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseTaskGetJsonTaskInfo' nullable: true description: array of tasks nullable: true OnPageDuplicateTagsItem: type: object properties: accumulator: type: string description: contains the value of duplicated tag nullable: true total_count: type: integer description: total count of duplicate pages format: int64 nullable: true pages: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageHtmlResourceItem' nullable: true description: pages with duplicate tags nullable: true OnPageKeywordDensityTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageKeywordDensityResultInfo' nullable: true description: array of results nullable: true OnPageHtmlResourceItem: type: object allOf: - type: object oneOf: - $ref: '#/components/schemas/BaseOnPageResourceItem' nullable: true - type: object properties: meta: type: object oneOf: - $ref: '#/components/schemas/PageMetaInfo' properties: social_media_tags: type: object additionalProperties: type: string nullable: true nullable: true broken_html: type: object oneOf: - $ref: '#/components/schemas/OnPageResourceIssueInfo' description: resource errors and warnings nullable: true description: 'page properties the value depends on the resource_type' nullable: true page_timing: type: object oneOf: - $ref: '#/components/schemas/PageTiming' description: object of page load metrics nullable: true onpage_score: type: number description: 'shows how page is optimized on a 100-point scale this field shows how page is optimized considering critical on-page issues and warnings detected; 100 is the highest possible score that means the page does not have any critical on-page issues and important warnings; learn more about how the metric is calculated in this help center article' nullable: true total_dom_size: type: integer description: total DOM size of a page format: int64 nullable: true custom_js_response: type: object description: 'the result of executing a specified JS script note that you should specify a custom_js field when setting a task to receive this data and the field type and its value will totally depend on the script you specified; you can also filter the results by this value specifying filters in the following way: ["custom_js_response.url", "like", "pixel"]' nullable: true custom_js_client_exception: type: string description: 'error when executing a custom js if the error occurred when executing the script you specified in the custom_js field, the error message would be displayed here' nullable: true broken_resources: type: boolean description: indicates whether a page contains broken resources nullable: true broken_links: type: boolean description: indicates whether a page contains broken links nullable: true duplicate_title: type: boolean description: indicates whether a page has duplicate title tags nullable: true duplicate_description: type: boolean description: indicates whether a page has a duplicate description nullable: true duplicate_content: type: boolean description: indicates whether a page has duplicate content nullable: true click_depth: type: integer description: 'number of clicks it takes to get to the page indicates the number of clicks from the homepage needed before landing at the target page' nullable: true is_resource: type: boolean description: indicates whether a page is a single resource nullable: true url_length: type: integer description: page URL length in characters nullable: true relative_url_length: type: integer description: relative URL length in characters nullable: true OnPagePagesByResourceTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPagePagesByResourceResultInfo' nullable: true description: array of results nullable: true OnPageRedirectChainsResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true total_items_count: type: integer description: total number of relevant items in the database format: int64 nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageRedirectChainsItem' nullable: true description: items array nullable: true OnPageNonIndexableResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true total_items_count: type: integer description: total number of relevant items in the database format: int64 nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageNonIndexableItem' nullable: true description: items array nullable: true OnPageLinksResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLinksTaskInfo' nullable: true description: array of tasks nullable: true OnPageForceStopTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: object description: array of results nullable: true OnPagePageScreenshotResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPagePageScreenshotTaskInfo' nullable: true description: array of tasks nullable: true ContentCommentInfo: type: object properties: rating: type: object oneOf: - $ref: '#/components/schemas/ContentRatingInfo' description: 'product’s rating contains information about the rating a customer has given to the product' nullable: true title: type: string description: title of the customer’s comment nullable: true publish_date: type: string description: date when the comment was published nullable: true author: type: string description: author of the comment nullable: true have_form: type: boolean description: '' nullable: true primary_content: type: array items: type: object oneOf: - $ref: '#/components/schemas/SectionContentItemInfo' nullable: true description: 'primary content on the page you can find more information about content priority calculation in this help center article' nullable: true OnPageKeywordDensityResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageKeywordDensityTaskInfo' nullable: true description: array of tasks nullable: true OnPageContentParsingLiveResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/ContentParsingElement' nullable: true description: items array nullable: true PageMetrics: type: object properties: links_external: type: integer description: 'number of external links the number of links pointing to other websites' nullable: true links_internal: type: integer description: 'number of internal links the number of links pointing to other pages within the target website' nullable: true duplicate_title: type: integer description: number of pages with duplicate titles nullable: true duplicate_description: type: integer description: number of pages with duplicate descriptions nullable: true duplicate_content: type: integer description: number of pages with duplicate content nullable: true broken_links: type: integer description: 'number of broken links number of broken links across all crawled pages on a target website' nullable: true broken_resources: type: integer description: 'number of broken resources the number of images and other resources with broken links' nullable: true links_relation_conflict: type: integer description: 'number of links present on the target website that may have a conflict for example, if "links_relation_conflict": 2, the target website is referring to the same source by at least one internal link with the rel="nofollow" attribute and by at least one dofollow link' nullable: true redirect_loop: type: integer description: 'number of redirect chains that start and end at the same URL number of redirect chains where the destination URL redirects back to the original URL' nullable: true onpage_score: type: number description: 'shows how website is optimized on a 100-point scale this field shows how website is optimized considering critical on-page issues and warnings detected; 100 is the highest possible score that means website does not have any critical on-page issues and important warnings; note that this value depends on the number of crawled pages; learn more about how the metric is calculated in this help center article' nullable: true non_indexable: type: integer description: 'number of non-indexable pages number of pages that are blocked from being indexed by Google and other search engines by robots.txt, HTTP headers, or meta tags settings; you can receive a list of non-indexable URLs using this endpoint' nullable: true checks: type: object additionalProperties: type: integer format: int64 nullable: true description: page-specific on-page check-ups nullable: true OnPageRedirectChainsRequestInfo: type: object properties: id: type: string description: '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: type: string description: 'page URL optional field absolute URL of the target page if you use this field, the API response will return only redirect chains which contain the specified URL' nullable: true limit: type: integer description: 'the maximum number of returned redirect chains optional field default value: 100 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned redirect chains optional field default value: 0 if you specify the 10 value, the first ten redirect chains in the results array will be omitted and the data will be provided for the successive redirect chains' nullable: true filters: type: array items: type: object nullable: true description: 'array of results filtering parameters optional field you can use only one filtering parameter with this endpoint the following filtering parameter is supported: is_redirect_loop the following operators are supported: regex, not_regex, =, <> examples: ["is_redirect_loop","=","true"] ["is_redirect_loop","<>","false"]' nullable: true tag: type: string description: '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' nullable: true example: - id: 03051327-4536-0216-1000-3b458a2cfcca url: https://test_rdr.dataforseo.com/a/ OnPageAvailableFiltersResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageAvailableFiltersTaskInfo' nullable: true nullable: true OnPageForceStopRequestInfo: type: object properties: id: type: string description: '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” note: you can set up to 1000 id values as separate objects in the POST array' example: - id: 08121600-1535-0216-0000-37b4c7a34453 - id: 08121600-1535-0216-0000-d6a5000b6897 WaterfallResourceInfo: type: object properties: resource_type: type: string nullable: true url: type: string description: resource URL nullable: true initiator: type: string description: resource initiator nullable: true duration_time: type: integer description: total time it takes until a browser receives a complete response from a server (in milliseconds) nullable: true fetch_start: type: integer description: 'time to start downloading the resource the amount of time the browser needs to start downloading a resource' nullable: true fetch_end: type: integer description: 'time to complete downloading the resource the amount of time the browser needs to complete downloading a resource' nullable: true location: type: object oneOf: - $ref: '#/components/schemas/OnPageResourceLocationInfo' description: 'location of the resource in the document parameters defining the location of the specific resource within the document’s HTML' nullable: true is_render_blocking: type: boolean description: indicates whether the resource blocks rendering nullable: true HunspellMisspelledInfo: type: object properties: word: type: string description: misspelled word nullable: true OnPageDuplicateTagsResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true total_pages_count: type: integer description: 'total number of pages with duplicate tags displays the total number of pages with duplicate tags of the target website' format: int64 nullable: true pages_count: type: integer description: 'number of pages with duplicate tags in the response displays the number of pages with duplicate tags returned in the response' format: int64 nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateTagsItem' nullable: true description: items array nullable: true ContentOfferInfo: type: object properties: name: type: string description: name of the product nullable: true price: type: number description: price of the product format: double nullable: true price_currency: type: string description: price currency nullable: true price_valid_until: type: string description: 'displays the date and time until which the price is valid in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: "2022-11-01 10:02:52 +00:00"' nullable: true OnPageTaskPostResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageTaskPostTaskInfo' nullable: true description: array of tasks nullable: true OnPageWaterfallResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageWaterfallTaskInfo' nullable: true description: array of tasks nullable: true LastModified: type: object properties: header: type: string description: 'date and time when the header was last modified in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2019-11-15 12:57:46 +00:00 if there is no data, the value will be null' nullable: true sitemap: type: string description: 'date and time when the sitemap was last modified in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2019-11-15 12:57:46 +00:00 if there is no data, the value will be null' nullable: true meta_tag: type: string description: 'date and time when the meta tag was last modified in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2019-11-15 12:57:46 +00:00 if there is no data, the value will be null' nullable: true OnPageLighthouseTasksReadyResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseTasksReadyTaskInfo' nullable: true description: array of tasks nullable: true TableContentInfo: type: object properties: header: type: array items: type: object oneOf: - $ref: '#/components/schemas/TableContentItemInfo' nullable: true description: parsed content of the header nullable: true body: type: array items: type: object oneOf: - $ref: '#/components/schemas/TableContentItemInfo' nullable: true description: content of the body of the table nullable: true footer: type: array items: type: object oneOf: - $ref: '#/components/schemas/TableContentItemInfo' nullable: true description: content of the footer of the table nullable: true OnPageTaskPostTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: object description: 'array of results in this case, the value will be null' nullable: true OnPageIdListTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageIdListResultInfo' nullable: true description: array of results nullable: true OnPageLighthouseLiveJsonTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object additionalProperties: type: object nullable: true nullable: true description: 'results of Lighthouse audit this array will include data according to the parameters you specified when setting a task; all fields and their descriptions are available in the official documentation by this link.' nullable: true OnPageWaterfallTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageWaterfallResultInfo' nullable: true description: array of results nullable: true OnPageResourcesResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true search_after_token: type: string nullable: true current_offset: type: integer nullable: true total_items_count: type: integer description: total number of relevant items crawled format: int64 nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/BaseOnPageResourceItem' nullable: true description: items array nullable: true CrawlStatusInfo: type: object properties: max_crawl_pages: type: integer description: "maximum number of pages to crawl\n indicates the max_crawl_pages limit you specified when setting a task" format: int64 nullable: true pages_in_queue: type: integer description: number of pages that are currently in the crawling queue format: int64 nullable: true pages_crawled: type: integer description: number of crawled pages format: int64 nullable: true OnPageContentParsingResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageContentParsingTaskInfo' nullable: true description: array of tasks nullable: true OnPageIdListResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageIdListTaskInfo' nullable: true description: array of tasks nullable: true ContentUrlInfo: type: object properties: url: type: string description: contains other URLs and anchors found in the content element nullable: true anchor_text: type: string description: text of the URL’s anchor nullable: true BaseOnPageLinkItem: type: object properties: type: type: string description: type of element nullable: true domain_from: type: string description: 'referring domain the link was found on this domain' nullable: true domain_to: type: string description: 'referenced domain the link is pointing to this domain' nullable: true page_from: type: string description: 'referring page relative URL of the page on which the link was found' nullable: true page_to: type: string description: 'referenced page relative URL of the page to which the link is pointing' nullable: true link_from: type: string description: 'referring page absolute URL of the page on which the link was found' nullable: true link_to: type: string description: 'referenced page absolute URL of the page to which the link is pointing' nullable: true dofollow: type: boolean description: 'indicates whether the link is dofollow if the value is true, the link doesn’t have a rel="nofollow" attribute' nullable: true page_from_scheme: type: string description: url scheme of the referring page nullable: true page_to_scheme: type: string description: url scheme of the referenced page nullable: true direction: type: string description: 'direction of the link possible values: internal, external' nullable: true is_broken: type: boolean description: 'link is broken indicates whether a link is directing to a broken page or resource' nullable: true is_link_relation_conflict: type: boolean description: 'indicates that the link may have a conflict with another link if true, at least one link pointing to link_to has a rel="nofollow" attribute and at least one is dofollow' nullable: true page_to_status_code: type: integer description: 'status code of the referenced page status code of the page to which the link is pointing' nullable: true additionalProperties: false discriminator: propertyName: type mapping: anchor: '#/components/schemas/OnPageAnchorLinkItem' image: '#/components/schemas/OnPageImageLinkItem' canonical: '#/components/schemas/OnPageCanonicalLinkItem' alternate: '#/components/schemas/OnPageAlternateLinkItem' link: '#/components/schemas/OnPageLinkLinkItem' redirect: '#/components/schemas/OnPageRedirectLinkItem' meta: '#/components/schemas/OnPageMetaLinkItem' OnPageMicrodataRequestInfo: type: object properties: id: type: string description: '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: type: string description: 'resource URL required field you can get this URL in the response of the Pages endpoint example: https://dataforseo.com/apis' tag: type: string description: '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' nullable: true example: - id: 02241700-1535-0216-0000-034137259bc1 url: https://dataforseo.com/apis OnPageRedirectLinkItem: type: object allOf: - type: object oneOf: - $ref: '#/components/schemas/BaseOnPageLinkItem' nullable: true - type: object OnPageRawHtmlRequestInfo: type: object properties: id: type: string description: '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: type: string description: 'page url required field the absolute URL of a page to request HTML Note: this field is optional if the task was set using the Instant Pages endpoint' example: - id: 07281559-0695-0216-0000-c269be8b7592 url: https://dataforseo.com/apis OnPageWaterfallRequestInfo: type: object properties: id: type: string description: '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: type: string description: 'page URL required field specify the pages you want to receive timing for' tag: type: string description: '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' nullable: true example: - id: 08101204-0696-0216-0000-644a7b21a48a url: https://dataforseo.com/tag/broken-links SslInfo: type: object properties: valid_certificate: type: boolean description: 'ssl certificate validity indicates whether the ssl certificate detected on a website is not expired, suspended, revoked or invalid' nullable: true certificate_issuer: type: string description: 'ssl certificate authority the entity that issued the detected ssl certificate' nullable: true certificate_subject: type: string description: 'ssl certificate subject the entity associated with the public key' nullable: true certificate_version: type: integer description: 'ssl certificate version indicates the version of X.509 used by an ssl certificate' nullable: true certificate_hash: type: string description: 'ssl certificate hash the version of the ssl certificate’s hash function' nullable: true certificate_expiration_date: type: string description: 'ssl certificate expiration date the date and time when the ssl certificate expires in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2019-11-15 12:57:46 +00:00' nullable: true OnPageTasksReadyTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageTasksReadyResultInfo' nullable: true description: array of results nullable: true Contacts: type: object properties: telephones: type: array items: type: string nullable: true description: array of telephone numbers nullable: true emails: type: array items: type: string nullable: true description: array of emails nullable: true OnPageLighthouseAuditsResultInfo: type: object properties: audits: type: array items: type: string nullable: true description: 'the list of available lighthouse audits an array containing the titles of available audits; Note: the titles can change depending on if the audit passed or failed and may contain markdown code; Note #2: if you’re using the audit that contains a slash (/) in its name, search by the last word after the slash' nullable: true OnPageLighthouseTaskGetJsonTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object additionalProperties: type: object nullable: true nullable: true description: 'results of Lighthouse audit this array will include data according to the parameters specified in the POST request; description of the fields in the result array is available in the official documentation' nullable: true OnPageLighthouseTaskPostTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object additionalProperties: type: object nullable: true nullable: true nullable: true MessageInfo: type: object properties: level: type: string description: 'level of error can take the following values: fatal, error, warning, info' nullable: true message: type: string description: 'message associated with an error message providing the details of the detected error' nullable: true OnPageRedirectChainsResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageRedirectChainsTaskInfo' nullable: true description: array of tasks nullable: true BaseOnPageResourceItem: type: object properties: resource_type: type: string description: type of the returned resource = ‘html’ nullable: true status_code: type: integer description: status code of the page nullable: true location: type: string description: 'location header indicates the URL to redirect a page to' nullable: true url: type: string description: page URL nullable: true resource_errors: type: object oneOf: - $ref: '#/components/schemas/OnPageResourceIssueInfo' description: resource errors and warnings nullable: true size: type: integer description: 'resource size indicates the size of a given page measured in bytes' nullable: true encoded_size: type: integer description: 'page size after encoding indicates the size of the encoded page measured in bytes' nullable: true total_transfer_size: type: integer description: 'compressed page size indicates the compressed size of a given page' format: int64 nullable: true fetch_time: type: string description: 'date and time when a resource was fetched in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2019-11-15 12:57:46 +00:00' nullable: true cache_control: type: object oneOf: - $ref: '#/components/schemas/CacheControl' description: instructions for caching nullable: true checks: type: object additionalProperties: type: boolean nullable: true description: 'website checks on-page check-ups related to the page' nullable: true content_encoding: type: string description: type of encoding nullable: true media_type: type: string description: types of media used to display a page nullable: true server: type: string description: server version nullable: true last_modified: type: object oneOf: - $ref: '#/components/schemas/LastModified' description: 'contains data on changes related to the resource if there is no data, the value will be null' nullable: true additionalProperties: false discriminator: propertyName: resource_type mapping: html: '#/components/schemas/OnPageHtmlResourceItem' broken: '#/components/schemas/OnPageBrokenResourceItem' redirect: '#/components/schemas/OnPageRedirectResourceItem' script: '#/components/schemas/OnPageScriptResourceItem' image: '#/components/schemas/OnPageImageResourceItem' stylesheet: '#/components/schemas/OnPageStylesheetResourceItem' OnPageResourcesRequestInfo: type: object properties: id: type: string description: '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: type: string description: 'page URL optional field specify this field if you want to get the resources for a specific page note that to obtain resource’s meta from a particular URL, you should specify the URL in this field; if you do not indicate a url when setting a task, resource’s meta in the results will be returned based on the data from the page where our crawler first saw the resource' nullable: true limit: type: integer description: 'the maximum number of returned resources optional field default value: 100 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned resources optional field default value: 0 if you specify the 10 value, the first ten resources in the results array will be omitted and the data will be provided for the successive resources' nullable: true filters: type: array items: type: object nullable: true description: '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: ["resource_type","=","stylesheet"] [["resource_type","=","image"], "and",["checks.is_https","=",false]] [["fetch_timing.duration_time",">",1],"and",[["total_transfer_size",">",100],"or",["checks.high_loading_time","=",true]]] The full list of possible filters is available by this link.' nullable: true relevant_pages_filters: type: array items: type: string description: 'filter the resources by relevant pages optional field you can use this field to obtain resources from pages matching to the defined parameters you can apply the same filters here as available for the pages endpoint 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: ["checks.no_image_title","=",true]' nullable: true order_by: type: array items: type: string description: '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: ["size,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: ["size,desc","fetch_timing.fetch_end,desc"]' nullable: true search_after_token: type: string description: 'token for subsequent requests optional field provided in the identical filed of the response to each request; use this parameter to avoid timeouts while trying to obtain over 20,000 results in a single request; by specifying the unique search_after_token value from the response array, you will get the subsequent results of the initial task; search_after_token values are unique for each subsequent task ; Note: if the search_after_token is specified in the request, all other parameters should be identical to the previous request' nullable: true tag: type: string description: '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' nullable: true example: - id: 07281559-0695-0216-0000-c269be8b7592 filters: - - resource_type - '=' - image - and - - size - '>' - 100000 order_by: - size,desc limit: 10 MicrodataInspectionInfo: type: object properties: types: type: array items: type: string nullable: true description: 'parent microdata types for a full list of available types, please visit schema.org' nullable: true fields: type: array items: type: object oneOf: - $ref: '#/components/schemas/MicrodataFieldsInfo' nullable: true description: 'microdata fields an array of objects containing data fields related to the certain microdata type' nullable: true OnPageContentParsingRequestInfo: type: object properties: url: type: string description: 'URL of the content to parse required field URL of the page to parse example: https://dataforseo.com/blog/a-versatile-alternative-to-google-trends-exploring-the-power-of-dataforseo-trends-api' id: type: string description: 'ID of the task required field you can get this ID in the response of the Task POST endpoint note: the enable_content_parsing parameter in the POST request must be set to true example: "07131248-1535-0216-1000-17384017ad04"' markdown_view: type: boolean description: 'return page content as markdown optional field if set to true, the markdown-formatted content of the page will be returned in the page_as_markdown field of the response; default value: false' nullable: true example: - url: https://dataforseo.com/blog/a-versatile-alternative-to-google-trends-exploring-the-power-of-dataforseo-trends-api id: 11161551-1535-0216-0000-500b3f307f92 OnPageDuplicateContentResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageDuplicateContentTaskInfo' nullable: true description: array of tasks nullable: true OnPageRedirectChainsItem: type: object properties: is_redirect_loop: type: boolean description: 'indicates if redirects in chain start and end at the same URL if true, the last URL from the chain redirects back to the original URL' nullable: true chain: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageRedirectLinkItem' nullable: true description: contains links that form a chain nullable: true OnPagePagesResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPagePagesTaskInfo' nullable: true description: array of tasks nullable: true OnPageLighthouseAuditsResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseAuditsTaskInfo' nullable: true description: array of tasks nullable: true OnPagePagesTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPagePagesResultInfo' nullable: true description: array of results nullable: true OnPageErrorsResultInfo: type: object properties: id: type: string description: id of the task nullable: true datetime: type: string description: 'date and time when an error occurred in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2019-11-15 12:57:46 +00:00' nullable: true function: type: string description: corresponding API function nullable: true error_code: type: integer description: error code nullable: true error_message: type: string description: 'error message or error URL error message (see full list) or URL that caused an error' nullable: true http_url: type: string description: 'URL that caused an error URL you used for making an API call or pingback/postback URL' nullable: true http_method: type: string description: HTTP method nullable: true http_code: type: integer description: HTTP status code nullable: true http_time: type: number description: 'time taken by HTTP request for tasks set with a pingback/postback, this field will show the time it took your server to respond' nullable: true http_response: type: string description: 'HTTP response server response' nullable: true PageMetaInfo: type: object properties: title: type: string description: page title nullable: true charset: type: integer description: 'code page example: 65001' nullable: true follow: type: boolean description: 'indicates whether a page’s ‘meta robots’ allows crawlers to follow the links on the page if false, the page’s ‘meta robots’ tag contains “nofollow” parameter instructing crawlers not to follow the links on the page' nullable: true generator: type: string description: meta tag generator nullable: true htags: type: object additionalProperties: type: array items: type: string nullable: true description: HTML header tags nullable: true description: type: string description: content of the meta description tag nullable: true favicon: type: string description: favicon of the page nullable: true meta_keywords: type: string description: content of the keywords meta tag nullable: true canonical: type: string description: canonical page nullable: true internal_links_count: type: integer description: number of internal links on the page format: int64 nullable: true external_links_count: type: integer description: number of external links on the page format: int64 nullable: true inbound_links_count: type: integer description: number of internal links pointing at the page format: int64 nullable: true images_count: type: integer description: number of images on the page format: int64 nullable: true images_size: type: integer description: total size of images on the page measured in bytes nullable: true scripts_count: type: integer description: number of scripts on the page format: int64 nullable: true scripts_size: type: integer description: total size of scripts on the page measured in bytes nullable: true stylesheets_count: type: integer description: number of stylesheets on the page format: int64 nullable: true stylesheets_size: type: integer description: total size of stylesheets on the page measured in bytes nullable: true title_length: type: integer description: length of the title tag in characters nullable: true description_length: type: integer description: length of the description tag in characters nullable: true render_blocking_scripts_count: type: integer description: number of scripts on the page that block page rendering format: int64 nullable: true render_blocking_stylesheets_count: type: integer description: number of CSS styles on the page that block page rendering format: int64 nullable: true cumulative_layout_shift: type: number description: 'Core Web Vitals metric measuring the layout stability of the page measures the sum total of all individual layout shift scores for every unexpected layout shift that occurs during the entire lifespan of the page. Learn more.' nullable: true meta_title: type: string description: 'meta title of the page meta tag in the head section of an HTML document that defines the title of a page' nullable: true content: type: object oneOf: - $ref: '#/components/schemas/HtmlContentInfo' description: overall information about content of the page nullable: true deprecated_tags: type: array items: type: string nullable: true description: deprecated tags on the page nullable: true duplicate_meta_tags: type: array items: type: string nullable: true description: duplicate meta tags on the page nullable: true spell: type: object oneOf: - $ref: '#/components/schemas/HunspellInfo' description: 'spellcheck hunspell spellcheck errors' nullable: true social_media_tags: type: object additionalProperties: type: string nullable: true description: 'object of social media tags found on the page contains social media tags and their content supported tags include but are not limited to Open Graph and Twitter card' nullable: true broken_html: type: object oneOf: - $ref: '#/components/schemas/OnPageResourceIssueInfo' description: resource errors and warnings nullable: true OnPagePagesByResourceResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPagePagesByResourceTaskInfo' nullable: true description: array of tasks nullable: true OnPageIdListRequestInfo: type: object properties: datetime_from: type: string description: 'start time for filtering results required field if include_metadata is set to true, maximum value: a month from current datetime; if include_metadata is set to false, maximum value: six months from current datetime; must be specified in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2023-01-15 12:57:46 +00:00' datetime_to: type: string description: 'finish time for filtering results required field maximum value: current datetime; must be specified in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2023-01-31 13:57:46 +00:00' limit: type: integer description: 'the maximum number of returned task IDs optional field default value: 1000 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned task IDs optional field default value: 0 if you specify the 10 value, the first ten tasks in the results array will be omitted' nullable: true sort: type: string description: 'sorting by task execution time optional field possible values: "asc", "desc" default value: "asc"' nullable: true include_metadata: type: boolean description: 'include task metadata in the respond optional field default value: false' nullable: true example: - datetime_from: '2026-04-12 04:39:39 +00:00' datetime_to: '2026-04-14 04:39:39 +00:00' limit: 100 offset: 0 sort: desc include_metadata: true DuplicatePageInfo: type: object properties: similarity: type: integer description: 'content similarity score by default, the content is considered duplicate if the value is greater than or equals 6 can take values from 0 to 10' nullable: true page: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageHtmlResourceItem' nullable: true description: information about the page with duplicate content nullable: true OnPageLinksResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true search_after_token: type: string nullable: true current_offset: type: integer nullable: true total_items_count: type: integer description: total number of relevant items in the database format: int64 nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/BaseOnPageLinkItem' nullable: true description: items array nullable: true OnPageMicrodataInfoItem: type: object properties: type: type: string description: type of element nullable: true inspection_info: type: object oneOf: - $ref: '#/components/schemas/MicrodataInspectionInfo' description: information related to microdata validation nullable: true BaseResponseInfo: properties: version: type: string description: the current version of the API nullable: true status_code: type: integer description: 'general status code you can find the full list of the response codes here' nullable: true status_message: type: string description: 'general informational message you can find the full list of general informational messages here' nullable: true time: type: string description: total execution time, seconds nullable: true cost: type: number description: total tasks cost, USD format: double nullable: true tasks_count: type: integer description: the number of tasks in the tasks array format: int64 nullable: true tasks_error: type: integer description: the number of tasks in the tasks array returned with an error format: int64 nullable: true OnPageContentParsingLiveRequestInfo: type: object properties: url: type: string description: 'URL of the content to parse required field URL of the page to parse example: https://www.fujielectric.com/' custom_user_agent: type: string description: 'custom user agent optional field custom user agent for crawling a website example: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 default value: Mozilla/5.0 (compatible; RSiteAuditor)' nullable: true browser_preset: type: string description: 'preset for browser screen parameters optional field if you use this field, you don’t need to indicate browser_screen_width, browser_screen_height, browser_screen_scale_factor possible values: desktop, mobile, tablet desktop preset will apply the following values: browser_screen_width: 1920 browser_screen_height: 1080 browser_screen_scale_factor: 1 mobile preset will apply the following values: browser_screen_width: 390 browser_screen_height: 844 browser_screen_scale_factor: 3 tablet preset will apply the following values: browser_screen_width: 1024 browser_screen_height: 1366 browser_screen_scale_factor: 2 Note: to use this parameter, set enable_javascript or enable_browser_rendering to true' nullable: true browser_screen_width: type: integer description: 'browser screen width optional field you can set a custom browser screen width to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored; Note: to use this parameter, set enable_javascript or enable_browser_rendering to true minimum value, in pixels: 240 maximum value, in pixels: 9999' format: int64 nullable: true browser_screen_height: type: integer description: 'browser screen height optional field you can set a custom browser screen height to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored; Note: to use this parameter, set enable_javascript or enable_browser_rendering to true minimum value, in pixels: 240 maximum value, in pixels: 9999' nullable: true browser_screen_scale_factor: type: number description: 'browser screen scale factor optional field you can set a custom browser screen resolution ratio to perform audit for a particular device; if you use this field, you don’t need to indicate browser_preset as it will be ignored; Note: to use this parameter, set enable_javascript or enable_browser_rendering to true minimum value: 0.5 maximum value: 3' nullable: true store_raw_html: type: boolean description: 'store HTML of a crawled page optional field set to true if you want to get the HTML of the page using the OnPage Raw HTML endpoint default value: false' nullable: true disable_cookie_popup: type: boolean description: "disable the cookie popup \noptional field\nset to true if you want to disable the popup requesting cookie consent from the user;\ndefault value:\nfalse" nullable: true accept_language: type: string description: 'language header for accessing the website optional field all locale formats are supported (xx, xx-XX, xxx-XX, etc.) Note: if you do not specify this parameter, some websites may deny access; in this case, pages will be returned with the "type":"broken in the response array' nullable: true enable_javascript: type: boolean description: 'load javascript on a page optional field set to true if you want to load the scripts available on a page default value: false Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true enable_browser_rendering: type: boolean description: 'emulate browser rendering to measure Core Web Vitals optional field by using this parameter you will be able to emulate a browser when loading a web page; enable_browser_rendering loads styles, images, fonts, animations, videos, and other resources on a page; default value: false set to true to obtain Core Web Vitals (FID, CLS, LCP) metrics in the response; if you use this field, enable_javascript, and load_resources parameters must be set to true Note: if you use this parameter, additional charges will apply; learn more about the cost of tasks with this parameter in our help article; the cost can be calculated on the Pricing Page' nullable: true enable_xhr: type: boolean description: 'enable XMLHttpRequest on a page optional field set to true if you want our crawler to request data from a web server using the XMLHttpRequest object default value: false if you use this field, enable_javascript must be set to true;' nullable: true switch_pool: type: boolean description: 'switch proxy pool optional field if true, additional proxy pools will be used to obtain the requested data; the parameter can be used if a multitude of tasks is set simultaneously, resulting in occasional rate-limit and/or site_unreachable errors' nullable: true ip_pool_for_scan: type: string description: 'proxy pool optional field you can choose a location of the proxy pool that will be used to obtain the requested data; the parameter can be used if page content is inaccessible in one of the locations, resulting in occasional site_unreachable errors possible values: us, de' nullable: true markdown_view: type: boolean description: 'return page content as markdown optional field if set to true, the markdown-formatted content of the page will be returned in the page_as_markdown field of the response; default value: false' nullable: true example: - url: https://dataforseo.com/blog/a-versatile-alternative-to-google-trends-exploring-the-power-of-dataforseo-trends-api OnPageLighthouseAuditsTaskInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseTaskInfo' - type: object properties: result: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseAuditsResultInfo' nullable: true description: array of results nullable: true OnPageErrorsRequestInfo: type: object properties: limit: type: integer description: 'the maximum number of returned tasks that responded with an error optional field default value: 1000 maximum value: 1000' nullable: true offset: type: integer description: 'offset in the results array of returned tasks optional field default value: 0 if you specify the 10 value, the first ten tasks in the results array will be omitted and the data will be provided for the successive tasks' nullable: true filtered_function: type: string description: 'return tasks with a certain function use this field to obtain a list of tasks that returned an error filtered by a certain function you can filter the results by the values you receive in the function fields of the API response i.e., once you receive unfiltered results, you can call this API again to filter them by function example: on_page/task_post, postback_url, pingback_url' nullable: true datetime_from: type: string description: 'start time for filtering results optional field allows filtering results by the datetime parameter within the range of the last 7 days; must be specified in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2021-11-15 12:57:46 +00:00' nullable: true datetime_to: type: string description: 'finish time for filtering results optional field allows filtering results by the datetime parameter within the range of the last 7 days; must be specified in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2021-11-15 13:57:46 +00:00' nullable: true example: - limit: 10 offset: 0 filtered_function: pingback_url OnPageIdListResultInfo: type: object properties: id: type: string description: id of the task nullable: true url: type: string description: 'URL of the task URL you used for making an API call' nullable: true datetime_posted: type: string description: 'date and time when the task was made in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2023-01-15 12:57:46 +00:00' nullable: true datetime_done: type: string description: 'date and time when the task was completed in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00” example: 2023-01-15 12:57:46 +00:00' nullable: true status: type: string description: 'informational message of the task you can find the full list of general informational messages here' nullable: true cost: type: number description: cost of the task, USD nullable: true metadata: type: object additionalProperties: type: object nullable: true description: contains parameters you specified in the POST request nullable: true OnPageResourceLocationInfo: type: object properties: line: type: integer description: 'line number the number of the line on which the resource is located' nullable: true offset_left: type: integer description: 'position in line the number of line characters before the resource; sometimes referred to as column Note: counts from 1, i.e. if the resource doesn’t have any characters to the left, the value will be 1' nullable: true offset_top: type: integer description: 'position in the document the total number of characters between the resource and the top of HTML' nullable: true OnPageLighthouseVersionsResponseInfo: type: object allOf: - $ref: '#/components/schemas/BaseResponseInfo' - type: object properties: tasks: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageLighthouseVersionsTaskInfo' nullable: true description: array of tasks nullable: true OnPageLighthouseTaskPostRequestInfo: type: object properties: url: type: string description: target URLrequired fieldtarget page should be specified with its absolute URL (including http:// or https://)example:https://dataforseo.com/ for_mobile: type: boolean description: 'applies mobile emulationoptional fieldif set to true, Lighthouse will use mobile device and screen emulation to test the page against mobile environmentif set to false, the results will be provided for desktopdefault value: false' nullable: true categories: type: array items: type: string description: categories of Lighthouse auditsoptional fieldeach category is a collection of audits and audit groups that applies weighting and scoring to the section (see official definition)if you ignore this field, we will return data for all categories unless you specify auditsuse this field to get data for specific categories you indicate herepossible values:seo, performance, best_practices, accessibility nullable: true audits: type: array items: type: string description: 'Lighthouse auditsoptional fieldaudits are individual tests Lighthouse runs for each specific feature/optimization/metric to produce a numeric score (see official definition)if you ignore this field, we will return data for all auditsuse this field to get data for specific audits you indicate herenote that some audits do not belong to a specific category and are stand-alone page quality measurementsin general, there can be several use cases:1. if you ignore categories, you can use this field to get data for the specified audits onlyfor example, if you ignore "categories" and specify "audits": ["metrics/cumulative-layout-shift","metrics/largest-contentful-paint","metrics/total-blocking-time"], you will get data only for these audits2. if you specify a category, you can use this field to additionally receive audits that do not belong to the category(-ies) you specifiedfor example, if you specify "categories": ["seo"] and "audits": ["metrics/cumulative-layout-shift","metrics/largest-contentful-paint","metrics/total-blocking-time"], you will get only these audits under "performance" and all audits under "seo"you can get the full list of possible audits here' nullable: true version: type: string description: lighthouse versionoptional fieldyou can obtain the results specific to a certain Lighthouse version by specifying its numberthe list of available versions is available through the Lighthouse Versions endpoint nullable: true language_name: type: string description: lighthouse language nameoptional fieldyou can receive the list of available languages of the search engine with their language_name by making a separate request to https://api.dataforseo.com/v3/on_page/lighthouse/languagesdefault value:English nullable: true language_code: type: string description: lighthouse language codeoptional fieldyou can receive the list of available languages of the search engine with their language_code by making a separate request to https://api.dataforseo.com/v3/on_page/lighthouse/languagesdefault value:en nullable: true tag: type: string description: user-defined task identifieroptional fieldthe character limit is 255you can use this parameter to identify the task and match it with the resultyou will find the specified tag value in the data object of the response nullable: true pingback_url: type: string description: 'notification URL of a completed taskoptional fieldwhen a task is completed we will notify you by GET request sent to the URL you have specifiedyou can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values before sending the request.example:http://your-server.com/pingscript?id=$idhttp://your-server.com/pingscript?id=$id&tag=$tagNote: special characters in pingback_url will be urlencoded;i.a., the # character will be encoded into %23learn more on our Help Center' nullable: true example: - url: https://dataforseo.com for_mobile: true tag: some_string_123 pingback_url: https://your-server.com/pingscript?id=$id&tag=$tag ContentParsingElement: type: object properties: type: type: string description: type of element nullable: true fetch_time: type: string description: 'date and time when the content was fethced example: "2022-11-01 10:02:52 +00:00"' nullable: true status_code: type: integer description: status code of the page nullable: true page_content: type: object oneOf: - $ref: '#/components/schemas/PageContentInfo' description: parsed content of the page nullable: true page_as_markdown: type: string description: 'page content in the markdown format page content in the text-to-HTML markdown format specify markdown_view as true in the request to return the value' nullable: true PageTiming: type: object properties: time_to_interactive: type: integer description: 'Time To Interactive (TTI) metric the time it takes until the user can interact with a page (in milliseconds)' nullable: true dom_complete: type: integer description: 'time to load resources the time it takes until the page and all of its subresources are downloaded (in milliseconds)' nullable: true largest_contentful_paint: type: number description: 'Core Web Vitals metric measuring how fast the largest above-the-fold content element is displayed The amount of time (in milliseconds) to render the largest content element visible in the viewport, from when the user requests the URL. Learn more.' nullable: true first_input_delay: type: number description: 'Core Web Vitals metric indicating the responsiveness of a page The time (in milliseconds) from when a user first interacts with your page to the time when the browser responds to that interaction. Learn more.' nullable: true connection_time: type: integer description: 'time to connect to a server the time it takes until the connection with a server is established (in milliseconds)' nullable: true time_to_secure_connection: type: integer description: 'time to establish a secure connection the time it takes until the secure connection with a server is established (in milliseconds)' nullable: true request_sent_time: type: integer description: 'time to send a request to a server the time it takes until the request to a server is sent (in milliseconds)' nullable: true waiting_time: type: integer description: time to first byte (TTFB) in milliseconds nullable: true download_time: type: integer description: time it takes for a browser to receive a response (in milliseconds) nullable: true duration_time: type: integer description: total time it takes until a browser receives a complete response from a server (in milliseconds) nullable: true fetch_start: type: integer description: 'time to start downloading the HTML resource the amount of time the browser needs to start downloading a page' nullable: true fetch_end: type: integer description: 'time to complete downloading the HTML resource the amount of time the browser needs to complete downloading a page' nullable: true OnPagePagesByResourceResultInfo: type: object properties: crawl_progress: type: string description: 'status of the crawling session possible values: in_progress, finished' nullable: true crawl_status: type: object oneOf: - $ref: '#/components/schemas/CrawlStatusInfo' description: details of the crawling session nullable: true total_items_count: type: integer description: total number of relevant items in the database format: int64 nullable: true items_count: type: integer description: number of items in the results array format: int64 nullable: true items: type: array items: type: object oneOf: - $ref: '#/components/schemas/OnPageHtmlResourceItem' nullable: true description: items array nullable: true securitySchemes: basicAuth: type: http scheme: basic