Endorse a LinkedIn skill
Automatically endorse a LinkedIn skill on linkedin.com. Endorse one of a LinkedIn profile's listed skills, or take back this account's endorsement with remove, by profile URL and the exact skill name shown on their Skills page. Endorsing needs a 1st-degree connection; a profile without the endorse option is refused with a clear message. Safe to call again: a skill already in the requested state returns already_endorsed or not_endorsed instead of clicking. Returns no_skills when the profile lists none and skill_not_found when the skill isn't among them.
Input
skillName requiredExact skill name as it appears on their Skills page (e.g. "Adobe InDesign").
profileUrl requiredThe profile's LinkedIn URL (e.g. https://www.linkedin.com/in/some-public-id/). Endorsing needs a 1st-degree connection.
remove optionaltrue takes back this account's endorsement of the skill instead of adding one.
Default: falseOutput
status requiredskillName requiredendorsementCount optionalEndorsement count shown for this skill after the action, null when the profile shows none.
FAQ
Search LinkedIn people
Search LinkedIn people by keywords with optional title, name, company, school, currentCompanyIds/pastCompanyIds (numeric ids from get_company_info), connectionDegrees, connectionOf, geoUrn, and a page number (10 people per page). Returns page, total, hasNextPage and people (name, url, publicId, memberUrn, degree, headline, location, snippet, followers, the mutual-connections line, and the members in common as data: up to two named mutuals with their profile, and mutualCount). Members in common: each 2nd-degree card names up to two of the people who connect you, and mutualCount says how many there are. To list them all, pass the card's memberUrn as connectionOf. Works alone or with any other filter. Empty results: people is [] and total is 0 only when LinkedIn shows its empty state. When LinkedIn shows another page instead of results (the monthly search limit of a free account, a security check), the run fails and names what the page showed. Location: this script takes LinkedIn geo ids only. To search a place, call suggest_locations with the place name first, then pass the geoUrn of the suggestion you want.
Get LinkedIn profile
Get one LinkedIn profile by its public id or profile URL: name, headline, location and its geo id, current company, About text, photo, connection degree, follower count, the stable member id, and the full lists of experience, education, languages, certifications and honors, in the order the profile shows them, with LinkedIn's ids for companies and schools and dates as month and year. Reading a profile does not record a profile view; for that reason the connection count, which only the profile page shows, is null. A role's location is the text the member saved, which can be translated or misspelled. Skills are in linkedin.com/get_profile_skills and contact details in linkedin.com/get_profile_contact_info. A field is null and a list is empty when the profile does not show it. Fails with a clear message when the browser is not signed in to LinkedIn, when the profile does not exist, or when LinkedIn limits the account.
List LinkedIn message inbox
List or search the conversations of the classic LinkedIn messaging inbox (not Sales Navigator), 20 per page. Either pick the folder (focused, other, archived, spam) and one of the inbox filters (unread, connections, inmail, starred, jobs), newest activity first, or pass keywords to search like the inbox search box: it matches participant names, message text and conversation titles in every folder, most relevant first. Returns per conversation its thread URL and id, the other participants (name, profile URL, connection degree), whether it is read and its unread count, its categories, the last activity time and the last message (text, subject, sender, whether you sent it, attachments). Pass nextCursor as cursor, with the same other args, to read the next page. A null nextCursor or an empty page means there is nothing more. Listing does not mark any conversation as read.
