Workable Job Scraper πŸ”₯ avatar

Workable Job Scraper πŸ”₯

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Workable Job Scraper πŸ”₯

Workable Job Scraper πŸ”₯

Effortlessly scrape job listings from Workable. This actor is designed for simplicity, providing a minimal, clean dataset with just the core job details. Perfect for quick data collection and lead generation without the extra noise.

Pricing

from $1.00 / 1,000 results

Rating

5.0

(6)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

4

Bookmarked

46

Total users

13

Monthly active users

14 hours

Issues response

14 days ago

Last modified

Share

Workable Jobs Scraper

Extract structured job listings from Workable career pages with full field coverage for recruiting intelligence, market research, and job board operations. Collect clean, analysis-ready records including company profiles, location hierarchies, employment types, posting metadata, and complete job descriptions at any scale.

Features

  • Rich Job Records - Collect 25+ fields per listing including title, company, location, employment type, workplace mode, description, requirements, and benefits.
  • Flexible Input Modes - Start from search keywords, location queries, direct job URLs, or list API links. The scraper adapts to your data source.
  • Smart Pagination - Automatically follows pagination through the Workable job listings API to reach your target result count without manual page cycling.
  • Location Breakdown - Get full location text plus granular city, subregion, and country fields for geographic analysis and filtering.
  • Auto-Healing Queries - If a search returns nothing, the scraper generates relaxed variants to maximize data recovery.
  • Date Filtering - Narrow results by posting date with filters for 24 hours, 7 days, or 30 days.

Use Cases

Recruitment Intelligence

Track active hiring by role type, geography, and work arrangement. Identify which companies are growing teams and where talent demand is concentrated.

Job Board Operations

Populate internal or external job catalogs with consistently structured records. Maintain fresh datasets with scheduled recurring runs.

Market Research

Analyze hiring demand patterns across industries and regions. Monitor salary trends, required skills, and employer branding signals over time.

Competitive Monitoring

Track competitors' role mix, expansion signals, and hiring velocity. Get early visibility into strategic priorities through job posting patterns.


Input Parameters

ParameterTypeRequiredDefaultDescription
startUrlsArrayNo[]Workable search, list API, or detail page URLs to start from.
keywordStringNo"software"Search keyword or query term for role matching.
locationStringNo"United States"Geographic filter for job discovery.
posted_dateStringNo"anytime"Date filter: anytime, 24h, 7d, or 30d.
results_wantedIntegerNo20Maximum number of job records to collect.
proxyConfigurationObjectNo{"useApifyProxy": false}Proxy settings for high-volume or regional access.

Input priority: Runtime input always takes precedence. If runtime input is empty, the scraper falls back to INPUT.json. When startUrls is provided, keyword and location filters are used only for query seeding.


Output Data

Each dataset item contains the following fields:

FieldTypeDescription
idStringUnique job identifier.
titleStringJob title.
stateStringPublication state.
languageStringJob language code.
date_postedStringJob posting date (ISO 8601).
date_updatedStringLast update timestamp.
urlStringDirect job page URL.
linkout_urlStringExternal application URL.
company_idStringCompany identifier.
company_titleStringCompany name.
company_websiteStringCompany website URL.
company_urlStringCompany profile URL on Workable.
company_imageStringCompany logo image URL.
locationStringFull location text.
location_cityStringCity component.
location_subregionStringState or region component.
location_countryStringCountry component.
locationsArrayMulti-location entries when available.
employment_typeStringEmployment type value.
job_typesArrayNormalized list of job types.
workplace_typeStringWorkplace mode (remote, hybrid, on-site).
is_featuredBooleanFeatured listing indicator.
social_sharing_descriptionStringSocial summary text.
description_textStringClean job description text.
description_htmlStringSanitized HTML with safe tags.
requirementsStringRequirements section text.
benefitsStringBenefits section text.
source_list_urlStringSource listing URL.
source_query_keywordStringKeyword used for this run.
source_query_locationStringLocation used for this run.

Usage Examples

Search for software engineering roles in the United States:

{
"keyword": "software engineer",
"location": "United States",
"results_wanted": 20
}

Recent Remote Roles

Collect recently posted remote positions:

{
"keyword": "product manager",
"location": "remote",
"posted_date": "7d",
"results_wanted": 40
}

Start from a Known URL

Begin extraction from a specific Workable search or detail page:

{
"startUrls": ["https://jobs.workable.com/search?location=remote&q=analyst"],
"results_wanted": 30
}

Single Detail URL

Extract a specific job posting by its detail page:

{
"startUrls": ["https://jobs.workable.com/view/example-job-id"],
"results_wanted": 1
}

Sample Output

{
"id": "3c9c3f80-35d5-4542-a844-b2909e2293a3",
"title": "Senior Product Analyst",
"state": "published",
"language": "en",
"date_posted": "2026-02-24T14:10:11.000Z",
"date_updated": "2026-02-27T09:21:06.000Z",
"url": "https://jobs.workable.com/view/8u6AStSBRuP274KPyJMkiV/...",
"company_id": "3fe7a205-8b5f-45e0-a2ef-7d15f2f3e0d1",
"company_title": "Example Labs",
"company_website": "https://examplelabs.com",
"company_url": "https://jobs.workable.com/company/example-labs",
"location": "Boston, MA, United States",
"location_city": "Boston",
"location_subregion": "MA",
"location_country": "United States",
"employment_type": "FULL_TIME",
"job_types": ["FULL_TIME"],
"workplace_type": "hybrid",
"is_featured": false,
"description_text": "We are looking for a Senior Product Analyst to join our analytics team...",
"requirements": "3+ years of analytics experience...",
"benefits": "Health insurance, 401(k), learning budget..."
}

Tips for Best Results

Start with Specific Keywords

Role-specific keywords return more relevant results. Start with results_wanted: 20 for quick validation before scaling up.

Combine Filters for Precision

Pair keyword with location and posted_date to narrow results to the most relevant and recent listings.

Enable Proxies for Volume

For high-frequency or large-scale runs, enable proxy support to improve reliability and regional access.


Integrations

Connect your job data with:

  • Google Sheets - Share and analyze job listings with your team.
  • Airtable - Build searchable hiring intelligence databases.
  • Make - Automate enrichment, notification, and routing workflows.
  • Zapier - Trigger downstream actions from fresh job records.
  • Webhooks - Send output directly to your custom services.
  • Slack - Get notified when new matching jobs are collected.

Export Formats

  • JSON - For backend systems and data pipelines.
  • CSV - For spreadsheet analysis and reporting.
  • Excel - For business reporting and presentations.

Frequently Asked Questions

How many jobs can I collect?

Set results_wanted to your target. Start with 20 for testing and increase for production use.

Can I scrape from a specific company page?

Yes. Add company Workable URLs to the startUrls array, or use company search on Workable to find their listings.

What if a search returns nothing?

The scraper auto-generates relaxed query variants by removing date, location, or keyword filters to recover data.

Does it support remote and hybrid filtering?

Yes. Use location: "remote" or pair with keywords for precise workplace type matching.

Can I schedule recurring runs?

Yes. Use Apify schedules to run daily or weekly for an up-to-date dataset.

What if some fields are empty?

Some employers do not publish every field. Empty values are expected for optional fields.

How are duplicates handled?

The scraper uses job ID, URL, slug, and title-company-date fallbacks to detect and skip duplicates.

Can I use my own proxy?

Yes. Configure custom proxy URLs through the proxyConfiguration parameter. Both Apify proxy and custom lists are supported.


Support

For issues, feature requests, or questions, contact support through the Apify Console.

Resources


This actor is designed for legitimate data collection purposes. Users are responsible for ensuring compliance with Workable's terms of service and applicable data protection laws. Use extracted data responsibly and respect rate limits.