# Naukri

Measured Naukri job data, one operation per call. ops: search (a keyword or a pasted Naukri search URL, with the board's own filters — postedWithin, sort, experience, workplace, salaryMin/Max in lakhs, locations, and Naukri's coded department/role/industry/company filters; every hit a full posting with skills, experience band, salary or benchmark CTC, applicants and views, walk-in details, company profile; minimum 50 rows per search, which is what it bills), history (stored applicant/view series of postings already held, by job id or URL, free). Fresh fetches cost credits; anything already held is free.

`POST https://api.zomler.com/api/v1/platforms/naukri`

-   [search](#search)
-   [history](#history)

## search

from 97 credits for 50

Search Naukri — a keyword (or a pasted Naukri search URL) with the board's own filters. Coded filters (department, roleCategory, industry, companyType, topCompanies, ugCourse, pgCourse) take Naukri's numeric ids, as the site's URLs carry them.

### Request fields

| Field | Type | Default | Values / limits |
| --- | --- | --- | --- |
| `query` (required) | string | — | ≤300 chars |
| `postedWithin` | enum | `any` | `1d`, `3d`, `7d`, `15d`, `30d`, `any` |
| `sort` | enum | `relevance` | `relevance`, `newest` |
| `experience`◆ | string | `all` | pattern `^(all|\[0-9\]|1\[0-9\]|2\[0-3\])$` |
| `workplace` | list of enum | `[]` | `onsite`, `remote`, `hybrid`, `temporary_wfh` |
| `salaryMin` | integer | `—` | 0-1000 |
| `salaryMax` | integer | `—` | 0-1000 |
| `locations` | list of string | `[]` | each ≤60 chars |
| `department`◆ | list of string | `[]` | each ≤20 chars |
| `roleCategory`◆ | list of string | `[]` | each ≤20 chars |
| `industry`◆ | list of string | `[]` | each ≤20 chars |
| `companyType`◆ | list of string | `[]` | each ≤20 chars |
| `topCompanies`◆ | list of string | `[]` | each ≤20 chars |
| `postedBy`◆ | list of enum | `[]` | `company`, `consultant` |
| `ugCourse`◆ | list of string | `[]` | each ≤20 chars |
| `pgCourse`◆ | list of string | `[]` | each ≤20 chars |
| `fetchDetails`◆ | boolean | `True` | — |
| `limit` | integer | `50` | 50-200 |

### Example

```bash
curl -X POST https://api.zomler.com/api/v1/platforms/naukri \
  -H "X-API-Key: zk_live_…" \
  -H "Content-Type: application/json" \
  -d '{
  "request": {
    "op": "search",
    "query": "example"
  },
  "estimateOnly": false
}'
```

```js
const res = await fetch("https://api.zomler.com/api/v1/platforms/naukri", {
  method: "POST",
  headers: {
    "X-API-Key": process.env.ZOMLER_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "request": {
      "op": "search",
      "query": "example"
    },
    "estimateOnly": false
  }),
});
const envelope = await res.json();
console.log(envelope.data, envelope.cost.creditsCharged);
```

```python
import os, httpx

res = httpx.post(
    "https://api.zomler.com/api/v1/platforms/naukri",
    headers={"X-API-Key": os.environ["ZOMLER_API_KEY"]},
    json={
      "request": {
        "op": "search",
        "query": "example"
      },
      "estimateOnly": False
    },
    timeout=120,
)
envelope = res.json()
print(envelope["data"], envelope["cost"]["creditsCharged"])
```

## history

free · reads what is held

Stored applicant/view series of postings already held — free.

### Request fields

| Field | Type | Default | Values / limits |
| --- | --- | --- | --- |
| `subjects` (required) | list of string | — | 1-10 items |
| `metric` | enum | `applicants` | `applicants`, `views`, `vacancies` |
| `days` | integer | `90` | 1-730 |

### Example

```bash
curl -X POST https://api.zomler.com/api/v1/platforms/naukri \
  -H "X-API-Key: zk_live_…" \
  -H "Content-Type: application/json" \
  -d '{
  "request": {
    "op": "history",
    "subjects": [
      "example"
    ]
  },
  "estimateOnly": false
}'
```

```js
const res = await fetch("https://api.zomler.com/api/v1/platforms/naukri", {
  method: "POST",
  headers: {
    "X-API-Key": process.env.ZOMLER_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "request": {
      "op": "history",
      "subjects": [
        "example"
      ]
    },
    "estimateOnly": false
  }),
});
const envelope = await res.json();
console.log(envelope.data, envelope.cost.creditsCharged);
```

```python
import os, httpx

res = httpx.post(
    "https://api.zomler.com/api/v1/platforms/naukri",
    headers={"X-API-Key": os.environ["ZOMLER_API_KEY"]},
    json={
      "request": {
        "op": "history",
        "subjects": [
          "example"
        ]
      },
      "estimateOnly": False
    },
    timeout=120,
)
envelope = res.json()
print(envelope["data"], envelope["cost"]["creditsCharged"])
```

---

Source: https://zomler.com/docs/api/platforms/naukri
