LinkedIn company scraper API
A LinkedIn company scraper API: employee count, follower count, industry, website, description, logo and the structured headquarters address — street, city, region, postal code and country — from company slugs or /company/ URLs.
$0.005 per delivered company · $2 free every month · Failed runs never billed
$ curl $QD/linkedin_company/run \
-H "Authorization: Bearer $QD_API_KEY" \
-d '{"companies": ["microsoft", "openai"], "max_results": 10}'
{ "status": "done", "count": 10,
"results": [
{
"slug": "…",
"name": "…",
"description": "…",
"website": "…" } ],
"cost": 0.05 }
# 10 companys × $0.005 · nothing delivered, nothing charged
What a LinkedIn company scraper API does
The company page is the richest thing LinkedIn publishes to logged-out visitors, and it is the half that matters for B2B: how big a firm is, what industry LinkedIn files it under, where its head office is, which domain it points to.
That last field is the join key. Take the website off this row and hand it to the company profile or site contacts collector, and you have gone from a LinkedIn URL to a qualified, contactable record without touching a login.
What one company looks like
Every delivered company carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.
| Field | Type | What it holds |
|---|---|---|
slug | string | Company slug. |
name | string | Company name. |
description | string · nullable | About text (trimmed). |
website | string · nullable | Company website. |
industry | string · nullable | Industry as shown. |
employees | integer · nullable | Employee count published on the page. |
followers | integer · nullable | LinkedIn follower count. |
street | string · nullable | HQ street. |
city | string · nullable | HQ city. |
region | string · nullable | HQ region/state. |
postal_code | string · nullable | HQ postal code. |
country | string · nullable | HQ country. |
logo | string · nullable | Logo URL. |
url | string | Company page URL. |
Inputs
The whole request. Anything you leave out falls back to the default shown in the catalog.
| Input | Type | Required | What it does |
|---|---|---|---|
companies | array | yes | Company slugs (microsoft) or /company/ URLs, one per line. |
country | string | no | ISO 3166-1 alpha-2 code — proxy exit geo and Google locale (gl). Omit for the default pool. |
max_results | integer | no | How many companies to deliver at most (1–50). You pay only for delivered companies. |
Pricing
LinkedIn company scraper API pricing
$0.005 per delivered company. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 400 companys before you spend anything.
Pay as you go
- $2 free credit / month
- 60 requests / min
- List unit prices
Starter
- $15 free credit / month
- 300 requests / min
- 10% off unit prices
Growth
- $50 free credit / month
- 600 requests / min
- 20% off unit prices
Scale
- $250 free credit / month
- 1,200 requests / min
- 30% off unit prices
Same wallet, same key and same $2 monthly allowance as every other Data API. Prices are launch pricing read live from the billing config — GET /v1/scraper/collectors returns the price your key actually pays.
Integration
One POST, typed rows
Base URL https://api.quanticdata.io/v1, Bearer auth, the same key as every other Data API. Endpoint: POST /v1/.
curl -X POST https://api.quanticdata.io/v1/scraper/collectors/linkedin_company/run \
-H "Authorization: Bearer $QD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"companies":["microsoft","openai"],"max_results":10}'
What people build with the LinkedIn company scraper API
Three shapes of work this endpoint was designed around.
Account scoring
Size an account list by employee count and industry before routing it to sales.
CRM enrichment
Fill missing HQ, industry and domain fields from a LinkedIn URL.
Market mapping
Build a sector map with company size and location per row.
LinkedIn company scraper API versus rolling your own
The differences that actually cost time when you build this in-house.
| DIY scraper | This collector | |
|---|---|---|
| Employee count | Estimated by a data vendor | What the company publishes on LinkedIn |
| Address | One free-text line | Street, city, region, postal code, country |
Firmographics without a subscription
LinkedIn's Marketing Developer Platform returns organisation data for pages your authenticated user administers — built so a social tool can post on behalf of a page it was granted access to, not so anyone can look up companies. No approval tier turns it into a lookup service.
The commercial alternative is a B2B firmographics provider with verified headcount, revenue estimates and hierarchy, on an annual contract measured in thousands, with coverage best for larger companies in major markets. For the plain question — how big, what industry, where, what website — reading the public page at half a cent is proportionate, and company data sits largely outside personal-data law in a way profile data does not.
Limits, accuracy and the legal bit
Up to 50 companies per run. The headquarters address arrives pre-split into street, city, region, postal code and country, so territory logic is a query rather than a parsing exercise. Employee lists are not collected — this is the company page, not the people on it. Throughput is your plan's rate limit rather than anything about the collector: 60 requests/minute on pay-as-you-go, up to 1,200 on the top tier.
Read employees as a proxy rather than a headcount: it counts members who list the company as employer, so it undercounts in low-adoption industries and overcounts where leavers have not updated their profiles. It is nonetheless the most widely available company-size signal there is.
Collecting publicly visible data is generally lawful in most jurisdictions, and courts have repeatedly declined to treat reading a public page as unauthorised access. Company data is organisational rather than personal for the most part, though a one-person company's page effectively describes an individual. LinkedIn's terms restrict automated collection. None of this is legal advice — get some for your actual use case.
Where does the employee count come from?
From the company's own LinkedIn page. It is the number LinkedIn shows, not a vendor estimate — and it counts LinkedIn members who list the company, which is usually close to but not identical to headcount.
Can I go from company to contacts?
Yes: take the website field and run site_contacts or company_profile on it.
Is there a free LinkedIn company scraper API?
Every account gets $2 of credit every month with no card, which is about 400 delivered companys on this endpoint at $0.005 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.
How much does one run cost?
Multiply the rows you actually receive by $0.005. A run capped at 50 companys — the maximum for this collector — costs $0.25 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and GET /v1/scraper/collectors returns the price your key actually pays.
How do I turn a company page into contact details?
Chain it: the website field feeds the company profile and site contacts collectors, which read what the company publishes on its own site. LinkedIn does not publish company email addresses.
Is the employee count a real headcount?
No — it is the number of LinkedIn members who list the company as their employer. Treat it as a size band rather than a figure. Its value is consistency across companies, which is what makes it usable for segmentation.
Run the LinkedIn company scraper API now
$2 of free credit every month, no card. Your key returns its own prices from GET /v1/scraper/collectors.