360 Secure SkillHub
360 安全技能中心

Linkedin Api

封装 ScraperSocial 的 38 个 LinkedIn 公开数据端点,用 Node 脚本获取个人档案及 20 类子资源、公司信息与融资洞察、人才/公司/职位搜索、帖子评论与反应、广告库,统一输出 JSON 并支持分页;只读,需配置密钥,按调用计费。

nikhonit
nikhonit
热度 16.32
最近更新 2026-10-09 14:34:42
分类:搜索依赖:代码执行 / 第三方 API应用场景:研究 / 市场分析 / 社交媒体 / CRM

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add scrapersocial-linkedin
Metadata
name
linkedin-api
version
1.0.4
description
LinkedIn data toolkit via ScraperSocial — profiles and 20 sub-resources, company data, people/company/job search, posts, comments, reactions and ad search.
license
MIT-0
author
ScraperSocial
homepage
https://scrapersocial.com
repository
https://github.com/nikhonit/social-media-api-skills
tags
["linkedin","b2b","lead-generation","jobs","recruiting","social-media","api","mcp"]
allowed-tools
Bash(node:*)
metadata
{"openclaw":{"primaryEnv":"SCRAPERSOCIAL_KEY","homepage":"https://scrapersocial.com","requires":{"env":["SCRAPERSOCIAL_KEY"]},"network":{"allow":["api.scrapersocial.com"]},"shell":{"only":"scripts/*.js"}}}

LinkedIn API skill

Read public LinkedIn data as clean JSON. This LinkedIn API skill is the largest surface in the repo: a profile plus twenty sub-resources — experiences, educations, skills, certifications, publications, patents, recommendations, volunteering and more — alongside company data, funding and insights, people search, company search, job search, post reactions and comment threads, and the LinkedIn ad library.

LinkedIn is the hardest mainstream platform to read programmatically and the one most people want most. Each sub-resource is its own endpoint, so you pay for the slice you need instead of pulling a whole profile to read one field.

This skill wraps 38 live LinkedIn endpoints from the ScraperSocial API. Public data only, returned as clean JSON.

When to use this skill

  • You are enriching a lead or candidate record from a public profile URL or handle.
  • You need one slice of a profile — just the work history, just the skills — rather than everything.
  • You are researching a company: headcount, funding, insights, open jobs, employees, posts.
  • You are sourcing candidates or prospects through people search or job search.
  • You are analysing engagement on a post: reactions, comments and replies.

Do not use this skill when

  • Watch the cost. get_profile.js --section=contact costs 25 credits, the most expensive non-video call here. Full profiles and company records cost 10. Fetch the specific section you need instead of the whole profile.
  • You are compiling personal data at scale. This returns information about real people. GDPR, CCPA and LinkedIn's own terms apply to what you do with it. Have a lawful basis, honour deletion requests, and do not build unsolicited bulk-contact lists where that is restricted.
  • You need to send connection requests or InMail. Read-only.
  • You need private profile fields or anything behind a login. Public data only.
  • A LinkedIn link appears in passing with no question attached.

Setup

export SCRAPERSOCIAL_KEY=sk_live_...   # https://scrapersocial.com/app/keys

Signing up at scrapersocial.com/signup includes 100 free credits, no card required.

Permissions and scope

These scripts do exactly three things and nothing else: read one environment variable (SCRAPERSOCIAL_KEY), send HTTPS requests to https://api.scrapersocial.com (the host is a constant in the code, not configurable), and print JSON. They run as node scripts/<name>.js with no other shell use, no file writes and no persistence. call_endpoint.js accepts only the 38 documented /v1/linkedin/ paths in the table below and refuses anything else before a request is made.

Scripts

Script What it does Input Credits
get_profile.js Public profile data for a LinkedIn member: headline, positions, education. url handle
get_profile.js --section=about Get LinkedIn profile about. url handle
get_profile.js --section=certifications Get LinkedIn profile certifications. url handle
get_profile.js --section=comments List LinkedIn profile comments. url handle
get_profile.js --section=contact Get LinkedIn profile contact. url handle
get_profile.js --section=courses Get LinkedIn profile courses. url handle
get_profile.js --section=educations Get LinkedIn profile educations. url handle
get_profile.js --section=experiences Get LinkedIn profile experiences. url handle
get_profile.js --section=full Get LinkedIn profile full. url handle
get_profile.js --section=honors Get LinkedIn profile honors. url handle
get_profile.js --section=languages Get LinkedIn profile languages. url handle
get_profile.js --section=patents Get LinkedIn profile patents. url handle
get_profile.js --section=posts List LinkedIn profile posts. url handle
get_profile.js --section=projects Get LinkedIn profile projects. url handle
get_profile.js --section=publications Get LinkedIn profile publications. url handle
get_profile.js --section=reactions List LinkedIn profile reactions. url handle
get_profile.js --section=recommendations Get LinkedIn profile recommendations. url handle
get_profile.js --section=similar Get LinkedIn profile similar. url handle
get_profile.js --section=skills Get LinkedIn profile skills. url handle
get_profile.js --section=stats Get LinkedIn profile stats. url handle
get_profile.js --section=volunteers Get LinkedIn profile volunteers. url handle
get_company.js Company page data: industry, size, followers and description. url handle
get_company.js --section=funding Get LinkedIn company funding. url handle
get_company.js --section=insights Get LinkedIn company insights. url handle
get_company.js --section=jobs List LinkedIn company jobs. url handle
get_company.js --section=people List LinkedIn company people. url handle
get_company.js --section=posts Latest posts from a LinkedIn company page with per-post metrics. url handle
get_company.js --section=search List LinkedIn company search. query 5 credits per company
get_post.js --section=comment-replies List LinkedIn post comment replies. url 5 credits per comment
get_post.js --section=reactions List LinkedIn post reactions. url 5 credits per reaction
people_search.js Search public LinkedIn profiles by keyword, title, company or location. query 5 credits per profile
people_search.js --section=by-name List LinkedIn people search by name. query 5 credits per profile
people_search.js --section=by-services List LinkedIn people search by services. query 5 credits per profile
job_search.js List LinkedIn job search. query 5 credits per job
ads_search.js List LinkedIn ads search. query 5 credits per ad
get_comments.js Paginated comments on a LinkedIn post; charged per comment returned. url 5 credits per comment
search.js Keyword search over public LinkedIn posts. query 5 credits per result
get_stats.js Reactions, comments and reposts for a LinkedIn post. url 5 credits
call_endpoint.js Call any /v1/linkedin/ endpoint directly path + params varies

Every script also accepts --limit, --cursor, --fields, --format and --fresh. --limit is clamped to 50: above that the API returns an async job instead of data.

Example

node skills/linkedin-api/scripts/people_search.js "product manager fintech"

Every response uses the same envelope:

{ "data": {}, "meta": { "count": 20, "next_cursor": "..." }, "request_id": "a18e4ef88ad4b00b" }

meta appears on paginated endpoints only. Keep request_id — support traces calls with it.

Endpoints

Endpoint Input Returns Credits Paginated
/v1/linkedin/ads-search query ad 5 credits per ad yes
/v1/linkedin/comments url comment 5 credits per comment yes
/v1/linkedin/company url handle company 10 credits
/v1/linkedin/company-funding url handle company 10 credits
/v1/linkedin/company-insights url handle company 10 credits
/v1/linkedin/company-jobs url handle job 5 credits per job
/v1/linkedin/company-people url handle profile 5 credits per profile
/v1/linkedin/company-posts url handle post 5 credits per post
/v1/linkedin/company-search query company 5 credits per company yes
/v1/linkedin/job-search query job 5 credits per job yes
/v1/linkedin/people-search query profile 5 credits per profile yes
/v1/linkedin/people-search-by-name query profile 5 credits per profile yes
/v1/linkedin/people-search-by-services query profile 5 credits per profile yes
/v1/linkedin/post-comment-replies url comment 5 credits per comment yes
/v1/linkedin/post-reactions url reaction 5 credits per reaction yes
/v1/linkedin/profile url handle profile 10 credits (25 with include_email=true)
/v1/linkedin/profile-about url handle profile 5 credits
/v1/linkedin/profile-certifications url handle profile 5 credits
/v1/linkedin/profile-comments url handle comment 5 credits per comment
/v1/linkedin/profile-contact url handle profile 25 credits
/v1/linkedin/profile-courses url handle profile 5 credits
/v1/linkedin/profile-educations url handle profile 5 credits
/v1/linkedin/profile-experiences url handle profile 5 credits
/v1/linkedin/profile-full url handle profile 10 credits
/v1/linkedin/profile-honors url handle profile 5 credits
/v1/linkedin/profile-languages url handle profile 5 credits
/v1/linkedin/profile-patents url handle profile 5 credits
/v1/linkedin/profile-posts url handle post 5 credits per post
/v1/linkedin/profile-projects url handle profile 5 credits
/v1/linkedin/profile-publications url handle profile 5 credits
/v1/linkedin/profile-reactions url handle reaction 5 credits per reaction
/v1/linkedin/profile-recommendations url handle profile 5 credits
/v1/linkedin/profile-similar url handle profile 5 credits
/v1/linkedin/profile-skills url handle profile 5 credits
/v1/linkedin/profile-stats url handle profile 5 credits
/v1/linkedin/profile-volunteers url handle profile 5 credits
/v1/linkedin/search query result 5 credits per result yes
/v1/linkedin/stats url post 5 credits no

Costs shown per item for paginated endpoints, per call otherwise. Failed calls are not charged.

FAQ

How do I get a LinkedIn profile as JSON?

get_profile.js with the profile URL or handle returns the core profile for 10 credits; --section=full returns the expanded record. For one slice, use the matching section — --section=experiences, --section=skills, --section=educations and so on.

How do I get someone's contact details?

get_profile.js --section=contact returns the contact record for 25 credits. Separately, the default get_profile.js accepts --include_email, which adds the email to the base profile and reprices that call from 10 credits to 25. --include_email applies only to the default section; it is not accepted anywhere else. Only pull either with a lawful basis for processing that person's data.

Can I search LinkedIn for people, companies or jobs?

Yes: people_search.js (with --section=by-name or --section=by-services), get_company.js --section=search, and job_search.js. Each costs 5 credits per result returned.

How do I get company data?

get_company.js returns the company for 10 credits. Sections cover funding, insights, jobs, people and posts.

Is this an official LinkedIn API?

No. ScraperSocial is independent and not affiliated with LinkedIn or Microsoft. It returns publicly available data only. LinkedIn's own Marketing and Talent APIs are the sanctioned route for partner use cases.

Links

Disclaimer

ScraperSocial is an independent product and is not affiliated with, endorsed by, or sponsored by any platform named in this repository. All product names, logos and brands are property of their respective owners. These skills return only publicly available data.