NAVNavbar
Logo
cURL php NodeJS Python cSharp

Domain Intersection


This endpoint will provide you with the list of domains pointing to the specified websites. This endpoint is especially useful for creating a Link Gap feature that shows what domains link to your competitors but do not link out to your website.

Instead of ‘login’ and ‘password’ use your credentials from https://app.dataforseo.com/api-dashboard

<?php
// You can download this file from here https://cdn.dataforseo.com/v3/examples/php/php_RestClient.zip
require('RestClient.php');
$api_url = 'https://api.dataforseo.com/';
// Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-dashboard
$client = new RestClient($api_url, null, 'login', 'password');
$post_array = array();
// simple way to set a task
$post_array[] = array(
  "targets" => [
    "1" => "moz.com",
    "2" => "ahrefs.com"
  ],
  "exclude_targets" => [
    "semrush.com"
  ],
  "limit" => 5,
  "include_subdomains" => false,
  "exclude_internal_backlinks" => true,
  "order_by" => [
    "1.backlinks,desc"
  ]
);
try {
   // POST /v3/backlinks/domain_intersection/live
   $result = $client->post('/v3/backlinks/domain_intersection/live', $post_array);
   print_r($result);
   // do something with post result
} catch (RestClientException $e) {
   echo "n";
   print "HTTP code: {$e->getHttpCode()}n";
   print "Error code: {$e->getCode()}n";
   print "Message: {$e->getMessage()}n";
   print  $e->getTraceAsString();
   echo "n";
}
$client = null;
?>

The above command returns JSON structured like this:

{
  "version": "0.1.20230825",
  "status_code": 20000,
  "status_message": "Ok.",
  "time": "6.1727 sec.",
  "cost": 0.02015,
  "tasks_count": 1,
  "tasks_error": 0,
  "tasks": [
    {
      "id": "09291837-1535-0268-0000-0020bcf36b3e",
      "status_code": 20000,
      "status_message": "Ok.",
      "time": "6.1208 sec.",
      "cost": 0.02015,
      "result_count": 1,
      "path": [
        "v3",
        "backlinks",
        "domain_intersection",
        "live"
      ],
      "data": {
        "api": "backlinks",
        "function": "domain_intersection",
        "targets": {
          "1": "moz.com",
          "2": "ahrefs.com"
        },
        "include_subdomains": false,
        "exclude_targets": [
          "puma.com"
        ],
        "limit": 5,
        "order_by": [
          "1.backlinks,desc"
        ],
        "exclude_internal_backlinks": true
      },
      "result": [
        {
          "targets": {
            "1": "moz.com",
            "2": "ahrefs.com"
          },
          "total_count": 40921,
          "items_count": 5,
          "items": [
            {
              "domain_intersection": {
                "1": {
                  "type": "backlinks_domain_intersection",
                  "target": "www.xroxy.com",
                  "rank": 113,
                  "backlinks": 547189,
                  "first_seen": "2022-06-17 19:02:31 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 0,
                  "broken_pages": 0,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 0,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 0,
                  "referring_ips": 2,
                  "referring_subnets": 1,
                  "referring_pages": 488023,
                  "referring_links_tld": {
                    "com": 488023
                  },
                  "referring_links_types": {
                    "anchor": 488023
                  },
                  "referring_links_attributes": null,
                  "referring_links_platform_types": {
                    "unknown": 488023
                  },
                  "referring_links_semantic_locations": {
                    "": 488023
                  },
                  "referring_links_countries": null
                },
                "2": {
                  "type": "backlinks_domain_intersection",
                  "target": "www.xroxy.com",
                  "rank": 0,
                  "backlinks": 87,
                  "first_seen": "2023-01-10 08:03:13 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 87,
                  "broken_pages": 1,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 0,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 0,
                  "referring_ips": 1,
                  "referring_subnets": 1,
                  "referring_pages": 87,
                  "referring_links_tld": {
                    "com": 87
                  },
                  "referring_links_types": {
                    "anchor": 87
                  },
                  "referring_links_attributes": null,
                  "referring_links_platform_types": {
                    "unknown": 87
                  },
                  "referring_links_semantic_locations": {
                    "": 87
                  },
                  "referring_links_countries": null
                }
              },
              "summary": {
                "intersections_count": 2
              }
            },
            {
              "domain_intersection": {
                "1": {
                  "type": "backlinks_domain_intersection",
                  "target": "sharkzmarketing.com",
                  "rank": 0,
                  "backlinks": 374292,
                  "first_seen": "2023-04-06 19:48:26 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 0,
                  "broken_pages": 0,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 0,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 0,
                  "referring_ips": 1,
                  "referring_subnets": 1,
                  "referring_pages": 187165,
                  "referring_links_tld": {
                    "com": 187165
                  },
                  "referring_links_types": {
                    "anchor": 187163,
                    "image": 2
                  },
                  "referring_links_attributes": {
                    "noopener": 187121,
                    "noreferrer": 44,
                    "nofollow": 12
                  },
                  "referring_links_platform_types": {
                    "unknown": 187165
                  },
                  "referring_links_semantic_locations": {
                    "": 187121,
                    "article": 44
                  },
                  "referring_links_countries": null
                },
                "2": {
                  "type": "backlinks_domain_intersection",
                  "target": "sharkzmarketing.com",
                  "rank": 0,
                  "backlinks": 9,
                  "first_seen": "2023-04-06 19:56:04 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 0,
                  "broken_pages": 0,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 0,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 0,
                  "referring_ips": 1,
                  "referring_subnets": 1,
                  "referring_pages": 9,
                  "referring_links_tld": {
                    "com": 9
                  },
                  "referring_links_types": {
                    "anchor": 8,
                    "image": 1
                  },
                  "referring_links_attributes": {
                    "noreferrer": 8,
                    "nofollow": 1,
                    "noopener": 1
                  },
                  "referring_links_platform_types": {
                    "unknown": 9
                  },
                  "referring_links_semantic_locations": {
                    "article": 8,
                    "": 1
                  },
                  "referring_links_countries": null
                }
              },
              "summary": {
                "intersections_count": 2
              }
            },
            {
              "domain_intersection": {
                "1": {
                  "type": "backlinks_domain_intersection",
                  "target": "scholarshipsearcher.com",
                  "rank": 352,
                  "backlinks": 277439,
                  "first_seen": "2022-03-28 23:14:08 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 5,
                  "broken_pages": 3,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 0,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 0,
                  "referring_ips": 1,
                  "referring_subnets": 1,
                  "referring_pages": 69688,
                  "referring_links_tld": {
                    "com": 69688
                  },
                  "referring_links_types": {
                    "anchor": 69668,
                    "image": 20
                  },
                  "referring_links_attributes": {
                    "noopener": 69607,
                    "nofollow": 24,
                    "noreferrer": 20,
                    "sponsored": 6,
                    "ugc": 6,
                    "external": 5
                  },
                  "referring_links_platform_types": {
                    "blogs": 69688,
                    "cms": 69688
                  },
                  "referring_links_semantic_locations": {
                    "": 69236,
                    "article": 432,
                    "figure": 20
                  },
                  "referring_links_countries": null
                },
                "2": {
                  "type": "backlinks_domain_intersection",
                  "target": "scholarshipsearcher.com",
                  "rank": 191,
                  "backlinks": 2364,
                  "first_seen": "2022-03-28 23:00:22 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 32,
                  "broken_pages": 27,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 0,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 0,
                  "referring_ips": 1,
                  "referring_subnets": 1,
                  "referring_pages": 1991,
                  "referring_links_tld": {
                    "com": 1991
                  },
                  "referring_links_types": {
                    "anchor": 1987,
                    "image": 4
                  },
                  "referring_links_attributes": {
                    "noopener": 98,
                    "nofollow": 25,
                    "noreferrer": 17,
                    "external": 8,
                    "ugc": 3
                  },
                  "referring_links_platform_types": {
                    "blogs": 1991,
                    "cms": 1991
                  },
                  "referring_links_semantic_locations": {
                    "article": 1980,
                    "figcaption": 11
                  },
                  "referring_links_countries": null
                }
              },
              "summary": {
                "intersections_count": 2
              }
            },
            {
              "domain_intersection": {
                "1": {
                  "type": "backlinks_domain_intersection",
                  "target": "edynamique.com",
                  "rank": 440,
                  "backlinks": 132221,
                  "first_seen": "2020-05-26 05:08:32 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 0,
                  "broken_pages": 0,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 0,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 0,
                  "referring_ips": 1,
                  "referring_subnets": 1,
                  "referring_pages": 101483,
                  "referring_links_tld": {
                    "com": 101483
                  },
                  "referring_links_types": {
                    "anchor": 101483
                  },
                  "referring_links_attributes": {
                    "noopener": 1033,
                    "noreferrer": 1033
                  },
                  "referring_links_platform_types": {
                    "blogs": 101459,
                    "news": 59057,
                    "unknown": 24
                  },
                  "referring_links_semantic_locations": {
                    "": 101483
                  },
                  "referring_links_countries": null
                },
                "2": {
                  "type": "backlinks_domain_intersection",
                  "target": "edynamique.com",
                  "rank": 358,
                  "backlinks": 23955,
                  "first_seen": "2020-02-27 16:30:49 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 874,
                  "broken_pages": 1,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 0,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 0,
                  "referring_ips": 1,
                  "referring_subnets": 1,
                  "referring_pages": 20400,
                  "referring_links_tld": {
                    "com": 20400
                  },
                  "referring_links_types": {
                    "anchor": 20400
                  },
                  "referring_links_attributes": {
                    "noopener": 10154,
                    "noreferrer": 10154
                  },
                  "referring_links_platform_types": {
                    "blogs": 20392,
                    "news": 14585,
                    "unknown": 8
                  },
                  "referring_links_semantic_locations": {
                    "": 20400
                  },
                  "referring_links_countries": null
                }
              },
              "summary": {
                "intersections_count": 2
              }
            },
            {
              "domain_intersection": {
                "1": {
                  "type": "backlinks_domain_intersection",
                  "target": "www.20script.ir",
                  "rank": 353,
                  "backlinks": 89003,
                  "first_seen": "2022-04-28 19:32:08 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 0,
                  "broken_pages": 0,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 0,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 0,
                  "referring_ips": 1,
                  "referring_subnets": 1,
                  "referring_pages": 89003,
                  "referring_links_tld": {
                    "ir": 89003
                  },
                  "referring_links_types": {
                    "anchor": 89003
                  },
                  "referring_links_attributes": {
                    "noopener": 2,
                    "nofollow": 1,
                    "noreferrer": 1
                  },
                  "referring_links_platform_types": {
                    "organization": 89003
                  },
                  "referring_links_semantic_locations": {
                    "": 89003
                  },
                  "referring_links_countries": null
                },
                "2": {
                  "type": "backlinks_domain_intersection",
                  "target": "www.20script.ir",
                  "rank": 0,
                  "backlinks": 2,
                  "first_seen": "2022-06-27 21:41:45 +00:00",
                  "lost_date": null,
                  "backlinks_spam_score": 0,
                  "broken_backlinks": 0,
                  "broken_pages": 0,
                  "referring_domains": 1,
                  "referring_domains_nofollow": 1,
                  "referring_main_domains": 1,
                  "referring_main_domains_nofollow": 1,
                  "referring_ips": 1,
                  "referring_subnets": 1,
                  "referring_pages": 2,
                  "referring_links_tld": {
                    "ir": 2
                  },
                  "referring_links_types": {
                    "anchor": 2
                  },
                  "referring_links_attributes": {
                    "nofollow": 2,
                    "noopener": 2,
                    "noreferrer": 2
                  },
                  "referring_links_platform_types": {
                    "organization": 2
                  },
                  "referring_links_semantic_locations": {
                    "": 2
                  },
                  "referring_links_countries": null
                }
              },
              "summary": {
                "intersections_count": 2
              }
            }
          ]
        }
      ]
    }
  ]
}

All POST data should be sent in the JSON format (UTF-8 encoding). The task setting is done using the POST method. When setting a task, you should send all task parameters in the task array of the generic POST array. You can send up to 2000 API calls per minute. The maximum number of requests that can be sent simultaneously is limited to 30.

You can specify the number of results you want to retrieve, filter and sort them.

Below you will find a detailed description of the fields you can use for setting a task.

Description of the fields for setting a task:

Field name Type Description
targets object domains, subdomains or webpages to get links for
required field
you can set up to 20 domains, subdomains or webpages
a domain or a subdomain should be specified without https:// and www.
a page should be specified with absolute URL (including http:// or https://)
example:
"targets": {
"1": "http://planet.postgresql.org/",
"2": "http://gborg.postgresql.org/"
}
exclude_targets array domains, subdomains or webpages you want to exclude
optional field
you can specify up to 10 domains, subdomains or webpages
if you use this array, results will contain the referring domains that link to targets but don’t link to exclude_targets
example:
"exclude_targets": [
"bbc.com",
"https://www.apple.com/iphone/*",
"https://dataforseo.com/apis/*"]
filters array array of results filtering parameters
optional field
you can add several filters at once (8 filters maximum)
you should set a logical operator and, or between the conditions
the following operators are supported:
regex, =, <>, in, not_in, like, not_like, ilike, not_ilike
you can use the % operator with like and not_like to match any string of zero or more characters
example:
["1.internal_links_count",">","1"]

[["2.referring_pages",">","2"],
"and",
["1.backlinks",">","10"]]

[["1.first_seen",">","2017-10-23 11:31:45 +00:00"],
"and",
[["2.target","like","%dataforseo.com%"],"or",["1.referring_domains",">","10"]]]

The full list of possible filters is available here.

order_by array results sorting rules
optional field
you can use the same values as in the filters array to sort the results
possible sorting types:
asc – results will be sorted in the ascending order
desc – results will be sorted in the descending order
you should use a comma to set up a sorting type
example:
["backlinks,desc"]
note that you can set no more than three sorting rules in a single request
you should use a comma to separate several sorting rules
example:
["backlinks,desc","rank,asc"]
offset integer offset in the array of returned results
optional field
default value: 0
if you specify the 10 value, the first ten backlinks in the results array will be omitted and the data will be provided for the successive backlinks
limit integer the maximum number of returned results
optional field
default value: 100
maximum value: 1000
internal_list_limit integer maximum number of elements within internal arrays
optional field
you can use this field to limit the number of elements within the following arrays:
referring_links_tld
referring_links_types
referring_links_attributes
referring_links_platform_types
referring_links_semantic_locations

default value: 10
maximum value: 1000

backlinks_status_type string set what backlinks to return and count
optional field
you can use this field to choose what backlinks will be returned and used for aggregated metrics for your targets;
possible values:
all – all backlinks will be returned and counted;
live – backlinks found during the last check will be returned and counted;
lost – lost backlinks will be returned and counted;

default value: live

backlinks_filters array filter the backlinks of your target
optional field
you can use this field to filter the initial backlinks that will be included in the dataset for aggregated metrics for your target
you can filter the backlinks by all fields available in the response of this endpoint
using this parameter, you can include only dofollow backlinks in the response and create a flexible backlinks dataset to calculate the metrics for
example:
"backlinks_filters": [["dofollow", "=", true]]
include_subdomains boolean indicates if the subdomains of the target will be included in the search
optional field
if set to false, the subdomains will be ignored
default value: true
include_indirect_links boolean indicates if indirect links to the targets will be included in the results
optional field
if set to true, the results will include data on indirect links pointing to a page that either redirects to a target, or points to a canonical page
if set to false, indirect links will be ignored
default value: true
exclude_internal_backlinks boolean indicates whether the backlinks from subdomains of the target are excluded
optional field
if set to false, the backlinks from subdomains of the target will be omitted and you won’t receive the same domain in the response;
default value: true
intersection_mode string indicates whether to intersect backlinks
optional field
use this field to intersect or merge results for the specified domains
possible values: all, partical
all – results are based on all backlinks;
partial – results are based on the intersecting backlinks only;
default value: all
tag string user-defined task identifier
optional field
the character limit is 255
you can use this parameter to identify the task and match it with the result
you will find the specified tag value in the data object of the response

As a response of the API server, you will receive JSON-encoded data containing a tasks array with the information specific to the set tasks.

Description of the fields in the results array:

Field name Type Description
version string the current version of the API
status_code integer general status code
you can find the full list of the response codes here
Note: we strongly recommend designing a necessary system for handling related exceptional or error conditions
status_message string general informational message
you can find the full list of general informational messages here
time string execution time, seconds
cost float total tasks cost, USD
tasks_count integer the number of tasks in the tasks array
tasks_error integer the number of tasks in the tasks array returned with an error
tasks array array of tasks
        id string task identifier
unique task identifier in our system in the UUID format
        status_code integer status code of the task
generated by DataForSEO; can be within the following range: 10000-60000
you can find the full list of the response codes here
        status_message string informational message of the task
you can find the full list of general informational messages here
        time string execution time, seconds
        cost float cost of the task, USD
        result_count integer number of elements in the result array
        path array URL path
        data object contains the same parameters that you specified in the POST request
        result array array of results
            targets object target domains, subdomains or webpages in a POST array
            total_count integer total amount of results relevant to your request
            items_count integer the number of results returned in the items array
            items array contains domain that link to all targets from the POST array
              domain_intersection object contains data on domains that link to the corresponding targets specified in the POST array
data is provided in separate objects corresponding to domains, subdomains or pages specified in the targets object
                 1 object contains data on a domain that links to the corresponding target from the POST array
field name varies in the range from 1 to 20 according to the number of domains, subdomains, or pages in the targets object
                     type string type of element = ‘backlinks_domain_intersection’
                     target string domain that links to the corresponding target from the POST array
                     rank integer rank of the target
rank is calculated based on the method for node ranking in a linked database – a principle used in the original Google PageRank algorithm
learn more about the metric and how it is calculated in this help center article
                     backlinks integer indicates the number of backlinks
                     first_seen string date and time when our crawler found the backlink from this target for the first time
in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00”
example:
2019-11-15 12:57:46 +00:00
                     lost_date integer date and time when the last backlink from this target was lost
indicates the date and time when our crawler visited the page and it responded with 4xx or 5xx status code or the last backlink was removed
in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00”
example:
2019-11-15 12:57:46 +00:00
                     backlinks_spam_score integer average spam score of the backlinks pointing to the target
learn more about how the metric is calculated on this help center page
                     broken_backlinks integer number of broken backlinks
                     broken_pages integer number of broken pages
                     referring_domains integer number of referring domains
                     referring_domains_nofollow integer number of domains pointing at least one nofollow link to the corresponding target
                     referring_main_domains integer number of referring main domains
                     referring_main_domains_nofollow integer number of main domains pointing at least one nofollow link to the target
                     referring_ips integer number of referring IP addresses
                     referring_subnets integer number of referring subnetworks
                     referring_pages integer indicates the number of pages pointing to the target
                     referring_links_tld object top level domains of the referring links
contains top-level domains and referring link count per each
                     referring_links_types object types of the referring links
indicates the types of referring links and link count per each type
possible values:
anchor, image, link, meta, canonical, alternate, redirect
                     referring_links_attributes object link attributes of the referring links
indicates link attributes of the referring links and the link count per each attribute
                     referring_links_platform_types object types of referring platforms
indicates referring platform types and link count per each platform
                     referring_links_semantic_locations object semantic locations of the referring links
indicates semantic elements in HTML where the referring links are located and the link count per each semantic location
you can get the full list of semantic elements here
                     referring_links_countries object ISO country codes of the referring links
indicates ISO country codes of the domains where the referring links are located and the link count per each country
              summary object contains the domain intersections summary
                 intersections_count integer total number of intersections

‌‌