The Moz Q&A Forum

    • Forum
    • Questions
    • My Q&A
    • Users
    • Ask the Community

    Welcome to the Q&A Forum

    Browse the forum for helpful insights and fresh discussions about all things SEO.

    1. SEO and Digital Marketing Q&A Forum
    2. Categories
    3. API
    4. How to get backlinks with the API

    How to get backlinks with the API

    API
    25 3 4.4k
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as question
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • DavidLee
      DavidLee last edited by

      Hey Carl!

      We do provide examples in the documentation. They can be filtered in many ways.

      Here is a very basic call that will return the first 25 links to all pages going to moz.com which will provide the linking page and the page being link to

      http://lsapi.seomoz.com/linkscape/links/moz.com?AccessID=member-xxxxxxxx&Expires=xxxxxxxx&Signature=xxxxxxxx&Scope=page_to_domain&Filter=external&Sort=page_authority&SourceCols=4&TargetCols=4&LinkCols=4&Limit=25

      The first result will look like this:

      [0] => Array
      (
      [lrid] => 460538186303
      [lsrc] => 131443324666
      [lt] => "Google Algorithm Change History"
      [ltgt] => 68767261786
      [luuu] => moz.com/google-algorithm-change
      [uu] => en.wikipedia.org/wiki/Google_Panda

      Hope this helps!

      silvacarl 1 Reply Last reply Reply Quote 0
      • silvacarl
        silvacarl @DavidLee last edited by

        THIS IS AWESOME!  If i am checking a subdomain, like 10.billing.callmydoc.com, do I need to do something different?

        As usual, I will repost my findings once completed.  8-)

        1 Reply Last reply Reply Quote 0
        • DavidLee
          DavidLee last edited by

          You would only need to adjust the scope to be &Scope=page_to_subdomain

          as the above example would only give you results to any page at callmydoc.com

          silvacarl 1 Reply Last reply Reply Quote 0
          • DavidLee
            DavidLee last edited by

            Also to test your results, you can cross-reference by filtering page/sub-domain/root-domain directly on OSE https://moz.com/researchtools/ose/links?site=10.billing.callmydoc.com&filter=&source=external&target=domain&group=0&page=1&sort=page_authority&anchor_id=&anchor_type=&anchor_text=&from_site=

            silvacarl 1 Reply Last reply Reply Quote 0
            • silvacarl
              silvacarl @DavidLee last edited by

              all i did was change that one parameter but now i am getting:

              {
              "status" : "403",
              "error_message" : "Permission denied: blepcoehcjeidmfpcleoaigbaahfafhgbo"
              }

              DavidLee 1 Reply Last reply Reply Quote 0
              • DavidLee
                DavidLee @silvacarl last edited by

                Can you paste the full URL call your app generated minus credentials so I can take a look?

                silvacarl 1 Reply Last reply Reply Quote 0
                • silvacarl
                  silvacarl @DavidLee last edited by

                  this is for my wife's practice: http://lsapi.seomoz.com/linkscape/links/solimancare.schedulemypatient.com?AccessID=mozscape-xx&Expires=xx&Signature=xx%3D&Scope=&Scope=page_to_subdomain&Filter=external&Sort=page_authority&SourceCols=4&TargetCols=4&LinkCols=4&Limit=50&Offset=0

                  returns:

                  {
                  "status" : "403",
                  "error_message" : "Permission denied: naieofimocidphjeoaifmdkkmllomolnnf"
                  }

                  DavidLee 1 Reply Last reply Reply Quote 0
                  • DavidLee
                    DavidLee @silvacarl last edited by

                    Hi Carl

                    The call is malformed with an additional scope parameter: http://www.screencast.com/t/zTqfBb0NuAO

                    If you remove the extra &Scope=

                    The call should work

                    silvacarl 1 Reply Last reply Reply Quote 0
                    • silvacarl
                      silvacarl @DavidLee last edited by

                      jeez.  8-(  Ok, got it.  wow, sorry.  fixed.  Now: http://lsapi.seomoz.com/linkscape/links/solimancare.schedulemypatient.com?AccessID=mozscape-xx&Expires=xx&Signature=xx%3D&Scope=page_to_subdomain&Filter=external&Sort=page_authority&SourceCols=4&TargetCols=4&LinkCols=4&Limit=50&Offset=0

                      does not return anything, just [].  It should show at least one of cal.callmydoc.com, solimancare.com, shantiquesparoom.com

                      should I tune up the parameters to be more specific?

                      DavidLee 1 Reply Last reply Reply Quote 0
                      • silvacarl
                        silvacarl @DavidLee last edited by

                        so I would take the json returned from the http://lsapi.seomoz.com/linkscape/links call and feed it back into this to cross reference, corect?

                        1 Reply Last reply Reply Quote 0
                        • DavidLee
                          DavidLee last edited by

                          You would only need to enter the domain in the search field on OSE to return metrics you can compare against API results.

                          OSE is our web app which calls our API.

                          silvacarl 1 Reply Last reply Reply Quote 0
                          • DavidLee
                            DavidLee @silvacarl last edited by

                            This will mean we have not discovered links from external sites to pages at those domains

                            https://moz.com/researchtools/ose/links?site=shantiquesparoom.com&filter=&source=external&target=domain&group=0&page=1&sort=page_authority&anchor_id=&anchor_type=&anchor_text=&from_site=

                            silvacarl 1 Reply Last reply Reply Quote 0
                            • silvacarl
                              silvacarl @DavidLee last edited by

                              so the call would be like: url="https://moz.com/researchtools/ose/links?site=$searchurl?AccessID=${access_id}&Expires=${timeend}&Signature=${signature}"?

                              DavidLee 1 Reply Last reply Reply Quote 0
                              • DavidLee
                                DavidLee @silvacarl last edited by

                                That URL is not an API call as it is a direct link to our online web app via web browser.

                                silvacarl 1 Reply Last reply Reply Quote 0
                                • silvacarl
                                  silvacarl @DavidLee last edited by

                                  got it!  really really appreciate your help!

                                  DavidLee 1 Reply Last reply Reply Quote 0
                                  • silvacarl
                                    silvacarl @DavidLee last edited by

                                    see below curl bash examples for Moz API:

                                    #!/bin/bash

                                    Usage: ./moz-test.sh callmydoc.com or ./moz-test.sh solimancare.schedulemypatient.com

                                    Note: backlinks for subdomains does not return results yet.

                                    access_id="mozscape-xx"
                                    secret_key="xx"

                                    searchurl=$1
                                    echo "Checking backlinks for ["$searchurl"]"
                                    endpoint="lsapi.seomoz.com"

                                    timenow=$(date +%s)
                                    timeend=$(( ${timenow} + (606024) ))
                                    stringToSign=${access_id}$'\n'${timeend}
                                    signature=$(echo -n "${stringToSign}" | openssl dgst -sha1 -hmac "${secret_key}" -binary | base64)
                                    signature=$(echo ${signature} | sed 's/+/%2B/g;s/=/%3D/g')

                                    start=0
                                    end=300
                                    echo "Checking for practices from $start to $end"
                                    rm found_urls.txt
                                    touch found_urls.txt
                                    for (( i=$start; i<$end; i++ )); do
                                    numberofdots=$(echo $searchurl | grep -o "." | wc -l)
                                    echo "number of dots ["$numberofdots"]"
                                    if [ "$numberofdots" == "1" ]; then
                                    url="http://lsapi.seomoz.com/linkscape/links/$searchurl?AccessID=${access_id}&Expires=${timeend}&Signature=${signature}&Scope=page_to_domain&Filter=external&Sort=page_authority&SourceCols=4&TargetCols=4&LinkCols=4&Limit=25"

                                    url2="http://lsapi.seomoz.com/linkscape/url-metrics/$searchurl?Cols=4&AccessID=${access_id}&Expires=${timeend}&Signature=${signature}"
                                    echo "Calling Moz url-metrics API with ["$url2"]"
                                    curl $url
                                    echo
                                    read -n 1 -p "Press any key to continue . . ."
                                    echo
                                    else
                                    url="http://lsapi.seomoz.com/linkscape/links/$searchurl?AccessID=${access_id}&Expires=${timeend}&Signature=${signature}&Scope=page_to_subdomain&Filter=external&Sort=page_authority&SourceCols=4&TargetCols=4&LinkCols=4&Limit=25"
                                    fi
                                    echo "Calling Moz API with ["$url"]"
                                    curl $url > backlink-results.json
                                    echo
                                    jq -r '.[].uu' < backlink-results.json >> found_urls.txt
                                    read -n 1 -p "Press any key to continue . . ."
                                    echo

                                    sleep a random amount between 1 and 30 seconds to not crush moz API

                                    sleep $[ ( $RANDOM % 50 ) + 1 ]s
                                    (( i + 50 ))
                                    done

                                    silvacarl 1 Reply Last reply Reply Quote 0
                                    • DavidLee
                                      DavidLee @silvacarl last edited by

                                      Anytime!

                                      1 Reply Last reply Reply Quote 0
                                      • silvacarl
                                        silvacarl @silvacarl last edited by

                                        Can you think of any other method for doing the subdomain backlink search?  I posted the code above if you want to play with it.

                                        Or for that matter anyone can try it out.

                                        DavidLee 1 Reply Last reply Reply Quote 0
                                        • DavidLee
                                          DavidLee @silvacarl last edited by

                                          I'm afraid not for bash curls. We do share example code for calling our API using other languages at https://github.com/seomoz/SEOmozAPISamples

                                          1 Reply Last reply Reply Quote 0
                                          • 1
                                          • 2
                                          • 1 / 2
                                          • First post
                                            Last post
                                          • How do I get count of total backlinks, total Reffering domain, total follow links and total non-follow links?
                                            PoisitionMySite
                                            PoisitionMySite
                                            0
                                            5
                                            173

                                          • Do you fetch website titles from paid api https://moz.com/help/guides/moz-api/mozscape/api-reference/url-metrics?
                                            dave.kudera
                                            dave.kudera
                                            0
                                            4
                                            98

                                          • Which is the best API call to return external backlinks for a URL?
                                            silvacarl
                                            silvacarl
                                            0
                                            2
                                            81

                                          • Is There any API from FourSqaure that allow us directly feeding business listings into it , Moz is doing same , so there must be some API?
                                            Vijay-Gaur
                                            Vijay-Gaur
                                            0
                                            3
                                            77

                                          • API Limit Question
                                            hectormainar
                                            hectormainar
                                            0
                                            3
                                            1.4k

                                          • Moz API, "Keyword Difficulty" and Bing Search Volume? And API "rows" and "requests"
                                            DavidLee
                                            DavidLee
                                            0
                                            4
                                            1.3k

                                          • Can we get access to Moz's Rank Tracker via the API?
                                            RAIBEC-SEO
                                            RAIBEC-SEO
                                            0
                                            3
                                            325

                                          • Does any one know if there is a tool out there built with the Moz API where you can feed in a large list of URLs and get back Domain Authority?
                                            LynnPatchett
                                            LynnPatchett
                                            0
                                            2
                                            102

                                          Get started with Moz Pro!

                                          Unlock the power of advanced SEO tools and data-driven insights.

                                          Start my free trial
                                          Products
                                          • Moz Pro
                                          • Moz Local
                                          • Moz API
                                          • Moz Data
                                          • STAT
                                          • Product Updates
                                          Moz Solutions
                                          • SMB Solutions
                                          • Agency Solutions
                                          • Enterprise Solutions
                                          • Digital Marketers
                                          Free SEO Tools
                                          • Domain Authority Checker
                                          • Link Explorer
                                          • Keyword Explorer
                                          • Competitive Research
                                          • Brand Authority Checker
                                          • Local Citation Checker
                                          • MozBar Extension
                                          • MozCast
                                          Resources
                                          • Blog
                                          • SEO Learning Center
                                          • Help Hub
                                          • Beginner's Guide to SEO
                                          • How-to Guides
                                          • Moz Academy
                                          • API Docs
                                          About Moz
                                          • About
                                          • Team
                                          • Careers
                                          • Contact
                                          Why Moz
                                          • Case Studies
                                          • Testimonials
                                          Get Involved
                                          • Become an Affiliate
                                          • MozCon
                                          • Webinars
                                          • Practical Marketer Series
                                          • MozPod
                                          Connect with us

                                          Contact the Help team

                                          Join our newsletter
                                          Moz logo
                                          © 2021 - 2026 SEOMoz, Inc., a Ziff Davis company. All rights reserved. Moz is a registered trademark of SEOMoz, Inc.
                                          • Accessibility
                                          • Terms of Use
                                          • Privacy