Link copied

Functional Block: B/J

Types Reference: Shared types referenced below are defined in OCPP-2.0.1-DataTypes.md.
Types used only within this block are documented inline below.

#Messages


#Get15118EVCertificate

Direction: CS → CSMS

#Get15118EVCertificateRequest

Field Type Required Constraints Description
action CertificateActionEnumType Yes
exiRequest string Yes maxLength: 5600 Raw CertificateInstallationReq request from EV, Base64 encoded.
iso15118SchemaVersion string Yes maxLength: 50 Schema version currently used for the 15118 session between EV and Charging Station. Needed for parsing of the EXI stream by the CSMS.
customData CustomDataType No
Example Get15118EVCertificateRequest
{
  "action": "Install",
  "exiRequest": "string",
  "iso15118SchemaVersion": "string"
}

#Get15118EVCertificateResponse

Field Type Required Constraints Description
exiResponse string Yes maxLength: 5600 Raw CertificateInstallationRes response for the EV, Base64 encoded.
status Iso15118EVCertificateStatusEnumType Yes
statusInfo StatusInfoType No
customData CustomDataType No

#GetCertificateStatus

Direction: CS → CSMS

#GetCertificateStatusRequest

Field Type Required Constraints Description
ocspRequestData OCSPRequestDataType Yes
customData CustomDataType No
Example GetCertificateStatusRequest
{
  "ocspRequestData": {
    "hashAlgorithm": "SHA256",
    "issuerNameHash": "string",
    "issuerKeyHash": "string",
    "serialNumber": "string",
    "responderURL": "string"
  }
}

#GetCertificateStatusResponse

Field Type Required Constraints Description
status GetCertificateStatusEnumType Yes
ocspResult string No maxLength: 5500 OCSPResponse class as defined in IETF RFC 6960. DER encoded (as defined in IETF RFC 6960), and then base64 encoded. MAY only be omitted when status is not Accepted.
statusInfo StatusInfoType No
customData CustomDataType No

#SignCertificate

Direction: CS → CSMS

#SignCertificateRequest

Field Type Required Constraints Description
csr string Yes maxLength: 5500 The Charging Station SHALL send the public key in form of a Certificate Signing Request (CSR) as described in RFC 2986 [22] and then PEM encoded, using the SignCertificateRequest message.
certificateType CertificateSigningUseEnumType No
customData CustomDataType No
Example SignCertificateRequest
{
  "csr": "string"
}

#SignCertificateResponse

Field Type Required Constraints Description
status GenericStatusEnumType Yes
statusInfo StatusInfoType No
customData CustomDataType No

#CertificateSigned

Direction: CSMS → CS

#CertificateSignedRequest

Field Type Required Constraints Description
certificateChain string Yes maxLength: 10000 The signed PEM encoded X.509 certificate. This can also contain the necessary sub CA certificates. In that case, the order of the bundle should follow the certificate chain, starting from the leaf certificate. The Configuration Variable MaxCertificateChainSize can be used to limit the maximum size of this field.
certificateType CertificateSigningUseEnumType No
customData CustomDataType No
Example CertificateSignedRequest
{
  "certificateChain": "string"
}

#CertificateSignedResponse

Field Type Required Constraints Description
status CertificateSignedStatusEnumType Yes
statusInfo StatusInfoType No
customData CustomDataType No

#InstallCertificate

Direction: CSMS → CS

#InstallCertificateRequest

Field Type Required Constraints Description
certificate string Yes maxLength: 5500 A PEM encoded X.509 certificate.
certificateType InstallCertificateUseEnumType Yes
customData CustomDataType No
Example InstallCertificateRequest
{
  "certificate": "string",
  "certificateType": "V2GRootCertificate"
}

#InstallCertificateResponse

Field Type Required Constraints Description
status InstallCertificateStatusEnumType Yes
statusInfo StatusInfoType No
customData CustomDataType No

#DeleteCertificate

Direction: CSMS → CS

#DeleteCertificateRequest

Field Type Required Constraints Description
certificateHashData CertificateHashDataType Yes
customData CustomDataType No
Example DeleteCertificateRequest
{
  "certificateHashData": {
    "hashAlgorithm": "SHA256",
    "issuerNameHash": "string",
    "issuerKeyHash": "string",
    "serialNumber": "string"
  }
}

#DeleteCertificateResponse

Field Type Required Constraints Description
status DeleteCertificateStatusEnumType Yes
statusInfo StatusInfoType No
customData CustomDataType No

#GetInstalledCertificateIds

Direction: CSMS → CS

#GetInstalledCertificateIdsRequest

Field Type Required Constraints Description
certificateType GetCertificateIdUseEnumType[] No minItems: 1 Indicates the type of certificates requested. When omitted, all certificate types are requested.
customData CustomDataType No

#GetInstalledCertificateIdsResponse

Field Type Required Constraints Description
status GetInstalledCertificateStatusEnumType Yes
certificateHashDataChain CertificateHashDataChainType[] No minItems: 1
statusInfo StatusInfoType No
customData CustomDataType No

#SecurityEventNotification

Direction: CS → CSMS

#SecurityEventNotificationRequest

Field Type Required Constraints Description
timestamp string (date-time) Yes Date and time at which the event occurred.
type string Yes maxLength: 50 Type of the security event. This value should be taken from the Security events list.
techInfo string No maxLength: 255 Additional information about the occurred security event.
customData CustomDataType No
Example SecurityEventNotificationRequest
{
  "timestamp": "2024-01-15T10:30:00Z",
  "type": "string"
}

#SecurityEventNotificationResponse

No required fields. An empty {} is a valid response.


#Local Types

Types used only within this block's messages.

#CertificateActionEnumType

Defines whether certificate needs to be installed or updated.

Value
Install
Update

Used in: Get15118EVCertificate


#CertificateSignedStatusEnumType

Returns whether certificate signing has been accepted, otherwise rejected.

Value
Accepted
Rejected

Used in: CertificateSigned


#CertificateSigningUseEnumType

Indicates the type of the signed certificate that is returned. When omitted the certificate is used for both the 15118 connection (if implemented) and the Charging Station to CSMS connection. This field is required when a typeOfCertificate was included in the SignCertificateRequest that requested this certificate to be signed AND both the 15118 connection and the Charging Station connection are implemented.

Value
ChargingStationCertificate
V2GCertificate

Used in: CertificateSigned, SignCertificate


#DeleteCertificateStatusEnumType

Charging Station indicates if it can process the request.

Value
Accepted
Failed
NotFound

Used in: DeleteCertificate


#GetCertificateIdUseEnumType

Indicates the type of the requested certificate(s).

Value
V2GRootCertificate
MORootCertificate
CSMSRootCertificate
V2GCertificateChain
ManufacturerRootCertificate

Used in: GetInstalledCertificateIds


#GetCertificateStatusEnumType

This indicates whether the charging station was able to retrieve the OCSP certificate status.

Value
Accepted
Failed

Used in: GetCertificateStatus


#GetInstalledCertificateStatusEnumType

Charging Station indicates if it can process the request.

Value
Accepted
NotFound

Used in: GetInstalledCertificateIds


#InstallCertificateStatusEnumType

Charging Station indicates if installation was successful.

Value
Accepted
Rejected
Failed

Used in: InstallCertificate


#InstallCertificateUseEnumType

Indicates the certificate type that is sent.

Value
V2GRootCertificate
MORootCertificate
CSMSRootCertificate
ManufacturerRootCertificate

Used in: InstallCertificate


#Iso15118EVCertificateStatusEnumType

Indicates whether the message was processed properly.

Value
Accepted
Failed

Used in: Get15118EVCertificate


#CertificateHashDataChainType

Field Type Required Constraints Description
certificateHashData CertificateHashDataType Yes
certificateType GetCertificateIdUseEnumType Yes
childCertificateHashData CertificateHashDataType[] No minItems: 1, maxItems: 4
customData CustomDataType No

Used in: GetInstalledCertificateIds


#OCSPRequestDataType

Field Type Required Constraints Description
hashAlgorithm HashAlgorithmEnumType Yes
issuerKeyHash string Yes maxLength: 128 Hashed value of the issuers public key
issuerNameHash string Yes maxLength: 128 Hashed value of the Issuer DN (Distinguished Name).
responderURL string Yes maxLength: 512 This contains the responder URL (Case insensitive).
serialNumber string Yes maxLength: 40 The serial number of the certificate.
customData CustomDataType No

Used in: Authorize, GetCertificateStatus