@ampeco/public-api-mcp 3.103.11 → 3.103.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -173,6 +173,59 @@
173
173
  }
174
174
  }
175
175
  },
176
+ {
177
+ "path": "/public-api/actions/charge-point/v1.0/{chargePoint}/disconnect",
178
+ "method": "POST",
179
+ "operationId": "chargePointDisconnect",
180
+ "summary": "Charge Point / Disconnect",
181
+ "description": "Disconnect a charge point",
182
+ "tags": [
183
+ "action / charge point"
184
+ ],
185
+ "requestBody": {
186
+ "required": true,
187
+ "content": {
188
+ "application/json": {
189
+ "schema": {
190
+ "type": "object",
191
+ "properties": {
192
+ "reason": {
193
+ "type": "string",
194
+ "maxLength": 255,
195
+ "description": "Human-readable reason for disconnecting the charge point. Used for audit logging purposes."
196
+ }
197
+ },
198
+ "required": [
199
+ "reason"
200
+ ]
201
+ }
202
+ }
203
+ }
204
+ },
205
+ "responses": {
206
+ "202": {
207
+ "description": "Disconnect request accepted"
208
+ },
209
+ "401": {
210
+ "description": "Access token is missing or invalid"
211
+ },
212
+ "403": {
213
+ "description": "You do not have permission to perform the action"
214
+ },
215
+ "404": {
216
+ "description": "The record is not found"
217
+ },
218
+ "409": {
219
+ "description": "Conflict"
220
+ },
221
+ "422": {
222
+ "description": "The payload you provided is invalid"
223
+ },
224
+ "429": {
225
+ "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
226
+ }
227
+ }
228
+ },
176
229
  {
177
230
  "path": "/public-api/actions/charge-point/v1.0/{chargePoint}/get-diagnostics",
178
231
  "method": "POST",
@@ -2075,6 +2128,148 @@
2075
2128
  }
2076
2129
  }
2077
2130
  },
2131
+ {
2132
+ "path": "/public-api/actions/evse/v1.0/bulk-assign-tariff-group",
2133
+ "method": "POST",
2134
+ "operationId": "evseBulkAssignTariffGroups",
2135
+ "summary": "EVSEs / Bulk Assign Tariff Groups",
2136
+ "description": "Bulk assign tariff groups for multiple EVSEs. This action allows you to assign or unassign tariff groups to multiple EVSEs at once, filtered by location, partner, evses and tariff groups. The update is processed synchronously and there is a limit of max 1000 EVSEs per request.",
2137
+ "tags": [
2138
+ "action / evse"
2139
+ ],
2140
+ "requestBody": {
2141
+ "required": true,
2142
+ "content": {
2143
+ "application/json": {
2144
+ "schema": {
2145
+ "type": "object",
2146
+ "properties": {
2147
+ "filters": {
2148
+ "type": "object",
2149
+ "properties": {
2150
+ "locationIds": {
2151
+ "type": "array",
2152
+ "items": {
2153
+ "type": "integer"
2154
+ },
2155
+ "example": [
2156
+ 1,
2157
+ 2,
2158
+ 3
2159
+ ],
2160
+ "description": "Filter EVSEs by location IDs"
2161
+ },
2162
+ "partnerIds": {
2163
+ "type": "array",
2164
+ "items": {
2165
+ "type": "integer"
2166
+ },
2167
+ "example": [
2168
+ 10,
2169
+ 20
2170
+ ],
2171
+ "description": "Filter EVSEs by partner IDs"
2172
+ },
2173
+ "evseIds": {
2174
+ "type": "array",
2175
+ "items": {
2176
+ "type": "integer"
2177
+ },
2178
+ "example": [
2179
+ 10,
2180
+ 20
2181
+ ],
2182
+ "description": "Filter EVSEs by EVSE IDs"
2183
+ },
2184
+ "chargePointIds": {
2185
+ "type": "array",
2186
+ "items": {
2187
+ "type": "integer"
2188
+ },
2189
+ "example": [
2190
+ 10,
2191
+ 20
2192
+ ],
2193
+ "description": "Filter EVSEs by Charge point IDs"
2194
+ },
2195
+ "tariffGroupIds": {
2196
+ "type": "array",
2197
+ "items": {
2198
+ "type": "integer"
2199
+ },
2200
+ "example": [
2201
+ 10,
2202
+ 20
2203
+ ],
2204
+ "description": "Filter EVSEs by tariff group IDs"
2205
+ }
2206
+ },
2207
+ "description": "Optional filters to select EVSEs for bulk update"
2208
+ },
2209
+ "tariffGroupId": {
2210
+ "type": "integer",
2211
+ "example": 42,
2212
+ "nullable": true,
2213
+ "description": "The tariff group ID to assign (null to unassign)"
2214
+ }
2215
+ },
2216
+ "required": [
2217
+ "tariffGroupId"
2218
+ ],
2219
+ "example": {
2220
+ "filters": {
2221
+ "locationIds": [
2222
+ 1,
2223
+ 2
2224
+ ],
2225
+ "partnerIds": [
2226
+ 10
2227
+ ],
2228
+ "evseIds": [
2229
+ 10,
2230
+ 20
2231
+ ],
2232
+ "chargePointIds": [
2233
+ 10,
2234
+ 20
2235
+ ],
2236
+ "tariffGroupIds": [
2237
+ 10
2238
+ ]
2239
+ },
2240
+ "tariffGroupId": 42
2241
+ }
2242
+ }
2243
+ }
2244
+ }
2245
+ },
2246
+ "responses": {
2247
+ "202": {
2248
+ "description": "Action accepted"
2249
+ },
2250
+ "204": {
2251
+ "description": "Action scheduled. Request has been accepted and will be executed when transaction(s) in progress have finished."
2252
+ },
2253
+ "401": {
2254
+ "description": "Access token is missing or invalid"
2255
+ },
2256
+ "403": {
2257
+ "description": "You do not have permission to perform the action"
2258
+ },
2259
+ "404": {
2260
+ "description": "The record is not found"
2261
+ },
2262
+ "406": {
2263
+ "description": "Action rejected by the Charge Point"
2264
+ },
2265
+ "422": {
2266
+ "description": "The payload you provided is invalid"
2267
+ },
2268
+ "429": {
2269
+ "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
2270
+ }
2271
+ }
2272
+ },
2078
2273
  {
2079
2274
  "path": "/public-api/actions/evse/v1.0/{evse}/start",
2080
2275
  "method": "POST",
@@ -5499,7 +5694,7 @@
5499
5694
  },
5500
5695
  "rejectionReason": {
5501
5696
  "type": "string",
5502
- "description": "Reason for rejection (if status is rejected)"
5697
+ "description": "Human-readable reason for rejection. Response behavior: Only present when status is \"rejected\". Omitted for \"pending\" and \"approved\" requests."
5503
5698
  },
5504
5699
  "createdAt": {
5505
5700
  "type": "string",
@@ -5517,84 +5712,239 @@
5517
5712
  "type": "integer",
5518
5713
  "description": "ID of the target location"
5519
5714
  },
5715
+ "externalId": {
5716
+ "type": "string",
5717
+ "maxLength": 255,
5718
+ "description": "External identifier from roaming partner (e.g., OCPI request_id). Response behavior: Only present when an external ID was provided. Omitted when not specified."
5719
+ },
5720
+ "startAt": {
5721
+ "type": "string",
5722
+ "format": "date-time",
5723
+ "description": "Start time of the booking"
5724
+ },
5725
+ "endAt": {
5726
+ "type": "string",
5727
+ "format": "date-time",
5728
+ "description": "End time of the booking"
5729
+ },
5520
5730
  "evseId": {
5521
5731
  "type": "integer",
5522
- "description": "Specific EVSE ID (optional - if not provided, system will choose any available EVSE)"
5732
+ "description": "Specific EVSE ID to book. Response behavior: Only present when a specific EVSE was requested. Omitted when EVSE selection was based on criteria or left to the system."
5523
5733
  },
5524
5734
  "evseCriteria": {
5525
5735
  "type": "object",
5526
5736
  "properties": {
5527
5737
  "currentType": {
5528
- "type": "string",
5529
- "enum": [
5530
- "ac",
5531
- "dc"
5738
+ "oneOf": [
5739
+ {
5740
+ "type": "string",
5741
+ "enum": [
5742
+ "ac",
5743
+ "dc"
5744
+ ],
5745
+ "description": "Type of current available on the EVSE: - **ac**: Alternating Current (AC) charging - **dc**: Direct Current (DC) fast charging"
5746
+ },
5747
+ {
5748
+ "type": "null"
5749
+ }
5532
5750
  ],
5533
- "description": "Type of current available on the EVSE: - **ac**: Alternating Current (AC) charging - **dc**: Direct Current (DC) fast charging"
5751
+ "description": "Required current type (AC or DC). Omitted in response when not specified."
5534
5752
  },
5535
5753
  "minPower": {
5536
5754
  "type": "number",
5537
- "description": "Minimum power requirement (kW)"
5755
+ "description": "Minimum power requirement in kW. Omitted in response when not specified."
5538
5756
  },
5539
5757
  "maxPower": {
5540
5758
  "type": "number",
5541
- "description": "Maximum power requirement (kW)"
5759
+ "description": "Maximum power requirement in kW. Omitted in response when not specified."
5542
5760
  },
5543
5761
  "connectorType": {
5544
- "type": "string",
5545
- "enum": [
5546
- "type1",
5547
- "type2",
5548
- "type3",
5549
- "chademo",
5550
- "ccs1",
5551
- "ccs2",
5552
- "schuko",
5553
- "nacs",
5554
- "cee16",
5555
- "cee32",
5556
- "j1772",
5557
- "inductive",
5558
- "nema-5-20",
5559
- "type-e-french",
5560
- "type-g-british",
5561
- "type-j-swiss",
5562
- "avcon",
5563
- "gb-t-ac",
5564
- "gb-t-dc",
5565
- "chaoji",
5566
- "nema-6-30",
5567
- "nema-6-50"
5762
+ "oneOf": [
5763
+ {
5764
+ "type": "string",
5765
+ "enum": [
5766
+ "type1",
5767
+ "type2",
5768
+ "type3",
5769
+ "chademo",
5770
+ "ccs1",
5771
+ "ccs2",
5772
+ "schuko",
5773
+ "nacs",
5774
+ "cee16",
5775
+ "cee32",
5776
+ "j1772",
5777
+ "inductive",
5778
+ "nema-5-20",
5779
+ "type-e-french",
5780
+ "type-g-british",
5781
+ "type-j-swiss",
5782
+ "avcon",
5783
+ "gb-t-ac",
5784
+ "gb-t-dc",
5785
+ "chaoji",
5786
+ "nema-6-30",
5787
+ "nema-6-50"
5788
+ ],
5789
+ "description": "Type of connector available on the EVSE: - **type1**: Type 1 connector (SAE J1772 AC) - **type2**: Type 2 connector (IEC 62196-2 AC) - **type3**: Type 3 connector (IEC 62196-2 AC) - **chademo**: CHAdeMO DC fast charging - **ccs1**: Combined Charging System 1 (CCS1/Combo 1) - **ccs2**: Combined Charging System 2 (CCS2/Combo 2) - **schuko**: Standard European household socket - **nacs**: North American Charging Standard (Tesla) - **cee16**: CEE 16A industrial connector - **cee32**: CEE 32A industrial connector - **j1772**: SAE J1772 connector - **inductive**: Inductive/wireless charging - **nema-5-20**: Domestic M NEMA 5-20 Socket - **type-e-french**: French Type E socket - **type-g-british**: British Type G socket - **type-j-swiss**: Swiss Type J socket - **avcon**: AVCON connector (Australian standard) - **gb-t-ac**: GB/T AC connector (Chinese standard) - **gb-t-dc**: GB/T DC connector (Chinese standard) - **chaoji**: ChaoJi (CHAdeMO 3.0) - **nema-6-30**: NEMA 6-30 - **nema-6-50**: NEMA 6-50"
5790
+ },
5791
+ {
5792
+ "type": "null"
5793
+ }
5568
5794
  ],
5569
- "description": "Type of connector available on the EVSE: - **type1**: Type 1 connector (SAE J1772 AC) - **type2**: Type 2 connector (IEC 62196-2 AC) - **type3**: Type 3 connector (IEC 62196-2 AC) - **chademo**: CHAdeMO DC fast charging - **ccs1**: Combined Charging System 1 (CCS1/Combo 1) - **ccs2**: Combined Charging System 2 (CCS2/Combo 2) - **schuko**: Standard European household socket - **nacs**: North American Charging Standard (Tesla) - **cee16**: CEE 16A industrial connector - **cee32**: CEE 32A industrial connector - **j1772**: SAE J1772 connector - **inductive**: Inductive/wireless charging - **nema-5-20**: Domestic M NEMA 5-20 Socket - **type-e-french**: French Type E socket - **type-g-british**: British Type G socket - **type-j-swiss**: Swiss Type J socket - **avcon**: AVCON connector (Australian standard) - **gb-t-ac**: GB/T AC connector (Chinese standard) - **gb-t-dc**: GB/T DC connector (Chinese standard) - **chaoji**: ChaoJi (CHAdeMO 3.0) - **nema-6-30**: NEMA 6-30 - **nema-6-50**: NEMA 6-50"
5795
+ "description": "Required connector type. Omitted in response when not specified."
5570
5796
  }
5571
5797
  },
5572
- "description": "Criteria for selecting EVSE to be booked, not used if `evseId` is passed"
5798
+ "description": "Criteria for automatic EVSE selection based on technical requirements. Ignored when evseId is explicitly provided. Response behavior: Only present when EVSE criteria were specified in the request. Omitted when evseId was provided or no criteria were specified."
5799
+ },
5800
+ "parkingSpaceCriteria": {
5801
+ "type": "object",
5802
+ "properties": {
5803
+ "vehicleWeightKg": {
5804
+ "type": "integer",
5805
+ "minimum": 1,
5806
+ "description": "Vehicle weight in kilograms. Omitted in response when not specified."
5807
+ },
5808
+ "vehicleHeightCm": {
5809
+ "type": "integer",
5810
+ "minimum": 1,
5811
+ "description": "Vehicle height in centimeters. Omitted in response when not specified."
5812
+ },
5813
+ "vehicleLengthCm": {
5814
+ "type": "integer",
5815
+ "minimum": 1,
5816
+ "description": "Vehicle length in centimeters. Omitted in response when not specified."
5817
+ },
5818
+ "vehicleWidthCm": {
5819
+ "type": "integer",
5820
+ "minimum": 1,
5821
+ "description": "Vehicle width in centimeters. Omitted in response when not specified."
5822
+ },
5823
+ "vehicleType": {
5824
+ "oneOf": [
5825
+ {
5826
+ "type": "string",
5827
+ "enum": [
5828
+ "two_and_three_wheel_vehicles_and_quadricycles",
5829
+ "passenger_vehicles",
5830
+ "passenger_vehicles_with_trailer",
5831
+ "light_duty_vans",
5832
+ "heavy_duty_tractor_units_without_trailer",
5833
+ "heavy_duty_trucks_without_articulation_point",
5834
+ "heavy_duty_trucks_with_trailer_attached",
5835
+ "buses_or_motor_coaches"
5836
+ ],
5837
+ "description": "Type of vehicle that can use the parking space: - **two_and_three_wheel_vehicles_and_quadricycles**: Motorcycles, scooters, and similar - **passenger_vehicles**: Standard cars - **passenger_vehicles_with_trailer**: Cars with trailers attached - **light_duty_vans**: Small commercial vans - **heavy_duty_tractor_units_without_trailer**: Heavy trucks without trailer - **heavy_duty_trucks_without_articulation_point**: Heavy trucks without articulation - **heavy_duty_trucks_with_trailer_attached**: Heavy trucks with trailer - **buses_or_motor_coaches**: Buses and coaches"
5838
+ },
5839
+ {
5840
+ "type": "null"
5841
+ }
5842
+ ],
5843
+ "description": "Required vehicle type. Omitted in response when not specified."
5844
+ },
5845
+ "driveThroughRequired": {
5846
+ "type": "boolean",
5847
+ "description": "Whether parking space must support drive-through charging. Omitted in response when not specified."
5848
+ },
5849
+ "refrigerationOutletRequired": {
5850
+ "type": "boolean",
5851
+ "description": "Whether parking space must have refrigeration outlet. Omitted in response when not specified."
5852
+ },
5853
+ "dangerousGoodsAllowed": {
5854
+ "type": "boolean",
5855
+ "description": "Whether parking space must allow dangerous goods vehicles. Omitted in response when not specified."
5856
+ }
5857
+ },
5858
+ "description": "Parking space criteria for selecting EVSE with suitable parking. Response behavior: This property is only included in the response when parking criteria were specified in the request. If no criteria were provided, this property is omitted entirely."
5859
+ },
5860
+ "authorizedTokenIds": {
5861
+ "type": "array",
5862
+ "items": {
5863
+ "type": "integer"
5864
+ },
5865
+ "description": "Array of OCPI token IDs that are authorized for this booking. Multiple tokens allow flexibility for roaming users who may have multiple valid authentication methods (e.g., RFID card and mobile app token). When omitted, the booking will not have specific token authorization."
5866
+ }
5867
+ },
5868
+ "required": [
5869
+ "type",
5870
+ "userId",
5871
+ "locationId",
5872
+ "startAt",
5873
+ "endAt"
5874
+ ],
5875
+ "description": "Base properties for create booking request (shared between input and response)"
5876
+ },
5877
+ {
5878
+ "type": "object",
5879
+ "properties": {
5880
+ "id": {
5881
+ "type": "integer",
5882
+ "description": "System-generated unique identifier"
5883
+ },
5884
+ "type": {
5885
+ "type": "string",
5886
+ "enum": [
5887
+ "update"
5888
+ ],
5889
+ "description": "Type of booking request - must be \"update\""
5890
+ },
5891
+ "status": {
5892
+ "type": "string",
5893
+ "enum": [
5894
+ "pending",
5895
+ "approved",
5896
+ "rejected"
5897
+ ],
5898
+ "description": "Status of booking request: - **pending**: Request is awaiting processing - **approved**: Request has been approved - **rejected**: Request has been rejected"
5899
+ },
5900
+ "rejectionReason": {
5901
+ "type": "string",
5902
+ "description": "Human-readable reason for rejection. Response behavior: Only present when status is \"rejected\". Omitted for \"pending\" and \"approved\" requests."
5903
+ },
5904
+ "createdAt": {
5905
+ "type": "string",
5906
+ "format": "date-time"
5907
+ },
5908
+ "lastUpdatedAt": {
5909
+ "type": "string",
5910
+ "format": "date-time"
5911
+ },
5912
+ "bookingId": {
5913
+ "type": "integer",
5914
+ "description": "ID of the target booking to update"
5915
+ },
5916
+ "userId": {
5917
+ "type": "integer",
5918
+ "description": "ID of the user for whom the booking is made"
5919
+ },
5920
+ "externalId": {
5921
+ "type": "string",
5922
+ "maxLength": 255,
5923
+ "description": "External identifier from roaming partner (e.g., OCPI request_id). Response behavior: Only present when an external ID was provided. Omitted when not specified."
5573
5924
  },
5574
5925
  "startAt": {
5575
5926
  "type": "string",
5576
5927
  "format": "date-time",
5577
- "description": "Start time of the booking"
5928
+ "description": "Updated start time of the booking"
5578
5929
  },
5579
5930
  "endAt": {
5580
5931
  "type": "string",
5581
5932
  "format": "date-time",
5582
- "description": "End time of the booking"
5933
+ "description": "Updated end time of the booking"
5583
5934
  },
5584
- "externalId": {
5585
- "type": "string",
5586
- "maxLength": 255,
5587
- "nullable": true,
5588
- "description": "External identifier from roaming partner (e.g., OCPI request_id)"
5935
+ "authorizedTokenIds": {
5936
+ "type": "array",
5937
+ "items": {
5938
+ "type": "integer"
5939
+ },
5940
+ "description": "Array of OCPI token IDs that are authorized for this booking. Multiple tokens allow flexibility for roaming users who may have multiple valid authentication methods (e.g., RFID card and mobile app token). When omitted, the booking will not have specific token authorization."
5589
5941
  }
5590
5942
  },
5591
5943
  "required": [
5592
5944
  "type",
5593
- "userId",
5594
- "locationId",
5595
- "startAt",
5596
- "endAt"
5597
- ]
5945
+ "bookingId"
5946
+ ],
5947
+ "description": "Base properties for update booking request (shared between input and response)"
5598
5948
  },
5599
5949
  {
5600
5950
  "type": "object",
@@ -5606,9 +5956,9 @@
5606
5956
  "type": {
5607
5957
  "type": "string",
5608
5958
  "enum": [
5609
- "update"
5959
+ "cancel"
5610
5960
  ],
5611
- "description": "Type of booking request - must be \"update\""
5961
+ "description": "Type of booking request - must be \"cancel\""
5612
5962
  },
5613
5963
  "status": {
5614
5964
  "type": "string",
@@ -5621,72 +5971,7 @@
5621
5971
  },
5622
5972
  "rejectionReason": {
5623
5973
  "type": "string",
5624
- "description": "Reason for rejection (if status is rejected)"
5625
- },
5626
- "createdAt": {
5627
- "type": "string",
5628
- "format": "date-time"
5629
- },
5630
- "lastUpdatedAt": {
5631
- "type": "string",
5632
- "format": "date-time"
5633
- },
5634
- "bookingId": {
5635
- "type": "integer",
5636
- "description": "ID of the target booking to update"
5637
- },
5638
- "userId": {
5639
- "type": "integer",
5640
- "description": "ID of the user for whom the booking is made"
5641
- },
5642
- "startAt": {
5643
- "type": "string",
5644
- "format": "date-time",
5645
- "description": "Updated start time of the booking"
5646
- },
5647
- "endAt": {
5648
- "type": "string",
5649
- "format": "date-time",
5650
- "description": "Updated end time of the booking"
5651
- },
5652
- "externalId": {
5653
- "type": "string",
5654
- "maxLength": 255,
5655
- "nullable": true,
5656
- "description": "External identifier from roaming partner (e.g., OCPI request_id)"
5657
- }
5658
- },
5659
- "required": [
5660
- "type",
5661
- "bookingId"
5662
- ]
5663
- },
5664
- {
5665
- "type": "object",
5666
- "properties": {
5667
- "id": {
5668
- "type": "integer",
5669
- "description": "System-generated unique identifier"
5670
- },
5671
- "type": {
5672
- "type": "string",
5673
- "enum": [
5674
- "cancel"
5675
- ],
5676
- "description": "Type of booking request - must be \"cancel\""
5677
- },
5678
- "status": {
5679
- "type": "string",
5680
- "enum": [
5681
- "pending",
5682
- "approved",
5683
- "rejected"
5684
- ],
5685
- "description": "Status of booking request: - **pending**: Request is awaiting processing - **approved**: Request has been approved - **rejected**: Request has been rejected"
5686
- },
5687
- "rejectionReason": {
5688
- "type": "string",
5689
- "description": "Reason for rejection (if status is rejected)"
5974
+ "description": "Human-readable reason for rejection. Response behavior: Only present when status is \"rejected\". Omitted for \"pending\" and \"approved\" requests."
5690
5975
  },
5691
5976
  "createdAt": {
5692
5977
  "type": "string",
@@ -5703,8 +5988,7 @@
5703
5988
  "externalId": {
5704
5989
  "type": "string",
5705
5990
  "maxLength": 255,
5706
- "nullable": true,
5707
- "description": "External identifier from roaming partner (e.g., OCPI request_id)"
5991
+ "description": "External identifier from roaming partner (e.g., OCPI request_id). Response behavior: Only present when an external ID was provided. Omitted when not specified."
5708
5992
  }
5709
5993
  },
5710
5994
  "required": [
@@ -12695,6 +12979,73 @@
12695
12979
  }
12696
12980
  }
12697
12981
  },
12982
+ {
12983
+ "path": "/public-api/resources/consents/v1.0",
12984
+ "method": "POST",
12985
+ "operationId": "consentsCreate",
12986
+ "summary": "Consents / Create",
12987
+ "description": "Create user consent for a specific term version. If a consent already exists for the given user and term version combination, the request will fail with a 409 Conflict error.",
12988
+ "tags": [
12989
+ "resource / consents"
12990
+ ],
12991
+ "requestBody": {
12992
+ "required": true,
12993
+ "content": {
12994
+ "application/json": {
12995
+ "schema": {
12996
+ "type": "object",
12997
+ "properties": {
12998
+ "userId": {
12999
+ "type": "integer",
13000
+ "description": "The ID of the user for whom consent is being created"
13001
+ },
13002
+ "termVersionId": {
13003
+ "type": "integer",
13004
+ "description": "The ID of the specific term version for which consent is being given or rejected"
13005
+ },
13006
+ "status": {
13007
+ "type": "string",
13008
+ "enum": [
13009
+ "agreed",
13010
+ "rejected"
13011
+ ],
13012
+ "example": "agreed",
13013
+ "description": "The consent status: - agreed: User has agreed to the terms - rejected: User has explicitly rejected the terms"
13014
+ }
13015
+ },
13016
+ "required": [
13017
+ "userId",
13018
+ "termVersionId",
13019
+ "status"
13020
+ ]
13021
+ }
13022
+ }
13023
+ }
13024
+ },
13025
+ "responses": {
13026
+ "201": {
13027
+ "description": "Consent created successfully"
13028
+ },
13029
+ "400": {
13030
+ "description": "Bad Request"
13031
+ },
13032
+ "401": {
13033
+ "description": "Access token is missing or invalid"
13034
+ },
13035
+ "403": {
13036
+ "description": "You do not have permission to perform the action"
13037
+ },
13038
+ "409": {
13039
+ "description": "Conflict"
13040
+ },
13041
+ "422": {
13042
+ "description": "The payload you provided is invalid"
13043
+ },
13044
+ "429": {
13045
+ "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
13046
+ }
13047
+ }
13048
+ },
12698
13049
  {
12699
13050
  "path": "/public-api/resources/contact-details/v2.0",
12700
13051
  "method": "GET",
@@ -21045,6 +21396,10 @@
21045
21396
  "id": {
21046
21397
  "type": "integer"
21047
21398
  },
21399
+ "externalId": {
21400
+ "type": "string",
21401
+ "nullable": true
21402
+ },
21048
21403
  "name": {
21049
21404
  "type": "array",
21050
21405
  "items": {
@@ -21060,7 +21415,7 @@
21060
21415
  }
21061
21416
  }
21062
21417
  },
21063
- "shortDescription": {
21418
+ "description": {
21064
21419
  "type": "array",
21065
21420
  "items": {
21066
21421
  "type": "object",
@@ -21075,7 +21430,7 @@
21075
21430
  }
21076
21431
  }
21077
21432
  },
21078
- "description": {
21433
+ "shortDescription": {
21079
21434
  "type": "array",
21080
21435
  "items": {
21081
21436
  "type": "object",
@@ -21105,50 +21460,6 @@
21105
21460
  }
21106
21461
  }
21107
21462
  },
21108
- "locationImage": {
21109
- "type": "object",
21110
- "properties": {
21111
- "original": {
21112
- "type": "string",
21113
- "description": "URL to the original image"
21114
- },
21115
- "thumbnail": {
21116
- "type": "string",
21117
- "description": "URL to a thumbnail image"
21118
- },
21119
- "mimeType": {
21120
- "type": "string"
21121
- }
21122
- },
21123
- "required": [
21124
- "original",
21125
- "mimeType"
21126
- ]
21127
- },
21128
- "images": {
21129
- "type": "array",
21130
- "items": {
21131
- "type": "object",
21132
- "properties": {
21133
- "original": {
21134
- "type": "string",
21135
- "description": "URL to the original image"
21136
- },
21137
- "thumbnail": {
21138
- "type": "string",
21139
- "description": "URL to a thumbnail image"
21140
- },
21141
- "mimeType": {
21142
- "type": "string"
21143
- }
21144
- },
21145
- "required": [
21146
- "original",
21147
- "mimeType"
21148
- ]
21149
- },
21150
- "description": "If `include[]=images` is provided with the request, this array will contain the properties of all images assigned to the location."
21151
- },
21152
21463
  "geoposition": {
21153
21464
  "type": "object",
21154
21465
  "properties": {
@@ -21639,6 +21950,118 @@
21639
21950
  "type": "string",
21640
21951
  "nullable": true
21641
21952
  },
21953
+ "timezone": {
21954
+ "type": "string",
21955
+ "nullable": true,
21956
+ "description": "A valid timezone in the form of Area/Location, required when `Allow Multiple Time Zones` option is turned on in the Timezone Setting."
21957
+ },
21958
+ "parkingType": {
21959
+ "type": "string",
21960
+ "enum": [
21961
+ "ALONG_MOTORWAY",
21962
+ "PARKING_GARAGE",
21963
+ "PARKING_LOT",
21964
+ "ON_DRIVEWAY",
21965
+ "ON_STREET",
21966
+ "UNDERGROUND_GARAGE"
21967
+ ],
21968
+ "nullable": true,
21969
+ "description": "Indicates the type of parking available at the charging location. This field helps EV drivers understand the physical parking environment before arrival. **Valid values:** - `ALONG_MOTORWAY` - Located along a motorway/highway, typically at rest areas or service stations - `PARKING_GARAGE` - Multi-level parking garage structure, either above-ground or mixed-use - `PARKING_LOT` - Surface parking lot, open-air parking area - `ON_DRIVEWAY` - Located on a private driveway, typically residential or small business - `ON_STREET` - Street-side parking, curbside charging locations - `UNDERGROUND_GARAGE` - Underground parking structure, subterranean parking facility **Request behavior (POST/PATCH):** - Optional field when creating or updating locations - Send `null` to clear the parking type - Omit the field in PATCH requests to leave the existing value unchanged **Response behavior (GET):** - Field is omitted from the response when no parking type is configured (null in database) - When present, returns one of the valid enum values listed above"
21970
+ },
21971
+ "accessMethods": {
21972
+ "type": "array",
21973
+ "items": {
21974
+ "type": "string",
21975
+ "enum": [
21976
+ "OPEN",
21977
+ "TOKEN",
21978
+ "LICENSE_PLATE",
21979
+ "ACCESS_CODE",
21980
+ "INTERCOM",
21981
+ "PARKING_TICKET"
21982
+ ]
21983
+ },
21984
+ "example": [
21985
+ "OPEN",
21986
+ "TOKEN"
21987
+ ],
21988
+ "nullable": true,
21989
+ "description": "Physical access methods available at this location. Multiple methods can be selected if the site supports different access types. **Request behavior (POST/PATCH):** - Optional field when creating or updating locations - Send `null` to clear all access methods - Send `[]` to store an empty access methods list - Duplicate values are automatically de-duplicated before storage - Omit the field in PATCH requests to leave the existing value unchanged **Response behavior (GET):** - Field is omitted from the response when no access methods are configured (null in database) - When access methods are configured but the array is empty, returns an empty array `[]` - When present, returns an array of valid enum values listed above **Available methods:** - `OPEN` - Publicly accessible without restrictions - `TOKEN` - Access via RFID token or card - `LICENSE_PLATE` - Access via license plate recognition - `ACCESS_CODE` - Access via PIN/access code entry - `INTERCOM` - Access via intercom system - `PARKING_TICKET` - Access via parking ticket validation"
21990
+ },
21991
+ "facilities": {
21992
+ "type": "array",
21993
+ "items": {
21994
+ "type": "string",
21995
+ "enum": [
21996
+ "AIRPORT",
21997
+ "BIKE_SHARING",
21998
+ "BUS_STOP",
21999
+ "CAFE",
22000
+ "CARPOOL_PARKING",
22001
+ "FUEL_STATION",
22002
+ "HOTEL",
22003
+ "MALL",
22004
+ "METRO_STATION",
22005
+ "MUSEUM",
22006
+ "NATURE",
22007
+ "PARKING_LOT",
22008
+ "RECREATION_AREA",
22009
+ "RESTAURANT",
22010
+ "SPORT",
22011
+ "SUPERMARKET",
22012
+ "TAXI_STAND",
22013
+ "TRAIN_STATION",
22014
+ "TRAM_STOP",
22015
+ "WIFI"
22016
+ ]
22017
+ },
22018
+ "nullable": true,
22019
+ "description": "Describes amenities and facilities available at or near the charging location. Most values are self-explanatory. Special categories include: - `RECREATION_AREA` - Parks, playgrounds, or leisure facilities - `CARPOOL_PARKING` - Dedicated parking for carpooling/ridesharing - `NATURE` - Natural attractions or green spaces **Request behavior (POST/PATCH):** - Optional field when creating or updating locations - Send `null` to clear all facilities - Send `[]` to store an empty facilities list - Duplicate values are automatically de-duplicated before storage - Omit the field in PATCH requests to leave the existing value unchanged **Response behavior (GET):** - Field is omitted from the response when no facilities are configured (null in database) - When facilities are configured but the array is empty, returns an empty array `[]` - When present, returns an array of valid enum values listed above"
22020
+ },
22021
+ "locationImage": {
22022
+ "type": "object",
22023
+ "properties": {
22024
+ "original": {
22025
+ "type": "string",
22026
+ "description": "URL to the original image"
22027
+ },
22028
+ "thumbnail": {
22029
+ "type": "string",
22030
+ "description": "URL to a thumbnail image"
22031
+ },
22032
+ "mimeType": {
22033
+ "type": "string"
22034
+ }
22035
+ },
22036
+ "required": [
22037
+ "original",
22038
+ "mimeType"
22039
+ ]
22040
+ },
22041
+ "images": {
22042
+ "type": "array",
22043
+ "items": {
22044
+ "type": "object",
22045
+ "properties": {
22046
+ "original": {
22047
+ "type": "string",
22048
+ "description": "URL to the original image"
22049
+ },
22050
+ "thumbnail": {
22051
+ "type": "string",
22052
+ "description": "URL to a thumbnail image"
22053
+ },
22054
+ "mimeType": {
22055
+ "type": "string"
22056
+ }
22057
+ },
22058
+ "required": [
22059
+ "original",
22060
+ "mimeType"
22061
+ ]
22062
+ },
22063
+ "description": "If `include[]=images` is provided with the request, this array will contain the properties of all images assigned to the location."
22064
+ },
21642
22065
  "workingHours": {
21643
22066
  "type": "object",
21644
22067
  "properties": {
@@ -21833,24 +22256,6 @@
21833
22256
  }
21834
22257
  }
21835
22258
  },
21836
- "timezone": {
21837
- "type": "string",
21838
- "nullable": true,
21839
- "description": "A valid timezone in the form of Area/Location, required when `Allow Multiple Time Zones` option is turned on in the Timezone Setting."
21840
- },
21841
- "externalId": {
21842
- "type": "string",
21843
- "nullable": true
21844
- },
21845
- "roamingOperatorId": {
21846
- "type": "integer",
21847
- "description": "For roaming Locations, the ID of the roaming operator is provided."
21848
- },
21849
- "lastUpdatedAt": {
21850
- "type": "string",
21851
- "format": "date-time",
21852
- "description": "ISO 8601 formatted date"
21853
- },
21854
22259
  "chargingZones": {
21855
22260
  "type": "array",
21856
22261
  "items": {
@@ -21917,11 +22322,9 @@
21917
22322
  },
21918
22323
  "description": "If `include[]=chargingZones` is provided with the request, the location charging zones will be provided here."
21919
22324
  },
21920
- "externalAppData": {
21921
- "type": "object",
21922
- "additionalProperties": true,
21923
- "nullable": true,
21924
- "description": "Used to hold any external application data related to the session."
22325
+ "roamingOperatorId": {
22326
+ "type": "integer",
22327
+ "description": "For roaming Locations, the ID of the roaming operator is provided."
21925
22328
  },
21926
22329
  "roaming": {
21927
22330
  "type": "object",
@@ -21962,17 +22365,16 @@
21962
22365
  "type": "string"
21963
22366
  }
21964
22367
  },
21965
- "accessMethods": {
21966
- "type": "array",
21967
- "items": {
21968
- "type": "string"
21969
- },
21970
- "example": [
21971
- "OPEN",
21972
- "TOKEN"
21973
- ],
22368
+ "externalAppData": {
22369
+ "type": "object",
22370
+ "additionalProperties": true,
21974
22371
  "nullable": true,
21975
- "description": "Physical access methods available at this location. Multiple methods can be selected if the site supports different access types. **Request behavior**: Send `null` to clear, `[]` for empty, omit to leave unchanged. **Available methods**: - **OPEN**: Publicly accessible without restrictions - **TOKEN**: Access via RFID token or card - **LICENSE_PLATE**: Access via license plate recognition - **ACCESS_CODE**: Access via PIN/access code entry - **INTERCOM**: Access via intercom system - **PARKING_TICKET**: Access via parking ticket validation"
22372
+ "description": "Used to hold any external application data related to the session."
22373
+ },
22374
+ "lastUpdatedAt": {
22375
+ "type": "string",
22376
+ "format": "date-time",
22377
+ "description": "ISO 8601 formatted date"
21976
22378
  }
21977
22379
  },
21978
22380
  "required": [
@@ -22079,6 +22481,10 @@
22079
22481
  "id": {
22080
22482
  "type": "integer"
22081
22483
  },
22484
+ "externalId": {
22485
+ "type": "string",
22486
+ "nullable": true
22487
+ },
22082
22488
  "name": {
22083
22489
  "type": "array",
22084
22490
  "items": {
@@ -22094,7 +22500,7 @@
22094
22500
  }
22095
22501
  }
22096
22502
  },
22097
- "shortDescription": {
22503
+ "description": {
22098
22504
  "type": "array",
22099
22505
  "items": {
22100
22506
  "type": "object",
@@ -22109,7 +22515,7 @@
22109
22515
  }
22110
22516
  }
22111
22517
  },
22112
- "description": {
22518
+ "shortDescription": {
22113
22519
  "type": "array",
22114
22520
  "items": {
22115
22521
  "type": "object",
@@ -22139,50 +22545,6 @@
22139
22545
  }
22140
22546
  }
22141
22547
  },
22142
- "locationImage": {
22143
- "type": "object",
22144
- "properties": {
22145
- "original": {
22146
- "type": "string",
22147
- "description": "URL to the original image"
22148
- },
22149
- "thumbnail": {
22150
- "type": "string",
22151
- "description": "URL to a thumbnail image"
22152
- },
22153
- "mimeType": {
22154
- "type": "string"
22155
- }
22156
- },
22157
- "required": [
22158
- "original",
22159
- "mimeType"
22160
- ]
22161
- },
22162
- "images": {
22163
- "type": "array",
22164
- "items": {
22165
- "type": "object",
22166
- "properties": {
22167
- "original": {
22168
- "type": "string",
22169
- "description": "URL to the original image"
22170
- },
22171
- "thumbnail": {
22172
- "type": "string",
22173
- "description": "URL to a thumbnail image"
22174
- },
22175
- "mimeType": {
22176
- "type": "string"
22177
- }
22178
- },
22179
- "required": [
22180
- "original",
22181
- "mimeType"
22182
- ]
22183
- },
22184
- "description": "If `include[]=images` is provided with the request, this array will contain the properties of all images assigned to the location."
22185
- },
22186
22548
  "geoposition": {
22187
22549
  "type": "object",
22188
22550
  "properties": {
@@ -22673,6 +23035,118 @@
22673
23035
  "type": "string",
22674
23036
  "nullable": true
22675
23037
  },
23038
+ "timezone": {
23039
+ "type": "string",
23040
+ "nullable": true,
23041
+ "description": "A valid timezone in the form of Area/Location, required when `Allow Multiple Time Zones` option is turned on in the Timezone Setting."
23042
+ },
23043
+ "parkingType": {
23044
+ "type": "string",
23045
+ "enum": [
23046
+ "ALONG_MOTORWAY",
23047
+ "PARKING_GARAGE",
23048
+ "PARKING_LOT",
23049
+ "ON_DRIVEWAY",
23050
+ "ON_STREET",
23051
+ "UNDERGROUND_GARAGE"
23052
+ ],
23053
+ "nullable": true,
23054
+ "description": "Indicates the type of parking available at the charging location. This field helps EV drivers understand the physical parking environment before arrival. **Valid values:** - `ALONG_MOTORWAY` - Located along a motorway/highway, typically at rest areas or service stations - `PARKING_GARAGE` - Multi-level parking garage structure, either above-ground or mixed-use - `PARKING_LOT` - Surface parking lot, open-air parking area - `ON_DRIVEWAY` - Located on a private driveway, typically residential or small business - `ON_STREET` - Street-side parking, curbside charging locations - `UNDERGROUND_GARAGE` - Underground parking structure, subterranean parking facility **Request behavior (POST/PATCH):** - Optional field when creating or updating locations - Send `null` to clear the parking type - Omit the field in PATCH requests to leave the existing value unchanged **Response behavior (GET):** - Field is omitted from the response when no parking type is configured (null in database) - When present, returns one of the valid enum values listed above"
23055
+ },
23056
+ "accessMethods": {
23057
+ "type": "array",
23058
+ "items": {
23059
+ "type": "string",
23060
+ "enum": [
23061
+ "OPEN",
23062
+ "TOKEN",
23063
+ "LICENSE_PLATE",
23064
+ "ACCESS_CODE",
23065
+ "INTERCOM",
23066
+ "PARKING_TICKET"
23067
+ ]
23068
+ },
23069
+ "example": [
23070
+ "OPEN",
23071
+ "TOKEN"
23072
+ ],
23073
+ "nullable": true,
23074
+ "description": "Physical access methods available at this location. Multiple methods can be selected if the site supports different access types. **Request behavior (POST/PATCH):** - Optional field when creating or updating locations - Send `null` to clear all access methods - Send `[]` to store an empty access methods list - Duplicate values are automatically de-duplicated before storage - Omit the field in PATCH requests to leave the existing value unchanged **Response behavior (GET):** - Field is omitted from the response when no access methods are configured (null in database) - When access methods are configured but the array is empty, returns an empty array `[]` - When present, returns an array of valid enum values listed above **Available methods:** - `OPEN` - Publicly accessible without restrictions - `TOKEN` - Access via RFID token or card - `LICENSE_PLATE` - Access via license plate recognition - `ACCESS_CODE` - Access via PIN/access code entry - `INTERCOM` - Access via intercom system - `PARKING_TICKET` - Access via parking ticket validation"
23075
+ },
23076
+ "facilities": {
23077
+ "type": "array",
23078
+ "items": {
23079
+ "type": "string",
23080
+ "enum": [
23081
+ "AIRPORT",
23082
+ "BIKE_SHARING",
23083
+ "BUS_STOP",
23084
+ "CAFE",
23085
+ "CARPOOL_PARKING",
23086
+ "FUEL_STATION",
23087
+ "HOTEL",
23088
+ "MALL",
23089
+ "METRO_STATION",
23090
+ "MUSEUM",
23091
+ "NATURE",
23092
+ "PARKING_LOT",
23093
+ "RECREATION_AREA",
23094
+ "RESTAURANT",
23095
+ "SPORT",
23096
+ "SUPERMARKET",
23097
+ "TAXI_STAND",
23098
+ "TRAIN_STATION",
23099
+ "TRAM_STOP",
23100
+ "WIFI"
23101
+ ]
23102
+ },
23103
+ "nullable": true,
23104
+ "description": "Describes amenities and facilities available at or near the charging location. Most values are self-explanatory. Special categories include: - `RECREATION_AREA` - Parks, playgrounds, or leisure facilities - `CARPOOL_PARKING` - Dedicated parking for carpooling/ridesharing - `NATURE` - Natural attractions or green spaces **Request behavior (POST/PATCH):** - Optional field when creating or updating locations - Send `null` to clear all facilities - Send `[]` to store an empty facilities list - Duplicate values are automatically de-duplicated before storage - Omit the field in PATCH requests to leave the existing value unchanged **Response behavior (GET):** - Field is omitted from the response when no facilities are configured (null in database) - When facilities are configured but the array is empty, returns an empty array `[]` - When present, returns an array of valid enum values listed above"
23105
+ },
23106
+ "locationImage": {
23107
+ "type": "object",
23108
+ "properties": {
23109
+ "original": {
23110
+ "type": "string",
23111
+ "description": "URL to the original image"
23112
+ },
23113
+ "thumbnail": {
23114
+ "type": "string",
23115
+ "description": "URL to a thumbnail image"
23116
+ },
23117
+ "mimeType": {
23118
+ "type": "string"
23119
+ }
23120
+ },
23121
+ "required": [
23122
+ "original",
23123
+ "mimeType"
23124
+ ]
23125
+ },
23126
+ "images": {
23127
+ "type": "array",
23128
+ "items": {
23129
+ "type": "object",
23130
+ "properties": {
23131
+ "original": {
23132
+ "type": "string",
23133
+ "description": "URL to the original image"
23134
+ },
23135
+ "thumbnail": {
23136
+ "type": "string",
23137
+ "description": "URL to a thumbnail image"
23138
+ },
23139
+ "mimeType": {
23140
+ "type": "string"
23141
+ }
23142
+ },
23143
+ "required": [
23144
+ "original",
23145
+ "mimeType"
23146
+ ]
23147
+ },
23148
+ "description": "If `include[]=images` is provided with the request, this array will contain the properties of all images assigned to the location."
23149
+ },
22676
23150
  "workingHours": {
22677
23151
  "type": "object",
22678
23152
  "properties": {
@@ -22867,24 +23341,6 @@
22867
23341
  }
22868
23342
  }
22869
23343
  },
22870
- "timezone": {
22871
- "type": "string",
22872
- "nullable": true,
22873
- "description": "A valid timezone in the form of Area/Location, required when `Allow Multiple Time Zones` option is turned on in the Timezone Setting."
22874
- },
22875
- "externalId": {
22876
- "type": "string",
22877
- "nullable": true
22878
- },
22879
- "roamingOperatorId": {
22880
- "type": "integer",
22881
- "description": "For roaming Locations, the ID of the roaming operator is provided."
22882
- },
22883
- "lastUpdatedAt": {
22884
- "type": "string",
22885
- "format": "date-time",
22886
- "description": "ISO 8601 formatted date"
22887
- },
22888
23344
  "chargingZones": {
22889
23345
  "type": "array",
22890
23346
  "items": {
@@ -22951,11 +23407,9 @@
22951
23407
  },
22952
23408
  "description": "If `include[]=chargingZones` is provided with the request, the location charging zones will be provided here."
22953
23409
  },
22954
- "externalAppData": {
22955
- "type": "object",
22956
- "additionalProperties": true,
22957
- "nullable": true,
22958
- "description": "Used to hold any external application data related to the session."
23410
+ "roamingOperatorId": {
23411
+ "type": "integer",
23412
+ "description": "For roaming Locations, the ID of the roaming operator is provided."
22959
23413
  },
22960
23414
  "roaming": {
22961
23415
  "type": "object",
@@ -22996,17 +23450,16 @@
22996
23450
  "type": "string"
22997
23451
  }
22998
23452
  },
22999
- "accessMethods": {
23000
- "type": "array",
23001
- "items": {
23002
- "type": "string"
23003
- },
23004
- "example": [
23005
- "OPEN",
23006
- "TOKEN"
23007
- ],
23453
+ "externalAppData": {
23454
+ "type": "object",
23455
+ "additionalProperties": true,
23008
23456
  "nullable": true,
23009
- "description": "Physical access methods available at this location. Multiple methods can be selected if the site supports different access types. **Request behavior**: Send `null` to clear, `[]` for empty, omit to leave unchanged. **Available methods**: - **OPEN**: Publicly accessible without restrictions - **TOKEN**: Access via RFID token or card - **LICENSE_PLATE**: Access via license plate recognition - **ACCESS_CODE**: Access via PIN/access code entry - **INTERCOM**: Access via intercom system - **PARKING_TICKET**: Access via parking ticket validation"
23457
+ "description": "Used to hold any external application data related to the session."
23458
+ },
23459
+ "lastUpdatedAt": {
23460
+ "type": "string",
23461
+ "format": "date-time",
23462
+ "description": "ISO 8601 formatted date"
23010
23463
  }
23011
23464
  }
23012
23465
  }
@@ -28196,7 +28649,8 @@
28196
28649
  "Windcave",
28197
28650
  "Web portal",
28198
28651
  "AdyenCastles",
28199
- "Printec Castles"
28652
+ "Printec Castles",
28653
+ "Cardlink Castles"
28200
28654
  ]
28201
28655
  },
28202
28656
  "chargingZoneId": {
@@ -28292,7 +28746,8 @@
28292
28746
  "Windcave",
28293
28747
  "Web portal",
28294
28748
  "AdyenCastles",
28295
- "Printec Castles"
28749
+ "Printec Castles",
28750
+ "Cardlink Castles"
28296
28751
  ]
28297
28752
  },
28298
28753
  "operatorId": {
@@ -28421,7 +28876,8 @@
28421
28876
  "Windcave",
28422
28877
  "Web portal",
28423
28878
  "AdyenCastles",
28424
- "Printec Castles"
28879
+ "Printec Castles",
28880
+ "Cardlink Castles"
28425
28881
  ]
28426
28882
  },
28427
28883
  "operatorId": {
@@ -28475,7 +28931,8 @@
28475
28931
  "Windcave",
28476
28932
  "Web portal",
28477
28933
  "AdyenCastles",
28478
- "Printec Castles"
28934
+ "Printec Castles",
28935
+ "Cardlink Castles"
28479
28936
  ]
28480
28937
  },
28481
28938
  "operatorId": {
@@ -28535,7 +28992,8 @@
28535
28992
  "Windcave",
28536
28993
  "Web portal",
28537
28994
  "AdyenCastles",
28538
- "Printec Castles"
28995
+ "Printec Castles",
28996
+ "Cardlink Castles"
28539
28997
  ]
28540
28998
  },
28541
28999
  "operatorId": {
@@ -28593,7 +29051,8 @@
28593
29051
  "Windcave",
28594
29052
  "Web portal",
28595
29053
  "AdyenCastles",
28596
- "Printec Castles"
29054
+ "Printec Castles",
29055
+ "Cardlink Castles"
28597
29056
  ]
28598
29057
  },
28599
29058
  "operatorId": {
@@ -28646,7 +29105,8 @@
28646
29105
  "Windcave",
28647
29106
  "Web portal",
28648
29107
  "AdyenCastles",
28649
- "Printec Castles"
29108
+ "Printec Castles",
29109
+ "Cardlink Castles"
28650
29110
  ]
28651
29111
  },
28652
29112
  "operatorId": {
@@ -28727,7 +29187,8 @@
28727
29187
  "Windcave",
28728
29188
  "Web portal",
28729
29189
  "AdyenCastles",
28730
- "Printec Castles"
29190
+ "Printec Castles",
29191
+ "Cardlink Castles"
28731
29192
  ]
28732
29193
  },
28733
29194
  "operatorId": {
@@ -28780,7 +29241,8 @@
28780
29241
  "Windcave",
28781
29242
  "Web portal",
28782
29243
  "AdyenCastles",
28783
- "Printec Castles"
29244
+ "Printec Castles",
29245
+ "Cardlink Castles"
28784
29246
  ]
28785
29247
  },
28786
29248
  "operatorId": {
@@ -28849,7 +29311,8 @@
28849
29311
  "Windcave",
28850
29312
  "Web portal",
28851
29313
  "AdyenCastles",
28852
- "Printec Castles"
29314
+ "Printec Castles",
29315
+ "Cardlink Castles"
28853
29316
  ]
28854
29317
  },
28855
29318
  "operatorId": {
@@ -28965,7 +29428,8 @@
28965
29428
  "Windcave",
28966
29429
  "Web portal",
28967
29430
  "AdyenCastles",
28968
- "Printec Castles"
29431
+ "Printec Castles",
29432
+ "Cardlink Castles"
28969
29433
  ]
28970
29434
  },
28971
29435
  "operatorId": {
@@ -29068,99 +29532,7 @@
29068
29532
  "terminalType",
29069
29533
  "operatorId"
29070
29534
  ]
29071
- }
29072
- ]
29073
- }
29074
- }
29075
- }
29076
- },
29077
- "responses": {
29078
- "200": {
29079
- "description": "Request succeeded"
29080
- },
29081
- "401": {
29082
- "description": "Access token is missing or invalid"
29083
- },
29084
- "403": {
29085
- "description": "You do not have permission to perform the action"
29086
- },
29087
- "422": {
29088
- "description": "The payload you provided is invalid"
29089
- },
29090
- "429": {
29091
- "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
29092
- }
29093
- }
29094
- },
29095
- {
29096
- "path": "/public-api/resources/payment-terminals/v1.0/{paymentTerminal}",
29097
- "method": "GET",
29098
- "operationId": "getPaymentTerminal",
29099
- "summary": "Payment Terminals / Read",
29100
- "description": "Get information for a payment terminal by ID",
29101
- "tags": [
29102
- "resource / payment terminals"
29103
- ],
29104
- "responses": {
29105
- "200": {
29106
- "description": "Success"
29107
- },
29108
- "401": {
29109
- "description": "Access token is missing or invalid"
29110
- },
29111
- "403": {
29112
- "description": "You do not have permission to perform the action"
29113
- },
29114
- "429": {
29115
- "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
29116
- }
29117
- }
29118
- },
29119
- {
29120
- "path": "/public-api/resources/payment-terminals/v1.0/{paymentTerminal}",
29121
- "method": "DELETE",
29122
- "operationId": "deletePaymentTerminal",
29123
- "summary": "Payment Terminals / Delete",
29124
- "description": "Delete a payment terminal.",
29125
- "tags": [
29126
- "resource / payment terminals"
29127
- ],
29128
- "responses": {
29129
- "204": {
29130
- "description": "Payment terminal deleted successfully"
29131
- },
29132
- "401": {
29133
- "description": "Access token is missing or invalid"
29134
- },
29135
- "403": {
29136
- "description": "You do not have permission to perform the action"
29137
- },
29138
- "404": {
29139
- "description": "The record is not found"
29140
- },
29141
- "422": {
29142
- "description": "The payload you provided is invalid"
29143
- },
29144
- "429": {
29145
- "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
29146
- }
29147
- }
29148
- },
29149
- {
29150
- "path": "/public-api/resources/payment-terminals/v1.0/{paymentTerminal}",
29151
- "method": "PATCH",
29152
- "operationId": "updatePaymentTerminal",
29153
- "summary": "Payment Terminals / Update",
29154
- "description": "Update Payment terminal",
29155
- "tags": [
29156
- "resource / payment terminals"
29157
- ],
29158
- "requestBody": {
29159
- "required": true,
29160
- "content": {
29161
- "application/json": {
29162
- "schema": {
29163
- "oneOf": [
29535
+ },
29164
29536
  {
29165
29537
  "type": "object",
29166
29538
  "properties": {
@@ -29186,7 +29558,230 @@
29186
29558
  "Windcave",
29187
29559
  "Web portal",
29188
29560
  "AdyenCastles",
29189
- "Printec Castles"
29561
+ "Printec Castles",
29562
+ "Cardlink Castles"
29563
+ ]
29564
+ },
29565
+ "operatorId": {
29566
+ "type": "integer"
29567
+ },
29568
+ "chargingZoneId": {
29569
+ "type": "integer",
29570
+ "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
29571
+ },
29572
+ "chargePointId": {
29573
+ "type": "integer",
29574
+ "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
29575
+ },
29576
+ "adminToken": {
29577
+ "type": "string",
29578
+ "description": "Specific token, linked to each terminal that can be used for access to the API. The token is created automatically when a new payment terminal is created."
29579
+ },
29580
+ "isOnline": {
29581
+ "type": "boolean",
29582
+ "description": "Use `networkStatus` instead"
29583
+ },
29584
+ "networkStatus": {
29585
+ "type": "string",
29586
+ "enum": [
29587
+ "online",
29588
+ "offline",
29589
+ "unknown"
29590
+ ]
29591
+ },
29592
+ "phone": {
29593
+ "type": "string"
29594
+ },
29595
+ "defaultLanguage": {
29596
+ "type": "string"
29597
+ },
29598
+ "presentCardOnStopSession": {
29599
+ "type": "boolean",
29600
+ "default": false
29601
+ },
29602
+ "info": {
29603
+ "type": "array",
29604
+ "items": {
29605
+ "type": "object",
29606
+ "properties": {
29607
+ "locale": {
29608
+ "type": "string",
29609
+ "description": "valid locale"
29610
+ },
29611
+ "translation": {
29612
+ "type": "string"
29613
+ }
29614
+ }
29615
+ }
29616
+ },
29617
+ "currencyCode": {
29618
+ "type": "string"
29619
+ },
29620
+ "serialNumber": {
29621
+ "type": "string"
29622
+ },
29623
+ "externalId": {
29624
+ "type": "string"
29625
+ },
29626
+ "supportedLanguages": {
29627
+ "type": "array",
29628
+ "items": {
29629
+ "type": "string"
29630
+ },
29631
+ "nullable": true
29632
+ },
29633
+ "bundle": {
29634
+ "type": "object",
29635
+ "properties": {
29636
+ "version": {
29637
+ "type": "string",
29638
+ "example": [
29639
+ "1.0.0",
29640
+ "1.0.1",
29641
+ "2.1.0"
29642
+ ],
29643
+ "description": "Desired version of the terminal android bundle. This field should be used to detect version difference between the actual one running on the terminal and the configured on the server, in order to detect if an OTA update is required."
29644
+ },
29645
+ "downloadUrl": {
29646
+ "type": "string",
29647
+ "description": "Download link to the archived (zip) bundle version. Can be used to download the bundle and initiate the OTA update on the terminal."
29648
+ }
29649
+ }
29650
+ },
29651
+ "networkStatusMonitoringEnabled": {
29652
+ "type": "boolean"
29653
+ }
29654
+ },
29655
+ "required": [
29656
+ "phone",
29657
+ "defaultLanguage",
29658
+ "info",
29659
+ "bundle",
29660
+ "name",
29661
+ "integrationId",
29662
+ "terminalType",
29663
+ "operatorId"
29664
+ ]
29665
+ }
29666
+ ]
29667
+ }
29668
+ }
29669
+ }
29670
+ },
29671
+ "responses": {
29672
+ "200": {
29673
+ "description": "Request succeeded"
29674
+ },
29675
+ "401": {
29676
+ "description": "Access token is missing or invalid"
29677
+ },
29678
+ "403": {
29679
+ "description": "You do not have permission to perform the action"
29680
+ },
29681
+ "422": {
29682
+ "description": "The payload you provided is invalid"
29683
+ },
29684
+ "429": {
29685
+ "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
29686
+ }
29687
+ }
29688
+ },
29689
+ {
29690
+ "path": "/public-api/resources/payment-terminals/v1.0/{paymentTerminal}",
29691
+ "method": "GET",
29692
+ "operationId": "getPaymentTerminal",
29693
+ "summary": "Payment Terminals / Read",
29694
+ "description": "Get information for a payment terminal by ID",
29695
+ "tags": [
29696
+ "resource / payment terminals"
29697
+ ],
29698
+ "responses": {
29699
+ "200": {
29700
+ "description": "Success"
29701
+ },
29702
+ "401": {
29703
+ "description": "Access token is missing or invalid"
29704
+ },
29705
+ "403": {
29706
+ "description": "You do not have permission to perform the action"
29707
+ },
29708
+ "429": {
29709
+ "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
29710
+ }
29711
+ }
29712
+ },
29713
+ {
29714
+ "path": "/public-api/resources/payment-terminals/v1.0/{paymentTerminal}",
29715
+ "method": "DELETE",
29716
+ "operationId": "deletePaymentTerminal",
29717
+ "summary": "Payment Terminals / Delete",
29718
+ "description": "Delete a payment terminal.",
29719
+ "tags": [
29720
+ "resource / payment terminals"
29721
+ ],
29722
+ "responses": {
29723
+ "204": {
29724
+ "description": "Payment terminal deleted successfully"
29725
+ },
29726
+ "401": {
29727
+ "description": "Access token is missing or invalid"
29728
+ },
29729
+ "403": {
29730
+ "description": "You do not have permission to perform the action"
29731
+ },
29732
+ "404": {
29733
+ "description": "The record is not found"
29734
+ },
29735
+ "422": {
29736
+ "description": "The payload you provided is invalid"
29737
+ },
29738
+ "429": {
29739
+ "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
29740
+ }
29741
+ }
29742
+ },
29743
+ {
29744
+ "path": "/public-api/resources/payment-terminals/v1.0/{paymentTerminal}",
29745
+ "method": "PATCH",
29746
+ "operationId": "updatePaymentTerminal",
29747
+ "summary": "Payment Terminals / Update",
29748
+ "description": "Update Payment terminal",
29749
+ "tags": [
29750
+ "resource / payment terminals"
29751
+ ],
29752
+ "requestBody": {
29753
+ "required": true,
29754
+ "content": {
29755
+ "application/json": {
29756
+ "schema": {
29757
+ "oneOf": [
29758
+ {
29759
+ "type": "object",
29760
+ "properties": {
29761
+ "id": {
29762
+ "type": "integer"
29763
+ },
29764
+ "name": {
29765
+ "type": "string"
29766
+ },
29767
+ "integrationId": {
29768
+ "type": "integer"
29769
+ },
29770
+ "terminalType": {
29771
+ "type": "string",
29772
+ "enum": [
29773
+ "Payter",
29774
+ "Valina",
29775
+ "Crane",
29776
+ "Ampeco",
29777
+ "Nayax",
29778
+ "Embedded",
29779
+ "Pax",
29780
+ "Windcave",
29781
+ "Web portal",
29782
+ "AdyenCastles",
29783
+ "Printec Castles",
29784
+ "Cardlink Castles"
29190
29785
  ]
29191
29786
  },
29192
29787
  "operatorId": {
@@ -29268,7 +29863,307 @@
29268
29863
  "Windcave",
29269
29864
  "Web portal",
29270
29865
  "AdyenCastles",
29271
- "Printec Castles"
29866
+ "Printec Castles",
29867
+ "Cardlink Castles"
29868
+ ]
29869
+ },
29870
+ "operatorId": {
29871
+ "type": "integer"
29872
+ },
29873
+ "chargingZoneId": {
29874
+ "type": "integer",
29875
+ "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
29876
+ },
29877
+ "chargePointId": {
29878
+ "type": "integer",
29879
+ "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
29880
+ },
29881
+ "adminToken": {
29882
+ "type": "string",
29883
+ "description": "Specific token, linked to each terminal that can be used for access to the API. The token is created automatically when a new payment terminal is created."
29884
+ },
29885
+ "isOnline": {
29886
+ "type": "boolean",
29887
+ "description": "Use `networkStatus` instead"
29888
+ },
29889
+ "networkStatus": {
29890
+ "type": "string",
29891
+ "enum": [
29892
+ "online",
29893
+ "offline",
29894
+ "unknown"
29895
+ ]
29896
+ },
29897
+ "phone": {
29898
+ "type": "string"
29899
+ },
29900
+ "defaultLanguage": {
29901
+ "type": "string"
29902
+ },
29903
+ "presentCardOnStopSession": {
29904
+ "type": "boolean",
29905
+ "default": false
29906
+ },
29907
+ "info": {
29908
+ "type": "array",
29909
+ "items": {
29910
+ "type": "object",
29911
+ "properties": {
29912
+ "locale": {
29913
+ "type": "string",
29914
+ "description": "valid locale"
29915
+ },
29916
+ "translation": {
29917
+ "type": "string"
29918
+ }
29919
+ }
29920
+ }
29921
+ },
29922
+ "serialNumber": {
29923
+ "type": "string"
29924
+ },
29925
+ "externalId": {
29926
+ "type": "string"
29927
+ },
29928
+ "supportedLanguages": {
29929
+ "type": "array",
29930
+ "items": {
29931
+ "type": "string"
29932
+ },
29933
+ "nullable": true
29934
+ }
29935
+ }
29936
+ },
29937
+ {
29938
+ "type": "object",
29939
+ "properties": {
29940
+ "id": {
29941
+ "type": "integer"
29942
+ },
29943
+ "name": {
29944
+ "type": "string"
29945
+ },
29946
+ "integrationId": {
29947
+ "type": "integer"
29948
+ },
29949
+ "terminalType": {
29950
+ "type": "string",
29951
+ "enum": [
29952
+ "Payter",
29953
+ "Valina",
29954
+ "Crane",
29955
+ "Ampeco",
29956
+ "Nayax",
29957
+ "Embedded",
29958
+ "Pax",
29959
+ "Windcave",
29960
+ "Web portal",
29961
+ "AdyenCastles",
29962
+ "Printec Castles",
29963
+ "Cardlink Castles"
29964
+ ]
29965
+ },
29966
+ "operatorId": {
29967
+ "type": "integer"
29968
+ },
29969
+ "chargingZoneId": {
29970
+ "type": "integer",
29971
+ "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
29972
+ },
29973
+ "chargePointId": {
29974
+ "type": "integer",
29975
+ "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
29976
+ },
29977
+ "serialNumber": {
29978
+ "type": "string"
29979
+ },
29980
+ "externalId": {
29981
+ "type": "string"
29982
+ }
29983
+ }
29984
+ },
29985
+ {
29986
+ "type": "object",
29987
+ "properties": {
29988
+ "id": {
29989
+ "type": "integer"
29990
+ },
29991
+ "name": {
29992
+ "type": "string"
29993
+ },
29994
+ "integrationId": {
29995
+ "type": "integer"
29996
+ },
29997
+ "terminalType": {
29998
+ "type": "string",
29999
+ "enum": [
30000
+ "Payter",
30001
+ "Valina",
30002
+ "Crane",
30003
+ "Ampeco",
30004
+ "Nayax",
30005
+ "Embedded",
30006
+ "Pax",
30007
+ "Windcave",
30008
+ "Web portal",
30009
+ "AdyenCastles",
30010
+ "Printec Castles",
30011
+ "Cardlink Castles"
30012
+ ]
30013
+ },
30014
+ "operatorId": {
30015
+ "type": "integer"
30016
+ },
30017
+ "chargingZoneId": {
30018
+ "type": "integer",
30019
+ "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
30020
+ },
30021
+ "chargePointId": {
30022
+ "type": "integer",
30023
+ "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
30024
+ },
30025
+ "adminToken": {
30026
+ "type": "string",
30027
+ "description": "Specific token, linked to each terminal that can be used for access to the API. The token is created automatically when a new payment terminal is created."
30028
+ },
30029
+ "webhookUrl": {
30030
+ "type": "string"
30031
+ },
30032
+ "serialNumber": {
30033
+ "type": "string"
30034
+ },
30035
+ "externalId": {
30036
+ "type": "string"
30037
+ }
30038
+ }
30039
+ },
30040
+ {
30041
+ "type": "object",
30042
+ "properties": {
30043
+ "id": {
30044
+ "type": "integer"
30045
+ },
30046
+ "name": {
30047
+ "type": "string"
30048
+ },
30049
+ "integrationId": {
30050
+ "type": "integer"
30051
+ },
30052
+ "terminalType": {
30053
+ "type": "string",
30054
+ "enum": [
30055
+ "Payter",
30056
+ "Valina",
30057
+ "Crane",
30058
+ "Ampeco",
30059
+ "Nayax",
30060
+ "Embedded",
30061
+ "Pax",
30062
+ "Windcave",
30063
+ "Web portal",
30064
+ "AdyenCastles",
30065
+ "Printec Castles",
30066
+ "Cardlink Castles"
30067
+ ]
30068
+ },
30069
+ "operatorId": {
30070
+ "type": "integer"
30071
+ },
30072
+ "chargingZoneId": {
30073
+ "type": "integer",
30074
+ "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
30075
+ },
30076
+ "chargePointId": {
30077
+ "type": "integer",
30078
+ "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
30079
+ },
30080
+ "terminalId": {
30081
+ "type": "string",
30082
+ "description": "This is the Device Number of the relevant Nayax terminal that is set up in the Nayax system. Please be careful to add the correct Device number on the relevant terminal."
30083
+ },
30084
+ "serialNumber": {
30085
+ "type": "string"
30086
+ },
30087
+ "externalId": {
30088
+ "type": "string"
30089
+ }
30090
+ }
30091
+ },
30092
+ {
30093
+ "type": "object",
30094
+ "properties": {
30095
+ "id": {
30096
+ "type": "integer"
30097
+ },
30098
+ "name": {
30099
+ "type": "string"
30100
+ },
30101
+ "integrationId": {
30102
+ "type": "integer"
30103
+ },
30104
+ "terminalType": {
30105
+ "type": "string",
30106
+ "enum": [
30107
+ "Payter",
30108
+ "Valina",
30109
+ "Crane",
30110
+ "Ampeco",
30111
+ "Nayax",
30112
+ "Embedded",
30113
+ "Pax",
30114
+ "Windcave",
30115
+ "Web portal",
30116
+ "AdyenCastles",
30117
+ "Printec Castles",
30118
+ "Cardlink Castles"
30119
+ ]
30120
+ },
30121
+ "operatorId": {
30122
+ "type": "integer"
30123
+ },
30124
+ "chargingZoneId": {
30125
+ "type": "integer",
30126
+ "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
30127
+ },
30128
+ "chargePointId": {
30129
+ "type": "integer",
30130
+ "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
30131
+ },
30132
+ "serialNumber": {
30133
+ "type": "string"
30134
+ },
30135
+ "externalId": {
30136
+ "type": "string"
30137
+ }
30138
+ }
30139
+ },
30140
+ {
30141
+ "type": "object",
30142
+ "properties": {
30143
+ "id": {
30144
+ "type": "integer"
30145
+ },
30146
+ "name": {
30147
+ "type": "string"
30148
+ },
30149
+ "integrationId": {
30150
+ "type": "integer"
30151
+ },
30152
+ "terminalType": {
30153
+ "type": "string",
30154
+ "enum": [
30155
+ "Payter",
30156
+ "Valina",
30157
+ "Crane",
30158
+ "Ampeco",
30159
+ "Nayax",
30160
+ "Embedded",
30161
+ "Pax",
30162
+ "Windcave",
30163
+ "Web portal",
30164
+ "AdyenCastles",
30165
+ "Printec Castles",
30166
+ "Cardlink Castles"
29272
30167
  ]
29273
30168
  },
29274
30169
  "operatorId": {
@@ -29282,23 +30177,7 @@
29282
30177
  "type": "integer",
29283
30178
  "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
29284
30179
  },
29285
- "adminToken": {
29286
- "type": "string",
29287
- "description": "Specific token, linked to each terminal that can be used for access to the API. The token is created automatically when a new payment terminal is created."
29288
- },
29289
- "isOnline": {
29290
- "type": "boolean",
29291
- "description": "Use `networkStatus` instead"
29292
- },
29293
- "networkStatus": {
29294
- "type": "string",
29295
- "enum": [
29296
- "online",
29297
- "offline",
29298
- "unknown"
29299
- ]
29300
- },
29301
- "phone": {
30180
+ "verificationCode": {
29302
30181
  "type": "string"
29303
30182
  },
29304
30183
  "defaultLanguage": {
@@ -29328,13 +30207,6 @@
29328
30207
  },
29329
30208
  "externalId": {
29330
30209
  "type": "string"
29331
- },
29332
- "supportedLanguages": {
29333
- "type": "array",
29334
- "items": {
29335
- "type": "string"
29336
- },
29337
- "nullable": true
29338
30210
  }
29339
30211
  }
29340
30212
  },
@@ -29363,7 +30235,8 @@
29363
30235
  "Windcave",
29364
30236
  "Web portal",
29365
30237
  "AdyenCastles",
29366
- "Printec Castles"
30238
+ "Printec Castles",
30239
+ "Cardlink Castles"
29367
30240
  ]
29368
30241
  },
29369
30242
  "operatorId": {
@@ -29410,32 +30283,12 @@
29410
30283
  "Windcave",
29411
30284
  "Web portal",
29412
30285
  "AdyenCastles",
29413
- "Printec Castles"
30286
+ "Printec Castles",
30287
+ "Cardlink Castles"
29414
30288
  ]
29415
30289
  },
29416
30290
  "operatorId": {
29417
30291
  "type": "integer"
29418
- },
29419
- "chargingZoneId": {
29420
- "type": "integer",
29421
- "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
29422
- },
29423
- "chargePointId": {
29424
- "type": "integer",
29425
- "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
29426
- },
29427
- "adminToken": {
29428
- "type": "string",
29429
- "description": "Specific token, linked to each terminal that can be used for access to the API. The token is created automatically when a new payment terminal is created."
29430
- },
29431
- "webhookUrl": {
29432
- "type": "string"
29433
- },
29434
- "serialNumber": {
29435
- "type": "string"
29436
- },
29437
- "externalId": {
29438
- "type": "string"
29439
30292
  }
29440
30293
  }
29441
30294
  },
@@ -29464,7 +30317,8 @@
29464
30317
  "Windcave",
29465
30318
  "Web portal",
29466
30319
  "AdyenCastles",
29467
- "Printec Castles"
30320
+ "Printec Castles",
30321
+ "Cardlink Castles"
29468
30322
  ]
29469
30323
  },
29470
30324
  "operatorId": {
@@ -29478,105 +30332,19 @@
29478
30332
  "type": "integer",
29479
30333
  "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
29480
30334
  },
29481
- "terminalId": {
29482
- "type": "string",
29483
- "description": "This is the Device Number of the relevant Nayax terminal that is set up in the Nayax system. Please be careful to add the correct Device number on the relevant terminal."
29484
- },
29485
- "serialNumber": {
29486
- "type": "string"
29487
- },
29488
- "externalId": {
29489
- "type": "string"
29490
- }
29491
- }
29492
- },
29493
- {
29494
- "type": "object",
29495
- "properties": {
29496
- "id": {
29497
- "type": "integer"
29498
- },
29499
- "name": {
29500
- "type": "string"
29501
- },
29502
- "integrationId": {
29503
- "type": "integer"
29504
- },
29505
- "terminalType": {
30335
+ "adminToken": {
29506
30336
  "type": "string",
29507
- "enum": [
29508
- "Payter",
29509
- "Valina",
29510
- "Crane",
29511
- "Ampeco",
29512
- "Nayax",
29513
- "Embedded",
29514
- "Pax",
29515
- "Windcave",
29516
- "Web portal",
29517
- "AdyenCastles",
29518
- "Printec Castles"
29519
- ]
29520
- },
29521
- "operatorId": {
29522
- "type": "integer"
29523
- },
29524
- "chargingZoneId": {
29525
- "type": "integer",
29526
- "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
29527
- },
29528
- "chargePointId": {
29529
- "type": "integer",
29530
- "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
29531
- },
29532
- "serialNumber": {
29533
- "type": "string"
29534
- },
29535
- "externalId": {
29536
- "type": "string"
29537
- }
29538
- }
29539
- },
29540
- {
29541
- "type": "object",
29542
- "properties": {
29543
- "id": {
29544
- "type": "integer"
29545
- },
29546
- "name": {
29547
- "type": "string"
29548
- },
29549
- "integrationId": {
29550
- "type": "integer"
30337
+ "description": "Specific token, linked to each terminal that can be used for access to the API. The token is created automatically when a new payment terminal is created."
29551
30338
  },
29552
- "terminalType": {
30339
+ "networkStatus": {
29553
30340
  "type": "string",
29554
30341
  "enum": [
29555
- "Payter",
29556
- "Valina",
29557
- "Crane",
29558
- "Ampeco",
29559
- "Nayax",
29560
- "Embedded",
29561
- "Pax",
29562
- "Windcave",
29563
- "Web portal",
29564
- "AdyenCastles",
29565
- "Printec Castles"
30342
+ "online",
30343
+ "offline",
30344
+ "unknown"
29566
30345
  ]
29567
30346
  },
29568
- "operatorId": {
29569
- "type": "integer"
29570
- },
29571
- "chargingZoneId": {
29572
- "type": "integer",
29573
- "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
29574
- },
29575
- "chargePointId": {
29576
- "type": "integer",
29577
- "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
29578
- },
29579
- "verificationCode": {
30347
+ "phone": {
29580
30348
  "type": "string"
29581
30349
  },
29582
30350
  "defaultLanguage": {
@@ -29606,86 +30374,23 @@
29606
30374
  },
29607
30375
  "externalId": {
29608
30376
  "type": "string"
29609
- }
29610
- }
29611
- },
29612
- {
29613
- "type": "object",
29614
- "properties": {
29615
- "id": {
29616
- "type": "integer"
29617
- },
29618
- "name": {
29619
- "type": "string"
29620
30377
  },
29621
- "integrationId": {
29622
- "type": "integer"
29623
- },
29624
- "terminalType": {
30378
+ "merchantAccount": {
29625
30379
  "type": "string",
29626
- "enum": [
29627
- "Payter",
29628
- "Valina",
29629
- "Crane",
29630
- "Ampeco",
29631
- "Nayax",
29632
- "Embedded",
29633
- "Pax",
29634
- "Windcave",
29635
- "Web portal",
29636
- "AdyenCastles",
29637
- "Printec Castles"
29638
- ]
29639
- },
29640
- "operatorId": {
29641
- "type": "integer"
29642
- },
29643
- "chargingZoneId": {
29644
- "type": "integer",
29645
- "description": "The charging zone the terminal belongs to. Note that either the `chargePointId` OR this attribute should be provided;"
29646
- },
29647
- "chargePointId": {
29648
- "type": "integer",
29649
- "description": "The Charge point the terminal belongs to. Note that either the `chargingZoneId` OR this attribute should be provided;"
29650
- },
29651
- "serialNumber": {
29652
- "type": "string"
29653
- },
29654
- "externalId": {
29655
- "type": "string"
29656
- }
29657
- }
29658
- },
29659
- {
29660
- "type": "object",
29661
- "properties": {
29662
- "id": {
29663
- "type": "integer"
29664
- },
29665
- "name": {
29666
- "type": "string"
29667
- },
29668
- "integrationId": {
29669
- "type": "integer"
30380
+ "description": "Unique identifier of the merchant in Adyen's portal"
29670
30381
  },
29671
- "terminalType": {
30382
+ "adyenApiKey": {
29672
30383
  "type": "string",
29673
- "enum": [
29674
- "Payter",
29675
- "Valina",
29676
- "Crane",
29677
- "Ampeco",
29678
- "Nayax",
29679
- "Embedded",
29680
- "Pax",
29681
- "Windcave",
29682
- "Web portal",
29683
- "AdyenCastles",
29684
- "Printec Castles"
29685
- ]
30384
+ "description": "API key to authenticate requests to Adyen"
29686
30385
  },
29687
- "operatorId": {
29688
- "type": "integer"
30386
+ "supportedLanguages": {
30387
+ "type": "array",
30388
+ "items": {
30389
+ "type": "string"
30390
+ }
30391
+ },
30392
+ "networkStatusMonitoringEnabled": {
30393
+ "type": "boolean"
29689
30394
  }
29690
30395
  }
29691
30396
  },
@@ -29714,7 +30419,8 @@
29714
30419
  "Windcave",
29715
30420
  "Web portal",
29716
30421
  "AdyenCastles",
29717
- "Printec Castles"
30422
+ "Printec Castles",
30423
+ "Cardlink Castles"
29718
30424
  ]
29719
30425
  },
29720
30426
  "operatorId": {
@@ -29771,14 +30477,6 @@
29771
30477
  "externalId": {
29772
30478
  "type": "string"
29773
30479
  },
29774
- "merchantAccount": {
29775
- "type": "string",
29776
- "description": "Unique identifier of the merchant in Adyen's portal"
29777
- },
29778
- "adyenApiKey": {
29779
- "type": "string",
29780
- "description": "API key to authenticate requests to Adyen"
29781
- },
29782
30480
  "supportedLanguages": {
29783
30481
  "type": "array",
29784
30482
  "items": {
@@ -29815,7 +30513,8 @@
29815
30513
  "Windcave",
29816
30514
  "Web portal",
29817
30515
  "AdyenCastles",
29818
- "Printec Castles"
30516
+ "Printec Castles",
30517
+ "Cardlink Castles"
29819
30518
  ]
29820
30519
  },
29821
30520
  "operatorId": {
@@ -29833,6 +30532,10 @@
29833
30532
  "type": "string",
29834
30533
  "description": "Specific token, linked to each terminal that can be used for access to the API. The token is created automatically when a new payment terminal is created."
29835
30534
  },
30535
+ "isOnline": {
30536
+ "type": "boolean",
30537
+ "description": "Use `networkStatus` instead"
30538
+ },
29836
30539
  "networkStatus": {
29837
30540
  "type": "string",
29838
30541
  "enum": [
@@ -29876,10 +30579,8 @@
29876
30579
  "type": "array",
29877
30580
  "items": {
29878
30581
  "type": "string"
29879
- }
29880
- },
29881
- "networkStatusMonitoringEnabled": {
29882
- "type": "boolean"
30582
+ },
30583
+ "nullable": true
29883
30584
  }
29884
30585
  }
29885
30586
  }
@@ -33502,7 +34203,17 @@
33502
34203
  "properties": {
33503
34204
  "partnerId": {
33504
34205
  "type": "number",
33505
- "description": "Only list tariffs managed by certan partner."
34206
+ "description": "Only list tariff groups managed by certain partner."
34207
+ },
34208
+ "lastUpdatedAfter": {
34209
+ "type": "string",
34210
+ "format": "date-time",
34211
+ "description": "ISO 8601 formatted date. Only list status logs created after this datetime"
34212
+ },
34213
+ "lastUpdatedBefore": {
34214
+ "type": "string",
34215
+ "format": "date-time",
34216
+ "description": "ISO 8601 formatted date. Only list status logs created after this datetime"
33506
34217
  }
33507
34218
  }
33508
34219
  }
@@ -33535,6 +34246,9 @@
33535
34246
  "403": {
33536
34247
  "description": "You do not have permission to perform the action"
33537
34248
  },
34249
+ "422": {
34250
+ "description": "The payload you provided is invalid"
34251
+ },
33538
34252
  "429": {
33539
34253
  "description": "Too many requests. Please try again later. For more information, please check the rate limit headers X-RateLimit-*"
33540
34254
  }
@@ -41101,7 +41815,7 @@
41101
41815
  ],
41102
41816
  "info": {
41103
41817
  "title": "AMPECO.CHARGE Public API",
41104
- "version": "3.104.2",
41818
+ "version": "3.106.0",
41105
41819
  "description": "AMPECO.CHARGE Public API provides you with the option to use AMPECO.CHARGE's backend in a server-to-server manner\n"
41106
41820
  },
41107
41821
  "servers": [
@@ -41115,18 +41829,18 @@
41115
41829
  }
41116
41830
  }
41117
41831
  ],
41118
- "buildTimestamp": "2025-11-26T19:23:27.023Z",
41832
+ "buildTimestamp": "2025-12-02T13:20:02.978Z",
41119
41833
  "stats": {
41120
- "totalEndpoints": 446,
41121
- "originalSize": 2609623,
41122
- "optimizedSize": 765864,
41123
- "reductionPercent": 70.65,
41124
- "buildDuration": 611,
41834
+ "totalEndpoints": 449,
41835
+ "originalSize": 2679324,
41836
+ "optimizedSize": 785363,
41837
+ "reductionPercent": 70.69,
41838
+ "buildDuration": 766,
41125
41839
  "responseSchemas": {
41126
- "total": 446,
41127
- "withSchemas": 446,
41128
- "totalSchemaSize": 1439866,
41129
- "averageSchemaSize": 3228
41840
+ "total": 449,
41841
+ "withSchemas": 449,
41842
+ "totalSchemaSize": 1487633,
41843
+ "averageSchemaSize": 3313
41130
41844
  }
41131
41845
  }
41132
41846
  }