Skip to content

ev.energy v2 API (2.0)

The official API for ev.energy, version 2.

Download OpenAPI description
Overview
Languages
Servers
Mock server
https://developers.ev.energy/_mock/ev.energy-api-v2
Live API for both production and sandbox requests.
https://api.ev.energy/v2
Staging server for internal testing only.
https://api-staging.ev.energy/v2

Carbon

Endpoints for interacting with carbon intensity data.

Schemas
Operations

Charging Sessions

Endpoints related to records of charging.

Schemas
Operations
Webhooks

CSV

Endpoints that return CSV responses only and are not linkable to other endpoint data.

EVSEs

Endpoints for interacting with EVSEs.

Schemas
Operations

Notifications

Endpoints for communicating notifications.

Operations

Programs

Endpoints related to incentivised charging programs.

Operations

Rebates

Endpoints for interacting with rebates.

Schemas
Operations

Root

The root endpoint which lists all the top-level collections.

Operations

Schedules

Schema definitions for charging schedules.

Schemas

Sites

Endpoints for interacting with sites containing multiple EVSEs.

Operations

Solar

Endpoints for interacting with solar arrays and inverters.

Operations

Subscriptions

Endpoints for interacting with user subscriptions.

Operations

Support Tickets

Endpoints for interacting with customer support tickets.

Schemas
Operations

Tariffs

Endpoints related to energy suppliers and their tariffs.

Schemas
Operations

Users

Endpoints for interacting with users.

Schemas
Operations

Vehicles

Endpoints for interacting with vehicles.

Schemas

VehicleMake

A resource representing a vehicle manufacturer.

idstringvmak[A-Z\d]{26}read-only

Unique identifier for the given Vehicle Make.

Example: "vmak01HRFHBCM7VBSWRPVYFBQMH2BR"
urlstring(uri)read-only
Example: "https://api.ev.energy/v2/vehicle_makes/vmak01HRFHBCM7VBSWRPVYFBQMH2BR"
namestringread-only
Example: "Volvo"
iconstring or null(uri)read-only

A url for an image of the make's logo.

Example: "https://cdn.example.com/volvo.png"
onboarding_urlstring or nullread-only

A pre-constructed link to initiate onboarding for a vehicle of this make. If it is null, then it cannot be onboarded with make alone. You should filter the list of vehicle models by this make and then have the user select their model.

Note: if you are using client credentials authentication, the user ID will not be automatically included unless you set the EvEnergy-User header on your request.

Example: "https://api.ev.energy/v2/vehicle_onboarding/?make_id=vmak01HN2P75GBNFRJPCZJXEFVXH5E&user_id=user01HN2NJ9NMRZBXT1H6FT9N7735"
modelsstring(uri)read-only

A pre-constructed link to a list of vehicle models filtered for this make.

Example: "https://api.ev.energy/vehicle_models?make_id=vmak01HN2P75GBNFRJPCZJXEFVXH5E"
{ "id": "vmak01HRFHBCM7VBSWRPVYFBQMH2BR", "url": "https://api.ev.energy/v2/vehicle_makes/vmak01HRFHBCM7VBSWRPVYFBQMH2BR", "name": "Volvo", "icon": "https://cdn.example.com/volvo.png", "onboarding_url": "https://api.ev.energy/v2/vehicle_onboarding/?make_id=vmak01HN2P75GBNFRJPCZJXEFVXH5E&user_id=user01HN2NJ9NMRZBXT1H6FT9N7735", "models": "https://api.ev.energy/vehicle_models?make_id=vmak01HN2P75GBNFRJPCZJXEFVXH5E" }

VehicleStatusLog

Records the state of a Vehicle at a particular point in time.

urlstring(uri)read-only
Example: "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H/status_logs/2024-01-01T11:11:11.1111Z/"
logged_atstring(date-time)read-only

The date and time this status information was received and stored.

sampled_atstring(date-time)

The date and time when this data was recorded. Likely to be earlier than logged_at, but how much earlier depends on the integration and other factors.

vehiclestring or Vehicle (object)
One of:
string(uri)
state_of_charge_percentageinteger or nullread-only

How full the vehicle's battery is, as a percentage. Will be null if we are unable to get this information from the vehicle's telematics.

Example: 70
is_chargingboolean or nullread-only

Is the vehicle currently receiving charge? Will be null if we are unable to get this information from the vehicle's telematics.

Default false
is_plugged_inboolean or nullread-only

Is the vehicle currently connected to an EVSE? Will be null if we are unable to get this information from the vehicle's telematics.

Default false
charge_rate_wattsinteger or null

The current rate of charge being received, in watts. Will be null if we are unable to get this information from the Vehicle integration.

{ "url": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H/status_logs/2024-01-01T11:11:11.1111Z/", "logged_at": "2019-08-24T14:15:22Z", "sampled_at": "2019-08-24T14:15:22Z", "vehicle": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "state_of_charge_percentage": 70, "is_charging": false, "is_plugged_in": false, "charge_rate_watts": 0 }

VehicleAPIErrorLog

Records an error that occurred when attempting to communicate with a vehicle's telematics API.

urlstring(uri)read-only
Example: "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H/error_logs/2024-04-17T09:39:45.984584Z/"
logged_atstring(date-time)read-only

The date and time when this error was logged by the ev.energy system.

vehiclestring or Vehicle (object)
One of:
string(uri)
status_codeintegerread-only

The HTTP status code of the error response from the vehicle telematics API.

Example: 401
controllerstringread-only

The vehicle controller/integration that was being used when the error occurred.

Example: "ENODE"
error_codestringread-only

The error code received from the provider or determined by the ev.energy system.

Example: "AUTHENTICATION_ERROR"
error_typestringread-only

The error type received from the provider or determined by the ev.energy system.

Example: "VehicleAPIUnauthorized"
request_idstringread-only

The request ID that resulted in this error. Used for tracing and debugging.

Example: "56rst-z2jku-tty9t-0dn2f-qazow"
commandstringread-only

The command/method that was being executed when the error occurred.

Example: "START_CHARGE"
error_detailstringread-only

Detailed information about the error.

internal_command_idstring or null(uuid)read-only

Internal UUID to track the command dispatch. This can be used to correlate errors with commands.

Example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
{ "url": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H/error_logs/2024-04-17T09:39:45.984584Z/", "logged_at": "2019-08-24T14:15:22Z", "vehicle": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "status_code": 401, "controller": "ENODE", "error_code": "AUTHENTICATION_ERROR", "error_type": "VehicleAPIUnauthorized", "request_id": "56rst-z2jku-tty9t-0dn2f-qazow", "command": "START_CHARGE", "error_detail": "string", "internal_command_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890" }

Webhooks

Endpoints for configuring and managing webhooks.

Operations