SmartRecruiters Job Scraper - Enterprise Careers Pages in Bulk avatar

SmartRecruiters Job Scraper - Enterprise Careers Pages in Bulk

Pricing

from $2.50 / 1,000 results

Go to Apify Store
SmartRecruiters Job Scraper - Enterprise Careers Pages in Bulk

SmartRecruiters Job Scraper - Enterprise Careers Pages in Bulk

Export the full careers page of any employer on SmartRecruiters. Walks every page of the posting feed, so a large employer yields thousands of roles with location, seniority, function and coordinates. No API key needed.

Pricing

from $2.50 / 1,000 results

Rating

0.0

(0)

Developer

Logiover

Logiover

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Export the full careers page of any employer on SmartRecruiters. Walks every page of the posting feed, so a large employer yields thousands of roles with location, seniority, function and coordinates. No API key needed.

✨ What this Actor does

  • Pull an enterprise careers page in full instead of ten results at a time.
  • Map where a multinational is hiring, using the coordinates on every posting.
  • Watch requisition references appear and disappear to see what actually gets filled.
  • Build a seniority and function breakdown of a competitor's open roles.

🚀 Quick start

  1. Fill in the input below — the example is already prefilled, so you can just press Start.
  2. Watch the log: it names every source it reaches and how many rows each returned.
  3. Export from the Storage tab as JSON, CSV, Excel or feed it straight into your own tools.

📥 Input

{
"companies": [
"BoschGroup"
],
"maxItems": 500,
"fetchDescriptions": false
}

Every field is documented in the input form. Nothing here needs an API key or a login.

📤 Output

One row per record, with these columns:

FieldTypeDescription
companystringEmployer name as SmartRecruiters publishes it.
companyIdstringSmartRecruiters company identifier.
postingIdstringIdentifier of the posting.
uuidstringStable UUID for the posting.
refNumberstringEmployer's own requisition reference.
titlestringRole title as published.
industrystringIndustry the employer classified the role under.
jobFunctionstringFunctional area, e.g. Information Technology.
employmentTypestringFull-time, part-time, contract.
experienceLevelstringSeniority band the employer selected.
citystringCity of the role.
regionstringState or region.
countrystringTwo-letter country code.
addressstringStreet address where published.
postalCodestringPostal code where published.
fullLocationstringLocation as one formatted line.
isRemotebooleanWhether the employer marked the role remote.
isHybridbooleanWhether the employer marked the role hybrid.
hybridDescriptionstringFree text such as "3 days on site".
latitudenumberLatitude of the work location.
longitudenumberLongitude of the work location.
languagestringLanguage the posting is written in.
releasedDatestringWhen the posting went live (ISO 8601).
companyDescriptionstringEmployer blurb. Only filled when descriptions are requested.
jobDescriptionstringRole description. Only filled when descriptions are requested.
qualificationsstringRequirements section. Only filled when descriptions are requested.
additionalInformationstringClosing section. Only filled when descriptions are requested.
customFieldsstringEmployer's own labelled fields, pipe-separated.
postingUrlstringPublic posting page.
applyUrlstringApplication form for the posting.
scrapedAtstringWhen this row was collected.

A column that is empty means the source did not publish that value for that record — it is never a silent substitute for zero or for "unknown".

❓ Frequently asked questions

Do I need an API key or an account? No. This Actor reads a public feed.

What happens if the source blocks the run? A refused exit IP is replaced within a quarter of a second, up to five times, before the Actor tries anything else. If nothing gets through, the run fails with the reason — it never reports success with zero rows, because "there is no such data" and "the source would not answer" are very different answers and you should not have to guess which one you got.

How do I schedule this? Use the Schedules tab. Daily is usually enough; the sources here do not change by the minute.

Can I get the results into Google Sheets or a database? Yes — use the dataset export, or the Apify API and integrations. Every run writes a SUMMARY record to the key-value store with the outcome and counts, which is handy for monitoring an automated pipeline.

💰 Pricing

Pay per result. You are charged for the rows you receive and nothing else, so a run that finds nothing costs nothing.

This Actor collects publicly available information only. It does not log in, does not bypass access controls, and collects no private data. You are responsible for using the output in line with the source's terms and with applicable law, including GDPR where personal data is involved.

⭐ Support

Found something wrong, or want a field that is not here? Open an issue on the Actor's page — include the run ID and I will look at it.

How much SmartRecruiters data can you extract in one run?

A single run returned 400 job ads in 700 seconds on the example input. That is roughly 34 job ads a minute. Widen the search — more queries, more pages, a broader location — and the same run goes deeper.

There is no hard ceiling built into this Actor. What bounds a run is the result limit you set, the breadth of the input you give it, and how much SmartRecruiters itself publishes. Because billing is per result, a wider run costs proportionally more and a narrow one costs almost nothing — so it is worth starting small and scaling once the output looks right.

SmartRecruiters scraping — frequently asked questions

Do I need a SmartRecruiters API key, account or login?

No. This Actor reads publicly available pages and feeds, so there is nothing to register for and no credentials to manage.

How do I export SmartRecruiters data to CSV, Excel, JSON or Google Sheets?

Open the Storage tab after a run and pick the format you want — CSV, Excel, JSON, XML or an HTML table. For Google Sheets, Airtable or a database, use the dataset URL or the Apify API so the sheet refreshes itself on every run.

Can I schedule this SmartRecruiters scraper to run daily or hourly?

Yes. Use the Schedules tab and pick a cadence. Daily is enough for most tracking work; pick hourly only if the job ads you care about really do change that fast.

How many job ads can I get, and what does it cost?

See the volume section above for a measured figure. Billing is per result, so you pay for the rows you actually receive and a run that finds nothing costs nothing.

This Actor collects only information that SmartRecruiters publishes publicly. It does not log in, does not defeat access controls and does not touch private data. You remain responsible for how you use the output, including under GDPR and similar rules where personal data is involved.

What happens if SmartRecruiters blocks the run or changes its layout?

A refused exit IP is swapped for a fresh one within a quarter of a second and retried, and rate limiting is waited out rather than fought. If nothing gets through, the run fails with the reason instead of reporting success with zero rows — so an empty result always means "no matches", never "the source would not answer".

Can I use this with an AI agent, LangChain or an MCP client?

Yes. The Actor is callable over the Apify API and through Apify's MCP server, so an agent can run it and read the dataset back as a tool call.

Who uses this SmartRecruiters scraper, and what for

  • Market and pricing analysts tracking how job ads on SmartRecruiters move week to week.
  • Sales and growth teams building prospect lists from what SmartRecruiters publishes.
  • Data and ML teams who need a structured corpus rather than screenshots.
  • Researchers and journalists who need a dataset they can cite and re-run.
  • Operations teams feeding job ads into a CRM, a warehouse or a dashboard on a schedule.

Same output format, same pay-per-result billing, so they combine cleanly in one pipeline:

📝 Changelog

2026-09-25

  • First release.