The official API for ev.energy, version 2.
ev.energy v2 API (2.0)
Note: daily_prices and type are only available under contract. Please reach out to your account manager to find out more.
Unique identifier for the given user.
The energy company that supplies this tariff.
The energy company that supplies this tariff.
The times returned here are localised to the timezone the tariff is in. The timezone is returned in timezone_name.
{ "id": "tari01HN2NJ9NMRZBXT1H6FT9N7735", "url": "https://api.ev.energy/v2/tariffs/tari01HN2NJ9NMRZBXT1H6FT9N7735", "supplier": "https://api.ev.energy/v2/suppliers/supl01HN2NJ9NMRZBXT1H6FT9N7735", "name": "Fangorn Biomass", "currency": "GBP", "daily_prices": { "peak": { … }, "mid_peak": { … }, "off_peak": { … } } }
Note: daily_prices and type are only available under contract. Please reach out to your account manager to find out more.
The price of the tariff at the current time, given in the smallest unit of the currency of the tariff. For example, 10 means 10 pence.
Link to prices endpoint by default. When expanded with ?expand=prices, returns the past 24 hours of prices. Requires tariff:prices:read scope.
Link to prices endpoint by default. When expanded with ?expand=prices, returns the past 24 hours of prices. Requires tariff:prices:read scope.
Unique identifier for the given user.
The energy company that supplies this tariff.
The energy company that supplies this tariff.
The times returned here are localised to the timezone the tariff is in. The timezone is returned in timezone_name.
{ "id": "tari01HN2NJ9NMRZBXT1H6FT9N7735", "url": "https://api.ev.energy/v2/tariffs/tari01HN2NJ9NMRZBXT1H6FT9N7735", "supplier": "https://api.ev.energy/v2/suppliers/supl01HN2NJ9NMRZBXT1H6FT9N7735", "name": "Fangorn Biomass", "currency": "GBP", "daily_prices": { "peak": { … }, "mid_peak": { … }, "off_peak": { … } }, "current_price": 10, "prices": "https://api.ev.energy/v2/tariffs/tari01HN2NJ9NMRZBXT1H6FT9N7735/prices" }
An energy company who supplies electricity tariffs.
Unique identifier for the given user.
{ "id": "supl01HN2NJ9NMRZBXT1H6FT9N7735", "url": "https://api.ev.energy/v2/suppliers/supl01HN2NJ9NMRZBXT1H6FT9N7735", "name": "Rivendell Renewables", "icon": "https://cdn.example.com/rivendell_renewables.jpg", "highlighted": true }
Information about the tariff's prices for different parts of the day.
A single price for a certain time range.
{ "peak": { "price": "0.10", "times": [ … ] }, "mid_peak": { "price": "0.10", "times": [ … ] }, "off_peak": { "price": "0.10", "times": [ … ] } }
A price for a specific time interval.
When this price interval began (ISO 8601 datetime).
The duration of this price interval in seconds.
{ "started_at": "2024-01-15T10:00:00Z", "interval_seconds": 1800, "price_minor_units": 10 }
Request
List all the energy suppliers known by the ev.energy system.
Use the available_for_user_id query parameter to narrow the list to only those relevant to a specific user.
- Mock serverhttps://developers.ev.energy/_mock/ev.energy-api-v2/suppliers
- Live API for both production and sandbox requests.https://api.ev.energy/v2/suppliers
- Staging server for internal testing only.https://api-staging.ev.energy/v2/suppliers
- 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/suppliers?page=2&page_size=10&available_for_user_id=user01HN2NJ9NMRZBXT1H6FT9N7735' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'EvEnergy-Version: 2'Return a list of Suppliers.
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 user.
[ { "id": "supl01HN2NJ9NMRZBXT1H6FT9N7735", "url": "https://api.ev.energy/v2/suppliers/supl01HN2NJ9NMRZBXT1H6FT9N7735", "name": "Rivendell Renewables", "icon": "https://cdn.example.com/rivendell_renewables.jpg", "highlighted": true } ]
- Mock serverhttps://developers.ev.energy/_mock/ev.energy-api-v2/suppliers/{supplier_id}
- Live API for both production and sandbox requests.https://api.ev.energy/v2/suppliers/{supplier_id}
- Staging server for internal testing only.https://api-staging.ev.energy/v2/suppliers/{supplier_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/suppliers/supl01HN2NJ9NMRZBXT1H6FT9N7735 \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'EvEnergy-Version: 2'Return a single supplier.
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 user.
{ "id": "supl01HN2NJ9NMRZBXT1H6FT9N7735", "url": "https://api.ev.energy/v2/suppliers/supl01HN2NJ9NMRZBXT1H6FT9N7735", "name": "Rivendell Renewables", "icon": "https://cdn.example.com/rivendell_renewables.jpg", "highlighted": true }
Request
List all the energy supplier tariffs known by the ev.energy system.
Use the available_for_user_id query parameter to narrow the list to only those relevant to a specific user and supplier query parameter to list only tariffs for a specific supplier.
Specify the number of results to return per page.
Specify a url field to expand into a nested resource. The prices expansion requires tariff:prices:read scope.
Filter to only return resources available in the user's region and program.
- Mock serverhttps://developers.ev.energy/_mock/ev.energy-api-v2/tariffs
- Live API for both production and sandbox requests.https://api.ev.energy/v2/tariffs
- Staging server for internal testing only.https://api-staging.ev.energy/v2/tariffs
- 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/tariffs?page=2&page_size=10&expand=supplier&supplier_id=string&available_for_user_id=user01HN2NJ9NMRZBXT1H6FT9N7735&include_optional=daily_prices' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'EvEnergy-Version: 2'Return a list of Tariffs.
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 user.
The energy company that supplies this tariff.
The energy company that supplies this tariff.
The times returned here are localised to the timezone the tariff is in. The timezone is returned in timezone_name.
The url of a website which can display a chart of prices for the tariff. This website is an external resource and is not affiliated with ev.energy.
[ { "id": "tari01HN2NJ9NMRZBXT1H6FT9N7735", "url": "https://api.ev.energy/v2/tariffs/tari01HN2NJ9NMRZBXT1H6FT9N7735", "supplier": "https://api.ev.energy/v2/suppliers/supl01HN2NJ9NMRZBXT1H6FT9N7735", "name": "Fangorn Biomass", "currency": "GBP", "daily_prices": { … } } ]
- Mock serverhttps://developers.ev.energy/_mock/ev.energy-api-v2/tariffs/{tariff_id}
- Live API for both production and sandbox requests.https://api.ev.energy/v2/tariffs/{tariff_id}
- Staging server for internal testing only.https://api-staging.ev.energy/v2/tariffs/{tariff_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/tariffs/tari01HN2NJ9NMRZBXT1H6FT9N7735?expand=supplier&available_for_user_id=user01HN2NJ9NMRZBXT1H6FT9N7735' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'EvEnergy-Version: 2'Return a single Tariff.
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.
The price of the tariff at the current time, given in the smallest unit of the currency of the tariff. For example, 10 means 10 pence.
Link to prices endpoint by default. When expanded with ?expand=prices, returns the past 24 hours of prices. Requires tariff:prices:read scope.
Link to prices endpoint by default. When expanded with ?expand=prices, returns the past 24 hours of prices. Requires tariff:prices:read scope.
Unique identifier for the given user.
The energy company that supplies this tariff.
The energy company that supplies this tariff.
The times returned here are localised to the timezone the tariff is in. The timezone is returned in timezone_name.
{ "id": "tari01HN2NJ9NMRZBXT1H6FT9N7735", "url": "https://api.ev.energy/v2/tariffs/tari01HN2NJ9NMRZBXT1H6FT9N7735", "supplier": "https://api.ev.energy/v2/suppliers/supl01HN2NJ9NMRZBXT1H6FT9N7735", "name": "Fangorn Biomass", "currency": "GBP", "daily_prices": { "peak": { … }, "mid_peak": { … }, "off_peak": { … } }, "current_price": 10, "prices": "https://api.ev.energy/v2/tariffs/tari01HN2NJ9NMRZBXT1H6FT9N7735/prices" }
Request
Returns all prices for the specified tariff. Results are ordered by start time (most recent first).
Use started_at__gte and started_at__lte to filter by time range.
- Mock serverhttps://developers.ev.energy/_mock/ev.energy-api-v2/tariffs/{tariff_id}/prices
- Live API for both production and sandbox requests.https://api.ev.energy/v2/tariffs/{tariff_id}/prices
- Staging server for internal testing only.https://api-staging.ev.energy/v2/tariffs/{tariff_id}/prices
- 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/tariffs/tari01HN2NJ9NMRZBXT1H6FT9N7735/prices?started_at__gte=2024-01-15T10%3A00%3A00Z&started_at__lte=2024-01-15T10%3A00%3A00Z&page=2&page_size=10' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'EvEnergy-Version: 2'Returns a paginated list of prices for the specified tariff.
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.
When this price interval began (ISO 8601 datetime).
The duration of this price interval in seconds.
The price in minor currency units (e.g., pence for GBP).
[ { "started_at": "2024-01-15T10:00:00Z", "interval_seconds": 1800, "price_minor_units": 10 } ]