Skip to main content
GET
Get one finished charging session as aligned 15-minute series

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Path Parameters

org_id
string<uuid>
required

The organization ID

user_id
string<uuid>
required

The user ID

session_id
string
required

Opaque prefix-typed session id (ev_{uuid} or wb_{int})

Response

200 - application/json

OK

Aligned 15-minute series for one finished charge, on a server-determined window.

Every list has exactly the length of buckets, and index i of each list describes the bucket that starts at buckets[i]. A bucket with no source row is null: the value is unknown, not zero, and the chart must draw it as a gap. A series the charge has no source for is null throughout — an EV-only charge has no charge_power_w, and a wallbox-only charge has no battery_level_pct.

session_id
string
required
window_start
string<date-time>
required

Start of the served window, on a 15-minute boundary. The window pads the charge on each side by the larger of one hour and the distance to the nearest EV datapoint outside the charge, so the state before plug-in and after unplug is visible.

window_end
string<date-time>
required
session_start
string<date-time>
required

Start of the charge itself: plug-in, widened by any wallbox episode of the same charge.

session_end
string<date-time>
required
buckets
string<date-time>[]
required

Bucket start times, oldest first. The shared x axis.

battery_level_pct
(number | null)[]
required

Mean state of charge in the bucket, in percent.

ev_is_charging
(boolean | null)[]
required

True when the car reported charging at any point in the bucket. A pause shorter than the bucket is invisible here.

ev_is_plugged_in
(boolean | null)[]
required
wallbox_id
string<uuid> | null
required

The wallbox that steered the charge, or null when none did.

charge_power_w
(number | null)[]
required

Mean total power the wallbox delivered in the bucket.

wb_is_charging
(boolean | null)[]
required
price_eur_per_kwh
(number | null)[]
required

The organization's trading price over day-ahead, in EUR per kWh, for the step that covers the bucket. null where the prices do not cover the bucket.

inverters
InverterTimelineSeries · object[]
required

One entry per authenticated inverter of the owner, any count. Empty when they have none.

soc_anchors
SocAnchor · object[]
required

The two state-of-charge readings of a wallbox-steered charge. Empty for a charge with an EV of its own, whose battery_level_pct trajectory says the same thing better.

bucket_minutes
integer
default:15

Width of every bucket. The cadence of the collected prices.