LinkedIn Company Associated Members Scraper avatar

LinkedIn Company Associated Members Scraper

Pricing

from $3.99 / 1,000 results

Go to Apify Store
LinkedIn Company Associated Members Scraper

LinkedIn Company Associated Members Scraper

LinkedIn Company Associated Members Scraper extracts associated LinkedIn members, including names, job titles, companies, locations, profile URLs, and professional details. Automate employee research, lead generation, recruitment, company analysis, and B2B prospecting.

Pricing

from $3.99 / 1,000 results

Rating

0.0

(0)

Developer

ScraperForge

ScraperForge

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

12 days ago

Last modified

Share

LinkedIn Company Associated Members Scraper — People Facets, Affiliated Pages & Employee Profiles

Paste a LinkedIn company URL and get the aggregated intelligence behind its People tab: where employees are located, which companies they came from, which schools they attended, what functions and skills they cluster around — plus the company's affiliated and showcase pages and, optionally, a list of associated member profiles with names, headlines, locations and profile URLs.

Works with /company/, /showcase/ and /school/ slugs, in bulk.


What is LinkedIn Company Associated Members Scraper?

LinkedIn's company People tab shows facet breakdowns — locations, schools, functions, current companies — that are impossible to copy by hand and disappear the moment you navigate away. There is no supported way to export them.

This Actor reads those facets programmatically and returns each as a structured array. It also expands a company into its affiliated, showcase and subsidiary pages (Google → Google Cloud, Google Maps Platform, YouTube), and can optionally collect associated member profiles.

The result is a single row per company containing an organisational profile you would otherwise have to assemble by clicking through dozens of filter combinations.


What data can you extract?

Aggregated people facets

FacetWhat it tells you
Current companyWhere the company's people work now (including subsidiaries)
LocationsGeographic distribution of the workforce
ConnectionsNetwork-distance breakdown (1st / 2nd / 3rd+)
SchoolWhich universities feed this employer
Current FunctionEngineering, sales, marketing, operations…
Skill ExplicitSkills employees explicitly list
Service categoriesService categories associated with the people
Field of StudyAcademic backgrounds

Company structure

affiliated_pages[]{ company, url, category } for every showcase and subsidiary page.

Associated member profiles (optional)

profile_fullname, profile_headline, profile_location, profile_linkedin, profile_id, profile_fsd_profile, profile_network_distance, profile_input_url, profile_tracking_id, profile_search_url, profile_shared_connections_url, profile_mutuals_co.

Row metadata

company_name, url, people_url, and error when a company could not be resolved.


Why teams scrape LinkedIn company people data

For sales and account research

Before pitching an enterprise account, you want to know how big it really is in your region, which functions dominate, and whether the buyer persona you are targeting actually exists there. The facets answer all three in one row.

For recruitment and talent mapping

School and Current company show exactly where an employer sources talent. If you are hiring against them, that is your competitive map; if you are recruiting from them, it is your pipeline.

For corporate structure mapping

Large groups sprawl across showcase pages that are easy to miss. affiliated_pages enumerates them automatically, which matters for account planning, M&A research and competitive coverage.

For market entry research

Locations tells you whether a company has real presence in a country or just a registered address — a distinction that changes go-to-market decisions.

For alumni and university research

Point the Actor at a /school/ URL and the Current company facet becomes a list of where that institution's graduates work now.

For lead generation

With member profiles enabled you get a shortlist of employees with names, headlines and direct profile links, attributed to the company that produced them.


How to scrape company members step by step

  1. Copy a LinkedIn company URL — e.g. https://www.linkedin.com/company/google.
  2. Paste it into Company URLs, one per line for several companies.
  3. (Recommended) Paste your li_at cookie for full rate limits.
  4. Leave Include affiliated pages on. To collect people, enable Include associated member profiles and set Max profiles per company above 0.
  5. Click Start, then export the Output tab as JSON (recommended — facets are nested arrays).

⬇️ Input

Example input

{
"urls": ["https://www.linkedin.com/company/google"],
"liAt": "<YOUR_LI_AT_COOKIE>",
"getAffiliatedPages": true,
"getAssociatedMembersProfiles": true,
"maxProfiles": 50
}

Input reference

FieldTypeDefaultDescription
urlsarray— (required)LinkedIn company URLs, one per line. /company/<slug>, /showcase/<slug> and /school/<slug> all work.
liAtstringYour LinkedIn li_at session cookie. Recommended. Leave blank and the Actor falls back to a built-in demo session with lower rate limits that may be challenged — enough for sample output, not for bulk work.
getAffiliatedPagesbooleantrueFetch affiliated / showcase / subsidiary pages.
getAssociatedMembersProfilesbooleanfalseFetch public profiles affiliated with the company.
maxProfilesinteger0Profiles per company. Higher values take longer and increase rate-limit risk.
proxyConfigurationobjectApify ResidentialResidential is strongly recommended — LinkedIn auth-walls datacenter IPs. The Actor hunts for a clean IP automatically.

⚠️ Treat li_at like a password. It grants access to your LinkedIn account. Use a dedicated secondary account, and be aware that LinkedIn may restrict accounts used for automation.

To get profiles you need both settings: getAssociatedMembersProfiles: true and maxProfiles above 0. With maxProfiles: 0 no profiles are fetched regardless of the toggle.


⬆️ Output

Example output (trimmed)

{
"company_name": "Google",
"url": "https://www.linkedin.com/company/google",
"people_url": "https://www.linkedin.com/company/google/people/",
"Locations": [
{ "name": "San Francisco Bay Area", "count": 41230 },
{ "name": "New York City Metropolitan Area", "count": 12874 }
],
"School": [
{ "name": "Stanford University", "count": 5312 },
{ "name": "University of California, Berkeley", "count": 4880 }
],
"Current Function": [
{ "name": "Engineering", "count": 68210 },
{ "name": "Sales", "count": 19004 }
],
"affiliated_pages": [
{ "company": "Google Cloud", "url": "https://www.linkedin.com/showcase/googlecloud", "category": "Software Development" },
{ "company": "YouTube", "url": "https://www.linkedin.com/company/youtube", "category": "Technology, Information and Internet" }
],
"profiles": [
{
"profile_fullname": "Alex Example",
"profile_headline": "Staff Software Engineer at Google",
"profile_location": "Zurich, Switzerland",
"profile_linkedin": "https://www.linkedin.com/in/alex-example",
"profile_network_distance": "2nd"
}
]
}

Illustrative values — a live run returns current LinkedIn data.

Every input URL produces exactly one row. If a company cannot be resolved, the row still appears with the URL and an error message, so your export always accounts for every input.


Usage recipes

Map a corporate group's structure

{
"urls": [
"https://www.linkedin.com/company/google",
"https://www.linkedin.com/company/microsoft",
"https://www.linkedin.com/company/amazon"
],
"liAt": "<YOUR_LI_AT_COOKIE>",
"getAffiliatedPages": true,
"getAssociatedMembersProfiles": false
}

Fast and cheap — one row per parent company with all its showcase pages enumerated.

Talent mapping with employee profiles

{
"urls": ["https://www.linkedin.com/company/stripe"],
"liAt": "<YOUR_LI_AT_COOKIE>",
"getAssociatedMembersProfiles": true,
"maxProfiles": 100
}

Where do a university's graduates work?

{
"urls": ["https://www.linkedin.com/school/stanford-university/"],
"liAt": "<YOUR_LI_AT_COOKIE>",
"getAffiliatedPages": false
}

Read the Current company facet.

Compare competitors side by side

Put several company URLs in one run. Each becomes a row, so a single export lets you compare workforce geography, function mix and school pipelines across the whole competitive set.

Check regional presence before market entry

Run your target accounts and read Locations. A company with 4,000 people but 12 in your region is a very different sales conversation.


How does this compare to LinkedIn's official API?

LinkedIn's Marketing and Talent APIs are partner-gated: access requires an approved application, a commercial agreement, and in most cases you can only read data about organisations you administer. There is no public endpoint that returns another company's people facets or member lists.

This Actor reads what LinkedIn shows a logged-in member in the browser — no elevated access, no bypass. That is why a li_at cookie matters and why rate limits are real. If you qualify for LinkedIn's partner programmes, they offer stronger guarantees; for research on companies you do not administer, this is the practical route.


Integrate and automate

Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_API_TOKEN>")
run = client.actor("scraperforge/linkedin-company-associated-members-scraper").call(run_input={
"urls": ["https://www.linkedin.com/company/google"],
"liAt": "<YOUR_LI_AT_COOKIE>",
"getAffiliatedPages": True,
})
for company in client.dataset(run["defaultDatasetId"]).iterate_items():
top_location = (company.get("Locations") or [{}])[0].get("name")
print(company["company_name"], "| top location:", top_location,
"| affiliated pages:", len(company.get("affiliated_pages", [])))

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_API_TOKEN>' });
const run = await client.actor('scraperforge/linkedin-company-associated-members-scraper').call({
urls: ['https://www.linkedin.com/company/google'],
liAt: '<YOUR_LI_AT_COOKIE>',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

REST API

curl -X POST "https://api.apify.com/v2/acts/scraperforge~linkedin-company-associated-members-scraper/runs?token=<YOUR_APIFY_API_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"urls":["https://www.linkedin.com/company/google"],"getAffiliatedPages":true}'

n8n, Make, Zapier and AI agents

Call the Actor from n8n, Make, Zapier or an MCP-capable agent to enrich accounts as they enter your CRM.

Schedules and webhooks

Attach a Schedule to refresh account intelligence monthly, and use webhooks or the Google Sheets / Airtable / Slack integrations to route results into your sales stack.


Pricing and what you are charged for

Pay-per-event: a small Actor-start charge plus a charge per company row delivered. Because facets, affiliated pages and profiles all travel inside the company row, enabling more of them does not increase the billed row count — urls is the cost lever.

Current rates are on the Pricing tab of this Actor's page, and Apify shows an estimate before and during every run.

Note that Apify Residential proxy traffic is billed separately by the platform, and residential is effectively required for LinkedIn.


Limits, reliability and blocking

  • Residential proxy is required in practice. LinkedIn auth-walls datacenter IPs, including Apify's no-proxy egress. The Actor defaults to residential and rotates through up to 12 clean IPs on a block or authwall redirect rather than failing outright.
  • A li_at cookie makes a large difference. The built-in demo fallback exists so the Actor produces sample output without credentials, not so you can run bulk jobs on it.
  • Facet counts are LinkedIn's own aggregates and are rounded at scale — treat them as proportions, not exact headcounts.
  • maxProfiles drives both run time and rate-limit risk. Start at 25–50 per company.
  • LinkedIn moves fields between its modern and legacy endpoints. The Actor falls back automatically, but a specific facet can occasionally come back empty for one company.
  • Rows with error mean that company could not be resolved — the URL is preserved for a retry.
  • Default run options are 4 GB memory and a 1-hour timeout.

This Actor reads data LinkedIn displays to a logged-in member — it does not break encryption, bypass paywalls, or access private messages or connections.

Member names, headlines and locations are personal data under GDPR, the UK GDPR, CCPA/CPRA and comparable laws. If you process them: have a lawful basis (legitimate interest requires a documented assessment), store only what you need, honour deletion and objection requests, and comply with marketing rules before any outreach. LinkedIn's User Agreement restricts automated access, and LinkedIn may restrict accounts used this way — if you supply a cookie, that risk is yours.


❓ Frequently asked questions

Do I need a LinkedIn account?

Not to try it — the built-in demo session produces sample output. For reliable, higher-volume runs, supply your own li_at cookie.

Log into linkedin.com, open devtools → Application → Cookies → https://www.linkedin.com, and copy the li_at value.

Can I use school and showcase URLs?

Yes — /company/, /showcase/ and /school/ slugs are all supported, and school URLs are genuinely useful for alumni research.

Why are there no profiles in my output?

You need both getAssociatedMembersProfiles: true and maxProfiles above 0.

Does it return e-mail addresses?

No. LinkedIn does not publish member e-mail addresses, and this Actor does not guess or generate them.

Are the facet counts exact?

They are LinkedIn's own aggregates, which are approximate and rounded at large scale. Use them comparatively rather than as precise headcounts.

How many companies can I process in one run?

As many URLs as you like — each becomes a row. Pace maxProfiles if you enable profile collection.

Which export format should I use?

JSON. Facets, affiliated pages and profiles are nested arrays; CSV flattens them awkwardly.

What happens if LinkedIn blocks the run?

The Actor rotates to a fresh residential IP and retries, up to 12 rotations. Persistent blocking usually means the cookie is stale or the volume is too high.


Browse the full collection on the ScraperForge profile.


💬 Feedback

Need extra facets, deeper profile data, or a custom LinkedIn research pipeline? Open an issue on the Issues tab of this Actor.