Post a job to Lever via its Data API — create a posting with a title, team/department/location categories, description, requirement lists, workplace type, salary range, tags and requisition codes. BYOK-only.
Lever is an applicant tracking system, and one of the 54 tools hyreflow connects to Claude, ChatGPT and other AI assistants. Through hyreflow, an AI agent can run 3 actions: 1 that looks something up and 2 that create or change records. Lever runs on your own Lever account: hyreflow charges no credits for it, and Lever bills you as before.
Through hyreflow, an AI agent can run 3 Lever actions: 1 that looks something up and 2 that create or change records. Lever runs on your own Lever account: hyreflow charges no credits for it, and Lever bills you as before.
| Lever action | What it does | Cost through hyreflow |
|---|---|---|
| Create job | Creates or changes a record | no hyreflow credits |
| Set job state | Creates or changes a record | no hyreflow credits |
| List users | Looks something up | no hyreflow credits |
One credit is priced on the pricing page. The full price list for every tool is in the pricing tables.
2 hyreflow skills call Lever as part of the run. A skill is a whole pipeline your agent already knows, end to end.
use whenthe same role has to be opened in more than one applicant tracking system and you are tired of typing it out in each
use whenyou have a client's job description or your own brief, and what goes on the careers page has to be written for the candidate, not for the client's file
hyreflow ships a written playbook for Lever, and the agent loads it before the first call. Auth, rate limits, what each call costs, which actions need your approval, and the mistakes worth avoiding. It is the difference between an agent that knows the tool and one that guesses at it.
Read the Lever docs →Lever calls a job a posting.
Lever is BYOK-only. Connect your own Lever API key in Integrations; a Lever Super Admin mints it
under Settings → Integrations and API. There is no managed-key fallback and the write costs 0 Hyreflow
credits. list_users is the free connection check: it verifies the key and returns the users a perform_as comes from.
perform_as userLever has no system actor — every posting is attributed to a real Lever user, passed as
perform_as in the payload; it is sent as the query parameter Lever requires, not as a body field.
That user becomes the creator and, unless owner says otherwise, the owner.
Ask the user whose Lever account the posting should be created under; do not guess.
create_job(payload) posts a job. Required: perform_as and text, plus categories.team,
categories.department and categories.location.
perform_as (required) — the Lever user the posting is created as; sent as a query parameter.text (required) — the posting title.categories.team / categories.department / categories.location (all required).categories.commitment — Full-time, Part-time, Internship, …categories.allLocations — additional locations.state — published, internal, closed, draft, pending, rejected — defaults to draft.distributionChannels — internal, public — defaults to BOTH.owner / hiringManager — Lever user ids.tags — extra posting tags.content.descriptionHtml, content.lists ([{text, content}]), content.closingPostingHtml.salaryDescriptionHtml, salaryRange ({currency, interval, min, max}).workplaceType — onsite, remote, hybrid.requisitionCodes.hyreflow tools execute lever_create_job --payload '{
"text": "Senior Platform Engineer",
"state": "draft",
"categories": {"team": "Engineering", "department": "Technology", "location": "Berlin"},
"perform_as": "8d49b010-cc6a-4f40-ace5-e86061c677ed"
}'
The posting id is data.id; data.urls carries the live list/show/apply links once published.
set_job_state(posting_id, perform_as) is a partial update — POST /postings/{id} — that changes only
what it sends. state defaults to published, taking a draft posting live on the sites named by its
distributionChannels.
hyreflow tools execute lever_set_job_state --payload '{
"posting_id": "730e37db-93d3-4acf-b9de-7cfc397cef1d",
"perform_as": "8d49b010-cc6a-4f40-ace5-e86061c677ed"
}'
The same call moves a posting to any other state — internal, closed, draft, pending, rejected —
and takes an optional payload of the create fields to change alongside it. Read the posting first so a
partial update doesn't clobber a concurrent edit in Lever Hire; updating through the API skips the
approvals chain, exactly like creating does.
state defaults to draft — the posting is not live unless "state": "published" is sent.distributionChannels defaults to BOTH public and internal — say ["internal"] to keep it internal.state and distributionChannels before executing.state is draft unless told otherwise.Yes. hyreflow is a connector for Claude, ChatGPT and other AI assistants. Once hyreflow is connected, you ask for the outcome in plain language and the assistant calls Lever for you. hyreflow exposes 3 Lever actions this way.
Yes. Lever runs on your own Lever account. You connect it to hyreflow once, hyreflow charges no credits for the calls, and Lever bills you as before.
Lever runs on your own Lever account: hyreflow charges no credits for it, and Lever bills you as before.
Add the hyreflow MCP server to your assistant and sign in. hyreflow calls the Lever API directly and exposes its actions as tools the assistant can run, so there is no separate Lever server to install.
Connect hyreflow to Claude or ChatGPT and ask for the outcome. It reads the playbook above before it makes a single call.