Foundit Jobs Scraper
Pricing
from $3.00 / 1,000 job listings
Foundit Jobs Scraper
Scrape Foundit (Monster) jobs across foundit.in /.sg /.hk by keyword + location. Title, company, location with geo, salary, experience, posted date, skills, full description, apply URL. Optional JSON-LD enrich. HTTP-only via TLS impersonation. MCP-ready.
Pricing
from $3.00 / 1,000 job listings
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
152
Total users
61
Monthly active users
3 days ago
Last modified
Categories
Share
Foundit Jobs Scraper — India Hiring Data
Foundit Jobs Scraper is an Apify Actor for public Foundit India job search. It accepts keyword search text and an optional Indian city or region, then returns one validated public job record per dataset item. Each record can include the public job title, company, location, salary, experience, employment type, industry, functional area, skills, description, posting date, direct job URL, and source search URL. The Actor is usable through Apify and through Apify MCP for recruiting research, labor-market monitoring, and job discovery workflows.
Best fit and connected workflows
Use this Actor when your starting point is a Foundit search brief such as a role title, skill set, city, or region. It fits workflows that need structured hiring data for recruiting and sourcing research, market mapping by role or location, job discovery dashboards, keyword-driven AI agents, and lead generation workflows that begin with hiring signals.
When your source changes, route the workflow to the matching source-specific Actor so the extraction stays aligned with the public listing format:
- Use APEC Jobs Scraper when the research brief centers on APEC listings and the workflow needs source-aligned public job records from that board.
- Use Ashby Jobs Scraper when the source is an Ashby-hosted hiring page and the public fields follow Ashby's page structure.
- Use Bayt Jobs Data Scraper for MENA Listings when the brief points to Bayt listings across MENA markets and the workflow should stay board-specific.
Practical scenario
Maya is a recruiter building a shortlist for a senior data engineering search in Bengaluru. She starts with the keywords "senior data engineer" and sets the location to "Bengaluru", with includeJobDetails enabled so the Actor can collect fuller public descriptions where Foundit exposes them. The dataset returns fields such as title, companyName, location, salaryText, experienceText, skills, and jobUrl. Maya compares salary, experience, and skill match, then opens the jobUrl records to review the public listing pages and move the most relevant roles into her sourcing tracker.
Input
The Actor accepts these fields:
| Field | Type | Purpose |
|---|---|---|
keywords | string | Required search text such as software engineer or senior data engineer. |
location | string | Optional Indian city or region such as Bengaluru or Mumbai. Leave blank for India-wide results. |
postedWithinDays | string | Recent posting filter: any, 1, 3, 7, 14, or 30. |
sortBy | string | date for recency or relevance for Foundit's keyword ordering. |
maxResults | integer | Caps output records from 1 to 500. This is a record cap, not a page count. |
includeJobDetails | boolean | Adds fuller public descriptions where available. |
Valid focused example:
{"keywords": "data engineer","location": "Bengaluru","postedWithinDays": "7","sortBy": "date","maxResults": 50,"includeJobDetails": true}
Output
Each dataset item represents one validated public Foundit job record. The default dataset holds the job items, while the key-value store contains compact run outputs and summary metadata for the same execution.
| Field | Type | Purpose |
|---|---|---|
jobId | string | Stable public Foundit listing identifier or canonical listing hash. |
title | string | Public job title displayed by Foundit. |
companyName | string or null | Public employer name when Foundit exposes it. |
location | string or null | Public Indian city or region for the vacancy. |
country | string | Foundit India market country code, always IN. |
salaryText | string or null | Salary text shown by the public listing. |
salaryCurrency | string or null | Normalized salary currency when identifiable. |
salaryMin | number or null | Numeric lower salary bound when exposed. |
salaryMax | number or null | Numeric upper salary bound when exposed. |
salaryPeriod | string or null | Public salary time unit such as annum or month. |
experienceText | string or null | Public experience requirement. |
employmentType | string or null | Public employment type where displayed. |
industry | string or null | Public industry classification when displayed. |
functionalArea | string or null | Public role function or category when displayed. |
skills | array of string | Public skills associated with the listing. |
description | string or null | Public listing teaser or detail-page description where exposed. |
jobUrl | string | Direct public Foundit job listing URL. |
postedAt | string or null | ISO 8601 posting timestamp when Foundit exposes one. |
postedText | string or null | Human-readable posting age displayed by Foundit. |
sourceUrl | string | Public Foundit search page that yielded the record. |
scrapedAt | string | ISO 8601 collection time. |
Illustrative record:
{"jobId": "e4210a28d5355a8c476d","title": "Senior Data Engineer","companyName": "Example Technologies","location": "Bengaluru","country": "IN","salaryText": "₹12,00,000 - ₹18,00,000 per annum","salaryCurrency": "INR","salaryMin": 1200000,"salaryMax": 1800000,"salaryPeriod": "annum","experienceText": "4-7 years","employmentType": "Full time","industry": "Information Technology","functionalArea": "Engineering","skills": ["Python", "SQL", "AWS"],"description": "Build and maintain cloud data pipelines.","jobUrl": "https://www.foundit.in/job/senior-data-engineer-example-123456","postedAt": "2026-07-15T00:00:00.000Z","postedText": "2 days ago","sourceUrl": "https://www.foundit.in/search/data-engineer-jobs-in-bengaluru","scrapedAt": "2026-07-15T10:30:00.000Z"}
How it works
This Actor searches public Foundit India job listings using a residential browser session and structured extraction. It can collect search-result data and, when includeJobDetails is enabled, visit public job pages for fuller descriptions where available. When direct Foundit routes are blocked, it falls back to managed Google search restricted to public foundit.in/job/ listings for titles, snippets, and URLs. The live contract also specifies structured API and JSON-LD extraction, validated public records, and HTTP-only access via TLS impersonation.
The default execution configuration includes 30 minutes of timeout and 2048 MB of memory. Output is written to the default dataset and to the key-value store for execution metadata.
Pricing
This Actor uses Pay per event plus Apify platform usage. Open the live Pricing tab in Apify Console for the current event pricing and platform usage details.
actor-startis charged once when the Actor starts.job-foundis charged for each validated public Foundit job record written to the default dataset.
Example: if an execution persists twenty job records, the usage includes one start event and twenty job-found events.
Use with AI agents (MCP)
This Actor is usable through Apify MCP and fits agent workflows that need public Foundit hiring data in a structured format.
Tool description: Search public Foundit India job listings by keyword and optional location, then return one validated job record per dataset item with fields such as title, company, location, salary, experience, skills, description, and direct job URL.
Actor identity: khadinakbar/foundit-jobs-scraper
Find public Foundit jobs for "senior data engineer" in Bengaluru. Return the newest results, include job details, and give me the dataset items plus the run summary so I can compare salary, experience, and skills across the returned records.
Output interpretation: Use the dataset items as the primary machine-readable job feed. OUTPUT contains a compact run result, and RUN_SUMMARY contains run-level metadata such as pages processed and write counts. sourceUrl shows which public Foundit search page produced each record, and jobUrl points to the public listing itself.
Provenance and scope: Records come from public Foundit India pages only. The Actor is designed around public job listings and structured public fields.
Pagination and cost guidance: maxResults is a record cap, not a page count. Since job-found is charged per validated record, lowering maxResults is the direct way to cap output volume and per-record event usage.
Apify API example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: process.env.APIFY_TOKEN,});const run = await client.actor('khadinakbar/foundit-jobs-scraper').call({keywords: 'data engineer',location: 'Bengaluru',postedWithinDays: '7',sortBy: 'date',maxResults: 10,includeJobDetails: true,});const dataset = await client.dataset(run.defaultDatasetId).listItems();console.log('Run ID:', run.id);console.log('Default dataset ID:', run.defaultDatasetId);console.log('Dataset items:', dataset.items);
Best results and outcome guidance
Use clear job-search keywords that match the role you want to study, such as a title, skill set, or seniority phrase. Add a location when your workflow is city-specific. Set sortBy to date when you want recency-first output, or relevance when keyword ordering is more useful. Keep includeJobDetails enabled when downstream review depends on description text, skills, or fuller public listing context.
Continue the workflow
- Then use Glassdoor Jobs Scraper to extend Foundit Jobs Scraper — India Hiring Data with a neighboring job-market research source when the brief calls for Glassdoor data.
- Then use Dice.com Jobs Scraper — US Tech Jobs, Salary & Skills to extend Foundit Jobs Scraper — India Hiring Data with a neighboring job-market research source when the brief calls for Dice data.
Design note
I found that the live dataset contract keeps jobId, title, country, skills, jobUrl, sourceUrl, and scrapedAt as required fields, which makes each dataset row a complete public record with stable provenance.
FAQ
When should I use this Actor instead of another job scraper?
Use this Actor when your source of interest is Foundit India and your input begins with keyword and location search terms. If your workflow points to a different job board, one of the related Actors may fit the source better.
How should I route research that starts on another board?
Choose the related Actor that matches the board you plan to search. APEC, Ashby, and Bayt each have a dedicated scraper in this family, which keeps the workflow aligned with the source site and its public listing structure.
What route fits APEC-based hiring research?
Use APEC Jobs Scraper when the brief centers on APEC listings, since its source-specific extraction matches that board's public job pages.
What route fits Ashby-hosted recruiting pages?
Use Ashby Jobs Scraper when the job source is an Ashby-hosted hiring page and the workflow needs Ashby-shaped public fields.
What route fits Bayt MENA job research?
Use Bayt Jobs Data Scraper for MENA Listings when the workflow focuses on Bayt listings across MENA markets and the public listings are expected to follow that board's structure.
Can I use location filtering for India-wide research?
Yes. Leave location blank to keep the search broader across India, or set a city or region name when you need a narrower market slice.
How do I decide between date and relevance sorting?
Choose date when your workflow needs the newest public listings first. Choose relevance when the keyword match order from Foundit is more useful than recency.
What should I read from the output first?
Start with title, companyName, location, experienceText, salaryText, skills, and jobUrl. These fields are the quickest way to triage roles before opening the listing page.
Responsible use
Use this Actor for public hiring and labor-market research on Foundit India listings. Keep inputs focused on public search terms and public locations. Review the live Foundit page before making decisions that depend on exact listing content.