Ashby logo

Job boards & ATS · Live on Apify

Ashby Jobs Scraper: Export Public Ashby Job Boards

Add a known Ashby board name, like ramp. You get each current job as one row with description, location and apply link. Pay is shown only when the employer posts it.

About $0.75 for 1,000 jobs$0.00075 per job + $0.00085 per run. Apify bills you, not us.Free to try: the Apify free plan gives you $5 of usage every month, no credit card needed.

Run it on Apify Opens apify.com, the website where our tools run. Sign up free with Google or email, no card needed.

Apify links on this page are affiliate links. We may earn a commission. You pay the same price. Affiliate disclosure

What you get, for example

boardSlugramp
titleSecurity Engineer, Cloud
departmentEngineering

How to use it: 3 steps

  1. Make a free Apify accountApify is the cloud platform where our tools run. The free plan gives you $5 of usage every month, no credit card needed. You pay Apify, not us.
  2. Paste your input and press StartNo code needed: you fill in a form (the input). It already has a working example. For example: ramp in Ashby boards or job URLs. Each start is one run.
  3. Download the resultsWhen the run ends, the results are in a table (the dataset). Open Output, press Export and pick Excel or CSV. JSON and the API are there too.

This tool is an Apify Actor: a small program that runs on Apify. You can also run it on a schedule, for example every Monday. New to it? Read how it works, step by step and the 8 words you need first.

What it does

Export current public jobs from Ashby job boards as one structured row per job. Get descriptions, locations, apply links and compensation published by the employer. Add a known board such as ramp. The new Input form saves up to 10 jobs for a first run. The applied price is $0.00085 per start at default memory plus $0.75 per 1,000 saved jobs, with platform usage included. Check RUN_SUMMARY for empty or partial results.

Who uses it

Job board owners

Import current jobs from companies that use Ashby.

Recruiters

Study roles and locations at target companies.

Hiring researchers

Compare published pay across known companies.

Price

Pay per event: you pay for each result the tool saves, plus a small start fee for each run. The price includes Apify platform costs. Apify bills you, not us. Prices below are for the Apify free plan.

What you pay forPriceWhen
Useful job row$0.00075One useful job row saved to the default Dataset.
Start fee$0.00085Charged once per run. This tool uses 1 GB of memory or less by default; more memory costs more.

Examples

  • One job: about $0.0016.
  • 1,000 jobs: about $0.75.
  • Every day 100 jobs, for 30 days: about $2.28 a month.

Free to try: the Apify free plan gives you $5 of usage every month, no credit card needed. That is enough for about 6,600 jobs.

Prices checked on 24 October 2026. See the current price on Apify.

Questions

Can it find every company on Ashby?

No. You need to know the board name. It does not search across companies.

Does remote mean fully remote?

Not always. A job can be marked remote and also hybrid. Check both fields.

Does every job show pay?

No. Pay appears only when the employer publishes it.

Do I need an Ashby login?

No. It reads the public job postings.

Does it discover all companies or search all Ashby jobs?

No. Supply the known boards you want. It reads a current snapshot of those boards.

Does every job include pay and all locations?

No. Only employer-published source values are available. Missing values remain null or empty according to the field reference.

Can I monitor changes?

You can compare scheduled snapshots in your own system. There is no built-in delta mode. The same input can return the same jobs on a repeat run; those new saved rows are charged again.

Is an empty run free?

It has no saved-job event charge. An enabled Actor-start event is still charged automatically, even with no matches. Check the current Pricing tab; future announced prices are separate. A partial run is charged for startup and its saved jobs.

Details

Step by step on Apify
  1. Open Input. Keep the board ramp and the new-form limit of 10 jobs.
  2. Choose all for board slugs or board URLs. Use exact only with canonical hosted job URLs.
  3. Click Start.
  4. Open the default Dataset. Check title, location, jobUrl and applyUrl.
  5. Open Key-value store → RUN_SUMMARY to see counts, limits and each input's status.
Use cases
TaskInputKey fieldsNext step
Export a company job boardboards, mode: "all"id, title, department, jobUrlExport the Dataset or store it in your system.
Study roles and locationsfilters.titleContains, filters.locationContainslocation, secondaryLocations, workplaceTypeCompare matching jobs.
Read one known postingmode: "exact", a canonical job URLid, descriptions, applyUrlCheck the current source posting.
Compare published payincludeCompensation: truecompensation, employmentTypeUse only values the employer publishes.
Tips for better results
  • Use the board name from the jobs.ashbyhq.com address.
  • Check workplace type and the remote flag together. They can differ.
  • Read RUN_SUMMARY when the result looks empty.
Limits and good to know
  • Up to 50 input values and 11,446 saved jobs per run
  • Default memory is 512 MB after the resource validation matrix; increase it for larger boards or high concurrency. Data caps and source deadlines do not change
  • Each source response is limited to 64 MiB
  • Each source request has a 30-second timeout and up to three attempts for transient failures
  • Total source work has a 240-second deadline. A longer platform timeout does not extend it
  • A shorter platform timeout reduces source time, with a 15-second reserve for the run summary
  • There is no pagination: the documented endpoint returns a board feed in one response
  • Source order is kept. This Actor does not sort jobs by publication date
Recent updates
  1. Update · 9 October 2026

    • Add platform-managed start pricing at USD 0.00085 per memory multiplier; retain USD 0.00075 per saved row and included platform usage.
    • Validate 512 MB default resources, automatic startup charge and total-charge stop.
    • Replace the README banner with a designed navy/blue jobs-and-export visual.
  2. Update

    • Final certification fixes preserve valid rows when a source response contains malformed jobs, mark duplicate or malformed source rows as partial, and keep invalid-input accounting visible after an output cap.
    • Updated public copy and playbook snapshots for the independent TZ-06 review.
    • Aligned the customer-facing README and publication package with the public Ashby source fields, limits, statuses, sample and support flow.

For developers

Sample result

One result from a real test run, in JSON. Real values change from run to run. In Excel or CSV each field is a column.

one result · JSON
{
  "source": "ashby",
  "boardSlug": "ramp",
  "id": "34413f8d-26bf-4bbc-8ade-eb309a0e2245",
  "title": "Security Engineer, Cloud",
  "department": "Engineering",
  "team": "Backend",
  "location": "New York, NY (HQ)",
  "isRemote": true,
  "workplaceType": "Hybrid",
  "employmentType": "FullTime",
  "isListed": true,
  "publishedAt": "2026-04-07T17:12:35.753Z",
  "jobUrl": "https://jobs.ashbyhq.com/ramp/34413f8d-26bf-4bbc-8ade-eb309a0e2245",
  "applyUrl": "https://jobs.ashbyhq.com/ramp/34413f8d-26bf-4bbc-8ade-eb309a0e2245/application"
}

Use it from code

Actor ID: cliqtomedia/ashby-jobs-scraper. You need your Apify API token from Apify Console → Settings → API & Integrations.

Python · apify-client
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("cliqtomedia/ashby-jobs-scraper").call(run_input={
    "mode": "all",
    "boards": [
        "ramp"
    ]
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)
cURL
curl -X POST "https://api.apify.com/v2/acts/cliqtomedia~ashby-jobs-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"mode": "all", "boards": ["ramp"]}'
LangChain · langchain-apify
# pip install langchain-apify
# set APIFY_TOKEN in your environment
from langchain_apify import ApifyActorsTool

tool = ApifyActorsTool("cliqtomedia/ashby-jobs-scraper")
result = tool.invoke({"run_input": {"mode": "all", "boards": ["ramp"]}})
print(result)

The cURL call waits for the results, up to 300 seconds. For longer runs, start a run (/runs) and get the results with a webhook or by checking the run. Apify API docs. LlamaIndex, MCP for AI agents and the JavaScript client: AI agents & MCP.

Data fields (22)
FieldType
sourcestring
boardSlugstring
idstring
titlestring
departmentstring
teamstring
locationstring
workplaceTypestring
employmentTypestring
isRemoteboolean
isListedboolean
publishedAtstring
jobUrlstring
applyUrlstring
descriptionPlainstring
compensationobject
boardUrlstring
descriptionHtmlstring
secondaryLocationsarray
addressobject
sourceApiVersionstring
collectedAtstring
Input settings (8)

The main fields of the input form. With the API you send them as JSON.

SettingName in the APITypeExample value
Modemodestring"all"
Ashby boards or job URLsboardsarray["ramp"]
Include published compensationincludeCompensationbooleantrue
Include direct-only postingsincludeUnlistedbooleanfalse
Local filtersfiltersobject{}
Maximum rows per boardmaxResultsPerBoardinteger
Maximum output rowsmaxOutputItemsinteger10
Board concurrencyconcurrencyinteger4

Use cases with this tool

Each guide shows all the steps and the other tools.

Start on Apify

Make a free Apify account: you get $5 of free usage every month. Missing a tool? Suggest it. We read every idea, but we do not promise to build it.

Apify links on this page are affiliate links. We may earn a commission. You pay the same price. Affiliate disclosure