# Breezy HR Jobs Monitor and Scraper

> Breezy HR jobs scraper for public boards: descriptions, salary and job links in JSON or CSV. Monitoring shows new, changed and removed jobs.

URL: https://cliqtomedia.com/actors/breezy-jobs-monitor-scraper/

Category: Jobs & hiring · Status: live on Apify Store · Apify page: https://apify.com/cliqtomedia/breezy-jobs-monitor-scraper?fpr=cliqto

Add up to 4 Breezy HR board URLs. You get current jobs with descriptions and links. Salary appears when the employer shares it, and monitoring shows changes.

## How to use it: 3 steps

1. **Make a free Apify account.** Apify is the cloud platform where our tools run. The free plan gives you $5 of usage every month, no credit card needed. You pay Apify, not us.
2. **Paste your input and press Start.** No code needed: you fill in a form (the input). It already has a working example. For example: `https://the-san-francisco-standard.breezy.hr/` in Breezy career URLs. Each start is one run.
3. **Download the results.** When the run ends, the results are in a table (the dataset). Open Output, press Export and pick Excel or CSV. JSON and the API are there too.

## What it does

Read public Breezy HR jobs from company career boards. Get descriptions, salary data and job links in JSON or CSV. Turn on monitoring to see new, changed and removed jobs after a full scan. Pay $0.0018 per saved current job, plus $0.06 per run.





## Price

Pay per event. Apify bills you, not us.

| What you pay for | Price | When |
|---|---|---|
| Start fee | $0.06 | Charged once per run. This tool uses 1 GB of memory or less by default; more memory costs more. |
| Current job saved | $0.0018 | One unique matching current job saved to the default Dataset. |

- One job: about $0.06.
- 1,000 jobs: about $1.86.
- Every day 100 jobs, for 30 days: about $7.20 a month.

Free to try: the Apify free plan gives you $5 of usage every month, no credit card needed.

Prices checked on 24 October 2026. Current price: https://apify.com/cliqtomedia/breezy-jobs-monitor-scraper?fpr=cliqto

## Questions

### Do I need a Breezy account?

No. It reads public job boards.

### Why are some values empty?

The employer did not publish them. Missing data stays null.

### Can it search every Breezy company?

No. You give the boards you want to read.

### How many jobs per run?

Up to 50 saved jobs from up to 4 boards.

### Are all remote jobs fully remote?

No. The public marker can also appear on hybrid roles. Check `workplace`, applicant locations and the description.

### Can this replace another Breezy scraper?

The core field names follow a public career-site scraper. Description spacing, location text and result order can differ. This Actor adds status and monitoring fields. Check your mapping before switching.

## Data fields

- `company` (string)
- `company_url` (string)
- `company_logo` (string)
- `description` (string)
- `date_posted` (string)
- `valid_through` (string)
- `department` (string)
- `salary_text` (string)
- `feed_published_at` (string)
- `workplace` (string)
- `first_seen_at` (string)
- `job_id` (string)
- `title` (string)
- `location_text` (string)
- `url` (string)
- `source` (string)
- `career_site_url` (string)
- `scraped_at` (string)
- `row_status` (string)
- `change_type` (string)
- `remote` (boolean)
- `feed_remote` (boolean)
- `locations` (array)
- `employment_types` (array)
- `applicant_locations` (array)
- `salary` (object)
- `detail_source` (string)

## Input settings

- `careerUrls` (array, required): Add 1–4 HTTPS Breezy board roots or public /p/ job URLs. Duplicate boards are read once. Custom domains are not supported.
- `query` (string): All words must appear in title, company, full description, type or location. Empty means all jobs.
- `location` (string): Case-insensitive text in structured location. Empty means all locations.
- `remoteOnly` (boolean): Keep jobs with the public TELECOMMUTE marker. Some hybrid jobs also have this marker. Check workplace.
- `includeDescription` (boolean): Return clean plain text. Detail pages are still read for salary, dates and filters.
- `maxResults` (integer): Total saved current jobs, 1–50. Default 10. A capped scan is partial and cannot update the monitoring snapshot.
- `monitor` (boolean): Compare full matching scans. First full run sets the baseline. CHANGES lists removed jobs. Use sequential runs.
- `monitorKey` (string): Use a separate name for each monitoring workflow. Configuration changes create a new baseline.

## Step by step on Apify

1. Open Input.
2. Add `https://the-san-francisco-standard.breezy.hr/` to `careerUrls`.
3. Keep `maxResults: 10` and `includeDescription: true`.
4. Click Start.
5. Open Current jobs. Check `job_id`, `title` and `salary`.
6. Open Board status. A full scan has `status: "complete"`.

## Use cases

- Build a job board from known companies. Use `job_id` and `career_site_url` to update records.
- Follow hiring changes at target accounts. Read `CHANGES` after each complete monitored run.
- Collect research data. Export titles, dates, locations and disclosed salary values.

## Tips

- Use the company.breezy.hr address. Custom career domains do not work.
- Read the CHANGES record after each complete monitored run.
- Check the workplace field before you call a job fully remote.

## Limits



- Up to 4 input boards and 50 saved current jobs per run. The feed itself may contain more jobs.
- Supported Cloud memory: 256 or 512 MB. The recommended timeout is 210 seconds; the 300-second Store test and larger finite positive timeouts are supported. Unsupported memory or an unlimited timeout is rejected before source work. Each request has a 15-second timeout. The Actor stops source work after 180 seconds or before its Cloud timeout.
- At most 200 source HTTP attempts, including retries. Feed body limit: 5 MiB. Detail body limit: 2 MiB. Total received source body data is limited to 16 MiB, including unsuccessful responses and retries. SOURCE_BYTE_LIMIT stops further reads; the scan cannot update its monitoring baseline.
- Only public HTTPS Breezy subdomains are allowed. Private network addresses and redirects are rejected.
- A blocked feed, invalid JSON or changed source format is an error, not an empty board.
- A valid empty feed or no filter matches is `complete` with zero rows.
- A missing board is `not_found`. If all boards fail or are missing, the platform run fails. Mixed results are `partial`.
- A detail error can save a partial metadata row without active filters. With active filters, an unreadable detail is skipped and the scan stays partial.

## Sample result

```json
{
  "job_id": "48d4a6862c5d",
  "title": "AI & Work Reporter, Charter",
  "company": "The San Francisco Standard",
  "date_posted": "2026-06-02",
  "remote": true,
  "workplace": "hybrid",
  "salary": {"currency":"USD","unit":"YEAR","min":90000,"max":130000,"value":null},
  "salary_text": "$90,000 – $130,000 / year",
  "url": "https://the-san-francisco-standard.breezy.hr/p/48d4a6862c5d-ai-work-reporter-charter",
  "row_status": "complete",
  "change_type": "untracked"
}
```

## Use it from code

Actor ID: `cliqtomedia/breezy-jobs-monitor-scraper`

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("cliqtomedia/breezy-jobs-monitor-scraper").call(run_input={
    "careerUrls": [
        "https://the-san-francisco-standard.breezy.hr/"
    ],
    "query": ""
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)
```

```bash
curl -X POST "https://api.apify.com/v2/acts/cliqtomedia~breezy-jobs-monitor-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"careerUrls": ["https://the-san-francisco-standard.breezy.hr/"], "query": ""}'
```

```python
# pip install langchain-apify
# set APIFY_TOKEN in your environment
from langchain_apify import ApifyActorsTool

tool = ApifyActorsTool("cliqtomedia/breezy-jobs-monitor-scraper")
result = tool.invoke({"run_input": {"careerUrls": ["https://the-san-francisco-standard.breezy.hr/"], "query": ""}})
print(result)
```

run-sync waits up to 300 seconds; for longer runs start a run and use a webhook. LlamaIndex and MCP: https://cliqtomedia.com/actors/ai-agents/

## Similar tools

- [Greenhouse Jobs Monitor & Scraper](https://cliqtomedia.com/actors/greenhouse-jobs-monitor-scraper/)
- [Lever Job Scraper](https://cliqtomedia.com/actors/lever-jobs-scraper/)
- [Wellfound Jobs Scraper](https://cliqtomedia.com/actors/wellfound-jobs-scraper/)
- [Ashby Jobs Scraper](https://cliqtomedia.com/actors/ashby-jobs-scraper/)
- [Recruitee Job Snapshots & Changes](https://cliqtomedia.com/actors/recruitee-jobs-monitor-scraper/)
- [SmartRecruiters Jobs Monitor & Scraper](https://cliqtomedia.com/actors/smartrecruiters-jobs-monitor-scraper/)
