epexspot.com APIepexspot.com ↗
Access EPEX SPOT auction results, intraday prices, auction status, and newsroom articles via a simple API. Covers DE-LU, FR, GB, NL, AT, BE, CH, PL, and more.
curl -X GET 'https://api.parse.bot/scraper/f4c30fc5-0c2a-4b85-8bbe-e3ddda5e8775/get_market_results?market_area=DE-LU' \ -H 'X-API-Key: $PARSE_API_KEY'
Fetch market results for a given trading modality, market area, and delivery date. Returns hourly price data with timestamps.
| Param | Type | Description |
|---|---|---|
| auction | string | Auction name. Accepted values: MRC, GB, CH, 30-call-GB. |
| product | string | Product resolution. Accepted values: 15 (15 min), 60 (60 min index). |
| modality | string | Trading modality. Accepted values: Auction, Continuous, Capacity, Mgo. |
| market_area | string | Market area/bidding zone code (e.g. DE-LU, FR, NL, AT, BE, CH, GB, PL). |
| sub_modality | string | Market segment. Accepted values: DayAhead, Intraday. |
| delivery_date | string | Delivery date in YYYY-MM-DD format. Omitting defaults to the current UTC date. |
{
"type": "object",
"fields": {
"auction": "string, the queried auction name",
"details": "object or null, additional chart details from the platform",
"product": "string, the queried product resolution",
"results": "array of hourly price entries with timestamp_ms, datetime, price, and volume fields",
"modality": "string, the queried modality",
"market_area": "string, the queried market area code",
"sub_modality": "string, the queried sub-modality",
"delivery_date": "string, the delivery date in YYYY-MM-DD format"
},
"sample": {
"data": {
"auction": "MRC",
"details": null,
"product": "60",
"results": [
{
"price": 130.54,
"datetime": "2026-05-13T22:00:00",
"timestamp_ms": 1778709600000,
"volume_total": null
},
{
"price": 121.75,
"datetime": "2026-05-13T23:00:00",
"timestamp_ms": 1778713200000,
"volume_total": null
}
],
"modality": "Auction",
"market_area": "DE-LU",
"sub_modality": "DayAhead",
"delivery_date": "2026-05-14"
},
"status": "success"
}
}About the epexspot.com API
The EPEX SPOT API provides access to European wholesale electricity market data across 4 endpoints, covering day-ahead and intraday auction results, live auction status, available market areas, and newsroom articles. The get_market_results endpoint returns hourly price and volume entries for specific bidding zones and delivery dates, while get_auction_status surfaces real-time operational messages and publication status across all active markets.
Market Results and Price Data
The get_market_results endpoint is the core of the API. It accepts filter parameters including modality (Auction, Continuous, Capacity, Mgo), sub_modality (DayAhead or Intraday), market_area (e.g. DE-LU, FR, NL, GB, CH, AT, BE, PL), product (15-minute or 60-minute resolution), and a delivery_date in YYYY-MM-DD format. The response contains an array of results objects, each with timestamp_ms, datetime, price, and volume fields, alongside a details object for chart-level metadata when available. Omitting delivery_date defaults to the current UTC date.
Auction Status and Market Configuration
get_auction_status returns the current operational state of all markets, including per-market status, order_book_closure times, publication_status, and free-text comments. It also includes an operational_messages array with timestamped text notifications — useful for detecting delays or unscheduled interruptions. get_market_areas exposes the full set of valid filter values: available market_areas, modalities, auctions, sub_modalities, and products, each as labeled option arrays. This endpoint is the right starting point before constructing a get_market_results query.
Newsroom
get_newsroom_articles returns the latest articles and press releases from the EPEX SPOT newsroom. Each entry includes title, date, category, and link. This is suitable for monitoring regulatory announcements, market rule changes, and exchange news alongside price data.
- Build a day-ahead price dashboard tracking hourly electricity prices across DE-LU, FR, and NL bidding zones.
- Alert on auction status changes using the
auction_statusesarray fromget_auction_statusto detect delays or closures. - Compare 15-minute vs 60-minute intraday prices by switching the
productparameter inget_market_results. - Populate a time-series database with historical daily price and volume data for a specific market area and delivery date.
- Monitor operational messages from
get_auction_statusto detect unscheduled market interruptions. - Aggregate newsroom articles via
get_newsroom_articlesto track regulatory changes and exchange announcements alongside price feeds. - Validate user-provided market area and modality inputs against the enumerated options returned by
get_market_areas.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does EPEX SPOT have an official developer API?+
What does `get_market_results` return and how granular is the price data?+
results field. Each entry includes timestamp_ms (Unix millisecond timestamp), datetime, price, and volume for the queried period. Resolution depends on the product parameter: pass 15 for 15-minute intervals or 60 for hourly index data. Results are scoped to a single market_area, sub_modality, and delivery_date per request.Does the API cover historical delivery dates beyond the current day?+
delivery_date parameter accepts any date in YYYY-MM-DD format, so you can query past delivery dates that appear in the EPEX SPOT platform. However, the depth of available historical data depends on what the source publishes, and very old dates may return empty results. If you need a dedicated historical range endpoint, you can fork this API on Parse and revise it to add that capability.Is intraday continuous trading data available, or only auction results?+
modality parameter accepts Continuous in addition to Auction, and sub_modality accepts Intraday. Setting both retrieves intraday continuous market data for supported bidding zones. Not all market areas support every modality combination; use get_market_areas to check valid combinations before querying.Does the API return individual trade-level order book data?+
details metadata. Individual order book entries, bid/ask depth, or participant-level data are not exposed. You can fork this API on Parse and revise it to add an order book endpoint if that surface becomes publicly accessible.