JazzHR Jobs Scraper - Public Career Listings
Pricing
from $1.20 / 1,000 results
JazzHR Jobs Scraper - Public Career Listings
Collect current public JazzHR vacancies with title, employer, location, employment type, description and canonical application URL.
Pricing
from $1.20 / 1,000 results
Rating
0.0
(0)
Developer
Ben
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share
JazzHR Jobs Scraper: public employer career listings
Collect listings from public JazzHR employer pages on applytojob.com. Each record contains the employer's job ID, title, location, employment type, description and detail-page URL. Use the export to maintain a company hiring feed or review openings without copying each page by hand.
Start with the tested Landing careers Task. Its saved input requests three records from one public employer board. The first returned listing can be a general-interest application pool, so the row count must not be presented as a count of specific vacancies.
Quick start
Open the Task, review the employer URL and run it with the small saved limit. After completion, open its default dataset and inspect the titles and source links before increasing the limit. This input collects the first three matching listings:
{"careerUrls": ["https://landing.applytojob.com/apply/jobs"],"query": "","includeDescription": true,"maxResults": 3}
The employer controls the order and content of that page. A result captured today can change later; a missing item in a limited search does not establish that the position closed. Keep the observation timestamp alongside the source ID when saving repeated exports.
Input and filtering
| Field | Behavior |
|---|---|
careerUrls | Public employer listing pages, or individual URLs containing /apply/jobs/details/. |
query | Space-separated words; every word must occur somewhere in the title, employer, location or included description. |
includeDescription | Defaults to true. Set false to return null descriptions. |
maxResults | Total output cap across the supplied URLs; default 3, bounded to 1–1,000. |
Query matching is case-insensitive substring matching. It does not interpret quoted phrases, Boolean operators or job seniority. For example, billing matches the Billing Analyst title. With includeDescription: false, words found only in the description cannot match the query, because description text is omitted before filtering.
For each employer board, the Actor examines at most five times the output limit in discovered detail links. A broad board with many unrelated jobs can therefore return fewer matches than the requested limit. It does not promise an exhaustive search of every JazzHR employer or every page of a large board. Supply the employer pages you actually want to follow.
The individual-link option expects JazzHR's /apply/jobs/details/ route. Other public application-link shapes are not independently accepted as direct inputs. Use the employer listing URL when unsure.
Location comes from the location segment
A public JazzHR heading can contain a department before its location. Landing's Billing Analyst page, checked September 11, 2026, displays:
Accounting - Birmingham, AL - Full Time
The Actor now returns Birmingham, AL as the location. It preserves the final segment as the employment type and does not mistake Accounting for a city. When a heading contains (Multiple states) - Full Time, the exported location is Multiple states. Missing metadata stays null.
Location remains a source label. A label such as Remote does not establish worldwide applicant eligibility, and Multiple states does not identify a particular state. Check the linked job page for residency, work-authorization and attendance requirements before publishing eligibility claims.
Output fields
| Field | Meaning |
|---|---|
job_id | Identifier from the JazzHR detail URL. Keep it as a string. |
title | Public listing title, including general-interest listings. |
company | Employer name shown on the page. |
location | Location segment of the visible metadata heading. |
employment_type | Final metadata segment, such as Full Time. |
description | Clean public description text, or null when disabled or absent. |
job_url | Detail-page URL after normal redirects. |
source | jazzhr. |
scraped_at | UTC observation timestamp. |
This excerpt comes from the Billing Analyst public page checked September 11; the export also includes the description and observation time:
{"job_id": "BCph2gHKUN","title": "Billing Analyst","company": "Landing","location": "Birmingham, AL","employment_type": "Full Time","source": "jazzhr"}
The Actor does not emit salary, department, applicant details or a vacancy-open flag. It does not infer those fields from prose. A general-interest listing remains in the dataset with its original title so your application can review or exclude it explicitly.
Exports and repeated imports
Apify's dataset provides JSON, JSONL, CSV, Excel and other platform export formats. JSON preserves null values; a spreadsheet export may show those cells as blank. Keep the original URL when handing a spreadsheet to a colleague so they can inspect an ambiguous record.
For a recurring feed, store the employer board URL together with job_id; IDs from separate employers should not be treated as one global namespace. The Actor's within-run deduplication uses the job ID, so use separate employer Tasks if cross-employer ID collisions matter. Repeated runs do not remember earlier output or suppress already-seen listings. Your destination must handle repeat imports.
A run with no matching rows currently fails with an explanatory message. That can mean an empty filter result or unavailable source data; the status alone cannot distinguish the two. Review the server log and input before retrying. Do not erase your previous snapshot solely because a run failed or returned fewer records.
Pricing
Pricing checked September 11, 2026. Each saved record creates one result event. The 512 MB default creates one start event; larger memory can change the start-event count under Apify's pricing rules.
| Plan | Per result | Per start event |
|---|---|---|
| Free | $0.0015 | $0.00005 |
| Bronze | $0.00135 | $0.000045 |
| Silver | $0.001275 | $0.0000425 |
| Gold | $0.0012 | $0.00004 |
| Platinum | $0.001125 | $0.0000375 |
| Diamond | $0.00105 | $0.000035 |
At Free rates, three records plus one start event equal $0.00455 in Actor fees. Check the live Pricing tab and your account's platform charges before choosing a larger limit. An owner's verification run is not evidence of customer revenue.
Running from your workflow
Save the employer input as a Task, then use Apify's existing Make, Zapier or n8n integration to run it and read the default dataset after success. A custom client can start /v2/acts/benthepythondev~jazzhr-jobs-scraper/runs, poll the returned run ID to a terminal status and read its default dataset. Keep the token in your server environment, and set an appropriate total-charge cap when starting a run.
Schedules require your own frequency and downstream storage decisions. Begin with a small observed workload; avoid sending duplicate alerts merely because the same job appears in two exports. This Actor does not send applications, contact employers or create schedules for you.
For related employer-board formats, compare Teamtailor and BreezyHR. Their identity and remote-location fields have different meanings, so preserve the source-specific values when joining exports.
This is an independent tool for public employer pages. Respect source access rules and description rights, and avoid collecting private candidate information. For support, open an Actor issue with the run ID, a small redacted input and the field that differs from the public page. If the export helped, an honest Store review helps other users assess it.