> ## Documentation Index
> Fetch the complete documentation index at: https://docs.agentkey.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Job search for AI agents

> Search live job postings aggregated from public job sites worldwide through Google for Jobs, with filters and pagination, plus Liepin job search for China.

Job postings are spread across thousands of career sites and boards, each with
its own search form and anti-scraping measures. Through AgentKey your agent
searches them in one call — `find_tools`, `describe_tool`, `execute_tool` —
with JSearch behind the scenes for the Google for Jobs aggregate, which indexes
jobs posted on any public job site, and Liepin for the China market.

## What you can ask

* *"Find remote senior backend engineer jobs posted in the last week."*
* *"Data analyst roles in Austin, full-time only, with a salary listed."*
* *"Which companies are hiring product managers in Berlin right now?"*
* *"Show me the next page of results."*
* *"Entry-level marketing jobs in Toronto that don't require a degree."*
* *"上海的 Go 后端开发岗位，猎聘上有哪些？"*
* *"Compare how many openings mention 'LLM' in London versus New York."*

## What's covered

**Global job search**

* Search jobs posted on any public job site across the web, aggregated by
  Google for Jobs
* Every filter Google for Jobs offers — the full set of its options is
  exposed
* Pagination through result pages

**China (Liepin)**

* Search Liepin postings with a filter object in which every field is
  optional; an empty filter returns unfiltered results
* Read-only and safe to retry; zero-based page numbering

## How to use it

Pass the request in plain language and let the router pick the tool:

```text theme={null}
find_tools(q="remote senior backend engineer jobs posted this week")
find_tools(q="上海的 Go 后端开发岗位")
find_tools(prefix="jobs/jsearch")            # Google for Jobs aggregate
find_tools(prefix="jobs/liepin")             # China
describe_tool("<returned Provider/Operation>")
execute_tool("<Provider/Operation>", { ...params })
```

Both English and Chinese phrasing work. Always `describe_tool` before
executing — the filter parameters are extensive and differ between the two
providers, as do per-call costs.

> [!NOTE]
>
> **Building with code?** The same capability is available as fixed-contract
> [Scenario Methods](/api-reference/scenario/overview) with automatic provider
> failover:
> [`jobs.search`](/api-reference/scenario/methods/jobs-search),
> [`jobs.get`](/api-reference/scenario/methods/jobs-get).

## FAQ

> **Can I filter by remote, date posted or employment type?**
>
> Yes. The global search exposes all the options Google for Jobs offers,
> including those; `describe_tool` lists the exact parameter names and
> accepted values.

> **Do search results include how to apply?**
>
> Search returns the postings themselves. For application options and
> links, employer reviews and salary context on one posting, open it with
> the details tool — see
> [Job details & salaries](/capabilities/jobs/job-details-and-salaries).

> **Which sites are covered?**
>
> Any public job site that Google for Jobs indexes, worldwide. Liepin
> postings are covered by the China route.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.