Nimbryxo Studio

LinkedIn People Finder by Role, Seniority & Network

Search LinkedIn people with structured filters for company, school, seniority, job function, years of experience, industry, and connection degree, using your own LinkedIn session.

Input schema

Input fields, types, required flags, descriptions, defaults, and prefills come from the published definition. Prefill examples are distinct from defaults.

FieldTypeRequiredDescription
searchQuerystringrequiredSearch keywords for finding people on LinkedIn. Examples: 'software engineer', 'John Smith', 'product manager Google'
keywordsstringoptionalOptional companion to Search Query. When both are set, they are combined with a space. Use this to keep a primary role in Search Query and add modifiers (industry buzzwords, tools) here.
cookiestringrequiredYour LinkedIn session cookie. Accepts either: (1) the li_at value from browser DevTools → Application → Cookies, or (2) full cookies JSON array exported from an extension like EditThisCookie.
Show all input fields
FieldTypeRequiredDescription
searchQuerystringrequiredSearch keywords for finding people on LinkedIn. Examples: 'software engineer', 'John Smith', 'product manager Google'
keywordsstringoptionalOptional companion to Search Query. When both are set, they are combined with a space. Use this to keep a primary role in Search Query and add modifiers (industry buzzwords, tools) here.
cookiestringrequiredYour LinkedIn session cookie. Accepts either: (1) the li_at value from browser DevTools → Application → Cookies, or (2) full cookies JSON array exported from an extension like EditThisCookie.
locationstringoptionalFilter results by location (city, state, or country). Example: 'San Francisco Bay Area', 'New York', 'United Kingdom'
currentCompanystringoptionalFilter by current company. Accepts a company name (e.g. 'Google') or a LinkedIn fsd_company URN/numeric ID. URN format produces the strict structured currentCompany filter; plain names are added to keywords.
pastCompanystringoptionalFilter by past company. Accepts a company name or a LinkedIn fsd_company URN/numeric ID.
schoolstringoptionalFilter by school or university attended. Accepts a school name or a LinkedIn fsd_school URN/numeric ID. Example: 'Stanford University', 'MIT', or '12345'.
firstNameKeywordstringoptionalFilter by first name token. Adds a strict firstName filter to the search.
lastNameKeywordstringoptionalFilter by last name token. Adds a strict lastName filter to the search.
titleKeywordstringoptionalFilter by current job title keyword (e.g. 'Director of Engineering', 'CTO'). Different from Industry / Job Function — this is the free-text title.
serviceCategorystringoptionalFilter by LinkedIn Services Marketplace category (e.g. 'Web Development', 'Marketing Strategy').
companyHeadcountarrayoptionalFilter by employer company size. A=Self-employed, B=1-10, C=11-50, D=51-200, E=201-500, F=501-1,000, G=1,001-5,000, H=5,001-10,000, I=10,001+.
followerOfstringoptionalFilter to people who follow a specific company. Accepts an fsd_company URN or numeric company ID.
geoUrnstringoptionalPrecise location filter using a LinkedIn geo URN or numeric geo ID (e.g. '103644278' for the United States). Use this for strict geographic filtering instead of the free-text Location field.
connectionDegreestringoptionalFilter by connection degree to your account.
industrystringoptionalFilter results by industry. Applied to both Voyager filters and the HTML search URL.
seniorityLevelstringoptionalFilter results by seniority level.
yearsOfExperiencestringoptionalFilter results by years of total professional experience. 1=Less than 1 year, 2=1-2 years, 3=3-5 years, 4=6-10 years, 5=11-15 years, 6=16+ years.
jobFunctionstringoptionalFilter results by job function / department.
openToarrayoptionalFilter people by what they are open to. Select one or more options. HIRING = open to hiring, GETTING_HIRED = open to new jobs, PROVIDING_SERVICES = open to providing freelance/consulting services, JOINING_A_NONPROFIT = open to joining a nonprofit.
profileLanguagesarrayoptionalFilter by the language(s) the person's LinkedIn profile is written in. Use ISO 639-1 codes, e.g. ["en", "es", "fr", "de", "zh", "ar", "pt"].
contactOfstringoptionalFilter to show people who are connections of the specified LinkedIn member. Provide the member's URN (e.g. 'urn:li:member:123456') or numeric profile ID.
talksAboutstringoptionalFilter to people who talk about the specified keyword or topic in their profile. This is appended to the search keywords.
maxResultsintegeroptionalMaximum number of profiles to return.
proxyConfigurationobjectoptionalOptional Apify proxy configuration.

Download the published input schema

View complete JSON
{
  "properties": {
    "companyHeadcount": {
      "description": "Filter by employer company size. A=Self-employed, B=1-10, C=11-50, D=51-200, E=201-500, F=501-1,000, G=1,001-5,000, H=5,001-10,000, I=10,001+.",
      "editor": "select",
      "items": {
        "enum": [
          "A",
          "B",
          "C",
          "D",
          "E",
          "F",
          "G",
          "H",
          "I"
        ],
        "enumTitles": [
          "Self-employed",
          "1-10 employees",
          "11-50 employees",
          "51-200 employees",
          "201-500 employees",
          "501-1,000 employees",
          "1,001-5,000 employees",
          "5,001-10,000 employees",
          "10,001+ employees"
        ],
        "type": "string"
      },
      "title": "Company Headcount",
      "type": "array"
    },
    "connectionDegree": {
      "default": "",
      "description": "Filter by connection degree to your account.",
      "editor": "select",
      "enum": [
        "",
        "F",
        "S",
        "O"
      ],
      "enumTitles": [
        "Any",
        "1st degree",
        "2nd degree",
        "3rd+ degree"
      ],
      "title": "Connection Degree",
      "type": "string"
    },
    "contactOf": {
      "description": "Filter to show people who are connections of the specified LinkedIn member. Provide the member's URN (e.g. 'urn:li:member:123456') or numeric profile ID.",
      "editor": "textfield",
      "title": "Contact Of (Member URN or Profile ID)",
      "type": "string"
    },
    "cookie": {
      "description": "Your LinkedIn session cookie. Accepts either: (1) the li_at value from browser DevTools → Application → Cookies, or (2) full cookies JSON array exported from an extension like EditThisCookie.",
      "editor": "textarea",
      "isSecret": true,
      "title": "LinkedIn Cookie",
      "type": "string"
    },
    "currentCompany": {
      "description": "Filter by current company. Accepts a company name (e.g. 'Google') or a LinkedIn fsd_company URN/numeric ID. URN format produces the strict structured currentCompany filter; plain names are added to keywords.",
      "editor": "textfield",
      "title": "Current Company Filter",
      "type": "string"
    },
    "firstNameKeyword": {
      "description": "Filter by first name token. Adds a strict firstName filter to the search.",
      "editor": "textfield",
      "title": "First Name",
      "type": "string"
    },
    "followerOf": {
      "description": "Filter to people who follow a specific company. Accepts an fsd_company URN or numeric company ID.",
      "editor": "textfield",
      "title": "Followers of Company",
      "type": "string"
    },
    "geoUrn": {
      "description": "Precise location filter using a LinkedIn geo URN or numeric geo ID (e.g. '103644278' for the United States). Use this for strict geographic filtering instead of the free-text Location field.",
      "editor": "textfield",
      "title": "Location URN",
      "type": "string"
    },
    "industry": {
      "default": "",
      "description": "Filter results by industry. Applied to both Voyager filters and the HTML search URL.",
      "editor": "select",
      "enum": [
        "",
        "Software Development",
        "Financial Services",
        "Healthcare",
        "Education",
        "Marketing and Advertising",
        "Consulting",
        "Hospitality",
        "Real Estate",
        "Manufacturing",
        "Retail",
        "Media",
        "Government Administration",
        "Non-profit Organization Management"
      ],
      "enumTitles": [
        "Any",
        "Software Development",
        "Financial Services",
        "Healthcare",
        "Education",
        "Marketing and Advertising",
        "Consulting",
        "Hospitality",
        "Real Estate",
        "Manufacturing",
        "Retail",
        "Media",
        "Government Administration",
        "Non-profit Organization Management"
      ],
      "title": "Industry",
      "type": "string"
    },
    "jobFunction": {
      "default": "",
      "description": "Filter results by job function / department.",
      "editor": "select",
      "enum": [
        "",
        "ARTS_AND_DESIGN",
        "BUSINESS_DEVELOPMENT",
        "COMMUNITY_AND_SOCIAL_SERVICES",
        "CONSULTING",
        "EDUCATION",
        "ENGINEERING",
        "ENTREPRENEURSHIP",
        "FINANCE",
        "HEALTHCARE_SERVICES",
        "HUMAN_RESOURCES",
        "INFORMATION_TECHNOLOGY",
        "LEGAL",
        "MANAGEMENT",
        "MARKETING",
        "MEDIA_AND_COMMUNICATION",
        "MILITARY_AND_PROTECTIVE_SERVICES",
        "OPERATIONS",
        "PRODUCT_MANAGEMENT",
        "PROGRAM_AND_PROJECT_MANAGEMENT",
        "PURCHASING",
        "QUALITY_ASSURANCE",
        "REAL_ESTATE",
        "RESEARCH",
        "SALES",
        "SUPPORT"
      ],
      "enumTitles": [
        "Any",
        "Arts and Design",
        "Business Development",
        "Community and Social Services",
        "Consulting",
        "Education",
        "Engineering",
        "Entrepreneurship",
        "Finance",
        "Healthcare Services",
        "Human Resources",
        "Information Technology",
        "Legal",
        "Management",
        "Marketing",
        "Media and Communication",
        "Military and Protective Services",
        "Operations",
        "Product Management",
        "Program and Project Management",
        "Purchasing",
        "Quality Assurance",
        "Real Estate",
        "Research",
        "Sales",
        "Support"
      ],
      "title": "Job Function",
      "type": "string"
    },
    "keywords": {
      "description": "Optional companion to Search Query. When both are set, they are combined with a space. Use this to keep a primary role in Search Query and add modifiers (industry buzzwords, tools) here.",
      "editor": "textfield",
      "title": "Extra Keywords",
      "type": "string"
    },
    "lastNameKeyword": {
      "description": "Filter by last name token. Adds a strict lastName filter to the search.",
      "editor": "textfield",
      "title": "Last Name",
      "type": "string"
    },
    "location": {
      "description": "Filter results by location (city, state, or country). Example: 'San Francisco Bay Area', 'New York', 'United Kingdom'",
      "editor": "textfield",
      "title": "Location Filter",
      "type": "string"
    },
    "maxResults": {
      "default": 25,
      "description": "Maximum number of profiles to return.",
      "editor": "number",
      "maximum": 100,
      "minimum": 1,
      "prefill": 25,
      "title": "Max Results",
      "type": "integer"
    },
    "openTo": {
      "description": "Filter people by what they are open to. Select one or more options. HIRING = open to hiring, GETTING_HIRED = open to new jobs, PROVIDING_SERVICES = open to providing freelance/consulting services, JOINING_A_NONPROFIT = open to joining a nonprofit.",
      "editor": "select",
      "items": {
        "enum": [
          "HIRING",
          "GETTING_HIRED",
          "PROVIDING_SERVICES",
          "JOINING_A_NONPROFIT"
        ],
        "enumTitles": [
          "Open to Hiring",
          "Open to New Jobs",
          "Open to Providing Services",
          "Open to Joining a Nonprofit"
        ],
        "type": "string"
      },
      "title": "Open To",
      "type": "array"
    },
    "pastCompany": {
      "description": "Filter by past company. Accepts a company name or a LinkedIn fsd_company URN/numeric ID.",
      "editor": "textfield",
      "title": "Past Company Filter",
      "type": "string"
    },
    "profileLanguages": {
      "description": "Filter by the language(s) the person's LinkedIn profile is written in. Use ISO 639-1 codes, e.g. [\"en\", \"es\", \"fr\", \"de\", \"zh\", \"ar\", \"pt\"].",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "title": "Profile Languages",
      "type": "array"
    },
    "proxyConfiguration": {
      "description": "Optional Apify proxy configuration.",
      "editor": "proxy",
      "title": "Proxy Configuration",
      "type": "object"
    },
    "school": {
      "description": "Filter by school or university attended. Accepts a school name or a LinkedIn fsd_school URN/numeric ID. Example: 'Stanford University', 'MIT', or '12345'.",
      "editor": "textfield",
      "title": "School Filter",
      "type": "string"
    },
    "searchQuery": {
      "description": "Search keywords for finding people on LinkedIn. Examples: 'software engineer', 'John Smith', 'product manager Google'",
      "editor": "textfield",
      "prefill": "software engineer",
      "title": "Search Query",
      "type": "string"
    },
    "seniorityLevel": {
      "default": "",
      "description": "Filter results by seniority level.",
      "editor": "select",
      "enum": [
        "",
        "Entry level",
        "Associate",
        "Mid-Senior level",
        "Director",
        "Executive"
      ],
      "enumTitles": [
        "Any",
        "Entry level",
        "Associate",
        "Mid-Senior level",
        "Director",
        "Executive"
      ],
      "title": "Seniority Level",
      "type": "string"
    },
    "serviceCategory": {
      "description": "Filter by LinkedIn Services Marketplace category (e.g. 'Web Development', 'Marketing Strategy').",
      "editor": "textfield",
      "title": "Service Category",
      "type": "string"
    },
    "talksAbout": {
      "description": "Filter to people who talk about the specified keyword or topic in their profile. This is appended to the search keywords.",
      "editor": "textfield",
      "title": "Talks About (Keyword / Topic)",
      "type": "string"
    },
    "titleKeyword": {
      "description": "Filter by current job title keyword (e.g. 'Director of Engineering', 'CTO'). Different from Industry / Job Function — this is the free-text title.",
      "editor": "textfield",
      "title": "Job Title",
      "type": "string"
    },
    "yearsOfExperience": {
      "default": "",
      "description": "Filter results by years of total professional experience. 1=Less than 1 year, 2=1-2 years, 3=3-5 years, 4=6-10 years, 5=11-15 years, 6=16+ years.",
      "editor": "select",
      "enum": [
        "",
        "1",
        "2",
        "3",
        "4",
        "5",
        "6"
      ],
      "enumTitles": [
        "Any",
        "Less than 1 year",
        "1-2 years",
        "3-5 years",
        "6-10 years",
        "11-15 years",
        "16+ years"
      ],
      "title": "Years of Experience",
      "type": "string"
    }
  },
  "required": [
    "searchQuery",
    "cookie"
  ],
  "schemaVersion": 1,
  "title": "LinkedIn People Search Scraper Input",
  "type": "object"
}

Output schema

Published result links and storage locations. This schema is not an exhaustive contract for every field in a dataset record.

FieldTypeRequiredDescription
profilesstringoptionalDataset containing all scraped LinkedIn profiles from the search.

Download the published output schema

View complete JSON
{
  "actorOutputSchemaVersion": 1,
  "description": "LinkedIn profiles matching a structured people search, with name, headline, current company, seniority-related badges, and profile URL.",
  "properties": {
    "profiles": {
      "description": "Dataset containing all scraped LinkedIn profiles from the search.",
      "template": "{{links.apiDefaultDatasetUrl}}/items",
      "title": "LinkedIn Profiles",
      "type": "string"
    }
  },
  "title": "LinkedIn People Finder by Role, Seniority & Network Output"
}

Dataset schema

Published dataset views and any declared field definitions. A view can select only a subset of the returned record fields.

Download the published dataset schema

View complete JSON
{
  "actorSpecification": 1,
  "views": {
    "overview": {
      "display": {
        "component": "table",
        "properties": {
          "connectionDegree": {
            "format": "text",
            "label": "Connection"
          },
          "headline": {
            "format": "text",
            "label": "Headline"
          },
          "location": {
            "format": "text",
            "label": "Location"
          },
          "name": {
            "format": "text",
            "label": "Name"
          },
          "profileUrl": {
            "format": "link",
            "label": "Profile URL"
          },
          "scrapedAt": {
            "format": "text",
            "label": "Scraped At"
          }
        }
      },
      "title": "Overview",
      "transformation": {
        "fields": [
          "name",
          "headline",
          "location",
          "connectionDegree",
          "profileUrl",
          "scrapedAt"
        ]
      }
    }
  }
}

Key-value schema

Published key-value store definitions, when provided by this build.

This definition is not present in the default published build. See the published README for available documentation.

Published README

Read the full published documentation

LinkedIn People Finder by Role, Seniority & Network

Search LinkedIn people search with your own session — well beyond a plain keyword box. Combine free-text search with structured filters for company, school, seniority, job function, years of experience, company size, industry, and more, and get back one row per matching profile.

What this actor does

  • Runs a LinkedIn people search using your own session cookie, combining a free-text query with any number of structured filters
  • Passes structured filters to LinkedIn: company, school and location IDs, industry, job function, seniority level, years of experience, employer headcount, connection degree, profile language and "open to" status
  • Adds free-text values (a location name, company or school names, a topic, first/last name and job title) to the search keywords, so they narrow results the way typing them into LinkedIn's search box would
  • Can narrow to people who follow a given company or are connections of a specific member, using their numeric IDs or URNs
  • Flags when a result card shows an "Open to Work" or Premium marker or a verified indicator
  • Fields LinkedIn doesn't expose for a given profile (for example a profile picture or mutual-connections count) are left off that record

Output per profile

  • name — the person's full name
  • profileUrl — their canonical LinkedIn profile URL
  • headline — their LinkedIn headline, as written
  • location — the location shown on their profile
  • connectionDegree — their connection degree to your account (1st, 2nd, 3rd+), when LinkedIn shows one
  • currentCompany — their current employer as {name}, plus slug and url when LinkedIn supplies a structured company link; usually derived from a headline such as "Engineer at Acme"
  • currentTitle — their current job title, usually the part of the headline before "at …"
  • industryName — the industry LinkedIn associates with the profile, when available
  • educationCount — how many education entries appear on their profile, when greater than zero
  • openToWork — true when the result shows an "Open to Work" marker (omitted otherwise)
  • premium, premiumStatus — true when the result shows a Premium marker (omitted otherwise)
  • verifiedStatus — true when the result card carries a verified indicator (omitted otherwise)
  • profilePicture, profileImageUrl — the profile photo URL, when visible to your account
  • mutualConnections — the mutual-connections text LinkedIn shows for that profile, when available
  • scrapedAt — when the actor fetched the record

industryName and educationCount only come through on some result layouts, so many rows won't have them.

If the cookie input is empty, or LinkedIn reports the session as expired or invalid, the run doesn't fail. Instead the dataset gets a single notice row with _status: "no_data", _reason (cookie-missing or cookie-invalid), _message, _help (how to export a fresh cookie) and scrapedAt, and no profiles. A cookie value that can't be parsed at all fails the run.

Input

Field Type Default Description
searchQuery string – Free-text search keywords. Required.
keywords string – Extra keywords combined with searchQuery with a space; handy for adding modifiers without editing your main query.
cookie string – Your LinkedIn session cookie — either the li_at value or a full cookie JSON export. Required.
location string – Free-text location, e.g. San Francisco Bay Area; added to the search keywords. Use geoUrn for a strict location filter.
geoUrn string – A LinkedIn geo URN or numeric geo ID (e.g. 103644278 for the United States) for a strict location filter.
currentCompany string – Current employer, by name or LinkedIn company URN/ID. A URN applies a strict structured filter; a plain name is added to the search keywords.
pastCompany string – Past employer, by name or LinkedIn company URN/ID. Works like currentCompany: an ID applies the filter, a name is added to the keywords.
school string – School or university attended. A school URN/ID applies the school filter; a name is added to the keywords.
firstNameKeyword string – First name; sent as a first-name filter and added to the keywords.
lastNameKeyword string – Last name; sent as a last-name filter and added to the keywords.
titleKeyword string – Job title text, e.g. Director of Engineering; sent as a title filter and added to the keywords.
serviceCategory string – LinkedIn Services Marketplace category, e.g. Web Development; sent as a filter and added to the keywords.
companyHeadcount array – Employer size bucket(s), from self-employed up to 10,001+ employees.
followerOf string – Restrict to people who follow a given company. Needs a company URN or numeric ID; a plain name is ignored.
connectionDegree string "" (any) F (1st degree), S (2nd degree), or O (3rd+ degree).
industry string "" (any) One of 13 industries, e.g. Software Development, Healthcare.
seniorityLevel string "" (any) Entry level, Associate, Mid-Senior level, Director, or Executive.
yearsOfExperience string "" (any) Total professional experience bucket, from less than 1 year up to 16+ years.
jobFunction string "" (any) Department/function, e.g. ENGINEERING, SALES, MARKETING.
openTo array – What the person has flagged as open to: HIRING, GETTING_HIRED, PROVIDING_SERVICES, JOINING_A_NONPROFIT.
profileLanguages array – ISO 639-1 language code(s) the profile is written in, e.g. ["en", "es"].
contactOf string – Restrict to connections of a specific LinkedIn member (member URN or numeric profile ID).
talksAbout string – A keyword/topic to look for on the person's profile; appended to the search keywords.
maxResults integer 25 Maximum profiles to return (1–100).
proxyConfiguration object – Optional Apify proxy configuration.

Example: role + company + connection degree

{
  "searchQuery": "product manager",
  "cookie": "YOUR_LI_AT_COOKIE",
  "currentCompany": "Airbnb",
  "connectionDegree": "F",
  "maxResults": 25
}

Example: senior engineers by function, seniority, and company size

{
  "searchQuery": "engineering",
  "cookie": "YOUR_LI_AT_COOKIE",
  "jobFunction": "ENGINEERING",
  "seniorityLevel": "Director",
  "companyHeadcount": ["G", "H", "I"],
  "maxResults": 50
}

Example: people open to freelance work in a given industry

{
  "searchQuery": "brand designer",
  "cookie": "YOUR_LI_AT_COOKIE",
  "industry": "Marketing and Advertising",
  "openTo": ["PROVIDING_SERVICES"],
  "maxResults": 30
}

Use cases

  • Recruiting and sourcing — build a candidate shortlist filtered by seniority, function, and years of experience
  • Sales prospecting — find decision-makers at companies of a specific size and industry
  • Talent mapping — see how many people with a given title work at a target company or came from a specific school
  • Freelance/agency hiring — search for people who've flagged themselves as PROVIDING_SERVICES in a niche
  • Alumni and network outreach — find people from a specific school or who follow your company page

FAQ

Why does this actor need a LinkedIn cookie? People search is only available to logged-in LinkedIn users, so a valid session cookie (li_at or a full cookie export) is required. Without one, or with an expired one, the run returns only the cookie notice row described above.

Will my results match what I'd see searching manually? Closely, but not identically — LinkedIn personalizes search results based on your account's own network, location, and plan, so the same query can return different people from different accounts.

What's the difference between currentCompany as a name versus a URN? A company URN or numeric ID applies LinkedIn's strict structured company filter. A plain company name is instead folded into the free-text search keywords, which is usually accurate for well-known company names but less exact than a URN.

Why is connectionDegree sometimes missing from a result? LinkedIn only shows a connection-degree badge for profiles it places in your visible network graph; some results simply don't carry one.

Why don't all profiles have a profilePicture? Some LinkedIn users restrict their photo to connections only; the actor returns the picture URL only when the search response actually includes one.

Can I combine many filters at once? Yes — every filter is sent with the same search, and the more you combine, the narrower (and often smaller) the result set. LinkedIn decides how strictly each filter is honoured for your account, so spot-check results when you stack many of them.

How many profiles can I get per run? Up to maxResults, capped at 100 per run.

Is this affiliated with LinkedIn? No. This is an independent, third-party actor that uses your own LinkedIn session to run a people search; it is not affiliated with or endorsed by LinkedIn.

Python quickstart

Use a schema-derived input and the Python standard library to start a run. An Apify account and token are required for execution.

Open the step-by-step Python guide →

Source build CrEkFHlcagPwfg7e7. Documentation is regenerated from the default published build; private drafts are not included.