Linkedin Jobs Scraper B2B Hiring Intent Signals avatar

Linkedin Jobs Scraper B2B Hiring Intent Signals

Pricing

from $0.01 / 1,000 results

Go to Apify Store
Linkedin Jobs Scraper B2B Hiring Intent Signals

Linkedin Jobs Scraper B2B Hiring Intent Signals

Scrape LinkedIn job postings to identify hiring intent, company growth signals, and competitive intelligence. Job details Company insights Salary data Application metrics Workplace type Multi-filter Use Cases Sales intelligence Competitive research Market trends Talent mapping Lead generation

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

The Howlers

The Howlers

Maintained by Community

Actor stats

0

Bookmarked

16

Total users

8

Monthly active users

7 days ago

Last modified

Share

LinkedIn Jobs Scraper - Job Postings, Hiring Intent & Company Growth Signals

Scrape LinkedIn job postings at scale. Extract job title, company, location, salary, description, requirements, skills, and application metrics. Identify hiring intent signals for B2B sales prospecting. Two scraping modes: Firecrawl stealth (no cookies needed) and Playwright (cookies recommended).

What's New

  • Session Cookies Support — Provide your LinkedIn cookies via sessionCookies for dramatically more reliable results. LinkedIn heavily blocks unauthenticated scrapers.
  • Auth Wall Detection — Automatically detects /authwall redirects and "Sign in" prompts, logging clear warnings instead of silently returning empty results.
  • Improved Error Messages — When 0 results are found, the actor now tells you exactly why (auth wall, rate limit, no matching jobs) instead of failing silently.
  • Two Scraping Modes — Firecrawl stealth mode works without cookies for basic scraping. Playwright mode with session cookies delivers the most complete data.

Features

  • Job Detail Extraction - Title, company, location, full description, requirements
  • Salary Data - Salary ranges when posted by employer
  • Application Metrics - Applicant count, Easy Apply status, posting age
  • Company Insights - Industry, company size, growth indicators
  • Workplace Filters - Remote, on-site, hybrid classification
  • Multi-Query Search - Run multiple search queries in a single run
  • Experience Level Filters - Entry, mid-senior, director, executive
  • Date Filters - Past 24 hours, week, or month
  • Session Cookie Auth - Provide LinkedIn cookies for reliable, authenticated scraping
  • Auth Wall Detection - Detects login walls and provides actionable error messages
  • Anti-Detection - Fingerprint injection for stealth browsing
  • Demo Mode - Test with sample data before going live

Who Should Use This Actor?

B2B Sales Teams

Identify companies actively hiring for roles that signal buying intent. A company hiring 5 marketers likely needs marketing tools. A company hiring SDRs likely needs sales enablement.

Recruiters & Staffing Agencies

Monitor job postings across industries and locations. Build candidate pipelines by understanding what skills are in demand.

Competitive Intelligence Teams

Track competitor hiring patterns to understand their strategic direction. New AI/ML hires signal R&D investment. New sales hires signal expansion.

Market Researchers

Analyze hiring trends by industry, location, and role type. Understand labor market dynamics and skill demand.

Job Seekers & Career Coaches

Monitor opportunities across multiple companies and locations. Track salary ranges for compensation benchmarking.

LinkedIn increasingly blocks unauthenticated scrapers with auth walls. Providing session cookies dramatically improves success rates.

Why Use Cookies?

Without CookiesWith Cookies
Success RateLow — frequent auth wallsHigh — authenticated access
Data QualityOften blocked or incompleteFull job details, salary, applicants
Rate LimitsAggressive throttlingStandard LinkedIn limits
Error MessagesGeneric failuresClear, actionable errors

How to Get Your LinkedIn Cookies

  1. Install the Cookie-Editor browser extension (available for Chrome, Firefox, Edge)
  2. Go to linkedin.com and log in to your account
  3. Click the Cookie-Editor extension icon
  4. Click Export (bottom-left) to copy all cookies as JSON
  5. Paste the JSON array into the sessionCookies input field

Important notes:

  • Use a secondary LinkedIn account, not your primary one
  • Cookies expire periodically — re-export if you get auth wall errors
  • The actor does not store or share your cookies
{
"searchQueries": ["software engineer"],
"location": "San Francisco, CA",
"maxJobs": 50,
"sessionCookies": [
{ "name": "li_at", "value": "AQE...", "domain": ".linkedin.com" },
{ "name": "JSESSIONID", "value": "ajax:...", "domain": ".linkedin.com" }
],
"demoMode": false
}

Important: Rate Limiting Considerations

LinkedIn monitors for automated access. To minimize detection risk:

  1. Start slow - Begin with maxJobs: 25 and increase gradually
  2. Space your runs - Wait 15-30 minutes between runs
  3. Use focused queries - Specific job titles + locations work better than broad terms
  4. Keep batches reasonable - 50-100 jobs per run is optimal
  5. Avoid peak hours - Run during off-peak hours for best results
  6. Use session cookies - Authenticated requests are far less likely to hit auth walls

Quick Start

Demo Mode (Free Test)

{
"demoMode": true
}

Search by Job Title

{
"searchQueries": ["marketing manager", "software engineer"],
"location": "United States",
"maxJobs": 50,
"demoMode": false
}

Filter by Company and Remote

{
"searchQueries": ["product manager"],
"companyNames": ["Google", "Meta", "Amazon"],
"remote": "REMOTE",
"datePosted": "PAST_WEEK",
"maxJobs": 100,
"demoMode": false
}

Filter by Experience Level

{
"searchQueries": ["data scientist"],
"location": "New York, NY",
"experienceLevel": "MID_SENIOR",
"datePosted": "PAST_MONTH",
"maxJobs": 75,
"demoMode": false
}
{
"searchQueries": ["VP Marketing", "Head of Growth"],
"location": "San Francisco Bay Area",
"maxJobs": 100,
"sessionCookies": [
{ "name": "li_at", "value": "YOUR_LI_AT_VALUE", "domain": ".linkedin.com" },
{ "name": "JSESSIONID", "value": "YOUR_JSESSIONID_VALUE", "domain": ".linkedin.com" }
],
"demoMode": false
}

Input Parameters

ParameterTypeDefaultDescription
searchQueriesarray-Job titles or keywords to search
companyNamesarray-Specific companies to monitor
locationstring"United States"Location filter (city, state, or country)
remotestring"ALL"Workplace: ALL, REMOTE, ON_SITE, HYBRID
experienceLevelstring"ALL"Level: ALL, ENTRY_LEVEL, ASSOCIATE, MID_SENIOR, DIRECTOR, EXECUTIVE
datePostedstring"PAST_WEEK"Recency: PAST_24_HOURS, PAST_WEEK, PAST_MONTH, ANY_TIME
maxJobsnumber50Maximum jobs to scrape (1-500)
sessionCookiesarray-LinkedIn session cookies (JSON array from Cookie-Editor)
proxyConfigurationobject-Proxy settings
demoModebooleantrueReturn sample data for testing
webhookUrlstring-Webhook URL for results delivery

Output Format

{
"jobId": "LI-3847291056",
"title": "Senior Marketing Manager",
"company": "Google",
"companyUrl": "https://linkedin.com/company/google",
"companySize": "10,001+",
"industry": "Technology",
"location": "Mountain View, CA",
"workplaceType": "Hybrid",
"jobUrl": "https://linkedin.com/jobs/view/3847291056",
"description": "We are looking for a Marketing Manager to lead our enterprise campaigns...",
"requirements": [
"5+ years of B2B marketing experience",
"Bachelor's degree in Marketing or related field",
"Experience with marketing automation platforms"
],
"benefits": [
"Competitive salary and equity",
"Health, dental, and vision insurance",
"Flexible PTO and parental leave"
],
"salary": "$120,000 - $180,000",
"employmentType": "Full-time",
"experienceLevel": "Mid-Senior level",
"applicants": 156,
"postedDate": "2026-01-25",
"postedAgo": "3 days ago",
"isEasyApply": true,
"skills": ["Marketing Strategy", "Google Analytics", "HubSpot", "Leadership"],
"scrapedAt": "2026-01-28T10:30:00.000Z"
}

Pricing (Pay-Per-Event)

EventDescriptionPrice
job_scrapedPer job listing scraped$0.01

Example costs:

  • 50 jobs: 50 x $0.01 = $0.50
  • 200 jobs: 200 x $0.01 = $2.00
  • 500 jobs: 500 x $0.01 = $5.00
  • Demo mode: $0.00

Common Scenarios

Scenario 1: B2B Sales Intent Signals

{
"searchQueries": ["VP Marketing", "Head of Marketing", "CMO"],
"location": "San Francisco Bay Area",
"datePosted": "PAST_WEEK",
"maxJobs": 100,
"demoMode": false
}

Identify companies hiring marketing leaders - they likely need marketing tools and services.

Scenario 2: Competitor Hiring Analysis

{
"searchQueries": ["software engineer", "product manager", "data scientist"],
"companyNames": ["Competitor A", "Competitor B", "Competitor C"],
"datePosted": "PAST_MONTH",
"maxJobs": 200,
"demoMode": false
}

Track what roles your competitors are hiring for to understand their strategy.

Scenario 3: Remote Job Market Research

{
"searchQueries": ["marketing manager"],
"remote": "REMOTE",
"datePosted": "PAST_MONTH",
"maxJobs": 500,
"demoMode": false
}

Analyze remote job availability and salary ranges across the market.

Scenario 4: Salary Benchmarking

{
"searchQueries": ["senior software engineer"],
"location": "New York, NY",
"experienceLevel": "MID_SENIOR",
"datePosted": "PAST_MONTH",
"maxJobs": 200,
"demoMode": false
}

Collect salary data for compensation benchmarking and negotiation.

Scraping Modes

Mode 1: Firecrawl Stealth (Default)

  • No cookies needed
  • Uses Firecrawl's stealth rendering to bypass basic blocks
  • Best for quick, small-batch scrapes
  • Lower success rate on heavily gated pages
  • Provide sessionCookies for authenticated browsing
  • Full access to job details, salary data, and applicant counts
  • Higher success rate and more complete data
  • Recommended for production use and large batches

Webhook & Automation Integration

Webhook Configuration

{
"searchQueries": ["marketing manager"],
"location": "United States",
"maxJobs": 100,
"webhookUrl": "https://your-endpoint.com/webhook"
}

Zapier Integration

  1. Create a Zapier Webhook trigger (Catch Hook)
  2. Copy the webhook URL to webhookUrl
  3. Route results to Google Sheets, CRM, Slack, etc.

Popular Zaps:

  • Job postings -> Google Sheets (hiring intent database)
  • New job at target company -> Slack alert (sales trigger)
  • Results -> HubSpot CRM (enrich company records with hiring data)

Make.com (Integromat)

  1. Create a Webhooks module (Custom webhook)
  2. Add webhook URL to configuration
  3. Process results with Make.com scenarios

n8n Integration

  1. Add a Webhook node
  2. Configure with webhook URL
  3. Chain with processing nodes

Apify Scheduled Runs

Schedule daily or weekly runs in Apify Console for ongoing monitoring. Use Apify webhooks or API for programmatic access.

Official API Alternatives

LinkedIn Jobs API (Marketing API)

LinkedIn offers job-related APIs through their Marketing Developer Platform:

  • Pros: Official, reliable, structured data, real-time
  • Cons: Requires LinkedIn Marketing Partner approval, expensive, limited access
  • Best for: Enterprise applications with LinkedIn partnership

Indeed Publisher API

  • Pros: Large job database, structured API
  • Cons: Publisher program required, limited fields
  • Best for: Job board aggregation

This Scraper's Advantages

  1. No API approval needed - Works immediately
  2. No LinkedIn partnership required
  3. Pay-per-result pricing (much cheaper at scale)
  4. Full job descriptions including requirements and benefits
  5. Applicant counts and Easy Apply status
  6. Company metadata (size, industry) included
  7. Session cookie auth for reliable authenticated access

FAQ

Q: Do I need a LinkedIn account?

A: Not strictly, but it is strongly recommended. Without cookies, LinkedIn frequently shows auth walls that block scraping. With session cookies from a LinkedIn account, success rates are dramatically higher.

Q: Can I filter by specific companies?

A: Yes. Use the companyNames array to monitor specific companies' hiring activity.

Q: Why are some salary fields empty?

A: Not all employers post salary information on LinkedIn. The scraper extracts salary data when it's publicly available.

Q: How often are job listings updated?

A: Data is scraped in real-time from LinkedIn's current listings. Use datePosted to focus on recent postings.

Q: Can I get applicant counts?

A: Yes, when LinkedIn displays applicant counts publicly (e.g., "156 applicants"), the scraper captures this data.

Q: Is the job description truncated?

A: The scraper extracts the full job description, requirements, and benefits as posted by the employer.

Q: What is an auth wall?

A: LinkedIn redirects unauthenticated users to /authwall or shows "Sign in to view" prompts. The actor detects these and logs a clear warning. Providing sessionCookies resolves this issue.

Troubleshooting

"0 results found" or "Auth wall detected"

This is the most common issue. LinkedIn blocks unauthenticated access frequently.

  1. Add session cookies — Export cookies from Cookie-Editor and pass them via sessionCookies
  2. Re-export cookies if they have expired (LinkedIn sessions expire after ~30 days)
  3. Check the logs — The actor now logs exactly what it detected (auth wall redirect, sign-in prompt, empty page)

"No jobs found"

  • Broaden your search query (e.g., "Marketing" instead of "Growth Marketing Manager SaaS")
  • Check location spelling
  • Remove experience level filter to broaden results
  • Try datePosted: "PAST_MONTH" for more results

"Fewer results than expected"

  • LinkedIn may not have many matching jobs for niche queries
  • Increase datePosted timeframe
  • Try alternative job title variations
  • Remove companyNames filter if too restrictive

"Rate limited or blocked"

  • Wait 15-30 minutes between runs
  • Reduce maxJobs to 25-50
  • Use more specific queries to reduce crawling
  • Add sessionCookies for authenticated access
  • The actor uses fingerprint injection automatically

"Demo data showing"

  • Set demoMode: false
  • No API key or login required for real scraping

Support


Built by John Rippy | Actor Arsenal