Workable Jobs Scraper: apply.workable.com Company Boards
Pricing
Pay per event
Workable Jobs Scraper: apply.workable.com Company Boards
Scrape open jobs from Workable company boards (apply.workable.com): title, company, location, workplace type, employment type, posting date, apply URL, salary where stated and full description. Filter by keyword, location and date. Pay per result.
Pricing
Pay per event
Rating
0.0
(0)
Developer
NanoScrape
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Get the open jobs of any company that hires through Workable. Paste a company board URL such as https://apply.workable.com/unilabs (or just the account name) and receive title, location, department, employment type, remote flag, posting date and apply URL as clean dataset rows.
What you can do with it
- Pull all open roles of a list of target companies for lead generation or recruiting research.
- Track hiring over time: run it on a schedule with
postedWithinDaysandsortBy: newestto see only new postings. - Feed a job board or alert system with the openings of the companies you follow.
- Filter by keyword in the title, by location or by country.
What you get
One dataset row per job. Duplicates are removed before anything is charged, so the number of rows is the number of results you pay for.
| Field | Description |
|---|---|
id | Job id, unique across boards |
ats_job_id | The id the portal itself uses for the posting |
title | Job title |
company | Account name of the board (the part after apply.workable.com/) |
ats_platform | workable |
location, city, country | Location text as posted, the city and the two-letter country code when they can be read from it |
department | Department or team, when the board states one |
employment_type | Full-time, part-time, contract and so on, when stated |
remote | Remote flag, when the board states one |
workplace_type | on_site, hybrid or remote, as the posting states it; empty when it does not say |
additional_locations | The other locations of a posting that lists several (for example Gauteng, South Africa); location stays the first one |
description | Full job description as HTML, with the requirements and benefits sections when the posting has them. Empty only when includeDescription is off or the posting page could not be read |
apply_url, job_url | Link to the posting and to its application page |
created_at | Posting date |
language | Language of the posting text |
scraped_at | Time of the run |
Salary fields (salary_text, salary_min, salary_max, salary_currency, salary_period, salary_source) are filled only when the posting states a salary (the salary range of the job, or a range in its description). They are never estimated.
Input
| Field | Description |
|---|---|
companies | Workable board URLs or bare account names (unilabs is https://apply.workable.com/unilabs). Strings, {"url": "..."} objects, a single string, or several separated by commas or new lines. Empty = one sample board. |
keywords | Keep only jobs whose title matches at least one keyword. They filter the jobs of the boards you list; they do not search other companies. |
location | Keep only jobs in this city, region or country (London, Germany, DE). |
countries | ISO-2 codes such as ["US", "CA"]: keep only jobs located in these countries (jobs whose country cannot be determined are left out). |
includeRemoteWithoutRegion | Only with a country filter: also keep remote jobs that state no country or region (they may not be open to applicants in that country). Default false. |
postedWithinDays | Drop jobs older than this many days. Jobs without a posting date are kept. |
sortBy | newest (default) or relevance (the portal's own order). |
maxJobsPerCompany | Cap per board, counted after the filters. 0 = all. Default 50. |
maxResults | Cap for the whole run. The run stops cleanly when it is reached. 0 = no limit. Default 100. |
includeDescription | Include the description HTML where the board provides one. Default true. |
Example: one board
{"companies": ["https://apply.workable.com/unilabs"],"maxResults": 20}
Example: several boards with filters
{"companies": ["https://apply.workable.com/unilabs","ems-group"],"keywords": ["engineer", "data"],"postedWithinDays": 30,"sortBy": "newest","maxJobsPerCompany": 25}
Only Workable boards are read. A URL of any other job system (Greenhouse, Lever, Workday and so on) is skipped with a log line that names the actor to use, and is never charged.
Supported URL formats
- Board:
https://apply.workable.com/{account}(with or without a trailing slash, or withouthttps://). - Posting:
https://apply.workable.com/{account}/j/{SHORTCODE}/is reduced to its board; the whole board is read. - Bare account name:
{account}.
Output
{"id": "workable-3c9d41aa-8A2F1B7C3D","ats_job_id": "8A2F1B7C3D","title": "Senior Backend Engineer","company": "unilabs","ats_platform": "workable","location": "London, England, United Kingdom","city": "London","country": "GB","department": "Engineering","employment_type": "Full-time","remote": false,"apply_url": "https://apply.workable.com/unilabs/j/8A2F1B7C3D/","job_url": "https://apply.workable.com/unilabs/j/8A2F1B7C3D/","language": "en","created_at": "2026-10-20T09:12:44.000Z","scraped_at": "2026-10-25T09:00:00Z"}
The row above is illustrative; values depend on the board. created_at is the posting date the portal reports.
Pricing
Pay per result. You pay the platform start fee per run and then only for the jobs you receive. Filtered-out and duplicate jobs are never charged. The pricing box on the actor page always shows the current rates.
Use with AI Agents (MCP)
Connect this actor to any MCP-compatible AI client, such as Claude Desktop, Claude.ai, Cursor, VS Code, LangChain, LlamaIndex, or custom agents.
Example prompts once connected:
"Use
workable-jobs-scraperfor https://apply.workable.com/unilabs and list the open roles with title, location and apply URL."
"Use
workable-jobs-scraperfor the account names unilabs and ems-group and return the roles posted in the last 30 days."
Configure the MCP server with the Workable Jobs Scraper preconfigured at mcp.apify.com?tools=santamaria-automations/workable-jobs-scraper:
{"mcpServers": {"apify": {"command": "npx","args": ["mcp-remote","https://mcp.apify.com/?tools=santamaria-automations/workable-jobs-scraper","--header","Authorization: Bearer <YOUR_API_TOKEN>"]}}}
See the auto-generated API tab on the actor page for language-specific examples (cURL, JavaScript, Python, and more).
FAQ
How do I find a company's Workable board URL?
Open the company's careers page and look at the address of a job: if it starts with apply.workable.com/, the part right after it is the account name and https://apply.workable.com/{account} is the board URL. You can pass either the URL or just the account name.
Can I search by keyword across all Workable companies? No. Give the board URL or account name of each company. Keywords only filter the titles of the jobs of the boards you list.
What if a board is not found?
The run continues with the other boards. The run status line names the board and the reason (for example board_not_found), and nothing is charged for it.
Why is the description empty?
The description is read from each job's own page, so it is empty when includeDescription is off, or when that page could not be read. The row still has title, location, department, employment type, date and the apply URL, and is charged the same.
Why did I get fewer jobs than maxJobsPerCompany?
The caps apply after your filters, and a board can simply have fewer open jobs. The boards are read in the order you list them, and the run stops once maxResults is reached.
Limits
- Boards only; no company-name search across Workable.
- Salary fields are filled only when the posting states a salary.
- Descriptions depend on what the board provides.
Related actors
- Career Site Jobs Scraper: the same engine for 40+ job systems (Workday, SmartRecruiters, Personio and more).
- Greenhouse, Lever & Ashby Jobs Scraper: jobs of any Greenhouse, Lever or Ashby board, with keyword search across companies.
- Workday Jobs Scraper: jobs of any Workday job site.
- Website Job Extractor: any company website to its careers page, job system and jobs.
Support
- Questions or issues? Email contact@nanoscrape.com, we typically reply within 6 hours, or open a ticket in the Issues tab on the actor page.
- Need a scraper for a job board we don't cover yet? Email contact@nanoscrape.com with the target site and your rough usage volume.