Modelo de datos, ejemplos de consultas, integración MCP y referencia de API REST para el dataset del mercado eléctrico español.
API access
Query ESIOS market data programmatically from Python. Use the datons client or call the REST endpoints directly.
Quickstart
Install
pip install datonsExample
from datons import Client
client = Client(token="YOUR_API_KEY")
# Query preprocessed I90 market data → pandas DataFrame
df = client.esios.query(
"SELECT unit, datetime, energy, price "
"FROM esios.archives_i90 "
"WHERE program = 'PDBF' AND toDate(datetime) >= '2025-01-01' "
"LIMIT 100"
)
print(df.head())Authentication
Request header
Include your API key in every request:
X-API-Key: your_key_hereEnvironment variable
Set DATONS_API_KEY and the client will pick it up automatically:
export DATONS_API_KEY=your_key_hereBase URL
https://mcp.datons.com/esiosDon't have an API key yet? Get your API key from your account dashboard.
Endpoint reference
Rate limits
All API requests are rate-limited by tier. See plans for tier comparison.
All queries are read-only (SELECT only).
Response headers
Every response includes rate limit headers so you can track your usage:
Query examples
esios.indicators
Time-series table with ~1,966 ESIOS indicators: market prices, demand, generation forecasts, and more. Updated hourly.
| Column | Type | Description |
|---|---|---|
| indicator_id | UInt16 | ESIOS indicator number (e.g. 600 = spot price) |
| datetime | DateTime | Timestamp (Europe/Madrid) |
| value | Float64 | Indicator value (units depend on indicator) |
| geo_id | UInt16 | Geography (3 = España, 8741 = Península) |
| indicator_name | String | Human-readable indicator label |
| frequency | String | Data frequency (Hora, Diez minutos, etc.) |
| unit | String | Measurement unit (€/MWh, MWh, MW, etc.) |
Common indicator IDs:
| ID | geo_id | Indicator |
|---|---|---|
| 600 | 3 | Spot market price (OMIE daily) |
| 551 | 8741 | Wind generation (T.Real eólica) |
| 1295 | 8741 | Solar PV generation (T.Real Solar fotovoltaica) |
| 1294 | 8741 | Solar thermal generation (T.Real Solar térmica) |
| 546 | 8741 | Hydro generation (T.Real hidráulica) |
| 549 | 8741 | Nuclear generation (T.Real nuclear) |
| 550 | 8741 | Combined cycle (T.Real C.Combinado) |
| 547 | 8741 | Coal generation (T.Real carbón) |
Diccionario de columnas
Descripción y tipo de cada columna en la tabla operational_data_15min.
Referencia de programas
Programas de mercado disponibles y sus estadísticas.
Programa Diario Base Funcionamiento
Programa Diario Viable Provisional
Programa Horario Funcional 1
Banda Secundaria
Programa Horario Funcional 2
Programa Horario Funcional 3
Programa Horario Funcional 4
Programa Horario Funcional 5
Programa Horario Funcional 6
Programa Horario Funcional 7
Restricciones Tiempo Real
Mercado de Balances
Banda Terciaria