---
title: "Scrape Wellfound startup jobs"
method: POST
path: "/jobs/wellfound"
tags: ["Plugins"]
---

# Scrape Wellfound startup jobs

`POST /jobs/wellfound`

## Request

- Base URL: `https://api.scrapeunblocker.com`
- URL: `https://api.scrapeunblocker.com/jobs/wellfound`
- Auth: API key in header `x-scrapeunblocker-key`

Searches Wellfound (formerly AngelList Talent) startup jobs by `role`, `location` or remote `role` (or a Wellfound search `url`) and returns `jobs`: `title`, `url`, the full `description`, `compensation` with parsed `salary` (`min`, `max`, `currency`) and `equity` (`min`, `max` in %), `jobType` (`full-time`, `part-time`, `contract`, `internship`), `locations`, `remote`, `remotePolicy` (`ONSITE`, `REMOTE`, `ONSITE_OR_REMOTE`, `HYBRID`), `acceptedRemoteLocations`, `yearsExperienceMin`/`Max`, `postedAt` and the hiring `company` (`name`, `slug`, `url`, `tagline`, `companySize`, `stage`, `badges`). A listing page holds 20 companies with up to 3 matching jobs each; by default the call returns one page, with `max_results` it pages through up to that many jobs. Totals: `totalJobs`, `totalCompanies`, `pageCount`, `nextPage`. `mode=job&job=<url>` returns one job in full: description (text and HTML), salary with period, the same `jobType` and `remotePolicy` values (the page's wording in `remotePolicyText`, plus `wfhFlexible`), skills, `visaSponsorship`, `relocation`, `hiresRemotelyIn`, preferred timezones, hiring contact, posting date, and the company's size, markets, badges, funding and founders. Billed one unit per page fetched (`pagesFetched`).

## Query parameters

- `mode` string: 'search' (default): job listings by role / location / remote role. 'job': one job page in full.
- `role` string, nullable: Role to search, as text or Wellfound slug: 'software engineer', 'product-manager', 'data-scientist'.
- `location` string, nullable: Location, as text or Wellfound slug: 'new york', 'san-francisco', 'london', 'berlin'.
- `remote` boolean: Remote jobs only (needs role, no location).
- `url` string, nullable: A Wellfound search URL instead of role / location / remote: https://wellfound.com/role/l/software-engineer/san-francisco, /role/r/<role>, /location/<location>.
- `job` string, nullable: mode=job: the job URL (https://wellfound.com/jobs/4787364-software-engineer) or '<id>-<slug>', as returned in `jobs[].url` by mode=search.
- `page` integer: 1-based listing page to start from (1-500); use `nextPage` of a previous response to continue.
- `max_results` integer, nullable: How many jobs to collect across pages (1-500). Default: the whole first page (20 companies with up to 3 jobs each, usually 30-60 jobs). Each page fetched is one billed unit.
- `proxy_country` string, nullable: Proxy country the request is sent from (ISO-2, e.g. 'US', 'DE'). Leave blank for the country chosen for the site.

## Response `200`

JSON with a `jobs` array, totals and `nextPage` (or `job` with mode=job).

- unknown

## Other responses

- `400`: Invalid parameters.
- `404`: Wellfound has no such role / location listing, or no such job.
- `422`: Validation Error
- `502`: Blocked by Wellfound on every attempt, no page returned, or Wellfound did not answer in time.

---

[API](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api.md) · [All operations](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api/revisions/c02f1254cc47?raw)
