# On-page links

This endpoint will provide you with a list of internal and external links detected on a target website. Needs id. Served by DataForSEO.

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 – link

- Tool ID: `dataforseo/on-page-links`
- Name in the catalog: On Page Links
- Provider: [DataForSEO](/providers/dataforseo.md)
- Capability: [Site audit (on-page)](/tools/seo/site-audit.md)
- Price: no charge per call
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

No charge per call. A workspace is still needed so your agent can call it.


```json
{
  "model": "per_call",
  "amountUsd": 0
}
```

## Complete input schema


```json
{
  "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\"",
      "maxLength": 80,
      "minLength": 8,
      "pattern": "^[A-Za-z0-9-]+$"
    },
    "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",
      "maxLength": 2000,
      "minLength": 1
    },
    "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",
      "maxLength": 2000,
      "minLength": 1
    },
    "limit": {
      "type": "integer",
      "description": "the maximum number of returned links optional field default value: 100 maximum value: 1000",
      "maximum": 100,
      "minimum": 1,
      "default": 10
    },
    "offset": {
      "type": "integer",
      "description": "offset in the results array of returned links optional field default value: 0 maximum value: 2000000 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 link",
      "maximum": 2000000,
      "minimum": 0
    },
    "filters": {
      "type": "array",
      "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",
      "items": {},
      "maxItems": 15,
      "minItems": 1
    },
    "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 sear",
      "maxLength": 2000
    },
    "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",
      "maxLength": 255
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
```

## Published example

No example input is published for this tool. Ask for the inputs required by its schema.

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

[Provider documentation](https://docs.dataforseo.com/v3/on_page/links/)

[REST inspection](https://api.agentik.cc/v1/tools/dataforseo/on-page-links) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/dataforseo/on-page-links) · [Agent index](/llms.txt)
