Skip to content

API

Implemented HTTP Surface

Route Method Status Current behaviour
/vdv261/schemas GET 200 Returns the published schema identifiers: backend-config, backend-parameters, backend-response, credential, vehicle-config, vehicle-parameters, and vehicle-request.
/vdv261/schemas/{schema_name} GET 200, 404 Returns a Pydantic JSON schema for one of the documented models. Unknown names return 404.
/vdv261/v2icp/messages POST 200, 422 Validates V2ICPVehicleRequest. For delta messages (seq > 0), h2_stat and bat_stat are mandatory. The response echoes seq and vin and currently returns an empty BackendParameterSet.
/vdv261/v2icp/diagnostics POST 202 Accepts a DiagnosticEvent and acknowledges it. The current implementation does not persist diagnostics.
/vdv261/openapi.json GET 200 Returns the generated OpenAPI document for the VDV 261 router. This endpoint is used by the documentation generator and is hidden from the public schema.

Request And Response Notes

  • Request body model for /vdv261/v2icp/messages: V2ICPVehicleRequest.
  • Response body model for /vdv261/v2icp/messages: V2ICPBackendResponse.
  • Diagnostics body model: DiagnosticEvent.
  • Content type: JSON. The FastAPI app does not itself enforce TLS, VAS tunnelling, or Basic Authentication.
  • Reference artifacts: ./schema/openapi.json and VDV_261_API_Reference.md.

Protocol Expectations From VDV 261

  • The standard expects the EVCC to communicate over HTTPS via ISO 15118 VAS 3 InternetAccess.
  • The standard expects VIN-based HTTP Basic Authentication, with an optional password.
  • seq = 0 is the full-state synchronisation point; subsequent messages are delta updates until the counter rolls over.
  • Retry cadence, idle timeout handling, and reconnect timing are part of the protocol narrative, but they are not simulated by this FastAPI facade.