Charging Policies (beta)
No OAuth-enabled endpoints in this section. Turn off the OAuth filter in the sidebar to see all of its endpoints.
A charging policy holds the price of a charging session and the rules that decide who is allowed to charge at that price.
How the pieces fit together
- A policy carries one or more tariff rules. Each rule holds a tariff configuration (the price components) and, optionally, the customer groups it applies to. A rule with an empty
customerGroupIdsapplies to every token presented. - A policy is applied to connectors by associating it with one or more charging groups through
associatedChargingGroupIds. A charging group selects connectors individually, or by the locations or accounts they belong to. A provider policy with an emptyassociatedChargingGroupIdsapplies to every charging station instead; a provider can have only one such policy, and account-owned policies (/mine) never apply this way. - When a token is presented at a connector, the platform collects the charging groups that contain that connector and evaluates the policies associated with them. Within a policy, tariff rules are evaluated in the order they were supplied. The first rule that matches the token both authorises the session and prices it.
- To give one card a different price (a negotiated rate, or free charging), put that card in a customer group and add a rule naming that group above the open rule in the same policy. The card matches the first rule and gets its price; every other card falls through to the open one. Keep both prices in one policy rather than splitting them across policies on overlapping charging groups, because the order in which separate policies are evaluated is not part of this contract.
This API is in preview. It is functional and safe to build against, but breaking changes may still occur; any breaking change is announced in advance.
Create My Charging Policy
Creates a charging policy owned by the current account.
User sessionAPI credentialcharging-policies:writeRequest bodyapplication/json
applyToobject
ACDCconnectorsobject[]
1max 42949672951max 4294967295accountconnectorTypeconnectorslocationstationsassociationsobject[]
1max 42949672951max 4294967295sessionLimitsobject
tariffRulesobject[]
tariffConfigurationobjectREQUIRED
configurationobjectREQUIRED
marketEnergyPricingobject
AUTBELDEUFRANLD201Created application/json
dataobject
metaobject
400Invalid Request application/json
errorobject
401Unauthorized application/json
errorobject
403Forbidden: missing a required permission, or no access to this resource application/json
errorobject
404Not Found application/json
errorobject
409A connector targeted by this policy is already covered by another charging policy. error.details carries the conflicting chargingStationId, evseId and connectorId, plus chargingPolicyId and chargingPolicyLabel when the covering policy belongs to the current provider. application/json
errorobject
500Internal server error application/json
errorobject
Search My Charging Policies
Returns a paginated list of charging policies owned by the current account.
User sessionAPI credentialcharging-policies:readQuery parameters1
Request bodyapplication/json
createdAtany | any
50min 10min 0200Charging Policies application/json
dataPopulatedChargingPolicy[]
Charging groups the policy applies to. Empty on a provider policy means it applies to every charging station of the provider; empty on an account-owned policy means it targets connectors only (see associatedConnectors).
associatedChargingGroupsChargingGroup[]
filtersChargingGroupFilter[]REQUIREDThe connectors this group covers. A connector matches if any filter selects it.
The connectors this group covers. A connector matches if any filter selects it.
associatedConnectorsChargingPolicyConnectorAssociation[]
sessionLimitsSessionLimits
tariffRulesPopulatedTariffRule[]REQUIRED
Customer groups the rule is restricted to. Empty means the rule applies to every token.
customerGroupsEmbeddedCustomerGroup[]
A token belongs to the group if it matches any one of these filters.
Restricts the rule to sessions paid for in these ways. Empty means the rule accepts any payment method.
Where this rule's price is advertised: roaming on roaming networks, csui on the charging station's own screen.
tariffConfigurationTariffConfiguration
The tariff (price) this rule applies.
validityPeriodobject
metaobject
400Invalid Request application/json
errorobject
401Unauthorized application/json
errorobject
403Forbidden: missing a required permission, or no access to this resource application/json
errorobject
404Not Found application/json
errorobject
500Internal server error application/json
errorobject
Get My Charging Policy
Returns a single charging policy owned by the current account.
User sessionAPI credentialcharging-policies:readPath parameters1
Query parameters1
200Charging Policy application/json
dataPopulatedChargingPolicy
Charging groups the policy applies to. Empty on a provider policy means it applies to every charging station of the provider; empty on an account-owned policy means it targets connectors only (see associatedConnectors).
associatedChargingGroupsChargingGroup[]
filtersChargingGroupFilter[]REQUIREDThe connectors this group covers. A connector matches if any filter selects it.
The connectors this group covers. A connector matches if any filter selects it.
associatedConnectorsChargingPolicyConnectorAssociation[]
sessionLimitsSessionLimits
tariffRulesPopulatedTariffRule[]REQUIRED
Customer groups the rule is restricted to. Empty means the rule applies to every token.
customerGroupsEmbeddedCustomerGroup[]
A token belongs to the group if it matches any one of these filters.
Restricts the rule to sessions paid for in these ways. Empty means the rule accepts any payment method.
Where this rule's price is advertised: roaming on roaming networks, csui on the charging station's own screen.
tariffConfigurationTariffConfiguration
The tariff (price) this rule applies.
validityPeriodobject
metaobject
400Invalid Request application/json
errorobject
401Unauthorized application/json
errorobject
403Forbidden: missing a required permission, or no access to this resource application/json
errorobject
404Not Found application/json
errorobject
500Internal server error application/json
errorobject
Update My Charging Policy
Replaces a charging policy owned by the current account.
User sessionAPI credentialcharging-policies:writePath parameters1
Request bodyapplication/json
applyToobject
ACDCconnectorsobject[]
1max 42949672951max 4294967295accountconnectorTypeconnectorslocationstationsassociationsobject[]
1max 42949672951max 4294967295sessionLimitsobject
tariffRulesobject[]
tariffConfigurationobjectREQUIRED
configurationobjectREQUIRED
marketEnergyPricingobject
AUTBELDEUFRANLD204Updated text/plain
400Invalid Request application/json
errorobject
401Unauthorized application/json
errorobject
403Forbidden: missing a required permission, or no access to this resource application/json
errorobject
404Not Found application/json
errorobject
409A connector targeted by this policy is already covered by another charging policy. error.details carries the conflicting chargingStationId, evseId and connectorId, plus chargingPolicyId and chargingPolicyLabel when the covering policy belongs to the current provider. application/json
errorobject
500Internal server error application/json
errorobject
Delete My Charging Policy
Deletes a charging policy owned by the current account.
User sessionAPI credentialcharging-policies:write