ZipRecruiter Job Scraper⚡ avatar

ZipRecruiter Job Scraper⚡

Pricing

Pay per usage

Go to Apify Store
ZipRecruiter Job Scraper⚡

ZipRecruiter Job Scraper⚡

Extract job listings instantly with this powerful ZipRecruiter Scraper. Capture titles, salaries, and company details for HR tech or analysis. Residential proxies are highly recommended for optimal stability and success. Get the data you need efficiently!

Pricing

Pay per usage

Rating

5.0

(1)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

0

Bookmarked

21

Total users

9

Monthly active users

12 days ago

Last modified

Share

ZipRecruiter Jobs Scraper

Extract and collect ZipRecruiter job listings into structured datasets for analysis, research, and automation. Gather job titles, companies, locations, salary information, full descriptions, and apply links at scale. This actor is built for fast, reliable job data collection workflows.

Features

  • Comprehensive Job Data — Collect detailed listing records including job content, compensation fields, and metadata.
  • Flexible Search Inputs — Start from a direct search URL or use keywords and location.
  • Automatic Pagination — Continue across result pages until you hit your limits.
  • Freshness Filtering — Restrict results to recent postings using a day-range filter.
  • Structured Exports — Use JSON, CSV, Excel, and other dataset export formats.
  • Automation Ready — Run manually, on schedule, or through API integrations.

Use Cases

Recruitment Pipeline Enrichment

Collect targeted job datasets by role and location to enrich recruiting workflows. Track openings from specific regions or categories and sync data downstream.

Job Market Intelligence

Analyze hiring demand by title, location, compensation range, and posting recency. Use the data for reporting, trend analysis, and competitive monitoring.

Lead Generation for B2B Services

Find companies actively hiring in your service niche and create prospect lists. Use job activity as an intent signal for outreach campaigns.

Career Research and Content

Gather current job trends for salary guides, skills reports, and job-seeker resources. Build data-backed insights from recent posting activity.

Internal BI and Dashboards

Feed datasets into warehouse or BI tools for recurring reporting. Monitor role distribution, market shifts, and hiring spikes over time.


Input Parameters

ParameterTypeRequiredDefaultDescription
searchUrlStringNoDirect ZipRecruiter search URL. When provided, it overrides search query and location fields.
searchQueryStringNo"software engineer"Keywords or job title to search for. Required when searchUrl is not provided.
locationStringNo"New York, NY"Target location for search results.
maxJobsIntegerNo20Maximum number of jobs to collect. Use 0 for unlimited until other limits are reached.
maxPagesIntegerNo50Maximum number of result pages to process.
daysBackStringNo"any"Posting recency filter. Allowed values: any, 1, 3, 7, 14, 30.
proxyConfigurationObjectNoResidential proxy presetProxy configuration for reliable collection.

Output Data

Each dataset item contains job listing data like:

FieldTypeDescription
titleStringJob title.
companyStringCompany display name.
companyCanonicalNameStringCanonical company name when available.
companyIdStringCompany identifier when available.
companyUrlStringCompany page URL.
companyLogoUrlStringCompany logo URL.
locationStringDisplay location text.
locationCityStringCity value.
locationStateStringState value.
locationStateCodeStringState code value.
locationCountryStringCountry value.
locationCountryCodeStringCountry code value.
isRemoteBooleanIndicates remote classification.
locationTypesArrayLocation type labels.
employmentTypesArrayEmployment type labels.
jobTypeStringCombined employment type string.
salaryStringHuman-readable salary summary.
salaryMinNumberMinimum salary when available.
salaryMaxNumberMaximum salary when available.
salaryMinAnnualNumberAnnualized minimum salary when available.
salaryMaxAnnualNumberAnnualized maximum salary when available.
salaryIntervalStringSalary interval value.
salaryCurrencyStringSalary currency code.
postedDateStringPosting date value.
postedAtUtcStringUTC posting timestamp.
rollingPostedAtUtcStringRolling UTC posting timestamp.
isActiveBooleanListing active flag when available.
urlStringJob URL.
externalApplyUrlStringExternal apply URL when available.
applyButtonTypeStringApply button type value.
applyDestinationStringApply destination value.
applyStatusString/NullApply status value when available.
listingKeyStringListing key identifier.
matchIdStringMatch identifier.
jobIdStringJob identifier.
openSeatIdStringOpen seat identifier when available.
descriptionStringFull job description text.
shortDescriptionStringShort listing summary text.
htmlDescriptionStringRich description content when available.
searchQueryStringInput keyword used in the run.
searchLocationStringInput location used in the run.
pageNumberResults page number.
scrapedAtStringExtraction timestamp.
rawCardObjectRaw listing payload.
rawDetailsObjectRaw detailed payload.

Usage Examples

Collect software engineering jobs in New York:

{
"searchQuery": "software engineer",
"location": "New York, NY",
"maxJobs": 50
}

Direct Search URL

Use a ZipRecruiter search URL directly:

{
"searchUrl": "https://www.ziprecruiter.com/jobs-search?search=data+analyst&location=Remote",
"maxJobs": 100,
"maxPages": 20
}

Recent Jobs with Proxy Configuration

Focus on fresh jobs and use proxy settings:

{
"searchQuery": "product manager",
"location": "California",
"daysBack": "7",
"maxJobs": 200,
"maxPages": 50,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Sample Output

{
"title": "Software Engineer, Observability",
"company": "CoreWeave",
"location": "New York, NY US",
"jobType": "Full-time",
"salary": "$109,000 - $145,000 / year",
"postedAtUtc": "2026-02-05T17:18:00Z",
"url": "https://www.ziprecruiter.com/c/CoreWeave/Job/Software-Engineer,-Observability/-in-New-York,NY?jid=example",
"externalApplyUrl": "https://coreweave.com/careers/jobs/example",
"listingKey": "exampleListingKey",
"matchId": "exampleMatchId",
"isRemote": false,
"description": "We are looking for a software engineer to build and scale observability services...",
"searchQuery": "software engineer",
"searchLocation": "New York, NY",
"page": 1,
"scrapedAt": "2026-02-08T14:15:28.000Z"
}

Tips for Best Results

Start with Tight Searches

  • Use specific keywords to reduce irrelevant results.
  • Narrow by location when possible for cleaner datasets.

Control Volume Intentionally

  • Start with maxJobs 20-100 for test runs.
  • Increase maxPages and maxJobs for production runs.

Use Recency Filters

  • Set daysBack to 1, 3, or 7 for fresher monitoring workflows.
  • Use any when building historical-style snapshots.

Keep Proxy Enabled

  • Use residential proxy settings for stronger reliability.
  • Keep proxy configuration consistent for scheduled runs.

Schedule for Monitoring

  • Run daily or hourly schedules to detect new listings quickly.
  • Connect runs to notifications or downstream automations.

Integrations

Connect extracted data to:

  • Google Sheets — Share and analyze job datasets quickly.
  • Airtable — Build searchable recruiting and market tables.
  • Slack — Send run notifications to your team.
  • Webhooks — Trigger custom backend workflows after each run.
  • Make — Build no-code pipelines and enrichment flows.
  • Zapier — Connect jobs data to business apps automatically.

Export Formats

  • JSON — API and engineering workflows.
  • CSV — Spreadsheet analysis and reporting.
  • Excel — Business-ready reports.
  • XML — System-to-system integrations.

Frequently Asked Questions

Do I need both searchUrl and searchQuery?

No. Use either searchUrl or searchQuery (with optional location).

How many jobs can I collect?

Set maxJobs to your target value. If set to 0, collection continues until page limits or result availability stops it.

Can I collect only recent jobs?

Yes. Use daysBack with values like 1, 3, 7, 14, or 30.

Why are some fields empty?

Some listings do not expose every field. Missing values are returned as empty or null depending on field type.

Can I automate this actor?

Yes. You can run it on schedules, call it through API, and send results to downstream tools.

Is output available as CSV and Excel?

Yes. You can export dataset items in CSV, Excel, JSON, and additional formats from Apify.


Support

For issues or feature requests, use the Apify Console issue/support channels for this actor.

Resources


This actor is intended for legitimate data collection and research use. You are responsible for complying with applicable laws, platform terms, and data usage policies in your jurisdiction.