Ashby Jobs Scraper avatar

Ashby Jobs Scraper

Pricing

from $0.84 / 1,000 results

Go to Apify Store
Ashby Jobs Scraper

Ashby Jobs Scraper

Jobs from any company's Ashby job board (jobs.ashbyhq.com) via the public Job Posting API: title, department, team, location, remote/hybrid, employment type, salary range and currency, publish date, apply URL and full description. Filter by keyword, department, location, remote.

Pricing

from $0.84 / 1,000 results

Rating

0.0

(0)

Developer

Ibnu Adzim

Ibnu Adzim

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Every open job on any company's Ashby job board — Ramp, Linear, Notion and the thousands of others hosted at jobs.ashbyhq.com/<org> — through Ashby's public Job Posting API: title, department, team, location and address, remote / hybrid / on-site, employment type, salary range with currency and interval, publish date, apply URL and the full description as text and HTML.

HTTP only, no login, no key, no browser. One request per organization returns the whole board.

What it is for

  • Salary datasets — Ashby is the ATS where compensation is a structured field; Ramp publishes a range on 141 of 148 postings.
  • Company watchlists — a list of orgs on a schedule, diff by jobId.
  • Multi-company search — many orgs, one keyword, one dataset.
  • Remote-only slices — remoteOnly uses the board's own flags.

Input

fieldwhat it does
organizationsOrg slugs (ramp) or URLs (jobs.ashbyhq.com/ramp, a job URL under the org).
searchTerms, departments, locations, remoteOnlyLocal filters on the full list (the API has no search).
includeDescriptionOn by default; same response, bigger rows.
maxItems, maxConcurrency, minRequestInterval, proxyConfigurationLimits.

Each org gets a BOARD_SUMMARY with its total, how many rows carry a salary, what the filters dropped, and the board's own department and location vocabularies.

Three things about this API worth knowing before you trust a run

1. There is no pagination, and page parameters are silently ignored

?page=2&limit=5 answers with all 148 Ramp jobs, same as no parameters. A client that walks pages gets the whole board again on every "page". This Actor makes one request per org and applies maxItems locally.

2. Compensation is off unless asked for, and nested three deep when on

Without includeCompensation=true there is no compensation key at all — a scraper that forgets the flag reports "no salaries on Ashby". With it, the numbers live in compensation.compensationTiers[].components[] beside equity and bonus components. The Actor always sends the flag and lifts the first tier's Salary component to salaryMin, salaryMax, salaryCurrency, salaryInterval; the human string ("$211.4K – $290.6K • Offers Equity") is compensationSummary, offersEquity is derived, and the raw object is kept in compensation for boards with several tiers.

3. Titles can carry leading whitespace

" Security Engineer, Cloud" — sorted, grouped or matched raw it becomes a different title. Stripped.

Other things measured

  • An unknown org answers a bare 404 Not Found (text, not JSON). Reported as organization_not_found; the other orgs in the run are unaffected.
  • publishedAt is normalised to UTC (Z).
  • address is {locality, region, country} from the posting's postal address, or null; secondaryLocations is the list of extra offices.
  • No throttling or anti-bot layer; responses up to ~3 MB per board.

Output

  • JOB — jobId, title, url, applyUrl, department, team, employmentType, workplaceType, isRemote, location, address, secondaryLocations, publishedAt, isListed, salaryMin, salaryMax, salaryCurrency, salaryInterval, compensationSummary, offersEquity, compensation, description, descriptionHtml, organization, resultPosition.
  • BOARD_SUMMARY — organization, boardUrl, totalJobsOnBoard, jobsReturned, rowsWithSalary, stoppedReason, filteredOut, departmentsOnBoard, locationsOnBoard.
  • ERROR — invalid_input, organization_not_found, payload_shape_changed, fetch_failed, with detail.

Known limits

  • Salary is what the company chose to publish; boards outside pay- transparency jurisdictions often have none (rowsWithSalary says how many).
  • Filters are substring matches on the board's own words (departmentsOnBoard in the summary is the vocabulary).
  • Unlisted postings are not served by the API and cannot be fetched.