# India IPO Tracker – GMP, Subscription & Listing Data (`data_daemon/india-ipo-tracker`) Actor

Live Indian IPO data as clean JSON: current & upcoming IPOs, grey market premium (GMP), real-time QIB/NII/Retail subscription from BSE & NSE, listing-day performance, event calendar and full IPO detail pages. No login, no proxy, pay per record.

- **URL**: https://apify.com/data\_daemon/india-ipo-tracker.md
- **Developed by:** [Daemon Data](https://apify.com/data_daemon) (community)
- **Categories:** Business, Developer tools, MCP servers
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 ipo report rows

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## India IPO Tracker – GMP, Subscription, Listing Performance (Mainboard & SME)

Get live Indian IPO data as clean, structured JSON in seconds. One run gives you every current and upcoming IPO on BSE and NSE, the live **grey market premium (GMP)**, real-time **QIB / NII / Retail subscription** figures, **listing-day gains**, the **IPO event calendar**, and optionally the full **IPO detail page** (price band, lot size, timetable, reservation, anchor investors, financials, objects of the issue).

No login, no proxies, no browser. Pay only for the records you get.

### What you can extract

| `reportType` | Description | Typical rows |
| --- | --- | --- |
| `currentIpos` | Current, upcoming and recently listed IPOs with status, price, lot size, P/E and all key dates | ~200 |
| `gmp` | Live grey market premium with GMP ₹ and %, rating, subscription, dates and anchor flag | ~30 |
| `subscription` | Real-time subscription multiples (QIB, sNII, bNII, NII, Retail, Employee, Shareholder, Total) and application counts from BSE/NSE | ~200 |
| `ipoList` | Every mainboard and SME IPO in the financial year with pricing method, dates, issue size, fresh/OFS split, lead manager, ISIN and symbols | ~200 |
| `listingPerformance` | Issue price vs listing-day close and current price on BSE/NSE, gain/loss % | ~200 |
| `gmpPerformance` | GMP before listing vs actual listing price, listing-day close and last traded price | ~190 |
| `calendar` | Day-by-day event calendar: which IPOs open, close, allot, refund and list on each date | ~30 |
| `ipoDetail` | Full detail page per IPO: IPO details, issue size, reservation, lot size, anchor investors, financials, KPIs, valuation, shareholding, objects of the issue | 1 per IPO |

Use the **IPO category** filter to restrict to Mainboard or SME issues, and **Financial year** (e.g. `2025-26`) to pull historical years for year-scoped reports.

### Who uses this

- **Fintech and broker apps** that need an IPO calendar, GMP feed or subscription widget without maintaining scrapers.
- **Telegram / WhatsApp alert bots** for IPO openings, GMP moves and allotment dates.
- **Analysts and researchers** studying subscription vs listing gains across hundreds of IPOs.
- **Content sites and newsletters** publishing daily IPO updates.
- **AI agents** – this Actor works as an MCP tool, so an agent can ask "which IPOs are open today and what is their GMP?" and get structured answers.

### Input

```json
{
    "reports": ["currentIpos", "gmp", "subscription"],
    "category": "all",
    "financialYear": "",
    "includeIpoDetails": false,
    "maxItems": 0
}
```

| Field | Type | Description |
| --- | --- | --- |
| `reports` | array | Any of `currentIpos`, `gmp`, `subscription`, `ipoList`, `listingPerformance`, `gmpPerformance`, `calendar`. Default: the first three. |
| `category` | string | `all` (default), `mainboard` or `sme`. |
| `financialYear` | string | Indian financial year such as `2025-26`. Empty = current year. |
| `includeIpoDetails` | boolean | Also fetch each IPO's detail page and emit one `ipoDetail` record per IPO. |
| `maxItems` | integer | Stop after this many records. `0` = no limit. |
| `proxyConfiguration` | object | Optional. Not required; the sources do not block datacenter IPs. |

### Output examples

Live GMP record:

```json
{
    "reportType": "gmp",
    "ipoName": "Veegaland Developers",
    "slug": "veegaland-developers-ipo",
    "category": "Mainboard",
    "status": "U",
    "gmp": 18,
    "gmpPercent": 12.86,
    "rating": "🔥🔥🔥",
    "issuePrice": 140,
    "issueSizeCr": 210,
    "lotSize": 107,
    "priceToEarnings": 17.74,
    "openDate": "2026-09-10",
    "closeDate": "2026-09-15",
    "allotmentDate": "2026-09-16",
    "listingDate": "2026-09-18",
    "anchorInvestors": true,
    "updatedOn": "3-Sep 20:36"
}
```

Live subscription record:

```json
{
    "reportType": "subscription",
    "ipoName": "Rays of Belief Ltd.",
    "slug": "rays-of-belief-ipo",
    "url": "https://www.chittorgarh.com/ipo/rays-of-belief-ipo/2787/",
    "category": "Mainboard",
    "openDate": "2026-09-01",
    "closeDate": "2026-09-03",
    "issueSizeCr": 125,
    "qibX": 9.06,
    "sNiiX": 229.7,
    "bNiiX": 303.82,
    "niiX": 279.11,
    "retailX": 195.86,
    "totalX": 107.71,
    "applications": 1556764,
    "subscriptionAsOn": "03-Sep-2026 18:54"
}
```

Every record also carries `fields` (all visible columns, cleaned) and `meta` (hidden machine-readable columns such as ISIN, NSE symbol and sortable dates) so nothing from the source is lost, plus `scrapedAt`.

`ipoDetail` records contain a `sections` object keyed by the page headings, for example `"IPO Details"`, `"Issue Reservation"`, `"IPO Lot Size"`, `"Company Financials (Restated)"`, `"IPO Objects of the Issue"`, `"Key Performance Indicator (KPI)"`, `"IPO Valuation"` and `"Shareholding Structure"`.

### Pricing

Pay per event:

- **Report row** – one charge per record from any report.
- **IPO detail page** – one charge per `ipoDetail` record when `includeIpoDetails` is on.

A default run (current IPOs + GMP + subscription, ~450 rows) costs a few cents. There is no platform compute cost beyond the tiny run time (typically under 30 seconds without details, about a minute with details).

### Tips

- Schedule the Actor every 15–30 minutes during market hours to get a live subscription and GMP feed. Combine with the Apify webhook or the Google Sheets integration.
- Use `reports: ["calendar"]` for a lightweight daily "what happens today" digest.
- Join records across reports on `slug` (e.g. `veegaland-developers-ipo`), which is stable across both sources.
- `status` in `gmp` records uses the source shorthand: `U` upcoming, `O` open, `C` closed, `L` listed.

### FAQ

**How much does it cost to get Indian IPO GMP and subscription data?**

A default run (current IPOs, live GMP, live subscription, about 450 rows) costs about $1.35 at $0.003 per row. Adding full IPO detail pages costs $0.015 per IPO.

**How often is the data updated?**

Every run reads the sources live. Schedule it every 15–30 minutes during IPO bidding hours for a real-time feed.

**Does it cover SME IPOs?**

Yes. Set `category` to `sme`, `mainboard` or `all`.

**Do I need a proxy or login?**

No. The sources answer plain HTTP requests, so runs finish in seconds.

### Related Actors by Daemon Data

- [Hirist Jobs Scraper](https://apify.com/data_daemon/hirist-jobs-scraper) – India IT jobs with full descriptions and recruiter activity
- [IIMJobs Scraper](https://apify.com/data_daemon/iimjobs-jobs-scraper) – India management, finance and MBA jobs
- [Tickertape India Stocks Scraper](https://apify.com/data_daemon/tickertape-stocks-scraper) – NSE/BSE fundamentals, shareholding and screener
- [Oracle Cloud HCM Jobs Scraper](https://apify.com/data_daemon/oracle-hcm-jobs-scraper) – every job on any Oracle Recruiting career site
- [Dubai Property Transactions](https://apify.com/data_daemon/dubai-property-transactions) – Dubai Land Department sales, mortgages and gifts
- [UK Gazette Insolvency Notices](https://apify.com/data_daemon/uk-gazette-insolvency-notices) – winding-up petitions, administrations and liquidations
- [Startup India DPIIT Directory](https://apify.com/data_daemon/startup-india-dpiit-scraper) – India's recognised startups with sector, stage and CIN

### Support

Found a bug or need another field or source? Open an issue on the Issues tab; issues are usually answered within a day. Custom variants of this Actor are available on request.

### Data sources and legal

Data is collected from publicly available IPO reports published by Chittorgarh.com and InvestorGain.com and is provided for informational purposes only. It is not investment advice. Please respect the source websites' terms of use.

# Actor input Schema

## `reports` (type: `array`):

Which IPO datasets to extract. Each produces its own `reportType` records. Defaults to current IPOs, live GMP and live subscription.

## `category` (type: `string`):

Mainboard IPOs, SME IPOs, or both.

## `financialYear` (type: `string`):

Indian financial year to query, e.g. `2025-26`. Leave empty for the current financial year. Applies to reports that are year-scoped (IPO list, subscription, listing performance).

## `includeIpoDetails` (type: `boolean`):

Also fetch each IPO's detail page (price band, lot size, timetable, reservation, anchor investors, financials, objects of the issue). Emits one extra `ipoDetail` record per IPO and is charged per detail page.

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

Stop after this many records have been saved (0 = no limit).

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

Optional. The sources do not block datacenter IPs, so no proxy is needed by default.

## Actor input object example

```json
{
  "reports": [
    "currentIpos",
    "gmp",
    "subscription"
  ],
  "category": "all",
  "includeIpoDetails": false,
  "maxItems": 0,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

IPO records as JSON items in the default dataset (also downloadable as CSV, Excel, XML).

# 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 = {
    "reports": [
        "currentIpos",
        "gmp",
        "subscription"
    ],
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("data_daemon/india-ipo-tracker").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 = {
    "reports": [
        "currentIpos",
        "gmp",
        "subscription",
    ],
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("data_daemon/india-ipo-tracker").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 '{
  "reports": [
    "currentIpos",
    "gmp",
    "subscription"
  ],
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call data_daemon/india-ipo-tracker --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,data_daemon/india-ipo-tracker"
        }
    }
}

```

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/Q8tYzzX5YLgPLbQu4/builds/iy0aCzMuX78vIY0nb/openapi.json
