LinkedIn Company Jobs Scraper 🏢 (every open role, one company)
Pricing
from $1.40 / 1,000 job scrapeds
LinkedIn Company Jobs Scraper 🏢 (every open role, one company)
Every live job posting for a company on LinkedIn, with full descriptions. Give a company name, LinkedIn URL, or numeric company ID and get all its current openings in clean JSON: title, location, posting date, seniority, and the link to apply. Track a competitor's hiring, no login, no API key.
Pricing
from $1.40 / 1,000 job scrapeds
Rating
0.0
(0)
Developer
Tagada Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
LinkedIn Company Jobs Scraper
See every role a company currently has open on LinkedIn. Give a company name, its LinkedIn URL, or its numeric LinkedIn company ID, and get back every live job posting: title, location, posting date, and the direct link to apply. Switch on full descriptions and every row also carries the complete job text, seniority level, employment type, job function, industry and the current applicant count.
This is the tool for watching one company's hiring, not searching all of LinkedIn by keyword. A recruiter tracking a client, a sales rep watching a target account, or a job seeker following a short list of employers all want the same thing: every current opening at a specific company, refreshed on demand.
No login. No cookies to paste. No API key. One clear price per job, with platform usage already included.
This actor scrapes public job postings and the hiring company only. It does not collect personal profiles, applicants, or the individual who posted the job.
How company resolution works
LinkedIn's job search filters by a numeric company ID, not by name, so the actor has to find that ID first:
- A numeric ID (e.g.
1035) is used as-is. - A LinkedIn URL that already names the company (a company page like
https://www.linkedin.com/company/microsoft/, or a jobs search URL with a company filter already in it) is read directly: no extra lookup needed. - A bare name (e.g.
Microsoft) is resolved automatically: the actor runs one LinkedIn jobs search for that name and looks at which company's postings dominate the results, then confirms that company's numeric ID from its own LinkedIn page.
Every output row carries inputCompany (what you typed), resolvedCompanyId, resolvedCompanyName, resolutionMethod (how it was matched) and, for a name-based match, resolutionConfidence (the share of the search results that belonged to the winning company, 0 to 1). Check these on the first run with a new name; if the match is not what you meant, paste the company's LinkedIn URL or numeric ID instead and it will be used exactly, with no search or guessing involved.
What you get
One record per job posting:
| Field | Description |
|---|---|
jobId | LinkedIn job posting ID |
title | Job title |
jobUrl | Direct link to the public job posting |
companyName | Hiring company as shown on the job card |
companyUrl | The company's LinkedIn page |
companySlug | Company handle from its URL |
companyLogoUrl | Company logo image |
location | Location as shown on the posting |
postedAt | Posting age in the site's own words (e.g. "2 days ago") |
postedDate | Posting date as ISO YYYY-MM-DD |
isNew | Flagged as newly posted by LinkedIn |
benefits | Any badge on the card (e.g. "Actively Hiring") |
inputCompany | The company exactly as you entered it |
resolvedCompanyId | The numeric LinkedIn company ID the search actually ran against |
resolvedCompanyName | The resolved company's name |
resolutionMethod | id, url-f_C, url-numeric-path, url-company-page, or name-search |
resolutionConfidence | For name-search only: how dominant the matched company was in the search results (0 to 1) |
source | linkedin.com |
scrapedAt | When the row was collected (ISO) |
With Add full job descriptions switched on, every row also gets:
| Field | Description |
|---|---|
description | Full job description text |
descriptionHtml | The same description with its original formatting |
seniorityLevel | e.g. Entry level, Mid-Senior level, Director |
employmentType | Full-time, Part-time, Contract, and so on |
jobFunction | The job function LinkedIn assigns |
industries | The hiring company's industry |
applicantsCount | How many people have applied so far |
applicantsCaption | Applicant count in the site's own words |
Descriptions are billed as a small extra, and only when the extra data is actually found. A posting with nothing extra to return costs you nothing beyond the base job.
Who uses this
- Recruiters and staffing agencies: watch a client's open roles and how they change week to week.
- Sales and lead-gen teams: a growing headcount at a target account is a buying signal. Track how many roles a prospect has open and in which functions before you reach out.
- Competitive intelligence: see exactly what a competitor is hiring for, and in which locations, as a proxy for where they are investing.
- Job seekers and career coaches: follow a short list of employers and catch every new opening the moment it is posted.
Turn a hiring company into a full lead
To go from a hiring company to a legal entity and a real contact, pass resolvedCompanyName into a sibling actor:
- French Company KYC: resolve a French hiring company to its SIREN/SIRET, officers and BODACC status for due diligence.
- French Company Email Finder: find the SIREN, dirigeants and contact emails for a French hiring company, ready for outreach.
Input examples
Copy any of these into the input, or use the visual form.
By company name:
{"companies": ["Microsoft"],"maxPerCompany": 50}
By LinkedIn company URL, with full descriptions:
{"companies": ["https://www.linkedin.com/company/microsoft/"],"withDescription": true,"maxPerCompany": 100}
Several companies, new postings only, run it daily as a hiring monitor:
{"companies": ["Microsoft", "https://www.linkedin.com/company/google/", "1441"],"postedSince": "24h","maxPerCompany": 200}
Output sample
{"jobId": "4438655931","title": "Software Engineer","jobUrl": "https://www.linkedin.com/jobs/view/4438655931","companyName": "Microsoft","companyUrl": "https://www.linkedin.com/company/microsoft","companySlug": "microsoft","companyLogoUrl": "https://media.licdn.com/dms/image/v2/D4E0BAQH8a1b2c3d/company-logo_100_100/0/1712345678.png","location": "Paris, Île-de-France, France","postedAt": "2 days ago","postedDate": "2026-07-09","isNew": true,"benefits": "Actively Hiring","inputCompany": "Microsoft","resolvedCompanyId": "1035","resolvedCompanyName": "Microsoft","resolutionMethod": "name-search","resolutionConfidence": 0.8,"source": "linkedin.com","scrapedAt": "2026-08-20T09:14:22.317Z"}
Pricing
You pay per job returned, and a small extra only for jobs where full-description enrichment actually found data. Platform usage is included in the price, so there is no subscription. Company resolution itself is never billed, whether the company was given as a name, a URL or an ID.
| Event | Price |
|---|---|
| Actor start | $0.001 per run |
| Job scraped | $2.00 per 1,000 |
| Job details | $2.00 per 1,000 (only with Add full job descriptions, and only when the extra data was found) |
The tiny start fee covers runs that return nothing; on any normal search it is noise next to the per-job price.
FAQ
Do I need a LinkedIn account or a cookie? No. This reads LinkedIn's public jobs and company pages, so there is no login, no session cookie and no API key to manage.
Does it scrape people or applicants? No. It collects the public job posting and the hiring company only. It never collects personal profiles, the names of applicants, or the person who posted the role.
What if I type a company name and it resolves to the wrong company?
Check resolvedCompanyName and resolutionConfidence on the first row. If it is not what you meant, paste the exact LinkedIn company URL (or its numeric ID, found in the URL after /company/ when the company uses a numeric handle, or in a job search URL after f_C=) instead of the name; that path skips the search entirely and always uses exactly the company you specify.
How many jobs can I get per company? Set Max jobs per company. LinkedIn serves a few hundred results per company before it stops paginating; most companies' current openings fit well inside that.
How do I only get brand-new postings? Set Posted since to the last 24 hours and schedule the run. Each run returns only what LinkedIn currently shows in that window, so a daily 24-hour run is a simple new-jobs-at-this-company monitor.
Can I get the full job description and how many people applied? Yes. Switch on Add full job descriptions. Each job then includes the full description, seniority, employment type, job function, industry and the live applicant count. This opens each posting individually, so it is a little slower and costs a small extra per enriched job.
How is it priced? You pay per job returned, and the LinkedIn page fetching (including resolving a company name) is already included in that price, so there are no separate platform bills to reconcile.
Is the data structured? Yes. Every run produces one flat JSON or CSV row per job with the same fields, ready for a spreadsheet, a CRM import or a database.
Related actors
- LinkedIn Jobs Scraper: search all of LinkedIn by keyword and location, across every company.
- French Company KYC: SIREN/SIRET, officers and BODACC status for a French company.
- French Company Email Finder: dirigeants and contact emails for a French company.
LinkedIn company jobs scraper, company hiring tracker LinkedIn, LinkedIn jobs by company, track competitor hiring, LinkedIn open roles scraper, hiring signal LinkedIn, LinkedIn jobs API alternative, company job listings export, recruitment intelligence, sales trigger hiring data.