Naukri Jobs Scraper - Most Comprehensive
Pricing
from $0.08 / 1,000 jobs
Naukri Jobs Scraper - Most Comprehensive
๐ฅ ~$0.1/1K jobs ๐ฅ Collect public Naukri jobs by keyword, location, company, salary, work mode, experience, date, and category filters. Fetch known jobs by URL or ID, optionally enrich full details, and export normalized records without a Naukri account.
Pricing
from $0.08 / 1,000 jobs
Rating
0.0
(0)
Developer
Kai
Maintained by CommunityActor stats
0
Bookmarked
7
Total users
5
Monthly active users
2 days ago
Last modified
Categories
Share
Naukri Jobs Scraper
Collect public Naukri job listings as structured dataset records. No Naukri account is required.
Use search when you need current jobs by role, location, work mode, company, or Naukri category. Use direct lookup when you already have job URLs or IDs.
Search Naukri jobs
Start with a keyword and location
A keyword is optional. A location-only, company-only, remote-only, or internship-only search is valid.
{"keyword": "software engineer","location": "Bengaluru","maxItems": 20,"fetchDetails": true}
Search without details includes the job ID, title, URL, company, location, experience, salary text, skills, posting age, and available application links.
Choose core or full job details
| Search result | fetchDetails | Data returned |
|---|---|---|
| Core job | false | Search-card fields. |
| Full job | true | Core fields plus the full description, classification, education, company, application, walk-in, and internship fields. |
| Direct lookup | Either value | Full details are always collected. |
Filter job searches
This example combines common public filters:
{"keyword": "software engineer","location": "Bengaluru","maxItems": 50,"filters": {"sort": "date","freshness": "7","experience": 5,"workModes": ["remote", "hybrid"],"salaryRanges": ["15-25-lakhs", "25-50-lakhs"],"postedBy": ["company"],"locationRadiusKm": 25},"fetchDetails": true}
Find internships and campus jobs
{"location": "Bengaluru","maxItems": 20,"internshipFilters": {"internships": true,"internshipStipends": ["unpaid", "10-20k"],"internshipDurations": ["3-months", "flexible"],"campusJobs": false}}
A stipend or duration filter can start an internship search without
internships: true.
Search with Naukri taxonomy IDs
Naukri exposes IDs for exact company, location, department, role, industry, and education filters. These examples were observed in public Naukri responses on 2026-08-12. Naukri can change the mappings.
| Input | Observed value |
|---|---|
companyId | "7053" โ Capgemini |
companyGroupIds | ["1288"] โ Capgemini |
cityIds and originCityIds | ["97"] โ Bengaluru |
departmentIds | ["5"] โ Engineering - Software & QA |
industryIds | ["109"] โ IT Services & Consulting |
roleIds | ["255"] โ Back End Developer |
undergraduateCourseIds | ["9502"] โ Any Graduate |
postgraduateCourseIds | ["9511"] โ Any Postgraduate |
{"maxItems": 20,"advancedFilters": {"companyId": "7053","companyGroupIds": ["1288"],"companyName": "Capgemini","cityIds": ["97"],"originCityIds": ["97"]}}
Use the other advanced fields when you have the corresponding current Naukri IDs. The complete constraints are in the input reference.
Fetch known jobs
You can combine job URLs and IDs. Their combined input count must not exceed 5,000.
{"jobUrls": ["https://www.naukri.com/job-listings-software-engineer-capgemini-bengaluru-0-to-5-years-110826930912"],"jobIds": ["110826505835"],"maxItems": 2}
Before you start, replace the example URL and ID with jobs that are still available. The Actor removes tracking query parameters and URL fragments. If the same job ID occurs more than once, the Actor fetches it once.
Input-mode rules
| Mode | Select it with | Detail behaviour |
|---|---|---|
| Search | A keyword, location, experience or freshness value, enabled internship or campus flag, non-empty filter array, company value, or education-specialisation value. | Core fields are included. fetchDetails: true adds the full job fields. sort and radius fields only adjust an existing search. |
| Direct lookup | jobUrls, jobIds, or both. | Full details are always collected. Search fields cannot be combined with direct lookup. |
New runs in Apify Console prefill software engineer and Bengaluru. These values are Console examples, not API defaults. Clear both values before you use direct lookup.
Input reference
| Field | Type | Default | Description |
|---|---|---|---|
keyword | string | none | Job title, skill, or keyword. |
location | string | none | Free-text location. |
maxItems | integer | 20 | Maximum unique jobs for the entire run. Range: 1 through 5,000. |
filters | object | none | Job filter group described below. |
internshipFilters | object | none | Internship and campus filter group described below. |
jobUrls | string[] | none | Up to 5,000 HTTPS www.naukri.com job URLs that end in a 12-to-30-digit job ID. |
jobIds | string[] | none | Up to 5,000 job IDs, each 12 to 30 digits. |
fetchDetails | boolean | false | Add full descriptions, classification, education, company, application, walk-in, and internship fields. Direct lookup always gets details. |
advancedFilters | object | none | Company, location, role, industry, and education filters described below. |
requestSettings | object | none | Delay and retry settings described below. |
proxyConfig | object | {"useApifyProxy":true} | Apify connection configuration accepted by the Actor. |
Unknown top-level fields are rejected. Unknown child fields are also rejected in filters, internshipFilters, advancedFilters, and requestSettings.
Job filters
| Field | Type and allowed values | Default |
|---|---|---|
filters.sort | relevance or date | relevance |
filters.freshness | "", 1, 3, 7, 15, or 30, written as strings | empty |
filters.experience | Integer from 0 through 30 | none |
filters.workModes | One or more of office, remote, and hybrid | none |
filters.salaryRanges | One or more of 0-3-lakhs, 3-6-lakhs, 6-10-lakhs, 10-15-lakhs, 15-25-lakhs, 25-50-lakhs, 50-75-lakhs, 75-100-lakhs, and 1-5-crore | none |
filters.postedBy | company, consultant, or both | none |
filters.locationRadiusKm | Integer from 1 through 500. Requires location or advancedFilters.cityIds. | none |
Internship filters
| Field | Type and allowed values | Default |
|---|---|---|
internshipFilters.internships | boolean | false |
internshipFilters.internshipStipends | One or more of unpaid, 0-10k, 10-20k, 20-30k, 40-50k, and 50k-plus | none |
internshipFilters.internshipDurations | One or more of 2-months, 3-months, 4-months, 6-months, and flexible | none |
internshipFilters.campusJobs | boolean | false |
A stipend or duration filter can start an internship search without internships: true. Repeated enum values and repeated ID values are removed before requests are sent.
Advanced filters
All ID arrays accept 1 through 50 values. Each value can contain letters, digits, _, or - and can contain at most 100 characters.
| Field | Type | Description |
|---|---|---|
advancedFilters.companyId | positive-integer string | One company ID. |
advancedFilters.companyGroupIds | string[] | Company-group IDs. These differ from company IDs. |
advancedFilters.companyName | string | Source company value, 1 through 200 characters. |
advancedFilters.cityIds | string[] | City IDs. |
advancedFilters.localityIds | string[] | Locality IDs. |
advancedFilters.localityRadiusKm | integer | Radius from 1 through 500 km. Requires localityIds. |
advancedFilters.originCityIds | string[] | Origin-city IDs. |
advancedFilters.departmentIds | string[] | Department or functional-area IDs. |
advancedFilters.industryIds | string[] | Industry IDs. |
advancedFilters.roleIds | string[] | Role IDs. |
advancedFilters.jobTypeIds | string[] | Job-type IDs. |
advancedFilters.employmentTypeIds | string[] | Employment-type IDs. |
advancedFilters.undergraduateCourseIds | string[] | Undergraduate-course IDs. |
advancedFilters.undergraduateSpecialization | string | Source specialization value, 1 through 200 characters. |
advancedFilters.postgraduateCourseIds | string[] | Postgraduate-course IDs. |
advancedFilters.postgraduateSpecialization | string | Source specialization value, 1 through 200 characters. |
Request settings
| Field | Type | Default | Description |
|---|---|---|---|
requestSettings.requestDelayMillis | integer, 0 through 10,000 | 2000 | Delay before search detail requests, between search pages, and between direct lookups, in milliseconds. |
requestSettings.maxRequestRetries | integer, 0 through 5 | 2 | Retry count after a temporary request failure. |
Complete input reference example
This valid search shows every nested input path. Naukri can change its opaque taxonomy IDs.
Job output
Each dataset item is one job. Without fetchDetails, a search item still has
the job identity, company, location, experience, salary text, skills, posting
age, and application links. Turn on fetchDetails for the full description and
the other detail fields.
| Group | Data you can use |
|---|---|
id, title, urls | Job identity, public page, and available application links. |
description, classification | Search snippet, full text and HTML when requested, skills, role, industry, employment type, and education. |
company | Company identity, rating, public media, branding, benefits, and salary insights when available. |
location, workArrangement, experience | Source location IDs, locality labels, office or remote status, and parsed experience range. |
salary, apply | Displayed and structured compensation, application method, count, vacancies, and availability. |
dates, signals, walkIn, internship | Posting dates, source flags, views, tags, walk-in schedule, and internship terms. |
source, meta | Naukri source fields, collection time, search context, page, position, and detail status. |
Saved job sample
These unchanged values came from one saved Naukri job on 2026-08-12. The sample shows selected fields. The job can be unavailable now.
{"id": "110826930912","title": {"text": "Software Engineer"},"urls": {"naukri": "https://www.naukri.com/job-listings-software-engineer-capgemini-technology-services-india-limited-bengaluru-0-to-5-years-110826930912","apply": null,"external": null},"company": {"id": "7053","groupId": "1288","name": "Capgemini","industry": "IT Services & Consulting","rating": {"value": 3.6,"count": 55488,"source": "ambitionbox","url": "https://www.ambitionbox.com/reviews/capgemini-reviews","title": "Capgemini Reviews by Employees"}},"location": {"text": "Bengaluru","places": ["Bengaluru"],"countryCode": null,"details": [{"id": "97","label": "Bengaluru","url": "https://www.naukri.com/jobs-in-bangalore","localities": []}]},"workArrangement": {"type": "office","label": null,"hybridDetail": null},"experience": {"text": "0-5 Yrs","minYears": 0,"maxYears": 5},"meta": {"schemaVersion": "2.1","source": "naukri","scrapedAt": "2026-08-12T12:37:49.511Z","detailStatus": "complete","search": {"keyword": "software engineer","location": "Bengaluru","totalResults": 15877},"page": 1,"position": 0}}
More fields from the saved job
The same saved item contained these detail groups. The false walk-in and internship flags agree with their empty values.
Output reference
| Field | Type and contents |
|---|---|
id | string. Naukri job ID. |
title | object. text is a string. |
urls | object. naukri is a string; apply and external are strings or null. |
description | object. snippet, text, and html are strings or null. Full values usually need details. |
company | object. Identity, text, URL, address, and industry values are strings or null; isKycVerified and isCustomName are booleans or null. It also contains the objects below. |
company.rating | object. value and count are numbers or null; source is ambitionbox or null; url and title are strings or null. |
company.media | object. photos, videos, and presentations are object arrays. Each item has a string url and nullable string thumbnailUrl, title, description, and caption. |
company.branding | object. bannerUrl is a string or null. |
company.ambitionBox.benefits | object. names is string[]; reportedBy is a number or null; url is a string or null. |
company.ambitionBox.salaryInsights | object. role, minCtcText, averageCtcText, maxCtcText, and url are strings or null. |
company.ambitionBox.award | object. title and url are strings or null. |
location | object. text is a string or null; places is string[]; countryCode is IN or null; details is an object array. Each detail has nullable string id and url, string label, and string[] localities. |
workArrangement | object. type is office, remote, hybrid, or unknown; label and hybridDetail are strings or null. |
experience | object. text is a string or null; minYears and maxYears are numbers or null. |
salary | object. Text, currency, and period fields are strings or null; numeric amounts are numbers or null; disclosed is boolean; breakdown is an array of {label: string, value: string}. |
classification | object. skills, preferredSkills, otherSkills, and employmentTypes are string arrays. department, roleCategory, role, industry, and jobType are strings or null. |
classification.education | object. Course groups are string arrays; doesNotMatter is boolean or null; requirementText and degreeCombination are strings or null. |
apply | object. method is naukri, external, walk_in, or unknown; URL and text values are strings or null; counts are numbers or null; flags are booleans or null. |
dates | object. posted, postedText, and validThrough are strings or null. |
signals | object. status is active, expired, or unknown; postedBy is company, consultant, or unknown; isWalkIn is boolean; other flags are booleans or null; viewCount is a number or null; tags is string[]. |
signals.diversity | object. gender is women or null; label, url, and bannerUrl are strings or null. |
walkIn | object. start, end, timing, venue, and mapUrl are strings or null; workingDays is string[]. |
source | object. board, mode, and roleCategoryId are strings or null; isTopGroup is boolean or null. |
internship | object. isInternship and hasPrePlacementOffer are booleans or null; dates and duration are strings or null; perks is string[]; stipend.text and stipend.currency are strings or null. |
meta | object. schemaVersion is 2.1; source is naukri; scrapedAt is a string; detailStatus is not_requested, complete, or failed; page and position are numbers or null. search contains nullable string keyword and location, and nullable number totalResults. |
Limits
- A search needs at least one selector.
filters.sort, either radius field,maxItems, detail settings, and request settings do not start a search by themselves. - Search fields cannot be combined with
jobUrlsorjobIds. Direct lookup can combine URLs and IDs, but their combined count cannot exceed 5,000. filters.locationRadiusKmrequireslocationor a city ID.advancedFilters.localityRadiusKmrequires a locality ID.- Naukri controls its ID taxonomies. An accepted ID can later stop matching the same label.
- Search results keep Naukri's order. Duplicate job IDs are removed before
maxItemsis applied.maxItemsis a cap and does not guarantee that the source will return that many jobs. - Search records can contain
meta.detailStatus: "not_requested"or"failed"when full details are not present. A direct lookup can return no item when Naukri reports that the job is unavailable. - A hidden salary keeps its displayed text but uses null numeric values and
disclosed: false. - Numeric salary amounts are normalised only when Naukri provides structured INR values or clear INR text.
- Naukri does not show every field on every job. Missing scalar values use
nullor an explicitunknownenum; repeated fields use empty arrays. - Naukri can change or remove jobs after collection.