Research hiring activity by role and location.
LinkedIn Jobs Scraper
Collect LinkedIn job listings using search terms, locations or job URLs, with company and role details.
What you can do
Build a structured job dataset for analysis.
Compare employers and job requirements.
Set your sources
Open the scraper and enter your own URLs, search terms and limits.
Review & run
Check the cost estimate and confirm the task. Follow its progress in your account.
Use your data
Explore saved results and export CSV, JSON or XLSX. Downloads of saved results are free.
Sample data & output fields
These example values demonstrate the data shape; they are not a live scraper result. Available fields depend on the source, selected options and upstream data.
[
{
"id": "example-001",
"title": "Example title",
"companyName": "Example company name",
"location": "New York, United States",
"link": "https://example.com/result"
}
]| Field | Type | Description |
|---|---|---|
id | string | Id. |
title | string | Title. |
companyName | string | Company name. |
location | string | Location. |
link | string | Link. |
Example input
This is the configured parser input. Replace the example sources with your own and review all limits before running.
{
"keywords": "data engineer",
"location": "United States",
"startUrls": [],
"datePosted": "any",
"companyUrls": [],
"sortBy": "relevant",
"scrapeCompanyDetails": true,
"maxResults": 100
}Explore input fields
| Field | Type | Notes |
|---|---|---|
keywords | string | Job title, skill, or keyword to search for (e.g., 'Python developer', 'product manager', 'nurse'). Leave empty if you are only using LinkedIn URLs below. |
location | string | City, region, or country to search in (e.g., 'New York', 'United Kingdom', 'Remote — Germany'). Matches what you would type into LinkedIn's location box. |
startUrls | array | Full LinkedIn job-search URLs, copied from your browser. Keyword, location, date-posted and company filters in the URL are applied. Experience level, job type, workplace type, industry and salary filters are NOT — LinkedIn only applies those for signed-in… |
datePosted | string | Only return jobs posted within this time window. |
companyUrls | array | Only return jobs from these companies. Paste the address of each company's LinkedIn page, e.g. https://www.linkedin.com/company/microsoft. Leave empty to search every company. |
sortBy | string | Order results by relevance, or by most recently posted. Most recent returns the freshest jobs first, ordered by posting date — it checks a wider pool of listings before picking the newest ones, so those runs take a little longer. |
scrapeCompanyDetails | boolean | Also fetch each job's company profile (description, website, employee count, industry). This adds an extra request per unique company and makes the run slower. Turn off to keep runs fast and only collect the job posting itself. |
maxResults | integer | Total number of jobs to return across all searches and URLs. When a run has more than one search (keywords plus URLs, or several URLs), they share this total and run in order, so a later search returns nothing once the total is used up. Use 0 for unlimited… |
Run through the API
Create an API key in your account, send the input to the queued endpoint and use the returned task ID to retrieve results. Sending a live request uses credits.
curl --request POST 'https://extracto.cloud/api/v1/parsers/linkedin-jobs-scraper/queue' \
--header 'X-API-KEY: ext_your_api_key' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data-binary @- <<'JSON'
{
"input": {
"keywords": "data engineer",
"location": "United States",
"startUrls": [],
"datePosted": "any",
"companyUrls": [],
"sortBy": "relevant",
"scrapeCompanyDetails": true,
"maxResults": 100
}
}
JSONYour next dataset starts here.
Choose your sources, review the price and run LinkedIn Jobs Scraper.