Breezy HR Jobs Scraper (Salaries & Hiring Emails)
Pricing
from $0.90 / 1,000 results
Breezy HR Jobs Scraper (Salaries & Hiring Emails)
Fast 128MB HTTP scraper for live Breezy HR job boards (*.breezy.hr/json). Unlike cached 100-item index scrapers, scrapes any live Breezy HR board in real time with full descriptions, salaries, locations, recruiter emails, and company domains.
Pricing
from $0.90 / 1,000 results
Rating
0.0
(0)
Developer
Data Goose
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
13 hours ago
Last modified
Categories
Security
Limited permissionsShare
Pull every open job directly from any live Breezy HR (*.breezy.hr) company board in seconds: real-time /json feeds + full HTML/plain-text descriptions, salary ranges, remote/hybrid classification, recruiter emails, corporate domains, and stateful change monitoring.
Unlike $1.30/1k cached index scrapers (such as jobo.world) that cap results at 100 items per query and lag behind live boards by 24+ hours, this Actor scrapes any live Breezy HR board in real time with no 100-item page cap and includes a built-in directory of verified active Breezy HR companies—running in just 128 MB of memory.
Which companies can I scrape?
Any company that posts its jobs on Breezy HR, not just the ones in our built-in list. Add as many as you like to urls, in any of these forms:
| You paste | Example |
|---|---|
| The company's Breezy HR board URL | https://mukuru.breezy.hr |
| Just the company's slug | mukuru |
| A single job URL | https://mukuru.breezy.hr/p/<job-id> |
Finding the slug: open any job on the company's careers page and look at the address bar. The slug is the first part of the address: mukuru.breezy.hr.
What's the built-in directory? An optional shortcut. Turn on includeBuiltInTechDirectory to also scan a short list of verified companies without typing anything. It's off by default and never limits what you can scrape.
Optional Starter Directory (Any Breezyhr Board URL or Slug Works in urls)
You can scrape any company that uses Breezyhr by pasting its board URL or company slug into urls. The 6 companies below are only the optional built-in starter list (scanned when you turn on "includeBuiltInTechDirectory": true)—they never restrict which companies you can scrape:
breezy (Breezy HR — breezyhr.com), mukuru (Mukuru — mukuru.com), shopritex (ShopriteX — shopritex.co.za), rhynocare (Rhyno Healthcare Solutions — rhynocare.com), drips (Drips — drips.com), nationsbenefits (NationsBenefits — nationsbenefits.com)
Scraping companies across multiple ATS platforms? Combine this Actor with our other live 31-field job scrapers (All-in-One ATS Job Scraper, Workday Jobs Scraper, Greenhouse Jobs Scraper, Lever Jobs Scraper, Ashby Job Scraper, SmartRecruiters Jobs Scraper, Rippling Jobs Scraper, Workable Jobs Scraper, Recruitee Jobs Scraper)—all sharing the exact same 31-field output schema (
companyDomain,salaryMin,salaryMax,recruiterEmails,isNew) so they plug into a single n8n, Make, Clay, or Python pipeline with zero field-mapping changes.
Quick Start — 3 Common Workflows
Click Save & Start in Apify Console to run the prefilled sample immediately, or copy one of these ready-to-run JSON inputs:
1. Targeted Keyword & Remote Job Search
{"urls": ["breezy", "mukuru", "shopritex"],"keywordFilter": "engineer, ai, -intern","remoteOnly": true,"maxJobsPerCompany": 25}
2. Scheduled Daily Change Monitor (Emit Only Net-New Jobs)
Run on an hourly or daily schedule—the first run establishes your baseline, and every subsequent run outputs only newly posted jobs (while logging closed/expired job IDs to RUN_SUMMARY):
{"urls": ["breezy", "mukuru", "shopritex"],"onlyNewJobs": true,"monitorName": "daily-watchlist","maxJobsPerCompany": 50}
3. Zero-Input Built-In Directory Scan (B2B Hiring Signals & Clay / CRM Enrichment)
Scan our built-in directory of verified companies without hunting down board URLs—every output record includes companyDomain, salaryFormatted, and recruiterEmails:
{"urls": [],"includeBuiltInTechDirectory": true,"deduplicateMultiLocationJobs": true,"maxJobsPerCompany": 15,"maxTotalJobs": 300}
Why developers switch to this Actor
This Actor (data-goose) | Cached index scrapers (jobo.world, etc.) / Browser scrapers | |
|---|---|---|
| Architecture & Freshness | Real-time HTTP against https://{slug}.breezy.hr/json + Semaphore(12) detail pool (128 MB RAM) | 24-hour stale cached database or 2 GB Headless Chrome |
| Result Cap | ✅ No 100-item page cap—scrapes 100% of open postings on any board | ❌ Hard-capped at 100 results per run |
| Full Descriptions + Salaries | ✅ Fetches JSON-LD JobPosting / .description HTML and extracts structured salary + regex ranges | ❌ Truncated snippets or missing salaries |
B2B Enrichment (companyDomain & recruiterEmails) | ✅ Derives root companyDomain and extracts recruiterEmails | ❌ Missing |
| Change Monitor + Closed Job Tracking | ✅ onlyNewJobs emits net-new jobs and records closedJobCount + closedJobKeys in RUN_SUMMARY | ❌ No closed job tracking |
Drop-in migration from other job scrapers
- Input: accepts
urlsas plain strings, bare slugs ("breezy","mukuru"), full Breezy HR URLs (https://breezy.breezy.hr), single job URLs (https://breezy.breezy.hr/p/12345), or legacy request-list objects ([{"url": "..."}]). - Output: emits the unified 31-field schema shared across all 10
data-gooseATS scrapers.
Input
| Field | Type | Default | Description |
|---|---|---|---|
urls | array | ["breezy", "mukuru", "shopritex", "rhynocare"] | Breezy HR board URLs, single job URLs, or bare company slugs |
includeBuiltInTechDirectory | boolean | false | Also scan the built-in list of verified Breezy HR companies |
keywordFilter | string | – | Case-insensitive regex, comma/pipe OR terms, and -exclude tokens |
excludeKeywordFilter | string | – | Comma-separated keywords or regex excluded from job titles |
departmentFilter | string | – | Substring match on department names |
locationFilter | string | – | Substring match on job locations |
remoteOnly | boolean | false | Only jobs classified as Remote |
publishedAfter | string | – | YYYY-MM-DD. Keeps jobs published on or after this date |
deduplicateMultiLocationJobs | boolean | false | Merge identical (companyToken, title, department) postings across cities into one item |
onlyNewJobs | boolean | false | Change monitor: emit only net-new jobs and record closed jobs in RUN_SUMMARY |
monitorName | string | "default" | Separate state key for each watchlist or scheduled task |
maxJobsPerCompany | integer | 20 | Cap per board (0 = automatic fair share across boards) |
maxTotalJobs | integer | 80 | Maximum total jobs across the run |
Output (Unified 31-Field Schema)
{"id": "9f8e7d6c5b4a","type": "Full-time","title": "Senior Full-Stack Engineer","description": "About Us\nWe are looking for a Senior Full-Stack Engineer...","locations": ["Remote"],"department": "Engineering","postingUrl": "https://breezy.breezy.hr/p/9f8e7d6c5b4a-senior-full-stack-engineer","applyUrl": "https://breezy.breezy.hr/p/9f8e7d6c5b4a-senior-full-stack-engineer/apply","publishedAt": "2026-11-01T12:00:00.000Z","ats": "breezyhr","companyToken": "breezy","companyName": "Breezy HR","companyDomain": "breezy.hr","internalJobId": "9f8e7d6c5b4a","requisitionId": null,"updatedAt": "2026-11-01T12:00:00.000Z","isRemote": true,"workplaceType": "Remote","departments": ["Engineering"],"offices": ["Remote"],"salaryMin": 140000.0,"salaryMax": 175000.0,"salaryCurrency": "USD","salaryInterval": "year","salaryFormatted": "USD 140,000 - 175,000 / year","salaryRanges": [{"min": 140000.0,"max": 175000.0,"currency": "USD","interval": "year","title": null,"blurb": "$140,000 - $175,000 / year","formatted": "USD 140,000 - 175,000 / year","source": "breezy_salary"}],"recruiterEmails": [],"metadata": {"friendlyId": "9f8e7d6c5b4a-senior-full-stack-engineer"},"isNew": true,"descriptionHtml": "<p>About Us...</p>","questions": null}
Pricing (Pay-Per-Event — No Monthly Subscription)
This Actor uses transparent Pay-Per-Event pricing. You only pay for jobs actually written to your dataset—filtered-out records and already-seen records (onlyNewJobs: true) cost $0.
| Plan Tier | Per Job (apify-default-dataset-item) | Cost per 1,000 Jobs | Actor Start Fee (apify-actor-start) | Proxy Cost |
|---|---|---|---|---|
| Free | $0.00150 | $1.50 | $0.005 | $0 (no proxy needed) |
| Bronze | $0.00130 | $1.30 | $0.005 | $0 |
| Silver | $0.00110 | $1.10 | $0.005 | $0 |
| Gold / Platinum / Diamond | $0.00090 | $0.90 | $0.005 | $0 |
- 128 MB Memory Footprint: Runs in pure async HTTP (
128 MBRAM instead of1–4 GBheadless browsers), reducing Apify compute usage by 8x–32x. - Built-in Spend Cap Protection: Use
maxTotalJobs/maxJobsPerCompanyor Apify's Maximum cost per run setting to cap spend to the exact cent.
API Usage
Python (apify-client)
import osfrom apify_client import ApifyClientclient = ApifyClient(os.environ["APIFY_TOKEN"])run = client.actor("data-goose/breezyhr-job-scraper").call(run_input={"urls": ["breezy", "mukuru", "shopritex", "rhynocare"],"onlyNewJobs": True,"monitorName": "breezy-daily",})for job in client.dataset(run["defaultDatasetId"]).iterate_items():print(job["companyName"], "|", job["companyDomain"], "|", job["title"], "|", job["salaryFormatted"])
n8n / Make (HTTP Request)
- Method:
POST - URL:
https://api.apify.com/v2/acts/data-goose~breezyhr-job-scraper/run-sync-get-dataset-items - Headers:
Authorization: Bearer {{APIFY_TOKEN}},Content-Type: application/json - Body:
{"urls": ["breezy", "mukuru", "shopritex", "rhynocare"],"onlyNewJobs": true,"monitorName": "n8n-breezy"}
cURL
curl -X POST "https://api.apify.com/v2/acts/data-goose~breezyhr-job-scraper/run-sync-get-dataset-items" \-H "Authorization: Bearer $APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"urls": ["breezy", "mukuru", "shopritex", "rhynocare"], "maxJobsPerCompany": 20}'
Explore the Data Goose Scraper Suite (128 MB Pure-HTTP)
All published Actors below run in 128 MB RAM with zero browser overhead and deterministic schemas (all ATS & Job scrapers share the exact same 31-field output schema):
| Actor | Target Platform & Primary Use Case |
|---|---|
All-in-One ATS Job Scraper (9 Platforms) (data-goose/career-site-job-scraper) | All-in-One Router: auto-detects & scrapes all 9 ATS platforms from any company domain or URL |
Workday Jobs Scraper: Unlimited API & Salaries (data-goose/workday-job-scraper) | Workday: Fortune 500 & global enterprises (>2,000 facet bypass + 100+ built-in boards) |
Greenhouse Jobs Scraper (Fast API & Salaries) (data-goose/greenhouse-job-scraper) | Greenhouse: High-growth tech & unicorns (US + EU API, pay_transparency salaries) |
Lever Jobs Scraper (US & EU Postings API) (data-goose/lever-job-scraper) | Lever: Tech & scaleups (US + EU fallback, native salaryRange + combined lists) |
Ashby Job Scraper (YC Startups & Salaries) (data-goose/ashby-job-scraper) | Ashby: AI startups & YC companies (includeCompensation=true structured salary tiers) |
SmartRecruiters Jobs Scraper (Enterprise API & Salaries) (data-goose/smartrecruiters-job-scraper) | SmartRecruiters: Global enterprises (ServiceNow, Bosch, Experian, Eurofins) |
Rippling Jobs Scraper (ATS Boards & Salaries) (data-goose/rippling-job-scraper) | Rippling ATS: Modern startups & scaleups (/api/v1/board/{slug}/jobs + pay ranges) |
Workable Jobs Scraper: Direct API & Salaries (data-goose/workable-job-scraper) | Workable: Mid-market & European tech (v3 list + v2 detail orchestration) |
Recruitee Jobs Scraper (Bulk API, Salaries & Emails) (data-goose/recruitee-job-scraper) | Recruitee: European & remote-first companies (single-call /api/offers JSON) |
Breezy HR Jobs Scraper (Salaries & Hiring Emails) (data-goose/breezyhr-job-scraper) | Breezy HR: SMB & agencies (live /json feeds + full descriptions, no 100-item cap) |
Looking for our E-Commerce, Lead Enrichment, Financial & Trend Scrapers? Browse all published 128 MB pure-HTTP scrapers on the Data Goose Apify Store Profile.
Support & Custom Contracting
- 🐛 Bugs & feature requests: open an issue on the Actor's Issues tab or email us.
- 📧 datagoosedev@gmail.com — we reply within one business day.