LinkedIn Jobs API
Search public LinkedIn job listings as clean, structured JSON. Find jobs by keyword, location, seniority, and job type, or fetch specific job URLs. Get title, company, location, salary, description, and apply links. Pay per job, MCP-ready for Claude and AI agents.
MEDIAN LAGon demand
PARAMETERS10
TOTAL USERS13
MONTHLY ACTIVE7
TOTAL RUNS999
RUNS SUCCEEDED99.4%
RATINGno ratings yet
Input parameters
| PARAMETER | TYPE | REQ | DEFAULT | DESCRIPTION |
|---|---|---|---|---|
| keyword | string | no | — | Job title or keyword to search for, e.g. 'python developer'. Combine with Location and filters. |
| location | string | no | — | Location to search within, e.g. 'New York' or 'United Kingdom'. |
| country | string | no | — | Two-letter country code to scope the search, e.g. 'US', 'GB', 'DE'. |
| jobType | enum | no | — | Employment type filter. |
| experienceLevel | enum | no | — | Seniority filter. |
| remote | boolean | no | False | Return only remote jobs. |
| company | string | no | — | Filter to a specific company name. |
| timeRange | enum | no | — | Only jobs posted within this window. |
| jobUrls | string[] | no | — | One or more specific LinkedIn job posting URLs, e.g. https://www.linkedin.com/jobs/view/4286961888. |
| maxJobs | integer | no | 25 | Maximum number of jobs to return for each keyword search or search URL. |
Worked examples
{
"keyword": "python developer",
"location": "New York"
}
Coverage
6
job type — full-time part-time contract temporary internship +1
6
experience level — internship entry associate mid-senior director +1
Tasks
Saved runs with the inputs already filled in — each one a standalone page and a working configuration example.
Code
curl
curl -X POST "https://api.apify.com/v2/acts/johnvc~linkedin-jobs-api/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"keyword": "python developer", "location": "New York"}'
Python
from apify_client import ApifyClient
client = ApifyClient("APIFY_TOKEN")
run = client.actor("johnvc/linkedin-jobs-api").call(
run_input={'keyword': 'python developer', 'location': 'New York'}
)
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item)