Monday, 7 March, 2022 UTC


Summary

In a nutshell, Public LinkedIn profiles are profiles that any individual can view without being logged into LinkedIn. Private profiles are profiles you see when you are logged into LinkedIn.
Public LinkedIn profiles have less information.
This article will break down what exactly is missing and what is different. And also some workarounds to some common limitations of public LinkedIn profiles.
LinkedIn Public Profiles VS LinkedIn Private Profiles?
Public LinkedIn Profiles Private LinkedIn Profiles
No skills information Has skills information
Has language, but no language proficiency Has language, and proficiency
Has total connection count No connection count
Does not have contact information, social media, and websites Have contact information, social media, and websites if you are a first-level connection if the profile user has that added into their profile.
Limited to 10 work experiences Work experiences are not limited.
Not every profile has a public profile (approximate 5% of LinkedIn profiles do not have public profiles) Cannot visit all private profiles unless within 2nd order of connections (I might argue it is worst than public profiles)
Profile pictures might be hidden due to privacy setting Profile pictures are always available as long as you are within two orders of connections
Some parts of the public profile might be hidden (such as experiences, education, profile summary, etc) Full profile is always available as long as you are within two orders of connections
Activities shown on a public profile is limited to articles posted and summaries of the user's activities such as likes, etc. There are also no timestamps for public activities. Activities shown on a private profile show the full activity such as the actual content, comment, etc.
Can be scraped. Legal precedence has been tested in court. Cannot be scraped. See LinkedIn suing a vendor that was scraping private profiles.
Addressing the limitations of LinkedIn Public Profiles
Proxycurl API enriches LinkedIn Profile URLs with public profiles only when our users often come to me asking for workarounds when they experience the limitations of public LinkedIn profiles.
There are three common complaints about public profiles, and we have workarounds for them. The problems are:
  1. Fetching skills
  2. Fetching contact information
  3. Fetching social media profiles

Fetch skills of public LinkedIn profiles

Proxycurl API can append skill (keyword) data to public LinkedIn profiles with the skills=include parameter. These data are sourced externally via public datasets. Therefore, the skill data we return might not match the skills listed on the user's private profile, but it is the best approximation.
In this python code example, I will show you how to enrich a public LinkedIn profile with skills information with our Person Profile Endpoint.
from pprint import pprint
import requests

API_KEY = 'YOUR-API-KEY-HERE' # get your api key from https://nubela.co/proxycurl/dashboard
HEADER = {'Authorization': 'Bearer ' + API_KEY}

response = requests.get('https://nubela.co/proxycurl/api/v2/linkedin',
                        params={
                            "url": "https://www.linkedin.com/in/siow-shi-jia-450917144/",
                            "skills": "include",
                        },
                        headers=HEADER)
pprint(response.json())

This is how the response with skills look like:
{
   ...
   "skills":[
      "adobe photoshop",
      "css",
      "html5",
      "javascript",
      "php"
   ],
   ...
}

Fetch contact information of public LinkedIn profiles

Proxycurl API can append
  1. personal mobile numbers,
  2. personal emails and
  3. work emails
to 400+M profiles in LinkedIn. A match rate that exceeds what LinkedIn has to offer even with private profiles. And with greater detail and accuracy.
We can out-perform LinkedIn when it comes to matching contact information by correlating LinkedIn profiles with external publicly available sources of contact information. For more information on how to fetch contact information of public LinkedIn profiles, check out Proxycurl's Contact API.

Get social media profiles of LinkedIn profiles

Like contact information, Proxycurl API can pair public LinkedIn profiles with Facebook, Twitter, and Github profile IDs.
We pair these data with publicly available sources and have significant coverage. Again, with a match rate that exceeds what LinkedIn has to offer.
Proxycurl API can append social media profiles to public LinkedIn profiles with the extra=include parameter.
In this python code example, I will show you how you can append social media data to a public LinkedIn profile with Proxycurl's Person Profile Endpoint.
Scraping public LinkedIn profiles
The chances are that you chanced upon this article because you are looking to scrape LinkedIn profiles for commercial or research purposes. And there brings the single biggest difference between public and private LinkedIn profiles.
Scraping public LinkedIn profiles has been legally tested in court, and LinkedIn lost the lawsuit in 2019. Therefore, it is safe to assume that it is safe to scrape public LinkedIn profiles.
On the flipside, Mantheos Pte Ltd and its founders have been known to scrape private LinkedIn profiles are now being sued in federal courts for multiple charges, including fraud.
It is wise to keep just scraping public LinkedIn profiles for your needs to make sure you stay on the right side of the law.
It is tough to scrape public LinkedIn profiles.
Once you decide to ingest public LinkedIn profiles for your use-case, you will soon learn that it is a nightmare to scrape LinkedIn profiles. It would help if you had fresh residential proxies and sophisticated web crawlers, both expensive and complex to acquire and manage. Once you go down this rabbit hole, the problem becomes how I can get to public LinkedIn data without the complexity of building a dedicated web scraping team.
Proxycurl can help your organization once you get to this stage. Our API lets you build data-driven applications. For example, we have a Person Profile Endpoint which takes a LinkedIn profile URL and enriches it with fresh profile data in a structured format.
Alternatively, for companies with a larger budget that want to skip API enrichment entirely and work with bulk profile datasets directly, we have LinkDB snapshots that offer exhaustive public profiles for use in Machine Learning (ML) models or be used within your product.
If you are unsure, send us an email at [email protected], and we will be happy to assist you in powering your data-driven application.