Ashby Jobs API: Jobs with Compensation from Any Ashby Board
Pricing
from $1.50 / 1,000 jobs
Ashby Jobs API: Jobs with Compensation from Any Ashby Board
Ashby jobs API: every open job on any Ashby board (jobs.ashbyhq.com) with full description and compensation: salary min/max, equity, commission and per-tier ranges. Bulk board URLs or slugs; keyword, location, remote, type and date filters.
Pricing
from $1.50 / 1,000 jobs
Rating
0.0
(0)
Developer
Ailu Studio
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Security
Limited permissionsShare
Ashby Jobs API: every job with compensation (salary range, equity, tiers) from any Ashby board
Ashby hosts the careers pages of many fast-growing companies (OpenAI, Ramp, Notion, Linear and many more) at jobs.ashbyhq.com/<slug>. This Actor reads Ashby's public posting API with compensation turned on and returns every listed job as a clean row: title, department, team, all locations, workplace type, employment type, publish date, the full description and the published compensation: salary min/max/currency/interval, the compensation summary ("$160K – $230K • Offers Equity • Offers Commission"), equity/commission/bonus flags and every compensation tier (for example one range per location zone). Paste any number of board URLs or slugs. It reads the boards you name live (one request per board), needs no API key, and costs $1.50 per 1,000 jobs versus $2.00–$3.00 for the most-used Ashby Actors in the Store.
Use cases
- Salary benchmarking: structured, employer-published pay ranges by role, level and location zone.
- Job aggregation: pull startup jobs from many Ashby boards into one feed or job board.
- Hiring signals: track which teams and locations a company is hiring for, week by week.
- Candidate alerts: run daily with
postedWithinDays: 1, a keyword list andremoteOnly. - AI matching: descriptions arrive as plain text, ready for embedding.
Input
| Field | Default | Meaning |
|---|---|---|
boards | ["ramp", "notion"] | Ashby board URLs (jobs.ashbyhq.com/<slug>, a job URL) or bare slugs. |
keywords | – | Keep jobs whose title or description contains any of these words. |
locations | – | Keep jobs whose primary/secondary location or country contains any of these strings. |
remoteOnly | false | Only jobs Ashby flags as remote. |
employmentType | – | Any of FullTime, PartTime, Intern, Contract, Temporary (spelling-insensitive). |
postedWithinDays | 0 | Only jobs published in the last N days (0 = off). |
descriptionFormat | text | text, html, both or none. |
maxItems | 200 | Cap on returned jobs for the whole run. |
{ "boards": ["https://jobs.ashbyhq.com/openai", "ramp", "linear"], "keywords": ["engineer"], "locations": ["San Francisco", "Remote"], "employmentType": ["FullTime"], "postedWithinDays": 30, "maxItems": 500 }
Output
| Field | Type | Meaning |
|---|---|---|
id, sourceId | string | ashby:<slug>:<jobId> and the Ashby job UUID. |
company, companySlug | string | Company name from the board page and the board slug. |
title, department, team | string | Job title and organisation. |
locations, country | string[], string | Primary + secondary locations; country of the primary address. |
isRemote, workplaceType, employmentType | boolean, string, string | Ashby's remote flag, onsite/hybrid/remote, Full Time/Intern/... |
salaryMin, salaryMax, salaryCurrency, salaryInterval, salaryRaw | number, number, string, string, string | Overall salary range across tiers; null when not published. |
compensationSummary | string | Ashby's compensation summary line. |
offersEquity, offersCommission, offersBonus | boolean | Compensation components (null when nothing is published). |
compensationTiers | object[] | Each tier: title, summary, salaryMin, salaryMax, salaryCurrency, salaryInterval. |
postedAt, updatedAt | ISO 8601 | Publish time (UTC). |
url, applyUrl | string | Posting and application page. The Actor never applies. |
descriptionText, descriptionHtml | string | Full description in the requested format(s). |
fetchedAt | ISO 8601 | Run time. |
{"id": "ashby:ramp:4745807e-82f4-4b1a-857c-dc8dadc73076", "sourceId": "4745807e-82f4-4b1a-857c-dc8dadc73076", "source": "ashby", "companySlug": "ramp", "company": "Ramp","title": "Credit Risk Associate", "department": "Risk", "team": "Risk", "locations": ["New York, NY (HQ)"], "country": "USA","isRemote": true, "workplaceType": "hybrid", "employmentType": "Full Time", "postedAt": "2026-08-12T20:22:32.685Z", "updatedAt": null,"url": "https://jobs.ashbyhq.com/ramp/4745807e-82f4-4b1a-857c-dc8dadc73076", "applyUrl": "https://jobs.ashbyhq.com/ramp/4745807e-82f4-4b1a-857c-dc8dadc73076/application","compensationSummary": "$108K – $200K • Offers Equity", "offersEquity": true, "offersCommission": false, "offersBonus": false,"compensationTiers": [{ "title": null, "summary": "$108K – $200K • Offers Equity", "salaryMin": 108000, "salaryMax": 200000, "salaryCurrency": "USD", "salaryInterval": "year" }],"salaryMin": 108000, "salaryMax": 200000, "salaryCurrency": "USD", "salaryInterval": "year", "salaryRaw": "$108K - $200K","descriptionText": "ABOUT RAMP\n\nRamp is building the smart infrastructure for finance teams, …", "descriptionHtml": null, "fetchedAt": "2026-11-04T11:35:55.991Z"}
How it works and limits
- Per board:
GET api.ashbyhq.com/posting-api/job-board/<slug>?includeCompensation=true(all jobs, descriptions and compensation in one response) plus one request to the public board page to read the company display name. Requests are spaced 300 ms per host and retried on 429/5xx. - Unlisted jobs (
isListed: false) are skipped. Compensation appears only when the employer publishes it (on 2026-11-04: Ramp 162 of 168 jobs, OpenAI 645 of 812, Notion none). salaryMin/salaryMaxare the overall range across tiers; per-zone ranges are incompensationTiers.- Ashby's
isRemoteflag can be true for hybrid jobs that also accept remote candidates; useworkplaceTypewhen you need the strict value. - Boards are read in the order given; once
maxItemsis reached the remaining boards are skipped and listed in the run summary (OUTPUTrecord). - Not covered: private/confidential postings, application forms, candidate data.
Pricing
Pay per result: $1.50 per 1,000 rows (job event). Platform usage is billed separately by Apify. Removed/free rows are not charged.
Legal
Not affiliated with Ashby, Inc. or the employers. Uses the public Ashby Job Postings API only. Data licence/terms: https://developers.ashbyhq.com/docs/public-job-posting-api. Job content belongs to the employers who published it.
FAQ
Where is the slug? In the careers URL: https://jobs.ashbyhq.com/<slug>. Companies that embed Ashby on their own site still have this URL; the "Apply" link usually shows it.
Why is compensation empty for some jobs? The employer did not publish it on Ashby. The Actor never estimates salaries.
Can I get only new jobs? Use postedWithinDays: 1 on a daily schedule, or the Job Change Tracker Actor for new/updated/removed detection.
How big can a board be? Large boards (800+ jobs) still come back in one response; raise maxItems to export all of them.