IIMJobs Jobs Scraper – MBA, Finance & Management Jobs India avatar

IIMJobs Jobs Scraper – MBA, Finance & Management Jobs India

Pricing

from $1.40 / 1,000 jobs

Go to Apify Store
IIMJobs Jobs Scraper – MBA, Finance & Management Jobs India

IIMJobs Jobs Scraper – MBA, Finance & Management Jobs India

Scrape IIMJobs jobs in India: MBA, finance, consulting, CA/CFA and management roles by keyword, city, experience and date, or export the whole board (~170 jobs a day). Full description, salary (LPA), skills, applicants, AmbitionBox rating. Only-new mode for daily feeds. No login. From $2/1K jobs.

Pricing

from $1.40 / 1,000 jobs

Rating

0.0

(0)

Developer

Daemon Data

Daemon Data

Maintained by Community

Actor stats

0

Bookmarked

197

Total users

115

Monthly active users

13 hours ago

Last modified

Security

Limited permissions

Share

IIMJobs Jobs Scraper – MBA, Finance & Management Jobs in India

IIMJobs Jobs Scraper is a pay-per-result Apify Actor that returns IIMJobs.com job listings (India's job board for MBA, finance, consulting, CA/CFA, sales, marketing, HR and senior management roles) as JSON, CSV or Excel. It is for executive-search firms and recruiters, HR-tech aggregators, salary-benchmark teams and B2B lead generation. Each row has the full job description (HTML and plain text), salary in LPA when the recruiter discloses it, mandatory and optional skills, applicant and view counts and the employer's AmbitionBox profile (rating, review count, industry, size, HQ) when one exists. Price: $2 per 1,000 jobs, full descriptions included, plus $0.001 per run; no login, cookies, proxy or browser. On 18 October 2026 the query product manager matched 4,097 open listings and the median first-page job had about 170 applicants.

No login, cookies, proxy or browser. $2 per 1,000 jobs, full descriptions included (plus $0.001 per run). Apify's free plan ($5 credit every month) covers about 2,500 jobs with full descriptions. Built for schedules: switch on Only new jobs since the last run and a daily run returns, and charges for, only the jobs you have not received before. Need every listing, not a keyword? All jobs on the board exports the whole IIMJobs board for a date window (about 170 new jobs a day).

Live check, 18 Oct 2026: product manager matched 4,097 open IIMJobs listings and investment banking matched 652. On the first page of product manager, the median job already had about 170 applicants.

Watch: one-minute walkthrough

How to get IIMJobs jobs as JSON, CSV or Google Sheets, and only the new postings each morning:

Who buys IIMJobs data, and what for

You areWhat this Actor gives you
Executive search and staffing firmsA daily list of new mid-senior openings by function, city and experience band, plus applicant counts, so you know which mandates are crowded before you pitch.
HR-tech products and job aggregatorsThe whole IIMJobs board as a daily feed (All jobs on the board + only-new mode), with stable job IDs (dedupKey), full JD text and de-duplication across runs, through an API you can call on a schedule.
Compensation and salary-benchmark teamsLPA ranges by role, experience band and city on every posting that discloses pay, with an explicit salaryHidden flag on the ones that don't.
B2B sales and lead generationCompanies hiring a CFO, finance controller or CHRO are about to buy finance or HR software. Each row includes the company name, domain, industry, size band and AmbitionBox profile.
Workforce and market analystsDemand for MBA, CA and CFA skills over time, hiring by city, and competition per role from applicant counts.
AI agents (MCP)Ask Claude or ChatGPT "VP finance roles in Mumbai posted this week" and let it call this Actor through Apify's MCP server.

Quick start (about a minute)

  1. Click Try for free. The form is pre-filled with product manager.
  2. Optionally add keywords (chartered accountant, investment banking, brand manager), cities (Mumbai, Bangalore, Delhi NCR, Remote) and Posted within (days) = 7.
  3. Click Start. 100 jobs with full descriptions take well under a minute and cost $0.20.
  4. Download the results as JSON, CSV or Excel, or save the input as a task, tick Only new jobs since the last run and schedule it daily to get a fresh feed in Google Sheets, a webhook, Make, Zapier or n8n.
  5. Create this daily feed in your account: console.apify.com/create-task-from-example/pyNIj6G8NdhHEPSKN (product manager, only new jobs; change the keywords), then Schedule → Daily.

From code (returns the jobs in one call):

curl -X POST "https://api.apify.com/v2/acts/data_daemon~iimjobs-jobs-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries": ["chartered accountant"], "locations": ["Mumbai"], "postedWithinDays": 7, "maxJobs": 100}'

From an AI assistant: add the MCP connector https://mcp.apify.com/?tools=data_daemon/iimjobs-jobs-scraper in Claude, ChatGPT, Cursor or VS Code.

Need tech roles too? Hirist.tech Jobs Scraper covers Hirist.tech, IIMJobs' sister board for IT jobs, and returns the same output schema, so one pipeline handles both.

Export every IIMJobs job (full-board daily feed)

For job aggregators, HR-tech products and market trackers that want all of IIMJobs rather than a few keywords: switch on All jobs on the board (allJobs). The Actor then ignores the keywords and walks every listing posted in the window, newest first, with the same fields, filters and de-duplication.

{
"allJobs": true,
"postedWithinDays": 3,
"onlyNewSinceLastRun": true,
"stateName": "iimjobs-full-board"
}

Run it once a day: the first run delivers the last three days, and every later run only the jobs it has not delivered yet (already-delivered jobs are skipped and not charged; the window counts calendar days in India time, so three days covers weekends and late runs). Measured on 26 Oct 2026, IIMJobs listed 1,199 jobs posted in the last 7 days (about 170 a day) and 4,602 in the last 30 days. A daily full-board feed with descriptions is therefore about 170 jobs, about $0.34 a day (about $10 a month), descriptions included. locations, the experience range and maxJobs still apply, so a city- or seniority-wide feed costs less. postedWithinDays defaults to 3 in this mode; the per-keyword cap does not apply. Putting * in the keywords does the same.

Input

{
"queries": ["product manager", "investment banking"],
"locations": ["Bangalore", "Remote"],
"minExperience": 3,
"maxExperience": 8,
"postedWithinDays": 7,
"includeDescription": true,
"maxJobsPerQuery": 40
}
FieldTypeDescription
queriesarraySearch keywords, one IIMJobs search per item (role or skill words; put cities in locations). A job found by two keywords is saved and charged once. Required unless allJobs is on.
allJobsbooleanIgnore the keywords and deliver every IIMJobs job in the posting window (full-board feed, about 170 a day). postedWithinDays defaults to 3; maxJobsPerQuery does not apply (default false).
locationsarrayOptional cities as IIMJobs lists them (Mumbai, Bangalore, Delhi NCR, Gurgaon, Pune, Hyderabad, Chennai, Remote, Anywhere in India). Case-insensitive substring match on the job's locations; a single known city is also applied server-side.
minExperience / maxExperienceintegerExperience range in years (0-40).
postedWithinDaysintegerOnly jobs posted in the last N days (1-365). Days count in India time, so 1 means today only: use 3 with a daily only-new schedule, 7 for a weekly report.
includeDescriptionbooleanFetch the full description (HTML + text) and company profile for each job (default true, no extra charge). Off = listing fields only, about twice as fast.
maxJobsPerQueryintegerStop a keyword after this many new jobs (default 40). product manager alone has about 4,000 open jobs.
maxJobsintegerHard cap on saved jobs for the whole run (0 = no cap).
onlyNewSinceLastRunbooleanDeliver only jobs that an earlier run with the same stateName has not delivered; skipped jobs are not charged (default false). Sets postedWithinDays to 3 when it is empty.
stateNamestringName of this saved search's memory for onlyNewSinceLastRun. Derived from the keywords, cities and experience filters when empty. Use a new key to start over.
skipJobIdsarrayJob ids you already have. Skipped before any detail fetch and never charged. Large lists are fine.
sitestringiimjobs (default). hirist also works; the dedicated Hirist.tech Jobs Scraper documents it.

Output

One record per job. Example from a real run on 18 Oct 2026 (description shortened):

{
"id": 1739557,
"dedupKey": "iimjobs:1739557",
"site": "iimjobs",
"url": "https://www.iimjobs.com/j/khatabook-senior-product-manager-1739557",
"title": "Khatabook - Senior Product Manager",
"designation": "Product Manager",
"company": {
"name": "ADJ UTILITY APPS PRIVATE LIMITED",
"domain": "khatabook.com",
"confidential": false,
"ambitionBoxRating": 3.7,
"ambitionBoxReviews": 272,
"ambitionBoxUrl": "https://www.ambitionbox.com/reviews/khatabook-office-reviews",
"industry": "FinTech",
"companyType": "Startup",
"employeesIndia": "501-1000",
"headquarters": "Bangalore,Karnataka",
"foundedYear": "2018",
"about": "At Khatabook, we're building utility solutions for the nation's 6.3 crore-strong MSME sector…"
},
"recruiter": { "name": null, "designation": "NA" },
"experienceMinYears": 4,
"experienceMaxYears": 6,
"salaryHidden": true,
"locations": ["Bangalore"],
"remote": false,
"skills": ["IT Product Management", "Online Product Management", "Consumer Internet"],
"mandatorySkills": ["IT Product Management"],
"premium": true,
"applicants": 270,
"views": 459,
"postedAt": "2026-10-14T05:10:13.127Z",
"descriptionHtml": "<p><b>Responsibilities:</b><br/><br/>- You'll help us scale our lending product…",
"description": "Responsibilities:\n\n- You'll help us scale our lending product (platform and user experience)…",
"query": "product manager",
"scrapedAt": "2026-10-17T17:35:10.489Z"
}
FieldNotes
id, dedupKey, urlIIMJobs job id, a stable iimjobs:<id> key for your own de-duplication, and the public job URL.
title, designation, skills, mandatorySkillsAs tagged by the recruiter.
company.*Job-source name, domain, logo and confidentiality flag. AmbitionBox fields (ambitionBoxRating, ambitionBoxReviews, ambitionBoxUrl, industry, companyType, employeesIndia, headquarters, foundedYear, about) are null when the profile is absent, mismatched or unverifiable.
companyInfoMatchedOptional boolean/null: true = enrichment identity matched; false = profile withheld because identity differs or cannot be established; null = no profile (including SEO-only placeholders). Older rows may omit it.
experienceMinYears, experienceMaxYearsExperience band in years.
salaryMinLpa, salaryMaxLpa, salaryHiddenSalary in LPA when disclosed. Most IIMJobs recruiters hide pay, so filter on salaryHidden: false for benchmarking.
locations, otherLocation, remoteListed cities and a remote flag.
applicants, viewsApplicant and view counts from the listing.
postedAtISO timestamp of the posting.
descriptionHtml, descriptionFull JD as HTML and plain text (includeDescription: true); null when the site has none.
recruiter.designationThe recruiter's job title. recruiter.name is always null: IIMJobs shows recruiter names only to logged-in users, and this Actor does not work around that.
query, scrapedAtThe keyword that found the job and the collection time.

Download as JSON, CSV, Excel, or push to Google Sheets, webhooks and other Apify integrations. Field names are stable; new fields are only added, so your Sheets, Zapier or Make mappings keep working.

Company identity checks

Since 6 November 2026, enrichment is kept only when the job company and profile match after punctuation, legal suffix and trailing business-descriptor normalization, or a verified brand/legal-name alias (for example TCS and Tata Consultancy Services). A review URL slug is used only when the profile has no company name. An independently supplied corporate website may identify an unnamed employer; a recruiter domain alone never overrides conflicting names.

A shared parent brand, generic words, a client mentioned in the job description or a similar spelling is insufficient. For example, Sapient/Publicis Sapient is not Tlg India; Tata Elxsi is not Tata Tele Business Services. Unresolved parent/subsidiary profiles are withheld too, so some legitimate group-level matches may be dropped. companyInfoMatched: false sets every AmbitionBox-derived field to null while retaining the job and its own company name/domain/logo. A matched staffing or consultancy profile describes the posting business, not an inferred client employer. This rule checks identity; it does not independently verify each upstream profile fact.

Scheduling & automation

For a repeatable feed, use a short keyword list, a city list and a short posting window, and let the Actor remember what it has already delivered. Start with the bounded recipe below, or use the Python and Node only-new-jobs scripts and the n8n workflow for Google Sheets and Slack.

Recipe: keywords × cities × last 3 days, only new jobs, every morning

{
"queries": ["chief financial officer", "financial controller", "fp&a"],
"locations": ["Mumbai", "Bangalore", "Delhi NCR"],
"postedWithinDays": 3,
"onlyNewSinceLastRun": true,
"stateName": "finance-leaders-daily",
"maxJobsPerQuery": 50,
"maxJobs": 50
}
  1. Paste the input, click Save as task, then Schedules → Create schedule → Daily, choose your timezone and time (for example Asia/Kolkata, 08:00), and add the task.
  2. The first run delivers up to 50 matching jobs from the last 3 days. Every later run delivers up to 50 jobs that were not delivered before, including any still in the window that exceeded the earlier run's cap, and skipped jobs are not charged. A 50-job run with descriptions costs at most $0.20 at the current FREE-tier list price; from 2 November it costs $0.101 including the start fee. The memory lives in a key-value store named iimjobs-jobs-state in your own Apify account, one record per stateName, and forgets ids after 120 days.
  3. Give each saved search its own stateName (or leave it empty and the Actor derives one from the keywords, cities and experience filters). Change the key to start over.
  4. Already de-duplicating on your side? Pass the ids you have in skipJobIds instead; they are skipped before any detail fetch and never charged.

Where the results go

  • Integrations tab of the task: Google Sheets (append rows), Slack or email (a message per run), or a webhook to your backend when the run finishes.
  • Make, Zapier, n8n: use the Apify module/node with the task id, or poll the dataset with the API call below.
  • Ready-made GitHub Actions template: india-job-alerts runs this Actor (and our Hirist, Foundit and Instahyre scrapers) every morning from your own GitHub repository and posts the new jobs to a GitHub issue, Slack, Telegram or Discord, with a CSV history.
  • Every run writes a RUN-SUMMARY record to its key-value store: keywords, jobs found, new, skipped (already delivered / skipJobIds) and charged counts, so a webhook consumer can decide what to do without opening the dataset. Its nextRun field holds the same search as a daily only-new feed input.
  • Runs started from the Console form also get a Get only new jobs daily tab in Output: the feed input for that exact search, its monthly cost from the Actor's current prices, and how many jobs the same search has on Naukri and the sister board.

Synchronous API call (waits for the run and returns the new jobs):

curl -X POST "https://api.apify.com/v2/acts/data_daemon~iimjobs-jobs-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries": ["product manager"], "postedWithinDays": 3, "onlyNewSinceLastRun": true, "stateName": "pm-daily"}'

Pricing and what a month costs

Pay per event. Platform compute is included.

EventPriceWhen it is charged
Job$0.002Each job saved to your dataset, full description and company profile included
Run start$0.001Once per run

That is $2.00 per 1,000 jobs with full descriptions (since 2 November 2026 the description is no longer a separate charge). Jobs skipped by Only new jobs since the last run or skipJobIds are never charged.

Plan discounts: prices above are for the Free and Starter plans; Scale plans pay 15% less and Business plans 30% less.

How teams use itVolume (measured 18 Oct 2026)Cost
One-off pull: 300 product-manager jobs with descriptions300 jobs$0.60
Daily feed, only new jobs: investment bankingabout 11 new jobs a dayabout $0.70 a month
Daily feed, only new jobs: product managerabout 50 new jobs a dayabout $3.00 a month

Apify's free plan includes $5 of usage a month: about 2,500 jobs with descriptions, enough for a trial and small daily feeds.

Tips

  • Use several specific keywords instead of one broad one; the API returns 20 jobs per page and the Actor de-duplicates across keywords.
  • Set includeDescription: false when you only need counts, titles, companies and skills; it roughly halves the run time (the price per job is the same).
  • With more than one city, filtering happens on our side after the search, so the count of pages read can be higher than the count of jobs saved. Only saved jobs are charged.
  • Set a maximum cost per run on the task; the Actor stops cleanly at the limit and says so in the status message.

FAQ

How much does it cost to scrape IIMJobs?

$0.002 per job with its full description (plus $0.001 per run), so 100 jobs cost $0.20 and a 50-jobs-a-day feed about $3 a month.

Is there an official IIMJobs API?

No public one. This Actor reads the JSON that the iimjobs.com website itself loads and exposes it as a REST API with schedules, webhooks and only-new-jobs runs.

Which roles does IIMJobs cover?

Management, consulting, finance, CA/CFA, sales, marketing, HR and MBA-track roles at Indian and global companies, mostly 2 to 25 years of experience.

Does it return the full job description?

Yes, as HTML and plain text, plus skills, applicant and view counts, salary in LPA when disclosed and the AmbitionBox company profile when one exists.

Why is recruiter.name null?

IIMJobs shows recruiter names only to logged-in users. The Actor keeps the recruiter's designation and does not work around the site's choice. Company name and domain come from the job; an AmbitionBox profile is included only when its identity matches.

IIMJobs vs Naukri: which should I scrape?

IIMJobs is curated mid-to-senior management, finance and consulting hiring. Naukri is all levels. For CXO, VP, CA/CFA and MBA roles, IIMJobs has far less noise.

Can I get IIMJobs and Hirist jobs together?

Yes. Hirist.tech Jobs Scraper uses the same output schema and the same onlyNewSinceLastRun mode, so one pipeline handles both boards.

Do I need a proxy or login?

No.

Python client on GitHub

datadmon/iimjobs-jobs-scraper: a tested Python script that runs this Actor and saves the results as JSON and CSV, with a real sample output, the field reference and a GitHub Actions recipe for a daily only-new feed.

  • India Jobs Feed – this board plus Naukri and eight more Indian job boards in one search and one schema, salary in LPA, cross-board duplicates folded
  • Naukri Jobs Scraper – Naukri.com, India's largest job board: salary in LPA, applicants, views, AmbitionBox rating and full description; whole-board daily export and only-new mode
  • Hirist.tech Jobs Scraper – India IT and tech jobs with full descriptions, same schema as this Actor
  • Foundit Jobs Scraper – foundit.in (Monster India) jobs with full descriptions, only-new mode for daily feeds
  • Instahyre Jobs Scraper – India tech jobs from product companies and startups with full descriptions, company size and only-new mode
  • Cutshort Jobs Scraper – Cutshort (cutshort.io) India startup and tech jobs with salary range, skills, remote policy and company stage; only-new mode

All Daemon Data Actors (Oracle career sites, India IPOs, Tickertape, Dubai property, UK Gazette, Brazil property, US import records): apify.com/data_daemon.

Support

Found a bug or need another field or source? Open an issue on the Issues tab; issues are usually answered within a day. Custom variants of this Actor are available on request.

A quick review on the actor page helps other users find it.

Disclaimer

This Actor collects publicly available job listings for informational purposes. Respect the source website's terms of use and applicable data-protection laws when using the data.