ZipRecruiter Jobs Scraper avatar

ZipRecruiter Jobs Scraper

Pricing

from $5.00 / 1,000 ziprecruiter job record scrapeds

Go to Apify Store
ZipRecruiter Jobs Scraper

ZipRecruiter Jobs Scraper

Search public US ZipRecruiter listings by keyword, location, or a public search URL. Returns validated job records for talent intelligence and labor-market research.

Pricing

from $5.00 / 1,000 ziprecruiter job record scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Search public US ZipRecruiter job listings by keyword and location, or provide public ZipRecruiter search URLs. Each dataset item is a validated job record for recruitment research, hiring intelligence, salary analysis, or labor-market dashboards.

Use it when you need public job-posting data from ZipRecruiter for recruitment research, hiring intelligence, compensation analysis, or labor-market dashboards. It works best with a clear role phrase and a city/state or Remote location.

What it returns

One dataset record represents one public job card. Common fields include title, companyName, location, isRemote, employmentType, description, normalized salary bounds when publicly shown, posting time, and its public ZipRecruiter route.

FieldMeaning
titlePublic role title
companyNameHiring organization when exposed
location / isRemotePublic work location and remote indicator
salaryText, salaryMin, salaryMaxCompensation shown in the listing, if any
descriptionPublic description or listing teaser
jobUrl / applyUrlPublic ZipRecruiter job or employer-jobs route, plus an application link if exposed
scrapedAt / sourceUrlFreshness and source provenance

Input

{
"keywords": "senior data engineer",
"location": "Remote",
"maxResults": 25,
"includeJobDetails": true
}

Alternatively, use startUrls with public ZipRecruiter search URLs. Search URLs override the keyword-built search. maxResults is always a hard cap, including when multiple URLs are provided.

Pricing

This actor uses Pay per event + usage. It charges $0.00005 for the actor start and $0.005 for each complete, schema-valid job record written to the dataset. Apify separately reports residential-proxy and compute platform usage. The live Pricing tab is the current source of truth for charge configuration. The actor logs the maximum possible event charge before collection begins and keeps event charges within maxResults.

Workflow: from a role query to a hiring decision

A talent researcher starts with a bounded query such as data engineer in Remote, then runs the actor for 25 records. Next, they compare companyName, salaryMin, salaryMax, and postedAt across the dataset to identify active employers and compensation bands. They can then export the records to a dashboard, pass the canonical jobUrl to an internal review workflow, or schedule the same input for a recurring market snapshot.

Output example

{
"jobId": "zr-example-123",
"title": "Senior Data Engineer",
"companyName": "Example Co",
"location": "Austin, TX",
"isRemote": false,
"employmentType": "FULL_TIME",
"salaryText": "$120,000 - $160,000 annually",
"salaryMin": 120000,
"salaryMax": 160000,
"salaryCurrency": "USD",
"salaryPeriod": "year",
"jobUrl": "https://www.ziprecruiter.com/c/Example/Job/Senior-Data-Engineer/-in-Austin,TX",
"applyUrl": null,
"sourceUrl": "https://www.ziprecruiter.com/jobs-search?search=data+engineer&location=Austin%2C+TX",
"scrapedAt": "2026-07-19T14:30:00.000Z"
}

API example

curl "https://api.apify.com/v2/acts/khadinakbar~ziprecruiter-jobs-scraper/runs?token=YOUR_APIFY_TOKEN" \
-X POST \
-H 'Content-Type: application/json' \
-d '{"keywords":"product manager","location":"New York, NY","maxResults":20,"includeJobDetails":true}'

Use an Authorization: Bearer header instead of putting production tokens in a URL.

AI agent prompt card

As an AI agent, collect up to 20 public ZipRecruiter jobs for "data engineer" in Remote. Read back the resulting dataset, preserve each source URL and collection time, and summarize the title, company, location, salary fields, posting time, canonical job URL, and event cost. Keep the task within public job-listing research scope.

Data quality and outcomes

ZipRecruiter is collected through an isolated Camoufox browser with US residential sessions, bounded retries, and one-at-a-time navigation. A valid query with an empty public result set returns VALID_EMPTY; input guidance is represented by INVALID_INPUT; target-route availability is represented by UPSTREAM_FAILED. Every run writes OUTPUT and RUN_SUMMARY for automation-friendly outcome readback. A PARTIAL outcome preserves the completed public records with contextual warnings. ZipRecruiter currently exposes many search cards through an employer-jobs route rather than an individual public detail link; in those cases jobUrl is that employer route and sourceUrl retains the exact search page.

Best results

  • Use clear role phrases and a city/state or Remote location.
  • Start with 10–25 results to validate the query before increasing the cap.
  • Keep detail enrichment on when descriptions or salary data matter; disable it for faster list-only research.
  • Use canonical search URLs in startUrls for focused keyword and location research.

Builder's note

I designed this actor around bounded public-job research: every persisted row is validated before its job event is charged, every result has source and collection provenance, and the run summary makes the dataset easy to interpret in downstream automation.

Focused standalone workflow

This actor is designed as a focused standalone workflow for ZipRecruiter hiring research. Start with a single role and location, validate the returned fields, then feed the dataset into the specific dashboard, CRM, or market-analysis process that owns the next decision.

Responsible use

Use this actor for lawful collection and analysis of publicly available job-listing data, consistent with applicable law, data-protection obligations, and ZipRecruiter's terms.