> ## Documentation Index
> Fetch the complete documentation index at: https://docs.markifact.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Backlink Pages

> Find which pages of a site attract its backlinks, from DataForSEO: backlinks, referring domains, rank and spam score per page, optionally with the crawled on-page data (status code, title, headings...

Find which pages of a site attract its backlinks, from DataForSEO: backlinks, referring domains, rank and spam score per page, optionally with the crawled on-page data (status code, title, headings, word count, technologies). Needs the DataForSEO Backlinks subscription.

| | |
| - | - |
| **App** | DataForSEO |
| **Operation ID** | `dataforseo_get_backlink_pages` |
| **Type** | Action |
| **Connection** | `dataforseo` (required) |
| **Credits per run** | Free |
| **Agent / MCP tool** | Yes |

## Inputs

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `target` | string | Yes | - | Domain, subdomain or page to analyse. Domains go in bare (example.com, blog.example.com); a single page needs its full URL (`https://example.com/pricing`). |
| `include_subdomains` | boolean | No | `True` | Count links to subdomains of the target as well. Defaults to true. |
| `exclude_internal_backlinks` | boolean | No | `True` | Leave out links coming from the target's own subdomains. Defaults to true. |
| `backlinks_status_type` | string or SelectableOption | No | `live` | Which backlinks to count: 'live' (default, found on the last crawl), 'all' (live and lost together) or 'lost' (only links that disappeared). |
| `rank_scale` | string or SelectableOption | No | `one_thousand` | Scale for the rank, domain\_from\_rank and page\_from\_rank values: 'one\_thousand' (DataForSEO's default, 0 to 1000) or 'one\_hundred' (0 to 100, comparable to the domain ratings other SEO tools show). |
| `report` | string or SelectableOption | No | `summary` | 'summary' (default): one row per page of the target with its backlink counts, the fastest way to find the most linked pages. 'pages': the same pages with the crawled on-page data as well (title, headings, word count, technologies, spam score). |
| `top_n` | integer | No | `5` | summary only: how many entries to keep in each distribution per row (top TLDs, countries, link types), 1 to 10. Defaults to 5. |
| `filters` | array of FilterItem | No | - | Up to 8 filters. summary: url, backlinks, referring\_domains, rank, backlinks\_spam\_score, broken\_backlinks. pages: page, status\_code, meta.title, meta.words\_count, meta.page\_spam\_score, page\_summary.backlinks, page\_summary.referring\_domains. |
| `orders` | array of OrderItem | No | - | Sort by up to 3 result fields, e.g. backlinks DESC (summary) or page\_summary.backlinks DESC (pages). |
| `limit` | integer | No | `100` | Maximum number of pages to return (1 to 1000). Defaults to 100. |
| `offset` | integer | No | - | Number of rows to skip, for paging. |
| `fields` | string or array of string | No | - | Result columns to keep. summary: url, backlinks, referring\_domains, rank, backlinks\_spam\_score, broken\_backlinks, first\_seen, lost\_date. pages: page, status\_code, meta.title, meta.h1, meta.words\_count, meta.internal\_links\_count, meta.external\_links\_count, meta.page\_spam\_score, page\_summary.backlinks, page\_summary.referring\_domains, page\_summary.rank. Leave empty for the default set listed in the output description. |

### FilterItem

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `field` | string or SelectableOption | Yes | - | The field to filter on, must be one of the current selected metrics or dimensions. |
| `operator` | string | Yes | - | The operator to use for filtering. Must be one of the supported values. Use REGEXP\_MATCH to search/filter by multiple OR values like '.*(summer\|holiday).*' |
| `value` | string | Yes | - | The value to filter by, always as a string: text, a number, or a regex. For IN\_LIST and NOT\_IN\_LIST, pass the values as one comma-separated string such as 'a,b,c', not as an array. For regex values, escape backslashes once in the JSON string: write \b for a word boundary, not \b. |

### OrderItem

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `field` | string or SelectableOption | Yes | - | The field to sort by. must be one of the current selected metrics or dimensions. |
| `direction` | string | Yes | - | The order to sort by, must be one of 'ASC', 'DESC' |

### SelectableOption

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `value` | string | Yes | - | |
| `label` | string | Yes | - | |

## Output

**Type**: `List[Dict]`

summary: one row per page with url, rank, backlinks, referring\_domains, referring\_pages, referring\_ips, backlinks\_spam\_score, broken\_backlinks, referring\_links\_types, first\_seen, lost\_date. pages: page, status\_code, meta.title, meta.h1, meta.words\_count, meta.internal\_links\_count, meta.external\_links\_count, meta.page\_spam\_score, page\_summary.rank, page\_summary.backlinks, page\_summary.referring\_domains, page\_summary.broken\_backlinks, fetch\_time, with meta.h2, meta.h3, meta.canonical, meta.language, meta.technologies, meta.social\_media\_tags and the rest of page\_summary available through fields.

**Fields**: `url`, `rank`, `backlinks`, `referring_domains`, `backlinks_spam_score`

**Example**:

```json theme={"dark"}
[
  {
    "url": "https://ahrefs.com/blog/",
    "rank": 512,
    "backlinks": 84200,
    "referring_domains": 9120,
    "backlinks_spam_score": 11
  }
]
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.