๐Ÿ’ผ Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields avatar

๐Ÿ’ผ Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields

Pricing

from $4.99 / 1,000 results

Go to Apify Store
๐Ÿ’ผ Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields

๐Ÿ’ผ Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields

Naukri Job Scraper extracts public job listings across India and Gulf markets with 41 structured fields, including titles, companies, locations, salaries, skills, descriptions, application details, and publicly available emails for recruitment and job market research.

Pricing

from $4.99 / 1,000 results

Rating

0.0

(0)

Developer

Scraper Engine

Scraper Engine

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields

Scrape job postings from Naukri.com (India) and Naukrigulf.com (UAE, Saudi Arabia, Qatar, Egypt and the wider GCC) and get back structured JSON โ€” job title, employer, salary bands, experience range, key skills, and an optional employer contact email per row. Paste Start URLs, build a keyword + location search, or fetch specific job IDs directly; every row streams to the dataset as soon as it's scraped, with no HTML parsing required on your end. Start a run on the Actor's Apify Store page to see it working on a live search.

What is Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields?

It's an Apify Actor that pulls job-posting data from Naukri.com and Naukrigulf.com and returns it as typed JSON โ€” up to 41 fields per Naukri job, covering identity, company detail, compensation, experience, education, skills, and engagement metrics, plus optional AmbitionBox company ratings and employer email/payment-processor enrichment. No Naukri or Naukrigulf account is required โ€” the Actor talks to each site's own public job-search and job-detail endpoints anonymously, the same ones a logged-out visitor's browser calls. It's built for recruiters, sales/lead-gen teams, job-market researchers, and developers or AI agents that need clean job data without maintaining their own scraper.

What Naukri and Naukrigulf job data is publicly available to scrape?

Naukri.com and Naukrigulf.com expose full job-posting detail โ€” title, company, salary, experience, skills, and description โ€” to any visitor without signing in, which is exactly what this Actor reads.

Data CategoryPublicly Available (no login)Restricted (requires a job-seeker account)
Job title, description, skills, education requirementsYesโ€”
Salary band, experience range, employment/work typeYesโ€”
Employer name, logo, address, company overview linkYesโ€”
Job view/apply counts, posted date, vacanciesYesโ€”
AmbitionBox company rating, review count, top reviewsYes (public review site)Full review history & salary insights beyond the job page
Actually applying to a job / uploading a resumeโ€”Requires a Naukri or Naukrigulf job-seeker account
Recruiter's direct phone/email inside Naukri itselfโ€”Naukri does not expose this to any visitor, login or not

Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields only returns publicly visible data โ€” what any visitor sees. Nothing behind a login wall. The optional employer-email enrichment doesn't come from Naukri at all โ€” it separately looks up the hiring company's own public website (see the Legal section below).

What data can I extract with Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields?

Every scraped job returns identity and company fields, compensation and requirement fields, and engagement/timestamp fields โ€” 41 keys in total for a Naukri.com row, plus up to 8 more optional keys when enrichment is switched on.

Job & employer identity

Field NameDescription
jobIdNaukri's internal numeric job ID
titleJob title
staticUrlDirect URL to the job posting
urlCanonical job URL (same value as staticUrl)
companyDetailObject: name, websiteUrl, details, address, hiringFor
staticCompanyNameURL to every open job at this employer
companyIdNaukri's internal company ID
clientLogoEmployer logo image URL
bannerEmployer banner image URL
groupIdCompany group ID (used for company-wide job listing)
companyOverviewUrlURL to the employer's Naukri company-overview page
companyJobsUrlURL to every open job at this employer (same as staticCompanyName)
companyDescriptionEmployer description (HTML)
basicInfoObject: jobId, title, companyName, companyId, jdURL, createdDate
modePosting mode/source, as reported by Naukri
consultanttrue if posted by a recruitment consultant rather than the employer directly
companyApplyJobtrue if applying routes to the employer's own site rather than Naukri
scrapedFromHow this job was found: search-results, company-overview, or direct-fetch

Compensation, experience & requirements

Field NameDescription
salaryDetailObject: minimumSalary, maximumSalary, currency, label, variablePercentage, hideSalary
salaryPerMonthPer-month salary figure, when Naukri publishes one
minimumExperienceMinimum years of experience required
maximumExperienceMaximum years of experience accepted
experienceTextHuman-readable experience range, e.g. 2-5 Yrs
educationObject: ug[], pg[], ppg[] โ€” accepted degree lists
roleCategoryNaukri role-category label
jobRoleNaukri job-role label
industryIndustry label
functionalAreaFunctional-area label
employmentTypeEmployment type (e.g. full-time, contract)
jobTypeJob-post type label
wfhTypeWork-from-home type code: 0 office, 1 temp. WFH, 2 remote/WFH, 3 hybrid
wfhLabelHuman-readable work-mode label matching wfhType
keySkillsObject: other[], preferred[] โ€” key-skill lists
locationsJob location(s), as returned by Naukri's own job-detail API
vacancyNumber of open vacancies

Description, engagement, timestamps & optional enrichment

Field NameDescription
descriptionFull job description (HTML, or plain text if Clean HTML is on)
shortDescriptionShort job description/summary
viewCountNumber of times the job was viewed on Naukri
applyCountNumber of applicants so far, as reported by Naukri
createdDateDate the job was posted
scrapedAtUTC timestamp this row was scraped
ambitionBoxPresent only when Include AmbitionBox Ratings is on. Object: url, rating, reviewsCount, topReviews[] (up to 5), salariesUrl
contactWebsitePresent only when Enrich Employer Emails is on and a matching company website was found
contactEmailFirst public email address found on the employer's site, if any
emailEnrichmentObject: domain, pagesChecked, emailsFound[] โ€” every email found, not just the first
takesPaymentsPresent only when Qualify by Payment Processor is on โ€” true if a payment-processor signature was detected on the employer's site
paymentProcessorsArray of detected processor names (Stripe, PayPal, Shopify, Paddle, Lemon Squeezy, WooCommerce, Square, Chargebee, Razorpay, Braintree)
paymentConfidencehigh, medium, or low, based on how many signatures matched
stripeLiveKeyPresent only if a live Stripe publishable key was found on the employer's site

โš ๏ธ Naukrigulf rows use the same 41-field shape, but several fields always come back null/empty for Naukrigulf โ€” no separate Naukrigulf job-detail endpoint exists, so education, keySkills.preferred, functionalArea, roleCategory, industry, wfhType/wfhLabel, salaryDetail, viewCount, applyCount, and ambitionBox are only ever populated for Naukri.com rows.

๐Ÿค– Add-on: Need additional job or recruiting data?

Pair this Actor with ATS Jobs API to pull listings straight from a company's own Greenhouse, Lever, Ashby, Workable, or SmartRecruiters board, or Greenhouse Job Scraper for Greenhouse-hosted career pages specifically. For candidate-side sourcing to go with your job data, LinkedIn People Profile Scraper pulls bulk LinkedIn profiles with the same live, per-section output pattern.

Why not build this yourself?

Naukri and Naukrigulf don't publish a public API for third-party job search โ€” there's no documented endpoint, rate-limit policy, or approval process to build against, so any DIY scraper has to reverse-engineer the same internal JSON APIs this Actor uses. Naukri.com additionally signs every search and job-detail request with an RSA-encrypted nkparam token whose signing key, endpoint path, and app ID are re-derived from the site's own JavaScript bundles on every deploy โ€” a scraper that hardcodes these breaks the next time Naukri ships a frontend update. On top of that, Naukri's bot-defense returns HTTP 403/406/429 once a request pattern looks automated, which means building and maintaining a proxy-escalation strategy, a shared cookie/session jar, and retry/backoff logic โ€” all before you've written a single line of field-mapping code for two structurally different sites (Naukri.com and Naukrigulf.com use entirely separate APIs with different response shapes).

This Actor already does all of that: it re-extracts the signing key live when the pinned one stops working, escalates through a proxy ladder automatically, and maps both platforms onto one consistent output schema.

How to use Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields

The Actor runs entirely inside the Apify platform โ€” no separate account with Naukri or Naukrigulf is needed.

  1. Open the Actor's page in the Apify Store and click Try for free (or Start, if you already have it saved).
  2. Provide input โ€” every field is optional, so the simplest run just needs nothing at all: leaving startUrls, jobIds, searchQuery, and location blank defaults to a developer search in india. For a targeted run, set searchQuery and location, or paste one or more URLs into startUrls.
  3. Set any optional filters worth using โ€” maximumJobs to cap the run, timeFilter or freshnessDays to limit by posting age, minSalary to drop low-paying rows, or enrichEmails/includeAmbitionBoxDetails to turn on enrichment.
  4. Click Start. Rows are pushed to the dataset live, one per job, the moment each is scraped โ€” you don't have to wait for the whole run to finish to see results. This Actor bills on the Pay-Per-Event model: each job saved to the dataset fires one row_result event, and a job that fails or gets filtered out is never pushed, so you're never charged for a row you don't receive.
  5. Download results from the Output tab as JSON, CSV, Excel, or via the API, or stream them straight into another tool.

How to scale to bulk job extraction

startUrls, jobIds, and cities are all array inputs, so one run already handles bulk input: paste dozens of search/company/job URLs into startUrls and they're each classified and scraped in the same run, list several Naukri job IDs in jobIds to refresh a specific batch, or add extra cities to cities to fan a single keyword search out across multiple locations (merged up to maximumJobs). maxConcurrency (default 10, up to 50) controls how many job pages are fetched in parallel within that one run.

What can you do with Naukri and Naukrigulf job data?

  • ๐Ÿ“ง A B2B sales rep prospecting new accounts uses contactEmail and companyDetail.name from newly posted jobs to build an outreach list of companies that are actively hiring โ€” a live buying-intent signal.
  • ๐Ÿ“Š A compensation analyst benchmarking pay filters on salaryDetail and experienceText across a role and city to see where local salary bands sit for a given experience level.
  • ๐Ÿง‘โ€๐Ÿ’ผ A recruiter tracking competitor hiring uses title, keySkills, and createdDate from a competitor's companyOverviewUrl jobs to see which roles and skills they're actively recruiting for.
  • ๐Ÿ’ณ A SaaS lead-qualification team turns on qualifyByPayment and filters on takesPayments and paymentConfidence to prioritize employers that already process online payments โ€” a signal for B2B/SaaS fit.
  • ๐Ÿค– An AI agent building a job-market briefing feeds description, keySkills, and salaryDetail from a batch of scraped jobs into an LLM prompt or a RAG index to answer questions like "what does this role typically pay" without any manual data entry.

How does Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields handle rate limits and blocking?

By default every request goes directly to Naukri/Naukrigulf with no proxy at all, for speed. If a request comes back blocked (HTTP 403, 406, or 429 โ€” Naukri's bot-defense returns 406 "recaptcha required" once a request pattern looks automated โ€” or any 5xx server error), the Actor automatically escalates through a proxy ladder: no proxy โ†’ Apify Proxy datacenter โ†’ Apify Proxy residential, retrying up to 3 times on residential before giving up on that one request. Once the run reaches residential, it stays there for every remaining request rather than dropping back down, and every escalation is logged. Naukri.com's requests are also signed with a token whose signing key is self-healing: if the pinned key stops working, the Actor re-derives a fresh one from the site's live JavaScript bundles automatically, mid-run. Each request retries up to maxRequestRetries times (default 10, max 15) with increasing backoff; if 12 consecutive requests fail at the transport level (no response reaches the site at all), the run stops making new requests but keeps whatever was already saved to the dataset.

โฌ‡๏ธ Input

All 29 input fields are optional โ€” an empty input runs a default developer search in india.

ParameterRequiredTypeDescriptionExample Value
startUrlsNoarrayNaukri/Naukrigulf search, company-overview, or direct job-detail URLs, mixed freely. Non-empty means every filter field below is ignored.["https://www.naukri.com/development-programmer-jobs?k=development"]
jobIdsNoarrayExact Naukri job IDs to fetch directly. Overrides Start URLs and every filter.["091025500280"]
platformNostringNaukri.com vs Naukrigulf.com for filter-built search only. Default "naukri". Enum: naukri, naukrigulf."naukri"
searchQueryNostringJob title, role, or keyword (filter mode). Default "developer"."data scientist"
locationNostringCity, region, or country (filter mode). Default "india" (falls back to "dubai" for Naukrigulf if blank)."bangalore"
citiesNoarrayExtra cities โ€” each runs its own search, merged up to Maximum Jobs.["pune", "hyderabad"]
maximumJobsNointegerStop after this many jobs, across every URL/city combined. Default 10, minimum 1.100
sortByNostringOrder by relevance or freshness. Default "relevance". Enum: relevance, date."date"
experienceLevelNointegerMinimum years of experience (filter mode). Minimum 0.3
jobTypeNostringForwarded to Naukri's job-post-type filter where supported."Full Time"
workModeNostringComma-separated work-mode codes: 0 office, 1 temp WFH, 2 remote/WFH, 3 hybrid."2,3"
industryNostringSingle industry name or ID, matched against Naukri's live options."IT Services & Consulting"
roleCategoryNostringSingle role-category name or ID, matched against Naukri's live options."Software Development"
companyTypeNoarrayCompany-type names or IDs, multi-select.["Product"]
salaryRangeNoarrayMulti-select annual CTC bands (โ‚น Lacs/year). Enum: 0to3, 3to6, 6to10, 10to15, 15to25, 25to50, 50to75, 75to100, 100to500, 501.["10to15", "15to25"]
departmentNoarrayNaukri department/functional-area, multi-select. Enum: "1"โ€“"37" (37 named departments, e.g. "3" = Data Science & Analytics).["3"]
ugCourseNoarrayRequired undergraduate degree, multi-select. Enum: 25 numeric-string IDs (e.g. "18" = Any Graduate).["18"]
pgCourseNoarrayRequired postgraduate degree, multi-select. Enum: 25 numeric-string IDs (e.g. "19" = Any Postgraduate).["19"]
timeFilterNostringKeep only jobs posted within this window; unparseable dates always pass. Enum: 24h, 7d, 30d, 90d."7d"
freshnessDaysNointegerServer-side "posted in the last N days" filter. Minimum 1.15
minSalaryNointegerDrop rows below this annual salary; hidden/missing salary always passes. Default 0, minimum 0.600000
includeDescriptionNobooleanInclude full HTML description + short description in each row. Default true.true
cleanHtmlNobooleanStrip HTML tags from description fields. Only applies if includeDescription is on. Default false.false
includeAmbitionBoxDetailsNobooleanEnrich each Naukri row with the employer's AmbitionBox rating, review count, and top reviews. Naukri.com rows only. Default false.true
enrichEmailsNobooleanLook up the hiring company's site and scan its home/contact/about pages for a public contact email. Default false.true
qualifyByPaymentNobooleanMeaningful only with enrichEmails on โ€” scans the same pages for payment-processor signatures. Default false.false
proxyConfigurationNoobjectApify Proxy configuration. Defaults to no proxy, with automatic escalation on a block.{"useApifyProxy": false}
maxConcurrencyNointegerHow many job pages to fetch in parallel. Default 10, minimum 1, maximum 50.10
maxRequestRetriesNointegerHow many times to retry a single request before giving up on it. Default 10, minimum 1, maximum 15.10

Example input

{
"searchQuery": "data scientist",
"location": "bangalore",
"cities": ["pune", "hyderabad"],
"maximumJobs": 50,
"sortBy": "date",
"experienceLevel": 3,
"salaryRange": ["10to15", "15to25"],
"timeFilter": "7d",
"minSalary": 1000000,
"includeDescription": true,
"cleanHtml": true,
"includeAmbitionBoxDetails": true,
"enrichEmails": true,
"qualifyByPayment": true,
"proxyConfiguration": { "useApifyProxy": false },
"maxConcurrency": 10,
"maxRequestRetries": 10
}

โฌ†๏ธ Output

Every scraped job is a single, flat JSON object pushed to the dataset the instant it's ready, with the same 41-field shape on every row regardless of which search mode found it. Export the results as JSON, CSV, or Excel from the Output tab, or read them via the Apify API โ€” and switch between the Overview, Company, Compensation & Experience, Skills & Education, Engagement & Activity, and Lead-Gen Enrichment table views to browse one slice of the data at a time instead of scrolling raw JSON.

Example output

{
"jobId": "310826502091",
"title": "Senior Data Scientist",
"staticUrl": "https://www.naukri.com/job-listings-senior-data-scientist-acme-analytics-bangalore-3-to-6-years-310826502091",
"description": "<p>We are looking for a Senior Data Scientist to join our Bangalore team...</p>",
"shortDescription": "Build and deploy ML models for demand forecasting and pricing.",
"companyDetail": {
"name": "Acme Analytics Pvt Ltd",
"websiteUrl": "https://www.acmeanalytics.com",
"details": "Acme Analytics is a data science consultancy serving retail and fintech clients.",
"address": "Bangalore, Karnataka",
"hiringFor": "Acme Analytics Pvt Ltd"
},
"staticCompanyName": "https://www.naukri.com/acme-analytics-jobs-careers-123456",
"companyId": 123456,
"clientLogo": "https://img.naukimg.com/logo_images/groups/v1/123456.gif",
"banner": null,
"salaryDetail": {
"minimumSalary": 1000000,
"maximumSalary": 1500000,
"currency": "INR",
"label": "10-15 Lacs PA",
"variablePercentage": 10,
"hideSalary": false
},
"minimumExperience": 3,
"maximumExperience": 6,
"experienceText": "3-6 Yrs",
"education": {
"ug": ["B.Tech/B.E."],
"pg": ["MBA/PGDM", "MCA"],
"ppg": []
},
"roleCategory": "Data Science & Machine Learning",
"jobRole": "Data Scientist",
"industry": "IT Services & Consulting",
"functionalArea": "Data Science & Analytics",
"employmentType": "Full Time, Permanent",
"jobType": "Full Time",
"wfhType": "3",
"wfhLabel": "Hybrid",
"locations": ["Bangalore"],
"keySkills": {
"other": ["Python", "Machine Learning", "SQL"],
"preferred": ["PySpark", "MLOps"]
},
"vacancy": 2,
"viewCount": 4820,
"applyCount": 312,
"createdDate": "2026-08-25 10:12:00",
"consultant": false,
"groupId": 654321,
"mode": "web",
"companyApplyJob": false,
"companyDescription": "Acme Analytics is a data science consultancy serving retail and fintech clients.",
"companyOverviewUrl": "https://www.naukri.com/acme-analytics-overview-654321",
"companyJobsUrl": "https://www.naukri.com/acme-analytics-jobs-careers-123456",
"salaryPerMonth": 100000,
"url": "https://www.naukri.com/job-listings-senior-data-scientist-acme-analytics-bangalore-3-to-6-years-310826502091",
"scrapedFrom": "search-results",
"basicInfo": {
"jobId": "310826502091",
"title": "Senior Data Scientist",
"companyName": "Acme Analytics Pvt Ltd",
"companyId": 123456,
"jdURL": "https://www.naukri.com/job-listings-senior-data-scientist-acme-analytics-bangalore-3-to-6-years-310826502091",
"createdDate": "2026-08-25 10:12:00"
},
"scrapedAt": "2026-09-01T09:14:22.531Z",
"ambitionBox": {
"url": "https://www.ambitionbox.com/overview/acme-analytics-overview",
"rating": 4.1,
"reviewsCount": 286,
"topReviews": [
{ "title": "Good work-life balance", "rating": 4, "likes": "Flexible hours", "dislikes": "Limited career growth", "publishedOn": "2026-06-10", "link": "https://www.ambitionbox.com/reviews/acme-analytics-reviews" }
],
"salariesUrl": "https://www.ambitionbox.com/salaries/acme-analytics-salaries"
},
"contactWebsite": "https://acmeanalytics.com",
"contactEmail": "careers@acmeanalytics.com",
"emailEnrichment": {
"domain": "acmeanalytics.com",
"pagesChecked": 2,
"emailsFound": ["careers@acmeanalytics.com", "info@acmeanalytics.com"]
},
"takesPayments": true,
"paymentProcessors": ["Stripe"],
"paymentConfidence": "medium"
}

How does it work?

For Naukri.com, the Actor calls the site's own internal jobapi search and job-detail endpoints โ€” the same ones the naukri.com website itself calls โ€” signing each request with the RSA-encrypted token Naukri's frontend generates client-side. It keeps one shared cookie session per run (Naukri's bot-defense gates its search API on a cookie set by an initial page load) and re-derives the signing key live from Naukri's own JavaScript bundles if the pinned one ever stops working, so the Actor keeps working across Naukri frontend redeploys without a manual update. Naukrigulf.com uses a separate, unsigned public search endpoint with no such token. Every request routes through a proxy ladder โ€” direct, then datacenter, then residential โ€” that escalates automatically only when a request is actually rejected. Only data any logged-out visitor can already see is ever returned, and the 41-field output shape stays the same regardless of which mode found the job or how either site's page layout changes.

Integrations

Every Apify Actor, including this one, is reachable over HTTP through the Apify API, so it works with whatever you already use to make API calls.

Calling Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields programmatically

from apify_client import ApifyClient
client = ApifyClient("<APIFY_API_TOKEN>")
run = client.actor("<YOUR_APIFY_USERNAME>/naukri-job-scraper-india-gulf-emails-41-fields").call(
run_input={
"searchQuery": "data scientist",
"location": "bangalore",
"maximumJobs": 100,
}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["title"], item["companyDetail"]["name"])

Works in Go, Ruby, Node.js, cURL โ€” any language that can make an HTTP request.

No-code tools (n8n, Make, LangChain)

In n8n, use the HTTP Request node pointed at the Actor's run-sync-get-dataset-items endpoint with your Apify API token in the Authorization header, and feed the returned JSON array straight into downstream nodes. In Make, either the native Apify app's "Run Actor" module or a plain HTTP module calling the same endpoint works the same way. In LangChain, the langchain-apify package's Apify tool wrapper can call this Actor by its ID and hand the resulting dataset items directly to an agent or chain as tool output.

Scraping publicly accessible job-posting data โ€” the kind any visitor can see without logging in โ€” is generally permissible, and Naukri Job Scraper โ€” India + Gulf ยท Emails & 41 Fields only ever returns that. The core 41-field job data (title, company, salary, skills, description) is business/product data about a job posting, not personal data about an individual, so no personal-data regime applies to it โ€” your use is governed by Naukri's and Naukrigulf's own terms of service rather than GDPR or CCPA. The optional email enrichment is different: it scans a hiring company's own public website pages for a contact email, and that email can sometimes identify a specific person rather than a generic inbox โ€” treat any stored contactEmail/emailEnrichment values as personal data under GDPR/CCPA if they identify an individual, and have a lawful basis before storing or using them for outreach. Consult legal counsel if your use case involves bulk storage of personal data.

Frequently asked questions

What Naukri and Naukrigulf job fields does this Actor return?

The top fields are title, companyDetail.name, salaryDetail, experienceText, and keySkills, alongside 36 more identity, compensation, and engagement fields โ€” see the data fields section above for the full list.

Does it require a Naukri or Naukrigulf account or login?

No. The Actor makes anonymous HTTP requests to each site's own public search and job-detail endpoints โ€” the same calls a logged-out browser makes โ€” so no Naukri or Naukrigulf credentials are needed.

How many jobs can I extract in one run?

maximumJobs has no fixed upper bound (its default is 10, minimum 1) โ€” set it as high as the number of jobs you need. Internally, each keyword/location search stops paging after an internal safety cap of 2,000 pages, which in practice is far beyond what any single search on either site returns.

What happens if a job posting is expired, removed, or unreachable?

That job is skipped, counted as failed in the run log, and never pushed to the dataset โ€” it doesn't stop the rest of the run. โš ๏ธ One real limitation: Naukrigulf job IDs pasted into jobIds or as direct job URLs in startUrls are also skipped with a warning, since no confirmed Naukrigulf job-detail endpoint exists โ€” use a Naukrigulf search URL or platform: "naukrigulf" filter mode instead to get Naukrigulf rows.

Can I scrape multiple Naukri or Naukrigulf jobs at once?

Yes. startUrls and jobIds both accept arrays, so one run can mix any number of search pages, company pages, direct job links, or specific job IDs, and cities lets one keyword search fan out across multiple locations in the same run.

Does this Actor work with Claude, ChatGPT, and other AI agent tools?

Yes โ€” since it's callable as a plain HTTP endpoint through the Apify API, any agent framework that can make an HTTP call (LangChain, custom Claude/ChatGPT tool integrations, or any other agent runtime) can trigger a run and read back the resulting dataset.

Can I run this Actor against both Naukri.com and Naukrigulf.com in a single run?

Yes. Mix Naukri and Naukrigulf URLs freely in startUrls โ€” each is classified automatically and scraped with the platform-appropriate logic โ€” or run it twice with platform set to naukri and naukrigulf respectively for filter-built searches.

Does this Actor return data in a format LLMs can use directly?

Yes. Every row is typed, normalized JSON with consistent field names across runs โ€” no HTML parsing or CSS selectors required. Pass it directly to an LLM prompt, index it into a vector store, or feed it to an agent tool as-is.

What happens when Naukri or Naukrigulf changes its layout or anti-bot system?

The Actor is maintained, and its output schema is designed to stay stable across site changes โ€” for Naukri.com specifically, the request-signing key, endpoint paths, and app IDs are re-derived live from the site's own JavaScript bundles if the pinned values stop working, rather than requiring a code update for every deploy.

Can I use this Actor without managing proxies or browser infrastructure?

Yes. By default it connects with no proxy at all, and automatically escalates through Apify's datacenter and residential proxy tiers only if a request actually gets blocked โ€” you don't need to configure, rotate, or pay for a proxy yourself unless you want to force a specific tier.

Which fields work best for AI training data and RAG indexing?

For RAG, index description, shortDescription, and keySkills โ€” the highest-information text fields for semantic search. For structured training data, jobId, companyId, salaryDetail, minimumExperience/maximumExperience, and createdDate stay consistently structured across every row, all returned as typed primitives rather than strings to re-parse.

Scraper NameWhat it extracts
ATS Jobs APIJob postings straight from a company's own Greenhouse, Lever, Ashby, Workable, or SmartRecruiters board
Greenhouse Job ScraperEvery open job posting from one or more Greenhouse-hosted career pages
Internshala ScrapperInternships and jobs from Internshala.com by search URL or filters
LinkedIn People Profile ScraperBulk LinkedIn people profiles โ€” headline, experience, education, and skills
Linkedin Profile Scraper with Email & Company DataLinkedIn people profiles with verified email discovery and current-company enrichment, no login required

Your feedback

Found a bug, or need a field this Actor doesn't return yet? Let us know โ€” for custom solutions or feature requests, contact dev.scraperengine@gmail.com directly. Reports like this keep the Actor maintained as Naukri and Naukrigulf change their sites over time.