The ultimate guide to EV charger APIs
Before we dive into the world of EV charger APIs, let us take one step back.
In a sustainable world full of EVs the EV charger is at the core of making things work. Every morning you expect your car to be fully charged, and the EV charger will make it happen. Pretty neat!
But there is more to these EV chargers than meets the eye. Over the last years EV chargers, wallboxes, wall connectors, or what you want to call them, have for the most part gotten smarter. They are responsible not only for charging your car, but also for balancing the grid via demand response and increasing the use of renewable energy.
In this article, we will go through how you can get data from and send charging commands to these EV chargers. All to enable key EV and energy use cases like smart charging, load balancing, and demand response. This is all
More specifically we will cover:
- What is an EV charger API?
- All the data you get with an EV charger API
- The best use cases to build on top of an EV charger API
- EV charger OEMs with available APIs
- How can I access these EV charger APIs for my app
- Next steps on your EV charger API journey
What is an EV charger API?
An Application Programming Interface (API) is simply code that lets computers talk to each other. An EV charger API, which talks to other systems and apps, is built for two things:
- Send and receive data
- Receive charging commands to start or stop charging
To start with data, this is something that your EV charger continuously produces and shares via its API. Data like charge rate, if a car is plugged in or not, temperature, and other stats can all be collected from the device over a 4G or Wifi connection.
The EV charger is made with one main purpose, to charge electric vehicles. Naturally, these EV APIs are therefore able to start and stop the charging directly via a cloud connection. If you have ever stopped your Wallbox charger in the Wallbox app, you have used the Wallbox API. The API works in the background to make everything work, from the moment you push the button in the app to when the physical charger stops sending electrons to your car.
All the data you get with an EV charger API
Even though this varies from charger to charger and API to API, let us go through some of the data you can expect to have access to.
For most EV charger APIs you get some information on brand, model and production year. Some brands also offer information on maximum charge rate and standard voltage that might come in handy in more technical applications.
Location data is usually also displayed as a data point, either as a user-provider home address or GPS position. This can be useful in cases where you want to match the EV charger API data with other energy hardware data from the same home.
Start and stop charging commands
Most importantly of all API features is the start and stop charging commands. This allows for use cases like smart charing and schedules charging. Stopping charging for thousands of EV chargers at grid peaks can also help balance the grid and make room for more renewable energy. As most EV chargers are high-performing IoT devices they can be controlled down to millisecond precision. This enables them to also help with frequency imbalances in the grid as part of a larger virtual power plant.
The EV charger APIs all report the real-time charge rate for connected cars. Some of the more advanced APIs can also regulate the charge rate in real-time. Adjusting the charge rate from 10 kW til 2kW can amongst other use cases enable load balancing in your house. As you approach max load for the main fuse, the EV charger can automatically adjust the charge to accommodate for other loads in the house.
The best use cases to build on top of an EV charger API
The wave of connected EV chargers coming into the market now is enabling a broad set of use cases, both for businesses and residential EV owners. All of this can also be done via the direct-to-EV APIs, but for unsupported vehicle brands connecting to the charger makes it all possible.
Let us go through some of the key use cases enabled by EV charger APIs!
Smart EV charging is the most popular use cases and a real win-win-win. Let me explain!
By automatically charging the EV when prices are low or when renewable energy is available (these events often occur at the same time⚡️) both the consumer, the grid and the environment wins. The EV charger API allows for start and stop commands to be set in the charger, which can be matched to a price signal. You can create this use case in your own app with our out-of-the-box Smart Charging endpoint.
EV owners love data. Especially data on their energy consumption for their EV. Giving users historical charging statistics is therefore the second most popular use case to build on top of EV charger API.
For most households, adding an EV charger dramatically increases the peak energy load. Some need to add a new fuse to their electrical cabinet and others need to change even the main fuse. One thing that can mitigate this hardware cost is software-based load balancing. As the house is approaching the max main fuse load, the EV charger API can dynamically adjust the charge rate to accommodate. Much smarter than investing a lot in hardware that is not used 90% of the time.
We touched on this earlier, but demand response is of course one of the key use cases for EV chargers. Aggregated together with thousands of other chargers, the total load can easily reach megawatts. This combined pool of EV chargers, often referred to as a virtual power plant can then be offered into the local demand response market as a flexible load.
The value created can then be distributed across all stakeholders, from the TSO down to the individual EV owner who will get paid for smart charging their EV. All are enabled by the EV charger API or direct-to-EV APIs.
Public EV charging and fleet management and...
We could go on and on here, for there are so many use cases enabled by EV data. Better public charging experiences and control of EV fleets via the chargers are two that are also top-of-mind for many in the e-mobility space.
If you have other use cases you want to support with EV charger APIs - please let us know! We are EV enthusiasts, just like yourself.
EV charger OEMs with available APIs
There is a wide spectrum of EV charger APIs, from the most sophisticated to the non-existent. Some EV charger OEMs, like Easee, are leading the way with their advanced API capabilities, while others still producing dumb chargers without an internet connection.
Having worked with EV charger APIs for several years now, we know what good looks like. See below for a summary of the capabilities of the most well-known EV charger brands (more to come).
The Wallbox API works well for basic use cases like scheduled charging. The data is shared in a structured and reliable way, making it easy to build use cases on top of it. The downside is a lack of charge rate control, which hopefully will be added in the future.
EO has an API built specifically for their EV charging app, with the benefit that it sends data frequently. All the basic information and controls are here, including charge rate adjustments.
Easee has the most advanced API we have worked with. Built from the ground up with demand response and load balancing in mind, this charging API lets you control all aspects of the device. We also appreciate data like device type being included, making onboarding easier for end-users.
The Zaptex API has improved a lot over the last year, and is almost on par with Easee. The missing feature is still charge rate control, something we hope will be added in the future. With the new Zaptec charger, there is built-in scheduling also, making that use case a breeze to add support for.
The Chargepoint API is very similar to that of Wallbox. Some great features, but room for improvements. The API responds fast to requests, which makes it ideal for frequency response use cases.
How can I access these EV charger APIs for my app
The great thing with all these EV charger APIs is that you can build valuable use cases for your users. Whether that be smart charging, demand response or energy management, all the APIs’ functionality can be added to your app pretty easily.
There are a few ways to go about it, so let’s go through them.
At Enode we have created an easy-to API that integrates with most EV chargers out there. That way you don’t need to integrate all of them and normalize data yourself. We also offer some advanced out-of-the-box modules that you can easily build into your app, like smart EV charging, scheduling, and charging statistics. EV chargers are also an in important Distributed Energy Resource (DER), which will be key to a sustainable future.
Some EV chargers also support the Open Charge Point Protocol (OCPP). This allows for connection to the EV charger via a separate protocol to the APIs. The data and controls are still the same, and the user experience is not always as good. But for setting up the charger the first time, OCPP can be a good way to own the customer relationship as it lets you be the operator of the EV charger.
Build integrations yourself
You can also build integrations to all of the EV APIs yourself. Not something we recommend, but we are of course biased 😅 Let us know if you want to go for it, and we can provide some pointers.
Next steps on your electric vehicle charger API journey
If you have made it all the way here you should have a good overview of EV charger APIs. Hopefully we have sparked some ideas for what you can build for your users based on this set of data and controls.
If you want to take it further and learn more, we suggest the following resources:
- Our EV charger API, to see all the data and controls we have available
- Learn about OCPP from the alliance themselves
- Learn more about EV Charging use cases
- Learn about EV APIs where you connect directly to the car