# Backlinks & Domain Authority — Ahrefs Alternative (BYO key) (`lizaraco/domain-authority-backlinks`) Actor

Domain rank, backlinks, referring domains, spam score, and traffic estimates for any domain — the metrics people scrape Ahrefs/Semrush for, from official pay-as-you-go APIs. Bring your own DataForSEO key: you pay wholesale, nothing breaks.

- **URL**: https://apify.com/lizaraco/domain-authority-backlinks.md
- **Developed by:** [Shawn Downs](https://apify.com/lizaraco) (community)
- **Categories:** SEO tools, AI, Automation
- **Stats:** 1 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $20.00 / 1,000 domain summaries

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Backlinks & Domain Authority — Ahrefs Alternative (bring your own key)

Domain rank, backlink counts, referring domains, spam score, and traffic estimates for
any domain — the numbers people normally scrape out of Ahrefs or Semrush dashboards.
Those scrapers are login-walled, ToS-hostile, and break constantly. This actor gets the
same class of data from **official pay-as-you-go APIs** with your own key, so it keeps
working.

### Modes

- **`summary`** (default) — one merged row per domain: domain rank, total backlinks,
  referring domains / main domains / pages / IPs, broken backlinks, spam score, first
  seen, plus **organic & paid traffic estimates**.
- **`backlinks`** — individual links: source domain/URL, target URL, anchor, dofollow,
  source ranks, first/last seen, broken flag.
- **`referring-domains`** — one row per linking site with its rank and link counts.
- **`anchors`** — anchor-text distribution.

### Bring your own key — you control the cost

You supply your own [DataForSEO](https://dataforseo.com) login; **you pay DataForSEO
directly** at pay-as-you-go rates (~$0.024 per domain summary, $0.000036 per row — no
subscription required) and this actor charges only a small fee for the normalization.
Flip on `useSandbox` to test the wiring for $0. Missing or invalid credentials never
crash the run — you get a clear note back and nothing is charged.

### The LizaraCo SEO suite

[Google Trends](https://apify.com/lizaraco/scrape-google-trends) (demand shape) →
[Keyword Volume & CPC](https://apify.com/lizaraco/keyword-metrics) (hard numbers) →
[SERP + AI Overview Monitor](https://apify.com/lizaraco/google-serp-ai-overview-monitor)
(who ranks & who the AI cites) → **this actor** (why they rank) →
[Site Audit](https://apify.com/lizaraco/site-audit) (fix your own site).

### Output (summary row)

`target, domain_rank, backlinks, referring_domains, referring_main_domains,
referring_pages, referring_ips, broken_backlinks, broken_pages, backlinks_spam_score,
first_seen, crawled_pages, organic_traffic_est, organic_serps_count, paid_traffic_est`

### Use with AI agents

MCP-friendly: an agent vets a prospect's SEO strength, sizes a competitor, or watches
your own link profile — clean JSON, one call per domain.

# Actor input Schema

## `mode` (type: `string`):

summary: one merged row per domain (rank, backlink counts, spam score, traffic estimate). The row modes list the underlying link data.

## `targets` (type: `array`):

Domains (or subdomains) to analyze.

## `dataForSeoLogin` (type: `string`):

Your DataForSEO account login. You pay DataForSEO directly at pay-as-you-go rates (~$0.024/summary, $0.000036/row) — this actor never uses anyone else's key.

## `dataForSeoPassword` (type: `string`):

Your DataForSEO API password — OR the 'Base64 Format' token from DataForSEO's API Access page (the value with the copy button). Either works. Stored encrypted.

## `limit` (type: `integer`):

Max backlinks / referring domains / anchors returned per target in the row modes.

## `includeSubdomains` (type: `boolean`):

Count links to subdomains (blog.example.com) toward the target.

## `includeTraffic` (type: `boolean`):

Add organic/paid traffic estimates (etv) to summary rows via DataForSEO Labs — one extra cheap API call per run.

## `useSandbox` (type: `boolean`):

Route to DataForSEO's free sandbox (sample data, no charge to your balance) to test wiring before spending.

## Actor input object example

```json
{
  "mode": "summary",
  "targets": [
    "apify.com",
    "zapier.com"
  ],
  "limit": 100,
  "includeSubdomains": true,
  "includeTraffic": true,
  "useSandbox": false
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "targets": [
        "apify.com",
        "zapier.com"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("lizaraco/domain-authority-backlinks").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "targets": [
        "apify.com",
        "zapier.com",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("lizaraco/domain-authority-backlinks").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "targets": [
    "apify.com",
    "zapier.com"
  ]
}' |
apify call lizaraco/domain-authority-backlinks --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=lizaraco/domain-authority-backlinks",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Vngh6SRvPEbJsnAmL/builds/7eobEclmYtBDBjOo1/openapi.json
