# Instahyre Scraper - India Tech Jobs & Companies (`scrapesage/instahyre-scraper`) Actor

Scrape India tech jobs from Instahyre: title, location, skills and apply URL, plus rich company data (name, logo, tagline, founded year, employee count, about). No login, no key. Export JSON, CSV, Excel. Independent tool, not affiliated with Instahyre.

- **URL**: https://apify.com/scrapesage/instahyre-scraper.md
- **Developed by:** [Scrape Sage](https://apify.com/scrapesage) (community)
- **Categories:** Jobs, Lead generation, Agents
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.65 / 1,000 job + companies

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/actors/running/actors-in-store.md#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 Scraper - India Tech Jobs & Companies

> **Disclaimer:** This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Instahyre or any of its subsidiaries. All trademarks mentioned are the property of their respective owners. "Instahyre" is referenced only to describe the publicly available website this Actor collects data from.

Scrape **India tech jobs from [Instahyre](https://www.instahyre.com)** — the curated hiring platform used by Indian startups and product companies — and get back far more than a job title. Every record pairs the **job** (title, city, full skill list, direct apply URL) with the **employer's complete company profile**: company name, logo, tagline, **founded year**, **employee count** and a written **"about" description**.

One run gives you a **jobs dataset and a company dataset at the same time**. No login, no API key, no browser, no cookies — this actor reads Instahyre's own public JSON endpoint directly, so it is fast, cheap and stable.

Export to **JSON, CSV, Excel or XML**, or pull it straight into your stack over the [Apify API](https://docs.apify.com/api/v2).

### Why this Instahyre scraper?

Most job scrapers stop at *title + company + link*. This one carries the **employer object** through to every row, which turns a job feed into a B2B company feed. Across our validation runs **all 14 fields populated on 100% of records** — company enrichment included, not just the job basics.

| What you get | In every record |
|---|---|
| Job title | ✅ |
| Company name | ✅ |
| **Company logo** (CDN URL) | ✅ |
| **Company tagline** | ✅ |
| **Founded year** | ✅ |
| **Employee count** (Instahyre's size band) | ✅ |
| **Company "about" description** | ✅ |
| City / cities (incl. **Work From Home**) | ✅ |
| Full **skills / tech-stack** list | ✅ |
| Direct **apply URL** | ✅ |
| Stable `jobId` + `companyId` for deduping | ✅ |
| Keyword filter across the whole live board | ✅ |
| Ready-made **Jobs** and **Companies** dataset views | ✅ |

### What's on Instahyre right now

A live snapshot from Instahyre's own search facets on **27 August 2026** — useful for sizing a run before you start:

| Segment | Open postings |
|---|---|
| **All open tech jobs** | ~13,600 |
| Bangalore | 7,192 |
| Gurgaon | 1,852 |
| Hyderabad | 1,334 |
| **Work From Home (remote)** | 1,173 |
| Backend Development | 3,820 |
| Full-Stack Development | 1,860 |
| Data Science / Machine Learning | 1,443 |

Biggest hirers on the board that day: **Deutsche Telekom Digital Labs** (377), **Accenture** (265), **Amazon** (165), **Klimb.io** (134). Other cities in the feed include Pune, Chennai, Noida, Mumbai, Delhi, Kolkata, Ahmedabad and Coimbatore.

### Use cases

- **Tech recruiting & sourcing** — see which Indian companies are hiring for a stack right now, with the exact skills each role asks for.
- **B2B lead generation** — a hiring company is a buying company. Every row hands you the firmographics (size, founded year, tagline, description) needed to qualify and segment, keyed by a stable `companyId`.
- **Job boards & newsletters** — feed an India-tech job board or a weekly digest with structured, deduplicated postings and real apply links.
- **Talent-market intelligence** — track demand by skill (React, Kubernetes, LLMs), by city, and by company stage over time by scheduling repeat runs.
- **Job seekers & career tools** — filter thousands of curated tech roles down to your stack in one run, then export to a spreadsheet.
- **Startup & ecosystem research** — build a dataset of India's actively-hiring tech companies, complete with founding year and headcount band.

### How to use

1. [Sign up for Apify](https://console.apify.com/sign-up) — the free plan is enough to try this actor.
2. Open the **Instahyre Scraper**, optionally type one or more **title / skill keywords**, set **Max jobs**, and click **Start**.
3. Watch records stream into the dataset. Switch between the **Jobs** and **Companies** views at the top of the table.
4. **Export** as JSON, CSV, Excel or XML — or fetch results programmatically via the [Apify API](https://docs.apify.com/api/v2).

### Input

```json
{
    "titleContains": ["python", "machine learning"],
    "maxResults": 100
}
```

| Field | Description |
|---|---|
| **Filter by title / skill keywords** (`titleContains`) | Optional. Keep only jobs whose **title or skills** contain any of these words — `python`, `react`, `devops`, `data`, `frontend`, `kubernetes`. Any match wins (OR). Leave it **empty** to pull straight from the top of the live board across every function. |
| **Max jobs** (`maxResults`) | How many job records to return. Default `50`. |
| **Proxy configuration** (`proxyConfiguration`) | The Instahyre endpoint is public, so the default Apify datacenter proxy is plenty — no residential needed. |

Leave everything at its default and the actor returns 50 jobs straight away.

### Output

One record per job, `type: "job"`. This is a **real, unedited record** from a run:

```json
{
    "type": "job",
    "title": "Staff Software Engineer",
    "company": "Toast",
    "companyId": "36883",
    "companyLogo": "https://media.instahyre.com/images/profile/base/employer/36883/da46583f6e/1519895762137.webp",
    "companyTagline": "Built for busy",
    "companyFounded": 2011,
    "companyEmployeeCount": 1000,
    "companyDescription": "Toast is a cloud-based restaurant software company that combines restaurant point of sale, guest-facing technology, and customer support to help restaurants improve operations and elevate guest experiences.",
    "locations": "Bangalore",
    "skills": [
        "CI / CD",
        "Distributed Systems",
        "Java",
        "JavaScript",
        "Microservices",
        "React.js"
    ],
    "applyUrl": "https://www.instahyre.com/job-426870-staff-software-engineer-at-toast-bangalore/",
    "jobId": "426870",
    "scrapedAt": "2026-08-27T01:25:43.893Z"
}
```

| Field | Meaning |
|---|---|
| `title` | Job title as posted. |
| `company` | Hiring company name. |
| `companyId` | Instahyre's stable employer ID — use it to dedupe companies across runs. |
| `companyLogo` | Direct CDN URL to the company logo. |
| `companyTagline` | The company's one-line positioning statement. |
| `companyFounded` | Year the company was founded. |
| `companyEmployeeCount` | Instahyre's published company-size figure — a **rounded band** (e.g. `50`, `500`, `1000`), not an exact headcount. |
| `companyDescription` | Instahyre's written "about this company" paragraph. |
| `locations` | City, or several comma-separated (`"Bangalore,Hyderabad,Pune"`). `"Work From Home"` marks a remote role. |
| `skills` | Array of the skills / technologies the posting asks for. |
| `applyUrl` | Direct, canonical Instahyre job URL to apply. |
| `jobId` | Stable posting ID — use it to dedupe jobs across scheduled runs. |
| `scrapedAt` | ISO timestamp of the run. |

#### Two ready-made dataset views

The dataset ships with two saved views, so the same run reads either way with one click:

- **Jobs** — title, company, location, skills, employees, founded, apply link.
- **Companies** — company, tagline, employees, founded, about, what they are hiring for, job link.

### Automate & schedule

- **[Schedules](https://docs.apify.com/platform/schedules)** — run daily and dedupe on `jobId` to keep a rolling feed of India tech openings.
- **[Webhooks](https://docs.apify.com/platform/integrations/webhooks)** — fire a CRM import, Slack alert or email the moment a run finishes.
- **[apify-client for JavaScript](https://docs.apify.com/api/client/js/)** / **[Python](https://docs.apify.com/api/client/python/)** — official SDKs.

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

const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });

const run = await client.actor('scrapesage/instahyre-scraper').call({
    titleContains: ['react', 'node'],
    maxResults: 200,
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} India tech jobs + company profiles`);
```

### Integrate with any app

Connect the dataset to thousands of apps — no code required:

- **[Make](https://docs.apify.com/platform/integrations/make)** — multi-step automation scenarios.
- **[Zapier](https://docs.apify.com/platform/integrations/zapier)** — push new hiring companies straight into your CRM.
- **[Slack](https://docs.apify.com/platform/integrations/slack)** — get pinged when a monitored keyword finds new roles.
- **[Google Drive / Sheets](https://docs.apify.com/platform/integrations/drive)** — auto-export every run to a spreadsheet.
- **[Airbyte](https://docs.apify.com/platform/integrations/airbyte)** — pipe results into your data warehouse.
- **[GitHub](https://docs.apify.com/platform/integrations/github)** — trigger runs from commits or releases.

### Use with AI assistants (MCP)

The output is clean, LLM-ready JSON. Call this actor from Claude, ChatGPT or any agent framework through the **[Apify MCP server](https://docs.apify.com/platform/integrations/mcp)** — ask your assistant to *"find Python jobs in Bangalore and tell me how big each company is"* and let it run this scraper for you.

### Agent-ready: autonomous payments (x402 & Skyfire)

This actor is **agent-ready** — AI agents can discover it, run it, and **pay for it autonomously**, with no Apify account and no human in the loop. It uses [pay-per-event](https://docs.apify.com/platform/actors/publishing/monetize/pay-per-event) pricing and [limited permissions](https://docs.apify.com/platform/actors/development/permissions), so it qualifies for Apify's agentic-payment standards:

- **[x402](https://docs.apify.com/platform/integrations/x402)** — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp) — no account, no API key.
- **[Skyfire](https://docs.apify.com/platform/integrations/skyfire)** — agent-to-service payments for fully autonomous AI-agent workflows.

Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.

### Pricing

**Pay-per-event, tiered by volume.** You are charged **per job record delivered** — nothing else. One row, one charge, every run.

| Apify plan tier | Price per job |
|---|---|
| Free | $0.003 |
| Bronze | $0.00255 |
| Silver | $0.0021 |
| Gold | $0.00165 |
| Platinum | $0.00114 |
| Diamond | $0.00075 |

### More scrapers from scrapesage

Build a complete **India hiring & B2B-lead stack**:

- **[Naukri Scraper](https://apify.com/scrapesage/naukri-scraper)** — India's largest job board: jobs, salaries, skills & recruiter leads.
- **[Internshala Scraper](https://apify.com/scrapesage/internshala-scraper)** — India internships & fresher jobs.
- **[Foundit Scraper](https://apify.com/scrapesage/foundit-scraper)** — Foundit (formerly Monster) across India, the Gulf & SE Asia.
- **[IndiaMART Scraper](https://apify.com/scrapesage/indiamart-scraper)** — India B2B suppliers, products & leads.
- **[LinkedIn Jobs Scraper](https://apify.com/scrapesage/linkedin-jobs-scraper)** — filter-based job postings, no login.
- **[LinkedIn Company Scraper](https://apify.com/scrapesage/linkedin-company-scraper)** — firmographics & B2B leads.
- **[Multi-ATS Job Scraper](https://apify.com/scrapesage/multi-ats-job-scraper)** — Greenhouse, Lever, Ashby & Workday boards.
- **[Glassdoor Scraper](https://apify.com/scrapesage/glassdoor-scraper)** — company reviews, ratings & interviews.
- **[Levels.fyi Scraper](https://apify.com/scrapesage/levels-fyi-scraper)** — tech salaries, compensation & leveling.
- **[Wellfound Scraper](https://apify.com/scrapesage/wellfound-scraper)** — startup jobs, salary & equity.

### Tips

- **Broad keywords beat narrow ones.** `titleContains` matches on **title *and* skills**, so `aws` catches every posting that lists AWS in its stack, not just roles called "AWS Engineer".
- **Several keywords are OR'd**, not AND'd — `["react", "vue", "angular"]` returns front-end roles across all three.
- **For a whole-market pull**, leave `titleContains` empty and raise **Max jobs**; for a niche stack, set a keyword and a generous **Max jobs** so the scan has room to find matches.
- **Give rare keywords a longer run timeout.** A narrow keyword makes the actor page deep into the board; if it runs out of time it ends cleanly, says so in the run status, and keeps everything collected up to that point.
- **Dedupe on `jobId`** across scheduled runs, and on `companyId` when you want the company list rather than the job list.

### FAQ

**Do I need an Instahyre login or API key?** No. The actor reads Instahyre's own public job-search endpoint — no account, no cookies, no browser.

**How does the keyword filter work?** Instahyre's public endpoint ignores query parameters, so filtering is done **client-side by this actor**: it pages through the live board and keeps the postings whose title or skills match your keywords. In practice it can scan the entire publicly paginated feed, so a keyword search is a real search, not a search of the first page.

**Are results sorted newest-first?** No — the actor reads the board in **Instahyre's own default ranking**. Every posting is a currently-open role; there is no "posted on" date in the public feed, so the actor does not invent one.

**Is there a salary field?** No. Instahyre's public job feed does not expose salary, so this actor does not report one rather than guess. For India salary data, pair it with the [Naukri Scraper](https://apify.com/scrapesage/naukri-scraper) or [Levels.fyi Scraper](https://apify.com/scrapesage/levels-fyi-scraper).

**Can I get only remote jobs?** Instahyre marks remote roles with the location `"Work From Home"` — filter the exported dataset on that value (about 1,173 of ~13,600 postings at the time of writing).

**Is the company data on every row?** Yes. Instahyre attaches the employer profile to each posting, and in our validation runs every company field was populated on 100% of records. The same company repeats across its own postings — dedupe on `companyId` for a clean company list.

**Can I export to Google Sheets, CSV or Excel?** Yes — one click in the dataset view, or automatically after every run via the [Google Drive integration](https://docs.apify.com/platform/integrations/drive).

**Why would a run return no rows?** Only if your keyword matched nothing on the board. The run ends **Succeeded** with a status message telling you exactly that, so you can broaden the keyword and re-run — it never fails silently.

**Is scraping Instahyre legal?** This actor collects **publicly available** job-listing data only. You are responsible for using the data in compliance with applicable law (including India's DPDP Act and GDPR/CCPA where relevant) and Instahyre's terms of use.

### Disclaimer

**This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Instahyre or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.**

"Instahyre" and any related marks are the property of their respective owners and are used here only in a descriptive, nominative sense - to identify the publicly accessible website from which this Actor collects data. This Actor is not an official Instahyre product, is not authorised or certified by Instahyre, and does not distribute Instahyre software. It collects only publicly available information; you are responsible for ensuring your use of that data complies with applicable laws, regulations and the terms of the source website.

### Need help?

Open an issue on the actor's **Issues** tab, or visit the [Apify help center](https://help.apify.com/). Feature requests are welcome — this actor is actively maintained.

***

*This is an independent scraper for publicly available data. It is not affiliated with, endorsed by, or sponsored by Instahyre. "Instahyre" is a trademark of its respective owner, used here for descriptive purposes only.*

# Actor input Schema

## `titleContains` (type: `array`):

Optional. Keep only jobs whose title or skills contain any of these words, e.g. <code>python</code>, <code>data</code>, <code>frontend</code>. Matched client-side over the most recent postings. Leave empty to get the latest jobs across all functions.

## `maxResults` (type: `integer`):

Maximum number of jobs to return.

## `proxyConfiguration` (type: `object`):

Proxies to use. The Instahyre API is public, so the default Apify datacenter proxy is plenty.

## Actor input object example

```json
{
  "titleContains": [
    "python"
  ],
  "maxResults": 50,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `results` (type: `string`):

All scraped job + company records as JSON items in the default dataset.

# 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 = {
    "titleContains": [
        "python"
    ],
    "maxResults": 50,
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapesage/instahyre-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 = {
    "titleContains": ["python"],
    "maxResults": 50,
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("scrapesage/instahyre-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 '{
  "titleContains": [
    "python"
  ],
  "maxResults": 50,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call scrapesage/instahyre-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,scrapesage/instahyre-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/f28cT2Qhk3PM6fq2N/builds/n4kU8Dy0Xnpxfn2xZ/openapi.json
