find your role first.

Guide

Is there an API for Greenhouse job postings across companies?

Is there an API for Greenhouse job postings across companies? Yes: Find your role first is a feed your AI agent can search across many Greenhouse career boards at once, instead of calling each company's board separately. It reads Greenhouse boards (plus Lever and Ashby, 8,519 boards in total) every two hours, and your agent can limit any search to Greenhouse with one filter.

If you landed here looking for "the Greenhouse API", the first section explains what Greenhouse actually offers and why it gets awkward past a handful of companies.

What is the Greenhouse job board API?

Greenhouse is an applicant tracking system. A lot of companies use it to host their public careers page, the list of openings you see when you click "Careers" on a startup's site.

Each of those boards is public, and Greenhouse has a public job board API for reading them. It's organized per company. You call it with a company's board token, something like boards-api.greenhouse.io/v1/boards/<token>/jobs, and you get that one company's open roles back.

That's great when you already know the company. It's less great when your question is "which Greenhouse companies posted a data engineer role since yesterday?"

Why is it hard to search Greenhouse jobs across many companies?

The public board API answers one board per call, so covering many companies means you need two things first. A list of board tokens, and a schedule for checking them.

Honestly, the list is the hard part. Tokens don't always match the company's name. Companies start hiring, pause, or move to a different system, and the list drifts. Then there's the history: to know what's new, you have to remember what each board looked like at the previous check, and notice when a role disappears so you can mark it closed.

Find your role first keeps that list and runs the checks. Every board is checked every two hours, and the checks are spread out across that window, so new roles land continuously. Dozens every hour.

How do I search only Greenhouse jobs?

Use the source filter. search_jobs takes source, and gh means Greenhouse. You don't need to remember that, though. Just say it in the prompt:

Search Greenhouse boards only for analytics engineer roles discovered since yesterday. Show company, title, location and the apply link.
Find Greenhouse roles with "designer" in the title at these companies: [paste your list]. If a company doesn't come back, tell me.
List Greenhouse roles in Toronto published in the last three days. Group them by company.

That second prompt matters more than it looks. A named company that comes back empty may host its board somewhere other than Greenhouse, or sit outside the boards the feed reads. You want the agent to say so out loud. Drop the source filter and it searches Lever and Ashby boards too.

What comes back for each Greenhouse role?

A short record, the same shape for every source:

There's no job description text. Your agent opens the original posting with its own web tool when a role looks worth reading. That keeps search responses small, and the agent reads the version the company is maintaining right now.

The two dates earn their place. A board can show an older published date on a role that only just went live, so "discovered since yesterday" is usually the better question for anything new.

Should I poll the Greenhouse API myself or use a feed?

To be fair to the do it yourself route: if you care about fifteen companies, write the script. Grab their board tokens, call the API on a schedule, diff the results. It's an afternoon of work and it's yours.

The feed makes sense when the list gets long, when you want Lever and Ashby in the same query, or when you'd rather your agent just ask a question without you owning a scraper. It also saves you from inventing a way to pay for repeat reads. Here a role you've already seen that month is free to read again, and a search that finds nothing is free too.

One real limit. It only covers boards on Greenhouse, Lever and Ashby. A company on any other system won't be in it.

How do I keep watching Greenhouse boards for new roles?

For a standing check, get_changes returns new, updated, reopened and closed roles since a saved cursor. Ask your agent to save the cursor after each run, and the next run only covers what changed. get_job refreshes a single role, which is handy right before you apply, to confirm it's still open. get_usage shows your remaining allowance and doesn't count against it.

There's a REST API as well, if you'd rather call it from your own code.

How do I set up the Greenhouse feed in Claude Code or Codex?

Sign in with Google at findyourrolefirst.click/account, subscribe, create an agent key, then paste one line.

Claude Code:

claude mcp add --transport http --scope user jobfeed https://findyourrolefirst.click/mcp --header 'Authorization: Bearer YOUR_API_KEY'

Codex CLI:

export JOBFEED_API_KEY=YOUR_API_KEY
codex mcp add jobfeed --url https://findyourrolefirst.click/mcp --bearer-token-env-var JOBFEED_API_KEY

Any other HTTP MCP client: URL https://findyourrolefirst.click/mcp, header Authorization: Bearer YOUR_API_KEY.

It's $9 a month for 3,000 new roles, up to 1,000 a day. Cancel anytime, refund within 3 days. It won't apply to jobs for you.

Questions

Does Greenhouse have a public jobs API?

Yes. Greenhouse has a public job board API, and each company's board can be read with its board token. It's organized one company at a time, so searching across many Greenhouse companies means keeping your own list of boards or using a feed that already does.

Can I search only Greenhouse jobs in Find your role first?

Yes. search_jobs has a source filter, and gh limits results to Greenhouse boards. In practice you just tell your agent "Greenhouse only" and it sets the filter.

How fresh are the Greenhouse roles?

Every board is checked every two hours, with checks staggered so new roles arrive through the day. Each role also carries its first discovery time, so your agent can ask for anything discovered since a given moment.

Does the feed include the job description?

No. It returns the title, company, location, dates, closed status and the links to the posting and application. Your agent reads the description on the company's own page.

What if a company I want isn't there?

It may use a system other than Greenhouse, Lever or Ashby, or its board may not be among the 8,519 the feed reads. Ask your agent to tell you which named companies returned nothing so you can check them yourself.

Try it in your agent

$9 a month. Sign in with Google, subscribe, then paste one line into Claude Code or Codex. Cancel anytime, refund within 3 days.

Get started