linkedin.com APIwww.linkedin.com ↗
Search LinkedIn job listings and retrieve full job details via 3 endpoints. Filter by salary, job type, workplace type, experience level, and date posted.
curl -X GET 'https://api.parse.bot/scraper/63156746-cbe3-420a-84ff-704dee742857/search_jobs?limit=3&job_type=F&keywords=python+developer&location=Chicago&workplace_type=1&experience_level=2' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for job listings with optional filters. Returns job cards with basic info (title, company, location, posted date, job URL). Supports pagination via the start parameter in increments of 25.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return |
| start | integer | Pagination offset (increments of 25) |
| salary | string | Minimum salary filter. Accepted values: 1=$40k+, 2=$60k+, 3=$80k+, 4=$100k+, 5=$120k+, 6=$140k+, 7=$160k+, 8=$180k+, 9=$200k+ |
| job_type | string | Employment type filter. Accepted values: F=Full-time, P=Part-time, C=Contract, T=Temporary, V=Volunteer, I=Internship |
| keywords | string | Search keywords (job title, skills, etc.) |
| location | string | Location to search in (city, state, country) |
| time_period | string | Time posted filter. Accepted values: r86400=Past 24 hours, r604800=Past week, r2592000=Past month |
| workplace_type | string | Workplace type filter. Accepted values: 1=On-site, 2=Remote, 3=Hybrid |
| experience_level | string | Experience level filter. Accepted values: 1=Internship, 2=Entry level, 3=Associate, 4=Mid-Senior level, 5=Director, 6=Executive |
{
"type": "object",
"fields": {
"jobs": "array of job objects with job_id, title, company, company_url, location, posted_date, posted_text, job_url, company_logo",
"total_returned": "integer count of jobs returned",
"filters_applied": "object with active filter values (keywords, location, job_type, experience_level, workplace_type, time_period, salary)"
},
"sample": {
"data": {
"jobs": [
{
"title": "AI/ML Computational Science Specialist",
"job_id": "4413544597",
"company": "Accenture",
"job_url": "https://www.linkedin.com/jobs/view/ai-ml-computational-science-specialist-at-accenture-4413544597",
"location": "Albany, New York Metropolitan Area",
"company_url": "https://ie.linkedin.com/company/accenture",
"posted_date": "2026-05-12",
"posted_text": "1 day ago",
"company_logo": "https://media.licdn.com/dms/image/v2/D4D0BAQEgtOEcxlXMog/company-logo_100_100/B4DZfqEQWkHAAY-/0/1751978673981/accenture_logo?e=2147483647&v=beta&t=tLvhurHHfk50VA6sIbfiOh129B747uf610Drl6yG4t8"
}
],
"total_returned": 5,
"filters_applied": {
"salary": null,
"job_type": null,
"keywords": "data scientist",
"location": "New York",
"time_period": null,
"workplace_type": null,
"experience_level": null
}
},
"status": "success"
}
}About the linkedin.com API
The LinkedIn Jobs API exposes 3 endpoints covering job search, full posting details, and filter discovery across LinkedIn's public job board. Use search_jobs to query listings by keywords, location, salary floor, employment type, workplace type, and time period, then pass a job_id to get_job_details to retrieve the full job description, seniority level, job function, industry classification, applicant count, and external application URL.
Endpoints Overview
The API has three endpoints. search_jobs returns paginated job cards — each with job_id, title, company, location, posted_date, job_url, and company_logo — and an active filters_applied summary alongside a total_returned count. Pagination uses the start parameter in increments of 25. get_job_details takes a single numeric job_id and returns expanded data including the full description text, a criteria object (with seniority_level, employment_type, job_function, and industries), applicants count text, and apply_url for external application links. get_filters requires no parameters and returns the complete set of accepted option codes for salary, job_type, time_period, workplace_type, and experience_level — useful for building dynamic filter UIs without hardcoding values.
Filtering in search_jobs
The salary parameter accepts codes 1–8 mapping to salary floors from $40k to $200k+. job_type accepts single-character codes: F for full-time, P for part-time, C for contract, T for temporary, V for volunteer, and I for internship. workplace_type maps 1 to on-site, 2 to remote, and 3 to hybrid. time_period accepts r86400 (past 24 hours), r604800 (past week), or r2592000 (past month). Multiple filters can be combined in a single request.
Response Detail Notes
Fields like apply_url, location, posted, and applicants in get_job_details are returned as null when the source posting does not include them. The company_url field in both search_jobs and get_job_details points to the company's LinkedIn page. The description field in get_job_details is plain text, not HTML.
- Aggregate remote software engineering jobs using
workplace_type=2andkeywordsfilters for a niche job board - Track how quickly roles fill by polling
applicantscount on specificjob_idvalues over time - Build a salary-filtered job alert tool using the
salaryparameter withtime_period=r86400for fresh postings - Classify job listings by industry and seniority using the
criteria.industriesandcriteria.seniority_levelfields fromget_job_details - Populate a recruitment dashboard with company LinkedIn URLs and external
apply_urllinks from detailed job records - Generate a dynamic search UI by calling
get_filtersto populate filter dropdowns without maintaining a hardcoded options list - Identify hiring trends by querying specific
locationandjob_typecombinations across multiple keyword searches
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does LinkedIn have an official developer API for job listings?+
What does `get_job_details` return beyond what `search_jobs` provides?+
get_job_details endpoint adds the full description text, a structured criteria object containing seniority_level, employment_type, job_function, and industries, plus applicants (applicant count text) and apply_url (the external URL where candidates apply). The search_jobs endpoint returns only card-level data: title, company, location, posted date, and job URL.How does pagination work in `search_jobs`?+
start parameter controls the offset and must increment in multiples of 25 (0, 25, 50, etc.). The limit parameter caps how many results are returned per call. The response includes total_returned so you can determine how many records were fetched, but the API does not return a total available count from the source.Does the API return company employee count, follower count, or LinkedIn company profile details?+
Are jobs from all countries available, or is coverage limited to certain regions?+
location parameter accepts city, state, or country strings, and LinkedIn's public job board covers postings internationally. However, results depend on what is publicly listed for that location — roles that require LinkedIn login to view or that are marked confidential are not included in responses.