Ashby Jobs API: Job Postings from 2,168 Companies avatar

Ashby Jobs API: Job Postings from 2,168 Companies

Pricing

from $1.10 / 1,000 job postings

Go to Apify Store
Ashby Jobs API: Job Postings from 2,168 Companies

Ashby Jobs API: Job Postings from 2,168 Companies

Pull open job postings from any company on Ashby, 2,168 searchable by name, with compensation range, country, department, work model and seniority. Filter by keyword, location, remote and date. ATS jobs API for job boards, recruiting and sales signals. No login, no proxy, pay per job.

Pricing

from $1.10 / 1,000 job postings

Rating

0.0

(0)

Developer

Constancio Dev

Constancio Dev

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

an hour ago

Last modified

Share

Monitor open jobs from 2,168 companies on Ashby, with salary range, country, department and seniority. Paste a job board URL, a board slug or just a company name (OpenAI, Snowflake, Airwallex, Harvey and Mistral AI...), add a keyword or a location, and receive title, full description, posting date, location, work model, pay range and seniority for each job. You pay only for the jobs you receive.

Built by Constancio Dev, a small engineering studio focused on data pipelines and B2B automation. constanciodev.com.br

What you get

  • 2,168 companies searchable by name. The built-in index has 2,168 validated Ashby boards (checked against the public Ashby API on 22/10/2026). Type a company name, paste a board URL such as https://jobs.ashbyhq.com/openai or use the slug (openai).
  • Clean, structured fields. Title, full description as plain text, publication date, location, ISO country code, US or Brazilian state, department, employment type, salary range and currency, seniority and years of experience when the posting states them.
  • Filters that save money. Keywords (title), locations, remote only and posted within the last N days run before delivery, so jobs you filter out cost nothing.
  • No login, no browser, no proxy. It reads the same public Ashby job board API that careers pages use, with 512 MB of memory.
  • Salary beyond the structured field. When the structured range is missing, the Actor parses the description (USD, EUR, GBP, CAD, BRL and 30 other currencies).

Example output

One dataset item per job. Real item from a local test run on 22/10/2026 (description shortened, a few fields omitted):

{
"id": "harvey:04e17f81-d0a7-4f83-8526-ec4c9532ddcc",
"title": "Senior Software Engineer, Frontend",
"company": "Harvey",
"company_slug": "harvey",
"url": "https://jobs.ashbyhq.com/harvey/04e17f81-d0a7-4f83-8526-ec4c9532ddcc",
"location": "San Francisco",
"country": "US",
"state": null,
"work_model": "hybrid",
"employment_type": "Full-time",
"department": "Engineering",
"posted_at": "2024-03-08T01:46:09.108000+00:00",
"salary_min": 200000,
"salary_max": 260000,
"salary_currency": "USD",
"salary_period": "year",
"seniority": "senior",
"years_experience": null,
"description": "Why Harvey\n\nAt Harvey, we're transforming how legal and professional services operate. ..."
}

The real item also has job_id, board_url and scraped_at. A field the posting does not support is null, never guessed. Export the dataset as JSON, CSV, Excel or through the Apify API.

FieldMeaning
idBoard slug plus Ashby job id. Stable across runs, good for deduplication.
company, company_slug, board_urlWho is hiring and where the job came from.
urlPublic job page.
location, country, stateLocation as published, ISO country code, US or Brazilian state.
work_modelremote, hybrid or onsite, as Ashby publishes it in workplaceType (or isRemote).
employment_typeEmployment type, for example Full-time or Contract.
departmentDepartment or team.
posted_atPublication date (ISO 8601).
salary_min, salary_max, salary_currency, salary_periodAshby compensation range when the employer publishes it, otherwise parsed from the description.
seniority, years_experienceFrom the title and the description.
descriptionFull description as plain text.

Input examples

1. Fresh engineering jobs for a job board or newsletter

{
"companies": ["OpenAI", "Snowflake", "Harvey"],
"keywords": ["engineer", "data"],
"locations": ["United States", "Remote"],
"postedWithinDays": 14,
"maxItems": 200
}

2. Remote jobs only, without the long descriptions

{
"companies": ["https://jobs.ashbyhq.com/openai", "Harvey"],
"remoteOnly": true,
"includeDescription": false,
"maxItems": 100
}

3. Daily hiring signal for sales (schedule it once a day)

{
"companies": ["OpenAI", "Snowflake", "Harvey"],
"keywords": ["head of", "director", "account executive"],
"postedWithinDays": 1,
"includeDescription": false
}

Input reference

FieldWhat it does
companiesAshby board URLs, slugs like openai, or company names from the index.
keywordsKeep jobs whose title contains at least one of these words. Empty keeps every job.
locationsKeep jobs whose location contains one of these, or whose country matches (Texas, Germany, US).
remoteOnlyKeep only jobs whose work model Ashby publishes as remote.
postedWithinDaysKeep only jobs posted in the last N days. Jobs with no date are left out when set.
maxItemsStop after this many jobs in total (default 50). This is also your cost cap.
maxJobsPerCompanyJobs per board after the filters. 0 uses maxItems.
includeDescriptionInclude the full description as plain text (default: true).

Where to find the slug: open the company's careers page and click any job. If the address (or the "Apply" link) goes to jobs.ashbyhq.com/<slug>, the part right after the host is the slug.

Pricing

Pay per event: a price per job delivered to the dataset, which depends on your Apify plan, plus $0.00005 per GB of memory when the run starts.

Apify planPrice per 1,000 jobs
Free$1.80
Starter (Bronze)$1.60
Scale (Silver)$1.10
Business (Gold) and above$1.10

Jobs removed by your filters cost nothing. maxItems caps the cost of every run (default 50), and a run also stops when it reaches the maximum cost per run you set in Apify.

FAQ

Is it allowed to collect Ashby job postings? The Actor only reads job postings that companies publish openly through Ashby's public job board API, without login, and respects robots.txt. Check the terms that apply to your own use of the data.

How do I get only new jobs every day? Schedule the Actor with postedWithinDays: 1 and your keywords. This Actor has no monitor mode that remembers earlier runs; the ATS Jobs API Actor has one (see below).

A company name is not found. What now? Paste the board URL or the slug instead. The log lists every input that could not be read or has no public board, and the run continues with the rest.

Can I get jobs from other ATS platforms? Yes. See the other Actors by Constancio Dev: Greenhouse, Lever and Workday, and ATS Jobs API, which covers all of them in one output format, with seniority, area and remote-from-Brazil filters and a monitor mode.

Something is wrong or missing? Open an issue on the Actor's Issues tab. It is read and answered, usually within a day.

Limits

  • Only public boards. Jobs that a company keeps off its public Ashby board are not covered. The index is a snapshot of 22/10/2026; a company that moved to another ATS shows up as a failure line in the log, and the run continues with the rest.
  • Work model depends on the employer. work_model comes from the workplaceType field, which companies do not always fill. A job can stay listed for a long time: check posted_at.
  • Seniority is read from the title (and from the years of experience in the description when the title has no level). When neither says it, it is null. This Actor does not classify area or remote-from-Brazil; the ATS Jobs API Actor does.
  • Salary only when it is written, in the structured field or in the description text. Many postings have none.
  • No contact fields. The output has no recruiter name, e-mail or phone field.
  • Polite crawler. It identifies itself, respects robots.txt and paces its requests.