Add BootNotification and ClearCache OCPP 2.0.1 commands support
[e-mobility-charging-stations-simulator.git] / src / assets / json-schemas / ocpp / 2.0 / SetVariablesRequest.json
1 {
2 "$schema": "http://json-schema.org/draft-06/schema#",
3 "$id": "urn:OCPP:Cp:2:2020:3:SetVariablesRequest",
4 "comment": "OCPP 2.0.1 FINAL",
5 "definitions": {
6 "CustomDataType": {
7 "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.",
8 "javaType": "CustomData",
9 "type": "object",
10 "properties": {
11 "vendorId": {
12 "type": "string",
13 "maxLength": 255
14 }
15 },
16 "required": ["vendorId"]
17 },
18 "AttributeEnumType": {
19 "description": "Type of attribute: Actual, Target, MinSet, MaxSet. Default is Actual when omitted.\r\n",
20 "javaType": "AttributeEnum",
21 "type": "string",
22 "default": "Actual",
23 "additionalProperties": false,
24 "enum": ["Actual", "Target", "MinSet", "MaxSet"]
25 },
26 "ComponentType": {
27 "description": "A physical or logical component\r\n",
28 "javaType": "Component",
29 "type": "object",
30 "additionalProperties": false,
31 "properties": {
32 "customData": {
33 "$ref": "#/definitions/CustomDataType"
34 },
35 "evse": {
36 "$ref": "#/definitions/EVSEType"
37 },
38 "name": {
39 "description": "Name of the component. Name should be taken from the list of standardized component names whenever possible. Case Insensitive. strongly advised to use Camel Case.\r\n",
40 "type": "string",
41 "maxLength": 50
42 },
43 "instance": {
44 "description": "Name of instance in case the component exists as multiple instances. Case Insensitive. strongly advised to use Camel Case.\r\n",
45 "type": "string",
46 "maxLength": 50
47 }
48 },
49 "required": ["name"]
50 },
51 "EVSEType": {
52 "description": "EVSE\r\nurn:x-oca:ocpp:uid:2:233123\r\nElectric Vehicle Supply Equipment\r\n",
53 "javaType": "EVSE",
54 "type": "object",
55 "additionalProperties": false,
56 "properties": {
57 "customData": {
58 "$ref": "#/definitions/CustomDataType"
59 },
60 "id": {
61 "description": "Identified_ Object. MRID. Numeric_ Identifier\r\nurn:x-enexis:ecdm:uid:1:569198\r\nEVSE Identifier. This contains a number (> 0) designating an EVSE of the Charging Station.\r\n",
62 "type": "integer"
63 },
64 "connectorId": {
65 "description": "An id to designate a specific connector (on an EVSE) by connector index number.\r\n",
66 "type": "integer"
67 }
68 },
69 "required": ["id"]
70 },
71 "SetVariableDataType": {
72 "javaType": "SetVariableData",
73 "type": "object",
74 "additionalProperties": false,
75 "properties": {
76 "customData": {
77 "$ref": "#/definitions/CustomDataType"
78 },
79 "attributeType": {
80 "$ref": "#/definitions/AttributeEnumType"
81 },
82 "attributeValue": {
83 "description": "Value to be assigned to attribute of variable.\r\n\r\nThe Configuration Variable <<configkey-configuration-value-size,ConfigurationValueSize>> can be used to limit SetVariableData.attributeValue and VariableCharacteristics.valueList. The max size of these values will always remain equal. \r\n",
84 "type": "string",
85 "maxLength": 1000
86 },
87 "component": {
88 "$ref": "#/definitions/ComponentType"
89 },
90 "variable": {
91 "$ref": "#/definitions/VariableType"
92 }
93 },
94 "required": ["attributeValue", "component", "variable"]
95 },
96 "VariableType": {
97 "description": "Reference key to a component-variable.\r\n",
98 "javaType": "Variable",
99 "type": "object",
100 "additionalProperties": false,
101 "properties": {
102 "customData": {
103 "$ref": "#/definitions/CustomDataType"
104 },
105 "name": {
106 "description": "Name of the variable. Name should be taken from the list of standardized variable names whenever possible. Case Insensitive. strongly advised to use Camel Case.\r\n",
107 "type": "string",
108 "maxLength": 50
109 },
110 "instance": {
111 "description": "Name of instance in case the variable exists as multiple instances. Case Insensitive. strongly advised to use Camel Case.\r\n",
112 "type": "string",
113 "maxLength": 50
114 }
115 },
116 "required": ["name"]
117 }
118 },
119 "type": "object",
120 "additionalProperties": false,
121 "properties": {
122 "customData": {
123 "$ref": "#/definitions/CustomDataType"
124 },
125 "setVariableData": {
126 "type": "array",
127 "additionalItems": false,
128 "items": {
129 "$ref": "#/definitions/SetVariableDataType"
130 },
131 "minItems": 1
132 }
133 },
134 "required": ["setVariableData"]
135 }