StepStone Group Jobs Scraper — Totaljobs, IrishJobs & more
Pricing
from $1.50 / 1,000 job scrapeds
StepStone Group Jobs Scraper — Totaljobs, IrishJobs & more
Scrape jobs across the whole StepStone Group in one run — Totaljobs, CWJobs, Jobsite, Caterer, IrishJobs, StepStone and sister brands — via the two shared StepStone Group backends. Unified JobPosting output with a per-brand column.
Pricing
from $1.50 / 1,000 job scrapeds
Rating
0.0
(0)
Developer
Muhamed Didovic
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 hours ago
Last modified
Categories
Share
StepStone Group Jobs Scraper — Totaljobs, CWJobs, Caterer, IrishJobs, StepStone DE/AT/BE/NL
Scrape job postings across the entire StepStone Group in a single run — Totaljobs, CWJobs, Jobsite and Caterer in the UK, IrishJobs in Ireland, and StepStone Germany, Austria, Belgium and the Netherlands — and get one clean, unified dataset back.
Pick the portals you want, type a keyword and a location, and every selected brand is searched at once. No juggling four different scrapers, four output shapes, or four billing lines.

Why Use This Scraper?
- One run, the whole Group. Nine portals across the UK, Ireland, Germany, Austria, Belgium and the Netherlands — searched together, returned in one dataset.
- One unified schema. Every row has the same fields regardless of which brand it came from, plus a
brandandsourceSitecolumn so you always know the source. - Keyword + location, no URL building. Multi-select the brands, type "chef" and "London", and go. Or paste raw brand URLs if you prefer.
- Structured salary bands. Min / max / currency / period parsed out wherever the employer disclosed a figure — including correct handling of continental European number formats.
- Employer firmographics. Company name, logo, internal company page and (where available) a company ID on every row.
- Geo-coordinates. Latitude/longitude on UK rows for mapping and territory analysis.
- Built for scale. Efficient JSON APIs under the hood — not fragile HTML scraping — with automatic pagination and per-brand result caps.
Overview
The StepStone Group Jobs Scraper is for recruiters, sourcers, market-intelligence teams, and data teams who need job-market data spanning multiple StepStone Group brands at once.
It returns a flat, one-row-per-job dataset. Each row is a single job posting normalized to a shared JobPosting shape: identity (job ID, URL, title), dates, employer, location, structured salary, employment type and apply flow. A brand column tags every row with its source portal (totaljobs, caterer, irishjobs, stepstone-de, …), so you can filter, group, or split by brand downstream.
Data comes from two shared StepStone Group backends:
- The Totaljobs-Group brands (Totaljobs, CWJobs, Jobsite, Caterer) share one mobile API.
- The StepStone unified platform brands (IrishJobs, StepStone DE/AT/BE/NL) share the unified-resultlist API.
You don't need to know or care which is which — the actor routes each selected brand automatically.
Supported Inputs
You can drive the actor two ways — use either, or mix both in one run.
1. Brands + keyword + location (recommended)
Select one or more portals in the StepStone Group portals multi-select, then set a keyword and/or location. Every selected brand is searched.
Supported brands:
| Brand id | Portal | Market |
|---|---|---|
totaljobs | Totaljobs | UK |
cwjobs | CWJobs | UK (tech) |
jobsite | Jobsite | UK |
caterer | Caterer.com | UK (hospitality) |
irishjobs | IrishJobs | Ireland |
stepstone-de | StepStone | Germany |
stepstone-at | StepStone | Austria |
stepstone-be | StepStone | Belgium |
stepstone-nl | StepStone | Netherlands |
2. Start URLs
Paste raw listing or job-detail URLs from any supported brand — they are auto-routed to the correct backend by host. Mixing brands in one list is fine.
{"startUrls": ["https://www.totaljobs.com/jobs/software-engineer/in-london","https://www.caterer.com/jobs/chef","https://www.irishjobs.ie/jobs/nurse/in-dublin"]}
Listing URLs auto-paginate until your maxItems budget is reached. Direct job-detail URLs emit one row each.
Not supported
- Sites outside the StepStone Group (any host not in the table above is skipped with a log note).
- Pasted StepStone DE/AT/BE/NL job-detail URLs (their detail URL format differs) — use the brand + keyword search for those markets instead. UK and Irish detail URLs are fully supported.
- Login-gated content, candidate CVs, or recruiter-only data.
Use Cases
| Audience | What they get |
|---|---|
| Recruitment agencies | Cross-brand vacancy feeds for one keyword across UK/IE/DACH/BENELUX in a single pull |
| Talent sourcing | Employer + role lists filtered by location and posted date |
| Market intelligence | Volume, salary bands and hiring-company trends per brand and per country |
| Job boards / aggregators | A normalized multi-source jobs feed under one schema |
| Salary benchmarking | Structured min/max/currency/period bands grouped by title and market |
| Lead generation | Hiring companies (with logos and internal profiles) actively posting roles |
How It Works

- You pick brands + a keyword/location (or paste brand URLs). The actor builds the right search URL for each selected portal.
- Each brand is routed to its shared backend — the Totaljobs-Group mobile API or the StepStone unified-resultlist API — automatically, by host.
- Listings are paginated via JSON APIs, collecting job items up to your per-brand
maxItemscap. - Each job's detail page is fetched and parsed into the unified JobPosting row, merging the listing item's structured salary, coordinates and skills.
- Rows are streamed to the dataset as they're ready, each tagged with its
brandandsourceSite.
Input Configuration
| Field | Type | Description |
|---|---|---|
brands | array | StepStone Group portals to scrape (multi-select). Each selected brand is searched with the keyword & location below. |
searchKeyword | string | Job title / keyword to search across every selected brand (e.g. software engineer, nurse, chef). Optional. |
searchLocation | string | Location to search across every selected brand (e.g. London, Dublin, Berlin). Optional — blank searches the whole country per brand. |
startUrls | array | Raw listing or job-detail URLs from any supported brand. Auto-routed by host. Optional. |
maxItems | integer | Max job rows per (brand × listing URL). Default 100. Direct detail URLs always emit 1 row each. |
maxConcurrency | integer | Parallel HTTP requests for detail fetches. Default 4. |
maxRequestRetries | integer | Per-URL retry budget on transient errors. Default 6. |
proxy | object | Advanced override. By default each brand uses its proven proxy automatically. |
Example: three brands, one keyword
{"brands": ["totaljobs", "caterer", "irishjobs"],"searchKeyword": "chef","searchLocation": "London","maxItems": 200}
Example: continental StepStone markets
{"brands": ["stepstone-de", "stepstone-at", "stepstone-be"],"searchKeyword": "engineer","maxItems": 100}
Example: paste URLs directly
{"startUrls": ["https://www.totaljobs.com/jobs/in-manchester","https://www.cwjobs.co.uk/jobs/devops"],"maxItems": 50}
Output Overview
The dataset is flat: one row per job posting. Each row is normalized to the same JobPosting shape no matter which brand produced it. Provenance columns (brand, backend, sourceSite, sourceSearchUrl) let you trace every row back to its portal and the search that found it. Optional fields (structured salary, skills, coordinates, company ID) are populated when the source exposes them and are otherwise null.
Output Samples
From brands: ["caterer"], keyword chef (Totaljobs-Group backend):
{"rowType": "job","brand": "caterer","backend": "naps","sourceSite": "caterer.com","sourceSearchUrl": "https://www.caterer.com/jobs/chef","jobId": "107604788","jobUrl": "https://www.caterer.com/job/chef/abbeywood-estate-job107604788","title": "Chef","employmentType": "FULL_TIME","employer": {"name": "Abbeywood Estate","url": "https://www.caterer.com/jobs/abbeywood-estate?cmpId=1460325","logoUrl": "https://www.caterer.com/CompanyLogos/1460325.png","id": 1460325},"location": {"text": "Northwich, Cheshire, CW8 2HW, GB","locality": "Northwich","region": "Cheshire","postalCode": "CW8 2HW","country": "GB","lat": 53.22709,"lng": -2.60343},"salary": { "rawText": "£17 per hour", "min": 17, "max": null, "currency": "GBP", "period": "hour" },"applyType": "internal","scrapedAt": "2026-07-13T16:00:00.000Z"}
From brands: ["stepstone-at"], keyword manager (StepStone unified backend):
{"rowType": "job","brand": "stepstone-at","backend": "unified","sourceSite": "stepstone.at","jobId": "992653","title": "Area Sales Manager (m/w/d) Nutzfahrzeuge","employer": { "name": "WALTER LEASING GmbH", "id": null, "logoUrl": "https://..." },"location": { "text": "Wiener Neudorf, AT", "country": "AT", "lat": null, "lng": null },"salary": { "rawText": "€ 50.000", "min": 50000, "max": null, "currency": "EUR", "period": null },"applyType": "internal"}
Key Output Fields
Provenance
brand— source portal id (totaljobs,caterer,irishjobs,stepstone-de, …)backend— which shared backend served it (napsorunified)sourceSite— host the job lives onsourceSearchUrl— the listing/search that discovered the row (null for pasted detail URLs)
Job identity
jobId,jobUrl,title
Job details
description,datePosted,validThrough,employmentType,industry,directApply,jobLocationType,applicantLocationRequirements,workType,contractType,workFromHome,skills
Employer
employer.name,employer.url,employer.logoUrl,employer.id
Location
location.text,location.locality,location.region,location.postalCode,location.country,location.lat,location.lng
Salary
salary.rawText,salary.min,salary.max,salary.currency,salary.period
Apply flow
applyUrl,applyType(internal/external/unknown)
FAQ
Which brands can I scrape in one run? Any combination of the nine listed: Totaljobs, CWJobs, Jobsite, Caterer, IrishJobs, and StepStone DE/AT/BE/NL. Select as many as you want.
Do all brands return the same fields? Yes — every row uses one unified schema. Some optional fields (structured company ID, skills, coordinates) are only present where a given brand exposes them; they're null otherwise.
Does StepStone NL return many jobs? The Netherlands portal has a small inventory (StepStone has wound it down), so expect low volumes there. It's included for completeness; the DE, AT and UK/IE portals carry the bulk of the roles.
Can I paste a StepStone Germany job link? For DE/AT/BE/NL, use the brand + keyword search rather than pasting individual job-detail URLs — those markets use a different detail-URL format. UK and Irish detail URLs work directly.
How is salary handled? Where the employer disclosed a figure, it's parsed into min/max/currency/period. Continental European "€ 50.000" formats are read correctly (50000, not 50). Undisclosed roles keep the raw text (e.g. "€ Not Disclosed") with null min/max.
Does it scrape candidate data or recruiter-only content? No — only publicly listed job postings.
How does pagination and the item cap work? maxItems is applied per brand per listing URL. Three brands with maxItems: 100 yields up to 300 rows (100 each). Direct detail URLs always emit exactly one row.
Support
Found a bug, a missing field, or a brand you'd like added? Open an issue on the actor's Issues tab and we'll take a look. We actively maintain this scraper and respond to reports.
Additional Services
Need a tailored export, a scheduled cross-brand feed, additional StepStone Group portals, or enrichment (e.g. employer contact emails)? We build custom scraping and data pipelines — reach out via the Issues tab to discuss your requirements.
Explore More Scrapers
Prefer a single-country scraper, or need deeper per-brand coverage? Explore our dedicated job-board actors:
- Totaljobs UK Scraper
- CWJobs Scraper
- Jobsite Scraper
- Caterer.com Scraper
- IrishJobs Scraper
- StepStone Scraper
Browse the full collection on our Apify Store profile.
⚠️ Disclaimer
This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by The Stepstone Group, Totaljobs Group Ltd, or any of their subsidiaries or brands (Totaljobs, CWJobs, Jobsite, Caterer.com, IrishJobs, StepStone). All product names, logos, and brands are the property of their respective owners and are used for identification purposes only.
This scraper collects only publicly available job-posting data — the same information any visitor can see without logging in. It does not access private, gated, or personal candidate data. Users are responsible for ensuring their use of the scraped data complies with the source sites' Terms of Service, applicable data-protection laws (including GDPR and CCPA), and any other relevant regulations. Use the data lawfully and responsibly.
SEO Keywords
StepStone scraper, StepStone Group scraper, Totaljobs scraper, CWJobs scraper, Jobsite scraper, Caterer.com scraper, IrishJobs scraper, StepStone Germany scraper, job posting scraper, job board scraper, jobs data extraction, recruitment data scraper, vacancy scraper, salary data scraper, hiring companies scraper, UK jobs scraper, Ireland jobs scraper, DACH jobs scraper, employer data extraction, job market intelligence, multi-brand jobs scraper, StepStone Austria scraper, StepStone Belgium scraper, StepStone Netherlands scraper