11.3.13. ocpp

OCPP types (OCPP1.6 and OCPP2.0.1). The types are based more on the type definitions of OCPP201, as these offer more flexibility and are easier to transfer to OCPP1.6 than vice versa.

DataTransferStatus:string
Data Transfer Status enum
enum: Accepted, Rejected, UnknownMessageId, UnknownVendorId
DataTransferRequest:object
Type for data transfer request provided by OCPP
required: vendor_id
properties:
vendor_id:string
Identifies the vendor
message_id:string
Identifies the message
data:string
Data provided by this data transfer
DataTransferResponse:object
Type for data transfer response provided by OCPP
required: status
properties:
status:string (ocpp-DataTransferStatus)
Status of the data transfer
There is an extended definition for this object here.
data:string
Data provided by this data transfer
KeyValue:object
Type for a key value pair
required: key, read_only
properties:
key:string
Key / Identifier
read_only:boolean
Indicates if the configuration key is configured to be read-only
value:string
Value of the configuration key
GetConfigurationResponse:object
Response to a GetConfiguration request
required: configuration_keys, unknown_keys
properties:
configuration_keys:array
List of known configuration keys of key value pairs
items:
description:
type:
$ref:
unknown_keys:array
List of unknown configuration keys
items:
description:
type:
ConfigurationStatus:string
Response to a set_custom_configuration_key command
enum: Accepted, Rejected, RebootRequired, NotSupported
SecurityEventEnum:string
Enum for known security events
enum: FirmwareUpdated, FailedToAuthenticateAtCsms, CsmsFailedToAuthenticate, SettingSystemTime, StartupOfTheDevice, ResetOrReboot, SecurityLogWasCleared, ReconfigurationOfSecurityParameters, MemoryExhaustion, InvalidMessages, AttemptedReplayAttacks, TamperDetectionActivated, InvalidFirmwareSignature, InvalidFirmwareSigningCertificate, InvalidCsmsCertificate, InvalidChargingStationCertificate, InvalidTLSVersion, InvalidTLSCipherSuite, MaintenanceLoginAccepted, MaintenanceLoginFailed
SecurityEvent:object
Type for a security event
required: type
properties:
type:string
Type of the security event
info:string
Additional information about the occurred security event
EVSE:object
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
required: id
properties:
id:integer
Id of the EVSE
connector_id:integer
An id to designate a specific connector (on an EVSE) by connector index number
Variable:object
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
required: name
properties:
name:string
Name of a variable
instance:string
Name of instance in case the variable exists as multiple instances
Component:object
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
required: name
properties:
name:string
Name of a component
instance:string
Name of instance in case the component exists as multiple instances
evse:object (ocpp-EVSE)
Specifies the EVSE when component is located at EVSE level, also specifies the connector when component is located at Connector level
There is an extended definition for this object here.
ComponentVariable:object
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.
required: component, variable
properties:
component:object (ocpp-Component)
Component
There is an extended definition for this object here.
variable:object (ocpp-Variable)
Variable
There is an extended definition for this object here.
AttributeEnum:string
Attribute enum Actual: The actual value of a variable Target: The target value of a variable MinSet: The minimal allowed value of a variable MaxSet: The maximum allowed value of a variable
enum: Actual, Target, MinSet, MaxSet
GetVariableStatusEnumType:string
Indicates the status of the GetVariableRequest as part of the GetVariableResult operation Accepted: Variable successfully retrieved Rejected: Request is rejected UnknownComponent: Component is not known UnknownVariable: Variable is not known NotSupportedAttributeType: The AttributeType is not supported
enum: Accepted, Rejected, UnknownComponent, UnknownVariable, NotSupportedAttributeType
SetVariableStatusEnumType:string
Indicates the status of the SetVariableRequest operation as part of the SetVariableResult Accepted: Variable successfully set Rejected: Request is rejected UnknownComponent: Component is not known UnknownVariable: Variable is not known NotSupportedAttributeType: The AttributeType is not supported RebootRequired: A reboot is required
enum: Accepted, Rejected, UnknownComponent, UnknownVariable, NotSupportedAttributeType, RebootRequired
EventTriggerEnum:string
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
enum: Alerting, Delta, Periodic
EventNotificationType:string
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.
enum: HardWiredNotification, HardWiredMonitor, PreconfiguredMonitor, CustomMonitor
GetVariableRequest:object
Type to request a variable value (OCPP2.0.1) or configuration value (OCPP1.6)
required: component_variable
properties:
component_variable:object (ocpp-ComponentVariable)
Identifier for which the value should be requested
There is an extended definition for this object here.
attribute_type:string (ocpp-AttributeEnum)
AttributeEnum for which the value should be requested. When absent, actual is assumed
There is an extended definition for this object here.
GetVariableResult:object
Result of a GetVariableRequest
required: status, component_variable
properties:
Status of the GetVariableResult
There is an extended definition for this object here.
attribute_type:string (ocpp-AttributeEnum)
AttributeEnum for which the value was requested. When absent, actual is assumed
There is an extended definition for this object here.
value:string
Value of the requested variable and AttributeEnum. This field can only be empty when the given status is NOT accepted
component_variable:object (ocpp-ComponentVariable)
Identifier for which the value was requested
There is an extended definition for this object here.
SetVariableRequest:object
Type to request to set a variable or configuration key
required: component_variable, value
properties:
component_variable:object (ocpp-ComponentVariable)
Identifier for which the value should be set
There is an extended definition for this object here.
value:string
Value of the variable that should be set
attribute_type:string (ocpp-AttributeEnum)
AttributeEnum for which the value should be set. When absent, actual is assumed
There is an extended definition for this object here.
SetVariableResult:object
Result of a SetVariableRequest
required: status, component_variable
properties:
Status of the SetVariableResult
There is an extended definition for this object here.
component_variable:object (ocpp-ComponentVariable)
Identifier for which the set of the value should be requested
There is an extended definition for this object here.
attribute_type:string (ocpp-AttributeEnum)
AttributeEnum for which the set of the value is requested. When absent, actual is assumed
There is an extended definition for this object here.
EventData:object
Type to report an event notification for a component-variable
required: component_variable, event_id, timestamp, trigger, actual_value, event_notification_type
properties:
component_variable:object (ocpp-ComponentVariable)
Identifier for which the event occured
There is an extended definition for this object here.
event_id:integer
Identifies the event
timestamp:string
Timestamp of the moment the report was generated
format:
trigger:string (ocpp-EventTriggerEnum)
Type of the monitor that triggered this event
There is an extended definition for this object here.
actual_value:string
Actual value of the variable
event_notification_type:string (ocpp-EventNotificationType)
Type of the event notification
There is an extended definition for this object here.
cause:integer
Refers to the Id of an event that is considered to be the cause for this event
tech_code:string
Technical (error) code as reported by component
tech_info:string
Technical detail information as reported by component
cleared:boolean
Cleared is set to true to report the clearing of a monitored situation
transaction_id:string
If an event notification is linked to a specific transaction, this field can be used to specify its transactionId
variable_monitoring_id:integer
Identifies the VariableMonitoring which triggered the event
OperationalStatusEnumType:string
Operational status of Charging Station /EVSE / Connector
enum: Inoperative, Operative
ChangeAvailabilityRequest:object
Request type to change the availability of the Charging Station/ an EVSE / a Connector.
required: operational_status
properties:
operational_status:string (ocpp-OperationalStatusEnumType)
Type of availability change that the Charging Station should perform.
There is an extended definition for this object here.
evse:object (ocpp-EVSE)
Specify EVSE/Connector whose status is changed. When omitted, the message refers to the Charging Station as a whole.
There is an extended definition for this object here.
ChangeAvailabilityStatusEnumType:string
Status returned in response to ChangeAvailabilityRequest.
enum: Accepted, Rejected, Scheduled
StatusInfoType:object
Element providing more information about the status.
required: reason_code
properties:
reason_code:string
A predefined code for the reason why the status is returned in this response. The string is case-insensitive.
additional_info:string
Additional text to provide detailed information
ChangeAvailabilityResponse:object
Response type to request to change the availability of the Charging Station/ an EVSE / a Connector.
required: status
properties:
Indicates whether the Charging Station is able to perform the availability change.
There is an extended definition for this object here.
status_info:object (ocpp-StatusInfoType)
Detailed status information.
There is an extended definition for this object here.