Naukri: Job Search App icon

Naukri job search data API

infoedge.com · Jobs & Careers

Naukri: Job Search App is the Android app of Naukri.com, the job portal Info Edge (India) Ltd. has run since 1997 and the company that also owns AmbitionBox, 99acres and Jeevansathi. Jobseekers sign in with email and password or OTP, search vacancies by keyword and location, narrow results with filters, and open job-detail pages that show the salary range, experience band, work-from-home type, walk-in details and AmbitionBox employer ratings and reviews. From there they apply in one tap or call the recruiter where apply-via-call is enabled, answer post-apply questionnaires, save roles for later, follow companies, and track every application and its recruiter status in the Applications tab, while a personalised For You feed groups recommended jobs around recent searches and applies. The My Naukri section holds the profile recruiters search through Naukri's Resdex database (resume headline, key skills, employment and education history, IT skills, projects, certifications, notice period, current and expected CTC), with resume upload and a resume parser that pre-fills registration and profile forms, and a Profile Performance screen shows how often the profile appeared in recruiter searches, which keywords surfaced it and what actions recruiters took. Built for India's white-collar and fresher job market, it competes with LinkedIn, Indeed, foundit and apna for jobseekers ranging from interns and freshers to experienced professionals.

Naukri vacancy cards carry jobId, title, companyName, tagsAndSkills, experienceText, wfhType and vacancy, a salaryDetail pay range in minimumSalary/maximumSalary (or a hideSalary flag), and the employer's AmbitionBox aggregateRating and reviewsCount; job details add jobDescription, walkInDetail and companyApplyUrl, search pages report noOfJobs with filter clusters, and employer groups resolve to groupName, hasLiveJob, rating and reviewsCount.

On the candidate side, a signed-in profile holds resumeHeadline, keySkills, rawTotalExperience, noticePeriod, compensation in absoluteCtc and absoluteExpectedCtc, profileCompletion, the resdexVisibility switch and nested employments, educations, itskills and certifications. An uploaded CV is tracked through cvInfo (fileName, cvFormat) and parsed into workExperience entries with company, designation, startDate, institute and yearOfCompletion, plus skills normalised from extracted to globalName. Applications record lastStatus, arsScore, applyType, applyViaCallEnabled and jobActDate, and profile-performance analytics report totalSearchAppearances, recruiterActions, searchKeyWords and a searchAppearanceTimeline.

Labour-market pipelines can poll listings and job details into a live India vacancy catalog that tracks skills demand, salary bands, work-from-home share and employer ratings. HRIS tools can attach a candidate's resume headline, key skills, current and expected CTC, profile completion and CV file onto an existing applicant record, ATS bots can map apply status and ARS score into interview-stage dashboards, and onboarding flows can hydrate company, designation, institute and skills from a parsed CV instead of a blank form. openData Studio makes this Naukri vacancy, profile and application data callable open data.

Screenshots

  • Naukri: Job Search App screenshot 1
  • Naukri: Job Search App screenshot 2
  • Naukri: Job Search App screenshot 3
  • Naukri: Job Search App screenshot 4
  • Naukri: Job Search App screenshot 5
  • Naukri: Job Search App screenshot 6
  • Naukri: Job Search App screenshot 7
  • Naukri: Job Search App screenshot 8

API surface

The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.

  • Login

    POST /v1/auth/session osint

    Authenticates a Naukri jobseeker with username/password (or encryptedToken) and returns nauk_at cookies plus userInfo.userData (email, resId, username) used as the session for every later call.

    Auth: Unauthenticated. Response cookies include nauk_at; later calls send Cookie: nauk_at=<value> and Authorization: ACCESSTOKEN = <value>. atTTL is the access-token lifetime.

    • username
    • isLoginByEmail
    • password
    • encryptedToken
    • requestSource
    • name
    • cookies
    • domain
    • expiry
    • httpOnly
    • secure
    • value
    • userInfo
    • deviceType
    • ipAddress
    • userAgent
    • userId
    • userRole
    • userType
    • newRegistration
    • encryptedResId
    • userData
    • email
    • isEmail
    • isPaidClient
    • isTechOpsLogin
    • resId
    • action
    • et
    • errorCode
    • validationErrors
    • atTTL
    POST /v1/auth/session HTTP/1.1
    Content-Type: application/json
    Accept-Charset: UTF-8
    Accept-Encoding: gzip
    
    {
      "username": "[email protected]",
      "isLoginByEmail": true,
      "password": "<password>",
      "encryptedToken": "",
      "requestSource": "android",
      "name": ""
    }
    {
      "cookies": [{
        "name": "nauk_at",
        "value": "<access-token>",
        "domain": ".naukri.com",
        "expiry": 1774550400,
        "httpOnly": true,
        "secure": true
      }],
      "userInfo": {
        "deviceType": "android",
        "ipAddress": "49.36.0.1",
        "userAgent": "Naukri/21.115",
        "userId": 8845123,
        "userRole": "jobseeker",
        "userType": "js",
        "newRegistration": false,
        "encryptedResId": "enc-res-441",
        "userData": {
          "email": "[email protected]",
          "isEmail": true,
          "isPaidClient": false,
          "isTechOpsLogin": false,
          "resId": 44189012,
          "username": "[email protected]"
        }
      },
      "userStateInfo": {},
      "data": {},
      "validationErrors": [],
      "errorCode": null,
      "action": "LOGIN_SUCCESS",
      "et": "ok",
      "atTTL": 86400
    }
  • Search jobs

    GET /v1/jobs/search opendata

    Returns the Naukri search-results page: noOfJobs, sid, and a jobDetails list of job cards (jobId, title, companyName, tagsAndSkills, salaryDetail, wfhType, isSaved/isApplied) used by the vacancy listing.

    Auth: Optional. Anonymous listing is served without a session. Signed-in calls send Cookie: nauk_at and Authorization: ACCESSTOKEN = <token> so isApplied/isSaved are personalised.

    • noOfJobs
    • sid
    • isLoggedIn
    • internshipSRP
    • variantName
    • jobDetails
    • jobId
    • title
    • shortTitle
    • companyName
    • shortCompanyName
    • companyId
    • jobType
    • currency
    • tagsAndSkills
    • jobDescription
    • jdURL
    • staticUrl
    • logoPath
    • logoPathV3
    • isSaved
    • isApplied
    • showMultipleApply
    • exclusive
    • vacancy
    • wfhType
    • createdDate
    • experienceText
    • salaryDetail
    • minimumSalary
    • maximumSalary
    • hideSalary
    • ambitionBoxData
    • aggregateRating
    • reviewsCount
    • placeholders
    • footerPlaceholderLabel
    • footerPlaceholderColor
    • applyViaCallEnabled
    • jobApplyType
    • clusters
    • clusterOrder
    • bellyFilters
    • fatFooter
    • seo
    • suggesterModel
    • segmentedExperienceInfo
    • clusterAttributes
    • keyword
    • location
    GET /v1/jobs/search?keyword=software+engineer&location=Bengaluru HTTP/1.1
    Accept: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    {
      "noOfJobs": 1284,
      "sid": "srp-ndr01d-8845",
      "isLoggedIn": true,
      "internshipSRP": false,
      "variantName": "adv_2",
      "jobDetails": [{
        "jobId": "071225000123",
        "title": "Software Engineer",
        "shortTitle": "Software Engineer",
        "companyName": "Example Corp",
        "shortCompanyName": "Example Corp",
        "companyId": 441890,
        "jobType": "fulltime",
        "currency": "INR",
        "tagsAndSkills": "Java, Spring, SQL",
        "jobDescription": "Build marketplace services in Bengaluru.",
        "jdURL": "https://www.naukri.com/job-listings-software-engineer-example-corp-bengaluru-071225000123",
        "staticUrl": "https://www.naukri.com/job-listings-071225000123",
        "logoPath": "https://img.naukimg.com/logo/441.png",
        "logoPathV3": "https://img.naukimg.com/logo/v3/441.png",
        "isSaved": false,
        "isApplied": false,
        "showMultipleApply": false,
        "exclusive": false,
        "vacancy": 4,
        "wfhType": 0,
        "createdDate": 1758902400000,
        "experienceText": "3-6 Yrs",
        "salaryDetail": {
          "minimumSalary": 800000,
          "maximumSalary": 1200000,
          "currency": "INR",
          "hideSalary": false
        },
        "ambitionBoxData": {
          "aggregateRating": "4.2",
          "reviewsCount": 1860,
          "title": "Example Corp Reviews",
          "url": "https://www.ambitionbox.com/reviews/example-corp"
        },
        "placeholders": [{"type": "experience", "label": "3-6 Yrs"}, {"type": "salary", "label": "8-12 Lacs"}, {"type": "location", "label": "Bengaluru"}],
        "footerPlaceholderLabel": "Posted 2 days ago",
        "footerPlaceholderColor": "#666666",
        "applyViaCallEnabled": false,
        "jobApplyType": "apply"
      }],
      "clusters": {},
      "clusterOrder": ["experience", "salary", "location"],
      "bellyFilters": {},
      "fatFooter": [],
      "seo": {},
      "suggesterModel": {},
      "segmentedExperienceInfo": {},
      "clusterAttributes": {}
    }
  • Fetch job details

    GET /v1/jobs/{jobId} opendata

    Hydrates a single Naukri posting (jobDescription, tagsAndSkills, salaryDetail, vacancy, wfhType, ambitionBoxData) for the job-details screen, including apply/save flags.

    Auth: Optional. Anonymous job descriptions are served without a session. Signed-in calls send Cookie: nauk_at and Authorization: ACCESSTOKEN = <token> so isApplied/isSaved are personalised.

    • jobId
    • title
    • companyName
    • companyId
    • jobType
    • currency
    • tagsAndSkills
    • jobDescription
    • jdURL
    • staticUrl
    • logoPath
    • isSaved
    • isApplied
    • vacancy
    • wfhType
    • experienceText
    • createdDate
    • salaryDetail
    • minimumSalary
    • maximumSalary
    • hideSalary
    • ambitionBoxData
    • aggregateRating
    • reviewsCount
    • walkInDetail
    • applyViaCallEnabled
    • companyApplyUrl
    • companyUrl
    • jobApplyType
    GET /v1/jobs/071225000123 HTTP/1.1
    Accept: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    {
      "jobId": "071225000123",
      "title": "Software Engineer",
      "companyName": "Example Corp",
      "companyId": 441890,
      "jobType": "fulltime",
      "currency": "INR",
      "tagsAndSkills": "Java, Spring, SQL",
      "jobDescription": "<p>Build marketplace services in Bengaluru.</p>",
      "jdURL": "https://www.naukri.com/job-listings-software-engineer-example-corp-bengaluru-071225000123",
      "staticUrl": "https://www.naukri.com/job-listings-071225000123",
      "logoPath": "https://img.naukimg.com/logo/441.png",
      "isSaved": false,
      "isApplied": false,
      "vacancy": 4,
      "wfhType": 0,
      "experienceText": "3-6 Yrs",
      "createdDate": 1758902400000,
      "salaryDetail": {
        "minimumSalary": 800000,
        "maximumSalary": 1200000,
        "currency": "INR",
        "hideSalary": false
      },
      "ambitionBoxData": {
        "aggregateRating": "4.2",
        "reviewsCount": 1860,
        "title": "Example Corp Reviews",
        "url": "https://www.ambitionbox.com/reviews/example-corp"
      },
      "walkInDetail": null,
      "applyViaCallEnabled": false,
      "companyApplyUrl": "",
      "companyUrl": "https://www.naukri.com/example-corp-jobs-careers-441890",
      "jobApplyType": "apply"
    }
  • Apply to job

    POST /v1/applications opendata

    Submits a Naukri apply for jobId, returning applyType/lastStatus used by the post-apply questionnaire screen.

    Auth: Required. Cookie: nauk_at plus Authorization: ACCESSTOKEN = <token> issued at login.

    • jobId
    • isApplied
    • applyType
    • jobTitle
    • company
    • companyId
    • location
    • isOpen
    • rpId
    • lastStatus
    • arsScore
    • videoProfilePreferred
    • applyViaCallEnabled
    POST /v1/applications HTTP/1.1
    Content-Type: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    
    {
      "jobId": "071225000123"
    }
    {
      "jobId": "071225000123",
      "isApplied": true,
      "applyType": "apply",
      "jobTitle": "Software Engineer",
      "company": "Example Corp",
      "companyId": "441890",
      "location": "Bengaluru",
      "isOpen": true,
      "rpId": "rp-771",
      "lastStatus": "applied",
      "arsScore": 78,
      "videoProfilePreferred": false,
      "applyViaCallEnabled": false
    }
  • Apply history

    GET /v1/applications/history opendata

    Lists the signed-in jobseeker's apply history (jobTitle, company, location, lastStatus, arsScore, applyViaCall) used by the Applications tab.

    Auth: Required. Cookie: nauk_at plus Authorization: ACCESSTOKEN = <token> issued at login.

    • jobId
    • applyType
    • jobTitle
    • company
    • consultancyName
    • location
    • isOpen
    • jobAct
    • dateTime
    • jobActDate
    • rpId
    • logoName
    • companyId
    • arsScore
    • starRating
    • reviewsCount
    • reviewsLink
    • feedbackStored
    • videoProfilePreferred
    • crawled
    • callStatus
    • applyViaCall
    • applyViaCallEnabled
    • lastStatus
    • isAppliedViaAgent
    • priority
    GET /v1/applications/history HTTP/1.1
    Accept: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    {
      "jobs": [{
        "jobId": "071225000123",
        "applyType": "apply",
        "jobTitle": "Software Engineer",
        "company": "Example Corp",
        "consultancyName": "",
        "location": "Bengaluru",
        "isOpen": true,
        "jobAct": 1,
        "dateTime": 1758988800000,
        "jobActDate": "2026-09-27",
        "rpId": "rp-771",
        "logoName": "https://img.naukimg.com/logo/441.png",
        "companyId": "441890",
        "arsScore": 78,
        "starRating": "4.2",
        "reviewsCount": 1860,
        "reviewsLink": "https://www.ambitionbox.com/reviews/example-corp",
        "feedbackStored": false,
        "videoProfilePreferred": false,
        "crawled": false,
        "callStatus": "",
        "applyViaCall": false,
        "applyViaCallEnabled": false,
        "lastStatus": "applied",
        "isAppliedViaAgent": false,
        "priority": 1
      }]
    }
  • Saved jobs

    GET /v1/me/saved-jobs opendata

    Returns the signed-in jobseeker's saved-jobs list (jobDetails / noOfJobs). Companion POSTs save at /v1/jobs/{jobId}/save and unsave at /v1/jobs/{jobId}/unsave.

    Auth: Required. Cookie: nauk_at plus Authorization: ACCESSTOKEN = <token> issued at login.

    • noOfJobs
    • jobDetails
    • jobId
    • title
    • companyName
    • companyId
    • isSaved
    • isApplied
    • tagsAndSkills
    • jdURL
    • salaryDetail
    • minimumSalary
    • maximumSalary
    • currency
    • hideSalary
    • wfhType
    • experienceText
    GET /v1/me/saved-jobs HTTP/1.1
    Accept: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    {
      "noOfJobs": 3,
      "jobDetails": [{
        "jobId": "071225000123",
        "title": "Software Engineer",
        "companyName": "Example Corp",
        "companyId": 441890,
        "isSaved": true,
        "isApplied": false,
        "tagsAndSkills": "Java, Spring, SQL",
        "jdURL": "https://www.naukri.com/job-listings-071225000123",
        "salaryDetail": {
          "minimumSalary": 800000,
          "maximumSalary": 1200000,
          "currency": "INR",
          "hideSalary": false
        },
        "wfhType": 0,
        "experienceText": "3-6 Yrs"
      }]
    }
  • Recommended jobs

    POST /v1/jobs/recommendations opendata

    Returns personalised recommended-job clusters (noOfJobs, sid, recommendedClusters, rawJobDetails) used by the home For You feed.

    Auth: Required. Cookie: nauk_at plus Authorization: ACCESSTOKEN = <token> issued at login.

    • clusterId
    • src
    • source
    • requestSrc
    • landingSource
    • isPreferenceUpdated
    • jobAgentRequest
    • shouldSendMultipleClusters
    • segmentedExperience
    • lastVisitedJobIds
    • appliedJobId
    • searches
    • keywords
    • noOfJobs
    • sid
    • listingTitle
    • showAgentPickedTag
    • recommendedClusters
    • rawJobDetails
    • segmentedExperienceInfo
    • jobId
    • title
    • companyName
    • isSaved
    • isApplied
    POST /v1/jobs/recommendations HTTP/1.1
    Content-Type: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    
    {
      "clusterId": "home_reco",
      "src": "home",
      "source": "android",
      "requestSrc": "home",
      "landingSource": "home",
      "isPreferenceUpdated": false,
      "jobAgentRequest": false,
      "shouldSendMultipleClusters": true,
      "segmentedExperience": "3-6",
      "lastVisitedJobIds": ["071225000123"],
      "appliedJobId": "",
      "searches": [{
        "keywords": ["software engineer"],
        "location": "Bengaluru"
      }]
    }
    {
      "noOfJobs": 24,
      "sid": "reco-ndr01d-8845",
      "listingTitle": "Jobs for you",
      "showAgentPickedTag": false,
      "recommendedClusters": [{
        "clusterId": "home_reco",
        "clusterName": "Based on your profile"
      }],
      "rawJobDetails": [{
        "jobId": "071225000456",
        "title": "Backend Engineer",
        "companyName": "Example Labs",
        "isSaved": false,
        "isApplied": false
      }],
      "segmentedExperienceInfo": {}
    }
  • Candidate profile

    GET /v1/me/profile osint

    Returns the signed-in jobseeker's aggregated Naukri profile (profile + user + itskills/educations/employments, including email, mobile, absoluteCtc, resumeHeadline and cvInfo) used by My Naukri.

    Auth: Required. Cookie: nauk_at plus Authorization: ACCESSTOKEN = <token> issued at login. Query expand_level=4&pc=1 expands nested sections.

    • profile
    • profileId
    • name
    • keySkills
    • resumeHeadline
    • birthDate
    • gender
    • contactAddress
    • mailCity
    • pincode
    • city
    • locality
    • country
    • rawTotalExperience
    • summary
    • absoluteCtc
    • absoluteExpectedCtc
    • expectedCtcCurrency
    • currency
    • profileCompletion
    • cemProfileCompletion
    • isActiveProfile
    • cvInfo
    • cvFormat
    • fileName
    • isAvailable
    • isTextResume
    • source
    • moderationStatus
    • user
    • username
    • email
    • mobile
    • resdexVisibility
    • canChooseProfileDuringApply
    • isEmailVerified
    • isMobileVerified
    • isPremium
    • lastThirtyDaysApplicationCount
    • itskills
    • educations
    • employments
    • certifications
    • projects
    • languages
    • noticePeriod
    • onlineProfile
    • extendedProfile
    • expand_level
    • pc
    GET /v1/me/profile?expand_level=4&pc=1 HTTP/1.1
    Accept: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    {
      "profile": {
        "profileId": "prof-441",
        "name": "Priya Sharma",
        "keySkills": "Java, Spring, SQL",
        "resumeHeadline": "Backend engineer, 5 years",
        "birthDate": "1996-04-12",
        "gender": "F",
        "contactAddress": "Koramangala",
        "mailCity": "Bengaluru",
        "pincode": "560034",
        "city": {"id": 17, "value": "Bengaluru"},
        "locality": {"id": 88, "value": "Koramangala"},
        "country": {"id": 1, "value": "India"},
        "rawTotalExperience": "5 years",
        "summary": "Built payments APIs.",
        "absoluteCtc": "1800000",
        "absoluteExpectedCtc": "2400000",
        "expectedCtcCurrency": "INR",
        "currency": "INR",
        "profileCompletion": 82,
        "cemProfileCompletion": 80,
        "isActiveProfile": true,
        "cvInfo": {
          "cvFormat": "pdf",
          "fileName": "Priya_Sharma_Resume.pdf",
          "isAvailable": true,
          "isTextResume": false,
          "source": "upload",
          "moderationStatus": 1
        }
      },
      "user": {
        "username": "[email protected]",
        "email": "[email protected]",
        "mobile": "9876543210",
        "profileId": "prof-441",
        "resdexVisibility": "visible",
        "canChooseProfileDuringApply": true,
        "isEmailVerified": true,
        "isMobileVerified": true,
        "isPremium": false,
        "lastThirtyDaysApplicationCount": 6
      },
      "itskills": [{"id": "java", "name": "Java"}],
      "educations": [],
      "employments": [],
      "certifications": [],
      "projects": [],
      "languages": [],
      "noticePeriod": {},
      "onlineProfile": [],
      "extendedProfile": {}
    }
  • Upload resume

    PUT /v1/me/profiles/{profileId}/resume osint

    Uploads the jobseeker's CV onto the active profile and returns cvInfo (fileName, cvFormat, isAvailable). Sibling paths cover photo, alternate-resume and delete-resume actions.

    Auth: Required. Cookie: nauk_at plus Authorization: ACCESSTOKEN = <token> issued at login. Multipart body is the CV file.

    • profileId
    • cvInfo
    • cvFormat
    • fileName
    • isAvailable
    • isTextResume
    • source
    • moderationStatus
    PUT /v1/me/profiles/prof-441/resume HTTP/1.1
    Content-Type: multipart/form-data; boundary=----NaukriBoundary
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    
    ------NaukriBoundary
    Content-Disposition: form-data; name="file"; filename="Priya_Sharma_Resume.pdf"
    Content-Type: application/pdf
    
    <binary>
    ------NaukriBoundary--
    {
      "profileId": "prof-441",
      "cvInfo": {
        "cvFormat": "pdf",
        "fileName": "Priya_Sharma_Resume.pdf",
        "isAvailable": true,
        "isTextResume": false,
        "source": "upload",
        "moderationStatus": 1
      }
    }
  • Parse resume

    GET /v1/me/resume/parsed-details osint

    Returns structured resume-parse output (workExperience, educations, keySkills.skills with extracted/globalName) after a parse is kicked off with fileKey/formKey. Used to pre-fill registration and profile forms.

    Auth: Required. Cookie: nauk_at plus Authorization: ACCESSTOKEN = <token>. Kick-off is POST /v1/me/resume/parse with fileKey and formKey.

    • fileKey
    • formKey
    • flow
    • sections
    • workExperience
    • currentExperience
    • previousExperience
    • totalWorkExperience
    • company
    • organizationId
    • designation
    • designationId
    • startDate
    • endDate
    • educations
    • courseType
    • institute
    • grade
    • marks
    • educationId
    • yearOfStart
    • yearOfCompletion
    • isPrimary
    • keySkills
    • skills
    • extracted
    • globalId
    • globalName
    • workNature
    • metaData
    GET /v1/me/resume/parsed-details?flow=registration&sections=educations,workNature,workExperience,keySkills HTTP/1.1
    Accept: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    {
      "workExperience": {
        "currentExperience": {
          "company": "Example Corp",
          "organizationId": "org-441",
          "designation": "Software Engineer",
          "designationId": "des-12",
          "startDate": "2021-06",
          "endDate": ""
        },
        "previousExperience": [],
        "totalWorkExperience": {}
      },
      "educations": [{
        "courseType": "fulltime",
        "institute": "NITK Surathkal",
        "grade": "8.4",
        "marks": "8.4",
        "educationId": "edu-1",
        "yearOfStart": "2016",
        "yearOfCompletion": "2020",
        "isPrimary": true
      }],
      "keySkills": {
        "skills": [{
          "extracted": "Java",
          "globalId": "sk-java",
          "globalName": "Java"
        }]
      },
      "workNature": {},
      "metaData": {}
    }
  • Search impressions

    GET /v1/me/search-impressions opendata

    Returns recruiter-side search-appearance analytics for the signed-in jobseeker (totalSearchAppearances, recruiterActions, searchKeyWords, searchAppearanceTimeline) used by the Profile Performance screen.

    Auth: Required. Cookie: nauk_at plus Authorization: ACCESSTOKEN = <token> issued at login.

    • recruiterActions
    • totalSearchAppearances
    • dayWiseSearchAppearance
    • percentageChange
    • searchAppearanceTimeline
    • searchKeyWords
    GET /v1/me/search-impressions HTTP/1.1
    Accept: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    {
      "recruiterActions": 12,
      "totalSearchAppearances": 148,
      "dayWiseSearchAppearance": 6,
      "percentageChange": 18,
      "searchAppearanceTimeline": {
        "2026-09-21": 4,
        "2026-09-22": 7,
        "2026-09-23": 6,
        "2026-09-24": 9,
        "2026-09-25": 8,
        "2026-09-26": 5,
        "2026-09-27": 6
      },
      "searchKeyWords": {
        "java": 40,
        "spring": 22,
        "backend": 18
      }
    }
  • Search companies

    GET /v1/companies/search opendata

    Looks up Naukri employer groups (groupId, groupName, groupJobsURL, hasLiveJob, rating, reviewsCount) used by the companies browse / follow screens.

    Auth: Optional nauk_at / ACCESSTOKEN. Company-group lookup also accepts a posted list of groupIds.

    • groupDetails
    • groupId
    • groupName
    • groupJobsURL
    • groupLogo
    • groupTags
    • hasLiveJob
    • rating
    • reviewsCount
    • tagsOrder
    • groupIds
    GET /v1/companies/search HTTP/1.1
    Accept: application/json
    Cookie: nauk_at=<access-token>
    Authorization: ACCESSTOKEN = <access-token>
    {
      "groupDetails": [{
        "groupId": 441890,
        "groupName": "Example Corp",
        "groupJobsURL": "https://www.naukri.com/example-corp-jobs-careers-441890",
        "groupLogo": {},
        "groupTags": {"industry": ["IT Services"]},
        "hasLiveJob": true,
        "rating": 4.2,
        "reviewsCount": 1860,
        "tagsOrder": ["industry"]
      }]
    }

Data categories

  • job listings
  • job details
  • candidate profiles
  • resumes
  • applications
  • search impressions
  • auth sessions

Where teams use this data

  • India vacancy market census

    A labour-market pipeline can poll GET /v1/jobs/search then GET /v1/jobs/{jobId} and store jobId, title, companyName, tagsAndSkills, salaryDetail.minimumSalary/maximumSalary, wfhType, vacancy and ambitionBoxData.aggregateRating for a live Naukri vacancy catalog.

  • Candidate CRM enrichment

    HRIS tools can call GET /v1/me/profile?expand_level=4 after login and attach email, mobile, resumeHeadline, keySkills, absoluteCtc, absoluteExpectedCtc, profileCompletion and cvInfo.fileName onto an existing applicant record.

  • Apply-pipeline reconciliation

    ATS bots can POST /v1/applications then GET /v1/applications/history and map jobId, lastStatus, arsScore, applyType and applyViaCallEnabled into interview-stage dashboards.

  • CV parse into structured profile

    Onboarding flows can PUT a PDF to /v1/me/profiles/{profileId}/resume, POST /v1/me/resume/parse with fileKey/formKey, then GET /v1/me/resume/parsed-details and hydrate company, designation, startDate, institute, yearOfCompletion and keySkills.skills.extracted instead of a blank profile form.

Frequently asked questions

What job fields does Naukri search return?

GET /v1/jobs/search returns a results envelope: noOfJobs, sid, isLoggedIn and jobDetails cards with jobId, title, companyName, companyId, tagsAndSkills, salaryDetail (minimumSalary/maximumSalary/hideSalary), wfhType, vacancy, isSaved, isApplied and ambitionBoxData. Filters on the client include keyword and location.

How does a candidate authenticate?

The app posts username, isLoginByEmail and password to /v1/auth/session (OTP variants sit under the same auth namespace). The response cookies include nauk_at; later calls send Cookie: nauk_at and Authorization: ACCESSTOKEN = <token>. userInfo.userData carries email, resId and username.

Can I read a candidate profile and resume parse?

Yes. GET /v1/me/profile?expand_level=4&pc=1 returns profile (name, keySkills, resumeHeadline, absoluteCtc, cvInfo) and user (email, mobile, isPremium). GET /v1/me/resume/parsed-details fills workExperience, educations and keySkills.skills from an uploaded CV.

Where do applications and recruiter views live?

POST /v1/applications submits an apply. GET /v1/applications/history lists jobTitle, lastStatus and arsScore. GET /v1/me/search-impressions exposes totalSearchAppearances, recruiterActions and searchKeyWords.

Apps similar to Naukri: Job Search App

  • Indeed Job Search — Global job board whose India app aggregates postings from company sites and other boards, with company reviews and salary data alongside the listings.
  • LinkedIn — Professional network whose job board is widely used in India for mid-to-senior roles, adding recruiter outreach and company pages on top of listings.
  • Shine.com Job Search App — Indian job portal positioned for entry-level and mid-level roles, with government job listings and regional-language support.
  • apna — Indian jobs app aimed at entry-level and frontline hiring, with chat-based applications and strong reach in tier-2 and tier-3 cities.
  • foundit (Monster) — Monster's India business rebranded as foundit in 2022, a job-search and matching platform covering mid-to-senior roles across APAC and the Middle East.
  • Glassdoor — Pairs job listings with anonymous employee reviews and salary reports, so candidates can research an employer before applying.
  • Internshala — Indian platform specialising in internships and fresher jobs, regularly listed among the country's top job portals for students.

Topics

  • Naukri API
  • Naukri job search endpoints
  • jobId companyName salaryDetail
  • Naukri login API
  • resume parser API
  • nauk_at ACCESSTOKEN
  • search impressions Naukri
  • Naukri apply API

Need this app's data API integrated?

We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.

  • NDA + SOW on every engagement
  • Delivery in 3–7 days
  • Payment only after acceptance
  • Work scoped to authorized use

Get a quote