curl --request POST \
--url https://api.scrapeunblocker.com/jobs/linkedin \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/jobs/linkedin"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/jobs/linkedin', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Scrape LinkedIn job postings
Searches LinkedIn’s guest jobs API for keyword (+ optional location and filters) and returns the postings as JSON: jobId, title, company, companyUrl, location, postedDate, jobUrl, companyLogo and benefit tags. Filter with time_posted (24h/week/month), workplace (onsite/remote/hybrid), job_type, experience, salary band and sort, and collect up to max_results across pages. mode=detail with a job_id returns one job’s full description, seniority, employment type, job function, industries and applicant count. No LinkedIn login required.
curl --request POST \
--url https://api.scrapeunblocker.com/jobs/linkedin \
--header 'x-scrapeunblocker-key: <api-key>'import requests
url = "https://api.scrapeunblocker.com/jobs/linkedin"
headers = {"x-scrapeunblocker-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-scrapeunblocker-key': '<api-key>'}};
fetch('https://api.scrapeunblocker.com/jobs/linkedin', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Your ScrapeUnblocker API key. Apply on every request.
Query Parameters
Job search terms, e.g. 'python developer'. Required for mode=search.
Location text, e.g. 'United States' or 'Berlin, Germany'. Optional.
'search' (default) for a job list, or 'detail' for one job by job_id.
For mode=detail: a numeric LinkedIn job id or a /jobs/view/ URL.
How many jobs to collect across pages (search mode).
1 <= x <= 1000Time posted filter: 24h, week, month.
Workplace type (comma-separated ok): onsite, remote, hybrid.
Job type (comma-separated ok): full_time, part_time, contract, temporary, internship, volunteer, other.
Experience level (comma-separated ok): internship, entry, associate, mid_senior, director, executive.
Minimum salary band (US$): 40k, 60k, 80k, 100k, 120k, 140k, 160k, 180k, 200k.
Sort order: relevant, recent. Defaults to LinkedIn's relevance.
LinkedIn numeric geoId for a precise region (advanced; overrides location text).
Search radius in miles around the location.
0 <= x <= 100Search mode: also fetch each job's full description + criteria (bounded to 25 jobs). Slower.
Exit-IP country (ISO-2). Leave blank to let the API pick.
Response
JSON with a jobs array (search) or a single job object (detail).

