OnPage

‌‌ 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.

post/v3/on_page/resources

Request

  • Base URL: https://api.dataforseo.com
  • URL: https://api.dataforseo.com/v3/on_page/resources
  • Auth: HTTP basic

Request body

idstring

<em>ID of the task</em><br><strong>required field</strong><br>you can get this ID in the response of the <a href="/v3/on_page/task_post/">Task POST</a> endpoint<br>example:<br>"07131248-1535-0216-1000-17384017ad04"

urlstring nullable

<em>page URL</em><br>optional field<br>specify this field if you want to get the resources for a specific page<br>note that to obtain resource's <code>meta</code> from a particular URL, you should specify the URL in this field;<br>if you do not indicate a <code>url</code> when setting a task, resource's <code>meta</code> in the results will be returned based on the data from the page where our crawler first saw the resource

limitinteger nullable

<em>the maximum number of returned resources</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>

offsetinteger nullable

<em>offset in the results array of returned resources</em><br>optional field<br>default value: <code>0</code><br>maximum value: <code>2000000</code><br>if you specify the <code>10</code> value, the first ten resources in the results array will be omitted and the data will be provided for the successive resources

filtersobject[] nullable

<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code><</code>, <code><=</code>, <code>></code>, <code>>=</code>, <code>=</code>, <code><></code>, <code>in</code>, <code>not_in</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code> to match any string of zero or more characters<br>example:<br><code>["resource_type","=","stylesheet"]</code><p><code>[["resource_type","=","image"],<br>"and",["checks.is_https","=",false]]</code><p><code>[["fetch_timing.duration_time",">",1],"and",[["total_transfer_size",">",100],"or",["checks.high_loading_time","=",true]]]</code><p>The full list of possible filters is available <a href="/v3/on_page/filters_and_thresholds/?bash" rel="noopener noreferrer" target="_blank">by this link.</a>

relevant_pages_filtersstring[] nullable

<em>filter the resources by relevant pages</em><br>optional field<br>you can use this field to obtain resources from pages matching to the defined parameters<br>you can apply the same filters here as available for the <a href="/v3/on_page/pages/" rel="noopener noreferrer" target="_blank">pages endpoint</a><br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code><</code>, <code><=</code>, <code>></code>, <code>>=</code>, <code>=</code>, <code><></code>, <code>in</code>, <code>not_in</code>, <code>like</code>, <code>not_like</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code> to match any string of zero or more characters<br>example:<br><code>["checks.no_image_title","=",true]</code>

order_bystring[] nullable

<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>["size,desc"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>["size,desc","fetch_timing.fetch_end,desc"]</code>

search_after_tokenstring nullable

<em>token for subsequent requests</em><br>optional field<br>provided in the identical filed of the response to each request;<br>use this parameter to avoid timeouts while trying to obtain over <code>20,000</code> results in a single request;<br>by specifying the unique <code>search_after_token</code> value from the response array, you will get the subsequent results of the initial task;<br><code>search_after_token</code> values are unique for each subsequent task ;<br><strong>Note:</strong> if the <code>search_after_token</code> is specified in the request, all other parameters should be identical to the previous request

tagstring nullable

<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response

Example request

[
  {
    "id": "07281559-0695-0216-0000-c269be8b7592",
    "filters": [
      [
        "resource_type",
        "=",
        "image"
      ],
      "and",
      [
        "size",
        ">",
        100000
      ]
    ],
    "order_by": [
      "size,desc"
    ],
    "limit": 10
  }
]

Response

Successful operation

versionstring nullable

the current version of the API

status_codeinteger nullable

general status code you can find the full list of the response codes here

status_messagestring nullable

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

timestring nullable

total execution time, seconds

costnumber double nullable

total tasks cost, USD

tasks_countinteger nullable

the number of tasks in the tasks array

tasks_errorinteger nullable

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

Changes