{
    "$id": "CertificateSignedRequest",
    "comment": "OCPP 2.1 Edition 1 (c) OCA, Creative Commons Attribution-NoDerivatives 4.0 International Public License",
    "definitions": {
        "CertificateSigningUseEnumType": {
            "description": "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 &lt;&lt;signcertificaterequest,SignCertificateRequest&gt;&gt; that requested this certificate to be signed AND both the 15118 connection and the Charging Station connection are implemented.\r\n\r\n",
            "javaType": "CertificateSigningUseEnum",
            "type": "string",
            "additionalProperties": false,
            "enum": ["ChargingStationCertificate", "V2GCertificate", "V2G20Certificate"],
            "tsEnumNames": ["ChargingStationCertificate", "V2GCertificate", "V2G20Certificate"]
        },
        "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"]
        }
    },
    "type": "object",
    "additionalProperties": false,
    "properties": {
        "certificateChain": {
            "description": "The signed PEM encoded X.509 certificate. This SHALL also contain the necessary sub CA certificates, when applicable. The order of the bundle follows the certificate chain, starting from the leaf certificate.\r\n\r\nThe Configuration Variable &lt;&lt;configkey-max-certificate-chain-size,MaxCertificateChainSize&gt;&gt; can be used to limit the maximum size of this field.\r\n",
            "type": "string",
            "maxLength": 10000
        },
        "certificateType": {
            "$ref": "#/definitions/CertificateSigningUseEnumType"
        },
        "requestId": {
            "description": "*(2.1)* RequestId to correlate this message with the SignCertificateRequest.\r\n",
            "type": "integer"
        },
        "customData": {
            "$ref": "#/definitions/CustomDataType"
        }
    },
    "required": ["certificateChain"]
}
