LinkedIn Job Search API
Search public LinkedIn job listings by keyword and location and get structured JSON rows — title, company, pay, posting date, apply links — ready for talent intel and market scans.
GET /v1/linkedin/jobs/search2 credits per request +2 credits per returned record Up to 1000 records per request Max 2002 credits Default limit: 10 Failed requests are free
About this endpoint
GET /v2/linkedin/jobs/search requires keyword and location. Optional filters: country (ISO 3166-1 alpha-2), timeRange (any, past-month, past-week, past-24-hours), jobType, experienceLevel, remote (on-site, remote, hybrid), company, locationRadius, and limit (default 10, max 1000). The response uses the shared Social Fetch envelope. Branch on data.lookupStatus: found when at least one job came back, not_found when the search finished empty. Each row in data.jobs includes the job url plus fields LinkedIn shows on the listing when available — title, company name/URL/logo, location, summary, seniority, function, employment type, pay range, posted labels, applicant count, Easy Apply flags, and description text. data.summary.returned is the count for this response.
This route is search, not a single-job lookup. Once you have a job, call GET /v2/linkedin/jobs/{jobId} or GET /v2/linkedin/jobs/batch. Company pages stay on GET /v1/linkedin/companies; people stay on GET /v1/linkedin/profiles or people search. Pricing is metered: a 2-credit attempt fee on every successful search (including empty), plus 2 credits per job returned. Preflight scales with limit (up to 2002 credits at limit=1000). Trust meta.creditsCharged.
LinkedIn Job Search API FAQ
How do I search LinkedIn jobs via API?
Call GET /v2/linkedin/jobs/search with your Social Fetch API key (x-api-key), a required keyword, and a required location. Add optional filters (country, timeRange, jobType, experienceLevel, remote, company, locationRadius, limit) as needed. Read data.lookupStatus and data.jobs in the JSON response. See the API docs for parameters.
How much does LinkedIn job search cost?
2 credits attempt fee on every successful search (including empty results), plus 2 credits per job returned. limit default: 10 (max 1000; preflight up to 2002 credits). Always trust meta.creditsCharged on the response over a spreadsheet estimate.
What filters does LinkedIn job search support?
keyword and location are required. Optional: country (ISO alpha-2), timeRange (any, past-month, past-week, past-24-hours), jobType (full-time, part-time, contract, temporary, volunteer), experienceLevel (internship through executive), remote (on-site, remote, hybrid), company, locationRadius (exact through 50 miles), and limit.
What fields does each LinkedIn job search result include?
Each job row has a public url. When LinkedIn shows them, you also get title, company name/id/URL/logo, location, summary, seniority, function, employment type, industries, pay range text and structured base salary, posted labels/dates, applicant count, poster info, Easy Apply / apply link, description HTML/text, and country code. Coverage follows the public listing.
Job search vs LinkedIn job GET by URL?
Use GET /v2/linkedin/jobs/search when you have a keyword and need candidate listings. Use GET /v2/linkedin/jobs/{jobId} or GET /v2/linkedin/jobs/batch when you already have a job id or /jobs/view/… URLs.
What happens when no jobs match the search?
The call still returns HTTP 200 with lookupStatus of not_found, an empty jobs array, and summary.returned of 0. The 2-credit attempt fee still applies. Keep meta.requestId if you need to retry or escalate.
Do I need LinkedIn partner API access for job search?
No. Social Fetch returns public LinkedIn job search results for enrichment-style discovery. LinkedIn's official partner APIs are separate and require LinkedIn's access programs and authorization.
Other LinkedIn endpoints
- ProfileGET /v2/linkedin/profiles
- ProfilesGET /v2/linkedin/profiles/batch
- Resolve personGET /v2/linkedin/people/resolve
- Profile postsGET /v2/linkedin/people/{entityId}/posts
- Profile commentsGET /v2/linkedin/people/{entityId}/comments
- Employment historyGET /v2/linkedin/people/{entityId}/employment-history
- RecommendationsGET /v2/linkedin/people/{entityId}/recommendations
- InterestsGET /v2/linkedin/people/{entityId}/interests