798.5 billion backlinks indexed
Domain backlink check for your own dashboard
A REST endpoint that returns referring domains, anchors, top pages and DR as JSON. You build the tool around it, and the first $100 of calls is on us.
- Four actions need no key at all
- One call scores up to 2,000 domains
- Open CORS, bearer or query-string key
$ curl "https://seomasters.dev/api.php?action=overview&q=nytimes.com&key=sk_live_..."
What it is for
Domain backlink check: four endpoints you will wire first
Every action takes the target in q and returns JSON with an ok flag. Pick by what your screen needs, not by what sounds impressive.
Free lookups, no key
domain, overview, stats and suggest cost nothing. Use them for a public widget or a smoke test in CI.
Bulk DR for a whole portfolio
bulk_dr scores up to 2,000 domains per call for 1 credit. One nightly request covers a large client list.
Referring domains and anchors
refdomains, anchors and backlinks cost 2 credits per call, up to 1,000 rows each, with page, per, sort and order.
Intersect for gap tables
intersect takes 2 to 10 domains and lists who links to them together. Two credits, whatever the row count.
Who it is for
What sits behind the JSON
The numbers come from our own crawler and our own link index: 181,132,097 domains, 2,774,625,913 domain-to-domain links and about 798.5 billion backlinks. Nothing is resold from a third party.
The index refreshes roughly once a month. A link someone placed last week may be missing, so design your UI to show an index age instead of promising live data.
Authenticated responses carry a _credits object with the cost of the call and your remaining balance. Log it. Your finance person will ask where the spend went, and the answer is already in every response.
Two pages are worth reading before you write code: the DR field reference explains what the 0-100 score is, and the dashboard proxy guide shows where the key should live.
One request, end to end
Swap in your key. The q value is the bare domain without a scheme or path.
curl -s "https://seomasters.dev/api.php?action=refdomains&q=example.com&per=100&sort=dr&order=desc" \
-H "Authorization: Bearer sk_live_..."
# header or ?key= both work
# ok=false or HTTP 401/402 means stop and read the errorChecklist
Before the first production deploy
- Key lives in a server-side environment variable, never in a browser bundle
- Every response is checked for
ok, not only the HTTP status - HTTP 401 and 402 are not retried automatically
_creditsis written to your own log on each call- The UI shows the monthly refresh, so nobody reads the data as live
- Pagination stops at the 50,000-row cap instead of looping forever
Scope
A link-data API, not a full SEO suite
Keyword research, rank tracking and daily-fresh crawling are better served by Ahrefs or Semrush. Ahrefs sells API units inside subscriptions starting at $129 a month for 200,000 units. This API prices link data per call instead.
- Good fit: dashboards, audits, bulk scoring, internal tools
- Weak fit: rank tracking, keyword volumes, live link alerts
- Data refreshes monthly, and the docs say so up front
How it works
From sign-in to a nightly job
- 1
Sign in with Google
The account page issues your
sk_key and shows the $100 starter balance, 1,000,000 credits. - 2
Run one free action
Call
overviewfor a domain you know well. Compare the output with what you expect before you build anything. - 3
Write the fetch layer
Wrap
fetchonce: key injection,okcheck,_creditslogging. See the pagination notes for the paging loop. - 4
Schedule it
Run monthly for deep pulls, nightly for
bulk_dr. The error table covers what to do when a night goes wrong.
FAQ
Questions developers ask first
- How does a domain backlink check work through the API?
- Send the domain as
qto an action such asoverview,refdomainsorbacklinksand read the JSON. The free actions need no key. Paid actions take a key in a bearer header or askey=and cost 1 to 3 credits per call, whatever the row count. - Do I have to put the key in the browser?
- No, and you should not. CORS is open, so the browser can call the API, but a key in client code is public to every visitor. Keep paid calls on your server and let the front end talk to your own route.
- What happens when the credit runs out?
- The API answers HTTP 402. A missing or wrong key returns HTTP 401. Treat both as stop signals rather than retrying. You top up with USDT (TRC-20) from the account page and the same key keeps working.
- How many rows come back per call?
- Up to 1,000 rows per call, and each call is billed once regardless of rows. Page with
pageandper. Deep pagination is capped at 50,000 rows, so for bigger exports narrow the query with sorting or a different action. - Is DR the same number as in Ahrefs?
- No. DR here is our own metric: round(100 log(ref_domains + 1) / log(2 10^7)). It is similar in spirit to Ahrefs DR or Moz DA but computed from our own index, so compare trends inside one tool, not values across tools.
- How fresh is the link data?
- Roughly one month. The index is rebuilt about once a month, so recent links can be missing. If your product promises daily alerts on new links, you need a daily-crawl vendor and this API for the cheap bulk numbers.
- Is there a monthly fee or minimum?
- No subscription and no minimum. Credit is prepaid: 1 credit costs $0.0001, so 1,000 one-credit calls cost $0.10. New accounts get $100 free credit, no card needed, with Google sign-in only.