Die kostenlose API — für Home Assistant, eigene Skripte oder jede Wallbox.
Kilonaut hat eine schlanke REST-API, mit der du Ladevorgänge und Kilometerstände programmatisch sendest. Sie ist dauerhaft kostenlos und braucht nur einen persönlichen Token, den du in den Einstellungen unter „API & Home Assistant" erzeugst.
Basis-URL & Authentifizierung
Alle Endpunkte liegen unter der Basis-URL und erwarten den Token als Bearer-Header. Requests und Responses sind JSON.
Base URL: https://kilonaut.de/api/v1
Authorization: Bearer <dein-token>
Content-Type: application/json
Endpunkte
/api/v1/ping
Testet den Token und gibt den zugehörigen Account zurück. Ideal zum Prüfen der Verbindung.
{
"ok": true,
"user": { "email": "you@example.com", "plan": "free" },
"active_vehicle": "ID.4",
"server_time": "2026-07-21T12:00:00+00:00"
}
/api/v1/sessions
Gibt die letzten 50 Ladevorgänge des Accounts zurück.
{
"data": [
{
"id": 42, "started_at": "2026-07-20T18:00:00+00:00",
"ended_at": "2026-07-20T20:30:00+00:00", "energy_kwh": 28,
"cost_cents": 840, "currency": "EUR", "location_type": "home",
"charge_type": "ac", "status": "confirmed", "source": "api"
}
]
}
/api/v1/sessions
Legt einen Ladevorgang an. Heimladungen ohne Kosten werden automatisch mit deinem Tarif bepreist. Der Response ist created, merged oder duplicate.
{
"status": "created",
"session": { "id": 161, "energy_kwh": 28, "cost_cents": 840, "status": "unconfirmed", "source": "api" }
}
/api/v1/odometer
Legt einen Kilometerstand an. Idempotent je Fahrzeug + Stand + Tag.
{
"status": "created",
"reading": { "id": 12, "reading_km": 42500, "recorded_at": "2026-07-21T10:00:00+00:00" }
}
/api/v1/charging/status
Live-„lädt gerade"-Heartbeat für die Dashboard-Kachel. Der eigentliche Ladevorgang kommt weiterhin über /sessions am Ladeende.
{
"ok": true,
"charging": true,
"state": { "energy_kwh": 12, "power_kw": 11, "location_type": "home" }
}
curl -X POST https://kilonaut.de/api/v1/sessions \
-H "Authorization: Bearer <dein-token>" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: my-charge-2026-07-20-1800" \
-d '{
"started_at": "2026-07-20T18:00:00+02:00",
"ended_at": "2026-07-20T20:30:00+02:00",
"energy_kwh": 28.0,
"location_type": "home",
"charge_type": "ac"
}'
Idempotenz & Rate-Limit
Sende bei POST /sessions einen Header „Idempotency-Key" (oder ein externes „external_id"), damit ein Retry dieselbe Ladung zusammenführt statt zu duplizieren. Das Limit liegt großzügig bei 60 Requests pro Minute je Token.
Für Home Assistant musst du nichts davon selbst schreiben — es gibt ein fertiges Paket. Siehe das Kapitel Home Assistant.
Schau in die häufigen Fragen oder melde dich über das Impressum.