EnergiAPI
EnergiAPI Data API

Datos energéticos, sin fricción.

Construye análisis, pronósticos y productos climáticos sobre datos normalizados de los principales mercados eléctricos de Latinoamérica.

Base URL

https://api.energiapi.org/api/v1

Formato

JSON

Zona horaria

UTC

Autenticación

Envía tu credencial en el encabezado X-API-Key. Las credenciales Free se crean desde el portal, se muestran completas una sola vez y actualmente autorizan únicamente /public_demand.

curl "https://api.energiapi.org/api/v1/realtime_demand?country=mexico" \
  -H "X-API-Key: enrg_live_••••••••"

Rate limits

Todas las rutas de datos bajo /api/v1 tienen un techo de 3,000 solicitudes por identidad en una ventana móvil de 5 minutos. Para usuarios autenticados también aplica la cuota de su plan: Free 100, Pro 1,000 y Enterprise 3,000 solicitudes por 5 minutos. Los usuarios con grupo Cognito Admins están exentos después de validar su access token; los límites de autenticación continúan aplicando. Se agrupa por usuario autenticado o por IP si no envías una credencial; cambiar de endpoint no reinicia la cuota.

Datos API

3,000 / 5 min

Techo compartido; Free 100, Pro 1,000 y Enterprise 3,000 / 5 min.

Login y refresh

100 / 5 min

Por IP; MFA y recuperación usan controles defensivos adicionales.

Cuota mensual por país

Free incluye 20 llamadas, Pro 1,000 y Enterprise 5,000 por país y periodo mensual de consumo. Los endpoints del plan comparten la cuota de cada país. Cada paquete Enterprise pagado añade 5,000 llamadas al país elegido hasta el cierre de ese periodo; cuesta US$150 para Real-time o US$200 para Full. No hay facturación automática de excedentes. Una solicitud con varios países consume una llamada por cada país.

Cuando alcances la cuota

La API responde 429 Too Many Requests. Para límites de 5 minutos incluye Retry-After, X-RateLimit-Limit, X-RateLimit-Remaining y X-RateLimit-Reset; espera ese tiempo antes de reintentar. Para la cuota mensual por país, mejora a Enterprise, compra un paquete si ya eres Enterprise, o espera al siguiente periodo. No reintentes agresivamente un 503: indica que el servicio de rate limiting no está disponible.

Los health checks /api/v1/health y /api/v1/health/detailed no consumen la cuota de datos.

Paginación

Los precios marginales en tiempo real se devuelven por páginas para evitar respuestas demasiado grandes. Actualmente aplica a GET /realtime_marginal_prices.

limit

1–5,000

Observaciones por respuesta; el valor predeterminado es 1,000.

offset

0 o mayor

Observaciones a omitir; usa next_offset para continuar.

curl "https://api.energiapi.org/api/v1/realtime_marginal_prices?country=mexico&limit=1000&offset=0"   -H "X-API-Key: enrg_live_••••••••"

La clave pagination.next_offset indica el siguiente valor de offset. Solicita la página siguiente hasta que sea null. Los datos son tiempo real: no combines páginas obtenidas en momentos diferentes como si fueran un snapshot inmutable.

GET/realtime_demand

Demanda en tiempo real

Devuelve la demanda eléctrica más reciente disponible, agrupada por país y región.

Parámetros de consulta

country

string

País en formato canónico

Ejemplo: mexico

Respuesta

200 · application/json
{
  "mexico": {
    "national": [{
      "datetime": "2026-08-13T15:00:00Z",
      "demand": 48291.4,
      "units": "mwh"
    }]
  }
}

¿Todo listo para probar?

Usa el playground o crea una credencial para tu aplicación.

Crear cuenta gratis