API

Backlink Checker

You are reading the Project API docs

Base URL: api4.seranking.com

Project API uses subscription limits. Fro more information visit API credit system.

Data API and Project API keys are not interchangeable — use the correct one to avoid authentication errors.

Data apikey example:
80cfee7d-xxxx-xxxx-xxxx-fc8500816bb3
(UUID format)
Project apikey example:
253a73adxxxxxxxxxxxxxx340aa0a939
(40-char hex)

API keys are available in your account. For any questions or 401 errors, email [email protected] for support.

Backlink Checker API provides endpoints to retrieve, manage, import, group, and disavow backlinks, as well as monitor backlink import status and statistics.


GET https://api4.seranking.com/backlinks/{site_id}

Retrieves a paginated list of backlinks for the specified website.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
limitIntegerNoNumber of backlinks to return (max 1000).
offsetIntegerNoNumber of backlinks to skip before starting to collect the result set.

Request example

Copy
curl --location --request GET 'https://api4.seranking.com/backlinks/12345?limit=100&offset=100' \
--header 'Authorization: Token YOUR_API_KEY'

Response parameters

If successful, the server returns the 200 HTTP status code and an array of backlink objects. Returns HTTP 403 if site_id is wrong (for more information, see Error handling).

Each backlink object has the following structure:

ParameterTypeDescription
idIntegerUnique backlink identifier.
anchorStringBacklink anchor text.
categoryStringTarget backlink category.
charge_periodStringCharging period (onetime, monthly, quarterly, 6months, year).
charge_startStringPayment start date.
date_addedStringDate when the backlink was added.
date_lostStringDate when the backlink was lost.
date_placementStringDate when the backlink was placed.
domainStringDomain of the referring page.
durationStringBacklink placement duration.
fb_likesIntegerNumber of Facebook shares.
from_domainidIntegerReferring domain ID.
from_urlStringReferring page URL.
gin_indexIntegerIndicates whether the page is indexed by Google.
gin_index_check_dateStringDate when the indexing status was checked.
http_statusIntegerHTTP status code of the referring page.
is_blocked_metaIntegerIndicates whether the page is blocked via meta directives (1 – yes, 0 – no).
is_blocked_robotstxtIntegerIndicates whether the page is blocked via robots.txt (1 – yes, 0 – no).
is_disavowIntegerIndicates whether the backlink is disavowed (1 – yes, 0 – no).
is_forced_statusIntegerIndicates whether the backlink status was changed manually.
is_imageIntegerIndicates whether the backlink is an image link.
is_link_not_foundIntegerIndicates whether the backlink was not found.
is_nofollowIntegerIndicates whether the backlink has a nofollow attribute.
is_redirIntegerIndicates whether the referring page redirects.
is_sponsoredIntegerIndicates whether the backlink is sponsored.
last_crawler_visitStringLast crawl date.
link_managerStringResponsible manager.
link_typeStringType of backlink anchor text.
mozdaIntegerMoz Domain Authority score.
notesStringBacklink notes.
num_linksIntegerNumber of backlinks from the referring page.
priceFloatBacklink placement cost.
sourceStringBacklink source.
src_domain_countryStringCountry of the referring domain.
src_domain_inlink_rankIntegerReferring domain rank.
src_domain_ipStringReferring domain IP address.
src_domain_mozda_dateStringMoz Domain Authority check date.
src_domain_region_idIntegerReferring domain region ID.
titleStringReferring page title.
to_urlStringTarget URL.
total_ext_linksIntegerNumber of external links on the referring page.
ugcIntegerIndicates whether the backlink is user-generated content.
group_idIntegerBacklink group ID.

Response example

Copy
[
{
"anchor": "SE Ranking",
"category": "",
"charge_period": null,
"charge_start": null,
"date_added": "2018-06-11",
"date_lost": "2021-10-10",
"date_placement": "2018-10-11",
"domain": "highpoweredseo.com",
"duration": "",
"fb_likes": "2",
"from_domainid": "4630",
"from_url": "http://highpoweredseo.com/how-to-become-a-better",
"gin_index": "11",
"gin_index_check_date": "2018-10-05",
"http_status": "1",
"id": "53",
"is_blocked_meta": "1",
"is_blocked_robotstxt": "1",
"is_disavow": "0",
"is_forced_status": "0",
"is_image": "1",
"is_link_not_found": "1",
"is_nofollow": "1",
"is_redir": "1",
"is_sponsored": "0",
"last_crawler_visit": "2018-10-05",
"link_manager": "",
"link_type": "",
"mozda": null,
"notes": "ghjg",
"num_links": 10,
"price": null,
"source": null,
"src_domain_country": "USA",
"src_domain_inlink_rank": null,
"src_domain_ip": "184.168.221.40",
"src_domain_mozda_date": null,
"src_domain_region_id": null,
"title": "Title",
"to_url": "http://tourl.ru/",
"total_ext_links": "2",
"ugc": null
}
]

POST https://api4.seranking.com/backlinks/{site_id}

Adds a new backlink to the specified website.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
urlStringYesBacklink URL.
priceFloatNoBacklink price.
currencyStringNoCurrency code in ISO 4217 format (for example, USD, EUR).
charge_periodStringNoCharging period (onetime, monthly, quarterly, 6months, year).
charge_startStringNoPayment start date (in YYYY-MM-DD).

Request example

Copy
curl --location --request POST 'https://api4.seranking.com/backlinks/12345' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
"url": "http://backlink.test/",
"price": 1,
"charge_period": "onetime",
"charge_start": "2018-01-01"
}'

Response parameters

If successful, the server returns the 200 HTTP status code and an object containing the backlink ID. Returns HTTP 400 for invalid input or duplicate backlinks. Returns HTTP 403 if access is denied (for more information, see Error handling).

ParameterTypeDescription
idIntegerUnique identifier of the added backlink.

Response example

Copy
{"id": 1}

POST https://api4.seranking.com/backlinks/{site_id}/list

Imports a list of backlinks for the specified website.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
listArrayYesArray of backlink URLs to import.
priceNumberNoBacklink price.
currencyStringNoCurrency code in ISO 4217 format (for example, USD, EUR).
charge_periodStringNoCharging period (onetimemonthlyquarterly6monthsyear).
charge_startStringNoPayment start date (in YYYY-MM-DD).
group_idIntegerNoBacklink group ID.
managerStringNoManager name associated with the backlinks.

Request example

Copy
curl --location --request POST 'https://api4.seranking.com/backlinks/12345/list' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
"group_id": 1,
"price": 100,
"currency": "USD",
"manager": "manager",
"charge_period": "onetime",
"charge_start": "2021-10-10",
"list": ["https://google.com"]
}'

Response parameters

If successful, the server returns the 200 HTTP status code and an object containing import results. Returns HTTP 400 for invalid input and HTTP 403 if access is denied (for more information, see Error handling).

ParameterTypeDescription
addedIntegerNumber of backlinks added.
duplicatesIntegerNumber of duplicate backlinks.
totalIntegerTotal number of backlinks processed.

Response example

Copy
{
"added": 1,
"duplicates": 0,
"total": 1
}

PUT https://api4.seranking.com/backlinks/{site_id}/settings

Updates automatic backlink import settings from Google Search Console.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
gsc_autoimportBooleanYesEnable or disable automatic import from Google Search Console.

Request example

Copy
curl --location --request PUT 'https://api4.seranking.com/backlinks/12345/settings' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
"gsc_autoimport": true
}'

Response parameters

If successful, the server returns the 204 HTTP status code with no response body. Returns HTTP 403 if access is denied (for more information, see Error handling).

Response example

No response body.


POST https://api4.seranking.com/backlinks/{site_id}/import-gsc

Starts importing backlinks from Google Search Console.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).

Request example

Copy
curl --location --request POST 'https://api4.seranking.com/backlinks/12345/import-gsc' \
--header 'Authorization: Token YOUR_API_KEY'

Response parameters

If successful, the server returns the 200 HTTP status code and an import task object. Returns HTTP 403 if access is denied (for more information, see Error handling).

ParameterTypeDescription
statusStringImport task status (queued, processing, completed, failed).
tokenStringImport task token used to check import status.

Response example

Copy
{
"status": "queued",
"token": "1c84d0375d44725521647919c17f1cb9"
}

GET https://api4.seranking.com/backlinks/{site_id}/import-gsc/{token}

Returns the status of a Google Search Console backlink import task.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
tokenStringYesImport task token.

Request example

Copy
curl --location --request GET 'https://api4.seranking.com/backlinks/12345/import-gsc/1c84d0375d44725521647919c17f1cb9' \
--header 'Authorization: Token YOUR_API_KEY'

Response parameters

If successful, the server returns the 200 HTTP status code and import task status. Returns HTTP 403 if access is denied (for more information, see Error handling).

ParameterTypeDescription
statusStringImport task status.
timeIntegerTimestamp of the latest status update (milliseconds).

Response example

Copy
{
"time": 1635417036150,
"status": "queued"
}

POST https://api4.seranking.com/backlinks/{site_id}/delete

Deletes backlinks for the specified website.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
backlink_idsArray of IntegerYesArray of backlink IDs to delete.

Request example

Copy
curl --location --request POST 'https://api4.seranking.com/backlinks/12345/delete' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
"backlink_ids": [1, 2, 3]
}'

Response parameters

If successful, the server returns the 204 HTTP status code with no response body. Returns HTTP 400 for invalid input and HTTP 403 if access is denied (for more information, see Error handling).

Response example

No response body.


POST https://api4.seranking.com/backlinks/{site_id}/recheck

Runs an index or HTTP status check for the specified backlinks.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
backlink_idsArrayYesArray of backlink IDs to check.
recheck_typeStringNoType of check: status, index. Defaults to status.

Request example

Copy
curl --location --request POST 'https://api4.seranking.com/backlinks/12345/recheck' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
"backlink_ids": [1, 2],
"recheck_type": "index"
}'

Response parameters

If successful, the server returns the 204 HTTP status code with no response body. Returns HTTP 400 for invalid input and HTTP 403 if access is denied (for more information, see Error handling).

Response example

No response body.


GET https://api4.seranking.com/backlinks/{site_id}/stat

Returns backlink statistics for the specified website.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).

Request example

Copy
curl --location --request GET 'https://api4.seranking.com/backlinks/12345/stat' \
--header 'Authorization: Token YOUR_API_KEY'

Response parameters

If successful, the server returns the 200 HTTP status code and backlink statistics. Returns HTTP 403 if site_id is wrong (for more information, see Error handling).

ParameterTypeDescription
totalIntegerTotal number of backlinks.
anchorsIntegerTotal number of unique anchor texts.
ipIntegerTotal number of unique IP addresses.
domainsIntegerTotal number of unique domains.
dofollowIntegerTotal number of dofollow backlinks.
nofollowIntegerTotal number of nofollow backlinks.
limitIntegerNumber of backlinks that can still be added today.

Response example

Copy
{
"total": 9,
"anchors": 1,
"ip": 8,
"domains": 9,
"dofollow": 0,
"nofollow": 1,
"limit": 988
}

GET https://api4.seranking.com/backlink-disavow/{site_id}

Returns a list of disavowed backlinks.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
limitIntegerNoNumber of disavowed backlinks to return.
offsetIntegerNoOffset for pagination.

Request example

Copy
curl --location --request GET 'https://api4.seranking.com/backlink-disavow/12345?limit=100&offset=0' \
--header 'Authorization: Token YOUR_API_KEY'

Response parameters

If successful, the server returns the 200 HTTP status code and disavowed backlinks. Returns HTTP 403 if access is denied (for more information, see Error handling).

ParameterTypeDescription
total_disavow_linksIntegerTotal number of disavowed backlinks.
disavow_linksArrayArray of disavowed backlink objects.
disavow_links[].idIntegerDisavowed backlink ID.
disavow_links[].urlStringDisavowed backlink URL.
disavow_links[].typeStringDisavow type (url or domain).
disavow_links[].exportedIntegerIndicates whether the backlink has been exported (0 or 1).
disavow_links[].domain_inlink_rankIntegerDomain rank.

Response example

Copy
{
"total_disavow_links": 2,
"disavow_links": [
{ "id": 3, "url": "https://google.com", "type": "url", "exported": 0, "domain_inlink_rank": 96 },
{ "id": 4, "url": "https://google.com", "type": "url", "exported": 0, "domain_inlink_rank": 100 }
]
}

POST https://api4.seranking.com/backlink-disavow/{site_id}

Adds a list of disavowed backlinks.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
listArrayYesArray of backlink URLs to disavow.

Request example

Copy
curl --location --request POST 'https://api4.seranking.com/backlink-disavow/12345' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
"list": [
"https://google.com",
"https://example.com"
]
}'

Response parameters

If successful, the server returns the 200 HTTP status code and the number of added disavowed backlinks. Returns HTTP 400 for invalid input and HTTP 403 if access is denied (for more information, see Error handling).

ParameterTypeDescription
addedIntegerNumber of disavowed backlinks added.

Response example

Copy
{ "added": 2 }

DELETE https://api4.seranking.com/backlink-disavow/{site_id}

Deletes a backlink from the disavow list.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
idIntegerYesDisavowed backlink ID (query parameter).

Request example

Copy
curl --location --request DELETE 'https://api4.seranking.com/backlink-disavow/12345?id=3' \
--header 'Authorization: Token YOUR_API_KEY'

Response parameters

If successful, the server returns the 204 HTTP status code with no response body. Returns HTTP 400 for invalid input and HTTP 403 if access is denied (for more information, see Error handling).

Response example

No response body.


GET https://api4.seranking.com/backlink-groups/{site_id}

Returns all backlink groups for the specified website.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).

Request example

Copy
curl --location --request GET 'https://api4.seranking.com/backlink-groups/12345' \
--header 'Authorization: Token YOUR_API_KEY'

Response parameters

If successful, the server returns the 200 HTTP status code and a list of backlink groups. Returns HTTP 403 if access is denied (for more information, see Error handling).

ParameterTypeDescription
total_groupsIntegerTotal number of backlink groups.
groupsArrayArray of backlink group objects.
groups[].idIntegerBacklink group ID.
groups[].nameStringBacklink group name.
groups[].countIntegerNumber of backlinks in the group.

Response example

Copy
{
"total_groups": 2,
"groups": [
{
"id": 1,
"name": "General",
"count": 5
},
{
"id": 2,
"name": "Second group",
"count": 1
}
]
}

POST https://api4.seranking.com/backlink-groups/{site_id}

Creates a new backlink group.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
nameStringYesName of the backlink group.

Request example

Copy
curl --location --request POST 'https://api4.seranking.com/backlink-groups/12345' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
"name": "Outreach links"
}'

Response parameters

If successful, the server returns the 200 HTTP status code and the created group ID. Returns HTTP 400 for invalid input and HTTP 403 if access is denied (for more information, see Error handling).

ParameterTypeDescription
group_idIntegerID of the created backlink group.

Response example

Copy
{ "group_id": 2 }

DELETE https://api4.seranking.com/backlink-groups/{site_id}

Deletes the specified backlink group.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
idIntegerYesBacklink group ID (query parameter).

Request example

Copy
curl --location --request DELETE 'https://api4.seranking.com/backlink-groups/12345?id=2' \
--header 'Authorization: Token YOUR_API_KEY'

Response parameters

If successful, the server returns the 204 HTTP status code. Returns HTTP 400 if the group ID is invalid or the group doesn’t exist. Returns HTTP 403 if access is denied (for more information, see Error handling).

Response example

No response body.


PUT https://api4.seranking.com/backlink-groups/{site_id}

Renames an existing backlink group.

Request parameters

ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
idIntegerYesBacklink group ID.
nameStringYesNew backlink group name.

Request example

Copy
curl --location --request PUT 'https://api4.seranking.com/backlink-groups/12345' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
"id": 2,
"name": "Guest posts"
}'

Response parameters

If successful, the server returns the 204 HTTP status code with no response body. Returns HTTP 400 for invalid input and HTTP 403 if access is denied (for more information, see Error handling).

Response example

No response body.


POST https://api4.seranking.com/backlink-groups/{site_id}/move

Moves backlinks or backlink groups into the specified backlink group.

Request parameters

Note: At least one of backlink_ids or group_ids must be provided.
ParameterTypeRequiredDescription
site_idIntegerYesWebsite ID (path parameter).
idIntegerYesTarget backlink group ID.
backlink_idsArrayConditionalArray of backlink IDs to move.
group_idsArrayConditionalArray of backlink group IDs to move.

Request example

Copy
curl --location --request POST 'https://api4.seranking.com/backlink-groups/12345/move' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token YOUR_API_KEY' \
--data '{
"id": 1,
"backlink_ids": [10, 11],
"group_ids": [2]
}'

Response parameters

If successful, the server returns the 204 HTTP status code with no response body. Returns HTTP 400 for invalid input and HTTP 403 if access is denied (for more information, see Error handling).

Response example

No response body.

Learn how SE Ranking’s API can boost your SEO!

Hi! Meet our product expert, Alex.

He’ll walk you through the API and show you how to get the most out of it.

  • Enjoy a tailored demo on integrating rich, structured SEO data into your stack.
  • Pin down every tech detail live—auth, endpoints, rate limits, data formats.
  • Compare usage tiers and pricing so you can unlock maximum data value.

Request a free demo to see our tools and integrations in action

By clicking this button, you agree to SE Ranking’s Terms of Services and Privacy Policy.