Skip to content

SmartRecruiters Jobs Scraper

Try for free

Scrape every open job from any company's SmartRecruiters career site: title, department, function, location, remote or hybrid, employment type, experience level, salary (parsed from the ad), full description and apply link. Filter by keyword, country, workplace type and more.

💼 SmartRecruiters Jobs Scraper

Pull every open job from any company that hires through SmartRecruiters, the applicant tracking system behind career sites like careers.smartrecruiters.com/ServiceNow and jobs.smartrecruiters.com/<company>. Paste company identifiers or SmartRecruiters links and get clean, structured rows: title, department, function, location, remote or hybrid, employment type, experience level, salary range, full job ad and apply link. No login and no browser: it reads SmartRecruiters' public job feed directly.

✨ Why use SmartRecruiters Jobs Scraper?

  • ⚡ Fast: reads the public SmartRecruiters Posting API, 100 jobs per list request, and opens job ads in parallel.
  • 🎯 Server-side filters: keywords, country codes, workplace type, language and posting date are sent to SmartRecruiters' own search, so a filtered run only downloads what you need.
  • 💵 Salary as numbers: min, max, currency and period (year, hour and so on), parsed from the pay sentence in the job ad, plus the sentence itself.
  • 🧾 Complete job ads: plain text and HTML, split into company description, job description, qualifications and additional information.
  • 🏷️ Every employer field: department, function, industry, experience level, requisition number and the employer's own custom fields (brand, team, cost center, work model and more).
  • 💰 Cheap: one flat price per saved job.

🎯 Use cases

  • 📋 Job aggregators and niche boards: keep a board of engineering, retail, hospitality or remote jobs in sync with hundreds of SmartRecruiters employers.
  • 📈 Hiring-signal sales: spot companies that are growing a team (for example twenty new Sales roles in Germany) and reach out at the right moment.
  • 🧠 Market and salary research: compare published pay ranges by role, city and seniority.
  • 🕵️ Competitive intelligence: follow which departments and countries your competitors are hiring for, week by week.
  • 🤖 Recruiting automation: feed fresh postings into your ATS, CRM, spreadsheet or Slack on a schedule.

🚀 How to use

  1. Add one or more companies: an identifier like ServiceNow, a career page like https://careers.smartrecruiters.com/Ubisoft2, a single job link, or an API link such as https://api.smartrecruiters.com/v1/companies/BoschGroup/postings?country=de.
  2. Optionally set filters (keywords, countries, locations, workplace type, department, employment type, experience level, posted within N days, salary only).
  3. Set Max results (default 20) and, if you scrape many companies, Max results per company.
  4. Click Start. Download the jobs as JSON, CSV, Excel or HTML, or read them through the API.

The company identifier is the first part of the path on the career site: https://careers.smartrecruiters.com/ServiceNow. It is not case-sensitive.

📥 Input

FieldWhat it does
companiesSmartRecruiters identifiers or URLs (career page, jobs page, single job, or api.smartrecruiters.com postings URL).
maxResultsTotal jobs to save across all companies (0 means no limit, up to 100,000).
keywords / excludeKeywordsKeep or drop jobs by words in the title. searchInDescription keeps full-text matches in the job ad too.
countries / locationsTwo-letter country codes (US, DE) or names, and whole-word place matches (London, CA, Bavaria).
workplaceTypesremote, hybrid, onsite.
departments / commitments / experienceLevelsWords in the department or function, the employment type (Full-time, Intern) or the experience level (Entry, Director).
languagesJob ad languages as codes (en, de).
postedWithinDaysOnly jobs released in the last N days.
onlyWithSalaryOnly jobs whose ad states a pay range or rate.
maxResultsPerCompanyCap per company, so one big employer does not fill the whole run.
includeDescription / includeHtmlTurn job ads or the HTML copy off for a faster, lighter dataset.
{
  "companies": ["ServiceNow", "https://careers.smartrecruiters.com/Ubisoft2", "BoschGroup"],
  "maxResults": 200,
  "keywords": ["engineer", "data"],
  "countries": ["US", "DE"],
  "workplaceTypes": ["remote", "hybrid"],
  "postedWithinDays": 30,
  "maxResultsPerCompany": 50
}

📤 Output

One row per open job.

FieldDescription
title, company, companySlug, companyLogoJob title and employer.
location, city, region, country, postalCode, addressWhere the job is (country as a two-letter code).
workplaceType, isRemote, hybridDescriptionremote, hybrid or onsite, plus the office attendance note when given.
department, function, industry, commitment, levelDepartment, job function, industry, employment type and experience level.
salaryMin, salaryMax, salaryCurrency, salaryPeriod, salaryTextPay range read from the job ad, when the employer publishes one.
postedAtRelease date (ISO 8601, UTC).
jobUrl, applyUrlPublic job page and direct apply link.
refNumber, language, customFieldsRequisition number, ad language and the employer's custom fields.
descriptionText, sections, descriptionHtmlFull job ad as text, as titled sections, and as HTML.
companyDescription, jobDescriptionText, qualificationsText, additionalTextEach job ad section on its own.
id, uuid, jobAdId, source, scrapedAtIdentifiers and when the row was saved.

Example (long texts shortened):

{
  "id": "744000155548089",
  "title": "Sr. iOS Software Engineer - Infrastructure Team",
  "company": "LinkedIn",
  "companySlug": "LinkedIn3",
  "location": "Mountain View, CA, United States",
  "city": "Mountain View",
  "region": "CA",
  "country": "US",
  "workplaceType": "hybrid",
  "isRemote": false,
  "department": "Engineering",
  "industry": "Internet",
  "commitment": "Full-time",
  "level": "Mid-Senior Level",
  "refNumber": "REQ25428",
  "language": "en",
  "salaryMin": 129000,
  "salaryMax": 212000,
  "salaryCurrency": "USD",
  "salaryPeriod": "year",
  "salaryText": "The pay range for this role is $129,000 to $212,000.",
  "postedAt": "2026-10-14T15:18:29.000Z",
  "jobUrl": "https://jobs.smartrecruiters.com/LinkedIn3/744000155548089-sr-ios-software-engineer-infrastructure-team",
  "applyUrl": "https://jobs.smartrecruiters.com/LinkedIn3/744000155548089-sr-ios-software-engineer-infrastructure-team?oga=true",
  "customFields": [{ "label": "Employee Type", "value": "Employee" }],
  "descriptionText": "Company Description\nLinkedIn is the world's largest professional network, ...",
  "sections": [{ "title": "Qualifications", "text": "Basic Qualifications\n\n- BA/BS in Computer Science or related technical field ..." }],
  "source": "smartrecruiters",
  "scrapedAt": "2026-10-14T19:38:48.000Z"
}

💰 Pricing

You pay $1.00 per 1,000 saved jobs ($0.001 per job), full job ad included. Platform usage (compute and the default datacenter proxy) is billed separately and is small: in our tests 1,000 jobs with full descriptions took about 35 seconds and under 0.01 GB of datacenter traffic. Example: 1,000 jobs ≈ $1.00 in results plus less than one cent of usage. You are never charged for jobs that a filter drops.

❓ FAQ

Is it legal? The scraper reads only public job postings that employers publish for everyone through SmartRecruiters' public Posting API. No personal data about candidates is collected. Check your own use case against local law and the site's terms.

Do I need a login or a proxy? No login. The default datacenter proxy is enough.

How many results can I get? Every open job of each company you list (large employers have several thousand). SmartRecruiters has no public search across all companies, so list the companies you want.

How do I find a company's identifier? Open the company's job page on SmartRecruiters and copy the first part of the path, or just paste the whole URL. Companies that use their own career site domain still have an identifier in the SmartRecruiters links of their job ads.

Why is a salary field empty? SmartRecruiters has no structured pay field, so the salary comes from the ad text. Many employers outside pay-transparency regions do not publish pay at all.

Can I schedule it or use the API? Yes. Schedule runs (for example daily with postedWithinDays: 1) and read results through the API or integrations.

⚠️ Limits

  • Only companies you list are scraped: there is no cross-company job search.
  • Companies whose career site is not on SmartRecruiters (or whose postings are private or internal) return no jobs; the run status names them.
  • Salary is parsed from free text and is best effort; check salaryText for the original wording.
  • Jobs closed between the list request and opening the ad are skipped and counted in the run status.

Related actors

G2
4.7/5
Excellent
Trustpilot

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.

No credit card. No setup calls.