Add BootNotification and ClearCache OCPP 2.0.1 commands support
[e-mobility-charging-stations-simulator.git] / src / assets / json-schemas / ocpp / 2.0 / NotifyChargingLimitRequest.json
1 {
2 "$schema": "http://json-schema.org/draft-06/schema#",
3 "$id": "urn:OCPP:Cp:2:2020:3:NotifyChargingLimitRequest",
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 "ChargingLimitSourceEnumType": {
19 "description": "Charging_ Limit. Charging_ Limit_ Source. Charging_ Limit_ Source_ Code\r\nurn:x-enexis:ecdm:uid:1:570845\r\nRepresents the source of the charging limit.\r\n",
20 "javaType": "ChargingLimitSourceEnum",
21 "type": "string",
22 "additionalProperties": false,
23 "enum": ["EMS", "Other", "SO", "CSO"]
24 },
25 "ChargingRateUnitEnumType": {
26 "description": "Charging_ Schedule. Charging_ Rate_ Unit. Charging_ Rate_ Unit_ Code\r\nurn:x-oca:ocpp:uid:1:569238\r\nThe unit of measure Limit is expressed in.\r\n",
27 "javaType": "ChargingRateUnitEnum",
28 "type": "string",
29 "additionalProperties": false,
30 "enum": ["W", "A"]
31 },
32 "CostKindEnumType": {
33 "description": "Cost. Cost_ Kind. Cost_ Kind_ Code\r\nurn:x-oca:ocpp:uid:1:569243\r\nThe kind of cost referred to in the message element amount\r\n",
34 "javaType": "CostKindEnum",
35 "type": "string",
36 "additionalProperties": false,
37 "enum": ["CarbonDioxideEmission", "RelativePricePercentage", "RenewableGenerationPercentage"]
38 },
39 "ChargingLimitType": {
40 "description": "Charging_ Limit\r\nurn:x-enexis:ecdm:uid:2:234489\r\n",
41 "javaType": "ChargingLimit",
42 "type": "object",
43 "additionalProperties": false,
44 "properties": {
45 "customData": {
46 "$ref": "#/definitions/CustomDataType"
47 },
48 "chargingLimitSource": {
49 "$ref": "#/definitions/ChargingLimitSourceEnumType"
50 },
51 "isGridCritical": {
52 "description": "Charging_ Limit. Is_ Grid_ Critical. Indicator\r\nurn:x-enexis:ecdm:uid:1:570847\r\nIndicates whether the charging limit is critical for the grid.\r\n",
53 "type": "boolean"
54 }
55 },
56 "required": ["chargingLimitSource"]
57 },
58 "ChargingSchedulePeriodType": {
59 "description": "Charging_ Schedule_ Period\r\nurn:x-oca:ocpp:uid:2:233257\r\nCharging schedule period structure defines a time period in a charging schedule.\r\n",
60 "javaType": "ChargingSchedulePeriod",
61 "type": "object",
62 "additionalProperties": false,
63 "properties": {
64 "customData": {
65 "$ref": "#/definitions/CustomDataType"
66 },
67 "startPeriod": {
68 "description": "Charging_ Schedule_ Period. Start_ Period. Elapsed_ Time\r\nurn:x-oca:ocpp:uid:1:569240\r\nStart of the period, in seconds from the start of schedule. The value of StartPeriod also defines the stop time of the previous period.\r\n",
69 "type": "integer"
70 },
71 "limit": {
72 "description": "Charging_ Schedule_ Period. Limit. Measure\r\nurn:x-oca:ocpp:uid:1:569241\r\nCharging rate limit during the schedule period, in the applicable chargingRateUnit, for example in Amperes (A) or Watts (W). Accepts at most one digit fraction (e.g. 8.1).\r\n",
73 "type": "number"
74 },
75 "numberPhases": {
76 "description": "Charging_ Schedule_ Period. Number_ Phases. Counter\r\nurn:x-oca:ocpp:uid:1:569242\r\nThe number of phases that can be used for charging. If a number of phases is needed, numberPhases=3 will be assumed unless another number is given.\r\n",
77 "type": "integer"
78 },
79 "phaseToUse": {
80 "description": "Values: 1..3, Used if numberPhases=1 and if the EVSE is capable of switching the phase connected to the EV, i.e. ACPhaseSwitchingSupported is defined and true. It’s not allowed unless both conditions above are true. If both conditions are true, and phaseToUse is omitted, the Charging Station / EVSE will make the selection on its own.\r\n\r\n",
81 "type": "integer"
82 }
83 },
84 "required": ["startPeriod", "limit"]
85 },
86 "ChargingScheduleType": {
87 "description": "Charging_ Schedule\r\nurn:x-oca:ocpp:uid:2:233256\r\nCharging schedule structure defines a list of charging periods, as used in: GetCompositeSchedule.conf and ChargingProfile. \r\n",
88 "javaType": "ChargingSchedule",
89 "type": "object",
90 "additionalProperties": false,
91 "properties": {
92 "customData": {
93 "$ref": "#/definitions/CustomDataType"
94 },
95 "id": {
96 "description": "Identifies the ChargingSchedule.\r\n",
97 "type": "integer"
98 },
99 "startSchedule": {
100 "description": "Charging_ Schedule. Start_ Schedule. Date_ Time\r\nurn:x-oca:ocpp:uid:1:569237\r\nStarting point of an absolute schedule. If absent the schedule will be relative to start of charging.\r\n",
101 "type": "string",
102 "format": "date-time"
103 },
104 "duration": {
105 "description": "Charging_ Schedule. Duration. Elapsed_ Time\r\nurn:x-oca:ocpp:uid:1:569236\r\nDuration of the charging schedule in seconds. If the duration is left empty, the last period will continue indefinitely or until end of the transaction if chargingProfilePurpose = TxProfile.\r\n",
106 "type": "integer"
107 },
108 "chargingRateUnit": {
109 "$ref": "#/definitions/ChargingRateUnitEnumType"
110 },
111 "chargingSchedulePeriod": {
112 "type": "array",
113 "additionalItems": false,
114 "items": {
115 "$ref": "#/definitions/ChargingSchedulePeriodType"
116 },
117 "minItems": 1,
118 "maxItems": 1024
119 },
120 "minChargingRate": {
121 "description": "Charging_ Schedule. Min_ Charging_ Rate. Numeric\r\nurn:x-oca:ocpp:uid:1:569239\r\nMinimum charging rate supported by the EV. The unit of measure is defined by the chargingRateUnit. This parameter is intended to be used by a local smart charging algorithm to optimize the power allocation for in the case a charging process is inefficient at lower charging rates. Accepts at most one digit fraction (e.g. 8.1)\r\n",
122 "type": "number"
123 },
124 "salesTariff": {
125 "$ref": "#/definitions/SalesTariffType"
126 }
127 },
128 "required": ["id", "chargingRateUnit", "chargingSchedulePeriod"]
129 },
130 "ConsumptionCostType": {
131 "description": "Consumption_ Cost\r\nurn:x-oca:ocpp:uid:2:233259\r\n",
132 "javaType": "ConsumptionCost",
133 "type": "object",
134 "additionalProperties": false,
135 "properties": {
136 "customData": {
137 "$ref": "#/definitions/CustomDataType"
138 },
139 "startValue": {
140 "description": "Consumption_ Cost. Start_ Value. Numeric\r\nurn:x-oca:ocpp:uid:1:569246\r\nThe lowest level of consumption that defines the starting point of this consumption block. The block interval extends to the start of the next interval.\r\n",
141 "type": "number"
142 },
143 "cost": {
144 "type": "array",
145 "additionalItems": false,
146 "items": {
147 "$ref": "#/definitions/CostType"
148 },
149 "minItems": 1,
150 "maxItems": 3
151 }
152 },
153 "required": ["startValue", "cost"]
154 },
155 "CostType": {
156 "description": "Cost\r\nurn:x-oca:ocpp:uid:2:233258\r\n",
157 "javaType": "Cost",
158 "type": "object",
159 "additionalProperties": false,
160 "properties": {
161 "customData": {
162 "$ref": "#/definitions/CustomDataType"
163 },
164 "costKind": {
165 "$ref": "#/definitions/CostKindEnumType"
166 },
167 "amount": {
168 "description": "Cost. Amount. Amount\r\nurn:x-oca:ocpp:uid:1:569244\r\nThe estimated or actual cost per kWh\r\n",
169 "type": "integer"
170 },
171 "amountMultiplier": {
172 "description": "Cost. Amount_ Multiplier. Integer\r\nurn:x-oca:ocpp:uid:1:569245\r\nValues: -3..3, The amountMultiplier defines the exponent to base 10 (dec). The final value is determined by: amount * 10 ^ amountMultiplier\r\n",
173 "type": "integer"
174 }
175 },
176 "required": ["costKind", "amount"]
177 },
178 "RelativeTimeIntervalType": {
179 "description": "Relative_ Timer_ Interval\r\nurn:x-oca:ocpp:uid:2:233270\r\n",
180 "javaType": "RelativeTimeInterval",
181 "type": "object",
182 "additionalProperties": false,
183 "properties": {
184 "customData": {
185 "$ref": "#/definitions/CustomDataType"
186 },
187 "start": {
188 "description": "Relative_ Timer_ Interval. Start. Elapsed_ Time\r\nurn:x-oca:ocpp:uid:1:569279\r\nStart of the interval, in seconds from NOW.\r\n",
189 "type": "integer"
190 },
191 "duration": {
192 "description": "Relative_ Timer_ Interval. Duration. Elapsed_ Time\r\nurn:x-oca:ocpp:uid:1:569280\r\nDuration of the interval, in seconds.\r\n",
193 "type": "integer"
194 }
195 },
196 "required": ["start"]
197 },
198 "SalesTariffEntryType": {
199 "description": "Sales_ Tariff_ Entry\r\nurn:x-oca:ocpp:uid:2:233271\r\n",
200 "javaType": "SalesTariffEntry",
201 "type": "object",
202 "additionalProperties": false,
203 "properties": {
204 "customData": {
205 "$ref": "#/definitions/CustomDataType"
206 },
207 "relativeTimeInterval": {
208 "$ref": "#/definitions/RelativeTimeIntervalType"
209 },
210 "ePriceLevel": {
211 "description": "Sales_ Tariff_ Entry. E_ Price_ Level. Unsigned_ Integer\r\nurn:x-oca:ocpp:uid:1:569281\r\nDefines the price level of this SalesTariffEntry (referring to NumEPriceLevels). Small values for the EPriceLevel represent a cheaper TariffEntry. Large values for the EPriceLevel represent a more expensive TariffEntry.\r\n",
212 "type": "integer",
213 "minimum": 0.0
214 },
215 "consumptionCost": {
216 "type": "array",
217 "additionalItems": false,
218 "items": {
219 "$ref": "#/definitions/ConsumptionCostType"
220 },
221 "minItems": 1,
222 "maxItems": 3
223 }
224 },
225 "required": ["relativeTimeInterval"]
226 },
227 "SalesTariffType": {
228 "description": "Sales_ Tariff\r\nurn:x-oca:ocpp:uid:2:233272\r\nNOTE: This dataType is based on dataTypes from <<ref-ISOIEC15118-2,ISO 15118-2>>.\r\n",
229 "javaType": "SalesTariff",
230 "type": "object",
231 "additionalProperties": false,
232 "properties": {
233 "customData": {
234 "$ref": "#/definitions/CustomDataType"
235 },
236 "id": {
237 "description": "Identified_ Object. MRID. Numeric_ Identifier\r\nurn:x-enexis:ecdm:uid:1:569198\r\nSalesTariff identifier used to identify one sales tariff. An SAID remains a unique identifier for one schedule throughout a charging session.\r\n",
238 "type": "integer"
239 },
240 "salesTariffDescription": {
241 "description": "Sales_ Tariff. Sales. Tariff_ Description\r\nurn:x-oca:ocpp:uid:1:569283\r\nA human readable title/short description of the sales tariff e.g. for HMI display purposes.\r\n",
242 "type": "string",
243 "maxLength": 32
244 },
245 "numEPriceLevels": {
246 "description": "Sales_ Tariff. Num_ E_ Price_ Levels. Counter\r\nurn:x-oca:ocpp:uid:1:569284\r\nDefines the overall number of distinct price levels used across all provided SalesTariff elements.\r\n",
247 "type": "integer"
248 },
249 "salesTariffEntry": {
250 "type": "array",
251 "additionalItems": false,
252 "items": {
253 "$ref": "#/definitions/SalesTariffEntryType"
254 },
255 "minItems": 1,
256 "maxItems": 1024
257 }
258 },
259 "required": ["id", "salesTariffEntry"]
260 }
261 },
262 "type": "object",
263 "additionalProperties": false,
264 "properties": {
265 "customData": {
266 "$ref": "#/definitions/CustomDataType"
267 },
268 "chargingSchedule": {
269 "type": "array",
270 "additionalItems": false,
271 "items": {
272 "$ref": "#/definitions/ChargingScheduleType"
273 },
274 "minItems": 1
275 },
276 "evseId": {
277 "description": "The charging schedule contained in this notification applies to an EVSE. evseId must be > 0.\r\n",
278 "type": "integer"
279 },
280 "chargingLimit": {
281 "$ref": "#/definitions/ChargingLimitType"
282 }
283 },
284 "required": ["chargingLimit"]
285 }