Four questions asked of an account that answers twenty-one

The connector called ten endpoints of the read surface the map lists, and
the charger card showed four views. Everything else an EV charger can
reach is now a capability too: the sessions and the history, the savings,
the sharing, the binding, the group, the Wi-Fi, the firmware and its
update log, the tamper records, the site's own detail, price, networks
and energy — plus the vehicle catalogue, dynamic pricing, the currencies
and the notification views. Thirty-eight endpoints, one action each. The
two message views are GET, so the request path grew a GET half that shares
the login retry with the POST one.

The per-charger fan-out asks all of them, six at a time rather than one
after another, and a charger that belongs to a site brings that site's
four views with it once the by-serial lookup has found it. A view that
answers with nothing now says so instead of vanishing: the station record
is empty for a standalone charger because it has no station, which is an
answer worth reading. And "source 0" in the OCPP box carries the address
the account's endpoint list gives it.

Anker's account-level writes stay out, as do the endpoints whose payloads
were only ever read out of the app package.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
tajniak81
2026-09-02 22:53:36 +02:00
co-authored by Claude Opus 5
parent fb42791f8d
commit 3f9d5b943f
15 changed files with 839 additions and 70 deletions
+4 -3
View File
@@ -328,9 +328,10 @@ export const api = {
// with an empty list and a reason when a gate is off, so the caller can show
// the reason rather than an error.
listAnkerChargers: () => request("/integrations/anker-solix/chargers"),
// Every per-charger view the account holds — the station record, the charging
// totals, the OCPP backend and the RFID cards — asked for one charger at a
// time, because none of those endpoints lists chargers.
// Every view the account holds about one charger — the station record, the
// totals, the history, the sessions, the OCPP backend, the cards, the sharing,
// the firmware and the rest, plus its site's views when it has a site — asked
// for one charger at a time, because none of those endpoints lists chargers.
getAnkerChargerDetails: (sn) =>
request(`/integrations/anker-solix/chargers/${encodeURIComponent(sn)}/details`),