Real Time Session Power Management

for smart charging applications



If your smart charging application wants to manage the power available to the EV during a session, eDRV gives you a set of tools to do so easily in near real-time.

Your application can read the power and current on an ongoing session in near real-time (approximately 30 seconds) via session metrics, see Webhooks and Real Time Session Energy Reports. Your application can then act intelligently to vary the power and current delivered to the EV in the session via the sessions/{id}/set_limit API endpoint.

Use Cases

Some possible use cases for Session Power Management are:

  • Solar powered EV charging where the delivered power varies throughout the day due to weather
  • Battery assisted EV charging. If your application uses on site batteries, you may want to manage the delivered power to a bank of EVs depending on the battery state of charge
  • Utility Demand Response. If there is an upstream power congestion event, your application may want to manage the delivered power to chargestation(s) instantly.

Receiving Session Power Reports

You can receive the latest Power and Current delivered in a charging session as reported by the charging station via Webhook events. See Show Charging Metrics in Real Time

session.energy_report.power and session.energy_report.current report instantaneous power and current being consumed by the EV.

Set a Power Limit for a Session

Your application can alter the maximum power or current delivered to an EV within an ongoing Session. You can do this via the sessions/{id}/set_power_limit endpoint.

Example 1
The following example limits the power available to the EV to 75kW.

	unit: 'power',
	limit: 75000

Example 2
The following example limits the current available to the EV to 40 Amperes for the lifetime of this session.

	unit: 'current',
	limit: 40

Expected Response
A successful API call returns an Actions id as the result._id. Chargestation responses to this API call are delivered via Webhooks.

    "ok": true,
    "message": "",
    "result": {
        "_id": "630cc5a7b8d8867b16ca6f55",
        "type": "session.set_power_limit",
        "status": "requested",
        "chargestation": "630cbe24c459e97b158e8c23",
        "data": {
            "unit": "current",
            "limit": 40
        "connector": "630cbe25b8d8867b16c9d0b2",
        "createdAt": "2022-08-29T13:56:55.140Z",
        "updatedAt": "2022-08-29T13:56:55.140Z"


EV Response to a sessions/{id}/set_power_limit command

The chargestation responds to a sessions/{id}/set_power_limit command by changing the maximum current/power available to the EV. The EV's onboard charging controller will take this new limit into account and adjust accordingly. The response time to a new command varies by EV OEM.

Clear Power Limits for a Session

If your application wants to remove the power / current limit (that you may have set previously) on a session, you can do so via the sessions/{id}/clear_power_limit endpoint.

Expected Response

    "ok": true,
    "message": "",
    "result": {
        "_id": "630cc4efb8d8867b16ca693b",
        "type": "session.clear_power_limit",
        "status": "requested",
        "chargestation": "601d3fbd50189514b894676e",
        "data": {},
        "connector": "601d3fbd50189514b8946770",
        "createdAt": "2022-08-29T13:53:51.784Z",
        "updatedAt": "2022-08-29T13:53:51.784Z"


Clear Power Limit is only available on physical chargestations

eDRV Simulators currently only support set_power_limit with unit = current
You can of course use a physical chargestation to test both set_power_limit and clear_power_limit.


Your application should monitor the following Webhooks when using set_power_limit or clear_power_limit:

session.set_power_limit.requested or session.clear_power_limit.requested

A request has been sent to the chargestation

session.set_power_limit.completed or session.clear_power_limit.completed

The chargestation accepted the request and has begun processing it

session.set_power_limit.failed or session.clear_power_limit.failed

The chargestation rejected the request. See response data for any error details reported by the chargestation


Do you need help with Smart Charging?

Do reach out to the eDRV team via chat or email for help for your specific Smart Charging use case.