SEO API

SEO Backlink anchors API

Get AnyAPI SEO anchor texts of the backlinks pointing at a domain or URL, each with backlink and referring domain counts, authority rank, and spam score as normalized JSON.

$0.08/1k results, pay per request, no subscription.

What the API returnedanchors[0]
{
"anchor": "notion",
"rank": 921,
"backlinks": 218044,
"spamScore": 3,
"brokenBacklinks": 412,
"brokenPages": 88,
"referringDomains": 9812,
"referringDomainsNofollow": 3021,
... 14 more fields
}
Uptime
100.00%
30d · 8 calls
Requests
8
30d · weekly, last 12 wks
Response
1.8s
median · 30d

Pricing

SEO Backlink anchors API pricing

You pay
$0.80
$0.08/1k results, only for what you use. No monthly plan.
One request costs at most $0.0768 (960 results).
The $0.10 starting balance covers at least 1 requests.

Call it

Get SEO backlink anchors in one request

import os, requests

res = requests.post(
    "https://api.getanyapi.com/v1/run/seo.backlink_anchors",
    headers={"Authorization": f"Bearer {os.environ['ANYAPI_KEY']}"},
    json={
        "target": ""
    },
)
print(res.json())
Open in
Get a free key
Sample response

This sample shows 25 of 27 fields. See every field

{
  "found": true,
  "data": {
    "totalCount": 8412,
    "anchors": [
      {
        "anchor": "notion",
        "rank": 921,
        "backlinks": 218044,
        "spamScore": 3,
        "brokenBacklinks": 412,
        "brokenPages": 88,
        "referringDomains": 9812,
        "referringDomainsNofollow": 3021,
        "referringMainDomains": 8901,
        "referringMainDomainsNofollow": 2711,
        "referringIps": 7402,
        "referringSubnets": 5108,
        "referringPages": 41204,
        "referringPagesNofollow": 12044,
        "firstSeenUtc": 1262304000,
        "linksByTld": {
          "com": 5210,
          "io": 1044,
          "org": 812
        },
        "linksByType": {
          "anchor": 210044,
          "image": 5108
        },
        "linksByAttribute": {
          "nofollow": 41200,
          "sponsored": 1204
        },
        "linksByPlatformType": {
          "blogs": 91200,
          "news": 41200
        },
        "linksBySemanticLocation": {
          "article": 128044,
          "footer": 21200
        },
        "linksByCountry": {
          "us": 108044,
          "gb": 21200
        }
      },
      {
        "anchor": "notion templates",
        "rank": 812,
        "backlinks": 41204,
        "spamScore": 2,
        "brokenBacklinks": 61,
        "brokenPages": 12,
        "referringDomains": 3210,
        "referringDomainsNofollow": 812,
        "referringMainDomains": 2988,
        "referringIps": 2601,
        "referringSubnets": 1904,
        "referringPages": 9812,
        "referringPagesNofollow": 2104,
        "firstSeenUtc": 1420070400,
        "linksByTld": {
          "com": 2100,
          "io": 412
        },
        "linksByType": {
          "anchor": 40100,
          "image": 1104
        },
        "linksByAttribute": {
          "nofollow": 8100
        },
        "linksByPlatformType": {
          "blogs": 31000
        },
        "linksBySemanticLocation": {
          "article": 38000
        },
        "linksByCountry": {
          "us": 29000
        }
      },
      {
        "anchor": "click here",
        "rank": 654,
        "backlinks": 9812,
        "spamScore": 11,
        "brokenBacklinks": 204,
        "brokenPages": 44,
        "referringDomains": 1204,
        "referringDomainsNofollow": 611,
        "referringMainDomains": 1090,
        "referringIps": 902,
        "referringSubnets": 611,
        "referringPages": 2104,
        "referringPagesNofollow": 812,
        "firstSeenUtc": 1451606400,
        "linksByTld": {
          "com": 812,
          "net": 210
        },
        "linksByType": {
          "anchor": 9100,
          "redirect": 412
        },
        "linksByAttribute": {
          "nofollow": 4100
        },
        "linksByPlatformType": {
          "forums": 3100
        },
        "linksBySemanticLocation": {
          "footer": 5100
        },
        "linksByCountry": {
          "us": 6100
        }
      }
    ]
  }
}

Full parameter and response reference - every field, type, and example for this endpoint.

Reference

One request, one response shape.

Every field you send and every field you get back, each with a real example.

Last verified 2026-11-08 · uptime and latency measured over 30d

Request body

JSON, posted to this endpoint.

  • targetstring

    notion.so

    Domain, subdomain, or full page URL to analyze. Send a domain without a protocol or leading www.

  • includeSubdomainsboolean

    true

    Count links pointing at the target's subdomains as well as the target itself.

  • limitinteger

    10

    Maximum number of anchor texts to return. You are billed per returned result, so a lower limit costs less.

  • statusenum

    live

    Count backlinks that are live now, ones that have been lost, or both.

You send. A small JSON body. The values shown are examples to replace with your own.

Response

JSON, one example value per field.

each anchordata.anchors[]

Anchor texts of backlinks to the target. Populated whenever the provider has data for the entity.

  • anchorstring

    notion

    Anchor text. Absent for links without text, such as image links. Populated whenever the provider has data for the entity.

  • backlinksinteger

    218044

    Backlinks counted. Populated whenever the provider has data for the entity.

  • brokenBacklinksinteger

    412

    Backlinks pointing at pages that no longer resolve.

  • brokenPagesinteger

    88

    Linked pages with an error status.

  • firstSeenUtcnumber

    1262304000

    When the first of these backlinks was seen. UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.

  • linksByAttributeobject

    Count of these backlinks, by rel attribute (nofollow, sponsored, ugc, noopener, and so on).

  • linksByCountryobject

    Count of these backlinks, by country code of the linking domain. An empty key means the country is unknown.

  • linksByPlatformTypeobject

    Count of these backlinks, by type of linking site (blogs, news, ecommerce, and so on).

  • linksBySemanticLocationobject

    Count of these backlinks, by the page section holding the link (article, footer, nav, and so on). An empty key means no section was detected.

  • linksByTldobject

    Count of these backlinks, by top-level domain of the linking page.

  • linksByTypeobject

    Count of these backlinks, by link type (anchor, image, redirect, canonical, alternate).

  • lostUtcnumber

    When the last of these backlinks was lost, if they were. UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.

  • rankinteger

    921

    Authority rank on a 0-1000 scale. Populated whenever the provider has data for the entity.

  • referringDomainsinteger

    9812

    Distinct linking domains.

  • referringDomainsNofollowinteger

    3021

    Linking domains whose every link is nofollow.

  • referringIpsinteger

    7402

    Distinct IP addresses of linking pages.

  • referringMainDomainsinteger

    8901

    Distinct linking registrable domains.

  • referringMainDomainsNofollowinteger

    2711

    Linking registrable domains whose every link is nofollow.

  • referringPagesinteger

    41204

    Distinct linking pages.

  • referringPagesNofollowinteger

    12044

    Linking pages whose links are all nofollow.

  • referringSubnetsinteger

    5108

    Distinct subnets of linking pages.

  • spamScoreinteger

    3

    Average spam score of those backlinks on a 0-100 scale.

datadata
  • totalCountinteger

    8412

    Total anchor texts, before the limit. Populated whenever the provider has data for the entity.

top level
  • foundboolean

    true

  • reason"not_found"

    Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.

You get back. Named, typed fields in the same shape whichever source answers.

FAQ

About the SEO Backlink anchors API

The AnyAPI SEO Backlink anchors API returns SEO backlink anchors data as normalized JSON from one POST call to /v1/run/seo.backlink_anchors. Get AnyAPI SEO anchor texts of the backlinks pointing at a domain or URL, each with backlink and referring domain counts, authority rank, and spam score as normalized JSON. AnyAPI returns one normalized schema whichever source serves it. It costs $0.08 per 1,000 results, and never more than $0.0768 for a single request, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of SEO backlink anchors calls through AnyAPI succeeded, with a median response time of 1.8 seconds across 8 measured calls.

It costs $0.08 per 1,000 results, and never more than $0.0768 for a single request, in US dollars with no subscription and no monthly minimum. You fund one USD wallet and each call draws it down. Some failed wallet-funded requests incur processing charges that we pass through at cost, with no markup; the error response shows the amount charged.

Get AnyAPI SEO anchor texts of the backlinks pointing at a domain or URL, each with backlink and referring domain counts, authority rank, and spam score as normalized JSON. The response is normalized JSON with the same envelope every AnyAPI endpoint returns, so parsing a second endpoint is a change of URL and nothing else.

Over the last 30 days, 100.0% of SEO backlink anchors calls through AnyAPI succeeded, with a median response time of 1.8 seconds across 8 measured calls. These are AnyAPI's own measurements of traffic through the gateway, recomputed continuously, not a published service-level target.

Yes. A new AnyAPI account starts with $0.10 of free balance and no card required, which covers at least 1 SEO Backlink anchors calls at up to $0.0768 each.

Send a POST request to https://api.getanyapi.com/v1/run/seo.backlink_anchors with your AnyAPI key in an "Authorization: Bearer" header and the input as a JSON body. The same key and the same wallet work on every AnyAPI endpoint.

No. You add US dollars to one prepaid AnyAPI balance and each request draws it down. There is no monthly plan and no minimum, and the same balance pays for every AnyAPI endpoint.

Yes. Install @getanyapi/sdk from npm for TypeScript or getanyapi from pip for Python. Both call every AnyAPI endpoint with the same key, and any HTTP client works too.

Yes. An agent can connect to the AnyAPI MCP server at https://api.getanyapi.com/mcp, or create its own free-trial key with one unauthenticated POST to https://api.getanyapi.com/agent/signup and call this endpoint over HTTP.