# Instahyre Jobs Scraper: India Tech Jobs & Hiring Monitor (`getascraper/instahyre-jobs-scraper`) Actor

Search and monitor public Instahyre jobs with verified filters, company context, optional job-detail enrichment, and safe change tracking.

- **URL**: https://apify.com/getascraper/instahyre-jobs-scraper.md
- **Developed by:** [GetAScraper](https://apify.com/getascraper) (community)
- **Categories:** Jobs, Lead generation, Automation
- **Stats:** 112 total users, 60 monthly users, 95.6% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.79 / 1,000 job postings

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## 💼 Instahyre Jobs Scraper: India tech jobs & hiring monitor

<table width="100%" style="table-layout:fixed;border-collapse:collapse">
<tr><td colspan="4" style="padding:14px 18px;background:#EEF6FF;border-top:3px solid #1769AA;border-left:1px solid #D6D3D1;border-right:1px solid #D6D3D1;border-radius:8px 8px 0 0"><span style="font-size:16px;font-weight:700;color:#1C1917">Turn Instahyre jobs into a dependable India hiring feed.</span> <span style="font-size:15px;color:#57534E">Find relevant technology and business roles, understand the employers behind them, and receive clear hiring changes without maintaining a workflow.</span></td></tr>
<tr><td colspan="4" style="padding:10px 14px;background:#1769AA;border-left:1px solid #D6D3D1;border-right:1px solid #D6D3D1"><span style="color:#FFFFFF;font-size:14px;font-weight:700;letter-spacing:0.5px">India jobs sources and inventory</span> <span style="color:#EEF6FF;font-size:13px">&nbsp;&nbsp;&bull;&nbsp;&nbsp;Apna, CutShort, Internshala, Instahyre, and the combined India job feed</span></td></tr>
<tr>
<td style="padding:10px 12px;border-left:1px solid #D6D3D1;border-bottom:1px solid #D6D3D1;vertical-align:top;width:25%;background:#FFFFFF;border-radius:0 0 0 8px"><span style="overflow-wrap:break-word;word-break:break-word"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/jNDbFabbVxMhnQNb4-actor-Bqf3sZlaZvWnVZbe1-X4r5SBrUub-CompressJPEG.Online_img%28512x512%29_%2813%29.jpg" width="20" height="20" style="vertical-align:middle;border-radius:4px">&nbsp;<a href="https://apify.com/getascraper/apna-co-scraper" style="color:#1C1917;text-decoration:none;font-weight:700;font-size:13px">Apna.co Jobs</a></span><br><span style="color:#57534E;font-size:11px">Blue and grey collar roles</span></td>
<td style="padding:10px 12px;border-left:1px solid #D6D3D1;border-bottom:1px solid #D6D3D1;vertical-align:top;width:25%;background:#FFFFFF"><span style="overflow-wrap:break-word;word-break:break-word"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/jNDbFabbVxMhnQNb4-actor-hgMCIk2Sb7HnSumQC-QS4Q1rKbjd-unnamed_%287%29.png" width="20" height="20" style="vertical-align:middle;border-radius:4px">&nbsp;<a href="https://apify.com/getascraper/cutshort-scraper" style="color:#1C1917;text-decoration:none;font-weight:700;font-size:13px">CutShort Jobs</a></span><br><span style="color:#57534E;font-size:11px">Technology and startup roles</span></td>
<td style="padding:10px 12px;border-left:1px solid #D6D3D1;border-bottom:1px solid #D6D3D1;vertical-align:top;width:25%;background:#EEF6FF"><span style="overflow-wrap:break-word;word-break:break-word"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/jNDbFabbVxMhnQNb4-actor-M5Myh7i6WMTmfwMlw-NCEUGam6gM-logo_200_200.webp" width="20" height="20" style="vertical-align:middle;border-radius:4px">&nbsp;<a href="https://apify.com/getascraper/instahyre-jobs-scraper" style="color:#1769AA;text-decoration:none;font-weight:700;font-size:13px">Instahyre Jobs</a></span><br><span style="color:#1769AA;font-size:11px;font-weight:700">&#10148; You are here</span></td>
<td style="padding:10px 12px;border-left:1px solid #D6D3D1;border-right:1px solid #D6D3D1;border-bottom:1px solid #D6D3D1;vertical-align:top;width:25%;background:#FFFFFF;border-radius:0 0 8px 0"><span style="overflow-wrap:break-word;word-break:break-word"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/jNDbFabbVxMhnQNb4-actor-8hG15V7QtjKUpwAt3-GucaVgd5Jo-s11728_indian_flag_logo_isolated_on_white_background_-styliz_104" width="20" height="20" style="vertical-align:middle;border-radius:4px">&nbsp;<a href="https://apify.com/getascraper/india-job-inventory-feed" style="color:#1C1917;text-decoration:none;font-weight:700;font-size:13px">India Job Feed</a></span><br><span style="color:#57534E;font-size:11px">Combined multi-source job inventory</span></td>
</tr>
</table>

<table width="100%" style="display:table;width:100%;border-collapse:collapse"><tr><td style="padding:24px 28px;background:#EEF6FF;border:1px solid #B8D9F5;border-top:4px solid #1769AA;border-radius:12px"><span style="font-size:23px;font-weight:800;color:#102A43">Turn Instahyre jobs into a dependable India hiring feed</span><br><span style="font-size:15px;color:#486581">Find relevant roles, understand the employers behind them, and receive clear hiring changes without maintaining a collection workflow.</span></td></tr></table>

<table width="100%" style="display:table;width:100%;border-collapse:collapse;table-layout:fixed"><tbody style="display:table;width:100%;min-width:100%;border-collapse:collapse;table-layout:fixed"><tr style="width:100%"><td width="25%" style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #B8D9F5;border-radius:10px 0 0 10px;vertical-align:top"><b style="color:#102A43">🎯 Search with confidence</b><br><span style="color:#486581">Verified job functions, skills, types, and company sizes.</span></td><td width="25%" style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #B8D9F5;border-left:none;vertical-align:top"><b style="color:#102A43">🏢 See employer context</b><br><span style="color:#486581">Company identity, size, tagline, logo, and source links.</span></td><td width="25%" style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #B8D9F5;border-left:none;vertical-align:top"><b style="color:#102A43">🔔 Track hiring changes</b><br><span style="color:#486581">Spot new, updated, and safely confirmed removed roles.</span></td><td width="25%" style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #B8D9F5;border-left:none;border-radius:0 10px 10px 0;vertical-align:top"><b style="color:#102A43">📄 Enrich when needed</b><br><span style="color:#486581">Add public descriptions and experience ranges on demand.</span></td></tr></tbody></table>

Instahyre is a public India hiring source for technology and business roles. This Actor turns its published opportunities into clean records for job-data products, hiring research, company intelligence, and recurring alerts. It does not collect private candidate profiles or private contact details.

### 🎯 Who is this for?

- **Job-data teams** adding India technology hiring coverage to a product.
- **Talent researchers** comparing roles, skills, locations, and employer signals.
- **Recruiting teams** watching a focused set of companies or hiring functions.
- **Market analysts** tracking new and changing opportunities over time.

### 🚀 How it works

<table width="100%" style="display:table;width:100%;border-collapse:collapse;table-layout:fixed"><tbody style="display:table;width:100%;min-width:100%;border-collapse:collapse;table-layout:fixed"><tr style="width:100%"><td width="33%" style="padding:16px 14px;width:33.333%;background:#EEF6FF;border:1px solid #B8D9F5;border-radius:10px 0 0 10px;vertical-align:top"><b style="color:#102A43">STEP 1</b><br><span style="color:#486581">Choose a job function, type, company size, or skill.</span></td><td width="33%" style="padding:16px 14px;width:33.333%;background:#EEF6FF;border:1px solid #B8D9F5;border-left:none;vertical-align:top"><b style="color:#102A43">STEP 2</b><br><span style="color:#486581">Narrow results by location, keywords, company, or remote label.</span></td><td width="33%" style="padding:16px 14px;width:33.333%;background:#EEF6FF;border:1px solid #B8D9F5;border-left:none;border-radius:0 10px 10px 0;vertical-align:top"><b style="color:#102A43">STEP 3</b><br><span style="color:#486581">Export a focused dataset or schedule a changes-only hiring feed.</span></td></tr></tbody></table>

### ⚙️ Input

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `jobFunctionSlugs` | array of strings | No | Live Instahyre job-function slugs. Leave empty for the complete public feed. |
| `jobType` | enum | No | Any, full-time, or internship roles. |
| `companySize` | enum | No | Any, small, medium, or large employers. |
| `skills` | array of strings | No | Skills such as Java, Python, SQL, or React. |
| `skillMatch` | enum | No | Match any requested skill or require all requested skills. |
| `keywords` | array of strings | No | Terms matched across the role, skills, company context, and location. |
| `keywordMatch` | enum | No | Match any keyword or require all keywords. |
| `locations` | array of strings | No | Location terms such as Bangalore, Pune, or Gurgaon. |
| `remoteOnly` | boolean | No | Keep roles whose published location explicitly indicates remote work. |
| `companyNames` | array of strings | No | Optional company allowlist with partial-name matching. |
| `excludeKeywords` | array of strings | No | Terms that exclude a role from the output. |
| `includeDetails` | boolean | No | Add the public description, experience range, category, and functions. |
| `monitorMode` | enum | No | Current snapshot or changes only. |
| `emitBaseline` | boolean | No | Emit the first monitoring baseline as new rows. |
| `includeUnchanged` | boolean | No | Include roles whose published fields did not change. |
| `stateName` | string | No | Stable name that keeps one monitoring search separate from another. |
| `maxItems` | integer | No | Maximum job rows saved in one run. |
| `maxPages` | integer | No | Maximum source pages scanned. One page contains up to 20 jobs. |

### 📊 Data table

| Field | Type | Description |
| --- | --- | --- |
| `jobId` | string | Stable public Instahyre job identifier. |
| `title`, `candidateTitle` | string | Published role title fields. |
| `companyName`, `companyId` | string, integer | Public employer identity. |
| `companyResourceUri`, `companyLogoUrl` | string | Employer source and logo links when published. |
| `companyTagline`, `companyFounded`, `employeeCount` | string, integer | Public employer context when published. |
| `locations`, `locationsRaw`, `isRemote` | array, string, boolean | Normalized locations and the remote label detected from them. |
| `skills` | array | Public role skill tags. |
| `acceptOutstation` | boolean | Whether the source accepts outstation applicants. |
| `publicUrl`, `resourceUri` | string | Public role page and source record links. |
| `description` | string | Public role description when detail enrichment is enabled. |
| `experienceMin`, `experienceMax` | number | Public experience range when detail enrichment is enabled. |
| `jobCategory`, `jobFunctions`, `jobType` | string, array, string | Public role classification fields. |
| `detailStatus`, `detailError` | string | Whether optional details were fetched, with a short warning when not. |
| `changeType` | string | Snapshot, new, updated, unchanged, or safely confirmed removed. |
| `firstSeenAt`, `lastSeenAt`, `scrapedAt` | date-time | Collection and monitoring timestamps. |
| `source` | string | Source label for downstream joins. |

### 🗂️ Choose the right data view

- **💼 Jobs overview**: role, company, skills, locations, and public page.
- **🏢 Employer context**: company identity, size, founding year, tagline, and logo.
- **🔔 Hiring changes**: new, updated, unchanged, and safely confirmed removed roles.
- **📄 Job details**: descriptions, experience ranges, categories, and functions.
- **🔗 Source & provenance**: stable identifiers and source links for your database.

### 💰 Pricing

Pricing is pay per result. Only job rows saved to the dataset are chargeable. Empty searches and the run summary do not create result charges. There is no subscription.

### ⭐ Enjoying Instahyre Jobs Scraper?

<table width="100%" style="display:table;width:100%;border-collapse:collapse"><tr><td style="padding:20px 24px;background:#EEF6FF;border:1px solid #B8D9F5;border-left:5px solid #1769AA;border-radius:10px 10px 0 0"><span style="font-size:20px;letter-spacing:4px;color:#102A43">⭐ ⭐ ⭐ ⭐ ⭐</span><br><b style="color:#102A43">Finding useful India hiring signals?</b><br><span style="color:#486581">A rating helps job-data teams discover this Actor and guides the next improvements.</span></td></tr><tr><td style="padding:0;background:#1769AA;border:1px solid #B8D9F5;border-top:none;border-radius:0 0 10px 10px;text-align:center"><a href="https://apify.com/getascraper/instahyre-jobs-scraper/reviews" style="display:block;padding:13px 16px;color:#FFFFFF;text-decoration:none;font-weight:800">★&nbsp;&nbsp;Rate this Actor on Apify</a></td></tr></table>

### ❓ FAQ

##### Can I monitor new Instahyre jobs every day?

Yes. Choose Changes only, keep a stable state name, and schedule the Actor. The baseline advances only after a complete source scan.

##### Instahyre jobs data kaise export karen?

Run the Actor and export the saved public job rows from the Apify dataset in CSV, JSON, Excel, or another supported format.

##### Does the Actor include salary or private candidate information?

No. Those values are not promised by the public source. Private profiles and contact details are outside this Actor’s scope.

##### Why can a detail row have a warning?

Public detail enrichment is optional. If one detail record is unavailable, the matching list row remains available and the warning explains what happened.

### 🔗 Other actors

- [Zhaopin Scraper 智联招聘: China Jobs & Salary API](https://apify.com/getascraper/zhaopin-jobs-scraper) ↗ - Monitor China jobs, skills, salary fields, and hiring changes.
- [51job Scraper 前程无忧: China Jobs, Salaries & Hiring Data](https://apify.com/getascraper/51job-scraper) ↗ - Collect public China roles and employer context.
- [Liepin Scraper 猎聘: China White-Collar Jobs & Salary Data](https://apify.com/getascraper/liepin-scraper) ↗ - Research professional hiring and salary signals.
- [CWJobs Scraper: UK Contract Tech Jobs](https://apify.com/getascraper/cwjobs-scraper) ↗ - Collect structured technology roles with detail enrichment.
- [NCSS Jobs Scraper: Singapore Graduate & Internship Jobs](https://apify.com/getascraper/ncss-jobs-scraper) ↗ - Track graduate and internship opportunities.

# Actor input Schema

## `jobFunctionSlugs` (type: `array`):

Optional live Instahyre function slugs such as backend-development, data-science-machine-learning, or frontend-development. Leave empty to search the complete public feed.

## `jobType` (type: `string`):

Filter by the type exposed in Instahyre's public feed.

## `companySize` (type: `string`):

Instahyre company-size groups: small, medium, or large.

## `skills` (type: `array`):

Optional skills matched against Instahyre's public jobs, for example Java, Python, SQL, or React.

## `skillMatch` (type: `string`):

Any keeps a row when one requested skill matches; all requires every requested skill to match.

## `keywords` (type: `array`):

Optional keywords matched against the title, candidate title, skills, company context, and locations.

## `keywordMatch` (type: `string`):

Any returns a row when one keyword matches; all requires every keyword to match.

## `locations` (type: `array`):

Optional location terms matched against Instahyre's public labels, such as Bangalore, Pune, or Gurgaon.

## `remoteOnly` (type: `boolean`):

Keep roles whose public location label explicitly indicates remote, work from home, WFH, or work from anywhere.

## `companyNames` (type: `array`):

Optional company-name allowlist. Matching is case-insensitive and supports partial names.

## `excludeKeywords` (type: `array`):

Skip rows containing any of these terms in their public title, skills, company context, or location.

## `includeDetails` (type: `boolean`):

Fetch the public detail record for each returned job to add description, experience range, job category, and job functions. Failed detail requests keep the list row.

## `monitorMode` (type: `string`):

Snapshot returns the current matching rows. Changes only compares a named filter state and returns new, updated, unchanged when enabled, and safely removed rows.

## `emitBaseline` (type: `boolean`):

When changes\_only is selected, emit the first complete baseline as NEW rows. Turn off to seed state without output.

## `includeUnchanged` (type: `boolean`):

Include rows whose public fields did not change in a monitoring run. Disabled by default to keep recurring runs small.

## `stateName` (type: `string`):

Optional stable name for the saved comparison state. Separate names keep different searches isolated.

## `maxItems` (type: `integer`):

Maximum rows written to the dataset. The Actor may scan additional pages to satisfy local filters or monitoring safety.

## `maxPages` (type: `integer`):

Safety cap on public API pages scanned. One page contains up to 20 jobs. A capped scan never marks missing jobs as removed.

## Actor input object example

```json
{
  "jobFunctionSlugs": [
    "backend-development"
  ],
  "jobType": "any",
  "companySize": "any",
  "skills": [],
  "skillMatch": "any",
  "keywords": [],
  "keywordMatch": "any",
  "locations": [],
  "remoteOnly": false,
  "companyNames": [],
  "excludeKeywords": [],
  "includeDetails": false,
  "monitorMode": "snapshot",
  "emitBaseline": true,
  "includeUnchanged": false,
  "stateName": "",
  "maxItems": 20,
  "maxPages": 3
}
```

# Actor output Schema

## `datasetItems` (type: `string`):

No description

## `runSummary` (type: `string`):

No description

## `monitorState` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "jobFunctionSlugs": [
        "backend-development"
    ],
    "jobType": "any",
    "companySize": "any",
    "skills": [],
    "skillMatch": "any",
    "keywords": [],
    "keywordMatch": "any",
    "locations": [],
    "remoteOnly": false,
    "companyNames": [],
    "excludeKeywords": [],
    "includeDetails": false,
    "monitorMode": "snapshot",
    "emitBaseline": true,
    "includeUnchanged": false,
    "stateName": "",
    "maxItems": 20,
    "maxPages": 3
};

// Run the Actor and wait for it to finish
const run = await client.actor("getascraper/instahyre-jobs-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "jobFunctionSlugs": ["backend-development"],
    "jobType": "any",
    "companySize": "any",
    "skills": [],
    "skillMatch": "any",
    "keywords": [],
    "keywordMatch": "any",
    "locations": [],
    "remoteOnly": False,
    "companyNames": [],
    "excludeKeywords": [],
    "includeDetails": False,
    "monitorMode": "snapshot",
    "emitBaseline": True,
    "includeUnchanged": False,
    "stateName": "",
    "maxItems": 20,
    "maxPages": 3,
}

# Run the Actor and wait for it to finish
run = client.actor("getascraper/instahyre-jobs-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "jobFunctionSlugs": [
    "backend-development"
  ],
  "jobType": "any",
  "companySize": "any",
  "skills": [],
  "skillMatch": "any",
  "keywords": [],
  "keywordMatch": "any",
  "locations": [],
  "remoteOnly": false,
  "companyNames": [],
  "excludeKeywords": [],
  "includeDetails": false,
  "monitorMode": "snapshot",
  "emitBaseline": true,
  "includeUnchanged": false,
  "stateName": "",
  "maxItems": 20,
  "maxPages": 3
}' |
apify call getascraper/instahyre-jobs-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,getascraper/instahyre-jobs-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/M5Myh7i6WMTmfwMlw/builds/dByyfgRZYhH6nbKAV/openapi.json
