JouloDocs
Integrations

Easee

How Joulo connects an Easee charger: Cloud API, OAuth, sync cadence and MID detection.

Easee chargers connect through the Easee Cloud API. You sign in with your Easee account once. Joulo then reads your charging sessions on a schedule.

At a glance

PropertyValue
RouteCloud API
APIEasee Cloud API
AuthenticationOAuth 2.0
SyncHourly per account
MID detectionPer model, from the Joulo charger catalog
BackfillAutomatic, to 1 January 2026

How the connection works

Easee issues access tokens that live one hour, paired with a single-use refresh token. Joulo refreshes only when the access token is near expiry. Refreshing on every tick burned about 17,000 requests a day and turned brief upstream hiccups into mass disconnects.

Easee rate-limits per client, and every Joulo token shares one bucket. That is a real upstream ceiling, so each account syncs at most once an hour plus jitter.

The hourly floor costs no data. Sessions are fetched with a 14-day overlap window, so a session that lands between two ticks is picked up on the next one. Only live charger status has hourly resolution.

A single failed refresh does not disconnect you. Joulo counts consecutive auth failures and expires the integration only after several ticks fail in a row.

What Joulo reads

Joulo reads the charging sessions per charger, each with a start time, an end time and the metered energy in kWh.

MID certification

The Easee API reports a product code, not a MID flag. Joulo matches the model against its validated hardware catalog to decide mid_certified. A model that is not in the catalog stays unknown and goes to review.

Limitations

  • Live status is refreshed hourly, so is_charging can lag a session that just started.
  • Easee's auth backend fails in waves. A wave shows as a temporary sync error, not as a lost connection.

Next steps