Indeed Jobs Scraper | Real-Time Job Listings API
Pricing
from $2.50 / 1,000 jobs
Indeed Jobs Scraper | Real-Time Job Listings API
Indeed job scraper for recruiters & job boards. Collect real-time postings by keyword, location, company & URL. Full descriptions, salary, filters, structured JSON. Hiring data for market research, talent sourcing, AI agents, Zapier & webhooks. Fast parallel Apify actor.
Pricing
from $2.50 / 1,000 jobs
Rating
0.0
(0)
Developer
Chidubem Aneke
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
Indeed Job Real-Time Data
The fastest way to collect Indeed job postings on Apify. Turn any job search into clean, structured JSON — ready for spreadsheets, dashboards, automations, and AI workflows. Results land in your dataset in real time, as each job is found.
Built for recruiters, talent teams, job boards, market researchers, and builders who need reliable hiring data at scale — without slow setups or messy exports.
Why this Actor
| Indeed Job Real-Time Data | Typical job data tool | |
|---|---|---|
| Speed | ~1–3 s per job | 5–15 s per job |
| Memory | 256–512 MB default | 2–4 GB+ |
| Setup | Run in seconds | Often complex configuration |
| Cost | Low compute, efficient runs | High |
| Output | Structured JSON, LLM-ready | Often messy or incomplete |
| Scale | Up to 1,000 jobs per keyword | Often capped lower |
| Filters | Full Indeed Jobs filters | Often keyword-only |
| Modes | Search · Company jobs · Job links | Usually one mode only |
Three ways to collect jobs
| Mode | What it does | Best for |
|---|---|---|
| Job search | Keyword + location search with full Indeed filters | Market scans, role tracking, location-based hiring |
| Company jobs | All open roles from specific employers | Competitor monitoring, account-based recruiting |
| Job links | Structured data from individual Indeed job URLs | Enriching a list you already have |
Enable one or combine all three in a single run.
What you get — every job, fully structured
Each record is one job posting with featureType, jobKey, and scrapedAt so you can sort, filter, and join with your own data.
| Field | What it tells you |
|---|---|
title, company, location, workplaceType | Role, employer, place, remote/hybrid/onsite |
jobUrl, applyUrl, companyUrl, companyLogo | Direct links and company branding |
descriptionText, descriptionHtml | Full job description (when detail fetch is on) |
seniorityLevel, employmentType, jobFunction | How the role is classified |
salary, benefits, applicantCount, indeedApply | Compensation signals, perks, and competition |
companyRating, companyReviewCount | Employer reputation on Indeed |
listedAtISO, postedTimeAgo | How fresh the listing is |
searchQuery, searchLocation, searchCompany, position | Which search produced this row and its rank |
sponsored, newJob | Listing signals from Indeed |
Set includeRaw: true if you need extended record data for custom processing.
featureType values: job (search) · company_job (company jobs) · scrape_by_url (job links)
Search like Indeed Jobs — get data like a database
Use the same filters job seekers use on Indeed:
- Keywords — one search per keyword (e.g.
warehouse,registered nurse) - Title — narrow to a specific role name
- Company — jobs at Amazon, Walmart, or any employer
- Location — United States, Ohio, New York, Remote, and more
- Experience level — entry, mid, senior
- Employment type — full-time, part-time, contract, temporary, internship
- Workplace — on-site, remote, hybrid
- Date posted — any time, past month, week, 3 days, or 24 hours
- Sort — relevance or most recent
- Radius — miles around your location
- Volume — up to 1,000 jobs per keyword
- Full details — toggle rich descriptions, benefits, and applicant counts on or off
Use cases — real outcomes
- Recruiting pipelines — build candidate-ready job lists by role, location, and seniority
- Job boards and aggregators — feed your product with fresh Indeed listings daily
- Market and salary research — track who is hiring, where, and for what skills
- Competitive intelligence — monitor competitor hiring by company and function
- Sales and BD — spot companies in hiring mode for timely outreach
- Staffing agencies — track demand by region, role, and employer
- AI assistants and agents — summarize listings, score fit, draft outreach, or answer hiring questions
- Data warehouses and CRMs — push JSON into Snowflake, BigQuery, HubSpot, Airtable, or your stack via API
LLM and MCP integration
Output is structured JSON — ideal for ChatGPT, Claude, Gemini, LangChain, LlamaIndex, CrewAI, and custom agents. No cleanup step. No manual formatting. Just records your model can read.
Recommended workflow
- Run the Actor with your keywords, companies, or job links.
- Pull dataset items via Apify API, webhook, or export JSON/CSV.
- Pass records to your LLM, vector store, or automation — one job per row.
Example: one job record for an LLM prompt
{"featureType": "job","jobKey": "a22fa26470cfb9ad","title": "Warehouse Supervisor","company": "Tire Discounters","location": "Cincinnati, OH 45241","workplaceType": "On-site","employmentType": "Full-time","descriptionText": "The Warehouse Supervisor is responsible for overseeing receiving, stocking and distribution...","salary": "$18 - $22 an hour","benefits": ["Health insurance", "401(k)"],"applicantCount": 12,"indeedApply": true,"companyRating": 2.9,"listedAtISO": "2026-07-07T05:00:00.000Z","postedTimeAgo": "2 days ago","jobUrl": "https://www.indeed.com/viewjob?jk=a22fa26470cfb9ad","searchQuery": "warehouse","searchLocation": "Ohio","position": 1,"scrapedAt": "2026-07-11T12:00:00.000Z"}
Apify MCP (Model Context Protocol)
Connect the Apify MCP server so AI assistants can:
- Run this Actor from natural-language instructions
- Read job results directly in the chat
- Chain with other Actors — enrich contacts, send alerts, update spreadsheets
Example MCP conversation:
User: "Find 50 warehouse jobs in Ohio posted this week and summarize top employers"→ MCP runs Indeed Job Real-Time Data with jobKeywords, jobLocation=Ohio, jobDatePosted=week→ MCP reads dataset items→ LLM summarizes hiring trends and top companies
API quick start
curl -X POST "https://api.apify.com/v2/acts/YOUR_ACTOR_ID/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"enableJobSearch": true,"jobKeywords": ["warehouse"],"jobLocation": "Ohio","jobDatePosted": "week","jobsPerQuery": 50,"fetchJobDetails": true}'
Fetch results: GET https://api.apify.com/v2/datasets/{datasetId}/items?format=json
Dataset views in Apify Console: Overview (core fields) and Full details (includes descriptions)
Export as JSON, CSV, Excel, RSS, or via API.
Input reference
Job search
| Input | Type | Default | Description |
|---|---|---|---|
enableJobSearch | boolean | true | Turn keyword search on or off |
jobKeywords | string[] | ["software engineer"] | Search keywords — one run per keyword |
jobTitle | string | — | Title filter |
jobCompany | string | — | Company filter |
jobLocation | string | "United States" | Location |
jobExperienceLevels | enum[] | all | entry_level, mid_level, senior_level |
jobTypes | enum[] | all | fulltime, parttime, contract, temporary, internship |
jobRemote | enum[] | all | onsite, remote, hybrid |
jobDatePosted | enum | any | any, month, week, 3days, day |
jobSort | enum | relevance | relevance or date |
jobsPerQuery | integer | 25 | Max jobs per keyword (1–1000) |
radiusMiles | integer | 25 | Search radius in miles (0–100) |
Company jobs
| Input | Type | Default | Description |
|---|---|---|---|
enableCompanyJobs | boolean | false | Collect jobs from company profiles |
companyNames | string[] | [] | Company names (e.g. Amazon, Target) |
jobsPerCompany | integer | 25 | Max jobs per company (1–1000) |
Job links
| Input | Type | Default | Description |
|---|---|---|---|
enableScrapeByUrl | boolean | false | Collect data from individual job links |
jobUrls | string[] | [] | Indeed job page URLs |
Output and global
| Input | Type | Default | Description |
|---|---|---|---|
fetchJobDetails | boolean | true | Full description, benefits, applicant count |
includeRaw | boolean | false | Attach extended record data |
webhookUrl | string | — | Optional URL for real-time record delivery (Zapier, Slack, CRM) |
webhookFormat | enum | json | json (full record) or slack (message) |
country | string | us | Target country market (us, uk, ca, …) |
maxItems | integer | 10000 | Max total records across all modes |
proxyConfiguration | object | residential US | Connection settings (US residential recommended) |
Full schema: Input tab on Apify Console or .actor/input_schema.json in this repository.
Quick start examples
Warehouse roles in Ohio — full details
{"enableJobSearch": true,"jobKeywords": ["warehouse"],"jobLocation": "Ohio","jobDatePosted": "week","jobSort": "date","jobsPerQuery": 50,"fetchJobDetails": true}
Jobs at a specific company
{"enableJobSearch": true,"jobKeywords": ["associate"],"jobCompany": "Amazon","jobLocation": "United States","jobsPerQuery": 100}
All jobs from employer profiles
{"enableCompanyJobs": true,"companyNames": ["Amazon", "Walmart", "Target"],"jobsPerCompany": 50,"fetchJobDetails": true}
Import specific job links
{"enableScrapeByUrl": true,"jobUrls": ["https://www.indeed.com/viewjob?jk=YOUR_JOB_KEY"],"fetchJobDetails": true}
Fresh listings only — fast summary mode
{"enableJobSearch": true,"jobKeywords": ["nurse"],"jobLocation": "Dallas, TX","jobDatePosted": "day","jobSort": "date","jobsPerQuery": 75,"fetchJobDetails": false}
High-volume market scan
{"enableJobSearch": true,"jobKeywords": ["machine learning", "data scientist", "AI engineer"],"jobLocation": "United States","jobExperienceLevels": ["mid_level", "senior_level"],"jobsPerQuery": 500,"fetchJobDetails": true}
Performance and reliability
- Residential proxy (US recommended) — best results and consistent throughput.
- Default memory: 512 MB — enough for high-volume runs with multiple keywords and companies.
- Streaming output — each job is written to the dataset immediately; nothing is buffered in memory for long runs.
- Webhook delivery — optionally POST each new record to your URL in real time (dataset is always the primary output).
- Smart search expansion — automatically broadens coverage when you request large result sets.
- Parallel processing — multiple keywords, companies, and job details run concurrently for faster results at 512 MB memory.
Limitations and compliance
- This is an unofficial tool — not affiliated with Indeed.
- Use responsibly and comply with applicable laws and Indeed's Terms of Service.
- Some fields (e.g. salary, benefits) appear only when employers publish them.
- Listing availability can change; expired postings may return summary data only.
Contact and custom work
Need something beyond this Actor? I design and build custom data solutions and full-stack products for teams that want results — not experiments.
Email: dubem115@gmail.com
GitHub: github.com/DrunkCodes
Reach out for:
- Custom Apify Actors — any website, job board, or data source
- Indeed and hiring data projects — pipelines, alerts, and dashboards at scale
- LLM and MCP integrations — connect your data to ChatGPT, Claude, and agent workflows
- Web apps and automation — data tools, internal platforms, SaaS products, and client-facing apps
- Any scraping project — lead generation, market research, monitoring, and enrichment at scale
Whether you need a one-off data feed or a production system, I can help you ship it.
Indeed Job Real-Time Data · by DrunkCodes