Ashby Jobs API Scraper avatar

Ashby Jobs API Scraper

Pricing

from $1.00 / 1,000 ashby job results

Go to Apify Store
Ashby Jobs API Scraper

Ashby Jobs API Scraper

Fetch public Ashby job postings across company boards with full descriptions, locations, departments, remote status, compensation, and apply URLs.

Pricing

from $1.00 / 1,000 ashby job results

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Fetch public job postings from one or more Ashby-hosted job boards and return normalized, filterable records for recruiting research, job alerts, market analysis, and data pipelines. The Actor uses Ashby's official public Job Postings API; it does not require cookies, login credentials, or a browser.

What it extracts

Each dataset row represents one currently published and listed Ashby job:

FieldMeaning
jobId, jobBoardStable Ashby posting ID and organization board name
title, department, teamRole and organization classification
employmentType, workplaceType, isRemoteEmployment and workplace arrangement
location, secondaryLocationsPrimary and alternate displayed locations
city, region, countryStructured primary postal location when provided
publishedAtAshby publication timestamp
jobUrl, applyUrlPublic description and application links
descriptionPlain, descriptionHtmlFull plain description and optional original HTML
compensationSummaryEmployer-provided public compensation summary
salaryMin, salaryMax, salaryCurrency, salaryIntervalNormalized first salary summary component when disclosed
source, scrapedAtProvenance and extraction timestamp

Missing optional source fields are returned as null; lists keep a stable array shape. The OUTPUT key-value record reports board success/failure counts, jobs received, filters, duplicates, warnings, and whether maxResults stopped the run.

When to use it

Use this Actor when you know one or more organizations that host careers pages at jobs.ashbyhq.com. It is useful for monitoring openings, building job-search datasets, comparing hiring activity, researching remote roles, or feeding a workflow or AI agent with consistent job records.

Do not use it to discover every company using Ashby, retrieve private/draft jobs, submit applications, access candidate data, or interact with Ashby's authenticated recruiting API. Unlisted postings are intentionally excluded even if an upstream response contains them.

Input

jobBoards is required. Each entry may be the final board name or the full organization board URL:

{
"jobBoards": ["Ashby", "https://jobs.ashbyhq.com/ramp"],
"keyword": "engineer",
"locations": ["United States", "Remote"],
"departments": ["Engineering"],
"remoteOnly": true,
"publishedAfter": "2026-01-01",
"includeCompensation": true,
"includeDescriptionHtml": false,
"maxResults": 100,
"maxConcurrency": 5
}

Text filters are case-insensitive substring matches. Multiple entries in one filter use OR logic; separate filters combine with AND logic. For example, two locations plus one department keep jobs in either location that also match the department. publishedAfter accepts an ISO 8601 date or timestamp.

Ashby's public endpoint returns a whole board in one response, so there is no upstream pagination. maxResults caps the unique records written across all requested boards. Requests use bounded concurrency, a 30-second timeout, and up to three attempts for rate limits, server errors, and transient network failures.

Output example

{
"jobId": "7458d4e9-da2e-47bd-98cb-adfda43d42b2",
"jobBoard": "Ashby",
"title": "Engineering Manager - EU",
"department": "Engineering",
"team": "EMEA Engineering",
"employmentType": "FullTime",
"location": "Remote - European Union",
"secondaryLocations": ["Spain", "Italy", "Germany"],
"city": null,
"region": null,
"country": "European Union",
"isRemote": true,
"workplaceType": "Remote",
"publishedAt": "2024-03-04T14:29:08.532+00:00",
"jobUrl": "https://jobs.ashbyhq.com/Ashby/7458d4e9-da2e-47bd-98cb-adfda43d42b2",
"applyUrl": "https://jobs.ashbyhq.com/Ashby/7458d4e9-da2e-47bd-98cb-adfda43d42b2/application",
"descriptionPlain": "Full public job description...",
"descriptionHtml": null,
"compensationSummary": "€110K – €185K • Offers Equity • Offers Bonus",
"salaryMin": 110000,
"salaryMax": 185000,
"salaryCurrency": "EUR",
"salaryInterval": "1 YEAR",
"source": "api.ashbyhq.com/posting-api",
"scrapedAt": "2026-09-05T00:00:00.000Z"
}

Pay per event

EventPriceTrigger
Actor start$0.00005One run starts
Ashby job result$0.001One validated job is written to the default dataset

A run returning 100 jobs costs approximately $0.10005 in event charges. A valid empty run costs only the start event. Prices are all-in unless the live Apify pricing panel explicitly says otherwise. Use the platform's maximum total charge setting and maxResults for budget control.

Reliability and failure behavior

The Actor calls the documented first-party endpoint directly. 404 responses are reported as invalid/missing board warnings. 429, 5xx, timeouts, and transient network errors receive bounded retries. If some boards fail, valid records from healthy boards are preserved and the run is marked PARTIAL. If every board fails, the run is marked FAILED; no fabricated dataset rows or result events are produced. A healthy board with no jobs matching the filters is reported as EMPTY.

Responsible use

Only public job-posting data is collected. Respect Ashby's terms, the hiring organization's policies, applicable privacy law, and reasonable request rates. Job descriptions may contain names, email addresses, or other personal data supplied by employers; collect and retain only what your lawful purpose requires. The Actor does not bypass authentication, CAPTCHAs, access controls, or application workflows.

For support, include the run ID, redacted input, and the OUTPUT summary. Do not include candidate data, API keys, cookies, or other secrets.