SmartRecruiters Jobs Scraper & API
Pricing
$0.99 / 1,000 jobs
SmartRecruiters Jobs Scraper & API
Scrape jobs directly from SmartRecruiters ATS via one fast API. Live roles from global enterprises and mid-market employers across every industry. Zero ghost jobs, verified daily — built for job boards, AI agents & hiring research.
SmartRecruiters Jobs Scraper & API | Scrape Jobs on SmartRecruiters ATS
Search job listings directly from SmartRecruiters ATS — the enterprise and mid-market hiring platform used by global brands across retail, manufacturing, fintech, gaming, and professional services. Every result comes back in Jobo's normalized job shape: geocoded locations, AI-extracted skills and responsibilities, enriched company profiles, and work-authorization signals — ready for job boards, AI agents, or HR tech pipelines. Open the actor on Apify, hit Try for free, and run with the default input (queries: ["Software Engineer", "Account Manager"]).
What can SmartRecruiters Jobs Scraper do?
- Search SmartRecruiters job listings — enterprise and mid-market employers across every continent
- Filter by work model, experience level, salary range, skills, and companies
- Exclude noise with negative-keyword syntax (prefix any query token with
-) - Optionally attach the full company profile — industries, funding, leadership, ratings, tech stack, H1B history
- Zero ghost jobs — daily verification removes expired listings within 24 hours
- Run on Apify with scheduling, monitoring, and webhooks, and integrate with Zapier, Make, Slack, or HTTP
- Download results as JSON, CSV, or XLSX
Input
Configure the actor on the Input tab in the Apify UI. Every field is optional; leaving them empty returns the broadest possible result set.
Search
The core of every run. queries accepts up to 5 titles or keywords (OR-ed together); adding more rarely helps — narrow with filters instead.
| Parameter | Type | Description |
|---|---|---|
queries | Array (≤5) | Job titles or keywords. Multiple values are OR-ed. Prefix any entry with - to exclude (["Software Engineer", "-staff"]). |
locations | Array | Cities, regions, or countries. Geocoded server-side for accurate matching. Accepts loose forms like "NYC", "DACH", "UK". |
Filters
Faceted filters that narrow the result set. Salary filters work in USD; jobs without a disclosed salary are excluded when either is set.
| Parameter | Type | Description |
|---|---|---|
work_models | Array | remote, hybrid, onsite. |
employment_types | Array | full-time, part-time, contract, internship, freelance, temporary. |
experience_levels | Array | intern, entry, mid, senior, lead, executive. |
skills_include | Array | Only return jobs requiring ANY of these skills. Matched against AI-extracted qualifications. |
skills_exclude | Array | Exclude jobs requiring ANY of these skills. |
companies_include | Array | Only return jobs from these company names. |
companies_exclude | Array | Exclude jobs from these companies. |
min_salary_usd | Integer | Minimum annual USD salary. |
max_salary_usd | Integer | Maximum annual USD salary. |
posted_after | String | ISO 8601 (2025-01-01T00:00:00Z) or relative (7 days ago, 1 month). |
Company enrichment
| Parameter | Type | Default | Description |
|---|---|---|---|
include_company_details | Boolean | false | Off by default — company carries a lightweight preview. Set true to replace it with the full enriched profile (companies are de-duplicated, fetched once per run; slower, more API calls). |
Pagination
| Parameter | Type | Default | Description |
|---|---|---|---|
page | Integer | 1 | Page number (max 20). To go deeper, refine your filters instead of paging. |
page_size | Integer | 50 | Results per page (max 100). |
Output
Each dataset row uses Jobo Connect's normalized job shape; source is always "smartrecruiters". The full JSON Schema is on the Dataset Schema tab in the Apify UI.
The Output tab offers two views: SmartRecruiters Job Listings (jobs with a lightweight company preview) and Company details (the full company profile, populated when include_company_details is enabled).
Job fields
| Name | Description | Type |
|---|---|---|
id | Stable Jobo job identifier | uuid |
title | Raw job title | text |
normalized_title | Canonical title for grouping | text |
description | Full job description, HTML stripped | text |
summary | 2–3 sentence AI role recap | text |
listing_url | Canonical listing URL on SmartRecruiters | uri |
apply_url | Direct apply URL | uri |
locations | Array of {location, city, region, country, latitude, longitude} (geocoded when possible) | object[] |
compensation | {min, max, currency, period} | object |
employment_type | full_time / part_time / contract / internship / freelance / temporary | text |
workplace_type | remote / hybrid / onsite | text |
experience_level | entry / mid / senior / lead / executive | text |
qualifications | must_have / preferred, each with typed skills ({name, type: hard|soft}), education, certifications | object |
responsibilities | Bullet list extracted from the description | text[] |
benefits | Bullet list extracted from the description | text[] |
is_work_auth_required | Work authorization required | bool |
is_h1b_sponsor | Employer sponsors H1B | bool |
is_clearance_required | Security clearance required | bool |
source | Always smartrecruiters | text |
date_posted | When the role was posted | timestamp |
valid_through | Expiry timestamp (null in most cases) | timestamp |
created_at | When Jobo first indexed the job | timestamp |
updated_at | Last time Jobo refreshed the job | timestamp |
Company fields
company is always present. By default it carries only the preview fields below; set include_company_details: true to replace it with the full enriched profile.
Preview (always present)
| Name | Description | Type |
|---|---|---|
id | Stable Jobo company identifier — use as your primary key | uuid |
name | Trade name | text |
website | Company marketing website | text |
logo_url | Hosted logo URL | text |
summary | Short company blurb | text |
industries | Vertical industry labels | text[] |
details_url | Link to GET /api/companies/{id} for the full profile | uri |
Enriched (when include_company_details is on)
| Name | Description | Type |
|---|---|---|
legal_name | Registered legal entity name | text |
primary_industry | Main industry label | text |
company_size | Headcount band, e.g. 1001-5000 | text |
revenue | Annual revenue band | text |
founding_year | Year founded | text |
headquarters_location | HQ city / region | text |
country_code | HQ country code | text |
operating_status | active / closed | text |
ipo_status | private / ipo / delisted | text |
company_type | for_profit / non_profit | text |
stock_symbol | Ticker symbol | text |
stock_exchange | Listing exchange | text |
funding_stage | Latest funding stage | text |
total_funding | Total funding raised | text |
investors | Investor names | text[] |
funding_rounds | Per-round detail (investment_type, announced_on, raised_amount, …) | object[] |
founders | Founder names | text[] |
leadership | {name, title, linkedin_url, avatar_url} | object[] |
ratings | {source, rating, url, review_count} (Glassdoor, etc.) | object[] |
press_references | {url, posted_on, title, publisher} | object[] |
h1b_annual_job_counts | {year, count} H1B history | object[] |
technology_list | Detected technologies | text[] |
tech_stack | {name, categories} | object[] |
page_rank | Domain authority score | number |
leadership_display | Display tag — "Name — Title" | text[] |
ratings_display | Display tag — "Glassdoor 4.3 (2.1k)" | text[] |
funding_display | Display tag — "Series F · $15.4B" | text[] |
The complete company schema (every field) is on the Dataset Schema tab and at docs.jobo.world/api-reference/companies/schema. Use company.details_url with your X-Api-Key to re-fetch a profile on demand.
Quick-start input examples
Remote engineering roles
{"queries": ["Software Engineer"],"work_models": ["remote"],"page_size": 50}
Multi-city, recent postings
{"queries": ["Marketing Manager"],"locations": ["London", "Dublin", "Amsterdam", "Berlin"],"posted_after": "7 days ago","page_size": 50}
Skills-filtered, US-only, $90k+
{"queries": ["Backend Engineer"],"skills_include": ["Go", "Kubernetes", "PostgreSQL"],"skills_exclude": ["PHP"],"locations": ["United States"],"min_salary_usd": 90000,"page_size": 100}
Negative-keyword filter — mid/senior only
{"queries": ["Software Engineer", "-staff", "-principal"],"experience_levels": ["mid", "senior"],"page_size": 50}
Tips & advanced options
- Pagination cap.
page_sizemaxes at 100 andpageat 20. For bulk downloads (>2k rows) use ATS Jobs Feed instead — it uses cursor pagination and pulls up to 1,000 rows per batch. sourceis alwayssmartrecruiters. Every row this actor returns carries"source": "smartrecruiters"— useful as a routing or analytics tag when merging with other sources.industriesempty for some companies. Industries come from Jobo's enrichment pipeline; companies that haven't been enriched yet showindustries: [].- Geocoding is best-effort. Loose strings like
"Remote"or"Worldwide"won't geocode; the rawlocationstring is always preserved. - Salary normalization. All salary filters work in USD; source currencies (EUR, GBP, etc.) are converted server-side using current FX rates.
- Global enterprise footprint. SmartRecruiters postings span every continent. Use
locationsto scope by country or region; without it, results default to global.
Use cases
| Industry | Use case |
|---|---|
| Job Boards | Build aggregators with rich structured data from SmartRecruiters employers |
| AI Agents | Power career chatbots and résumé-matching agents with normalized job data |
| HR Tech | Analyze competitor hiring trends, salary benchmarks, and skill demand |
| Recruiting | Source candidates and roles at SmartRecruiters customers |
| Salary Research | Benchmark compensation across SmartRecruiters's enterprise customer base |
| Market Research | Track sector hiring velocity through SmartRecruiters postings |
Is it legal to scrape ATS job listings?
Our scrapers are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our scrapers, when used for ethical purposes by Apify users, are safe. However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.
FAQ
Is this actor SmartRecruiters-only?
Yes — this actor queries SmartRecruiters exclusively. source is always "smartrecruiters". To search SmartRecruiters alongside Greenhouse, Lever, Workday, and 53 more ATSes in one call, use ATS Jobs Search.
Should I use this actor or ATS Jobs Search?
Use this actor when you only care about SmartRecruiters — simpler input, no source scoping needed. Use ATS Jobs Search when you want cross-ATS coverage or want to compare SmartRecruiters jobs against other platforms in a single normalized response.
Should I use this actor or ATS Jobs Feed?
Use SmartRecruiters Jobs Scraper for filtered, paginated queries (job-board UIs, AI agents, real-time lookups). Use ATS Jobs Feed for bulk download (data pipelines, full-inventory sync) — cursor pagination, 1,000 jobs per batch, built for high throughput.
Are duplicates de-duped?
Yes — Jobo Connect de-duplicates by (company + canonical title + listing URL) before returning results, so the same role won't appear twice.
Can I filter by salary?
Yes — min_salary_usd and max_salary_usd, normalized to USD server-side. Jobs without a disclosed salary are excluded when either filter is set.
How often is data updated?
Jobs are verified daily. Expired listings are removed within 24 hours.
Where can I check if the Jobo API is up?
At jobo.world/status — the live status page for the Jobo Connect API behind this actor.
Related actors
| Actor | Best for |
|---|---|
| ATS Jobs Search | Search all 57 ATS platforms at once |
| ATS Jobs Feed | Bulk download for data pipelines (cursor pagination, 1k/batch) |
| Greenhouse Jobs Scraper | US tech unicorns |
| Workday Jobs Scraper | Fortune 500 enterprises |
| Crunchbase Company Lookup | Pair with company.details_url for funding / leadership data |
Changelog
2.2
- Job description in the listing view. The full
descriptionfield now appears directly in the Job Listings view. - Company enrichment is opt-in.
include_company_detailsnow defaults to off — the listing view carries a lightweight company preview, and the Company details view holds the full profile when enabled.
2.1
- Company enrichment (opt-in).
include_company_detailsreplaces the lightweight company preview with the full company profile — funding, leadership, ratings, tech stack, H1B sponsorship, acquisitions, investors and more — fetched once per unique company. Off by default — enable it when you need company data. - New "Company details" output view.
2.0
- Richer per-job shape: AI-extracted
qualifications(typed hard/soft skills, education, certifications),responsibilities[],benefits[],summary, andnormalized_title. - Geocoded
locations[](resolved city / region / country / lat / lon). - New filters: salary range (
min_salary_usd/max_salary_usd), skills include/exclude, companies include/exclude, work model, experience level, employment type, and negative query syntax. - Work-authorization signals:
is_work_auth_required,is_h1b_sponsor,is_clearance_required. - Existing inputs (
queries,locations,posted_after,page,page_size) are unchanged from v1.x.
About Jobo
Jobo provides comprehensive job data infrastructure for developers and businesses. Our ATS Jobs Database powers job boards, AI agents, and HR tech platforms worldwide.
- Website: jobo.world
- Enterprise API: jobo.world/enterprise
- API status: jobo.world/status
- Support: enrico@jobo.world