Naukri jobs API: salary in LPA, daily whole-board feed
Naukri Jobs Scraper is a pay-per-record Apify Actor by Daemon Data that returns Naukri.com jobs with salary in LPA, experience, skills, applicants, views, AmbitionBox rating and full description; whole-board daily export and only-new mode as JSON, CSV or Excel. It costs $0.0008 per job with the default options ($0.80 per 1,000); no login to the source site and no proxy or browser to set up on your side, and the same input runs from the Apify console, one REST call, Python, Node.js, n8n or an AI assistant through MCP.
Daemon Data Naukri Jobs Scraper on Apify Listing as plain text
Why teams use it
- Job aggregators and job boards: a complete daily feed of new Indian jobs in one schema.
- Recruiters and staffing firms: see which companies are hiring for which roles and cities, and how many people already applied.
- HR analytics and salary research: salary bands in LPA by role, city and experience; demand by skill.
- Sales teams: companies that are hiring are companies that are growing; use hiring as a buying signal.
- AI agents and job-search tools: fresh Indian jobs as structured data through the API or MCP.
Output fields
Top-level fields of each record: id, dedupKey, url, title, company, experienceMinYears, experienceMaxYears, experienceText, salaryMinInr, salaryMaxInr, salaryMinLpa, salaryMaxLpa, salaryHidden, salaryText, locations, locationText, workMode, skills, roleCategory, role, functionalArea, industry, employmentType, education, openings, applicants, views, postedByConsultant, walkIn, postedAt, summary, descriptionHtml, description, query, scrapedAt.
Input and how to call it
Example input. Fields and pricing were checked against the public listing on 2026-11-09; this build does not run paid example searches.
{
"queries": [
"data analyst"
],
"locations": [
"Bangalore"
],
"postedWithinDays": 3,
"maxJobsPerQuery": 50
}
One HTTP call starts a run, waits for it and returns the records (token from console.apify.com):
curl -X POST "https://api.apify.com/v2/acts/data_daemon~naukri-jobs-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"queries": ["data analyst"], "locations": ["Bangalore"], "postedWithinDays": 3, "maxJobsPerQuery": 50}'
Python: ApifyClient(token).actor("data_daemon/naukri-jobs-scraper").call(run_input=...). Python example · Node.js example · n8n workflow.
AI assistant (MCP): add the remote server https://mcp.apify.com/?tools=data_daemon/naukri-jobs-scraper with header Authorization: Bearer YOUR_APIFY_TOKEN in Claude, ChatGPT, Cursor or VS Code and ask for the data in plain words.
All input fields
| Field | Type | Meaning |
|---|---|---|
queries | array | Job titles, skills or company names, one search each (e.g. data analyst, java developer, Infosys). Leave empty and turn on All jobs to export the whole board. |
allJobs | boolean | Export every job posted on Naukri in the posting window instead of keyword searches (about 12,000 new jobs a day). Searches larger than Naukri's paging limit (~15,000) are split automatically by job function and city. If postedWithinDays is empty it is set to 1. |
locations | array | Cities to search, one search per city (e.g. Bangalore, Mumbai, Delhi, Pune, Hyderabad, Remote). Empty = all of India. |
experienceYears | integer | Only jobs open to a candidate with this many years of experience (Naukri's experience filter). |
workModes | array | Only jobs with these work modes. Empty = all. |
postedWithinDays | integer | Only jobs posted in the last N days (1-30). Empty = any date (up to Naukri's 30-day window). |
sortBy | string | Relevance (default) puts true keyword matches first; Naukri's date order mixes in loosely related jobs. All jobs always runs newest first. |
keywordInTitle | boolean | Keep only jobs whose title contains every word of the keyword (e.g. data analyst keeps "Senior Data Analyst", drops "Business Analyst"). Left-out jobs are not charged. Off by default. |
includeDescription | boolean | On (default): opens each job for the full description, applicants, views, role, function, industry, education, employment type and the company's website and address, at no extra charge. Off: faster, search-card fields only (title, company, salary, experience, city, skills, short summary). |
maxJobsPerQuery | integer | Stop each keyword (per city) after this many jobs. Not used with All jobs. |
maxJobs | integer | Stop the run after this many jobs in total. 0 = no limit (the run's maximum cost still applies). |
onlyNewSinceLastRun | boolean | On: deliver only jobs that an earlier run with the same stateName (or the same search) has not delivered, and skip the rest without charging. If postedWithinDays is empty it is set to 3. Off (default): return every matching job. |
stateName | string | Optional name for the only-new memory, e.g. bangalore-data-jobs. Runs with the same name share one memory. Empty = derived from the keywords, cities, experience and work mode. |
skipJobIds | array | Naukri job IDs you already have (the id field, e.g. 041126017601); they are skipped and not charged. |
Price
$0.0008 per job ($0.80 per 1,000); $0.001 per run. List prices for Apify Free and Starter plans; Scale and Business plans pay 15% to 30% less.
| Event | Price | Per 1,000 | Charged when |
|---|---|---|---|
| Job | $0.0008 | $0.80 | One Naukri job saved to the dataset, including the full description and job-page details when descriptions are on. Jobs skipped by only-new mode, skipJobIds or the title filter are never charged. |
| Actor Start | $0.001 | Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). |
Cost example: 50 jobs with default options cost $0.041, including any start fee. This is an illustrative record count; set explicit row and total-charge caps for your run. Apify's free plan includes $5 of usage a month, about 6,250 jobs before start fees; the Actor's own compute is included in the per-record price, and records skipped by filters, de-duplication or only-new mode are not charged.
Ready-made example pages
Saved inputs you can run with one click on Apify (Examples tab); each has its own page:
- Naukri jobs API: newest jobs posted in the last 24 hours: A daily Naukri.com jobs feed as JSON: the newest 2,000 jobs posted on Naukri in the last 24 hours across all sectors and cities, with company, city, work mode, experience, salary in LPA, skills and posting time. Set maxJ
{"allJobs": true, "postedWithinDays": 1, "includeDescription": false, "maxJobs": 2000} - Naukri daily feed: only new data analyst jobs in Bangalore: A ready-made daily feed task: data analyst jobs in Bangalore posted on Naukri in the last 2 days with the keyword in the job title, only jobs this feed has not delivered before. Copy it to your account, change the keywor
{"queries": ["data analyst"], "locations": ["Bangalore"], "keywordInTitle": true, "postedWithinDays": 2, "onlyNewSinceLastRun": true, "stateName": "naukri-data-
Alternatives, honestly
| Option | What it gives you | Where it falls short for this job |
|---|---|---|
| Naukri.com website and employer integrations | Candidate search/apply and employer integration products | Employer integrations are distinct from a public bulk-reading API for job listings |
| Other Naukri Actors on Apify Store | Same board | Compare price per 1,000 with details included, salary in LPA, whole-board export past the 15,000-result limit and only-new mode |
| Build your own scraper | Full control | You keep up with Naukri's API, paging limit and job-page format yourself |