Table: linkedin_profile - Query LinkedIn Profiles using SQL
LinkedIn is a professional networking platform that allows users to create profiles, connect with others, and share content. Users' profiles contain detailed information about their professional experiences, skills, education, and more. This information can be leveraged for various purposes such as recruitment, networking, and business development.
Table Usage Guide
The linkedin_profile
table provides insights into LinkedIn profiles. As a recruiter or business development professional, explore profile-specific details through this table, including professional experiences, skills, and education. Utilize it to uncover information about potential candidates, such as their qualifications, experience, and skills, or to identify potential business partners.
Important Notes
- You must specify the
public_identifier
in thewhere
clause to query this table.
Examples
Get profile information
Explore personal profile details on LinkedIn by specifying a user's public identifier. This can be useful in gathering industry-specific insights or understanding professional backgrounds.
select first_name, last_name, headline, public_identifier, industryfrom linkedin_profilewhere public_identifier = 'dboeke';
select first_name, last_name, headline, public_identifier, industryfrom linkedin_profilewhere public_identifier = 'dboeke';
List positions for a profile
This query is used to gain insights into the professional history of a specific LinkedIn profile. It organizes the user's past positions by company, title, and tenure, allowing for a comprehensive review of their career progression.
select j ->> 'companyName' as company_name, (j -> 'dateRange' -> 'start' -> 'year') :: int as start_year, (j -> 'dateRange' -> 'end' -> 'year') :: int as end_year, j ->> 'title' as title, j ->> 'description' as descriptionfrom linkedin_profile as p, jsonb_array_elements(positions) as c, jsonb_array_elements(c -> 'profilePositionInPositionGroup' -> 'elements') as jwhere p.public_identifier = 'nathan-wallace-86470'order by start_year desc;
select json_extract(j.value, '$.companyName') as company_name, json_extract(j.value, '$.dateRange.start.year') as start_year, json_extract(j.value, '$.dateRange.end.year') as end_year, json_extract(j.value, '$.title') as title, json_extract(j.value, '$.description') as descriptionfrom linkedin_profile as p, json_each(positions) as c, json_each( json_extract( c.value, '$.profilePositionInPositionGroup.elements' ) ) as jwhere p.public_identifier = 'nathan-wallace-86470'order by start_year desc;
List skills for a profile
Explore which skills are associated with a specific LinkedIn profile. This can be used to assess an individual's proficiencies and understand their professional capabilities.
select s ->> 'name' as skillfrom linkedin_profile as p, jsonb_array_elements(skills) as swhere p.public_identifier = 'dboeke';
select json_extract(s.value, '$.name') as skillfrom linkedin_profile as p, json_each(skills) as swhere p.public_identifier = 'dboeke';
List education history for a profile
Explore an individual's educational history, including the schools they attended and the degrees they obtained, in chronological order. This can be useful for background checks or understanding a person's qualifications.
select e -> 'school' ->> 'name' as school_name, e ->> 'degreeName' as degree_name, (e -> 'dateRange' -> 'start' -> 'year') :: int as start_year, (e -> 'dateRange' -> 'end' -> 'year') :: int as end_yearfrom linkedin_profile as p, jsonb_array_elements(education) as ewhere p.public_identifier = 'e-gineer'order by start_year desc;
select json_extract(e.value, '$.school.name') as school_name, json_extract(e.value, '$.degreeName') as degree_name, json_extract(e.value, '$.dateRange.start.year') as start_year, json_extract(e.value, '$.dateRange.end.year') as end_yearfrom linkedin_profile as p, json_each(education) as ewhere p.public_identifier = 'e-gineer'order by start_year desc;
List certifications for a profile
Discover the range of certifications associated with a specific LinkedIn profile to understand the individual's skills and qualifications. This could be useful for recruiters or hiring managers assessing a candidate's expertise in a particular field.
select c ->> 'name' as skillfrom linkedin_profile as p, jsonb_array_elements(certifications) as cwhere p.public_identifier = 'dglosser';
select json_extract(c.value, '$.name') as skillfrom linkedin_profile as p, json_each(certifications) as cwhere p.public_identifier = 'dglosser';
List contact details for a profile
Explore the contact information associated with a specific LinkedIn profile. This can be useful for reaching out to potential collaborators, clients, or job candidates.
select first_name, last_name, contact_info ->> 'emailAddress' as email, contact_info -> 'address' as addressfrom linkedin_profilewhere public_identifier = 'tuhintypical';
select first_name, last_name, json_extract(contact_info, '$.emailAddress') as email, json_extract(contact_info, '$.address') as addressfrom linkedin_profilewhere public_identifier = 'tuhintypical';
List additional contact details from nested arrays for a profile
Determine the additional contact information for a specific LinkedIn profile. This could be useful for expanding your network or reaching out to potential business partners.
select first_name, last_name, contact_info ->> 'emailAddress' as email, contact_info -> 'address' as address, twitter.value ->> 'name' as twitter_handle, phone.value ->> 'number' as phone_numberfrom linkedin_profile left join jsonb_array_elements(contact_info -> 'twitterHandles') as twitter on true left join jsonb_array_elements(contact_info -> 'phoneNumbers') as phone on truewhere public_identifier = 'tuhintypical';
select first_name, last_name, json_extract(contact_info, '$.emailAddress') as email, contact_info as address, json_extract(twitter.value, '$.name') as twitter_handle, json_extract(phone.value, '$.number') as phone_numberfrom linkedin_profile, json_each(json_extract(contact_info, '$.twitterHandles')) as twitter, json_each(json_extract(contact_info, '$.phoneNumbers')) as phonewhere public_identifier = 'tuhintypical';
Schema for linkedin_profile
Name | Type | Operators | Description |
---|---|---|---|
_ctx | jsonb | Steampipe context in JSON form, e.g. connection_name. | |
certifications | jsonb | Certifications for the profile. | |
contact_info | jsonb | Contact information for the profile. | |
education | jsonb | Education information for the profile. | |
entity_urn | text | URN of the profile object, urn:li:fsd_profile:ACoABADFm8QC8-YyrOV8IGjS8vbKTPjX2vrSjPM. | |
first_name | text | First name of the profile, e.g. Jane. | |
headline | text | Headline of the profile, e.g. CTO. | |
id | bigint | ID of the connection. | |
industry | text | Industry for the profile, e.g. Information Technology & Services. | |
industry_urn | text | Industry for the profile, e.g. urn:li:fsd_industry:96. | |
last_name | text | Last name of the profile, e.g. Bloggs. | |
location | jsonb | Location (postal code, country code, etc)of the profile. | |
object_urn | text | URN of the profile object, urn:li:member:12341234. | |
positions | jsonb | Position history for the profile. | |
public_identifier | text | = | Public identifier for the profile, e.g. jbloggs. |
skills | jsonb | Skills information for the profile. | |
summary | text | Summary text about the profile. | |
tracking_id | text | Tracking ID for the profile, e.g. /OHLHgmQRXifp9//zbqrOB==. | |
version_tag | text | Version tag for the profile, e.g. 775349407. |
Export
This table is available as a standalone Exporter CLI. Steampipe exporters are stand-alone binaries that allow you to extract data using Steampipe plugins without a database.
You can download the tarball for your platform from the Releases page, but it is simplest to install them with the steampipe_export_installer.sh
script:
/bin/sh -c "$(curl -fsSL https://steampipe.io/install/export.sh)" -- linkedin
You can pass the configuration to the command with the --config
argument:
steampipe_export_linkedin --config '<your_config>' linkedin_profile