---
title: "Index constituents with live returns"
method: GET
path: "/v1/market/heatmap/{index_slug}"
tags: ["live"]
---

# Index constituents with live returns

`GET /v1/market/heatmap/{index_slug}`

## Request

- Base URL: `https://api.tapetide.com`
- URL: `https://api.tapetide.com/v1/market/heatmap/{index_slug}`
- Auth: HTTP bearer

Every constituent of an index with its live price, returns over 1 day to 1 year, volume, market cap and P/E. Sorted by `sort` (default market cap, largest first); `rank` gives the position. Indices: nifty-50, sensex, nifty-next-50, nifty-100, nifty-200, nifty-500, nifty-total-market, nifty-midcap-50, nifty-midcap-100, nifty-midcap-150, nifty-midcap-select, nifty-midsmallcap-400, nifty-smallcap-50, nifty-smallcap-100, nifty-smallcap-250, nifty-microcap-250, nifty-auto, nifty-bank, nifty-financial, nifty-fmcg, nifty-healthcare, nifty-it, nifty-media, nifty-metal, nifty-pharma, nifty-private-bank, nifty-psu-bank, nifty-realty, nifty-consumer-durables, nifty-energy, nifty-infra, nifty-commodities, nifty-pse, nifty-cpse, nifty-mnc, nifty-services. Returns null, never 0, for a value the feed did not publish. A 5-year return is not published.

## Path parameters

- `index_slug` string, required: Index slug, e.g. nifty-50. See /v1/market/heatmap.

## Query parameters

- `sort` 'market_cap' | 'change_pct' | 'volume' | 'traded_value' | 'change_pct_1w' | 'change_pct_1m' | 'change_pct_1y'
- `order` 'asc' | 'desc'
- `limit` integer
- `cursor` string

## Response `200`

OK. Costs one request unit.

- object
  - `data` IndexHeatmapItem[], required
    - `rank` integer, required: Position in the requested sort order (1 = first).
    - `symbol` string, required: Stock symbol.
    - `name` string, nullable, required: Company name.
    - `isin` string, nullable, required: ISIN.
    - `exchange` 'NSE' | 'BSE', required: Exchange the price and returns are from: the exchange that computes the index (BSE for Sensex, NSE otherwise).
    - `sector` string, nullable, required: Sector classification.
    - `ltp` number, nullable, required: Last traded price, INR.
    - `change_pct` number, nullable, required: Change today, percent.
    - `change_pct_1w` number, nullable, required: Change over 1 week, percent.
    - `change_pct_1m` number, nullable, required: Change over 1 month, percent.
    - `change_pct_3m` number, nullable, required: Change over 3 months, percent.
    - `change_pct_6m` number, nullable, required: Change over 6 months, percent.
    - `change_pct_1y` number, nullable, required: Change over 1 year, percent.
    - `volume` number, nullable, required: Shares traded today.
    - `traded_value_cr` number, nullable, required: Approximate traded value today (volume x last price), INR crore.
    - `market_cap_cr` number, nullable, required: Market capitalisation, INR crore.
    - `pe` number, nullable, required: Price to earnings; null when not published or not meaningful.
    - `session_date` string, nullable, required: Trading date the prices describe (YYYY-MM-DD, IST).
  - `meta` ListMeta, required
    - `as_of` string, date-time, required: When this response was assembled (UTC).
    - `route` string, required: operationId that served the request.
    - `count` integer, required: Items in this page.
    - `limit` integer, required: Page size applied.
    - `has_more` boolean, required: Whether another page exists.
    - `next_cursor` string, nullable, required: Pass as `cursor` to fetch the next page; null on the last page.
  - `links` Links, required
    - `next` string, nullable: Relative URL of the next page, or null.

## Other responses

- `400`: Malformed or out-of-range parameter. Not charged.
- `401`: Missing or invalid bearer token.
- `404`: The requested resource does not exist. Not charged.
- `429`: Per-minute burst cap (`rate_limited`) or plan quota (`quota_exhausted`) reached.
- `500`: Unexpected server error. Not charged.
- `502`: A data dependency was unavailable. Not charged.
- `503`: Authentication or quota service temporarily unavailable (`service_unavailable`). Not charged; retry after `Retry-After` seconds.

---

[API](https://skmtc.dev/tapetide/apis/tapetide-api.md) · [All operations](https://skmtc.dev/tapetide/apis/tapetide-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tapetide/apis/tapetide-api/revisions/261ec086bde5?raw)
