← all tools
ATS

Recruitee

Post a job to Recruitee via its ATS API — create an offer with a title, description, requirements, locations, department, work model and application-form location picker. Also creates talent pools. BYOK-only.

Recruitee 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 4 actions: 2 that look something up and 2 that create or change records. Recruitee runs on your own Recruitee account: hyreflow charges no credits for it, and Recruitee bills you as before.

Cost per callBYOK · vendor billed
Your own keyrequired
CategoryATS

Which Recruitee actions can an AI agent run through hyreflow?

Through hyreflow, an AI agent can run 4 Recruitee actions: 2 that look something up and 2 that create or change records. Recruitee runs on your own Recruitee account: hyreflow charges no credits for it, and Recruitee bills you as before.

Recruitee actionWhat it doesCost through hyreflow
Create jobCreates or changes a recordno hyreflow credits
Set job stateCreates or changes a recordno hyreflow credits
List departmentsLooks something upno hyreflow credits
List locationsLooks something upno hyreflow credits

One credit is priced on the pricing page. The full price list for every tool is in the pricing tables.

How does an AI agent know how to use Recruitee?

hyreflow ships a written playbook for Recruitee, 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 Recruitee docs →
Show the raw playbookwritten for the agent

Recruitee calls a job an offer, and the same endpoint creates either a real job or a talent pool.

Access

Recruitee is BYOK-only. Connect your own Recruitee token and your company (the acme in acme.recruitee.com, or the numeric company ID) in Integrations; there is no managed-key fallback and the write costs 0 Hyreflow credits. A Recruitee token is personal and per-company: it carries exactly the permissions of whoever minted it, and acts in their name. list_departments is the free connection check: it verifies the key and returns the departments a department_id comes from.

Create an offer

create_job(payload) posts an offer. Required: title, description, location_ids, and requirements (optional when kind is talent_pool).

  • title (required) — the offer title.
  • description (required) — the offer description.
  • location_ids (required) — array of Recruitee location ids, required even for a remote role.
  • requirements — required for a job, optional for a talent pool.
  • kind — job (default) or talent_pool.
  • department_id — assigns the offer to an existing department.
  • on_site / hybrid / remote (one of them required) — the work model shown on the careers site. At least one must be true; none of the three defaults to true.
  • visibility_options — defaults to ["locations_question"], adding a location picker to the application form.
  • locations_question / locations_question_type (single_choice default or multiple_choice) / locations_question_required.
hyreflow tools execute recruitee_create_job --payload '{
  "title": "Senior Platform Engineer",
  "location_ids": [12345],
  "description": "<p>Own the deployment platform.</p>",
  "requirements": "<p>Kubernetes, CI/CD pipelines, five years of platform work.</p>",
  "hybrid": true
}'

The offer id is offer.id; offer.slug is what appears in the careers URL.

Where location_ids comes from

They are numeric Recruitee location ids, and list_locations returns them for free — search by city or name with query and use each match's id. A new account starts with one location; add others under Settings → General → Locations. There's no way to pass a location as a string on create.

Gotchas

  • Recruitee documents no validation-error shape. If a create fails, re-check title, description, requirements, location_ids, and that one of on_site/hybrid/remote is true.
  • kind is the only thing separating a job from a talent pool — read it back before executing.
  • This is a write into the customer's own ATS — confirm the payload before executing.

What creating an offer does NOT do

Recruitee's API accepts none of salary, employment type, category, experience, education, hours, pipeline template, open questions, followers, hiring managers, or status on create — those are read-only on the response and set inside Recruitee. Whether a fresh offer lands as draft or published isn't part of Recruitee's documented contract either.

Publishing it

A created offer is a draft. set_job_state(offer_id) takes it live on the careers site:

hyreflow tools execute recruitee_set_job_state --payload '{"offer_id": 567441}'

state also accepts draft, closed and archived. Recruitee moves an offer with a per-transition endpoint rather than a writable status field, so status stays read-only on the offer itself.

Questions about Recruitee and hyreflow

Can I use Recruitee inside Claude or ChatGPT?

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 Recruitee for you. hyreflow exposes 4 Recruitee actions this way.

Do I need my own Recruitee account to use it with hyreflow?

Yes. Recruitee runs on your own Recruitee account. You connect it to hyreflow once, hyreflow charges no credits for the calls, and Recruitee bills you as before.

What does Recruitee cost through hyreflow?

Recruitee runs on your own Recruitee account: hyreflow charges no credits for it, and Recruitee bills you as before.

How do I connect Recruitee to an AI agent over MCP?

Add the hyreflow MCP server to your assistant and sign in. hyreflow calls the Recruitee API directly and exposes its actions as tools the assistant can run, so there is no separate Recruitee server to install.

Connect hyreflow to your assistant →

Put Recruitee to work from one prompt

Connect hyreflow to Claude or ChatGPT and ask for the outcome. It reads the playbook above before it makes a single call.