SEO Backlinks API
Get AnyAPI SEO backlinks for a domain or URL, each with the linking page, anchor text, dofollow flag, authority rank, spam score, and first and last seen dates as normalized JSON.
$0.08/1k results, pay per request, no subscription.
{"urlFrom":Â "https://www.theverge.com/2026/6/2/notion-ai-workspace-redesign","domainFrom":Â "theverge.com","urlTo":Â "https://notion.so","anchor":Â "Notion","dofollow":Â true,"linkType":Â "anchor","rank":Â 912,"pageFromRank":Â 743,... 37 more fields}
Pricing
SEO Backlinks API pricing
Call it
Get SEO backlinks in one request
import os, requests res = requests.post( "https://api.getanyapi.com/v1/run/seo.backlinks", headers={"Authorization": f"Bearer {os.environ['ANYAPI_KEY']}"}, json={ "target": "" }, ) print(res.json())
This sample shows 44 of 50 fields. See every field
{
"found": true,
"data": {
"totalCount": 4218654,
"backlinks": [
{
"urlFrom": "https://www.theverge.com/2026/6/2/notion-ai-workspace-redesign",
"domainFrom": "theverge.com",
"urlTo": "https://notion.so",
"anchor": "Notion",
"dofollow": true,
"linkType": "anchor",
"rank": 912,
"pageFromRank": 743,
"domainFromRank": 912,
"spamScore": 2,
"pageFromTitle": "Notion redesigns its workspace around AI",
"domainFromCountry": "US",
"textBefore": "the productivity app",
"textAfter": "announced a major redesign this week.",
"isNew": true,
"isLost": false,
"isBroken": false,
"firstSeenUtc": 1748822400,
"lastSeenUtc": 1758844800,
"previousSeenUtc": 1756166400,
"domainTo": "notion.so",
"tldFrom": "com",
"attributes": [
"noopener"
],
"domainFromPlatformTypes": [
"news",
"technology"
],
"pageFromLanguage": "en",
"pageFromEncoding": "utf-8",
"pageFromStatusCode": 200,
"pageFromSize": 182044,
"pageFromExternalLinks": 38,
"pageFromInternalLinks": 212,
"pageFromKeywordsTop3": 4,
"pageFromKeywordsTop10": 12,
"pageFromKeywordsTop100": 61,
"semanticLocation": "article",
"linksCount": 1,
"groupCount": 1,
"isOriginal": true,
"isIndirect": false,
"urlToStatusCode": 200,
"urlToSpamScore": 1
},
{
"urlFrom": "https://zapier.com/blog/best-note-taking-apps/",
"domainFrom": "zapier.com",
"urlTo": "https://notion.so/templates",
"anchor": "Notion templates",
"dofollow": true,
"linkType": "anchor",
"rank": 878,
"pageFromRank": 611,
"domainFromRank": 878,
"spamScore": 3,
"pageFromTitle": "The 12 best note-taking apps in 2026",
"domainFromCountry": "US",
"textBefore": "you can browse thousands of",
"textAfter": "built by the community.",
"isNew": false,
"isLost": false,
"isBroken": false,
"firstSeenUtc": 1701388800,
"lastSeenUtc": 1758844800,
"domainTo": "notion.so",
"tldFrom": "com",
"attributes": [],
"domainFromPlatformTypes": [
"blogs",
"software"
],
"pageFromLanguage": "en",
"pageFromStatusCode": 200,
"pageFromSize": 96210,
"pageFromExternalLinks": 54,
"pageFromInternalLinks": 168,
"semanticLocation": "article",
"linksCount": 1,
"groupCount": 1,
"isOriginal": false,
"isIndirect": false,
"urlToStatusCode": 200
},
{
"urlFrom": "https://www.reddit.com/r/productivity/comments/1a2b3c4",
"domainFrom": "reddit.com",
"urlTo": "https://notion.so",
"anchor": "notion.so",
"dofollow": false,
"linkType": "anchor",
"rank": 969,
"pageFromRank": 402,
"domainFromRank": 969,
"spamScore": 6,
"pageFromTitle": "What app do you use to organize your whole life?",
"domainFromCountry": "US",
"isNew": false,
"isLost": false,
"isBroken": false,
"firstSeenUtc": 1690848000,
"lastSeenUtc": 1758844800,
"domainTo": "notion.so",
"tldFrom": "com",
"attributes": [
"nofollow",
"ugc"
],
"domainFromPlatformTypes": [
"forums"
],
"pageFromLanguage": "en",
"pageFromStatusCode": 200,
"semanticLocation": "article",
"linksCount": 1,
"groupCount": 1,
"isOriginal": true,
"isIndirect": false,
"urlToStatusCode": 200
}
]
}
}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 backlinks to return. You are billed per returned result, so a lower limit costs less.
- modeenum
as_is
as_is returns every backlink; one_per_domain keeps one backlink per linking domain; one_per_anchor keeps one per anchor text.
- statusenum
live
Return backlinks that are live now, ones that have been lost, or both.
Response
JSON, one example value per field.
Backlinks pointing at the target. Populated whenever the provider has data for the entity.
- anchorstring
Notion
Anchor text of the link.
- attributesstring[]
rel attributes on the link, such as nofollow, sponsored, ugc, or noopener.
- dofollowboolean
true
True when the link passes ranking value (no nofollow attribute). Populated whenever the provider has data for the entity.
- domainFromstring
theverge.com
Domain of the linking page. Populated whenever the provider has data for the entity.
- domainFromCountrystring
US
Country code of the linking domain.
- domainFromIpstring
IP address of the linking domain.
- domainFromIsIpboolean
True when the linking host is a bare IP address.
- domainFromPlatformTypesstring[]
Site types of the linking domain, such as blogs, news, or ecommerce.
- domainFromRankinteger
912
Authority rank of the linking domain on a 0-1000 scale.
- domainTostring
notion.so
Domain of the target URL.
- firstSeenUtcnumber
1748822400
When the backlink was first seen. UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.
- groupCountinteger
1
Backlinks grouped into this one by the requested mode.
- imageAltstring
Alt text of the linked image, for image links.
- imageUrlstring
URL of the linked image, for image links.
- isBrokenboolean
false
True when the target URL no longer resolves.
- isIndirectboolean
false
True when the link reaches the target through a redirect or canonical.
- isLostboolean
false
True when the backlink has been removed.
- isNewboolean
true
True when the backlink appeared since the previous crawl.
- isOriginalboolean
true
True when the link was present on the first crawl of the linking page.
- lastSeenUtcnumber
1758844800
When the backlink was last seen. UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.
- linkTypestring
anchor
How the link is placed: anchor, image, redirect, canonical, alternate, and so on.
- linksCountinteger
1
Identical links from the linking page to the target.
- pageFromEncodingstring
utf-8
Character encoding of the linking page.
- pageFromExternalLinksinteger
38
Outbound links on the linking page.
- pageFromInternalLinksinteger
212
Internal links on the linking page.
- pageFromKeywordsTop10integer
12
Keywords the linking page ranks in the top 10 for.
- pageFromKeywordsTop100integer
61
Keywords the linking page ranks in the top 100 for.
- pageFromKeywordsTop3integer
4
Keywords the linking page ranks in the top 3 for.
- pageFromLanguagestring
en
Language code of the linking page.
- pageFromRankinteger
743
Authority rank of the linking page on a 0-1000 scale.
- pageFromSizeinteger
182044
Size of the linking page in bytes.
- pageFromStatusCodeinteger
200
HTTP status the linking page returned.
- pageFromTitlestring
Notion redesigns its workspace around AI
Title of the linking page.
- previousSeenUtcnumber
1756166400
When the backlink was seen on the crawl before the last one. UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds.
- rankinteger
912
Authority rank of the backlink on a 0-1000 scale.
- semanticLocationstring
article
Page section holding the link, such as article, footer, or nav.
- spamScoreinteger
2
Spam score of the backlink on a 0-100 scale.
- textAfterstring
announced a major redesign this week.
Text right after the link on the linking page.
- textBeforestring
the productivity app
Text right before the link on the linking page.
- tldFromstring
com
Top-level domain of the linking page.
- urlFromstring
https://www.theverge.com/2026/6/2/notion-ai-workspace-redesign
URL of the page carrying the link. Populated whenever the provider has data for the entity.
- urlTostring
https://notion.so
Target URL the link points at. Populated whenever the provider has data for the entity.
- urlToRedirectTargetstring
Where the target URL redirects, if it does.
- urlToSpamScoreinteger
1
Spam score of the target URL on a 0-100 scale.
- urlToStatusCodeinteger
200
HTTP status the target URL returned.
- totalCountinteger
4218654
Total backlinks matching the request, before the limit. Populated whenever the provider has data for the entity.
- 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.
FAQ
About the SEO Backlinks API
The AnyAPI SEO Backlinks API returns SEO backlinks data as normalized JSON from one POST call to /v1/run/seo.backlinks. Get AnyAPI SEO backlinks for a domain or URL, each with the linking page, anchor text, dofollow flag, authority rank, spam score, and first and last seen dates 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 backlinks calls through AnyAPI succeeded, with a median response time of 0.9 seconds across 67 measured calls.