API for EVerest API clients implementing occp / ocpp_data_transfer (consumer).
default local MQTT
The ID of the module as defined in the EVerest config file
Direction: EVerest to Module
Available only on servers:
Accepts the following message:
Request data transfer.
{
"headers": {
"replyTo": "string"
},
"payload": {
"vendor_id": "string",
"message_id": "string",
"data": "string",
"custom_data": {
"vendor_id": "string",
"data": "string"
}
}
}
Accepts the following message:
Reply to the request to transfer data
Type for data transfer response provided by OCPP
{
"status": "Accepted",
"data": "string",
"custom_data": {
"vendor_id": "string",
"data": "string"
}
}
Direction: Module to EVerest
Available only on servers:
Accepts the following message:
Request data transfer.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
},
"payload": {
"vendor_id": "string",
"message_id": "string",
"data": "string",
"custom_data": {
"vendor_id": "string",
"data": "string"
}
}
}
Accepts the following message:
Reply to the request to transfer data
Type for data transfer response provided by OCPP
{
"status": "Accepted",
"data": "string",
"custom_data": {
"vendor_id": "string",
"data": "string"
}
}
Direction: Module to EVerest
Available only on servers:
Accepts the following message:
Request the variables.
Reads variables using canonical component/variable addressing (e.g. component OCPPCommCtrlr, variable HeartbeatInterval), identical for OCPP 1.6 and 2.x. An empty component.name marks the deprecated OCPP 1.6 legacy key form (variable.name = configuration key); it is only accepted while OCPP 1.6 is active and will be removed per the deprecation policy. A non-empty component.name is never reinterpreted as a configuration key. Each result echoes the requested component_variable and carries a status.
See the OCPPmulti module documentation ("Configuration access" and "Migration from OCPP 1.6 key addressing") for examples and the migration guide.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
},
"payload": {
"items": [
{
"component_variable": {
"component": {
"name": "string",
"instance": "string",
"evse": {
"id": 1,
"connector_id": 1
}
},
"variable": {
"name": "string",
"instance": "string"
}
},
"attribute_type": "Actual"
}
]
}
}
Accepts the following message:
Reply to the request transmit the requested variables
List of GetVariableResult values
{
"items": [
{
"status": "Accepted",
"attribute_type": "Actual",
"value": "string",
"component_variable": {
"component": {
"name": "string",
"instance": "string",
"evse": {
"id": 1,
"connector_id": 1
}
},
"variable": {
"name": "string",
"instance": "string"
}
}
}
]
}
Direction: Module to EVerest
Available only on servers:
Accepts the following message:
Request setting the variables.
Writes variables using the same canonical component/variable addressing as get_variables, identical for OCPP 1.6 and 2.x; the empty-component OCPP 1.6 legacy key form is deprecated and scheduled for removal. Connection-configuration writes (component NetworkConfiguration with the profile slot number as component instance, and the OCPPCommCtrlr/NetworkConfigurationPriority selector) return RebootRequired: the value is validated and persisted immediately and takes effect on the next (re)connect or reboot.
See the OCPPmulti module documentation ("Configuration access" and "Migration from OCPP 1.6 key addressing") for examples and the migration guide.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
},
"payload": {
"variables": {
"items": [
{
"component_variable": {
"component": {
"name": "string",
"instance": "string",
"evse": {
"id": 1,
"connector_id": 1
}
},
"variable": {
"name": "string",
"instance": "string"
}
},
"value": "string",
"attribute_type": "Actual"
}
]
},
"source": "string"
}
}
Accepts the following message:
Reply to the request to set the variables
List of SetVariableResult values
{
"items": [
{
"status": "Accepted",
"component_variable": {
"component": {
"name": "string",
"instance": "string",
"evse": {
"id": 1,
"connector_id": 1
}
},
"variable": {
"name": "string",
"instance": "string"
}
},
"attribute_type": "Actual"
}
]
}
Direction: Module to EVerest
Available only on servers:
Accepts the following message:
Monitor the variables.
Command to start monitoring the given ComponentVariable(s), using the same canonical component/variable addressing as get_variables, identical for OCPP 1.6 and 2.x; the empty-component OCPP 1.6 legacy key form is deprecated. Changes to monitored variables are published on the event_data channel and echo the addressing form used at registration. Consecutive calls of this operation will not override but extend the existing monitors.
See the OCPPmulti module documentation ("Configuration access" and "Migration from OCPP 1.6 key addressing") for examples and the migration guide.
List of MonitorVariableRequest values
{
"items": [
{
"component": {
"name": "string",
"instance": "string",
"evse": {
"id": 1,
"connector_id": 1
}
},
"variable": {
"name": "string",
"instance": "string"
}
}
]
}
Available only on servers:
Accepts the following message:
Events related to OCPP transactions
Element providing information on OCPP transactions.
{
"transaction_event": "Started",
"evse": {
"id": 1,
"connector_id": 1
},
"session_id": "string",
"transaction_id": "string"
}
Accepts the following message:
Indicates if chargepoint is connected to CSMS
Indicates if chargepoint is connected to CSMS
Accepts the following message:
Published when an internal sucurity event occured
Type for a security event
{
"type": "string",
"info": "string",
"critical": true,
"timestamp": "2019-08-24T14:15:22Z"
}
Request the most recently published (latched) ocpp transaction event. The reply will be sent to the replyTo address specified in the message headers. If no latched value is available yet, a null payload will be sent.
Available only on servers:
Accepts the following message:
Request the most recently published (latched) ocpp transaction event.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
}
}
Accepts the following message:
The most recently published ocpp transaction event.
{
"transaction_event": "Started",
"evse": {
"id": 1,
"connector_id": 1
},
"session_id": "string",
"transaction_id": "string"
}
Request the most recently published (latched) security event. The reply will be sent to the replyTo address specified in the message headers. If no latched value is available yet, a null payload will be sent.
Available only on servers:
Accepts the following message:
Request the most recently published (latched) security event.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
}
}
Accepts the following message:
The most recently published security event.
{
"type": "string",
"info": "string",
"critical": true,
"timestamp": "2019-08-24T14:15:22Z"
}
Available only on servers:
Accepts the following message:
Published any time a BootNotificationResponse message is received from the CSMS
OCPP BootNotificationResponse
{
"status": "Accepted",
"current_time": "2019-08-24T14:15:22Z",
"interval": 0,
"status_info": {
"reason_code": "string",
"additional_info": "string"
}
}
Request the most recently published (latched) boot notification response. The reply will be sent to the replyTo address specified in the message headers. If no latched value is available yet, a null payload will be sent.
Available only on servers:
Accepts the following message:
Request the most recently published (latched) boot notification response.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
}
}
Accepts the following message:
The most recently published boot notification response.
{
"status": "Accepted",
"current_time": "2019-08-24T14:15:22Z",
"interval": 0,
"status_info": {
"reason_code": "string",
"additional_info": "string"
}
}
Accepts the following message:
Published for a component variable combination when a variable with a monitor has been changed
Type to report an event notification for a component-variable
{
"component_variable": {
"component": {
"name": "string",
"instance": "string",
"evse": {
"id": 1,
"connector_id": 1
}
},
"variable": {
"name": "string",
"instance": "string"
}
},
"event_id": 0,
"timestamp": "2019-08-24T14:15:22Z",
"trigger": "Alerting",
"actual_value": "string",
"event_notification_type": "HardWiredNotification",
"cause": 0,
"tech_code": "string",
"tech_info": "string",
"cleared": true,
"transaction_id": "string",
"variable_monitoring_id": 0
}
Request the most recently published (latched) event data. The reply will be sent to the replyTo address specified in the message headers. If no latched value is available yet, a null payload will be sent.
Available only on servers:
Accepts the following message:
Request the most recently published (latched) event data.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
}
}
Accepts the following message:
The most recently published event data.
{
"component_variable": {
"component": {
"name": "string",
"instance": "string",
"evse": {
"id": 1,
"connector_id": 1
}
},
"variable": {
"name": "string",
"instance": "string"
}
},
"event_id": 0,
"timestamp": "2019-08-24T14:15:22Z",
"trigger": "Alerting",
"actual_value": "string",
"event_notification_type": "HardWiredNotification",
"cause": 0,
"tech_code": "string",
"tech_info": "string",
"cleared": true,
"transaction_id": "string",
"variable_monitoring_id": 0
}
Available only on servers:
Accepts the following message:
Object that contains OCPP charging schedules of all connectors
The object contains one composite charging schedule for each connector id starting from connector 0. Connector 0 contains a schedule for the whole charging station.
The frequency of publication is controlled by PublishChargingScheduleIntervalS (OCPP 2.x) and CompositeScheduleIntervalS (OCPP 1.6)
The duration of the composite schedules is controlled by PublishChargingScheduleDurationS (OCPP 2.x) and RequestCompositeScheduleDurationS (OCPP 1.6)
schedules for connectors
{
"schedules": [
{
"evse": 0,
"charging_rate_unit": "string",
"charging_schedule_period": [
{
"start_period": 0,
"limit": 0,
"limit_L2": 0,
"limit_L3": 0,
"number_phases": 0,
"stack_level": 0,
"phase_to_use": 0,
"discharge_limit": 0,
"discharge_limit_L2": 0,
"discharge_limit_L3": 0,
"setpoint": 0,
"setpoint_L2": 0,
"setpoint_L3": 0,
"setpoint_reactive": 0,
"setpoint_reactive_L2": 0,
"setpoint_reactive_L3": 0,
"preconditioning_request": true,
"evse_sleep": true,
"v2x_baseline": 0,
"operation_mode": "Idle",
"v2x_freq_watt_curve": [
{
"frequency": 0,
"power": 0
}
],
"v2x_signal_watt_curve": [
{
"signal": 0,
"power": 0
}
]
}
],
"duration": 0,
"start_schedule": "string",
"min_charging_rate": 0
}
]
}
Request the most recently published (latched) Is Connected. The reply will be sent to the replyTo address specified in the message headers. If no latched value is available yet, a null payload will be sent.
Available only on servers:
Accepts the following message:
Request the most recently published (latched) Is Connected.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
}
}
Accepts the following message:
The most recently published Is Connected.
Request the most recently published (latched) Charging Schedules. The reply will be sent to the replyTo address specified in the message headers. If no latched value is available yet, a null payload will be sent.
Available only on servers:
Accepts the following message:
Request the most recently published (latched) Charging Schedules.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
}
}
Accepts the following message:
The most recently published Charging Schedules.
{
"schedules": [
{
"evse": 0,
"charging_rate_unit": "string",
"charging_schedule_period": [
{
"start_period": 0,
"limit": 0,
"limit_L2": 0,
"limit_L3": 0,
"number_phases": 0,
"stack_level": 0,
"phase_to_use": 0,
"discharge_limit": 0,
"discharge_limit_L2": 0,
"discharge_limit_L3": 0,
"setpoint": 0,
"setpoint_L2": 0,
"setpoint_L3": 0,
"setpoint_reactive": 0,
"setpoint_reactive_L2": 0,
"setpoint_reactive_L3": 0,
"preconditioning_request": true,
"evse_sleep": true,
"v2x_baseline": 0,
"operation_mode": "Idle",
"v2x_freq_watt_curve": [
{
"frequency": 0,
"power": 0
}
],
"v2x_signal_watt_curve": [
{
"signal": 0,
"power": 0
}
]
}
],
"duration": 0,
"start_schedule": "string",
"min_charging_rate": 0
}
]
}
A serialized OCPP message
Available only on servers:
Accepts the following message:
A serialized OCPP message
OCPP message with direction
{
"message": "string",
"direction": "CSMSToChargingStation",
"version": "string"
}
Request the most recently published (latched) ocpp message. The reply will be sent to the replyTo address specified in the message headers. If no latched value is available yet, a null payload will be sent.
Available only on servers:
Accepts the following message:
Request the most recently published (latched) ocpp message.
{
"headers": {
"replyTo": "everest_api/1/{interface_type}/{module_id}/e2m/{operation_name}/{uuid}"
}
}
Accepts the following message:
The most recently published ocpp message.
{
"message": "string",
"direction": "CSMSToChargingStation",
"version": "string"
}
Accepts the following message:
Heartbeat produced by EVerest as configured via cfg_heartbeat_interval_ms in the EVerest configuration
64bit unsigned integer. The id of every heartbeat increases by 1 and overflows when the maximum representable value is reached
Heartbeat
Accepts the following message:
Signal to EVerest that communication is good or check shall be stopped
Send 'true' at least every 'cfg_communication_check_to_s' seconds to signal module is alive. Send 'false' to stop communication check
Request data transfer.
Reply to the request to transfer data
Type for data transfer response provided by OCPP
Request data transfer.
Reply to the request to transfer data
Type for data transfer response provided by OCPP
Request the variables.
Reads variables using canonical component/variable addressing (e.g. component OCPPCommCtrlr, variable HeartbeatInterval), identical for OCPP 1.6 and 2.x. An empty component.name marks the deprecated OCPP 1.6 legacy key form (variable.name = configuration key); it is only accepted while OCPP 1.6 is active and will be removed per the deprecation policy. A non-empty component.name is never reinterpreted as a configuration key. Each result echoes the requested component_variable and carries a status.
See the OCPPmulti module documentation ("Configuration access" and "Migration from OCPP 1.6 key addressing") for examples and the migration guide.
Reply to the request transmit the requested variables
List of GetVariableResult values
Request setting the variables.
Writes variables using the same canonical component/variable addressing as get_variables, identical for OCPP 1.6 and 2.x; the empty-component OCPP 1.6 legacy key form is deprecated and scheduled for removal. Connection-configuration writes (component NetworkConfiguration with the profile slot number as component instance, and the OCPPCommCtrlr/NetworkConfigurationPriority selector) return RebootRequired: the value is validated and persisted immediately and takes effect on the next (re)connect or reboot.
See the OCPPmulti module documentation ("Configuration access" and "Migration from OCPP 1.6 key addressing") for examples and the migration guide.
Reply to the request to set the variables
List of SetVariableResult values
Monitor the variables.
Command to start monitoring the given ComponentVariable(s), using the same canonical component/variable addressing as get_variables, identical for OCPP 1.6 and 2.x; the empty-component OCPP 1.6 legacy key form is deprecated. Changes to monitored variables are published on the event_data channel and echo the addressing form used at registration. Consecutive calls of this operation will not override but extend the existing monitors.
See the OCPPmulti module documentation ("Configuration access" and "Migration from OCPP 1.6 key addressing") for examples and the migration guide.
List of MonitorVariableRequest values
Events related to OCPP transactions
Element providing information on OCPP transactions.
Request the most recently published (latched) ocpp transaction event.
The most recently published ocpp transaction event.
Indicates if chargepoint is connected to CSMS
Indicates if chargepoint is connected to CSMS
Published when an internal sucurity event occured
Type for a security event
Request the most recently published (latched) security event.
The most recently published security event.
Published any time a BootNotificationResponse message is received from the CSMS
OCPP BootNotificationResponse
Request the most recently published (latched) boot notification response.
The most recently published boot notification response.
Published for a component variable combination when a variable with a monitor has been changed
Type to report an event notification for a component-variable
Request the most recently published (latched) event data.
The most recently published event data.
Object that contains OCPP charging schedules of all connectors
The object contains one composite charging schedule for each connector id starting from connector 0. Connector 0 contains a schedule for the whole charging station.
The frequency of publication is controlled by PublishChargingScheduleIntervalS (OCPP 2.x) and CompositeScheduleIntervalS (OCPP 1.6)
The duration of the composite schedules is controlled by PublishChargingScheduleDurationS (OCPP 2.x) and RequestCompositeScheduleDurationS (OCPP 1.6)
schedules for connectors
Request the most recently published (latched) Is Connected.
The most recently published Is Connected.
Request the most recently published (latched) Charging Schedules.
The most recently published Charging Schedules.
A serialized OCPP message
OCPP message with direction
Request the most recently published (latched) ocpp message.
The most recently published ocpp message.
Heartbeat produced by EVerest as configured via cfg_heartbeat_interval_ms in the EVerest configuration
64bit unsigned integer. The id of every heartbeat increases by 1 and overflows when the maximum representable value is reached
Signal to EVerest that communication is good or check shall be stopped
Send 'true' at least every 'cfg_communication_check_to_s' seconds to signal module is alive. Send 'false' to stop communication check
Attribute enum
OCPP BootNotificationResponse
Type to report an event notification for a component-variable
A point of a frequency-watt curve.
A point of a signal-watt curve.
Element providing information on a charging schedule period.
Element providing information on an OCPP charging schedule.
schedules for connectors
Indicates the trigger reason of a generic event as part of the type EventData Alerting: Monitored variable has passed an Lower or Upper Threshold Delta: Delta Monitored Variable value has changed by more than specified amount Periodic: Periodic Monitored Variable has been sampled for reporting at the specified interval
Indicates the event notification type as part of the type EventData HardWiredNotification: The software implemented by the manufacturer triggered a hardwired notification HardWiredMonitor: Triggered by a monitor, which is hardwired by the manufacturer PreconfiguredMonitor: Triggered by a monitor, which is preconfigured by the manufacturer. CustomMonitor: Triggered by a monitor which is set by a message by the Charging Station Operator.
Type for a component with name, optional instance and optional evse For OCPP1.6: A definition of a Component doesn't exist in OCPP1.6; In the context of OCPP1.6 this type may not be relevant or used. For OCPP2.0.1: All properties of the Component can be used
Type for a combination of component and variable. Note that for OCPP1.6 only the Variable.name (configuration key) is sufficient to identify a configuration key. For OCPP2.0.1 all properties of the type(s) can be used.
Indicates if chargepoint is connected to CSMS
Custom data extension
Type for data transfer request provided by OCPP
Type for data transfer response provided by OCPP
Data Transfer Status enum
Type of an EVSE. If only the id is present, this type identifies an EVSE. If also a connector_id is given, this type identifies a Connector of the EVSE
Type to request a variable value (OCPP2.0.1) or configuration value (OCPP1.6)
List of GetVariableRequest values
Result of a GetVariableRequest
List of GetVariableResult values
Indicates the status of the GetVariableRequest as part of the GetVariableResult operation
List of MonitorVariableRequest values
Element providing information on OCPP transactions.
Indicates whether the Charging Station has been registered within the OCPP CSMS
Type for a security event
Type to request to set a variable or configuration key
List of SetVariableRequest values
Result of a SetVariableRequest
List of SetVariableResult values
Indicates the status of the SetVariableRequest operation as part of the SetVariableResult
Arguments for set_variables
Element providing more information about the status.
The transaction event enumeration
Type for a variable with a name and an optional instance For OCPP1.6: A Variable should only contain a name. The name identifies the configuration key. For OCPP2.0.1: All properties of the Variable can be used
OCPP message direction
OCPP message with direction
Send 'true' at least every 'cfg_communication_check_to_s' seconds to signal module is alive. Send 'false' to stop communication check
64bit unsigned integer. The id of every heartbeat increases by 1 and overflows when the maximum representable value is reached