ocpp-messages
Version:
TypeScript definitions for Open Charge Point Protocol (OCPP)
173 lines • 5.43 kB
JSON
{
"$schema": "http://json-schema.org/draft-06/schema#",
"$id": "urn:OCPP:Cp:2:2020:3:CustomerInformationRequest",
"comment": "OCPP 2.0.1 FINAL",
"definitions": {
"CustomDataType": {
"description": "This class does not get 'AdditionalProperties = false' in the schema generation, so it can be extended with arbitrary JSON properties to allow adding custom data.",
"javaType": "CustomData",
"type": "object",
"properties": {
"vendorId": {
"type": "string",
"maxLength": 255
}
},
"required": [
"vendorId"
]
},
"HashAlgorithmEnumType": {
"description": "Used algorithms for the hashes provided.\r\n",
"javaType": "HashAlgorithmEnum",
"type": "string",
"additionalProperties": false,
"enum": [
"SHA256",
"SHA384",
"SHA512"
]
},
"IdTokenEnumType": {
"description": "Enumeration of possible idToken types.\r\n",
"javaType": "IdTokenEnum",
"type": "string",
"additionalProperties": false,
"enum": [
"Central",
"eMAID",
"ISO14443",
"ISO15693",
"KeyCode",
"Local",
"MacAddress",
"NoAuthorization"
]
},
"AdditionalInfoType": {
"description": "Contains a case insensitive identifier to use for the authorization and the type of authorization to support multiple forms of identifiers.\r\n",
"javaType": "AdditionalInfo",
"type": "object",
"additionalProperties": false,
"properties": {
"customData": {
"$ref": "#/definitions/CustomDataType"
},
"additionalIdToken": {
"description": "This field specifies the additional IdToken.\r\n",
"type": "string",
"maxLength": 36
},
"type": {
"description": "This defines the type of the additionalIdToken. This is a custom type, so the implementation needs to be agreed upon by all involved parties.\r\n",
"type": "string",
"maxLength": 50
}
},
"required": [
"additionalIdToken",
"type"
]
},
"CertificateHashDataType": {
"javaType": "CertificateHashData",
"type": "object",
"additionalProperties": false,
"properties": {
"customData": {
"$ref": "#/definitions/CustomDataType"
},
"hashAlgorithm": {
"$ref": "#/definitions/HashAlgorithmEnumType"
},
"issuerNameHash": {
"description": "Hashed value of the Issuer DN (Distinguished Name).\r\n\r\n",
"type": "string",
"maxLength": 128
},
"issuerKeyHash": {
"description": "Hashed value of the issuers public key\r\n",
"type": "string",
"maxLength": 128
},
"serialNumber": {
"description": "The serial number of the certificate.\r\n",
"type": "string",
"maxLength": 40
}
},
"required": [
"hashAlgorithm",
"issuerNameHash",
"issuerKeyHash",
"serialNumber"
]
},
"IdTokenType": {
"description": "Contains a case insensitive identifier to use for the authorization and the type of authorization to support multiple forms of identifiers.\r\n",
"javaType": "IdToken",
"type": "object",
"additionalProperties": false,
"properties": {
"customData": {
"$ref": "#/definitions/CustomDataType"
},
"additionalInfo": {
"type": "array",
"additionalItems": false,
"items": {
"$ref": "#/definitions/AdditionalInfoType"
},
"minItems": 1
},
"idToken": {
"description": "IdToken is case insensitive. Might hold the hidden id of an RFID tag, but can for example also contain a UUID.\r\n",
"type": "string",
"maxLength": 36
},
"type": {
"$ref": "#/definitions/IdTokenEnumType"
}
},
"required": [
"idToken",
"type"
]
}
},
"type": "object",
"additionalProperties": false,
"properties": {
"customData": {
"$ref": "#/definitions/CustomDataType"
},
"customerCertificate": {
"$ref": "#/definitions/CertificateHashDataType"
},
"idToken": {
"$ref": "#/definitions/IdTokenType"
},
"requestId": {
"description": "The Id of the request.\r\n\r\n",
"type": "integer"
},
"report": {
"description": "Flag indicating whether the Charging Station should return NotifyCustomerInformationRequest messages containing information about the customer referred to.\r\n",
"type": "boolean"
},
"clear": {
"description": "Flag indicating whether the Charging Station should clear all information about the customer referred to.\r\n",
"type": "boolean"
},
"customerIdentifier": {
"description": "A (e.g. vendor specific) identifier of the customer this request refers to. This field contains a custom identifier other than IdToken and Certificate.\r\nOne of the possible identifiers (customerIdentifier, customerIdToken or customerCertificate) should be in the request message.\r\n",
"type": "string",
"maxLength": 64
}
},
"required": [
"requestId",
"report",
"clear"
]
}