India Energy Atlas

API Reference

IEX market

Day-Ahead Market (DAM) and Real-Time Market (RTM) clearing prices from Indian Energy Exchange, plus derived spread and price-duration analytics.

Block-level resolution

IEX publishes prices in 15-minute blocks (96 per day, starting 00:00 IST). All IEX endpoints return data at that native resolution. The block field is an integer from 1 to 96.

GET/developer/v1/market/iex/latest

Latest cleared DAM and RTM prices per 15-minute block. Updated in real-time on Starter and above (15-min delay on Trial).

json
{
  "as_of": "2026-04-20T14:30:00Z",
  "date": "2026-04-20",
  "blocks": [
    { "block": 58, "start": "14:15", "dam_mcp": 4820, "rtm_mcp": 5120 },
    { "block": 59, "start": "14:30", "dam_mcp": 4780, "rtm_mcp": 5050 }
  ],
  "unit": "INR/MWh"
}
GET/developer/v1/market/iex/spread

DAM vs RTM spread per block — positive values mean RTM cleared higher than DAM. A direct arbitrage / scheduling signal.

json
{
  "as_of": "2026-04-20T14:30:00Z",
  "date": "2026-04-20",
  "blocks": [
    { "block": 58, "spread": 300, "dam": 4820, "rtm": 5120 },
    { "block": 59, "spread": 270, "dam": 4780, "rtm": 5050 }
  ],
  "unit": "INR/MWh"
}
GET/developer/v1/market/iex/price-duration

Price duration curve — sorted percentiles of clearing prices over a date range. Useful for BESS revenue modelling and capacity planning.

Query parameters
  • startdateRequired
    YYYY-MM-DD. Earliest date in the window.
  • enddateRequired
    YYYY-MM-DD. Latest date, inclusive.
  • marketenumdefault: dam
    One of dam or rtm.

The returned pct is the fraction of blocks in the window where price was at or above price.

json
{
  "start": "2026-01-01",
  "end": "2026-04-20",
  "market": "dam",
  "curve": [
    { "pct": 0.01, "price": 11850 },
    { "pct": 0.05, "price": 8420 },
    { "pct": 0.25, "price": 5760 },
    { "pct": 0.50, "price": 4180 },
    { "pct": 0.75, "price": 3040 },
    { "pct": 0.95, "price": 1980 }
  ],
  "unit": "INR/MWh"
}