LinkedIn scraper API
Public LinkedIn people profiles, companies, posts, search, and Ad Library over REST — one API key, shared envelope.
Why teams use Social Fetch for LinkedIn
Social Fetch's LinkedIn tag covers enrichment as plain GETs. `GET /v1/linkedin/profiles` and `GET /v1/linkedin/companies` take public `/in/…` and `/company/{slug}` URLs (profiles batched up to 50). `GET /v1/linkedin/organizations` covers `/school/…` and `/organization-guest/company/…`. `GET /v1/linkedin/profiles/posts` pages a person's feed with date filters and `onlyAuthoredPosts`; `GET /v1/linkedin/companies/posts` pages a company feed (1-based `page`, capped at 7). `GET /v1/linkedin/jobs` resolves `/jobs/view/…` links in batch; `GET /v1/linkedin/jobs/search` takes `keyword` and `location` with remote, seniority, and company filters.
`GET /v1/linkedin/posts` resolves a post or article permalink; `GET /v1/linkedin/posts/search` finds posts by keyword; `GET /v1/linkedin/posts/transcript` pulls spoken text from post video. `GET /v1/linkedin/people/search` turns a name into candidate profile URLs. `GET /v1/linkedin/ad-library/ads` and `.../ads/search` cover LinkedIn Ad Library. Every route returns `{ data, meta }` with `data.lookupStatus`, `meta.requestId`, and `meta.creditsCharged`.
What LinkedIn data can you get?
- Person profile lookup by `/in/…` URL — headline, location, experience, education, follower and connection metrics — batched up to 50 URLs per call.
- Company page lookup by vanity slug (`/company/{slug}`) — description, industry, headquarters, employee range, and funding when public.
- Broader organization pages (`GET /v1/linkedin/organizations`) for schools (`/school/…`) and organization-guest pages the company-only route rejects.
- Person feed (`GET /v1/linkedin/profiles/posts`) with `startDate`/`endDate` and `onlyAuthoredPosts` to drop reshares.
- Company feed pagination (`GET /v1/linkedin/companies/posts`) walked with a 1-based `page` param up to 7.
- Job posting lookup by `/jobs/view/…` URL in batch, plus `GET /v1/linkedin/jobs/search` by keyword, location, remote type, seniority, and company.
- People search by first and/or last name for prospecting-style discovery, returning candidate `profileUrl` rows.
- Single post or article lookup by permalink, keyword post search with cursor pagination, and post-video transcripts.
- LinkedIn Ad Library lookup by ad id/URL and search by company, keyword, or companyId with country and date filters.
LinkedIn API endpoints
Routes from the live API catalog. Open an endpoint for parameters and examples — credit notes come from OpenAPI pricing extensions.
Profiles & channels
Lists & graphs
Content
Search & discovery
Transcripts
Ads
Jobs
How to call the LinkedIn API
1. Create an API key
Sign up at Social Fetch and copy a key (`sfk_…`). New accounts get 100 free credits — enough to pull one company page, one profile, and a small jobs search against live data.
2. Call a LinkedIn route
Start with `GET /v1/linkedin/companies?url=https://www.linkedin.com/company/{slug}` for a company card, or `GET /v1/linkedin/profiles?url=…` for a person. Send `x-api-key` on every request. Use the playground for one-off checks; use the TypeScript SDK or curl in production jobs.
3. Read the shared envelope
Branch on `data.lookupStatus` (or each row's `lookupStatus` on batch routes) before you upsert. Log `meta.requestId` for support on failed rows. Bill against `meta.creditsCharged` — that field is the source of truth for what the call cost.
How much does the LinkedIn API cost?
LinkedIn credit pricing varies by operation. Company page, single post, and keyword post search: 1 credit. Profile, organization, and job URL lookups: 2 credits per URL (up to 50, 100 max per call). Jobs search and people search: 2-credit attempt fee plus 2 credits per row (people search preflights up to 102; jobs search up to 2002 at limit=1000). Post transcripts: 1 credit when found, 0 when unavailable. Ad Library routes are credit-metered per endpoint page. Always trust `meta.creditsCharged`.
Social Fetch vs the official LinkedIn API
LinkedIn official APIs sit behind the Marketing Developer Platform and partner programs — most useful endpoints require an approved partner application and member OAuth. Social Fetch looks up public profile, company, job, and post pages with a Social Fetch API key only — no partner application, no member OAuth.
LinkedIn API FAQ
Is there a LinkedIn scraper API that doesn't need partner access?
Yes. Social Fetch's LinkedIn routes read public profile, company, job, and post pages over REST. You authenticate with a Social Fetch API key — you do not need an approved LinkedIn Marketing Developer Platform application or member OAuth consent.
How do I fetch a LinkedIn company page?
Call `GET /v1/linkedin/companies` with a public `/company/{slug}` URL, the bare slug, `company/{slug}`, or `@slug` — numeric company ids are rejected. Check `data.lookupStatus` before reading `data.company`. Schools and organization-guest pages use `GET /v1/linkedin/organizations` instead.
How do I fetch a LinkedIn person profile?
Call `GET /v1/linkedin/profiles` with one or more public `/in/…` URLs (repeatable `url` param, up to 50 per call). Each row in `data.results` has its own `lookupStatus` plus a `profile` object with headline, location, experience, education, and connection metrics when public.
Do you support LinkedIn people search?
Yes. `GET /v1/linkedin/people/search` takes `firstName` and/or `lastName` and returns candidate rows in `data.people` (`name`, `profileUrl`, and optional subtitle/location/experience). It charges a 2-credit attempt fee plus 2 credits per person returned, and typically takes around ninety seconds per request.
Can I search LinkedIn jobs?
Yes. `GET /v1/linkedin/jobs/search` requires `keyword` and `location` (for example keyword "staff engineer", location "Austin") and supports `timeRange`, `jobType`, `experienceLevel`, `remote`, `company`, and `locationRadius` filters. Once you have a posting URL, `GET /v1/linkedin/jobs` fetches it directly in batch.
How much does the LinkedIn API cost?
It depends on the operation, not a flat rate. Company pages, single posts, and post search are 1 credit each; profile, organization, and job URL lookups are 2 credits per URL; jobs search and people search add a 2-credit attempt fee plus 2 credits per row returned. Confirm every call with `meta.creditsCharged`.
LinkedIn's official API vs Social Fetch — what's the difference?
LinkedIn Marketing Developer Platform requires an approved application and member OAuth for certified integrations. Social Fetch is public-data lookup: URL or search term in, JSON out, one Social Fetch key.
Can I get LinkedIn post transcripts?
Yes, for post video. `GET /v1/linkedin/posts/transcript` returns a non-empty string in `data.transcript` when `lookupStatus` is `found`; when speech is unavailable, it returns `not_found` with `transcript: null` and charges 0 credits. Videos beyond the supported length return HTTP 400 instead.
Does Social Fetch cover the LinkedIn Ad Library?
Yes. `GET /v1/linkedin/ad-library/ads` resolves one ad by `adId` or detail URL. `GET /v1/linkedin/ad-library/ads/search` finds ads by `company`, `keyword`, or `companyId`, with `countries` and date-range filters and cursor pagination through `data.page.nextCursor`.
Is scraping public LinkedIn data legal?
Social Fetch returns publicly visible data — pages that don't require logging in to view. You are responsible for how you use it under LinkedIn's terms, applicable law, and your own compliance review. We do not give legal advice.
Start with LinkedIn data
Create an account, spend the 100 free credits on live LinkedIn routes, then buy a pack when the JSON fits your pipeline. Credits do not expire on pay-as-you-go packs.