# Search jobs

Search public job postings by keyword, location, date, experience, job type, and workplace. Use `start` to request later results.

- Platform: LinkedIn
- Request: `GET https://api.toolzerhub.com/v1/linkedin/jobs/search`
- Auth: `x-api-key` header
- Cost: 1 credit per successful request. Failed requests are not billed.
- Page: https://docs.toolzerhub.com/reference/linkedin/linked-in-jobs-search

| Parameter | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| `keywords` | query | yes | string |  |
| `location` | query | no | string |  |
| `geo_id` | query | no | string | Numeric geoId from /geo/typeahead. |
| `start` | query | no | integer |  Default: 0. |
| `date_posted` | query | no | enum: past_24_hours, past_week, past_month | Date posted filter. Use past_24_hours, past_week, or past_month. |
| `experience_levels` | query | no | string | Experience level filter. Comma-separated values: internship, entry_level, associate, mid_senior, director, executive. |
| `job_types` | query | no | string | Job type filter. Comma-separated values: full_time, part_time, contract, temporary, internship, volunteer, other. |
| `workplace` | query | no | enum: on_site, remote, hybrid | Workplace filter. Use on_site, remote, or hybrid. |
| `sortBy` | query | no | enum: most_recent, most_relevant | Sort order. Use most_recent or most_relevant. |
| `company_id` | query | no | string | Numeric organization id (LinkedIn's f_C) to filter jobs by company. See /company's org_id field. |

## Example request

```bash
curl "https://api.toolzerhub.com/v1/linkedin/jobs/search?keywords=<keywords>" \
  -H "x-api-key: $TOOLZERHUB_API_KEY"
```

Success responses are wrapped as `{ "data": ... }`. Errors return `{ "error": { "code", "status", "message", "retryable", "details" } }`. See https://docs.toolzerhub.com/docs/responses-and-errors.
