The official API for ev.energy, version 2.
- Create unintegrated vehicle
ev.energy v2 API (2.0)
- Mock serverhttps://developers.ev.energy/_mock/ev.energy-api-v2/vehicles
- Live API for both production and sandbox requests.https://api.ev.energy/v2/vehicles
- Staging server for internal testing only.https://api-staging.ev.energy/v2/vehicles
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://developers.ev.energy/_mock/ev.energy-api-v2/vehicles?page_before=xmpl01HNFZM7Q8FXASZXYZ6XM3TQRR&page_after=xmpl01HNFZM7Q8FXASZXYZ6XM3TQRR&page_size=10&expand=user' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'EvEnergy-Version: 2'Return a list of vehicles.
Provides links to the previous and next pages of data, if they exist.
Indicates the version of the API that generated this response. If EvEnergy-Version was not specified in the request, this will be your OAuth application's default version.
The maximum number of requests that can be made to this endpoint per hour. Defaults to 1000 but may vary per client.
The number of requests remaining until this client's rate limit is reached.
Unique identifier for the given Vehicle.
Defaults to a url, but can be expanded to the full Trim resource via the expand query parameter.
Defaults to a url, but can be expanded to the full Trim resource via the expand query parameter.
Defaults to a url, but can be expanded to the full User resource via the expand query parameter.
Defaults to a url, but can be expanded to the full User resource via the expand query parameter.
An expandable reference to the most recent status log for this Vehicle. This can be requested or expanded to get the most accurate information we have on the device's current status.
An expandable reference to the most recent status log for this Vehicle. This can be requested or expanded to get the most accurate information we have on the device's current status.
Provides a pre-constructed URL to list charging sub-sessions involving this Vehicle.
Whether we have an integration with this vehicle.
UNINTEGRATED: This vehicle is not integratedACTIVE: This vehicle is integrated and the connection is working.INACTIVE: This vehicle has been integrated but the connection has been severed, usually because the user needs to reconnect it.
The target state of charge of the car as a percentage between 50 and 100. The car will not be smart charged above this value. Can be null if target charge level has not been set or we don't know the car's battery size.
[ { "id": "vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "url": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "trim": "https://api.ev.energy/v2/trim/vehicle_trim01HRFHBCM7VBSWRPVYFBQMH2BR", "user": "https://api.ev.energy/v2/users/user01HN2NJ9NMRZBXT1H6FT9N7735", "latest_status_log": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H/status_logs/2024-04-17T09:39:45.994584Z/", "charging_sub_sessions": "https://api.ev.energy/charging_sub_sessions/?vehicle_id=vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "integrated": "UNINTEGRATED", "maximum_charge_limit_percentage": 100 } ]
Request
If a vehicle cannot be integrated with our system, an "unintegrated" vehicle must be created instead to represent it and record important details like battery size.
To add a vehicle that can be integrated, see the Onboarding documentation.
- Mock serverhttps://developers.ev.energy/_mock/ev.energy-api-v2/vehicles
- Live API for both production and sandbox requests.https://api.ev.energy/v2/vehicles
- Staging server for internal testing only.https://api-staging.ev.energy/v2/vehicles
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
'https://developers.ev.energy/_mock/ev.energy-api-v2/vehicles?expand=user' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-H 'EvEnergy-User: user01HN2NJ9NMRZBXT1H6FT9N7735' \
-H 'EvEnergy-Version: 2' \
-d '{
"trim": "https://api.ev.energy/v2/trim/vehicle_trim01HRFHBCM7VBSWRPVYFBQMH2BR",
"user": "https://api.ev.energy/v2/users/user01HN2NJ9NMRZBXT1H6FT9N7735"
}'Returns the newly created vehicle resource.
Indicates the version of the API that generated this response. If EvEnergy-Version was not specified in the request, this will be your OAuth application's default version.
The maximum number of requests that can be made to this endpoint per hour. Defaults to 1000 but may vary per client.
The number of requests remaining until this client's rate limit is reached.
Unique identifier for the given Vehicle.
Defaults to a url, but can be expanded to the full Trim resource via the expand query parameter.
Defaults to a url, but can be expanded to the full Trim resource via the expand query parameter.
Defaults to a url, but can be expanded to the full User resource via the expand query parameter.
Defaults to a url, but can be expanded to the full User resource via the expand query parameter.
An expandable reference to the most recent status log for this Vehicle. This can be requested or expanded to get the most accurate information we have on the device's current status.
An expandable reference to the most recent status log for this Vehicle. This can be requested or expanded to get the most accurate information we have on the device's current status.
Provides a pre-constructed URL to list charging sub-sessions involving this Vehicle.
Whether we have an integration with this vehicle.
UNINTEGRATED: This vehicle is not integratedACTIVE: This vehicle is integrated and the connection is working.INACTIVE: This vehicle has been integrated but the connection has been severed, usually because the user needs to reconnect it.
{ "id": "vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "url": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "trim": "https://api.ev.energy/v2/trim/vehicle_trim01HRFHBCM7VBSWRPVYFBQMH2BR", "user": "https://api.ev.energy/v2/users/user01HN2NJ9NMRZBXT1H6FT9N7735", "latest_status_log": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H/status_logs/2024-04-17T09:39:45.994584Z/", "charging_sub_sessions": "https://api.ev.energy/charging_sub_sessions/?vehicle_id=vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "integrated": "UNINTEGRATED", "maximum_charge_limit_percentage": 100 }
- Mock serverhttps://developers.ev.energy/_mock/ev.energy-api-v2/vehicles/{vehicle_id}
- Live API for both production and sandbox requests.https://api.ev.energy/v2/vehicles/{vehicle_id}
- Staging server for internal testing only.https://api-staging.ev.energy/v2/vehicles/{vehicle_id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://developers.ev.energy/_mock/ev.energy-api-v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H?expand=user' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'EvEnergy-Version: 2'Return a single vehicle.
Indicates the version of the API that generated this response. If EvEnergy-Version was not specified in the request, this will be your OAuth application's default version.
The maximum number of requests that can be made to this endpoint per hour. Defaults to 1000 but may vary per client.
The number of requests remaining until this client's rate limit is reached.
Unique identifier for the given Vehicle.
Defaults to a url, but can be expanded to the full Trim resource via the expand query parameter.
Defaults to a url, but can be expanded to the full Trim resource via the expand query parameter.
Defaults to a url, but can be expanded to the full User resource via the expand query parameter.
Defaults to a url, but can be expanded to the full User resource via the expand query parameter.
An expandable reference to the most recent status log for this Vehicle. This can be requested or expanded to get the most accurate information we have on the device's current status.
An expandable reference to the most recent status log for this Vehicle. This can be requested or expanded to get the most accurate information we have on the device's current status.
Provides a pre-constructed URL to list charging sub-sessions involving this Vehicle.
Whether we have an integration with this vehicle.
UNINTEGRATED: This vehicle is not integratedACTIVE: This vehicle is integrated and the connection is working.INACTIVE: This vehicle has been integrated but the connection has been severed, usually because the user needs to reconnect it.
{ "id": "vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "url": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "trim": "https://api.ev.energy/v2/trim/vehicle_trim01HRFHBCM7VBSWRPVYFBQMH2BR", "user": "https://api.ev.energy/v2/users/user01HN2NJ9NMRZBXT1H6FT9N7735", "latest_status_log": "https://api.ev.energy/v2/vehicles/vhcl01HRFF3SEVSCRAV9B3CHVDFN0H/status_logs/2024-04-17T09:39:45.994584Z/", "charging_sub_sessions": "https://api.ev.energy/charging_sub_sessions/?vehicle_id=vhcl01HRFF3SEVSCRAV9B3CHVDFN0H", "integrated": "UNINTEGRATED", "maximum_charge_limit_percentage": 100 }