Search LinkedIn Jobs
Changed onSearch LinkedIn Jobs
Find job listings by keywords, location, job type, experience level, and workplace type. Returns lightweight job rows (title, company, companyUrl, companyLogo, location, workplaceType, postedAt, jobUrl, listingId).
Parameters
- keywords (optional): Search terms matched against job title, company name, and description
Keyword syntax (Boolean operators)
Keywords support LinkedIn Boolean search syntax:
- Exact phrase: "frontend engineer": matches only that exact title
- AND: React AND TypeScript, both terms required (spaces default to AND)
- OR: "frontend engineer" OR "front-end developer": either term
- NOT: engineer NOT intern, exclude unwanted terms
- Parentheses: (React OR Vue) AND "senior engineer": group logic
Operators must be UPPERCASE. Precedence: Quotes > Parentheses > NOT > AND > OR.
Available filters
Pass human-readable names for location, company, industry, jobFunction, benefits, commitments: they are resolved to LinkedIn IDs server-side. Do not hand-resolve.
| Filter | Type | Description |
|---|---|---|
| location | string[] | City/region/country names |
| company | string[] | Hiring company names |
| industry | string[] | Company industry names |
| jobFunction | string[] | Job function names (Engineering, Sales, …) |
| datePosted | string | "past-24h" | "past-week" | "past-month" |
| sortBy | string | "relevance" | "date" |
| jobType | string[] | Employment type codes (see below) |
| experienceLevel | string[] | Seniority codes (see below) |
| workplaceType | string[] | Work location codes (see below) |
| benefits | string[] | Advertised benefit names |
| commitments | string[] | Employer commitment names |
| easyApply | boolean | Only Easy Apply jobs |
| under10Applicants | boolean | Only jobs with <10 applicants |
| inYourNetwork | boolean | Only jobs where you have a connection |
| hasVerifications | boolean | Only verified job posters |
| fairChanceEmployer | boolean | Only Fair Chance employers |
Job type codes
| Code | Type |
|---|---|
| F | Full-time |
| P | Part-time |
| C | Contract |
| T | Temporary |
| I | Internship |
| V | Volunteer |
| O | Other |
Experience level codes
| Code | Level |
|---|---|
| 1 | Internship |
| 2 | Entry level |
| 3 | Associate |
| 4 | Mid-Senior level |
| 5 | Director |
| 6 | Executive |
Workplace type codes
| Code | Type |
|---|---|
| 1 | On-site |
| 2 | Remote |
| 3 | Hybrid |
Response fields (per item)
| Field | Type | Description |
|---|---|---|
| title | string | Job title |
| company | string|null | Hiring company name |
| companyUrl | string|null | Company LinkedIn page URL |
| companyLogo | string|null | Company logo URL |
| location | string|null | Job location |
| workplaceType | string|null | On-site / Remote / Hybrid |
| postedAt | string|null | Human-readable posting time (e.g. "2 days ago") |
| jobUrl | string | Direct URL to the job listing |
| listingId | string | LinkedIn job listing ID |
Pagination
- Default page size: 50, max 100
- Use start + count to paginate. Check hasMore for more pages.
Example workflows
- Job monitoring: Search by title + location → track new openings in your area
- Competitive hiring analysis: Search by company keywords → see what roles competitors are hiring for
- Market demand research: Search by skills → gauge demand for specific expertise
Credits
Cost: 1 credit for every 20 results returned, at least 1 when any come back, nothing when none.
Request
- Base URL: https://api.bereach.ai
- URL: https://api.bereach.ai/search/linkedin/jobs
- Auth: HTTP bearer
Request body
Response
List of LinkedIn job listings matching the search criteria
Changes
- warning
removed the optional property
from the response with the status
- warning
- breaking
removed the required property
//from the response with the status
- breaking