API SpotWave

Les prix de SpotWave viennent d'une petite API JSON en lecture seule. Vous pouvez l'utiliser pour vos projets perso, tableaux de bord et votre domotique, dans le respect des conditions ci-dessous.

L'essentiel

Endpoints

GET /meta/markets

Tous les marchés (zones de prix) pris en charge, avec leur nom, leur devise et leurs coûts mensuels fixes (TVA comprise), qui ne sont jamais intégrés au prix par kWh.

curl https://spotwave.eu/api/meta/markets
[
  {
    "code": "NL",
    "name": "Netherlands",
    "currency": "EUR",
    "fees": {
      "gridFixedPerMonth": 39.83,
      "energyTaxCreditPerMonth": 52.41,
      "netPerMonth": -12.58,
      "native": { "currency": "EUR", "gridFixedPerMonth": 39.83, "energyTaxCreditPerMonth": 52.41, "netPerMonth": -12.58 }
    }
  },
  …
]

GET /spotprice?country=…&from=…&to=…

La composition du prix tout compris pour chaque période d'un intervalle. from et to sont des horodatages ISO (inclus) ; un intervalle de plus de 92 jours est ramené aux 92 derniers jours.

curl "https://spotwave.eu/api/spotprice?country=NL&from=2026-10-20T00:00:00Z&to=2026-10-20T23:59:59Z"
[
  {
    "periodUtc": "2026-10-20T12:00:00Z",
    "country": "NL",
    "spotEurPerKwh": 0.10301,
    "energyTaxEurPerKwh": 0.0916,
    "gridFeeEurPerKwh": 0.0,
    "vatEurPerKwh": 0.0408681,
    "totalEurPerKwh": 0.2354781,
    "native": { "currency": "EUR", "spotPerKwh": 0.10301, "energyTaxPerKwh": 0.0916, "gridFeePerKwh": 0.0, "vatPerKwh": 0.0408681, "totalPerKwh": 0.2354781 }
  },
  …
]

GET /forecast?country=…&from=…&to=…

Mêmes paramètres et même réponse que /spotprice, pour la journée de demain. Renvoie un tableau vide tant que les prix day-ahead de demain ne sont pas publiés, en général vers 13 h.

curl "https://spotwave.eu/api/forecast?country=DE&from=2026-10-21T00:00:00Z&to=2026-10-21T23:59:59Z"

GET /spotprice/current?country=…

Le dernier prix de gros enregistré pour un marché : le prix spot brut, sans taxes ni frais. hourUtc est le début de la période. Renvoie 404 si le marché n'a pas de données.

curl "https://spotwave.eu/api/spotprice/current?country=NL"
{ "id": 3179619, "country": "NL", "hourUtc": "2026-10-20T15:45:00Z", "eurPerKwh": 0.25471 }

GET /spotprice/stats?country=…

Les percentiles du prix de gros sur les 30 derniers jours, que SpotWave utilise pour dire si un prix est bas ou élevé.

curl "https://spotwave.eu/api/spotprice/stats?country=SE3"
{
  "p25": 0.0401, "median": 0.0825, "p75": 0.1208, "avg": 0.0842,
  "native": { "currency": "SEK", "p25": 0.4452, "median": 0.9165, "p75": 1.3411, "avg": 0.9352 }
}

GET /spotprice/context?country=…

Des niveaux de référence sur longue période : la moyenne glissante annuelle du prix tout compris, celle de l'an dernier et une bande typical (bas/moyen/haut par heure de la journée, UTC) tirée de la même période des années récentes. Les champs sont null tant que l'historique est insuffisant.

curl "https://spotwave.eu/api/spotprice/context?country=NL"
{
  "yearAvg": 0.2409, "lastYearAvg": 0.2219,
  "typical": [ { "i": 0, "low": 0.1694, "mid": 0.2172, "high": 0.2650 }, … ],
  "native": { "currency": "EUR", "yearAvg": 0.2409, "lastYearAvg": 0.2219, "typical": [ … ] }
}

GET /compare

Un instantané de tous les marchés : prix tout compris et spot actuels, fourchette du jour, part des taxes, taux de TVA et sparkline horaire, du moins cher au plus cher. C'est ce qui alimente la page marchés.

curl https://spotwave.eu/api/compare
{
  "asOf": "2026-10-20T15:58:49Z",
  "euAvgSpot": 0.1596,
  "zones": [
    {
      "country": "NL", "name": "Netherlands",
      "currentAllIn": 0.4012, "spot": 0.2400, "taxShare": 40.19, "vatRate": 21.0,
      "todayMin": 0.2307, "todayMax": 0.4012, "isNegative": false,
      "sparkline": [0.1701, 0.1681, 0.1722, …],
      "native": { "currency": "EUR", "currentAllIn": 0.4012, "spot": 0.2400, "todayMin": 0.2307, "todayMax": 0.4012, "sparkline": [ … ] }
    },
    …
  ]
}

GET /meta/status

Quand les données ont été mises à jour pour la dernière fois et, par marché, si les prix de demain sont arrivés. Pratique pour savoir quand appeler /forecast.

curl https://spotwave.eu/api/meta/status
{ "lastUpdated": "2026-10-20T13:05:12Z", "tomorrowPublished": { "NL": true, "DE": true, "SE3": false, … } }

GET /history

Les prix passés d'un marché : moyennes mensuelles et annuelles, jours et heures records, heures sous zéro et prix moyen par heure de la journée sur les 12 derniers mois. Prix spot de gros uniquement, dans la devise du marché au taux du jour.

curl "https://spotwave.eu/api/history?country=NL"

GET /history/month

Un mois jour par jour : moyenne, minimum et maximum, heures sous zéro, jour le moins cher et le plus cher, et les moyennes du mois précédent et du même mois l'an dernier.

curl "https://spotwave.eu/api/history/month?country=NL&month=2026-09"

Avec les assistants IA

SpotWave est aussi un serveur MCP : les assistants et agents IA peuvent consulter eux-mêmes les prix actuels et passés. Ajoutez https://spotwave.eu/api/mcp comme serveur MCP distant (HTTP streamable, sans clé) dans n'importe quel client compatible MCP. Il propose quatre outils : list_markets, get_current_price, get_prices (aujourd'hui, demain ou n'importe quel jour passé) et compare_markets.

curl https://spotwave.eu/api/mcp -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Intégrer le prix sur votre site

Un petit widget avec le prix tout compris et la courbe du jour, et un lien vers SpotWave. Choisissez le marché avec market (n'importe quel code de /meta/markets), la langue avec lang (en, nl, de, da, sv, nb, fi, fr, es, it, pl) et le thème avec theme (light ou dark).

<iframe src="https://spotwave.eu/embed?market=NL&lang=fr&theme=light"
  width="360" height="300" style="border:0;border-radius:14px"
  title="Prix de l'électricité aujourd'hui" loading="lazy"></iframe>

Usage raisonnable

Attribution

Si vous publiez quelque chose construit sur ces données, merci de citer SpotWave avec un lien vers spotwave.eu. Les prix de gros viennent de la plateforme de transparence ENTSO-E ; les taxes et frais sont les chiffres indicatifs de SpotWave, documentés sur la page sources.

Home Assistant

Une intégration Home Assistant qui lit cette API est en préparation. En attendant, le capteur RESTful intégré à Home Assistant peut lire /spotprice/current directement.

Marchés · Guide · API