@chargetrip/types 1.15.0 → 1.19.0

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.
package/src/graphql.ts CHANGED
@@ -1,5 +1,11 @@
1
1
  export type Maybe<T> = T | null;
2
- export type Exact<T extends { [key: string]: any }> = { [K in keyof T]: T[K] };
2
+ export type Exact<T extends { [key: string]: unknown }> = {
3
+ [K in keyof T]: T[K];
4
+ };
5
+ export type MakeOptional<T, K extends keyof T> = Omit<T, K> &
6
+ { [SubKey in K]?: Maybe<T[SubKey]> };
7
+ export type MakeMaybe<T, K extends keyof T> = Omit<T, K> &
8
+ { [SubKey in K]: Maybe<T[SubKey]> };
3
9
  /** All built-in and custom scalars, mapped to their actual values */
4
10
  export type Scalars = {
5
11
  ID: string;
@@ -7,128 +13,34 @@ export type Scalars = {
7
13
  Boolean: boolean;
8
14
  Int: number;
9
15
  Float: number;
10
- /** Any JSON object or array */
11
- JSON: { [key: string]: number | string | boolean | null | Scalars["JSON"] };
12
16
  /** The `DateTime` scalar represents a date and time following the ISO 8601 standard */
13
17
  DateTime: string;
18
+ /** Any JSON object or array */
19
+ JSON: { [key: string]: number | string | boolean | null | Scalars["JSON"] };
14
20
  /** The File Upload scalar */
15
21
  Upload: any;
16
22
  };
17
23
 
18
- export type Query = {
19
- /** Get a full list of amenities around a station */
20
- amenityList?: Maybe<Array<Maybe<Amenity>>>;
21
- /** Get information about a car by its ID */
22
- car?: Maybe<Car>;
23
- /** Car premium data provides even more information about your car: tire pressure, prices, drivetrain data, and more. Please contact us for access to premium data. */
24
- carPremium?: Maybe<CarPremium>;
25
- /** Get a full list of cars */
26
- carList?: Maybe<Array<Maybe<CarList>>>;
27
- /** Get a full list of operators */
28
- operatorList?: Maybe<Array<Maybe<Operator>>>;
29
- /** Get information about an operator by its ID */
30
- operator?: Maybe<Operator>;
31
- /** Get all reviews of a station by the station ID */
32
- reviewList?: Maybe<Array<Review>>;
33
- /**
34
- * Get all reviews of stations that were added by an authenticated user.
35
- * The `x-token` header is mandatory in order to authorize the user who wants to retrieve all the reviews added by him/her.
36
- * This is a premium feature, contact Chargetrip for more information.
37
- */
38
- userReviewList?: Maybe<Array<Review>>;
39
- /** Get a route by ID */
40
- route?: Maybe<Route>;
41
- /** Retrieve information about a route path segment */
42
- routePath?: Maybe<RoutePath>;
43
- /** Get the station statistics */
44
- stationStats?: Maybe<StationStats>;
45
- /** Get information about a station by its ID */
46
- station?: Maybe<Station>;
47
- /** Get a full list of stations */
48
- stationList?: Maybe<Array<Maybe<Station>>>;
49
- /** Search for stations around a GeoJSON point with a specific distance in meters */
50
- stationAround?: Maybe<Array<Maybe<Station>>>;
51
- /** Get information about a tariff by the tariff ID */
52
- tariff?: Maybe<OCPITariff>;
53
- /** Get the full list of tariffs */
54
- tariffList?: Maybe<Array<Maybe<OCPITariff>>>;
55
- };
56
-
57
- export type QueryamenityListArgs = {
58
- stationId: Scalars["ID"];
59
- };
60
-
61
- export type QuerycarArgs = {
62
- id?: Maybe<Scalars["ID"]>;
63
- externalId?: Maybe<Scalars["Int"]>;
64
- };
65
-
66
- export type QuerycarPremiumArgs = {
67
- id?: Maybe<Scalars["ID"]>;
68
- };
69
-
70
- export type QuerycarListArgs = {
71
- query?: Maybe<CarListQuery>;
72
- search?: Maybe<Scalars["String"]>;
73
- filter?: Maybe<CarListFilter>;
74
- size?: Maybe<Scalars["Int"]>;
75
- page?: Maybe<Scalars["Int"]>;
76
- };
77
-
78
- export type QueryoperatorListArgs = {
79
- query?: Maybe<OperatorListQuery>;
80
- size?: Maybe<Scalars["Int"]>;
81
- page?: Maybe<Scalars["Int"]>;
82
- };
83
-
84
- export type QueryoperatorArgs = {
85
- id: Scalars["ID"];
86
- };
87
-
88
- export type QueryreviewListArgs = {
89
- stationId: Scalars["ID"];
90
- size?: Maybe<Scalars["Int"]>;
91
- page?: Maybe<Scalars["Int"]>;
92
- };
93
-
94
- export type QueryuserReviewListArgs = {
95
- size?: Maybe<Scalars["Int"]>;
96
- page?: Maybe<Scalars["Int"]>;
97
- };
98
-
99
- export type QueryrouteArgs = {
100
- id: Scalars["ID"];
101
- };
102
-
103
- export type QueryroutePathArgs = {
104
- id: Scalars["ID"];
105
- location: PointInput;
106
- alternativeId?: Maybe<Scalars["ID"]>;
107
- };
108
-
109
- export type QuerystationArgs = {
110
- id: Scalars["ID"];
111
- };
112
-
113
- export type QuerystationListArgs = {
114
- query?: Maybe<StationListQuery>;
115
- size?: Maybe<Scalars["Int"]>;
116
- page?: Maybe<Scalars["Int"]>;
117
- };
118
-
119
- export type QuerystationAroundArgs = {
120
- query: StationAroundQuery;
121
- size?: Maybe<Scalars["Int"]>;
122
- page?: Maybe<Scalars["Int"]>;
123
- };
124
-
125
- export type QuerytariffArgs = {
126
- id: Scalars["ID"];
127
- };
128
-
129
- export type QuerytariffListArgs = {
130
- size?: Maybe<Scalars["Int"]>;
131
- page?: Maybe<Scalars["Int"]>;
24
+ /** Information about an address */
25
+ export type Address = {
26
+ /** Continent code (2 letters) */
27
+ continent?: Maybe<Scalars["String"]>;
28
+ /** Country code (2 letters) */
29
+ country?: Maybe<Scalars["String"]>;
30
+ /** County code (2 letters) */
31
+ county?: Maybe<Scalars["String"]>;
32
+ /** City */
33
+ city?: Maybe<Scalars["String"]>;
34
+ /** Street name */
35
+ street?: Maybe<Scalars["String"]>;
36
+ /** Street number */
37
+ number?: Maybe<Scalars["String"]>;
38
+ /** Postal code of a location */
39
+ postalCode?: Maybe<Scalars["String"]>;
40
+ /** String composed of 3 words which represent the location of an address on the globe. More details: http://w3w.co/<what3Words> */
41
+ what3Words?: Maybe<Scalars["String"]>;
42
+ /** Human-readable address of a location */
43
+ formattedAddress?: Maybe<Array<Maybe<Scalars["String"]>>>;
132
44
  };
133
45
 
134
46
  /** The amenity model */
@@ -157,41 +69,21 @@ export type Amenity = {
157
69
  updatedAt?: Maybe<Scalars["String"]>;
158
70
  };
159
71
 
160
- /** A GeoJSON Point */
161
- export type Point = {
162
- /** Point type */
163
- type: PointType;
164
- /** The coordinates array with longitude as first value and latitude as second one */
165
- coordinates: Array<Scalars["Float"]>;
72
+ /** Amenities stats model */
73
+ export type AmenityStats = {
74
+ /** The amenity type */
75
+ type?: Maybe<Scalars["String"]>;
76
+ /** The total number of stations with the specified amenity */
77
+ total?: Maybe<Scalars["Int"]>;
166
78
  };
167
79
 
168
- /** GeoJSON Point type */
169
- export enum PointType {
170
- POINT = "Point"
80
+ /** The type of the batter value */
81
+ export enum BatteryInputType {
82
+ KWH = "kwh",
83
+ KM = "km",
84
+ MILES = "miles"
171
85
  }
172
86
 
173
- /** Information about an address */
174
- export type Address = {
175
- /** Continent code (2 letters) */
176
- continent?: Maybe<Scalars["String"]>;
177
- /** Country code (2 letters) */
178
- country?: Maybe<Scalars["String"]>;
179
- /** County code (2 letters) */
180
- county?: Maybe<Scalars["String"]>;
181
- /** City */
182
- city?: Maybe<Scalars["String"]>;
183
- /** Street name */
184
- street?: Maybe<Scalars["String"]>;
185
- /** Street number */
186
- number?: Maybe<Scalars["String"]>;
187
- /** Postal code of a location */
188
- postalCode?: Maybe<Scalars["String"]>;
189
- /** String composed of 3 words which represent the location of an address on the globe. More details: http://w3w.co/<what3Words> */
190
- what3Words?: Maybe<Scalars["String"]>;
191
- /** Human-readable address of a location */
192
- formattedAddress?: Maybe<Array<Maybe<Scalars["String"]>>>;
193
- };
194
-
195
87
  /** Output of a car query */
196
88
  export type Car = {
197
89
  /** Cars unique ID */
@@ -343,98 +235,53 @@ export type Car = {
343
235
  imagesData?: Maybe<CarImageData>;
344
236
  };
345
237
 
346
- export type CarNaming = {
347
- /** Car manufacturer name */
348
- make?: Maybe<Scalars["String"]>;
349
- /** Car model name */
350
- model?: Maybe<Scalars["String"]>;
351
- /** Version, edition or submodel of car */
352
- version?: Maybe<Scalars["String"]>;
353
- /** Another submodel level of car */
354
- edition?: Maybe<Scalars["String"]>;
355
- /** Car model version. Added by Chargetrip as an alternative for when a car manufacturer does not provide an version name, or uses the same version name across all trims or consecutive years */
356
- chargetrip_version?: Maybe<Scalars["String"]>;
238
+ export type CarAvailability = {
239
+ /**
240
+ * Availability of car
241
+ *
242
+ * Values:
243
+ * - 0 = Car no longer for sale in any market / region
244
+ * - 1 = Car currently for sale in at least one market / region
245
+ * - 2 = Car expected in market from Date_From (estimated), pre-order open
246
+ * - 3 = Car expected in market from Date_From (estimated), pre-order unkown or not open
247
+ * - 12 = Concept car, nearing production and/or confirmed, pre-order open
248
+ * - 13 = Concept car, nearing production and/or confirmed, pre-order unknown or not open
249
+ * - 22 = Concept car, not close to production and/or unconfirmed, pre-order open
250
+ * - 23 = Concept car, not close to production and/or unconfirmed, pre-order unknown
251
+ * - 91 = Status uncertain, introduction date and/or pricing unclear
252
+ */
253
+ status?: Maybe<Scalars["Int"]>;
357
254
  };
358
255
 
359
- /** Car plug model */
360
- export type CarPlug = {
361
- /** Plug type, known as connector standard in OCPI */
362
- standard?: Maybe<OCPIConnectorType>;
363
- /** Usable electric power in kW */
364
- power?: Maybe<Scalars["Float"]>;
365
- /** Maximum electric power in kW */
366
- max_electric_power?: Maybe<Scalars["Float"]>;
367
- /** Time it takes to charge from 10 to 80% with a fast charger, shown in minutes */
368
- time?: Maybe<Scalars["Int"]>;
369
- /** Charging speed in km/h */
370
- speed?: Maybe<Scalars["Int"]>;
256
+ export type CarBattery = {
257
+ /** Usable battery capacity in kWh */
258
+ usable_kwh?: Maybe<Scalars["Float"]>;
259
+ /** Full battery capacity in kWh */
260
+ full_kwh?: Maybe<Scalars["Float"]>;
371
261
  };
372
262
 
373
- /** The socket or plug standard of the charging point. */
374
- export enum OCPIConnectorType {
375
- /** The connector type is CHAdeMO, DC */
376
- CHADEMO = "CHADEMO",
377
- /** Standard/domestic household, type "A", NEMA 1-15, 2 pins */
378
- DOMESTIC_A = "DOMESTIC_A",
379
- /** Standard/domestic household, type "B", NEMA 5-15, 3 pins */
380
- DOMESTIC_B = "DOMESTIC_B",
381
- /** Standard/domestic household, type "C", CEE 7/17, 2 pins */
382
- DOMESTIC_C = "DOMESTIC_C",
383
- /** Standard/domestic household, type "D", 3 pins */
384
- DOMESTIC_D = "DOMESTIC_D",
385
- /** Standard/domestic household, type "E", CEE 7/5 3 pins */
386
- DOMESTIC_E = "DOMESTIC_E",
387
- /** Standard/domestic household, type "F", CEE 7/4, Schuko, 3 pins */
388
- DOMESTIC_F = "DOMESTIC_F",
389
- /** Standard/domestic household, type "G", BS 1363, Commonwealth, 3 pins */
390
- DOMESTIC_G = "DOMESTIC_G",
391
- /** Standard/domestic household, type "H", SI-32, 3 pins */
392
- DOMESTIC_H = "DOMESTIC_H",
393
- /** Standard/domestic household, type "I", AS 3112, 3 pins */
394
- DOMESTIC_I = "DOMESTIC_I",
395
- /** Standard/domestic household, type "J", SEV 1011, 3 pins */
396
- DOMESTIC_J = "DOMESTIC_J",
397
- /** Standard/domestic household, type "K", DS 60884-2-D1, 3 pins */
398
- DOMESTIC_K = "DOMESTIC_K",
399
- /** Standard/domestic household, type "L", CEI 23-16-VII, 3 pins */
400
- DOMESTIC_L = "DOMESTIC_L",
401
- /** IEC 60309-2 Industrial connector single phase 16 amperes (usually blue) */
402
- IEC_60309_2_SINGLE_16 = "IEC_60309_2_single_16",
403
- /** IEC 60309-2 Industrial connector three phase 16 amperes (usually red) */
404
- IEC_60309_2_THREE_16 = "IEC_60309_2_three_16",
405
- /** IEC 60309-2 Industrial connector three phase 32 amperes (usually red) */
406
- IEC_60309_2_THREE_32 = "IEC_60309_2_three_32",
407
- /** IEC 60309-2 Industrial connector three phase 64 amperes (usually red) */
408
- IEC_60309_2_THREE_64 = "IEC_60309_2_three_64",
409
- /** IEC 62196 Type 1 "SAE J1772" */
410
- IEC_62196_T1 = "IEC_62196_T1",
411
- /** Combo Type 1 based, DC */
412
- IEC_62196_T1_COMBO = "IEC_62196_T1_COMBO",
413
- /** IEC 62196 Type 2 "Mennekes" */
414
- IEC_62196_T2 = "IEC_62196_T2",
415
- /** Combo Type 2 based, DC */
416
- IEC_62196_T2_COMBO = "IEC_62196_T2_COMBO",
417
- /** IEC 62196 Type 3A */
418
- IEC_62196_T3A = "IEC_62196_T3A",
419
- /** IEC 62196 Type 3C "Scame" */
420
- IEC_62196_T3C = "IEC_62196_T3C",
421
- /** On-board bottom-up-pantograph typically for bus charging */
422
- PANTOGRAPH_BOTTOM_UP = "PANTOGRAPH_BOTTOM_UP",
423
- /** Off-board top-down-pantograph typically for bus charging */
424
- PANTOGRAPH_TOP_DOWN = "PANTOGRAPH_TOP_DOWN",
425
- /** Tesla connector "Roadster"-type (round, 4 pins) */
426
- TESLA_R = "TESLA_R",
427
- /** Tesla connector "Model-S"-type (oval, 5 pins) */
428
- TESLA_S = "TESLA_S"
429
- }
430
-
431
- export type CarBattery = {
432
- /** Usable battery capacity in kWh */
433
- usable_kwh?: Maybe<Scalars["Float"]>;
434
- /** Full battery capacity in kWh */
435
- full_kwh?: Maybe<Scalars["Float"]>;
263
+ /** Deprecated */
264
+ export type CarBatteryEfficiency = {
265
+ /** Average efficiency measured in kWh/100 km */
266
+ average?: Maybe<Scalars["Float"]>;
267
+ /** Worst conditions are based on -10°C and use of heating, measured in kWh/100 km */
268
+ worst?: Maybe<CarEstimationData>;
269
+ /** Best conditions are based on 23°C and no use of A/C, measured in kWh/100 km */
270
+ best?: Maybe<CarEstimationData>;
436
271
  };
437
272
 
273
+ /** Battery field estimated */
274
+ export enum CarBatteryFieldEstimations {
275
+ /** Both of the battery kWh fields are estimations */
276
+ B = "B",
277
+ /** full_kwh field is estimated */
278
+ F = "F",
279
+ /** None of the battery kWh fields are estimations */
280
+ N = "N",
281
+ /** usable_kwh field is estimated */
282
+ U = "U"
283
+ }
284
+
438
285
  export type CarBody = {
439
286
  /** Width with folded mirrors in mm */
440
287
  width?: Maybe<Scalars["Int"]>;
@@ -446,83 +293,56 @@ export type CarBody = {
446
293
  seats?: Maybe<Scalars["Int"]>;
447
294
  };
448
295
 
449
- export type CarAvailability = {
450
- /**
451
- * Availability of car
452
- *
453
- * Values:
454
- * - 0 = Car no longer for sale in any market / region
455
- * - 1 = Car currently for sale in at least one market / region
456
- * - 2 = Car expected in market from Date_From (estimated), pre-order open
457
- * - 3 = Car expected in market from Date_From (estimated), pre-order unkown or not open
458
- * - 12 = Concept car, nearing production and/or confirmed, pre-order open
459
- * - 13 = Concept car, nearing production and/or confirmed, pre-order unknown or not open
460
- * - 22 = Concept car, not close to production and/or unconfirmed, pre-order open
461
- * - 23 = Concept car, not close to production and/or unconfirmed, pre-order unknown
462
- * - 91 = Status uncertain, introduction date and/or pricing unclear
463
- */
464
- status?: Maybe<Scalars["Int"]>;
465
- };
466
-
467
- export type CarPerformance = {
468
- /** Acceleration 0-100 km/h in seconds */
469
- acceleration?: Maybe<Scalars["Float"]>;
470
- /** Top speed of car in km/h */
471
- top_speed?: Maybe<Scalars["Int"]>;
472
- };
473
-
474
- export type CarRange = {
475
- /** Index range in EV Database RealRange model in km */
476
- real?: Maybe<Scalars["Int"]>;
477
- /** Indicates if real is estimated */
478
- real_is_estimated?: Maybe<Scalars["Boolean"]>;
296
+ /** Deprecated */
297
+ export type CarConsumption = {
479
298
  /** Worst conditions are based on -10°C and use of heating */
480
- worst?: Maybe<CarRangeValue>;
299
+ worst?: Maybe<Scalars["Float"]>;
481
300
  /** Best conditions are based on 23°C and no use of A/C */
482
- best?: Maybe<CarRangeValue>;
483
- /** Chargetrip's custom real world range provides a carefully calculated display range for all EV models. This is based on our own research and driving data */
484
- chargetrip_range?: Maybe<ChargetripRange>;
485
- /** @deprecated You will receive null values */
486
- wltp?: Maybe<Scalars["Float"]>;
487
- };
488
-
489
- export type CarRangeValue = {
490
- /** Estimated value on the highway or express roads */
491
- highway?: Maybe<Scalars["Int"]>;
492
- /** Estimated value on the cities road */
493
- city?: Maybe<Scalars["Int"]>;
494
- /** Estimated combined value */
495
- combined?: Maybe<Scalars["Int"]>;
301
+ best?: Maybe<Scalars["Float"]>;
496
302
  };
497
303
 
498
- /** Chargetrip's custom real world range provides a carefully calculated display range for all EV models. This is based on our own research and driving data */
499
- export type ChargetripRange = {
304
+ /** The consumption of the car */
305
+ export type CarConsumptionInput = {
500
306
  /** Worst conditions are based on -10°C and use of heating */
501
307
  worst?: Maybe<Scalars["Float"]>;
502
308
  /** Best conditions are based on 23°C and no use of A/C */
503
309
  best?: Maybe<Scalars["Float"]>;
504
310
  };
505
311
 
506
- export type CarMedia = {
507
- /** URL to detail page on EV database */
508
- evdb_details_url?: Maybe<Scalars["String"]>;
509
- /** Latest image */
510
- image?: Maybe<CarImage>;
511
- /** Latest maker logo */
512
- brand?: Maybe<CarImage>;
513
- /** All images */
514
- image_list?: Maybe<Array<Maybe<CarImage>>>;
515
- /** Latest video */
516
- video?: Maybe<CarVideo>;
517
- /** All videos */
518
- video_list?: Maybe<Array<Maybe<CarVideo>>>;
519
- /**
520
- * URL to detail page on EV database
521
- * @deprecated Will be removed in the future. Please use evdb_details_url
522
- */
523
- evdb_detail_url?: Maybe<Scalars["String"]>;
312
+ /** Drivetrain */
313
+ export enum CarDrivetrain {
314
+ /** Battery Electric Car */
315
+ BEV = "BEV",
316
+ /** Extended Range Electric Car */
317
+ EREV = "EREV"
318
+ }
319
+
320
+ /** Deprecated */
321
+ export type CarEstimationData = {
322
+ /** Estimated battery efficiency on a highway or express roads, in km */
323
+ highway?: Maybe<Scalars["Float"]>;
324
+ /** Estimated battery efficiency on city roads, in km */
325
+ city?: Maybe<Scalars["Float"]>;
326
+ /** Estimated battery efficiency on highway and city roads combined, in km */
327
+ combined?: Maybe<Scalars["Float"]>;
328
+ };
329
+
330
+ /** Deprecated */
331
+ export type CarExtraConsumption = {
332
+ /** Consumption, in kWh, of the auxiliaries */
333
+ aux?: Maybe<CarConsumption>;
334
+ /** Consumption, in kWh, of the battery management system */
335
+ bms?: Maybe<CarConsumption>;
336
+ /** Consumption, in kWh, of a car in idle mode */
337
+ idle?: Maybe<CarConsumption>;
524
338
  };
525
339
 
340
+ /** Fuel type */
341
+ export enum CarFuel {
342
+ /** Electricity only. Full electric car */
343
+ E = "E"
344
+ }
345
+
526
346
  export type CarImage = {
527
347
  /** Image id */
528
348
  id?: Maybe<Scalars["ID"]>;
@@ -542,6 +362,18 @@ export type CarImage = {
542
362
  thumbnail_width?: Maybe<Scalars["Int"]>;
543
363
  };
544
364
 
365
+ /** Deprecated */
366
+ export type CarImageData = {
367
+ /** Full size image of a car */
368
+ image?: Maybe<CarImage>;
369
+ /** Thumbnail of a full size image */
370
+ image_thumbnail?: Maybe<CarImage>;
371
+ /** Full size logo of the maker of a car */
372
+ brand?: Maybe<CarImage>;
373
+ /** Thumbnail of a full size logo of the maker of a car */
374
+ brand_thumbnail?: Maybe<CarImage>;
375
+ };
376
+
545
377
  /** Available types of images which can be found for a car. Each type has specific image sizes */
546
378
  export enum CarImageType {
547
379
  /** Images provided by a Car Datasource */
@@ -556,122 +388,197 @@ export enum CarImageType {
556
388
  BRAND_THUMBNAIL = "brand_thumbnail"
557
389
  }
558
390
 
559
- export type CarVideo = {
560
- /** Video id */
561
- id?: Maybe<Scalars["ID"]>;
562
- /** Full path URL of a video */
563
- url?: Maybe<Scalars["String"]>;
564
- };
565
-
566
- export type CarRouting = {
567
- /**
568
- * EVs that support fast charging have a minimum charging speed of 43 Kwh.
569
- * EVs without support for fast charging used in a newRoute mutation will return an error.
570
- */
571
- fast_charging_support?: Maybe<Scalars["Boolean"]>;
572
- };
573
-
574
- /** Mode (state) of the current production */
575
- export enum CarMode {
576
- /** Old car that is no longer manufactured */
577
- INDEX_ONLY = "index_only",
578
- /** Car is in production and has been released */
579
- PRODUCTION = "production",
580
- /** Future releases of a car, a concept of the car, specs may change over time */
581
- CONCEPT = "concept"
391
+ /** When uploading images to a car, you can select one of this types. The rest of the types are automatically generated by the system */
392
+ export enum CarImageTypeUploadable {
393
+ /** Full size image with a resolution at least 1536x864 px */
394
+ IMAGE = "image"
582
395
  }
583
396
 
584
- /** Deprecated */
585
- export type CarBatteryEfficiency = {
586
- /** Average efficiency measured in kWh/100 km */
587
- average?: Maybe<Scalars["Float"]>;
588
- /** Worst conditions are based on -10°C and use of heating, measured in kWh/100 km */
589
- worst?: Maybe<CarEstimationData>;
590
- /** Best conditions are based on 23°C and no use of A/C, measured in kWh/100 km */
591
- best?: Maybe<CarEstimationData>;
592
- };
593
-
594
- /** Deprecated */
595
- export type CarEstimationData = {
596
- /** Estimated battery efficiency on a highway or express roads, in km */
597
- highway?: Maybe<Scalars["Float"]>;
598
- /** Estimated battery efficiency on city roads, in km */
599
- city?: Maybe<Scalars["Float"]>;
600
- /** Estimated battery efficiency on highway and city roads combined, in km */
601
- combined?: Maybe<Scalars["Float"]>;
602
- };
603
-
604
- /** Deprecated */
605
- export type CarExtraConsumption = {
606
- /** Consumption, in kWh, of the auxiliaries */
607
- aux?: Maybe<CarConsumption>;
608
- /** Consumption, in kWh, of the battery management system */
609
- bms?: Maybe<CarConsumption>;
610
- /** Consumption, in kWh, of a car in idle mode */
611
- idle?: Maybe<CarConsumption>;
612
- };
613
-
614
- /** Deprecated */
615
- export type CarConsumption = {
616
- /** Worst conditions are based on -10°C and use of heating */
617
- worst?: Maybe<Scalars["Float"]>;
618
- /** Best conditions are based on 23°C and no use of A/C */
619
- best?: Maybe<Scalars["Float"]>;
620
- };
621
-
622
- /** Deprecated */
623
- export type CarImageData = {
624
- /** Full size image of a car */
625
- image?: Maybe<CarImage>;
626
- /** Thumbnail of a full size image */
627
- image_thumbnail?: Maybe<CarImage>;
628
- /** Full size logo of the maker of a car */
629
- brand?: Maybe<CarImage>;
630
- /** Thumbnail of a full size logo of the maker of a car */
631
- brand_thumbnail?: Maybe<CarImage>;
632
- };
633
-
634
- /** The output element of the carPremium query */
635
- export type CarPremium = {
636
- /** Unique ID of a car */
397
+ /** The output element of the carList query */
398
+ export type CarList = {
399
+ /** Cars unique ID */
637
400
  id?: Maybe<Scalars["ID"]>;
638
- /** Internal ID of the successor car trim */
639
- succesor_id?: Maybe<Scalars["String"]>;
640
401
  /** Naming of a car */
641
- naming?: Maybe<CarPremiumNaming>;
402
+ naming?: Maybe<CarListNaming>;
642
403
  /** Connectors available for a car */
643
404
  connectors?: Maybe<Array<Maybe<CarPlug>>>;
644
- /** Charge details */
645
- charge?: Maybe<CarPremiumCharge>;
646
- /** Fast charge details */
647
- fast_charge?: Maybe<CarPremiumFastCharge>;
648
405
  /** Adapters of connectors available for a car */
649
406
  adapters?: Maybe<Array<Maybe<CarPlug>>>;
650
407
  /** Battery of a car */
651
- battery?: Maybe<CarPremiumBattery>;
408
+ battery?: Maybe<CarListBattery>;
652
409
  /** Body of a car */
653
- body?: Maybe<CarPremiumBody>;
410
+ body?: Maybe<CarListBody>;
654
411
  /** Availability of a car */
655
- availability?: Maybe<CarPremiumAvailability>;
656
- /** Pricing of a car */
657
- price?: Maybe<CarPremiumPrice>;
658
- /** Drivetrain of a car */
659
- drivetrain?: Maybe<CarPremiumDrivetrain>;
660
- /** Performance of a car */
661
- performance?: Maybe<CarPremiumPerformance>;
412
+ availability?: Maybe<CarListAvailability>;
662
413
  /** Range of a car */
663
- range?: Maybe<CarPremiumRange>;
664
- /** Efficiency of a car */
665
- efficiency?: Maybe<CarPremiumEfficiency>;
666
- /** Safety of a car */
667
- safety?: Maybe<CarPremiumSafety>;
414
+ range?: Maybe<CarListRange>;
668
415
  /** Media of a car */
669
- media?: Maybe<CarPremiumMedia>;
416
+ media?: Maybe<CarListMedia>;
670
417
  /** Routing of a car */
671
- routing?: Maybe<CarPremiumRouting>;
418
+ routing?: Maybe<CarListRouting>;
419
+ /**
420
+ * ID provided by a car data source as the row ID
421
+ * @deprecated Will be removed in the future
422
+ */
423
+ externalId?: Maybe<Scalars["String"]>;
424
+ /**
425
+ * Car manufacturer
426
+ * @deprecated In favor of naming.make
427
+ */
428
+ make?: Maybe<Scalars["String"]>;
429
+ /**
430
+ * Car model
431
+ * @deprecated In favor of naming.model
432
+ */
433
+ carModel?: Maybe<Scalars["String"]>;
434
+ /**
435
+ * Car edition
436
+ * @deprecated In favor of naming.version
437
+ */
438
+ edition?: Maybe<Scalars["String"]>;
439
+ /**
440
+ * Car model edition. Added by Chargetrip as an alternative for when a car manufacturer does not provide an edition name, or uses the same edition name across all trims or consecutive years
441
+ * @deprecated In favor of naming.chargetrip_version
442
+ */
443
+ chargetripEdition?: Maybe<Scalars["String"]>;
444
+ /**
445
+ * Car version
446
+ * @deprecated In favor of naming.edition
447
+ */
448
+ version?: Maybe<Scalars["String"]>;
449
+ /**
450
+ * Chargetrip's custom real world range provides a carefully calculated display range for all EV models. This is based on our own research and driving data
451
+ * @deprecated In favor of range.chargetrip_range
452
+ */
453
+ chargetripRange?: Maybe<ChargetripRange>;
454
+ /**
455
+ * Cars that support fast charging have a minimum charging speed of 43 Kwh. Cars without support for fast charging used in a newRoute mutation will return an error
456
+ * @deprecated In favor of routing.fast_charging_support
457
+ */
458
+ fastChargingSupport?: Maybe<Scalars["Boolean"]>;
459
+ /**
460
+ * Current production mode of a car
461
+ * @deprecated In favor of availability.status
462
+ */
463
+ mode?: Maybe<CarMode>;
464
+ /**
465
+ * Number of seats
466
+ * @deprecated In favor of body.seats
467
+ */
468
+ seats?: Maybe<Scalars["Int"]>;
469
+ /**
470
+ * Usable battery capacity in kWh
471
+ * @deprecated In favor of battery.usable_kwh
472
+ */
473
+ batteryUsableKwh?: Maybe<Scalars["Float"]>;
474
+ /**
475
+ * Full battery capacity in kWh
476
+ * @deprecated In favor of battery.full_kwh
477
+ */
478
+ batteryFullKwh?: Maybe<Scalars["Float"]>;
479
+ /**
480
+ * Images of a car in structured data
481
+ * @deprecated In favor of media.image and media.brand
482
+ */
483
+ imagesData?: Maybe<CarImageData>;
484
+ /** @deprecated You will receive null values */
485
+ power?: Maybe<Scalars["Float"]>;
486
+ /** @deprecated You will receive null values */
487
+ acceleration?: Maybe<Scalars["Float"]>;
488
+ /** @deprecated You will receive null values */
489
+ topSpeed?: Maybe<Scalars["Float"]>;
490
+ /** @deprecated You will receive null values */
491
+ torque?: Maybe<Scalars["Float"]>;
492
+ /** @deprecated You will receive null values */
493
+ batteryEfficiency?: Maybe<CarBatteryEfficiency>;
494
+ /** @deprecated You will receive null values */
495
+ weight?: Maybe<Scalars["Float"]>;
496
+ /** @deprecated You will receive null values */
497
+ height?: Maybe<Scalars["Int"]>;
498
+ /** @deprecated You will receive null values */
499
+ width?: Maybe<Scalars["Int"]>;
500
+ /** @deprecated You will receive null values */
501
+ consumption?: Maybe<CarExtraConsumption>;
502
+ /** @deprecated You will receive null values */
503
+ petrolConsumption?: Maybe<Scalars["Float"]>;
504
+ /** @deprecated You will receive null values */
505
+ chargingOffset?: Maybe<Scalars["JSON"]>;
506
+ /** @deprecated You will receive null values */
507
+ auxConsumption?: Maybe<Scalars["Float"]>;
508
+ /** @deprecated You will receive null values */
509
+ bmsConsumption?: Maybe<Scalars["Float"]>;
510
+ /** @deprecated You will receive null values */
511
+ dragCoefficient?: Maybe<Scalars["Float"]>;
512
+ /** @deprecated You will receive null values */
513
+ tirePressure?: Maybe<Scalars["Float"]>;
514
+ /** @deprecated You will receive null values */
515
+ motorEfficiency?: Maybe<Scalars["Float"]>;
516
+ /** @deprecated You will receive null values */
517
+ drivelineEfficiency?: Maybe<Scalars["Float"]>;
518
+ /** @deprecated You will receive null values */
519
+ regenEfficiency?: Maybe<Scalars["Float"]>;
520
+ /** @deprecated You will receive null values */
521
+ images?: Maybe<Array<Maybe<CarImage>>>;
672
522
  };
673
523
 
674
- export type CarPremiumNaming = {
524
+ export type CarListAvailability = {
525
+ /**
526
+ * Availability of car
527
+ *
528
+ * Values:
529
+ * - 0 = Car no longer for sale in any market / region
530
+ * - 1 = Car currently for sale in at least one market / region
531
+ * - 2 = Car expected in market from Date_From (estimated), pre-order open
532
+ * - 3 = Car expected in market from Date_From (estimated), pre-order unkown or not open
533
+ * - 12 = Concept car, nearing production and/or confirmed, pre-order open
534
+ * - 13 = Concept car, nearing production and/or confirmed, pre-order unknown or not open
535
+ * - 22 = Concept car, not close to production and/or unconfirmed, pre-order open
536
+ * - 23 = Concept car, not close to production and/or unconfirmed, pre-order unknown
537
+ * - 91 = Status uncertain, introduction date and/or pricing unclear
538
+ */
539
+ status?: Maybe<Scalars["Int"]>;
540
+ };
541
+
542
+ export type CarListBattery = {
543
+ /** Usable battery capacity in kWh */
544
+ usable_kwh?: Maybe<Scalars["Float"]>;
545
+ /** Full battery capacity in kWh */
546
+ full_kwh?: Maybe<Scalars["Float"]>;
547
+ };
548
+
549
+ export type CarListBody = {
550
+ /** Number of seats in car */
551
+ seats?: Maybe<Scalars["Int"]>;
552
+ };
553
+
554
+ export type CarListFilter = {
555
+ /**
556
+ * Availability of car
557
+ *
558
+ * Values:
559
+ * - 0 = Car no longer for sale in any market / region
560
+ * - 1 = Car currently for sale in at least one market / region
561
+ * - 2 = Car expected in market from Date_From (estimated), pre-order open
562
+ * - 3 = Car expected in market from Date_From (estimated), pre-order unkown or not open
563
+ * - 12 = Concept car, nearing production and/or confirmed, pre-order open
564
+ * - 13 = Concept car, nearing production and/or confirmed, pre-order unknown or not open
565
+ * - 22 = Concept car, not close to production and/or unconfirmed, pre-order open
566
+ * - 23 = Concept car, not close to production and/or unconfirmed, pre-order unknown
567
+ * - 91 = Status uncertain, introduction date and/or pricing unclear
568
+ */
569
+ availability?: Maybe<Array<Maybe<Scalars["Int"]>>>;
570
+ };
571
+
572
+ export type CarListMedia = {
573
+ /** Latest image of the car */
574
+ image?: Maybe<CarImage>;
575
+ /** Latest maker logo of the car */
576
+ brand?: Maybe<CarImage>;
577
+ /** Latest video of the car */
578
+ video?: Maybe<CarVideo>;
579
+ };
580
+
581
+ export type CarListNaming = {
675
582
  /** Car manufacturer name */
676
583
  make?: Maybe<Scalars["String"]>;
677
584
  /** Car model name */
@@ -680,144 +587,172 @@ export type CarPremiumNaming = {
680
587
  version?: Maybe<Scalars["String"]>;
681
588
  /** Another submodel level of car */
682
589
  edition?: Maybe<Scalars["String"]>;
683
- /** Car model version. Added by Chargetrip as an alternative for when a car manufacturer does not provide a version name, or uses the same version name across all trims or consecutive years */
590
+ /** Car model version. Added by Chargetrip as an alternative for when a car manufacturer does not provide an version name, or uses the same version name across all trims or consecutive years */
684
591
  chargetrip_version?: Maybe<Scalars["String"]>;
685
592
  };
686
593
 
687
- export type CarPremiumCharge = {
688
- /** Location of charge port */
689
- plug?: Maybe<CarPremiumChargePlug>;
690
- /** Location of second charge port */
691
- second_plug?: Maybe<CarPremiumChargeSecondPlug>;
692
- /** The car standard charge */
693
- standard?: Maybe<CarPremiumChargeStandardOBC>;
694
- /** The car alternative charge */
695
- alternative?: Maybe<CarPremiumChargeAlternativeOBC>;
696
- /** The car option charge */
697
- option?: Maybe<CarPremiumChargeOptionOBC>;
594
+ /** Deprecated */
595
+ export type CarListQuery = {
596
+ /** Deprecated: Not used anymore */
597
+ make?: Maybe<Scalars["String"]>;
598
+ /** Deprecated: Not used anymore */
599
+ model?: Maybe<Scalars["String"]>;
600
+ /** Deprecated: Not used anymore */
601
+ version?: Maybe<Scalars["String"]>;
602
+ /** Deprecated: Not used anymore */
603
+ chargetrip_version?: Maybe<Scalars["String"]>;
604
+ /** Deprecated: Not used anymore */
605
+ mode?: Maybe<CarMode>;
698
606
  };
699
607
 
700
- export type CarPremiumChargePlug = {
701
- /** Type of charge port on vehicle */
702
- value?: Maybe<OCPIConnectorType>;
703
- /** Indicates if value is an estimate */
704
- is_estimated?: Maybe<Scalars["Boolean"]>;
705
- /** Location of charge port */
706
- location?: Maybe<Scalars["String"]>;
608
+ export type CarListRange = {
609
+ /**
610
+ * Is an index value of what we consider to be the real-world range.
611
+ * (Comparable to Range_Real from EV Database.) It is essentially a normalized range to display in the front-end.
612
+ */
613
+ chargetrip_range?: Maybe<ChargetripRange>;
614
+ /** @deprecated You will receive null values */
615
+ wltp?: Maybe<Scalars["Float"]>;
616
+ /** @deprecated You will receive null values */
617
+ worst?: Maybe<CarEstimationData>;
618
+ /** @deprecated You will receive null values */
619
+ best?: Maybe<CarEstimationData>;
707
620
  };
708
621
 
709
- export type CarPremiumChargeSecondPlug = {
710
- /** Location of charge port */
711
- location?: Maybe<Scalars["String"]>;
712
- /** Indicates if second charge port is optional */
713
- is_optional?: Maybe<Scalars["Boolean"]>;
622
+ export type CarListRouting = {
623
+ /**
624
+ * EVs that support fast charging have a minimum charging speed of 43 Kwh.
625
+ * EVs without support for fast charging used in a newRoute mutation will return an error.
626
+ */
627
+ fast_charging_support?: Maybe<Scalars["Boolean"]>;
714
628
  };
715
629
 
716
- export type CarPremiumChargeStandardOBC = {
717
- /** Maximum power OBC can accept to charge a battery (standard OBC) */
718
- power?: Maybe<Scalars["Float"]>;
719
- /** Number of phases the OBC accepts to achieve maximum power (standard OBC) */
720
- phases?: Maybe<Scalars["Int"]>;
721
- /** Maximum current the OBC accepts per phase to achieve maximum power (standard OBC) */
722
- phase_amperage?: Maybe<Scalars["Float"]>;
723
- /** Minutes needed to charge from 0% to 100% (standard OBC) */
724
- charge_time?: Maybe<Scalars["Int"]>;
725
- /** Charging speed when charging at maximum power (standard OBC) */
726
- charge_speed?: Maybe<Scalars["Int"]>;
727
- /** Indicates if Charge_Standard fields are estimated */
728
- is_estimated?: Maybe<Scalars["Boolean"]>;
729
- /** Charging details for the standard OBC at several charging points */
730
- table?: Maybe<Array<Maybe<CarPremiumChargeOBCTable>>>;
731
- };
732
-
733
- export type CarPremiumChargeOBCTable = {
734
- /** Voltage between phase and neutral for this EVSE (phase voltage) */
735
- evse_phase_voltage?: Maybe<Scalars["Int"]>;
736
- /** Current per phase for this EVSE (phase current) */
737
- evse_phase_amperage?: Maybe<Scalars["Int"]>;
738
- /** Number of phases for this EVSE */
739
- evse_phases?: Maybe<Scalars["Int"]>;
740
- /** Voltage between phase and neutral used by standard OBC (phase voltage) */
741
- charge_phase_voltage?: Maybe<Scalars["Int"]>;
742
- /** Current per phase used by standard OBC (phase current) */
743
- charge_phase_amperage?: Maybe<Scalars["Float"]>;
744
- /** Number of phases used by standard OBC */
745
- charge_phases?: Maybe<Scalars["Int"]>;
746
- /** Power used by standard OBC (before OBC losses) */
747
- charge_power?: Maybe<Scalars["Float"]>;
748
- /** Minutes needed to charge from 0% to 100% (standard OBC with this EVSE) */
749
- charge_time?: Maybe<Scalars["Int"]>;
750
- /** Charging speed when charging at maximum power (standard OBC with this EVSE) */
751
- charge_speed?: Maybe<Scalars["Int"]>;
630
+ export type CarMedia = {
631
+ /** URL to detail page on EV database */
632
+ evdb_details_url?: Maybe<Scalars["String"]>;
633
+ /** Latest image */
634
+ image?: Maybe<CarImage>;
635
+ /** Latest maker logo */
636
+ brand?: Maybe<CarImage>;
637
+ /** All images */
638
+ image_list?: Maybe<Array<Maybe<CarImage>>>;
639
+ /** Latest video */
640
+ video?: Maybe<CarVideo>;
641
+ /** All videos */
642
+ video_list?: Maybe<Array<Maybe<CarVideo>>>;
643
+ /**
644
+ * URL to detail page on EV database
645
+ * @deprecated Will be removed in the future. Please use evdb_details_url
646
+ */
647
+ evdb_detail_url?: Maybe<Scalars["String"]>;
752
648
  };
753
649
 
754
- export type CarPremiumChargeAlternativeOBC = {
755
- /** Maximum power OBC can accept to charge a battery (standard OBC) */
756
- power?: Maybe<Scalars["Float"]>;
757
- /** Number of phases the OBC accepts to achieve maximum power (standard OBC) */
758
- phases?: Maybe<Scalars["Int"]>;
759
- /** Maximum current the OBC accepts per phase to achieve maximum power (standard OBC) */
760
- phase_amperage?: Maybe<Scalars["Float"]>;
761
- /** Minutes needed to charge from 0% to 100% (standard OBC) */
762
- charge_time?: Maybe<Scalars["Int"]>;
763
- /** Charging speed when charging at maximum power (standard OBC) */
764
- charge_speed?: Maybe<Scalars["Int"]>;
765
- /** Charging details for the standard OBC at several charging points */
766
- table?: Maybe<Array<Maybe<CarPremiumChargeOBCTable>>>;
650
+ /** Mode (state) of the current production */
651
+ export enum CarMode {
652
+ /** Old car that is no longer manufactured */
653
+ INDEX_ONLY = "index_only",
654
+ /** Car is in production and has been released */
655
+ PRODUCTION = "production",
656
+ /** Future releases of a car, a concept of the car, specs may change over time */
657
+ CONCEPT = "concept"
658
+ }
659
+
660
+ export type CarNaming = {
661
+ /** Car manufacturer name */
662
+ make?: Maybe<Scalars["String"]>;
663
+ /** Car model name */
664
+ model?: Maybe<Scalars["String"]>;
665
+ /** Version, edition or submodel of car */
666
+ version?: Maybe<Scalars["String"]>;
667
+ /** Another submodel level of car */
668
+ edition?: Maybe<Scalars["String"]>;
669
+ /** Car model version. Added by Chargetrip as an alternative for when a car manufacturer does not provide an version name, or uses the same version name across all trims or consecutive years */
670
+ chargetrip_version?: Maybe<Scalars["String"]>;
767
671
  };
768
672
 
769
- export type CarPremiumChargeOptionOBC = {
770
- /** Maximum power OBC can accept to charge a battery (standard OBC) */
771
- power?: Maybe<Scalars["Float"]>;
772
- /** Number of phases the OBC accepts to achieve maximum power (standard OBC) */
773
- phases?: Maybe<Scalars["Int"]>;
774
- /** Maximum current the OBC accepts per phase to achieve maximum power (standard OBC) */
775
- phase_amperage?: Maybe<Scalars["Float"]>;
776
- /** Minutes needed to charge from 0% to 100% (standard OBC) */
777
- charge_time?: Maybe<Scalars["Int"]>;
778
- /** Charging speed when charging at maximum power (standard OBC) */
779
- charge_speed?: Maybe<Scalars["Int"]>;
780
- /** Charging details for the standard OBC at several charging points */
781
- table?: Maybe<Array<Maybe<CarPremiumChargeOBCTable>>>;
673
+ export type CarPerformance = {
674
+ /** Acceleration 0-100 km/h in seconds */
675
+ acceleration?: Maybe<Scalars["Float"]>;
676
+ /** Top speed of car in km/h */
677
+ top_speed?: Maybe<Scalars["Int"]>;
782
678
  };
783
679
 
784
- export type CarPremiumFastCharge = {
785
- /** Location of charge port */
786
- plug?: Maybe<CarPremiumChargePlug>;
787
- /** Power during fast charging from 10% to 80% SoC (optimal conditions, fastest charger) */
788
- power?: Maybe<CarPremiumChargePower>;
789
- /** Minutes needed to charge from 10% to 80%, with average charging power (optimal conditions, fastest charger) */
790
- charge_time?: Maybe<Scalars["Float"]>;
791
- /** Charging speed during fast charging from 10% to 80% (optimal conditions, fastest charger) */
792
- charge_speed?: Maybe<Scalars["Float"]>;
793
- /** Indicates if fast charge is optional in some markets/regions */
794
- is_optional?: Maybe<Scalars["Boolean"]>;
795
- /** Indicates what fields are estimated */
796
- is_estimated?: Maybe<Scalars["Boolean"]>;
797
- /** Charging details for fast charging */
798
- table?: Maybe<Array<Maybe<CarPremiumFastChargeTable>>>;
680
+ /** Car plug model */
681
+ export type CarPlug = {
682
+ /** Plug type, known as connector standard in OCPI */
683
+ standard?: Maybe<OCPIConnectorType>;
684
+ /** Usable electric power in kW */
685
+ power?: Maybe<Scalars["Float"]>;
686
+ /** Maximum electric power in kW */
687
+ max_electric_power?: Maybe<Scalars["Float"]>;
688
+ /** Time it takes to charge from 10 to 80% with a fast charger, shown in minutes */
689
+ time?: Maybe<Scalars["Int"]>;
690
+ /** Charging speed in km/h */
691
+ speed?: Maybe<Scalars["Int"]>;
799
692
  };
800
693
 
801
- export type CarPremiumChargePower = {
802
- /** Maximum value */
803
- max?: Maybe<Scalars["Float"]>;
804
- /** Average value */
805
- average?: Maybe<Scalars["Float"]>;
694
+ /** The output element of the carPremium query */
695
+ export type CarPremium = {
696
+ /** Unique ID of a car */
697
+ id?: Maybe<Scalars["ID"]>;
698
+ /** Internal ID of the successor car trim */
699
+ succesor_id?: Maybe<Scalars["String"]>;
700
+ /** Naming of a car */
701
+ naming?: Maybe<CarPremiumNaming>;
702
+ /** Connectors available for a car */
703
+ connectors?: Maybe<Array<Maybe<CarPlug>>>;
704
+ /** Charge details */
705
+ charge?: Maybe<CarPremiumCharge>;
706
+ /** Fast charge details */
707
+ fast_charge?: Maybe<CarPremiumFastCharge>;
708
+ /** Adapters of connectors available for a car */
709
+ adapters?: Maybe<Array<Maybe<CarPlug>>>;
710
+ /** Battery of a car */
711
+ battery?: Maybe<CarPremiumBattery>;
712
+ /** Body of a car */
713
+ body?: Maybe<CarPremiumBody>;
714
+ /** Availability of a car */
715
+ availability?: Maybe<CarPremiumAvailability>;
716
+ /** Pricing of a car */
717
+ price?: Maybe<CarPremiumPrice>;
718
+ /** Drivetrain of a car */
719
+ drivetrain?: Maybe<CarPremiumDrivetrain>;
720
+ /** Performance of a car */
721
+ performance?: Maybe<CarPremiumPerformance>;
722
+ /** Range of a car */
723
+ range?: Maybe<CarPremiumRange>;
724
+ /** Efficiency of a car */
725
+ efficiency?: Maybe<CarPremiumEfficiency>;
726
+ /** Safety of a car */
727
+ safety?: Maybe<CarPremiumSafety>;
728
+ /** Media of a car */
729
+ media?: Maybe<CarPremiumMedia>;
730
+ /** Routing of a car */
731
+ routing?: Maybe<CarPremiumRouting>;
806
732
  };
807
733
 
808
- export type CarPremiumFastChargeTable = {
809
- /** Charging details for fast charging (format: ChargerPlug-ChargerPower-AC/DC) */
810
- format?: Maybe<Scalars["String"]>;
811
- /** Fast charge power */
812
- power?: Maybe<CarPremiumChargePower>;
813
- /** Minutes needed to charge from 10% to 80% (optimal conditions) */
814
- charge_time?: Maybe<Scalars["Int"]>;
815
- /** Charging speed during fast charging from 10% to 80% (optimal conditions) */
816
- charge_speed?: Maybe<Scalars["Int"]>;
817
- /** Indicates if maximum power during fast charging is limited by the vehicle */
818
- is_limited?: Maybe<Scalars["Boolean"]>;
819
- /** Indicates if average power during fast charging is limited by the vehicle */
820
- average_is_limited?: Maybe<Scalars["Boolean"]>;
734
+ export type CarPremiumAvailability = {
735
+ /**
736
+ * Availability of car
737
+ *
738
+ * Values:
739
+ * - 0 = Car no longer for sale in any market/region
740
+ * - 1 = Car currently for sale in at least one market/region
741
+ * - 2 = Car expected in market from Date_From (estimated), pre-order open
742
+ * - 3 = Car expected in market from Date_From (estimated), pre-order unknown or not open
743
+ * - 12 = Concept car, nearing production and/or confirmed, pre-order open
744
+ * - 13 = Concept car, nearing production and/or confirmed, pre-order unknown or not open
745
+ * - 22 = Concept car, not close to production and/or unconfirmed, pre-order open
746
+ * - 23 = Concept car, not close to production and/or unconfirmed, pre-order unknown
747
+ * - 91 = Status uncertain, introduction date and/or pricing unclear
748
+ */
749
+ status?: Maybe<Scalars["Int"]>;
750
+ /** Date of introduction, mm-yyyy */
751
+ date_from?: Maybe<Scalars["String"]>;
752
+ /** Indicates if date from field is estimated */
753
+ date_from_is_estimated?: Maybe<Scalars["Boolean"]>;
754
+ /** Date last available, mm-yyyy */
755
+ date_to?: Maybe<Scalars["String"]>;
821
756
  };
822
757
 
823
758
  export type CarPremiumBattery = {
@@ -835,18 +770,6 @@ export type CarPremiumBattery = {
835
770
  warranty_mileage?: Maybe<Scalars["Float"]>;
836
771
  };
837
772
 
838
- /** Battery field estimated */
839
- export enum CarBatteryFieldEstimations {
840
- /** Both of the battery kWh fields are estimations */
841
- B = "B",
842
- /** full_kwh field is estimated */
843
- F = "F",
844
- /** None of the battery kWh fields are estimations */
845
- N = "N",
846
- /** usable_kwh field is estimated */
847
- U = "U"
848
- }
849
-
850
773
  export type CarPremiumBody = {
851
774
  /** Length in mm */
852
775
  length?: Maybe<Scalars["Int"]>;
@@ -902,59 +825,115 @@ export type CarPremiumBody = {
902
825
  vehicle_platform?: Maybe<Scalars["String"]>;
903
826
  /** Indicates if the vehicle platform used for vehicle is a dedicated battery electric vehicle platform */
904
827
  vehicle_platform_is_dedicated?: Maybe<Scalars["Boolean"]>;
905
- };
906
-
907
- export type CarPremiumAvailability = {
908
828
  /**
909
- * Availability of car
910
- *
911
- * Values:
912
- * - 0 = Car no longer for sale in any market/region
913
- * - 1 = Car currently for sale in at least one market/region
914
- * - 2 = Car expected in market from Date_From (estimated), pre-order open
915
- * - 3 = Car expected in market from Date_From (estimated), pre-order unknown or not open
916
- * - 12 = Concept car, nearing production and/or confirmed, pre-order open
917
- * - 13 = Concept car, nearing production and/or confirmed, pre-order unknown or not open
918
- * - 22 = Concept car, not close to production and/or unconfirmed, pre-order open
919
- * - 23 = Concept car, not close to production and/or unconfirmed, pre-order unknown
920
- * - 91 = Status uncertain, introduction date and/or pricing unclear
829
+ * Indicates whether a car has roof rails as a standard
830
+ * @deprecated In favor of has_roofrails
921
831
  */
922
- status?: Maybe<Scalars["Int"]>;
923
- /** Date of introduction, mm-yyyy */
924
- date_from?: Maybe<Scalars["String"]>;
925
- /** Indicates if date from field is estimated */
926
- date_from_is_estimated?: Maybe<Scalars["Boolean"]>;
927
- /** Date last available, mm-yyyy */
928
- date_to?: Maybe<Scalars["String"]>;
929
- };
930
-
931
- export type CarPremiumPrice = {
932
- /** Starting price for German market */
933
- de?: Maybe<CarPremiumPriceValue>;
934
- /** Starting price for Dutch market */
935
- nl?: Maybe<CarPremiumPriceValue>;
936
- /** Starting price for British market */
937
- uk?: Maybe<CarPremiumPriceValueWithGrant>;
832
+ rooftrails?: Maybe<Scalars["Boolean"]>;
938
833
  };
939
834
 
940
- export type CarPremiumPriceValue = {
941
- /** Starting price for local market */
942
- value?: Maybe<Scalars["Int"]>;
943
- /** Currency name for local market */
944
- currency?: Maybe<Scalars["String"]>;
945
- /** Indicates if price value is based on estimates */
946
- is_estimated?: Maybe<Scalars["Boolean"]>;
835
+ export type CarPremiumCharge = {
836
+ /** Location of charge port */
837
+ plug?: Maybe<CarPremiumChargePlug>;
838
+ /** Location of second charge port */
839
+ second_plug?: Maybe<CarPremiumChargeSecondPlug>;
840
+ /** The car standard charge */
841
+ standard?: Maybe<CarPremiumChargeStandardOBC>;
842
+ /** The car alternative charge */
843
+ alternative?: Maybe<CarPremiumChargeAlternativeOBC>;
844
+ /** The car option charge */
845
+ option?: Maybe<CarPremiumChargeOptionOBC>;
947
846
  };
948
847
 
949
- export type CarPremiumPriceValueWithGrant = {
950
- /** Starting price for local market */
951
- value?: Maybe<Scalars["Int"]>;
952
- /** Currency name for local market */
953
- currency?: Maybe<Scalars["String"]>;
954
- /** Indicates if price value is based on estimates */
848
+ export type CarPremiumChargeAlternativeOBC = {
849
+ /** Maximum power OBC can accept to charge a battery (standard OBC) */
850
+ power?: Maybe<Scalars["Float"]>;
851
+ /** Number of phases the OBC accepts to achieve maximum power (standard OBC) */
852
+ phases?: Maybe<Scalars["Int"]>;
853
+ /** Maximum current the OBC accepts per phase to achieve maximum power (standard OBC) */
854
+ phase_amperage?: Maybe<Scalars["Float"]>;
855
+ /** Minutes needed to charge from 0% to 100% (standard OBC) */
856
+ charge_time?: Maybe<Scalars["Int"]>;
857
+ /** Charging speed when charging at maximum power (standard OBC) */
858
+ charge_speed?: Maybe<Scalars["Int"]>;
859
+ /** Charging details for the standard OBC at several charging points */
860
+ table?: Maybe<Array<Maybe<CarPremiumChargeOBCTable>>>;
861
+ };
862
+
863
+ export type CarPremiumChargeOBCTable = {
864
+ /** Voltage between phase and neutral for this EVSE (phase voltage) */
865
+ evse_phase_voltage?: Maybe<Scalars["Int"]>;
866
+ /** Current per phase for this EVSE (phase current) */
867
+ evse_phase_amperage?: Maybe<Scalars["Int"]>;
868
+ /** Number of phases for this EVSE */
869
+ evse_phases?: Maybe<Scalars["Int"]>;
870
+ /** Voltage between phase and neutral used by standard OBC (phase voltage) */
871
+ charge_phase_voltage?: Maybe<Scalars["Int"]>;
872
+ /** Current per phase used by standard OBC (phase current) */
873
+ charge_phase_amperage?: Maybe<Scalars["Float"]>;
874
+ /** Number of phases used by standard OBC */
875
+ charge_phases?: Maybe<Scalars["Int"]>;
876
+ /** Power used by standard OBC (before OBC losses) */
877
+ charge_power?: Maybe<Scalars["Float"]>;
878
+ /** Minutes needed to charge from 0% to 100% (standard OBC with this EVSE) */
879
+ charge_time?: Maybe<Scalars["Int"]>;
880
+ /** Charging speed when charging at maximum power (standard OBC with this EVSE) */
881
+ charge_speed?: Maybe<Scalars["Int"]>;
882
+ };
883
+
884
+ export type CarPremiumChargeOptionOBC = {
885
+ /** Maximum power OBC can accept to charge a battery (standard OBC) */
886
+ power?: Maybe<Scalars["Float"]>;
887
+ /** Number of phases the OBC accepts to achieve maximum power (standard OBC) */
888
+ phases?: Maybe<Scalars["Int"]>;
889
+ /** Maximum current the OBC accepts per phase to achieve maximum power (standard OBC) */
890
+ phase_amperage?: Maybe<Scalars["Float"]>;
891
+ /** Minutes needed to charge from 0% to 100% (standard OBC) */
892
+ charge_time?: Maybe<Scalars["Int"]>;
893
+ /** Charging speed when charging at maximum power (standard OBC) */
894
+ charge_speed?: Maybe<Scalars["Int"]>;
895
+ /** Charging details for the standard OBC at several charging points */
896
+ table?: Maybe<Array<Maybe<CarPremiumChargeOBCTable>>>;
897
+ };
898
+
899
+ export type CarPremiumChargePlug = {
900
+ /** Type of charge port on vehicle */
901
+ value?: Maybe<OCPIConnectorType>;
902
+ /** Indicates if value is an estimate */
955
903
  is_estimated?: Maybe<Scalars["Boolean"]>;
956
- /** Grant is applied to value */
957
- grant_applied?: Maybe<Scalars["Int"]>;
904
+ /** Location of charge port */
905
+ location?: Maybe<Scalars["String"]>;
906
+ };
907
+
908
+ export type CarPremiumChargePower = {
909
+ /** Maximum value */
910
+ max?: Maybe<Scalars["Float"]>;
911
+ /** Average value */
912
+ average?: Maybe<Scalars["Float"]>;
913
+ };
914
+
915
+ export type CarPremiumChargeSecondPlug = {
916
+ /** Location of charge port */
917
+ location?: Maybe<Scalars["String"]>;
918
+ /** Indicates if second charge port is optional */
919
+ is_optional?: Maybe<Scalars["Boolean"]>;
920
+ };
921
+
922
+ export type CarPremiumChargeStandardOBC = {
923
+ /** Maximum power OBC can accept to charge a battery (standard OBC) */
924
+ power?: Maybe<Scalars["Float"]>;
925
+ /** Number of phases the OBC accepts to achieve maximum power (standard OBC) */
926
+ phases?: Maybe<Scalars["Int"]>;
927
+ /** Maximum current the OBC accepts per phase to achieve maximum power (standard OBC) */
928
+ phase_amperage?: Maybe<Scalars["Float"]>;
929
+ /** Minutes needed to charge from 0% to 100% (standard OBC) */
930
+ charge_time?: Maybe<Scalars["Int"]>;
931
+ /** Charging speed when charging at maximum power (standard OBC) */
932
+ charge_speed?: Maybe<Scalars["Int"]>;
933
+ /** Indicates if Charge_Standard fields are estimated */
934
+ is_estimated?: Maybe<Scalars["Boolean"]>;
935
+ /** Charging details for the standard OBC at several charging points */
936
+ table?: Maybe<Array<Maybe<CarPremiumChargeOBCTable>>>;
958
937
  };
959
938
 
960
939
  export type CarPremiumDrivetrain = {
@@ -978,73 +957,6 @@ export type CarPremiumDrivetrain = {
978
957
  torque_is_estimated?: Maybe<Scalars["Boolean"]>;
979
958
  };
980
959
 
981
- /** Drivetrain */
982
- export enum CarDrivetrain {
983
- /** Battery Electric Car */
984
- BEV = "BEV",
985
- /** Extended Range Electric Car */
986
- EREV = "EREV"
987
- }
988
-
989
- /** Fuel type */
990
- export enum CarFuel {
991
- /** Electricity only. Full electric car */
992
- E = "E"
993
- }
994
-
995
- /** Propulsion */
996
- export enum CarPropulsion {
997
- /** All-wheel drive car */
998
- AWD = "AWD",
999
- /** Front-wheel drive car */
1000
- FRONT = "Front",
1001
- /** Rear-wheel drive car */
1002
- REAR = "Rear"
1003
- }
1004
-
1005
- export type CarPremiumPerformance = {
1006
- /** Acceleration 0-100 km/h in seconds */
1007
- acceleration?: Maybe<Scalars["Float"]>;
1008
- /** Indicates if acceleration field is estimated */
1009
- acceleration_is_estimated?: Maybe<Scalars["Boolean"]>;
1010
- /** Top speed of car in km/h */
1011
- top_speed?: Maybe<Scalars["Int"]>;
1012
- /** Indicates if top_speed field is estimated */
1013
- top_speed_is_estimated?: Maybe<Scalars["Boolean"]>;
1014
- };
1015
-
1016
- export type CarPremiumRange = {
1017
- /** Rated range in WLTP combined cycle (NULL if not WLTP rated) in km */
1018
- wltp?: Maybe<Scalars["Int"]>;
1019
- /** Indicates if WLTP range is estimated (NULL if not WLTP rated) */
1020
- wltp_is_estimated?: Maybe<Scalars["Boolean"]>;
1021
- /** Rated range in WLTP (TEH/least efficient trim) combined cycle (NULL if not WLTP rated) */
1022
- wltp_teh?: Maybe<Scalars["Int"]>;
1023
- /** Rated range in NEDC combined cycle (NULL if not NEDC rated) in km */
1024
- nedc?: Maybe<Scalars["Int"]>;
1025
- /** Indicates if NEDC range is estimated (NULL if not NEDC rated) */
1026
- nedc_is_estimated?: Maybe<Scalars["Boolean"]>;
1027
- /** Index range in EV Database RealRange model in km */
1028
- real?: Maybe<Scalars["Int"]>;
1029
- /** Indicates if real is estimated */
1030
- real_is_estimated?: Maybe<Scalars["Boolean"]>;
1031
- /** Worst conditions are based on -10°C and use of heating */
1032
- worst?: Maybe<CarPremiumRangeValue>;
1033
- /** Best conditions are based on 23°C and no use of A/C */
1034
- best?: Maybe<CarPremiumRangeValue>;
1035
- /** Is an index value of what we consider to be the real-world range. (Comparable to Range_Real from EV Database.) It is essentially a normalized range to display on the front-end. */
1036
- chargetrip_range?: Maybe<ChargetripRange>;
1037
- };
1038
-
1039
- export type CarPremiumRangeValue = {
1040
- /** Estimated value on highway or express roads */
1041
- highway?: Maybe<Scalars["Int"]>;
1042
- /** Estimated value on city roads */
1043
- city?: Maybe<Scalars["Int"]>;
1044
- /** Estimated combined value */
1045
- combined?: Maybe<Scalars["Int"]>;
1046
- };
1047
-
1048
960
  export type CarPremiumEfficiency = {
1049
961
  /** Rated efficiency in WLTP combined cycle */
1050
962
  wltp?: Maybe<CarPremiumEfficiencyWLTP>;
@@ -1056,32 +968,6 @@ export type CarPremiumEfficiency = {
1056
968
  real?: Maybe<CarPremiumEfficiencyReal>;
1057
969
  };
1058
970
 
1059
- export type CarPremiumEfficiencyWLTP = {
1060
- /** Rated efficiency in WLTP combined cycle in kWh/100 km */
1061
- value?: Maybe<Scalars["Float"]>;
1062
- /** Rated efficiency in WLTP combined cycle presented in gas equivalent, in l/100 km */
1063
- fuel_equivalent?: Maybe<Scalars["Float"]>;
1064
- /** Rated vehicle efficiency in WLTP combined cycle (based on value) in kWh/100 km */
1065
- vehicle?: Maybe<Scalars["Float"]>;
1066
- /** Rated vehicle efficiency in WLTP combined cycle presented in gas equivalent, in l/100 km */
1067
- vehicle_fuel_equivalent?: Maybe<Scalars["Float"]>;
1068
- /** Rated CO2 emissions in WLTP combined cycle in battery-only mode (NULL if not WLTP rated) in gr/km */
1069
- co2?: Maybe<Scalars["Int"]>;
1070
- };
1071
-
1072
- export type CarPremiumEfficiencyWLTPTEH = {
1073
- /** Rated efficiency in WLTP TEH combined cycle (TEH/least efficient trim) */
1074
- value?: Maybe<Scalars["Float"]>;
1075
- /** Rated efficiency in WLTP TEH combined cycle presented in gas equivalent, in l/100 km */
1076
- fuel_equivalent?: Maybe<Scalars["Float"]>;
1077
- /** Rated vehicle efficiency in WLTP TEH combined cycle (based on value) in kWh/100 km */
1078
- vehicle?: Maybe<Scalars["Float"]>;
1079
- /** Rated vehicle efficiency in WLTP TEH combined cycle presented in gas equivalent, in l/100 km */
1080
- vehicle_fuel_equivalent?: Maybe<Scalars["Float"]>;
1081
- /** Rated CO2 emissions in WLTP TEH combined cycle in battery-only mode (NULL if not WLTP TEH rated) in gr/km */
1082
- co2?: Maybe<Scalars["Int"]>;
1083
- };
1084
-
1085
971
  export type CarPremiumEfficiencyNEDC = {
1086
972
  /** Rated efficiency in NEDC combined cycle in kWh/100 km */
1087
973
  value?: Maybe<Scalars["Float"]>;
@@ -1115,55 +1001,186 @@ export type CarPremiumEfficiencyRealValue = {
1115
1001
  combined?: Maybe<Scalars["Float"]>;
1116
1002
  };
1117
1003
 
1118
- export type CarPremiumSafety = {
1119
- /** Number of seats equipped with ISOFIX */
1120
- isofix_seats?: Maybe<Scalars["Int"]>;
1121
- /** EuroNCAP results */
1122
- euro_ncap?: Maybe<CarPremiumSafetyEuroNcap>;
1123
- };
1124
-
1125
- export type CarPremiumSafetyEuroNcap = {
1126
- /** EuroNCAP rating (out of 5 stars) */
1127
- rating?: Maybe<Scalars["Int"]>;
1128
- /** EuroNCAP year of rating */
1129
- year?: Maybe<Scalars["Int"]>;
1130
- /** EuroNCAP rating of adult protection (out of 100%) */
1131
- adult?: Maybe<Scalars["Int"]>;
1132
- /** EuroNCAP rating of child protection (out of 100%) */
1133
- child?: Maybe<Scalars["Int"]>;
1134
- /** EuroNCAP rating of vulnerable road users (out of 100%) */
1135
- vru?: Maybe<Scalars["Int"]>;
1136
- /** EuroNCAP rating of safety assists (out of 100%) */
1137
- sa?: Maybe<Scalars["Int"]>;
1004
+ export type CarPremiumEfficiencyWLTP = {
1005
+ /** Rated efficiency in WLTP combined cycle in kWh/100 km */
1006
+ value?: Maybe<Scalars["Float"]>;
1007
+ /** Rated efficiency in WLTP combined cycle presented in gas equivalent, in l/100 km */
1008
+ fuel_equivalent?: Maybe<Scalars["Float"]>;
1009
+ /** Rated vehicle efficiency in WLTP combined cycle (based on value) in kWh/100 km */
1010
+ vehicle?: Maybe<Scalars["Float"]>;
1011
+ /** Rated vehicle efficiency in WLTP combined cycle presented in gas equivalent, in l/100 km */
1012
+ vehicle_fuel_equivalent?: Maybe<Scalars["Float"]>;
1013
+ /** Rated CO2 emissions in WLTP combined cycle in battery-only mode (NULL if not WLTP rated) in gr/km */
1014
+ co2?: Maybe<Scalars["Int"]>;
1138
1015
  };
1139
1016
 
1140
- export type CarPremiumMedia = {
1141
- /** URL to detail page on EV database */
1142
- evdb_details_url?: Maybe<Scalars["String"]>;
1143
- /** Latest image */
1144
- image?: Maybe<CarImage>;
1145
- /** Latest maker logo */
1146
- brand?: Maybe<CarImage>;
1147
- /** All images */
1148
- image_list?: Maybe<Array<Maybe<CarImage>>>;
1149
- /** Latest video */
1150
- video?: Maybe<CarVideo>;
1151
- /** All videos */
1152
- video_list?: Maybe<Array<Maybe<CarVideo>>>;
1153
- /**
1154
- * URL to detail page on EV database
1155
- * @deprecated Will be removed in the future. Please use evdb_details_url
1156
- */
1157
- evdb_detail_url?: Maybe<Scalars["String"]>;
1017
+ export type CarPremiumEfficiencyWLTPTEH = {
1018
+ /** Rated efficiency in WLTP TEH combined cycle (TEH/least efficient trim) */
1019
+ value?: Maybe<Scalars["Float"]>;
1020
+ /** Rated efficiency in WLTP TEH combined cycle presented in gas equivalent, in l/100 km */
1021
+ fuel_equivalent?: Maybe<Scalars["Float"]>;
1022
+ /** Rated vehicle efficiency in WLTP TEH combined cycle (based on value) in kWh/100 km */
1023
+ vehicle?: Maybe<Scalars["Float"]>;
1024
+ /** Rated vehicle efficiency in WLTP TEH combined cycle presented in gas equivalent, in l/100 km */
1025
+ vehicle_fuel_equivalent?: Maybe<Scalars["Float"]>;
1026
+ /** Rated CO2 emissions in WLTP TEH combined cycle in battery-only mode (NULL if not WLTP TEH rated) in gr/km */
1027
+ co2?: Maybe<Scalars["Int"]>;
1158
1028
  };
1159
1029
 
1160
- export type CarPremiumRouting = {
1161
- /**
1162
- * EVs that support fast charging have a minimum charging speed of 43 Kwh.
1163
- * EVs without support for fast charging used in a newRoute mutation will return an error.
1164
- */
1165
- fast_charging_support?: Maybe<Scalars["Boolean"]>;
1166
- /** Drag coefficient */
1030
+ export type CarPremiumFastCharge = {
1031
+ /** Location of charge port */
1032
+ plug?: Maybe<CarPremiumChargePlug>;
1033
+ /** Power during fast charging from 10% to 80% SoC (optimal conditions, fastest charger) */
1034
+ power?: Maybe<CarPremiumChargePower>;
1035
+ /** Minutes needed to charge from 10% to 80%, with average charging power (optimal conditions, fastest charger) */
1036
+ charge_time?: Maybe<Scalars["Float"]>;
1037
+ /** Charging speed during fast charging from 10% to 80% (optimal conditions, fastest charger) */
1038
+ charge_speed?: Maybe<Scalars["Float"]>;
1039
+ /** Indicates if fast charge is optional in some markets/regions */
1040
+ is_optional?: Maybe<Scalars["Boolean"]>;
1041
+ /** Indicates what fields are estimated */
1042
+ is_estimated?: Maybe<Scalars["Boolean"]>;
1043
+ /** Charging details for fast charging */
1044
+ table?: Maybe<Array<Maybe<CarPremiumFastChargeTable>>>;
1045
+ };
1046
+
1047
+ export type CarPremiumFastChargeTable = {
1048
+ /** Charging details for fast charging (format: ChargerPlug-ChargerPower-AC/DC) */
1049
+ format?: Maybe<Scalars["String"]>;
1050
+ /** Fast charge power */
1051
+ power?: Maybe<CarPremiumChargePower>;
1052
+ /** Minutes needed to charge from 10% to 80% (optimal conditions) */
1053
+ charge_time?: Maybe<Scalars["Int"]>;
1054
+ /** Charging speed during fast charging from 10% to 80% (optimal conditions) */
1055
+ charge_speed?: Maybe<Scalars["Int"]>;
1056
+ /** Indicates if maximum power during fast charging is limited by the vehicle */
1057
+ is_limited?: Maybe<Scalars["Boolean"]>;
1058
+ /** Indicates if average power during fast charging is limited by the vehicle */
1059
+ average_is_limited?: Maybe<Scalars["Boolean"]>;
1060
+ };
1061
+
1062
+ export type CarPremiumMedia = {
1063
+ /** URL to detail page on EV database */
1064
+ evdb_details_url?: Maybe<Scalars["String"]>;
1065
+ /** Latest image */
1066
+ image?: Maybe<CarImage>;
1067
+ /** Latest maker logo */
1068
+ brand?: Maybe<CarImage>;
1069
+ /** All images */
1070
+ image_list?: Maybe<Array<Maybe<CarImage>>>;
1071
+ /** Latest video */
1072
+ video?: Maybe<CarVideo>;
1073
+ /** All videos */
1074
+ video_list?: Maybe<Array<Maybe<CarVideo>>>;
1075
+ /**
1076
+ * URL to detail page on EV database
1077
+ * @deprecated Will be removed in the future. Please use evdb_details_url
1078
+ */
1079
+ evdb_detail_url?: Maybe<Scalars["String"]>;
1080
+ };
1081
+
1082
+ export type CarPremiumNaming = {
1083
+ /** Car manufacturer name */
1084
+ make?: Maybe<Scalars["String"]>;
1085
+ /** Car model name */
1086
+ model?: Maybe<Scalars["String"]>;
1087
+ /** Version, edition or submodel of car */
1088
+ version?: Maybe<Scalars["String"]>;
1089
+ /** Another submodel level of car */
1090
+ edition?: Maybe<Scalars["String"]>;
1091
+ /** Car model version. Added by Chargetrip as an alternative for when a car manufacturer does not provide a version name, or uses the same version name across all trims or consecutive years */
1092
+ chargetrip_version?: Maybe<Scalars["String"]>;
1093
+ };
1094
+
1095
+ export type CarPremiumPerformance = {
1096
+ /** Acceleration 0-100 km/h in seconds */
1097
+ acceleration?: Maybe<Scalars["Float"]>;
1098
+ /** Indicates if acceleration field is estimated */
1099
+ acceleration_is_estimated?: Maybe<Scalars["Boolean"]>;
1100
+ /** Top speed of car in km/h */
1101
+ top_speed?: Maybe<Scalars["Int"]>;
1102
+ /** Indicates if top_speed field is estimated */
1103
+ top_speed_is_estimated?: Maybe<Scalars["Boolean"]>;
1104
+ };
1105
+
1106
+ export type CarPremiumPrice = {
1107
+ /** Starting price for German market */
1108
+ de?: Maybe<CarPremiumPriceValue>;
1109
+ /** Starting price for Dutch market */
1110
+ nl?: Maybe<CarPremiumPriceValue>;
1111
+ /** Starting price for British market */
1112
+ uk?: Maybe<CarPremiumPriceValueWithGrant>;
1113
+ };
1114
+
1115
+ export type CarPremiumPriceValue = {
1116
+ /** Starting price for local market */
1117
+ value?: Maybe<Scalars["Int"]>;
1118
+ /** Currency name for local market */
1119
+ currency?: Maybe<Scalars["String"]>;
1120
+ /** Indicates if price value is based on estimates */
1121
+ is_estimated?: Maybe<Scalars["Boolean"]>;
1122
+ /**
1123
+ * Indicates if price value is based on estimates
1124
+ * @deprecated In favor of is_estimated
1125
+ */
1126
+ estimated?: Maybe<Scalars["Boolean"]>;
1127
+ };
1128
+
1129
+ export type CarPremiumPriceValueWithGrant = {
1130
+ /** Starting price for local market */
1131
+ value?: Maybe<Scalars["Int"]>;
1132
+ /** Currency name for local market */
1133
+ currency?: Maybe<Scalars["String"]>;
1134
+ /** Indicates if price value is based on estimates */
1135
+ is_estimated?: Maybe<Scalars["Boolean"]>;
1136
+ /** Grant is applied to value */
1137
+ grant_applied?: Maybe<Scalars["Int"]>;
1138
+ /**
1139
+ * Indicates if price value is based on estimates
1140
+ * @deprecated In favor of is_estimated
1141
+ */
1142
+ estimated?: Maybe<Scalars["Boolean"]>;
1143
+ };
1144
+
1145
+ export type CarPremiumRange = {
1146
+ /** Rated range in WLTP combined cycle (NULL if not WLTP rated) in km */
1147
+ wltp?: Maybe<Scalars["Int"]>;
1148
+ /** Indicates if WLTP range is estimated (NULL if not WLTP rated) */
1149
+ wltp_is_estimated?: Maybe<Scalars["Boolean"]>;
1150
+ /** Rated range in WLTP (TEH/least efficient trim) combined cycle (NULL if not WLTP rated) */
1151
+ wltp_teh?: Maybe<Scalars["Int"]>;
1152
+ /** Rated range in NEDC combined cycle (NULL if not NEDC rated) in km */
1153
+ nedc?: Maybe<Scalars["Int"]>;
1154
+ /** Indicates if NEDC range is estimated (NULL if not NEDC rated) */
1155
+ nedc_is_estimated?: Maybe<Scalars["Boolean"]>;
1156
+ /** Index range in EV Database RealRange model in km */
1157
+ real?: Maybe<Scalars["Int"]>;
1158
+ /** Indicates if real is estimated */
1159
+ real_is_estimated?: Maybe<Scalars["Boolean"]>;
1160
+ /** Worst conditions are based on -10°C and use of heating */
1161
+ worst?: Maybe<CarPremiumRangeValue>;
1162
+ /** Best conditions are based on 23°C and no use of A/C */
1163
+ best?: Maybe<CarPremiumRangeValue>;
1164
+ /** Is an index value of what we consider to be the real-world range. (Comparable to Range_Real from EV Database.) It is essentially a normalized range to display on the front-end. */
1165
+ chargetrip_range?: Maybe<ChargetripRange>;
1166
+ };
1167
+
1168
+ export type CarPremiumRangeValue = {
1169
+ /** Estimated value on highway or express roads */
1170
+ highway?: Maybe<Scalars["Int"]>;
1171
+ /** Estimated value on city roads */
1172
+ city?: Maybe<Scalars["Int"]>;
1173
+ /** Estimated combined value */
1174
+ combined?: Maybe<Scalars["Int"]>;
1175
+ };
1176
+
1177
+ export type CarPremiumRouting = {
1178
+ /**
1179
+ * EVs that support fast charging have a minimum charging speed of 43 Kwh.
1180
+ * EVs without support for fast charging used in a newRoute mutation will return an error.
1181
+ */
1182
+ fast_charging_support?: Maybe<Scalars["Boolean"]>;
1183
+ /** Drag coefficient */
1167
1184
  drag_coefficient?: Maybe<Scalars["Float"]>;
1168
1185
  /** Tire pressure recommended by manufacturer */
1169
1186
  tire_pressure?: Maybe<Scalars["Float"]>;
@@ -1189,250 +1206,788 @@ export type CarPremiumRoutingConsumptionValue = {
1189
1206
  worst?: Maybe<Scalars["Float"]>;
1190
1207
  };
1191
1208
 
1192
- /** Deprecated */
1193
- export type CarListQuery = {
1194
- /** Deprecated: Not used anymore */
1195
- make?: Maybe<Scalars["String"]>;
1196
- /** Deprecated: Not used anymore */
1197
- model?: Maybe<Scalars["String"]>;
1198
- /** Deprecated: Not used anymore */
1199
- version?: Maybe<Scalars["String"]>;
1200
- /** Deprecated: Not used anymore */
1201
- chargetrip_version?: Maybe<Scalars["String"]>;
1202
- /** Deprecated: Not used anymore */
1203
- mode?: Maybe<CarMode>;
1209
+ export type CarPremiumSafety = {
1210
+ /** Number of seats equipped with ISOFIX */
1211
+ isofix_seats?: Maybe<Scalars["Int"]>;
1212
+ /** EuroNCAP results */
1213
+ euro_ncap?: Maybe<CarPremiumSafetyEuroNcap>;
1204
1214
  };
1205
1215
 
1206
- export type CarListFilter = {
1216
+ export type CarPremiumSafetyEuroNcap = {
1217
+ /** EuroNCAP rating (out of 5 stars) */
1218
+ rating?: Maybe<Scalars["Int"]>;
1219
+ /** EuroNCAP year of rating */
1220
+ year?: Maybe<Scalars["Int"]>;
1221
+ /** EuroNCAP rating of adult protection (out of 100%) */
1222
+ adult?: Maybe<Scalars["Int"]>;
1223
+ /** EuroNCAP rating of child protection (out of 100%) */
1224
+ child?: Maybe<Scalars["Int"]>;
1225
+ /** EuroNCAP rating of vulnerable road users (out of 100%) */
1226
+ vru?: Maybe<Scalars["Int"]>;
1227
+ /** EuroNCAP rating of safety assists (out of 100%) */
1228
+ sa?: Maybe<Scalars["Int"]>;
1229
+ };
1230
+
1231
+ /** Propulsion */
1232
+ export enum CarPropulsion {
1233
+ /** All-wheel drive car */
1234
+ AWD = "AWD",
1235
+ /** Front-wheel drive car */
1236
+ FRONT = "Front",
1237
+ /** Rear-wheel drive car */
1238
+ REAR = "Rear"
1239
+ }
1240
+
1241
+ export type CarRange = {
1242
+ /** Index range in EV Database RealRange model in km */
1243
+ real?: Maybe<Scalars["Int"]>;
1244
+ /** Indicates if real is estimated */
1245
+ real_is_estimated?: Maybe<Scalars["Boolean"]>;
1246
+ /** Worst conditions are based on -10°C and use of heating */
1247
+ worst?: Maybe<CarRangeValue>;
1248
+ /** Best conditions are based on 23°C and no use of A/C */
1249
+ best?: Maybe<CarRangeValue>;
1250
+ /** Chargetrip's custom real world range provides a carefully calculated display range for all EV models. This is based on our own research and driving data */
1251
+ chargetrip_range?: Maybe<ChargetripRange>;
1252
+ /** @deprecated You will receive null values */
1253
+ wltp?: Maybe<Scalars["Float"]>;
1254
+ };
1255
+
1256
+ export type CarRangeValue = {
1257
+ /** Estimated value on the highway or express roads */
1258
+ highway?: Maybe<Scalars["Int"]>;
1259
+ /** Estimated value on the cities road */
1260
+ city?: Maybe<Scalars["Int"]>;
1261
+ /** Estimated combined value */
1262
+ combined?: Maybe<Scalars["Int"]>;
1263
+ };
1264
+
1265
+ export type CarRouting = {
1207
1266
  /**
1208
- * Availability of car
1209
- *
1210
- * Values:
1211
- * - 0 = Car no longer for sale in any market / region
1212
- * - 1 = Car currently for sale in at least one market / region
1213
- * - 2 = Car expected in market from Date_From (estimated), pre-order open
1214
- * - 3 = Car expected in market from Date_From (estimated), pre-order unkown or not open
1215
- * - 12 = Concept car, nearing production and/or confirmed, pre-order open
1216
- * - 13 = Concept car, nearing production and/or confirmed, pre-order unknown or not open
1217
- * - 22 = Concept car, not close to production and/or unconfirmed, pre-order open
1218
- * - 23 = Concept car, not close to production and/or unconfirmed, pre-order unknown
1219
- * - 91 = Status uncertain, introduction date and/or pricing unclear
1267
+ * EVs that support fast charging have a minimum charging speed of 43 Kwh.
1268
+ * EVs without support for fast charging used in a newRoute mutation will return an error.
1220
1269
  */
1221
- availability?: Maybe<Array<Maybe<Scalars["Int"]>>>;
1270
+ fast_charging_support?: Maybe<Scalars["Boolean"]>;
1222
1271
  };
1223
1272
 
1224
- /** The output element of the carList query */
1225
- export type CarList = {
1226
- /** Cars unique ID */
1273
+ /** Status of a car */
1274
+ export enum CarStatus {
1275
+ /** Was just imported */
1276
+ NEW = "new",
1277
+ /** Is being reviewed by a human operator */
1278
+ REVIEW = "review",
1279
+ /** Is public and can be used by a customer */
1280
+ PUBLIC = "public",
1281
+ /** Is removed and can not be used */
1282
+ REMOVED = "removed"
1283
+ }
1284
+
1285
+ export type CarVideo = {
1286
+ /** Video id */
1227
1287
  id?: Maybe<Scalars["ID"]>;
1228
- /** Naming of a car */
1229
- naming?: Maybe<CarListNaming>;
1230
- /** Connectors available for a car */
1231
- connectors?: Maybe<Array<Maybe<CarPlug>>>;
1232
- /** Adapters of connectors available for a car */
1233
- adapters?: Maybe<Array<Maybe<CarPlug>>>;
1234
- /** Battery of a car */
1235
- battery?: Maybe<CarListBattery>;
1236
- /** Body of a car */
1237
- body?: Maybe<CarListBody>;
1238
- /** Availability of a car */
1239
- availability?: Maybe<CarListAvailability>;
1240
- /** Range of a car */
1241
- range?: Maybe<CarListRange>;
1242
- /** Media of a car */
1243
- media?: Maybe<CarListMedia>;
1244
- /** Routing of a car */
1245
- routing?: Maybe<CarListRouting>;
1246
- /**
1247
- * ID provided by a car data source as the row ID
1248
- * @deprecated Will be removed in the future
1249
- */
1250
- externalId?: Maybe<Scalars["String"]>;
1251
- /**
1252
- * Car manufacturer
1253
- * @deprecated In favor of naming.make
1254
- */
1255
- make?: Maybe<Scalars["String"]>;
1256
- /**
1257
- * Car model
1258
- * @deprecated In favor of naming.model
1259
- */
1260
- carModel?: Maybe<Scalars["String"]>;
1261
- /**
1262
- * Car edition
1263
- * @deprecated In favor of naming.version
1264
- */
1265
- edition?: Maybe<Scalars["String"]>;
1266
- /**
1267
- * Car model edition. Added by Chargetrip as an alternative for when a car manufacturer does not provide an edition name, or uses the same edition name across all trims or consecutive years
1268
- * @deprecated In favor of naming.chargetrip_version
1269
- */
1270
- chargetripEdition?: Maybe<Scalars["String"]>;
1271
- /**
1272
- * Car version
1273
- * @deprecated In favor of naming.edition
1274
- */
1275
- version?: Maybe<Scalars["String"]>;
1276
- /**
1277
- * Chargetrip's custom real world range provides a carefully calculated display range for all EV models. This is based on our own research and driving data
1278
- * @deprecated In favor of range.chargetrip_range
1279
- */
1280
- chargetripRange?: Maybe<ChargetripRange>;
1281
- /**
1282
- * Cars that support fast charging have a minimum charging speed of 43 Kwh. Cars without support for fast charging used in a newRoute mutation will return an error
1283
- * @deprecated In favor of routing.fast_charging_support
1284
- */
1285
- fastChargingSupport?: Maybe<Scalars["Boolean"]>;
1286
- /**
1287
- * Current production mode of a car
1288
- * @deprecated In favor of availability.status
1289
- */
1290
- mode?: Maybe<CarMode>;
1291
- /**
1292
- * Number of seats
1293
- * @deprecated In favor of body.seats
1294
- */
1295
- seats?: Maybe<Scalars["Int"]>;
1296
- /**
1297
- * Usable battery capacity in kWh
1298
- * @deprecated In favor of battery.usable_kwh
1299
- */
1300
- batteryUsableKwh?: Maybe<Scalars["Float"]>;
1301
- /**
1302
- * Full battery capacity in kWh
1303
- * @deprecated In favor of battery.full_kwh
1304
- */
1305
- batteryFullKwh?: Maybe<Scalars["Float"]>;
1306
- /**
1307
- * Images of a car in structured data
1308
- * @deprecated In favor of media.image and media.brand
1309
- */
1310
- imagesData?: Maybe<CarImageData>;
1311
- /** @deprecated You will receive null values */
1312
- power?: Maybe<Scalars["Float"]>;
1313
- /** @deprecated You will receive null values */
1314
- acceleration?: Maybe<Scalars["Float"]>;
1315
- /** @deprecated You will receive null values */
1316
- topSpeed?: Maybe<Scalars["Float"]>;
1317
- /** @deprecated You will receive null values */
1318
- torque?: Maybe<Scalars["Float"]>;
1319
- /** @deprecated You will receive null values */
1320
- batteryEfficiency?: Maybe<CarBatteryEfficiency>;
1321
- /** @deprecated You will receive null values */
1322
- weight?: Maybe<Scalars["Float"]>;
1323
- /** @deprecated You will receive null values */
1324
- height?: Maybe<Scalars["Int"]>;
1325
- /** @deprecated You will receive null values */
1326
- width?: Maybe<Scalars["Int"]>;
1327
- /** @deprecated You will receive null values */
1328
- consumption?: Maybe<CarExtraConsumption>;
1329
- /** @deprecated You will receive null values */
1330
- petrolConsumption?: Maybe<Scalars["Float"]>;
1331
- /** @deprecated You will receive null values */
1332
- chargingOffset?: Maybe<Scalars["JSON"]>;
1333
- /** @deprecated You will receive null values */
1334
- auxConsumption?: Maybe<Scalars["Float"]>;
1335
- /** @deprecated You will receive null values */
1336
- bmsConsumption?: Maybe<Scalars["Float"]>;
1337
- /** @deprecated You will receive null values */
1338
- dragCoefficient?: Maybe<Scalars["Float"]>;
1339
- /** @deprecated You will receive null values */
1340
- tirePressure?: Maybe<Scalars["Float"]>;
1341
- /** @deprecated You will receive null values */
1342
- motorEfficiency?: Maybe<Scalars["Float"]>;
1343
- /** @deprecated You will receive null values */
1344
- drivelineEfficiency?: Maybe<Scalars["Float"]>;
1345
- /** @deprecated You will receive null values */
1346
- regenEfficiency?: Maybe<Scalars["Float"]>;
1347
- /** @deprecated You will receive null values */
1348
- images?: Maybe<Array<Maybe<CarImage>>>;
1288
+ /** Full path URL of a video */
1289
+ url?: Maybe<Scalars["String"]>;
1349
1290
  };
1350
1291
 
1351
- export type CarListNaming = {
1352
- /** Car manufacturer name */
1353
- make?: Maybe<Scalars["String"]>;
1354
- /** Car model name */
1355
- model?: Maybe<Scalars["String"]>;
1356
- /** Version, edition or submodel of car */
1357
- version?: Maybe<Scalars["String"]>;
1358
- /** Another submodel level of car */
1359
- edition?: Maybe<Scalars["String"]>;
1360
- /** Car model version. Added by Chargetrip as an alternative for when a car manufacturer does not provide an version name, or uses the same version name across all trims or consecutive years */
1361
- chargetrip_version?: Maybe<Scalars["String"]>;
1292
+ /** Charging mode used at charging stations */
1293
+ export enum ChargeMode {
1294
+ /** Optimizes the charging time at each station, in order to decrease the total travel time. You will only charge up until the SOC you need in order to reach the next stop */
1295
+ OPTIMIZE_TRAVEL_TIME = "OPTIMIZE_TRAVEL_TIME",
1296
+ /** Charge to the maximum capacity at every charging stop. The default maximum charging capacity is 80% */
1297
+ ALWAYS_TO_MAX_CHARGE = "ALWAYS_TO_MAX_CHARGE"
1298
+ }
1299
+
1300
+ /** A groupped representation of EVSEs */
1301
+ export type Charger = {
1302
+ /** Type of charger */
1303
+ standard?: Maybe<OCPIConnectorType>;
1304
+ /** Power of a charger */
1305
+ power?: Maybe<Scalars["Float"]>;
1306
+ /** Price of a charger */
1307
+ price?: Maybe<Scalars["String"]>;
1308
+ /** Charging speed */
1309
+ speed?: Maybe<StationSpeedType>;
1310
+ /** Statuses of all the EVSEs grouped in a charger */
1311
+ status?: Maybe<ChargerStatuses>;
1312
+ /** Total number of EVSEs grouped in a charger */
1313
+ total?: Maybe<Scalars["Int"]>;
1362
1314
  };
1363
1315
 
1364
- export type CarListBattery = {
1365
- /** Usable battery capacity in kWh */
1366
- usable_kwh?: Maybe<Scalars["Float"]>;
1367
- /** Full battery capacity in kWh */
1368
- full_kwh?: Maybe<Scalars["Float"]>;
1316
+ export enum ChargerStatus {
1317
+ /** The charger is free */
1318
+ FREE = "free",
1319
+ /** The charger is occupied/busy */
1320
+ BUSY = "busy",
1321
+ /** The charger is unknown */
1322
+ UNKNOWN = "unknown",
1323
+ /** The charger has an error */
1324
+ ERROR = "error"
1325
+ }
1326
+
1327
+ /** Groupping by status of the chargers */
1328
+ export type ChargerStatuses = {
1329
+ /** How many are free */
1330
+ free?: Maybe<Scalars["Int"]>;
1331
+ /** How many are busy */
1332
+ busy?: Maybe<Scalars["Int"]>;
1333
+ /** How many are unknown */
1334
+ unknown?: Maybe<Scalars["Int"]>;
1335
+ /** How many are not available */
1336
+ error?: Maybe<Scalars["Int"]>;
1369
1337
  };
1370
1338
 
1371
- export type CarListBody = {
1372
- /** Number of seats in car */
1373
- seats?: Maybe<Scalars["Int"]>;
1339
+ /** Chargetrip's custom real world range provides a carefully calculated display range for all EV models. This is based on our own research and driving data */
1340
+ export type ChargetripRange = {
1341
+ /** Worst conditions are based on -10°C and use of heating */
1342
+ worst?: Maybe<Scalars["Float"]>;
1343
+ /** Best conditions are based on 23°C and no use of A/C */
1344
+ best?: Maybe<Scalars["Float"]>;
1374
1345
  };
1375
1346
 
1376
- export type CarListAvailability = {
1347
+ /** Connector data which extends OCPI Connector */
1348
+ export type Connector = {
1349
+ /** Identifier of a connector within an EVSE. Two connectors may have the same ID as long as they do not belong to the same EVSE object. */
1350
+ id?: Maybe<Scalars["String"]>;
1351
+ /** Standard of an installed connector. */
1352
+ standard?: Maybe<OCPIConnectorType>;
1353
+ /** Format (socket/cable) of an installed connector. */
1354
+ format?: Maybe<OCPIConnectorFormat>;
1355
+ /** Type of power of an installed connector. */
1356
+ power_type?: Maybe<OCPIPowerType>;
1357
+ /** Maximum voltage of an connector (line to neutral for AC_3_PHASE), in volt [V]. For example: DC Chargers might vary the voltage during charging when battery almost full. */
1358
+ max_voltage?: Maybe<Scalars["Int"]>;
1359
+ /** Maximum amperage of a connector, in ampere [A]. */
1360
+ max_amperage?: Maybe<Scalars["Int"]>;
1377
1361
  /**
1378
- * Availability of car
1379
- *
1380
- * Values:
1381
- * - 0 = Car no longer for sale in any market / region
1382
- * - 1 = Car currently for sale in at least one market / region
1383
- * - 2 = Car expected in market from Date_From (estimated), pre-order open
1384
- * - 3 = Car expected in market from Date_From (estimated), pre-order unkown or not open
1385
- * - 12 = Concept car, nearing production and/or confirmed, pre-order open
1386
- * - 13 = Concept car, nearing production and/or confirmed, pre-order unknown or not open
1387
- * - 22 = Concept car, not close to production and/or unconfirmed, pre-order open
1388
- * - 23 = Concept car, not close to production and/or unconfirmed, pre-order unknown
1389
- * - 91 = Status uncertain, introduction date and/or pricing unclear
1362
+ * Maximum electric power that can be delivered by a connector, in watt [W]. When the maximum electric power is lower than the calculated value from voltage and amperage, this value should be set.
1363
+ * For example: A DC Charge Point which can deliver up to 920V and up to 400A can be limited to a maximum of 150kW. Depending on the car, it may supply maximum voltage or current, but not both at the same time.
1364
+ * For AC Charge Points, the amount of phases used can also have influence on the maximum power.
1390
1365
  */
1391
- status?: Maybe<Scalars["Int"]>;
1392
- };
1393
-
1394
- export type CarListRange = {
1366
+ max_electric_power?: Maybe<Scalars["Int"]>;
1367
+ /** Maximum electric power in kW */
1368
+ power?: Maybe<Scalars["Float"]>;
1395
1369
  /**
1396
- * Is an index value of what we consider to be the real-world range.
1397
- * (Comparable to Range_Real from EV Database.) It is essentially a normalized range to display in the front-end.
1370
+ * Identifiers of the currently valid charging tariffs. Multiple tariffs are possible, but only one of each Tariff.type can be active at the same time. Tariffs with the same type are only allowed, if they are not active at the same time: start_date_time and end_date_time period not overlapping.
1371
+ * When preference-based smart charging is supported, one tariff for every possible ProfileType should be provided. This tells the user about the options they have at this Connector, and what the tariff is for every option.
1372
+ * For a "free of charge" tariff, this field should be set and point to a defined "free of charge" tariff.
1398
1373
  */
1399
- chargetrip_range?: Maybe<ChargetripRange>;
1400
- /** @deprecated You will receive null values */
1401
- wltp?: Maybe<Scalars["Float"]>;
1402
- /** @deprecated You will receive null values */
1403
- worst?: Maybe<CarEstimationData>;
1404
- /** @deprecated You will receive null values */
1405
- best?: Maybe<CarEstimationData>;
1374
+ tariff_ids?: Maybe<Array<Maybe<Scalars["String"]>>>;
1375
+ /** URL to an operator’s terms and conditions. */
1376
+ terms_and_conditions?: Maybe<Scalars["String"]>;
1377
+ /** Timestamp when a connector was last updated (or created). */
1378
+ last_updated?: Maybe<Scalars["DateTime"]>;
1379
+ /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1380
+ properties?: Maybe<Scalars["JSON"]>;
1381
+ /** List of valid charging tariffs */
1382
+ tariff?: Maybe<Array<Maybe<OCPITariff>>>;
1406
1383
  };
1407
1384
 
1408
- export type CarListMedia = {
1409
- /** Latest image of the car */
1410
- image?: Maybe<CarImage>;
1411
- /** Latest maker logo of the car */
1412
- brand?: Maybe<CarImage>;
1413
- /** Latest video of the car */
1414
- video?: Maybe<CarVideo>;
1385
+ /** The complete contact information */
1386
+ export type Contact = {
1387
+ /** The phone number in international format */
1388
+ phone?: Maybe<Scalars["String"]>;
1389
+ /** The email address */
1390
+ email?: Maybe<Scalars["String"]>;
1391
+ /** The absolute URL of the website */
1392
+ website?: Maybe<Scalars["String"]>;
1393
+ /** The absolute URL of the facebook profile page */
1394
+ facebook?: Maybe<Scalars["String"]>;
1395
+ /** The absolute URL of the twitter profile page */
1396
+ twitter?: Maybe<Scalars["String"]>;
1397
+ /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1398
+ properties?: Maybe<Scalars["JSON"]>;
1399
+ };
1400
+
1401
+ /** EVSE data which extends OCPI EVSE */
1402
+ export type EVSE = {
1403
+ /**
1404
+ * Uniquely identifies an EVSE within the CPOs platform (and suboperator platforms). For example a database ID or the actual "EVSE ID". This field can never be changed, modified or renamed. This is the 'technical' identification of the EVSE, not to be used as 'human readable' identification, use the field evse_id for that.
1405
+ * This field is named uid instead of id, because id could be confused with evse_id which is an eMI3 defined field.
1406
+ */
1407
+ uid?: Maybe<Scalars["String"]>;
1408
+ /** Compliant with the following specification for EVSE ID from "eMI3 standard version V1.0" (http://emi3group.com/documents-links/) "Part 2: business objects." Optional because: if an evse_id is to be re-used in the real world, the evse_id can be removed from an EVSE object if the status is set to REMOVED. */
1409
+ evse_id?: Maybe<Scalars["String"]>;
1410
+ /** Indicates the current status of an EVSE. */
1411
+ status?: Maybe<OCPIStatus>;
1412
+ /** Indicates a planned status update of a nEVSE. */
1413
+ status_schedule?: Maybe<Array<Maybe<OCPIStatusSchedule>>>;
1414
+ /** List of functionalities that an EVSE is capable of. */
1415
+ capabilities?: Maybe<Array<Maybe<OCPICapability>>>;
1416
+ /** List of available connectors on an EVSE. */
1417
+ connectors?: Maybe<Array<Maybe<Connector>>>;
1418
+ /** Level on which a Charge Point is located (in garage buildings) in the locally displayed numbering scheme. */
1419
+ floor_level?: Maybe<Scalars["String"]>;
1420
+ /** Coordinates of a EVSE. */
1421
+ coordinates?: Maybe<OCPIGeoLocation>;
1422
+ /** A number/string printed on the outside of an EVSE for visual identification. */
1423
+ physical_reference?: Maybe<Scalars["String"]>;
1424
+ /** Restrictions that apply to a parking spot. */
1425
+ parking_restrictions?: Maybe<Array<Maybe<OCPIParkingRestriction>>>;
1426
+ /** Links to images related to an EVSE such as photos or logos. */
1427
+ images?: Maybe<Array<Maybe<OCPIImage>>>;
1428
+ /** Timestamp when this EVSE or one of its Connectors was last updated (or created). */
1429
+ last_updated?: Maybe<Scalars["DateTime"]>;
1430
+ /** Indicates if parking is free or paid. */
1431
+ parking_cost?: Maybe<ParkingCost>;
1432
+ /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1433
+ properties?: Maybe<Scalars["JSON"]>;
1434
+ };
1435
+
1436
+ /** A GeoJSON Feature<Point> */
1437
+ export type FeaturePoint = {
1438
+ /** Feature ID */
1439
+ id?: Maybe<Scalars["String"]>;
1440
+ /** Feature type */
1441
+ type: FeatureType;
1442
+ /** Geometry of the feature */
1443
+ geometry: Point;
1444
+ /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1445
+ properties?: Maybe<Scalars["JSON"]>;
1446
+ };
1447
+
1448
+ /** A GeoJSON Feature<Point> input */
1449
+ export type FeaturePointInput = {
1450
+ /** The feature ID */
1451
+ id?: Maybe<Scalars["String"]>;
1452
+ /** Feature type */
1453
+ type: FeatureType;
1454
+ /** Geometry of the feature */
1455
+ geometry: PointInput;
1456
+ /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1457
+ properties?: Maybe<Scalars["JSON"]>;
1458
+ };
1459
+
1460
+ /** GeoJSON Feature type */
1461
+ export enum FeatureType {
1462
+ FEATURE = "Feature"
1463
+ }
1464
+
1465
+ /** The types of the leg */
1466
+ export enum LegType {
1467
+ /** This leg ends at a charging station and the car must recharge */
1468
+ STATION = "station",
1469
+ /** This leg ends at a via charging station and the car must recharge */
1470
+ STATIONVIA = "stationVia",
1471
+ /** This leg ends at a via location */
1472
+ VIA = "via",
1473
+ /** This leg ends at the destination, and is the last leg of the route */
1474
+ FINAL = "final",
1475
+ /** This leg ends at the destination which is a charging station, and is the last leg of the route */
1476
+ STATIONFINAL = "stationFinal"
1477
+ }
1478
+
1479
+ export type Mutation = {
1480
+ /**
1481
+ * Add a new review.
1482
+ * If the `x-token` header is send for a valid user, the review will belong to it, otherwise will be added for an anonymouse user
1483
+ */
1484
+ addReview: Review;
1485
+ /**
1486
+ * Remove a review added by an authenticated user.
1487
+ * The `x-token` header is mandatory in order to authorize the user who wants to remove a review.
1488
+ * In case it is not sent, an error will occur.
1489
+ * In case the review was not found or belongs to another user an error will occur.
1490
+ * This is a premium feature, contact Chargetrip for more information.
1491
+ */
1492
+ deleteUserReview: Review;
1493
+ /** Create a new route from the route input and its ID */
1494
+ newRoute?: Maybe<Scalars["ID"]>;
1495
+ };
1496
+
1497
+ export type MutationaddReviewArgs = {
1498
+ review: ReviewAdd;
1499
+ };
1500
+
1501
+ export type MutationdeleteUserReviewArgs = {
1502
+ id: Scalars["ID"];
1503
+ };
1504
+
1505
+ export type MutationnewRouteArgs = {
1506
+ input?: Maybe<RequestInput>;
1507
+ };
1508
+
1509
+ /** This class defines an additional geo location that is relevant for the Charge Point. The geodetic system to be used is WGS 84. */
1510
+ export type OCPIAdditionalGeoLocation = {
1511
+ /** Latitude of the point in decimal degree. Example: 50.770774. Decimal separator: "." Regex: -?[0-9]{1,2}\.[0-9]{5,7} */
1512
+ latitude?: Maybe<Scalars["String"]>;
1513
+ /** Longitude of the point in decimal degree. Example: -126.104965. Decimal separator: "." Regex: -?[0-9]{1,3}\.[0-9]{5,7} */
1514
+ longitude?: Maybe<Scalars["String"]>;
1515
+ /** Name of the point in local language or as written at the location. For example the street name of a parking lot entrance or it’s number. */
1516
+ name?: Maybe<OCPIDisplayText>;
1517
+ };
1518
+
1519
+ /** The capabilities of an EVSE. */
1520
+ export enum OCPICapability {
1521
+ /** The EVSE supports charging profiles. */
1522
+ CHARGING_PROFILE_CAPABLE = "CHARGING_PROFILE_CAPABLE",
1523
+ /** The EVSE supports charging preferences. */
1524
+ CHARGING_PREFERENCES_CAPABLE = "CHARGING_PREFERENCES_CAPABLE",
1525
+ /** EVSE has a payment terminal that supports chip cards. */
1526
+ CHIP_CARD_SUPPORT = "CHIP_CARD_SUPPORT",
1527
+ /** EVSE has a payment terminal that supports contactless cards. */
1528
+ CONTACTLESS_CARD_SUPPORT = "CONTACTLESS_CARD_SUPPORT",
1529
+ /** EVSE has a payment terminal that makes it possible to pay for charging using a credit card. */
1530
+ CREDIT_CARD_PAYABLE = "CREDIT_CARD_PAYABLE",
1531
+ /** EVSE has a payment terminal that makes it possible to pay for charging using a debit card. */
1532
+ DEBIT_CARD_PAYABLE = "DEBIT_CARD_PAYABLE",
1533
+ /** EVSE has a payment terminal with a pin-code entry device. */
1534
+ PED_TERMINAL = "PED_TERMINAL",
1535
+ /** The EVSE can remotely be started/stopped. */
1536
+ REMOTE_START_STOP_CAPABLE = "REMOTE_START_STOP_CAPABLE",
1537
+ /** The EVSE can be reserved. */
1538
+ RESERVABLE = "RESERVABLE",
1539
+ /** Charging at this EVSE can be authorized with an RFID token. */
1540
+ RFID_READER = "RFID_READER",
1541
+ /** This EVSE supports token groups, two or more tokens work as one, so that a session can be started with one token and stopped with another (handy when a card and key-fob are given to the EV-driver). */
1542
+ TOKEN_GROUP_CAPABLE = "TOKEN_GROUP_CAPABLE",
1543
+ /** Connectors have a mechanical lock that can be requested by the eMSP to be unlocked. */
1544
+ UNLOCK_CAPABLE = "UNLOCK_CAPABLE"
1545
+ }
1546
+
1547
+ /** The format of the connector, whether it is a socket or a plug. */
1548
+ export enum OCPIConnectorFormat {
1549
+ /** The connector is a socket; the EV user needs to bring a fitting plug. */
1550
+ SOCKET = "SOCKET",
1551
+ /** The connector is an attached cable; the EV users car needs to have a fitting inlet. */
1552
+ CABLE = "CABLE"
1553
+ }
1554
+
1555
+ /** The socket or plug standard of the charging point. */
1556
+ export enum OCPIConnectorType {
1557
+ /** The connector type is CHAdeMO, DC */
1558
+ CHADEMO = "CHADEMO",
1559
+ /** Standard/domestic household, type "A", NEMA 1-15, 2 pins */
1560
+ DOMESTIC_A = "DOMESTIC_A",
1561
+ /** Standard/domestic household, type "B", NEMA 5-15, 3 pins */
1562
+ DOMESTIC_B = "DOMESTIC_B",
1563
+ /** Standard/domestic household, type "C", CEE 7/17, 2 pins */
1564
+ DOMESTIC_C = "DOMESTIC_C",
1565
+ /** Standard/domestic household, type "D", 3 pins */
1566
+ DOMESTIC_D = "DOMESTIC_D",
1567
+ /** Standard/domestic household, type "E", CEE 7/5 3 pins */
1568
+ DOMESTIC_E = "DOMESTIC_E",
1569
+ /** Standard/domestic household, type "F", CEE 7/4, Schuko, 3 pins */
1570
+ DOMESTIC_F = "DOMESTIC_F",
1571
+ /** Standard/domestic household, type "G", BS 1363, Commonwealth, 3 pins */
1572
+ DOMESTIC_G = "DOMESTIC_G",
1573
+ /** Standard/domestic household, type "H", SI-32, 3 pins */
1574
+ DOMESTIC_H = "DOMESTIC_H",
1575
+ /** Standard/domestic household, type "I", AS 3112, 3 pins */
1576
+ DOMESTIC_I = "DOMESTIC_I",
1577
+ /** Standard/domestic household, type "J", SEV 1011, 3 pins */
1578
+ DOMESTIC_J = "DOMESTIC_J",
1579
+ /** Standard/domestic household, type "K", DS 60884-2-D1, 3 pins */
1580
+ DOMESTIC_K = "DOMESTIC_K",
1581
+ /** Standard/domestic household, type "L", CEI 23-16-VII, 3 pins */
1582
+ DOMESTIC_L = "DOMESTIC_L",
1583
+ /** IEC 60309-2 Industrial connector single phase 16 amperes (usually blue) */
1584
+ IEC_60309_2_SINGLE_16 = "IEC_60309_2_single_16",
1585
+ /** IEC 60309-2 Industrial connector three phase 16 amperes (usually red) */
1586
+ IEC_60309_2_THREE_16 = "IEC_60309_2_three_16",
1587
+ /** IEC 60309-2 Industrial connector three phase 32 amperes (usually red) */
1588
+ IEC_60309_2_THREE_32 = "IEC_60309_2_three_32",
1589
+ /** IEC 60309-2 Industrial connector three phase 64 amperes (usually red) */
1590
+ IEC_60309_2_THREE_64 = "IEC_60309_2_three_64",
1591
+ /** IEC 62196 Type 1 "SAE J1772" */
1592
+ IEC_62196_T1 = "IEC_62196_T1",
1593
+ /** Combo Type 1 based, DC */
1594
+ IEC_62196_T1_COMBO = "IEC_62196_T1_COMBO",
1595
+ /** IEC 62196 Type 2 "Mennekes" */
1596
+ IEC_62196_T2 = "IEC_62196_T2",
1597
+ /** Combo Type 2 based, DC */
1598
+ IEC_62196_T2_COMBO = "IEC_62196_T2_COMBO",
1599
+ /** IEC 62196 Type 3A */
1600
+ IEC_62196_T3A = "IEC_62196_T3A",
1601
+ /** IEC 62196 Type 3C "Scame" */
1602
+ IEC_62196_T3C = "IEC_62196_T3C",
1603
+ /** On-board bottom-up-pantograph typically for bus charging */
1604
+ PANTOGRAPH_BOTTOM_UP = "PANTOGRAPH_BOTTOM_UP",
1605
+ /** Off-board top-down-pantograph typically for bus charging */
1606
+ PANTOGRAPH_TOP_DOWN = "PANTOGRAPH_TOP_DOWN",
1607
+ /** Tesla connector "Roadster"-type (round, 4 pins) */
1608
+ TESLA_R = "TESLA_R",
1609
+ /** Tesla connector "Model-S"-type (oval, 5 pins) */
1610
+ TESLA_S = "TESLA_S",
1611
+ /** All electric vehicles manufactured in China, DC */
1612
+ GB_T = "GB_T"
1613
+ }
1614
+
1615
+ export enum OCPIDayOfWeek {
1616
+ MONDAY = "MONDAY",
1617
+ TUESDAY = "TUESDAY",
1618
+ WEDNESDAY = "WEDNESDAY",
1619
+ THURSDAY = "THURSDAY",
1620
+ FRIDAY = "FRIDAY",
1621
+ SATURDAY = "SATURDAY",
1622
+ SUNDAY = "SUNDAY"
1623
+ }
1624
+
1625
+ export type OCPIDisplayText = {
1626
+ /** Language Code ISO 639-1 */
1627
+ language?: Maybe<Scalars["String"]>;
1628
+ /** Text to be displayed to an end user. No markup, html etc. allowed. */
1629
+ text?: Maybe<Scalars["String"]>;
1630
+ };
1631
+
1632
+ /** This type is used to specify the energy mix and environmental impact of the supplied energy at a location or in a tariff. */
1633
+ export type OCPIEnergyMix = {
1634
+ /** True if the power is 100% from regenerative sources */
1635
+ is_green_energy?: Maybe<Scalars["Boolean"]>;
1636
+ /** Key-value pairs (enum + percentage) of energy sources of this location’s tariff. */
1637
+ energy_sources?: Maybe<Array<Maybe<OCPIEnergySource>>>;
1638
+ /** Key-value pairs (enum + percentage) of nuclear waste and CO2 exhaust of this location’s tariff. */
1639
+ environ_impact?: Maybe<Array<Maybe<OCPIEnvironmentalImpact>>>;
1640
+ /** Name of the energy supplier, delivering the energy for this location or tariff.* */
1641
+ supplier_name?: Maybe<Scalars["String"]>;
1642
+ /** Name of the energy suppliers product/tariff plan used at this location.* */
1643
+ energy_product_name?: Maybe<Scalars["String"]>;
1644
+ };
1645
+
1646
+ export type OCPIEnergySource = {
1647
+ /** The type of energy source. */
1648
+ source?: Maybe<OCPIEnergySourceCategory>;
1649
+ /** Percentage of this source (0-100) in the mix. */
1650
+ percentage?: Maybe<Scalars["Int"]>;
1651
+ };
1652
+
1653
+ /** Categories of energy sources. */
1654
+ export enum OCPIEnergySourceCategory {
1655
+ /** Nuclear power sources. */
1656
+ NUCLEAR = "NUCLEAR",
1657
+ /** All kinds of fossil power sources. */
1658
+ GENERAL_FOSSIL = "GENERAL_FOSSIL",
1659
+ /** Fossil power from coal. */
1660
+ COAL = "COAL",
1661
+ /** Fossil power from gas. */
1662
+ GAS = "GAS",
1663
+ /** All kinds of regenerative power sources. */
1664
+ GENERAL_GREEN = "GENERAL_GREEN",
1665
+ /** Regenerative power from PV. */
1666
+ SOLAR = "SOLAR",
1667
+ /** Regenerative power from wind turbines. */
1668
+ WIND = "WIND",
1669
+ /** Regenerative power from water turbines. */
1670
+ WATER = "WATER"
1671
+ }
1672
+
1673
+ /** Amount of waste produced/emitted per kWh. */
1674
+ export type OCPIEnvironmentalImpact = {
1675
+ /** The environmental impact category of this value. */
1676
+ category?: Maybe<OCPIEnvironmentalImpactCategory>;
1677
+ /** Amount of this portion in g/kWh. */
1678
+ amount?: Maybe<Scalars["Int"]>;
1679
+ };
1680
+
1681
+ /** Categories of environmental impact values. */
1682
+ export enum OCPIEnvironmentalImpactCategory {
1683
+ /** Produced nuclear waste in grams per kilowatthour. */
1684
+ NUCLEAR_WASTE = "NUCLEAR_WASTE",
1685
+ /** Exhausted carbon dioxide in grams per kilowatthour. */
1686
+ CARBON_DIOXIDE = "CARBON_DIOXIDE"
1687
+ }
1688
+
1689
+ /** Specifies one exceptional period for opening or access hours. */
1690
+ export type OCPIExceptionalPeriod = {
1691
+ /** Begin of the exception. In UTC, time_zone field can be used to convert to local time. */
1692
+ period_begin?: Maybe<Scalars["DateTime"]>;
1693
+ /** End of the exception. In UTC, time_zone field can be used to convert to local time. */
1694
+ period_end?: Maybe<Scalars["DateTime"]>;
1695
+ };
1696
+
1697
+ export enum OCPIFacility {
1698
+ /** A hotel. */
1699
+ HOTEL = "HOTEL",
1700
+ /** A restaurant. */
1701
+ RESTAURANT = "RESTAURANT",
1702
+ /** A cafe. */
1703
+ CAFE = "CAFE",
1704
+ /** A mall or shopping center. */
1705
+ MALL = "MALL",
1706
+ /** A supermarket. */
1707
+ SUPERMARKET = "SUPERMARKET",
1708
+ /** Sport facilities: gym, field etc. */
1709
+ SPORT = "SPORT",
1710
+ /** A recreation area. */
1711
+ RECREATION_AREA = "RECREATION_AREA",
1712
+ /** Located in, or close to, a park, nature reserve etc. */
1713
+ NATURE = "NATURE",
1714
+ /** A museum. */
1715
+ MUSEUM = "MUSEUM",
1716
+ /** A bike/e-bike/e-scooter sharing location. */
1717
+ BIKE_SHARING = "BIKE_SHARING",
1718
+ /** A bus stop. */
1719
+ BUS_STOP = "BUS_STOP",
1720
+ /** A taxi stand. */
1721
+ TAXI_STAND = "TAXI_STAND",
1722
+ /** A tram stop/station. */
1723
+ TRAM_STOP = "TRAM_STOP",
1724
+ /** A metro station. */
1725
+ METRO_STATION = "METRO_STATION",
1726
+ /** A train station. */
1727
+ TRAIN_STATION = "TRAIN_STATION",
1728
+ /** An airport. */
1729
+ AIRPORT = "AIRPORT",
1730
+ /** A parking lot. */
1731
+ PARKING_LOT = "PARKING_LOT",
1732
+ /** A carpool parking. */
1733
+ CARPOOL_PARKING = "CARPOOL_PARKING",
1734
+ /** A Fuel station. */
1735
+ FUEL_STATION = "FUEL_STATION",
1736
+ /** Wifi or other type of internet available. */
1737
+ WIFI = "WIFI"
1738
+ }
1739
+
1740
+ /** This class defines the geo location of the Charge Point. The geodetic system to be used is WGS 84. */
1741
+ export type OCPIGeoLocation = {
1742
+ /** Latitude of the point in decimal degree. Example: 50.770774. Decimal separator: "." Regex: -?[0-9]{1,2}\.[0-9]{5,7} */
1743
+ latitude?: Maybe<Scalars["String"]>;
1744
+ /** Longitude of the point in decimal degree. Example: -126.104965. Decimal separator: "." Regex: -?[0-9]{1,3}\.[0-9]{5,7} */
1745
+ longitude?: Maybe<Scalars["String"]>;
1746
+ };
1747
+
1748
+ /** Opening and access hours of the location. */
1749
+ export type OCPIHours = {
1750
+ /** True to represent 24 hours a day and 7 days a week, except the given exceptions. */
1751
+ twentyfourseven?: Maybe<Scalars["Boolean"]>;
1752
+ /** Regular hours, weekday-based. Only to be used if twentyfourseven=false, then this field needs to contain at least one RegularHours object. */
1753
+ regular_hours?: Maybe<Array<Maybe<OCPIRegularHours>>>;
1754
+ /** Exceptions for specified calendar dates, time-range based. Periods the station is operating/accessible. Additional to regular_hours. May overlap regular rules. */
1755
+ exceptional_openings?: Maybe<Array<Maybe<OCPIExceptionalPeriod>>>;
1756
+ /** Exceptions for specified calendar dates, time-range based. Periods the station is not operating/accessible. Overwriting regular_hours and exceptional_openings. Should not overlap exceptional_openings. */
1757
+ exceptional_closings?: Maybe<Array<Maybe<OCPIExceptionalPeriod>>>;
1758
+ };
1759
+
1760
+ export type OCPIImage = {
1761
+ /** URL from where the image data can be fetched through a web browser. */
1762
+ url?: Maybe<Scalars["String"]>;
1763
+ /** URL from where a thumbnail of the image can be fetched through a webbrowser. */
1764
+ thumbnail?: Maybe<Scalars["String"]>;
1765
+ /** Category of an image */
1766
+ category?: Maybe<OCPIImageCategory>;
1767
+ /** Image type: gif, jpeg, png, svg */
1768
+ type?: Maybe<Scalars["String"]>;
1769
+ /** Width of the full scale image */
1770
+ width?: Maybe<Scalars["Int"]>;
1771
+ /** Height of the full scale image */
1772
+ height?: Maybe<Scalars["Int"]>;
1773
+ };
1774
+
1775
+ /** The category of an image to obtain the correct usage in a user presentation. The category has to be set accordingly to the image content in order to guarantee the right usage. */
1776
+ export enum OCPIImageCategory {
1777
+ /** Photo of the physical device that contains one or more EVSEs. */
1778
+ CHARGER = "CHARGER",
1779
+ /** Location entrance photo. Should show the car entrance to the location from street side. */
1780
+ ENTRANCE = "ENTRANCE",
1781
+ /** Location overview photo. */
1782
+ LOCATION = "LOCATION",
1783
+ /** Logo of an associated roaming network to be displayed with the EVSE for example in lists, maps and detailed information views. */
1784
+ NETWORK = "NETWORK",
1785
+ /** Logo of the charge point operator, for example a municipality, to be displayed in the EVSEs detailed information view or in lists and maps, if no network logo is present. */
1786
+ OPERATOR = "OPERATOR",
1787
+ /** Other */
1788
+ OTHER = "OTHER",
1789
+ /** Logo of the charge point owner, for example a local store, to be displayed in the EVSEs detailed information view. */
1790
+ OWNER = "OWNER"
1791
+ }
1792
+
1793
+ /** This value, if provided, represents the restriction to the parking spot for different purposes. */
1794
+ export enum OCPIParkingRestriction {
1795
+ /** Reserved parking spot for electric vehicles. */
1796
+ EV_ONLY = "EV_ONLY",
1797
+ /** Parking is only allowed while plugged in (charging). */
1798
+ PLUGGED = "PLUGGED",
1799
+ /** Reserved parking spot for disabled people with valid ID. */
1800
+ DISABLED = "DISABLED",
1801
+ /** Parking spot for customers/guests only, for example in case of a hotel or shop. */
1802
+ CUSTOMERS = "CUSTOMERS",
1803
+ /** Parking spot only suitable for (electric) motorcycles or scooters. */
1804
+ MOTORCYCLES = "MOTORCYCLES"
1805
+ }
1806
+
1807
+ /** Reflects the general type of the charge point’s location. May be used for user information. */
1808
+ export enum OCPIParkingType {
1809
+ /** Location on a parking facility/rest area along a motorway, freeway, interstate, highway etc. */
1810
+ ALONG_MOTORWAY = "ALONG_MOTORWAY",
1811
+ /** Multistorey car park. */
1812
+ PARKING_GARAGE = "PARKING_GARAGE",
1813
+ /** A cleared area that is intended for parking vehicles, i.e. at supermarkets, bars, etc. */
1814
+ PARKING_LOT = "PARKING_LOT",
1815
+ /** Location is on the driveway of a house/building. */
1816
+ ON_DRIVEWAY = "ON_DRIVEWAY",
1817
+ /** Parking in public space along a street. */
1818
+ ON_STREET = "ON_STREET",
1819
+ /** Multistorey car park, mainly underground. */
1820
+ UNDERGROUND_GARAGE = "UNDERGROUND_GARAGE"
1821
+ }
1822
+
1823
+ export enum OCPIPowerType {
1824
+ /** AC single phase. */
1825
+ AC_1_PHASE = "AC_1_PHASE",
1826
+ /** AC three phase. */
1827
+ AC_3_PHASE = "AC_3_PHASE",
1828
+ /** Direct Current. */
1829
+ DC = "DC"
1830
+ }
1831
+
1832
+ export type OCPIPrice = {
1833
+ /** Price/Cost excluding VAT. */
1834
+ excl_vat?: Maybe<Scalars["Float"]>;
1835
+ /** Price/Cost including VAT. */
1836
+ incl_vat?: Maybe<Scalars["Float"]>;
1837
+ };
1838
+
1839
+ export type OCPIPriceComponent = {
1840
+ /** Type of tariff dimension. */
1841
+ type?: Maybe<OCPITariffDimensionType>;
1842
+ /** Price per unit (excl. VAT) for this tariff dimension. */
1843
+ price?: Maybe<Scalars["Float"]>;
1844
+ /** Applicable VAT percentage for this tariff dimension. If omitted, no VAT is applicable. Not providing a VAT is different from 0% VAT, which would be a value of 0.0 here. */
1845
+ vat?: Maybe<Scalars["Float"]>;
1846
+ /** Minimum amount to be billed. This unit will be billed in this step_size blocks. For example: if type is TIME and step_size has a value of 300, then time will be billed in blocks of 5 minutes. If 6 minutes were used, 10 minutes (2 blocks of step_size) will be billed. */
1847
+ step_size?: Maybe<Scalars["Int"]>;
1848
+ };
1849
+
1850
+ /** Regular recurring operation or access hours. */
1851
+ export type OCPIRegularHours = {
1852
+ /** Number of days in the week, from Monday (1) till Sunday (7) */
1853
+ weekday?: Maybe<Scalars["Int"]>;
1854
+ /** Begin of the regular period, in local time, given in hours and minutes. Must be in 24h format with leading zeros. Example: "18:15". Hour/Minute separator: ":" Regex: ([0-1][0-9]|2[1-3]):[0-5][0-9]. */
1855
+ period_begin?: Maybe<Scalars["String"]>;
1856
+ /** End of the regular period, in local time, syntax as for period_begin. Must be later than period_begin. */
1857
+ period_end?: Maybe<Scalars["String"]>;
1858
+ };
1859
+
1860
+ export enum OCPIReservationRestrictionType {
1861
+ /** Used in TariffElements to describe costs for a reservation. */
1862
+ RESERVATION = "RESERVATION",
1863
+ /** Used in TariffElements to describe costs for a reservation that expires (i.e. driver does not start a charging session before expiry_date of the reservation). */
1864
+ RESERVATION_EXPIRES = "RESERVATION_EXPIRES"
1865
+ }
1866
+
1867
+ /** The status of an EVSE. */
1868
+ export enum OCPIStatus {
1869
+ /** The EVSE/Connector is able to start a new charging session. */
1870
+ AVAILABLE = "AVAILABLE",
1871
+ /** The EVSE/Connector is not accessible because of a physical barrier, i.e. a car. */
1872
+ BLOCKED = "BLOCKED",
1873
+ /** The EVSE/Connector is in use. */
1874
+ CHARGING = "CHARGING",
1875
+ /** The EVSE/Connector is not yet active or it is no longer available (deleted). */
1876
+ INOPERATIVE = "INOPERATIVE",
1877
+ /** The EVSE/Connector is currently out of order. */
1878
+ OUTOFORDER = "OUTOFORDER",
1879
+ /** The EVSE/Connector is planned, will be operating soon. */
1880
+ PLANNED = "PLANNED",
1881
+ /** The EVSE/Connector was discontinued/removed. */
1882
+ REMOVED = "REMOVED",
1883
+ /** The EVSE/Connector is reserved for a particular EV driver and is unavailable for other drivers. */
1884
+ RESERVED = "RESERVED",
1885
+ /** No status information available (also used when offline). */
1886
+ UNKNOWN = "UNKNOWN"
1887
+ }
1888
+
1889
+ /** This type is used to schedule status periods in the future. The eMSP can provide this information to the EV user for trip planning purposes. A period MAY have no end. Example: "This station will be running as of tomorrow. Today it is still planned and under construction. */
1890
+ export type OCPIStatusSchedule = {
1891
+ /** Begin of the scheduled period. */
1892
+ period_begin?: Maybe<Scalars["DateTime"]>;
1893
+ /** End of the scheduled period, if known. */
1894
+ period_end?: Maybe<Scalars["DateTime"]>;
1895
+ /** Status value during the scheduled period. */
1896
+ status?: Maybe<OCPIStatus>;
1897
+ };
1898
+
1899
+ export type OCPITariff = {
1900
+ /** ISO-3166 alpha-2 country code of the CPO that owns this tariff */
1901
+ country_code?: Maybe<Scalars["String"]>;
1902
+ /** CPO ID of the CPO that owns this tariff (following the ISO-15118 standard) */
1903
+ party_id?: Maybe<Scalars["String"]>;
1904
+ /** Uniquely identifies the tariff within the CPO’s platform (and suboperator platforms) */
1905
+ id?: Maybe<Scalars["String"]>;
1906
+ /** ISO-4217 code of the currency of this tariff. */
1907
+ currency?: Maybe<Scalars["String"]>;
1908
+ /** Defines the type of the tariff. This allows for distinction in case of given charging preferences. When omitted, this tariff is valid for all sessions */
1909
+ type?: Maybe<OCPITariffType>;
1910
+ /** List of alternative tariff information texts, in multiple languages */
1911
+ tariff_alt_text?: Maybe<Array<Maybe<OCPIDisplayText>>>;
1912
+ /** URL to a web page that contains an explanation of the tariff information in human readable form */
1913
+ tariff_alt_url?: Maybe<Scalars["String"]>;
1914
+ /** When this field is set, a charging session with this tariff will cost at least the amount shown. This is different from a FLAT fee (start tariff, transaction fee), as a FLAT fee is a fixed amount that must be paid for any charging session. A minimum price indicates that when the cost of a charging session is lower than this amount, the cost of the session will be equal to this amount */
1915
+ min_price?: Maybe<OCPIPrice>;
1916
+ /** When this field is set, a charging session with this tariff will NOT cost more than this amount */
1917
+ max_price?: Maybe<OCPIPrice>;
1918
+ /** List of tariff elements */
1919
+ elements?: Maybe<Array<Maybe<OCPITariffElement>>>;
1920
+ /** Time when this tariff becomes active, in UTC, time_zone field of the Location can be used to convert to local time. Typically used for a new tariff that is already given with the location, before it becomes active */
1921
+ start_date_time?: Maybe<Scalars["DateTime"]>;
1922
+ /** Time after which this tariff is no longer valid, in UTC, time_zone field if the location can be used to convert to local time. Typically used when this tariff is going to be replaced with a different tariff in the near future */
1923
+ end_date_time?: Maybe<Scalars["DateTime"]>;
1924
+ /** Details about the energy supplied with this tariff */
1925
+ energy_mix?: Maybe<OCPIEnergyMix>;
1926
+ /** Timestamp when this tariff was last updated (or created) */
1927
+ last_updated?: Maybe<Scalars["DateTime"]>;
1928
+ };
1929
+
1930
+ export enum OCPITariffDimensionType {
1931
+ /** Defined in kWh, step_size multiplier: 1 Wh */
1932
+ ENERGY = "ENERGY",
1933
+ /** Flat fee without unit for step_size */
1934
+ FLAT = "FLAT",
1935
+ /** Time not charging: defined in hours, step_size multiplier: 1 second */
1936
+ PARKING_TIME = "PARKING_TIME",
1937
+ /** Time charging: defined in hours, step_size multiplier: 1 second Can also be used in combination with a RESERVATION restriction to describe the price of the reservation time. */
1938
+ TIME = "TIME"
1939
+ }
1940
+
1941
+ export type OCPITariffElement = {
1942
+ /** List of price components that describe the pricing of a tariff. */
1943
+ price_components?: Maybe<Array<Maybe<OCPIPriceComponent>>>;
1944
+ /** Restrictions that describe the applicability of a tariff. */
1945
+ restrictions?: Maybe<Array<Maybe<OCPITariffRestrictions>>>;
1415
1946
  };
1416
1947
 
1417
- export type CarListRouting = {
1418
- /**
1419
- * EVs that support fast charging have a minimum charging speed of 43 Kwh.
1420
- * EVs without support for fast charging used in a newRoute mutation will return an error.
1421
- */
1422
- fast_charging_support?: Maybe<Scalars["Boolean"]>;
1948
+ export type OCPITariffRestrictions = {
1949
+ /** Start time of day in local time, the time zone is defined in the time_zone field of the Location, for example 13:30, valid from this time of the day. Must be in 24h format with leading zeros. Hour/Minute separator: ":" Regex: ([0-1][0-9]|2[1-3]):[0-5][0-9] */
1950
+ start_time?: Maybe<Scalars["String"]>;
1951
+ /** End time of day in local time, the time zone is defined in the time_zone field of the Location, for example 19:45, valid until this time of the day. Same syntax as start_time. */
1952
+ end_time?: Maybe<Scalars["String"]>;
1953
+ /** Start date in local time, the time zone is defined in the time_zone field of the Location, for example: 2015-12-24, valid from this day. Regex: ([12][0-9]{3})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01]) */
1954
+ start_date?: Maybe<Scalars["String"]>;
1955
+ /** End date in local time, the time zone is defined in the time_zone field of the Location, for example: 2015-12-27, valid until this day (exclusive). Same syntax as start_date */
1956
+ end_date?: Maybe<Scalars["String"]>;
1957
+ /** Minimum consumed energy in kWh, for example 20, valid from this amount of energy being used */
1958
+ min_kwh?: Maybe<Scalars["Float"]>;
1959
+ /** Maximum consumed energy in kWh, for example 50, valid until this amount of energy being used */
1960
+ max_kwh?: Maybe<Scalars["Float"]>;
1961
+ /** Sum of the minimum current in over all phases, for example 5. When the EV is charging with more than the defined amount of current, this tariff element is/becomes active. If the charging current is or becomes lower, this tariff element is not or no longer valid and becomes inactive. This does not describe the minimum current over the entire charging session. This restriction can make a tariff element become active when the charging current is above the defined value, but the tariff element MUST no longer be active when the charging current drops below the defined value */
1962
+ min_current?: Maybe<Scalars["Float"]>;
1963
+ /** Sum of the maximum current in over all phases, for example 20. When the EV is charging with less than the defined amount of current, this tariff element becomes/is active. If the charging current is or becomes higher, this tariff element is not or no longer valid and becomes inactive. This describes NOT the maximum current over the entire Charging Session. This restriction can make a tariff element become active when the charging current is below this value, but the tariff element MUST no longer be active when the charging current raises above the defined value */
1964
+ max_current?: Maybe<Scalars["Float"]>;
1965
+ /** Minimum power in kW, for example 5. When the EV is charging with more than the defined amount of power, this tariff element is/becomes active. If the charging power is or becomes lower, this tariff element is not or no longer valid and becomes inactive. This does not describe the minimum power over the entire charging session. This restriction can make a tariff element become active when the charging power is above this value, but the TariffElement MUST no longer be active when the charging power drops below the defined value */
1966
+ min_power?: Maybe<Scalars["Float"]>;
1967
+ /** Maximum power in kW, for example 20. When the EV is charging with less than the defined amount of power, this tariff element becomes/is active. If the charging power is or becomes higher, this tariff element is not or no longer valid and becomes inactive. This does not describe the maximum power over the entire charging session. This restriction can make a tariff element become active when the charging power is below this value, but the TariffElement MUST no longer be active when the charging power raises above the defined value */
1968
+ max_power?: Maybe<Scalars["Float"]>;
1969
+ /** Minimum duration in seconds the charging session MUST last (inclusive). When the duration of a charging session is longer than the defined value, this TariffElement is or becomes active. Before that moment, this tariff element is not yet active */
1970
+ min_duration?: Maybe<Scalars["Float"]>;
1971
+ /** Maximum duration in seconds the charging session MUST last (exclusive). When the duration of a charging session is shorter than the defined value, this tariff element is or becomes active. After that moment, this tariff element is no longer active */
1972
+ max_duration?: Maybe<Scalars["Float"]>;
1973
+ /** Which day(s) of the week this tariff element is active. */
1974
+ day_of_week?: Maybe<OCPIDayOfWeek>;
1975
+ /** When this field is present, the tariff element describes reservation costs. A reservation starts when the reservation is made, and ends when the drivers starts charging on the reserved EVSE/Location, or when the reservation expires. A reservation can only have: FLAT and TIME TariffDimensions, where TIME is for the duration of the reservation */
1976
+ reservation?: Maybe<OCPIReservationRestrictionType>;
1423
1977
  };
1424
1978
 
1425
- /** Filter which can be applied to retrieve the operator list action */
1426
- export type OperatorListQuery = {
1427
- /** Unique operator ID */
1428
- id?: Maybe<Scalars["ID"]>;
1429
- /** External ID of an operator provided by an operator data source */
1430
- external_id?: Maybe<Scalars["String"]>;
1431
- /** Exact name */
1432
- name?: Maybe<Scalars["String"]>;
1433
- /** Exact country code */
1434
- country?: Maybe<Scalars["String"]>;
1435
- };
1979
+ export enum OCPITariffType {
1980
+ /** Used to describe that a tariff is valid when ad-hoc payment is used at the charge point (for example: Debit or Credit card payment terminal) */
1981
+ AD_HOC_PAYMENT = "AD_HOC_PAYMENT",
1982
+ /** Used to describe that a tariff is valid when charging preference: CHEAP is set for the session */
1983
+ PROFILE_CHEAP = "PROFILE_CHEAP",
1984
+ /** Used to describe that a tariff is valid when charging preference: FAST is set for the session */
1985
+ PROFILE_FAST = "PROFILE_FAST",
1986
+ /** Used to describe that a tariff is valid when charging preference: GREEN is set for the session */
1987
+ PROFILE_GREEN = "PROFILE_GREEN",
1988
+ /** Used to describe that a tariff is valid when using an RFID, without any charging preference, or when charging preference: REGULAR is set for the session */
1989
+ REGULAR = "REGULAR"
1990
+ }
1436
1991
 
1437
1992
  /** The operator data which extends OCPI BusinessDetails */
1438
1993
  export type Operator = {
@@ -1452,720 +2007,482 @@ export type Operator = {
1452
2007
  contact?: Maybe<Contact>;
1453
2008
  };
1454
2009
 
1455
- export type OCPIImage = {
1456
- /** URL from where the image data can be fetched through a web browser. */
1457
- url?: Maybe<Scalars["String"]>;
1458
- /** URL from where a thumbnail of the image can be fetched through a webbrowser. */
1459
- thumbnail?: Maybe<Scalars["String"]>;
1460
- /** Category of an image */
1461
- category?: Maybe<OCPIImageCategory>;
1462
- /** Image type: gif, jpeg, png, svg */
1463
- type?: Maybe<Scalars["String"]>;
1464
- /** Width of the full scale image */
1465
- width?: Maybe<Scalars["Int"]>;
1466
- /** Height of the full scale image */
1467
- height?: Maybe<Scalars["Int"]>;
2010
+ /** Filter which can be applied to retrieve the operator list action */
2011
+ export type OperatorListQuery = {
2012
+ /** Unique operator ID */
2013
+ id?: Maybe<Scalars["ID"]>;
2014
+ /** External ID of an operator provided by an operator data source */
2015
+ external_id?: Maybe<Scalars["String"]>;
2016
+ /** Exact name */
2017
+ name?: Maybe<Scalars["String"]>;
2018
+ /** Exact country code */
2019
+ country?: Maybe<Scalars["String"]>;
1468
2020
  };
1469
2021
 
1470
- /** The category of an image to obtain the correct usage in a user presentation. The category has to be set accordingly to the image content in order to guarantee the right usage. */
1471
- export enum OCPIImageCategory {
1472
- /** Photo of the physical device that contains one or more EVSEs. */
1473
- CHARGER = "CHARGER",
1474
- /** Location entrance photo. Should show the car entrance to the location from street side. */
1475
- ENTRANCE = "ENTRANCE",
1476
- /** Location overview photo. */
1477
- LOCATION = "LOCATION",
1478
- /** Logo of an associated roaming network to be displayed with the EVSE for example in lists, maps and detailed information views. */
1479
- NETWORK = "NETWORK",
1480
- /** Logo of the charge point operator, for example a municipality, to be displayed in the EVSEs detailed information view or in lists and maps, if no network logo is present. */
1481
- OPERATOR = "OPERATOR",
1482
- /** Other */
1483
- OTHER = "OTHER",
1484
- /** Logo of the charge point owner, for example a local store, to be displayed in the EVSEs detailed information view. */
1485
- OWNER = "OWNER"
2022
+ export enum ParkingCost {
2023
+ /** Parking is free */
2024
+ FREE = "free",
2025
+ /** Parking includes a fee */
2026
+ PAID = "paid"
1486
2027
  }
1487
2028
 
1488
- /** The complete contact information */
1489
- export type Contact = {
1490
- /** The phone number in international format */
1491
- phone?: Maybe<Scalars["String"]>;
1492
- /** The email address */
1493
- email?: Maybe<Scalars["String"]>;
1494
- /** The absolute URL of the website */
1495
- website?: Maybe<Scalars["String"]>;
1496
- /** The absolute URL of the facebook profile page */
1497
- facebook?: Maybe<Scalars["String"]>;
1498
- /** The absolute URL of the twitter profile page */
1499
- twitter?: Maybe<Scalars["String"]>;
1500
- /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1501
- properties?: Maybe<Scalars["JSON"]>;
1502
- };
1503
-
1504
- /** The review model */
1505
- export type Review = {
1506
- /** ID of a review */
1507
- id: Scalars["ID"];
1508
- /** Station for which a review was provided */
1509
- station?: Maybe<Station>;
1510
- /** User who added a review. If a review was added by an anonymous user, this will be null */
1511
- user?: Maybe<ReviewUser>;
1512
- /** Rating of a review */
1513
- rating?: Maybe<Scalars["Int"]>;
1514
- /** Message of a review */
1515
- message?: Maybe<Scalars["String"]>;
1516
- /** Locale of a message */
1517
- locale?: Maybe<Scalars["String"]>;
1518
- /** Car that was provided/selected by a user */
1519
- ev?: Maybe<Car>;
1520
- /** Plug type that was provided/selected by a user */
1521
- plugType?: Maybe<OCPIConnectorType>;
1522
- /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1523
- properties?: Maybe<Scalars["JSON"]>;
1524
- /** Boolean tags for a station review */
1525
- tags?: Maybe<ReviewTags>;
1526
- /** Date and time when a review was created */
1527
- createdAt?: Maybe<Scalars["String"]>;
1528
- /** Date and time when a review was updated */
1529
- updatedAt?: Maybe<Scalars["String"]>;
1530
- };
1531
-
1532
- /** Extending a station model to add review stats property */
1533
- export type Station = {
1534
- /** Review of a station */
1535
- review?: Maybe<ReviewStats>;
1536
- /** Unique ID of a station */
1537
- id: Scalars["ID"];
1538
- /** ISO-3166 alpha-2 country code of a station */
1539
- country_code?: Maybe<Scalars["String"]>;
1540
- /** CPO ID of a CPO that 'owns' this station (following the ISO-15118 standard) */
1541
- party_id?: Maybe<Scalars["String"]>;
1542
- /**
1543
- * Defines if a location may be published on a website or app etc.
1544
- * When this is set to false, only tokens identified in the field: publish_allowed_to are allowed to show this location.
1545
- * When the same location has EVSEs that may be published and may not be published, two 'locations' should be created
1546
- */
1547
- publish?: Maybe<Scalars["Boolean"]>;
1548
- /** Name of a charging station */
1549
- name?: Maybe<Scalars["String"]>;
1550
- /** Street/block name and house number if available */
1551
- address?: Maybe<Scalars["String"]>;
1552
- /** City or town */
1553
- city?: Maybe<Scalars["String"]>;
1554
- /** Postal code of a location, may only be omitted when a location has no postal code: in some countries charging locations at highways don’t have postal codes. */
1555
- postal_code?: Maybe<Scalars["String"]>;
1556
- /** State or province of a location, only to be used when relevant */
1557
- state?: Maybe<Scalars["String"]>;
1558
- /** ISO 3166-1 alpha-3 code for the country of this station */
1559
- country?: Maybe<Scalars["String"]>;
1560
- /** Coordinates of a location */
1561
- coordinates?: Maybe<OCPIGeoLocation>;
1562
- /** Geographical location of related points relevant to a user */
1563
- related_locations?: Maybe<Array<Maybe<OCPIAdditionalGeoLocation>>>;
1564
- /** Type of parking at a charge point location */
1565
- parking_type?: Maybe<OCPIParkingType>;
1566
- /** EVSEs that belong to a station */
1567
- evses?: Maybe<Array<Maybe<EVSE>>>;
1568
- /** Human-readable directions on how to reach a station */
1569
- directions?: Maybe<Array<Maybe<OCPIDisplayText>>>;
1570
- /** Information about an operator */
1571
- operator?: Maybe<Operator>;
1572
- /** Information about a suboperator if applicable */
1573
- suboperator?: Maybe<Operator>;
1574
- /** Information about an owner if available */
1575
- owner?: Maybe<Operator>;
1576
- /** Facilities a charging station belongs to */
1577
- facilities?: Maybe<Array<Maybe<OCPIFacility>>>;
1578
- /** Value from the IANA time zone database representing the time zone of a location. Examples: "Europe/Oslo", "Europe/Zurich". (http://www.iana.org/time-zones) */
1579
- time_zone?: Maybe<Scalars["String"]>;
1580
- /** Times when an EVSEs at a location can be accessed for charging */
1581
- opening_times?: Maybe<OCPIHours>;
1582
- /** Indicates if the EVSEs are still charging outside the opening hours. E.g. when a parking garage closes its barriers overnight, is it allowed to charge till the next morning? Default: true */
1583
- charging_when_closed?: Maybe<Scalars["Boolean"]>;
1584
- /** Links to images related to a location such as photos or logos */
1585
- images?: Maybe<Array<Maybe<OCPIImage>>>;
1586
- /** Details of the energy supplied at a location */
1587
- energy_mix?: Maybe<OCPIEnergyMix>;
1588
- /** Timestamp when a location, or one of its EVSEs or Connectors were last updated (or created) */
1589
- last_updated?: Maybe<Scalars["DateTime"]>;
1590
- /** ID provided by a station data source */
1591
- external_id?: Maybe<Scalars["String"]>;
1592
- /** GeoJSON location of a charging station */
1593
- location?: Maybe<Point>;
1594
- /** Elevation (altitude) level */
2029
+ export type PathSegment = {
2030
+ /** Elevation (altitude) in meters */
1595
2031
  elevation?: Maybe<Scalars["Int"]>;
1596
- /** Groups of EVSEs by power and type */
1597
- chargers?: Maybe<Array<Maybe<Charger>>>;
1598
- /** Amenties located at this location */
1599
- amenities?: Maybe<Scalars["JSON"]>;
1600
- /** Enriched information about the physical address of a station */
1601
- physical_address?: Maybe<Address>;
1602
- /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1603
- properties?: Maybe<Scalars["JSON"]>;
1604
- /** A flag that indicates if a station has real-time information about the availability of its connectors */
1605
- realtime?: Maybe<Scalars["Boolean"]>;
1606
- /** A flag that indicates if a station is on private property */
1607
- private?: Maybe<Scalars["Boolean"]>;
1608
- /** Connectors grouped by power */
1609
- power?: Maybe<Scalars["JSON"]>;
1610
- /**
1611
- * Station availability
1612
- * @deprecated predicted_availability, no value will be sent. Deprecated in favor of predicted_occupancy
1613
- */
1614
- predicted_availability?: Maybe<Array<Maybe<StationPredictedAvailability>>>;
1615
- /** Predicted station occupancy */
1616
- predicted_occupancy?: Maybe<Array<Maybe<StationPredictedOccupancy>>>;
1617
- /** Charging speed for a station */
1618
- speed?: Maybe<StationSpeedType>;
1619
- /** Global status for a station */
1620
- status?: Maybe<ChargerStatus>;
2032
+ /** Average speed, in km/h, for this route path segment */
2033
+ averageSpeed?: Maybe<Scalars["Float"]>;
2034
+ /** Consumption, in kWh, of a route path segment */
2035
+ consumption?: Maybe<Scalars["Float"]>;
2036
+ /** Consumption, in kWh per km, of a route path segment */
2037
+ consumptionPerKm?: Maybe<Scalars["Float"]>;
2038
+ /** Distance, in meters, of a route path segment */
2039
+ distance?: Maybe<Scalars["Float"]>;
2040
+ /** Duration, in seconds, of a route path segment */
2041
+ duration?: Maybe<Scalars["Float"]>;
1621
2042
  };
1622
2043
 
1623
- /** Statistical information for reviews of a station */
1624
- export type ReviewStats = {
1625
- /** Average of all reviews */
1626
- rating?: Maybe<Scalars["Float"]>;
1627
- /** 'Total number of reviews */
1628
- count?: Maybe<Scalars["Int"]>;
2044
+ /** A GeoJSON Point */
2045
+ export type Point = {
2046
+ /** Point type */
2047
+ type: PointType;
2048
+ /** The coordinates array with longitude as first value and latitude as second one */
2049
+ coordinates: Array<Scalars["Float"]>;
1629
2050
  };
1630
2051
 
1631
- /** This class defines the geo location of the Charge Point. The geodetic system to be used is WGS 84. */
1632
- export type OCPIGeoLocation = {
1633
- /** Latitude of the point in decimal degree. Example: 50.770774. Decimal separator: "." Regex: -?[0-9]{1,2}\.[0-9]{5,7} */
1634
- latitude?: Maybe<Scalars["String"]>;
1635
- /** Longitude of the point in decimal degree. Example: -126.104965. Decimal separator: "." Regex: -?[0-9]{1,3}\.[0-9]{5,7} */
1636
- longitude?: Maybe<Scalars["String"]>;
2052
+ /** A GeoJSON Point input */
2053
+ export type PointInput = {
2054
+ /** Point type */
2055
+ type: PointType;
2056
+ /** Coordinates [longitude, latitude] */
2057
+ coordinates: Array<Scalars["Float"]>;
1637
2058
  };
1638
2059
 
1639
- /** This class defines an additional geo location that is relevant for the Charge Point. The geodetic system to be used is WGS 84. */
1640
- export type OCPIAdditionalGeoLocation = {
1641
- /** Latitude of the point in decimal degree. Example: 50.770774. Decimal separator: "." Regex: -?[0-9]{1,2}\.[0-9]{5,7} */
1642
- latitude?: Maybe<Scalars["String"]>;
1643
- /** Longitude of the point in decimal degree. Example: -126.104965. Decimal separator: "." Regex: -?[0-9]{1,3}\.[0-9]{5,7} */
1644
- longitude?: Maybe<Scalars["String"]>;
1645
- /** Name of the point in local language or as written at the location. For example the street name of a parking lot entrance or it’s number. */
1646
- name?: Maybe<OCPIDisplayText>;
2060
+ /** GeoJSON Point type */
2061
+ export enum PointType {
2062
+ POINT = "Point"
2063
+ }
2064
+
2065
+ /** The list of powers for the speed type */
2066
+ export type PowerList = {
2067
+ /** The maximum power the plug provides in kW */
2068
+ power?: Maybe<Scalars["Float"]>;
2069
+ /** The total number of stations with the specified power */
2070
+ total?: Maybe<Scalars["Int"]>;
1647
2071
  };
1648
2072
 
1649
- export type OCPIDisplayText = {
1650
- /** Language Code ISO 639-1 */
1651
- language?: Maybe<Scalars["String"]>;
1652
- /** Text to be displayed to an end user. No markup, html etc. allowed. */
1653
- text?: Maybe<Scalars["String"]>;
2073
+ /** Power stats model */
2074
+ export type PowerStats = {
2075
+ /** The charging speed type for the specified power */
2076
+ type?: Maybe<StationSpeedType>;
2077
+ /** The list of powers for the speed type */
2078
+ powers?: Maybe<Array<Maybe<PowerList>>>;
1654
2079
  };
1655
2080
 
1656
- /** Reflects the general type of the charge point’s location. May be used for user information. */
1657
- export enum OCPIParkingType {
1658
- /** Location on a parking facility/rest area along a motorway, freeway, interstate, highway etc. */
1659
- ALONG_MOTORWAY = "ALONG_MOTORWAY",
1660
- /** Multistorey car park. */
1661
- PARKING_GARAGE = "PARKING_GARAGE",
1662
- /** A cleared area that is intended for parking vehicles, i.e. at supermarkets, bars, etc. */
1663
- PARKING_LOT = "PARKING_LOT",
1664
- /** Location is on the driveway of a house/building. */
1665
- ON_DRIVEWAY = "ON_DRIVEWAY",
1666
- /** Parking in public space along a street. */
1667
- ON_STREET = "ON_STREET",
1668
- /** Multistorey car park, mainly underground. */
1669
- UNDERGROUND_GARAGE = "UNDERGROUND_GARAGE"
1670
- }
2081
+ /** The price model */
2082
+ export type Price = {
2083
+ /** The value of the price */
2084
+ value?: Maybe<Scalars["String"]>;
2085
+ /** The currency of the price */
2086
+ currency?: Maybe<Scalars["String"]>;
2087
+ /** The pricing model */
2088
+ model?: Maybe<Scalars["String"]>;
2089
+ /** The value of the price which should be deplay by the frontend */
2090
+ displayValue?: Maybe<Scalars["String"]>;
2091
+ };
1671
2092
 
1672
- /** EVSE data which extends OCPI EVSE */
1673
- export type EVSE = {
2093
+ export type Query = {
2094
+ /** Get a full list of amenities around a station */
2095
+ amenityList?: Maybe<Array<Maybe<Amenity>>>;
2096
+ /** Get information about a car by its ID */
2097
+ car?: Maybe<Car>;
2098
+ /** Car premium data provides even more information about your car: tire pressure, prices, drivetrain data, and more. Please contact us for access to premium data. */
2099
+ carPremium?: Maybe<CarPremium>;
2100
+ /** Get a full list of cars */
2101
+ carList?: Maybe<Array<Maybe<CarList>>>;
2102
+ /** Get a full list of operators */
2103
+ operatorList?: Maybe<Array<Maybe<Operator>>>;
2104
+ /** Get information about an operator by its ID */
2105
+ operator?: Maybe<Operator>;
2106
+ /** Get all reviews of a station by the station ID */
2107
+ reviewList?: Maybe<Array<Review>>;
1674
2108
  /**
1675
- * Uniquely identifies an EVSE within the CPOs platform (and suboperator platforms). For example a database ID or the actual "EVSE ID". This field can never be changed, modified or renamed. This is the 'technical' identification of the EVSE, not to be used as 'human readable' identification, use the field evse_id for that.
1676
- * This field is named uid instead of id, because id could be confused with evse_id which is an eMI3 defined field.
2109
+ * Get all reviews of stations that were added by an authenticated user.
2110
+ * The `x-token` header is mandatory in order to authorize the user who wants to retrieve all the reviews added by him/her.
2111
+ * This is a premium feature, contact Chargetrip for more information.
1677
2112
  */
1678
- uid?: Maybe<Scalars["String"]>;
1679
- /** Compliant with the following specification for EVSE ID from "eMI3 standard version V1.0" (http://emi3group.com/documents-links/) "Part 2: business objects." Optional because: if an evse_id is to be re-used in the real world, the evse_id can be removed from an EVSE object if the status is set to REMOVED. */
1680
- evse_id?: Maybe<Scalars["String"]>;
1681
- /** Indicates the current status of an EVSE. */
1682
- status?: Maybe<OCPIStatus>;
1683
- /** Indicates a planned status update of a nEVSE. */
1684
- status_schedule?: Maybe<Array<Maybe<OCPIStatusSchedule>>>;
1685
- /** List of functionalities that an EVSE is capable of. */
1686
- capabilities?: Maybe<Array<Maybe<OCPICapability>>>;
1687
- /** List of available connectors on an EVSE. */
1688
- connectors?: Maybe<Array<Maybe<Connector>>>;
1689
- /** Level on which a Charge Point is located (in garage buildings) in the locally displayed numbering scheme. */
1690
- floor_level?: Maybe<Scalars["String"]>;
1691
- /** Coordinates of a EVSE. */
1692
- coordinates?: Maybe<OCPIGeoLocation>;
1693
- /** A number/string printed on the outside of an EVSE for visual identification. */
1694
- physical_reference?: Maybe<Scalars["String"]>;
1695
- /** Restrictions that apply to a parking spot. */
1696
- parking_restrictions?: Maybe<Array<Maybe<OCPIParkingRestriction>>>;
1697
- /** Links to images related to an EVSE such as photos or logos. */
1698
- images?: Maybe<Array<Maybe<OCPIImage>>>;
1699
- /** Timestamp when this EVSE or one of its Connectors was last updated (or created). */
1700
- last_updated?: Maybe<Scalars["DateTime"]>;
1701
- /** Indicates if parking is free or paid. */
1702
- parking_cost?: Maybe<ParkingCost>;
1703
- /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1704
- properties?: Maybe<Scalars["JSON"]>;
2113
+ userReviewList?: Maybe<Array<Review>>;
2114
+ /** Get a route by ID */
2115
+ route?: Maybe<Route>;
2116
+ /** Retrieve information about a route path segment */
2117
+ routePath?: Maybe<RoutePath>;
2118
+ /** Get the station statistics */
2119
+ stationStats?: Maybe<StationStats>;
2120
+ /** Get information about a station by its ID */
2121
+ station?: Maybe<Station>;
2122
+ /** Get a full list of stations */
2123
+ stationList?: Maybe<Array<Maybe<Station>>>;
2124
+ /** Search for stations around a GeoJSON point with a specific distance in meters */
2125
+ stationAround?: Maybe<Array<Maybe<Station>>>;
2126
+ /** Get information about a tariff by the tariff ID */
2127
+ tariff?: Maybe<OCPITariff>;
2128
+ /** Get the full list of tariffs */
2129
+ tariffList?: Maybe<Array<Maybe<OCPITariff>>>;
1705
2130
  };
1706
2131
 
1707
- /** The status of an EVSE. */
1708
- export enum OCPIStatus {
1709
- /** The EVSE/Connector is able to start a new charging session. */
1710
- AVAILABLE = "AVAILABLE",
1711
- /** The EVSE/Connector is not accessible because of a physical barrier, i.e. a car. */
1712
- BLOCKED = "BLOCKED",
1713
- /** The EVSE/Connector is in use. */
1714
- CHARGING = "CHARGING",
1715
- /** The EVSE/Connector is not yet active or it is no longer available (deleted). */
1716
- INOPERATIVE = "INOPERATIVE",
1717
- /** The EVSE/Connector is currently out of order. */
1718
- OUTOFORDER = "OUTOFORDER",
1719
- /** The EVSE/Connector is planned, will be operating soon. */
1720
- PLANNED = "PLANNED",
1721
- /** The EVSE/Connector was discontinued/removed. */
1722
- REMOVED = "REMOVED",
1723
- /** The EVSE/Connector is reserved for a particular EV driver and is unavailable for other drivers. */
1724
- RESERVED = "RESERVED",
1725
- /** No status information available (also used when offline). */
1726
- UNKNOWN = "UNKNOWN"
1727
- }
2132
+ export type QueryamenityListArgs = {
2133
+ stationId: Scalars["ID"];
2134
+ };
1728
2135
 
1729
- /** This type is used to schedule status periods in the future. The eMSP can provide this information to the EV user for trip planning purposes. A period MAY have no end. Example: "This station will be running as of tomorrow. Today it is still planned and under construction. */
1730
- export type OCPIStatusSchedule = {
1731
- /** Begin of the scheduled period. */
1732
- period_begin?: Maybe<Scalars["DateTime"]>;
1733
- /** End of the scheduled period, if known. */
1734
- period_end?: Maybe<Scalars["DateTime"]>;
1735
- /** Status value during the scheduled period. */
1736
- status?: Maybe<OCPIStatus>;
2136
+ export type QuerycarArgs = {
2137
+ id?: Maybe<Scalars["ID"]>;
2138
+ externalId?: Maybe<Scalars["Int"]>;
1737
2139
  };
1738
2140
 
1739
- /** The capabilities of an EVSE. */
1740
- export enum OCPICapability {
1741
- /** The EVSE supports charging profiles. */
1742
- CHARGING_PROFILE_CAPABLE = "CHARGING_PROFILE_CAPABLE",
1743
- /** The EVSE supports charging preferences. */
1744
- CHARGING_PREFERENCES_CAPABLE = "CHARGING_PREFERENCES_CAPABLE",
1745
- /** EVSE has a payment terminal that supports chip cards. */
1746
- CHIP_CARD_SUPPORT = "CHIP_CARD_SUPPORT",
1747
- /** EVSE has a payment terminal that supports contactless cards. */
1748
- CONTACTLESS_CARD_SUPPORT = "CONTACTLESS_CARD_SUPPORT",
1749
- /** EVSE has a payment terminal that makes it possible to pay for charging using a credit card. */
1750
- CREDIT_CARD_PAYABLE = "CREDIT_CARD_PAYABLE",
1751
- /** EVSE has a payment terminal that makes it possible to pay for charging using a debit card. */
1752
- DEBIT_CARD_PAYABLE = "DEBIT_CARD_PAYABLE",
1753
- /** EVSE has a payment terminal with a pin-code entry device. */
1754
- PED_TERMINAL = "PED_TERMINAL",
1755
- /** The EVSE can remotely be started/stopped. */
1756
- REMOTE_START_STOP_CAPABLE = "REMOTE_START_STOP_CAPABLE",
1757
- /** The EVSE can be reserved. */
1758
- RESERVABLE = "RESERVABLE",
1759
- /** Charging at this EVSE can be authorized with an RFID token. */
1760
- RFID_READER = "RFID_READER",
1761
- /** This EVSE supports token groups, two or more tokens work as one, so that a session can be started with one token and stopped with another (handy when a card and key-fob are given to the EV-driver). */
1762
- TOKEN_GROUP_CAPABLE = "TOKEN_GROUP_CAPABLE",
1763
- /** Connectors have a mechanical lock that can be requested by the eMSP to be unlocked. */
1764
- UNLOCK_CAPABLE = "UNLOCK_CAPABLE"
1765
- }
2141
+ export type QuerycarPremiumArgs = {
2142
+ id?: Maybe<Scalars["ID"]>;
2143
+ };
1766
2144
 
1767
- /** Connector data which extends OCPI Connector */
1768
- export type Connector = {
1769
- /** Identifier of a connector within an EVSE. Two connectors may have the same ID as long as they do not belong to the same EVSE object. */
1770
- id?: Maybe<Scalars["String"]>;
1771
- /** Standard of an installed connector. */
1772
- standard?: Maybe<OCPIConnectorType>;
1773
- /** Format (socket/cable) of an installed connector. */
1774
- format?: Maybe<OCPIConnectorFormat>;
1775
- /** Type of power of an installed connector. */
1776
- power_type?: Maybe<OCPIPowerType>;
1777
- /** Maximum voltage of an connector (line to neutral for AC_3_PHASE), in volt [V]. For example: DC Chargers might vary the voltage during charging when battery almost full. */
1778
- max_voltage?: Maybe<Scalars["Int"]>;
1779
- /** Maximum amperage of a connector, in ampere [A]. */
1780
- max_amperage?: Maybe<Scalars["Int"]>;
1781
- /**
1782
- * Maximum electric power that can be delivered by a connector, in watt [W]. When the maximum electric power is lower than the calculated value from voltage and amperage, this value should be set.
1783
- * For example: A DC Charge Point which can deliver up to 920V and up to 400A can be limited to a maximum of 150kW. Depending on the car, it may supply maximum voltage or current, but not both at the same time.
1784
- * For AC Charge Points, the amount of phases used can also have influence on the maximum power.
1785
- */
1786
- max_electric_power?: Maybe<Scalars["Int"]>;
1787
- /** Maximum electric power in kW */
1788
- power?: Maybe<Scalars["Float"]>;
1789
- /**
1790
- * Identifiers of the currently valid charging tariffs. Multiple tariffs are possible, but only one of each Tariff.type can be active at the same time. Tariffs with the same type are only allowed, if they are not active at the same time: start_date_time and end_date_time period not overlapping.
1791
- * When preference-based smart charging is supported, one tariff for every possible ProfileType should be provided. This tells the user about the options they have at this Connector, and what the tariff is for every option.
1792
- * For a "free of charge" tariff, this field should be set and point to a defined "free of charge" tariff.
1793
- */
1794
- tariff_ids?: Maybe<Array<Maybe<Scalars["String"]>>>;
1795
- /** URL to an operator’s terms and conditions. */
1796
- terms_and_conditions?: Maybe<Scalars["String"]>;
1797
- /** Timestamp when a connector was last updated (or created). */
1798
- last_updated?: Maybe<Scalars["DateTime"]>;
1799
- /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
1800
- properties?: Maybe<Scalars["JSON"]>;
1801
- /** List of valid charging tariffs */
1802
- tariff?: Maybe<Array<Maybe<OCPITariff>>>;
2145
+ export type QuerycarListArgs = {
2146
+ query?: Maybe<CarListQuery>;
2147
+ search?: Maybe<Scalars["String"]>;
2148
+ filter?: Maybe<CarListFilter>;
2149
+ size?: Maybe<Scalars["Int"]>;
2150
+ page?: Maybe<Scalars["Int"]>;
2151
+ };
2152
+
2153
+ export type QueryoperatorListArgs = {
2154
+ query?: Maybe<OperatorListQuery>;
2155
+ size?: Maybe<Scalars["Int"]>;
2156
+ page?: Maybe<Scalars["Int"]>;
2157
+ };
2158
+
2159
+ export type QueryoperatorArgs = {
2160
+ id: Scalars["ID"];
1803
2161
  };
1804
2162
 
1805
- /** The format of the connector, whether it is a socket or a plug. */
1806
- export enum OCPIConnectorFormat {
1807
- /** The connector is a socket; the EV user needs to bring a fitting plug. */
1808
- SOCKET = "SOCKET",
1809
- /** The connector is an attached cable; the EV users car needs to have a fitting inlet. */
1810
- CABLE = "CABLE"
1811
- }
2163
+ export type QueryreviewListArgs = {
2164
+ stationId: Scalars["ID"];
2165
+ size?: Maybe<Scalars["Int"]>;
2166
+ page?: Maybe<Scalars["Int"]>;
2167
+ };
1812
2168
 
1813
- export enum OCPIPowerType {
1814
- /** AC single phase. */
1815
- AC_1_PHASE = "AC_1_PHASE",
1816
- /** AC three phase. */
1817
- AC_3_PHASE = "AC_3_PHASE",
1818
- /** Direct Current. */
1819
- DC = "DC"
1820
- }
2169
+ export type QueryuserReviewListArgs = {
2170
+ size?: Maybe<Scalars["Int"]>;
2171
+ page?: Maybe<Scalars["Int"]>;
2172
+ };
1821
2173
 
1822
- export type OCPITariff = {
1823
- /** ISO-3166 alpha-2 country code of the CPO that owns this tariff */
1824
- country_code?: Maybe<Scalars["String"]>;
1825
- /** CPO ID of the CPO that owns this tariff (following the ISO-15118 standard) */
1826
- party_id?: Maybe<Scalars["String"]>;
1827
- /** Uniquely identifies the tariff within the CPO’s platform (and suboperator platforms) */
1828
- id?: Maybe<Scalars["String"]>;
1829
- /** ISO-4217 code of the currency of this tariff. */
1830
- currency?: Maybe<Scalars["String"]>;
1831
- /** Defines the type of the tariff. This allows for distinction in case of given charging preferences. When omitted, this tariff is valid for all sessions */
1832
- type?: Maybe<OCPITariffType>;
1833
- /** List of alternative tariff information texts, in multiple languages */
1834
- tariff_alt_text?: Maybe<Array<Maybe<OCPIDisplayText>>>;
1835
- /** URL to a web page that contains an explanation of the tariff information in human readable form */
1836
- tariff_alt_url?: Maybe<Scalars["String"]>;
1837
- /** When this field is set, a charging session with this tariff will cost at least the amount shown. This is different from a FLAT fee (start tariff, transaction fee), as a FLAT fee is a fixed amount that must be paid for any charging session. A minimum price indicates that when the cost of a charging session is lower than this amount, the cost of the session will be equal to this amount */
1838
- min_price?: Maybe<OCPIPrice>;
1839
- /** When this field is set, a charging session with this tariff will NOT cost more than this amount */
1840
- max_price?: Maybe<OCPIPrice>;
1841
- /** List of tariff elements */
1842
- elements?: Maybe<Array<Maybe<OCPITariffElement>>>;
1843
- /** Time when this tariff becomes active, in UTC, time_zone field of the Location can be used to convert to local time. Typically used for a new tariff that is already given with the location, before it becomes active */
1844
- start_date_time?: Maybe<Scalars["DateTime"]>;
1845
- /** Time after which this tariff is no longer valid, in UTC, time_zone field if the location can be used to convert to local time. Typically used when this tariff is going to be replaced with a different tariff in the near future */
1846
- end_date_time?: Maybe<Scalars["DateTime"]>;
1847
- /** Details about the energy supplied with this tariff */
1848
- energy_mix?: Maybe<OCPIEnergyMix>;
1849
- /** Timestamp when this tariff was last updated (or created) */
1850
- last_updated?: Maybe<Scalars["DateTime"]>;
2174
+ export type QueryrouteArgs = {
2175
+ id: Scalars["ID"];
1851
2176
  };
1852
2177
 
1853
- export enum OCPITariffType {
1854
- /** Used to describe that a tariff is valid when ad-hoc payment is used at the charge point (for example: Debit or Credit card payment terminal) */
1855
- AD_HOC_PAYMENT = "AD_HOC_PAYMENT",
1856
- /** Used to describe that a tariff is valid when charging preference: CHEAP is set for the session */
1857
- PROFILE_CHEAP = "PROFILE_CHEAP",
1858
- /** Used to describe that a tariff is valid when charging preference: FAST is set for the session */
1859
- PROFILE_FAST = "PROFILE_FAST",
1860
- /** Used to describe that a tariff is valid when charging preference: GREEN is set for the session */
1861
- PROFILE_GREEN = "PROFILE_GREEN",
1862
- /** Used to describe that a tariff is valid when using an RFID, without any charging preference, or when charging preference: REGULAR is set for the session */
1863
- REGULAR = "REGULAR"
1864
- }
2178
+ export type QueryroutePathArgs = {
2179
+ id: Scalars["ID"];
2180
+ location: PointInput;
2181
+ alternativeId?: Maybe<Scalars["ID"]>;
2182
+ };
1865
2183
 
1866
- export type OCPIPrice = {
1867
- /** Price/Cost excluding VAT. */
1868
- excl_vat?: Maybe<Scalars["Float"]>;
1869
- /** Price/Cost including VAT. */
1870
- incl_vat?: Maybe<Scalars["Float"]>;
2184
+ export type QuerystationArgs = {
2185
+ id: Scalars["ID"];
1871
2186
  };
1872
2187
 
1873
- export type OCPITariffElement = {
1874
- /** List of price components that describe the pricing of a tariff. */
1875
- price_components?: Maybe<Array<Maybe<OCPIPriceComponent>>>;
1876
- /** Restrictions that describe the applicability of a tariff. */
1877
- restrictions?: Maybe<Array<Maybe<OCPITariffRestrictions>>>;
2188
+ export type QuerystationListArgs = {
2189
+ query?: Maybe<StationListQuery>;
2190
+ size?: Maybe<Scalars["Int"]>;
2191
+ page?: Maybe<Scalars["Int"]>;
1878
2192
  };
1879
2193
 
1880
- export type OCPIPriceComponent = {
1881
- /** Type of tariff dimension. */
1882
- type?: Maybe<OCPITariffDimensionType>;
1883
- /** Price per unit (excl. VAT) for this tariff dimension. */
1884
- price?: Maybe<Scalars["Float"]>;
1885
- /** Applicable VAT percentage for this tariff dimension. If omitted, no VAT is applicable. Not providing a VAT is different from 0% VAT, which would be a value of 0.0 here. */
1886
- vat?: Maybe<Scalars["Float"]>;
1887
- /** Minimum amount to be billed. This unit will be billed in this step_size blocks. For example: if type is TIME and step_size has a value of 300, then time will be billed in blocks of 5 minutes. If 6 minutes were used, 10 minutes (2 blocks of step_size) will be billed. */
1888
- step_size?: Maybe<Scalars["Int"]>;
2194
+ export type QuerystationAroundArgs = {
2195
+ query: StationAroundQuery;
2196
+ size?: Maybe<Scalars["Int"]>;
2197
+ page?: Maybe<Scalars["Int"]>;
1889
2198
  };
1890
2199
 
1891
- export enum OCPITariffDimensionType {
1892
- /** Defined in kWh, step_size multiplier: 1 Wh */
1893
- ENERGY = "ENERGY",
1894
- /** Flat fee without unit for step_size */
1895
- FLAT = "FLAT",
1896
- /** Time not charging: defined in hours, step_size multiplier: 1 second */
1897
- PARKING_TIME = "PARKING_TIME",
1898
- /** Time charging: defined in hours, step_size multiplier: 1 second Can also be used in combination with a RESERVATION restriction to describe the price of the reservation time. */
1899
- TIME = "TIME"
1900
- }
2200
+ export type QuerytariffArgs = {
2201
+ id: Scalars["ID"];
2202
+ };
1901
2203
 
1902
- export type OCPITariffRestrictions = {
1903
- /** Start time of day in local time, the time zone is defined in the time_zone field of the Location, for example 13:30, valid from this time of the day. Must be in 24h format with leading zeros. Hour/Minute separator: ":" Regex: ([0-1][0-9]|2[1-3]):[0-5][0-9] */
1904
- start_time?: Maybe<Scalars["String"]>;
1905
- /** End time of day in local time, the time zone is defined in the time_zone field of the Location, for example 19:45, valid until this time of the day. Same syntax as start_time. */
1906
- end_time?: Maybe<Scalars["String"]>;
1907
- /** Start date in local time, the time zone is defined in the time_zone field of the Location, for example: 2015-12-24, valid from this day. Regex: ([12][0-9]{3})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01]) */
1908
- start_date?: Maybe<Scalars["String"]>;
1909
- /** End date in local time, the time zone is defined in the time_zone field of the Location, for example: 2015-12-27, valid until this day (exclusive). Same syntax as start_date */
1910
- end_date?: Maybe<Scalars["String"]>;
1911
- /** Minimum consumed energy in kWh, for example 20, valid from this amount of energy being used */
1912
- min_kwh?: Maybe<Scalars["Float"]>;
1913
- /** Maximum consumed energy in kWh, for example 50, valid until this amount of energy being used */
1914
- max_kwh?: Maybe<Scalars["Float"]>;
1915
- /** Sum of the minimum current in over all phases, for example 5. When the EV is charging with more than the defined amount of current, this tariff element is/becomes active. If the charging current is or becomes lower, this tariff element is not or no longer valid and becomes inactive. This does not describe the minimum current over the entire charging session. This restriction can make a tariff element become active when the charging current is above the defined value, but the tariff element MUST no longer be active when the charging current drops below the defined value */
1916
- min_current?: Maybe<Scalars["Float"]>;
1917
- /** Sum of the maximum current in over all phases, for example 20. When the EV is charging with less than the defined amount of current, this tariff element becomes/is active. If the charging current is or becomes higher, this tariff element is not or no longer valid and becomes inactive. This describes NOT the maximum current over the entire Charging Session. This restriction can make a tariff element become active when the charging current is below this value, but the tariff element MUST no longer be active when the charging current raises above the defined value */
1918
- max_current?: Maybe<Scalars["Float"]>;
1919
- /** Minimum power in kW, for example 5. When the EV is charging with more than the defined amount of power, this tariff element is/becomes active. If the charging power is or becomes lower, this tariff element is not or no longer valid and becomes inactive. This does not describe the minimum power over the entire charging session. This restriction can make a tariff element become active when the charging power is above this value, but the TariffElement MUST no longer be active when the charging power drops below the defined value */
1920
- min_power?: Maybe<Scalars["Float"]>;
1921
- /** Maximum power in kW, for example 20. When the EV is charging with less than the defined amount of power, this tariff element becomes/is active. If the charging power is or becomes higher, this tariff element is not or no longer valid and becomes inactive. This does not describe the maximum power over the entire charging session. This restriction can make a tariff element become active when the charging power is below this value, but the TariffElement MUST no longer be active when the charging power raises above the defined value */
1922
- max_power?: Maybe<Scalars["Float"]>;
1923
- /** Minimum duration in seconds the charging session MUST last (inclusive). When the duration of a charging session is longer than the defined value, this TariffElement is or becomes active. Before that moment, this tariff element is not yet active */
1924
- min_duration?: Maybe<Scalars["Float"]>;
1925
- /** Maximum duration in seconds the charging session MUST last (exclusive). When the duration of a charging session is shorter than the defined value, this tariff element is or becomes active. After that moment, this tariff element is no longer active */
1926
- max_duration?: Maybe<Scalars["Float"]>;
1927
- /** Which day(s) of the week this tariff element is active. */
1928
- day_of_week?: Maybe<OCPIDayOfWeek>;
1929
- /** When this field is present, the tariff element describes reservation costs. A reservation starts when the reservation is made, and ends when the drivers starts charging on the reserved EVSE/Location, or when the reservation expires. A reservation can only have: FLAT and TIME TariffDimensions, where TIME is for the duration of the reservation */
1930
- reservation?: Maybe<OCPIReservationRestrictionType>;
2204
+ export type QuerytariffListArgs = {
2205
+ size?: Maybe<Scalars["Int"]>;
2206
+ page?: Maybe<Scalars["Int"]>;
1931
2207
  };
1932
2208
 
1933
- export enum OCPIDayOfWeek {
1934
- MONDAY = "MONDAY",
1935
- TUESDAY = "TUESDAY",
1936
- WEDNESDAY = "WEDNESDAY",
1937
- THURSDAY = "THURSDAY",
1938
- FRIDAY = "FRIDAY",
1939
- SATURDAY = "SATURDAY",
1940
- SUNDAY = "SUNDAY"
1941
- }
2209
+ /** EV specific data for a route request */
2210
+ export type RequestEv = {
2211
+ /** Internal ID of a Car */
2212
+ id?: Maybe<Scalars["ID"]>;
2213
+ /** EV battery specific data */
2214
+ battery?: Maybe<RequestEvBattery>;
2215
+ /** Supported plugs for an EV */
2216
+ plugs?: Maybe<Array<Maybe<RequestEvPlug>>>;
2217
+ /** Supported adapters of plugs for an EV */
2218
+ adapters?: Maybe<Array<Maybe<RequestEvPlug>>>;
2219
+ /** Minimum desired power of chargers */
2220
+ minPower?: Maybe<Scalars["Int"]>;
2221
+ /** Climate is on. The default is true */
2222
+ climate?: Maybe<Scalars["Boolean"]>;
2223
+ /** The number of passengers on board */
2224
+ numberOfPassengers?: Maybe<Scalars["Int"]>;
2225
+ /** Consumption specific to an EV or inputed by a request */
2226
+ consumption?: Maybe<RequestEvConsumption>;
2227
+ };
1942
2228
 
1943
- export enum OCPIReservationRestrictionType {
1944
- /** Used in TariffElements to describe costs for a reservation. */
1945
- RESERVATION = "RESERVATION",
1946
- /** Used in TariffElements to describe costs for a reservation that expires (i.e. driver does not start a charging session before expiry_date of the reservation). */
1947
- RESERVATION_EXPIRES = "RESERVATION_EXPIRES"
1948
- }
2229
+ export type RequestEvBattery = {
2230
+ /** The usable capacity of the battery used to compute the route. If this in not filled in, value as the car batteryUsableKwh. */
2231
+ capacity?: Maybe<RequestEvBatteryValue>;
2232
+ /** Usable capacity of a battery, in kWh. This value is computed from the provided capacity value. */
2233
+ capacityKwh?: Maybe<Scalars["Float"]>;
2234
+ /** Current amount of energy in a battery. If this is not filled in, we assume the battery is full and it will be equal to the batteryUsableKwh. */
2235
+ stateOfCharge?: Maybe<RequestEvBatteryValue>;
2236
+ /** Current amount of energy in a battery, in kWh. This value is computed from the provided state of charge. */
2237
+ stateOfChargeKwh?: Maybe<Scalars["Float"]>;
2238
+ /** Desired final amount of energy in a battery. If this is not filled in, it will be set to 20% of the car batteryUsableKwh. */
2239
+ finalStateOfCharge?: Maybe<RequestEvBatteryValue>;
2240
+ /** Desired final amount of energy in a battery, in kWh. This value is computed from the provided final state of charge. */
2241
+ finalStateOfChargeKwh?: Maybe<Scalars["Float"]>;
2242
+ };
1949
2243
 
1950
- /** This type is used to specify the energy mix and environmental impact of the supplied energy at a location or in a tariff. */
1951
- export type OCPIEnergyMix = {
1952
- /** True if the power is 100% from regenerative sources */
1953
- is_green_energy?: Maybe<Scalars["Boolean"]>;
1954
- /** Key-value pairs (enum + percentage) of energy sources of this location’s tariff. */
1955
- energy_sources?: Maybe<Array<Maybe<OCPIEnergySource>>>;
1956
- /** Key-value pairs (enum + percentage) of nuclear waste and CO2 exhaust of this location’s tariff. */
1957
- environ_impact?: Maybe<Array<Maybe<OCPIEnvironmentalImpact>>>;
1958
- /** Name of the energy supplier, delivering the energy for this location or tariff.* */
1959
- supplier_name?: Maybe<Scalars["String"]>;
1960
- /** Name of the energy suppliers product/tariff plan used at this location.* */
1961
- energy_product_name?: Maybe<Scalars["String"]>;
2244
+ export type RequestEvBatteryInput = {
2245
+ /** Usable capacity of a battery used to compute a route. Allowed value is between -50% and 50% of the car usable battery capacity. If this in not filled in, we assume it is the same value as the car batteryUsableKwh. */
2246
+ capacity?: Maybe<RequestEvBatteryInputValue>;
2247
+ /** Current amount of energy in a battery. If this is not filled in, we assume the battery is full and we fill it in with car batteryUsableKwh. */
2248
+ stateOfCharge?: Maybe<RequestEvBatteryInputValue>;
2249
+ /** Desired final amount of energy in a battery. If this is not filled in, we assume it is 20% of the car batteryUsableKwh. */
2250
+ finalStateOfCharge?: Maybe<RequestEvBatteryInputValue>;
1962
2251
  };
1963
2252
 
1964
- export type OCPIEnergySource = {
1965
- /** The type of energy source. */
1966
- source?: Maybe<OCPIEnergySourceCategory>;
1967
- /** Percentage of this source (0-100) in the mix. */
1968
- percentage?: Maybe<Scalars["Int"]>;
2253
+ export type RequestEvBatteryInputValue = {
2254
+ /** Value of a desired final amount of energy in a battery */
2255
+ value: Scalars["Float"];
2256
+ /** Type of a desired final amount of energy in a battery */
2257
+ type: BatteryInputType;
1969
2258
  };
1970
2259
 
1971
- /** Categories of energy sources. */
1972
- export enum OCPIEnergySourceCategory {
1973
- /** Nuclear power sources. */
1974
- NUCLEAR = "NUCLEAR",
1975
- /** All kinds of fossil power sources. */
1976
- GENERAL_FOSSIL = "GENERAL_FOSSIL",
1977
- /** Fossil power from coal. */
1978
- COAL = "COAL",
1979
- /** Fossil power from gas. */
1980
- GAS = "GAS",
1981
- /** All kinds of regenerative power sources. */
1982
- GENERAL_GREEN = "GENERAL_GREEN",
1983
- /** Regenerative power from PV. */
1984
- SOLAR = "SOLAR",
1985
- /** Regenerative power from wind turbines. */
1986
- WIND = "WIND",
1987
- /** Regenerative power from water turbines. */
1988
- WATER = "WATER"
1989
- }
2260
+ export type RequestEvBatteryValue = {
2261
+ /** Value of the desired final amount of energy in a battery */
2262
+ value: Scalars["Float"];
2263
+ /** Type of the desired final amount of energy in a battery */
2264
+ type: BatteryInputType;
2265
+ };
2266
+
2267
+ export type RequestEvConsumption = {
2268
+ /** Consumption, in kWh, of the auxiliaries */
2269
+ aux?: Maybe<CarConsumption>;
2270
+ /** The consumption, in kWh, of the battery management system */
2271
+ bms?: Maybe<CarConsumption>;
2272
+ /** The consumption, in kWh, of the car in idle mode */
2273
+ idle?: Maybe<CarConsumption>;
2274
+ };
1990
2275
 
1991
- /** Amount of waste produced/emitted per kWh. */
1992
- export type OCPIEnvironmentalImpact = {
1993
- /** The environmental impact category of this value. */
1994
- category?: Maybe<OCPIEnvironmentalImpactCategory>;
1995
- /** Amount of this portion in g/kWh. */
1996
- amount?: Maybe<Scalars["Int"]>;
2276
+ export type RequestEvConsumptionInput = {
2277
+ /** Consumption, in kWh, of the auxiliaries */
2278
+ aux?: Maybe<CarConsumptionInput>;
2279
+ /** Consumption, in kWh, of the battery management system */
2280
+ bms?: Maybe<CarConsumptionInput>;
2281
+ /** Consumption, in kWh, of the car in idle mode */
2282
+ idle?: Maybe<CarConsumptionInput>;
1997
2283
  };
1998
2284
 
1999
- /** Categories of environmental impact values. */
2000
- export enum OCPIEnvironmentalImpactCategory {
2001
- /** Produced nuclear waste in grams per kilowatthour. */
2002
- NUCLEAR_WASTE = "NUCLEAR_WASTE",
2003
- /** Exhausted carbon dioxide in grams per kilowatthour. */
2004
- CARBON_DIOXIDE = "CARBON_DIOXIDE"
2005
- }
2285
+ export type RequestEvInput = {
2286
+ /** Internal ID of a Car */
2287
+ id: Scalars["ID"];
2288
+ /** The EV battery specific data */
2289
+ battery?: Maybe<RequestEvBatteryInput>;
2290
+ /** Supported plugs of an EV */
2291
+ plugs?: Maybe<Array<Maybe<RequestEvPlugInput>>>;
2292
+ /** Supported adapters of plugs of an EV */
2293
+ adapters?: Maybe<Array<Maybe<RequestEvPlugInput>>>;
2294
+ /** Minimum desired power of chargers */
2295
+ minPower?: Maybe<Scalars["Int"]>;
2296
+ /** Flag which indicates if the climate is on. The default is true */
2297
+ climate?: Maybe<Scalars["Boolean"]>;
2298
+ /** Number of passengers on board */
2299
+ numberOfPassengers?: Maybe<Scalars["Int"]>;
2300
+ /** Consumption specific to the EV or inputted by the request */
2301
+ consumption?: Maybe<RequestEvConsumptionInput>;
2302
+ /** Deprecated */
2303
+ auxConsumption?: Maybe<Scalars["Float"]>;
2304
+ /** Deprecated */
2305
+ bmsConsumption?: Maybe<Scalars["Float"]>;
2306
+ };
2006
2307
 
2007
- /** This value, if provided, represents the restriction to the parking spot for different purposes. */
2008
- export enum OCPIParkingRestriction {
2009
- /** Reserved parking spot for electric vehicles. */
2010
- EV_ONLY = "EV_ONLY",
2011
- /** Parking is only allowed while plugged in (charging). */
2012
- PLUGGED = "PLUGGED",
2013
- /** Reserved parking spot for disabled people with valid ID. */
2014
- DISABLED = "DISABLED",
2015
- /** Parking spot for customers/guests only, for example in case of a hotel or shop. */
2016
- CUSTOMERS = "CUSTOMERS",
2017
- /** Parking spot only suitable for (electric) motorcycles or scooters. */
2018
- MOTORCYCLES = "MOTORCYCLES"
2019
- }
2308
+ export type RequestEvPlug = {
2309
+ /** Type of the plug */
2310
+ standard?: Maybe<OCPIConnectorType>;
2311
+ /** Maximum charging speed for a plug */
2312
+ chargingPower?: Maybe<Scalars["Float"]>;
2313
+ };
2020
2314
 
2021
- export enum ParkingCost {
2022
- /** Parking is free */
2023
- FREE = "free",
2024
- /** Parking includes a fee */
2025
- PAID = "paid"
2026
- }
2315
+ export type RequestEvPlugInput = {
2316
+ /** Type of a plug */
2317
+ standard: OCPIConnectorType;
2318
+ /** Maximum charging speed for this plug */
2319
+ chargingPower: Scalars["Float"];
2320
+ };
2027
2321
 
2028
- export enum OCPIFacility {
2029
- /** A hotel. */
2030
- HOTEL = "HOTEL",
2031
- /** A restaurant. */
2032
- RESTAURANT = "RESTAURANT",
2033
- /** A cafe. */
2034
- CAFE = "CAFE",
2035
- /** A mall or shopping center. */
2036
- MALL = "MALL",
2037
- /** A supermarket. */
2038
- SUPERMARKET = "SUPERMARKET",
2039
- /** Sport facilities: gym, field etc. */
2040
- SPORT = "SPORT",
2041
- /** A recreation area. */
2042
- RECREATION_AREA = "RECREATION_AREA",
2043
- /** Located in, or close to, a park, nature reserve etc. */
2044
- NATURE = "NATURE",
2045
- /** A museum. */
2046
- MUSEUM = "MUSEUM",
2047
- /** A bike/e-bike/e-scooter sharing location. */
2048
- BIKE_SHARING = "BIKE_SHARING",
2049
- /** A bus stop. */
2050
- BUS_STOP = "BUS_STOP",
2051
- /** A taxi stand. */
2052
- TAXI_STAND = "TAXI_STAND",
2053
- /** A tram stop/station. */
2054
- TRAM_STOP = "TRAM_STOP",
2055
- /** A metro station. */
2056
- METRO_STATION = "METRO_STATION",
2057
- /** A train station. */
2058
- TRAIN_STATION = "TRAIN_STATION",
2059
- /** An airport. */
2060
- AIRPORT = "AIRPORT",
2061
- /** A parking lot. */
2062
- PARKING_LOT = "PARKING_LOT",
2063
- /** A carpool parking. */
2064
- CARPOOL_PARKING = "CARPOOL_PARKING",
2065
- /** A Fuel station. */
2066
- FUEL_STATION = "FUEL_STATION",
2067
- /** Wifi or other type of internet available. */
2068
- WIFI = "WIFI"
2069
- }
2322
+ export type RequestInput = {
2323
+ /** EV specific data for a route request */
2324
+ ev: RequestEvInput;
2325
+ /** Route request data */
2326
+ routeRequest: RequestRouteInput;
2327
+ };
2070
2328
 
2071
- /** Opening and access hours of the location. */
2072
- export type OCPIHours = {
2073
- /** True to represent 24 hours a day and 7 days a week, except the given exceptions. */
2074
- twentyfourseven?: Maybe<Scalars["Boolean"]>;
2075
- /** Regular hours, weekday-based. Only to be used if twentyfourseven=false, then this field needs to contain at least one RegularHours object. */
2076
- regular_hours?: Maybe<Array<Maybe<OCPIRegularHours>>>;
2077
- /** Exceptions for specified calendar dates, time-range based. Periods the station is operating/accessible. Additional to regular_hours. May overlap regular rules. */
2078
- exceptional_openings?: Maybe<Array<Maybe<OCPIExceptionalPeriod>>>;
2079
- /** Exceptions for specified calendar dates, time-range based. Periods the station is not operating/accessible. Overwriting regular_hours and exceptional_openings. Should not overlap exceptional_openings. */
2080
- exceptional_closings?: Maybe<Array<Maybe<OCPIExceptionalPeriod>>>;
2329
+ export type RequestRoute = {
2330
+ /** Desired amenities near the stations, within a 1 km radius */
2331
+ amenities?: Maybe<Array<Maybe<Scalars["String"]>>>;
2332
+ /**
2333
+ * Requested operators
2334
+ * @deprecated Will be removed. Use the operators property instead
2335
+ */
2336
+ operatorIds?: Maybe<Array<Maybe<Scalars["String"]>>>;
2337
+ /**
2338
+ * Preferred operators are required. In case there are no preferred operators the route cannot be calculated
2339
+ * @deprecated Will be removed. Use the operators property instead
2340
+ */
2341
+ operatorRequired?: Maybe<Scalars["Boolean"]>;
2342
+ /**
2343
+ * Encourage the route to use preferred operators. In case there are no preferred operators the route can still be calculated
2344
+ * @deprecated Will be removed. Use the operators property instead
2345
+ */
2346
+ operatorPrefer?: Maybe<Scalars["Boolean"]>;
2347
+ /** Operator preferences for a route */
2348
+ operators?: Maybe<RouteOperators>;
2349
+ /** Season */
2350
+ season?: Maybe<RouteSeason>;
2351
+ /** Percentage for the minimum limit of the battery capacity before a recharge. The value should be between 0 and 60, with a default of 10% */
2352
+ safeRiskMargin?: Maybe<Scalars["Int"]>;
2353
+ /** Origin of a route */
2354
+ origin?: Maybe<FeaturePoint>;
2355
+ /** Destination of a route */
2356
+ destination?: Maybe<FeaturePoint>;
2357
+ /** Locations where a route will stop */
2358
+ via?: Maybe<Array<Maybe<FeaturePoint>>>;
2359
+ /** Radius in meters for alternative stations along a route (min 500 - max 5000) */
2360
+ stationsAlongRouteRadius?: Maybe<Scalars["Int"]>;
2361
+ /** Flag indicating wether the turn-by-turn navigation instructions should be prepared. Disclaimer: The functionality is under active development and the final API is a subject to change. Not ready for production */
2362
+ instructions?: Maybe<Scalars["Boolean"]>;
2363
+ /** Mode that indicates if we optimize the charging time or always charge to the maximum capacity */
2364
+ chargeMode?: Maybe<ChargeMode>;
2081
2365
  };
2082
2366
 
2083
- /** Regular recurring operation or access hours. */
2084
- export type OCPIRegularHours = {
2085
- /** Number of days in the week, from Monday (1) till Sunday (7) */
2086
- weekday?: Maybe<Scalars["Int"]>;
2087
- /** Begin of the regular period, in local time, given in hours and minutes. Must be in 24h format with leading zeros. Example: "18:15". Hour/Minute separator: ":" Regex: ([0-1][0-9]|2[1-3]):[0-5][0-9]. */
2088
- period_begin?: Maybe<Scalars["String"]>;
2089
- /** End of the regular period, in local time, syntax as for period_begin. Must be later than period_begin. */
2090
- period_end?: Maybe<Scalars["String"]>;
2367
+ export type RequestRouteInput = {
2368
+ /** A list of desired amenities near the stations, with a 1 km radius */
2369
+ amenities?: Maybe<Array<Maybe<Scalars["String"]>>>;
2370
+ /** Deprecated: in favor of operators. A list of requested operators */
2371
+ operatorIds?: Maybe<Array<Maybe<Scalars["String"]>>>;
2372
+ /** Deprecated: in favor of operators. Flag which indicates if the operators are required */
2373
+ operatorRequired?: Maybe<Scalars["Boolean"]>;
2374
+ /** Deprecated: in favor of operators. Flag which indicates if the preferred operators should be loaded */
2375
+ operatorPrefer?: Maybe<Scalars["Boolean"]>;
2376
+ /** Operator preferences for a route */
2377
+ operators?: Maybe<RouteOperatorsInput>;
2378
+ /** Optional flag to specify the season */
2379
+ season?: Maybe<RouteSeason>;
2380
+ /** Percentage for a minimum limit of a battery capacity before a recharge. The value should be between 0 and 60, with a default of 10% */
2381
+ safeRiskMargin?: Maybe<Scalars["Int"]>;
2382
+ /** Mode that indicates if we optimize the charging time or always charge to the maximum capacity */
2383
+ chargeMode?: Maybe<ChargeMode>;
2384
+ /** Origin of a route */
2385
+ origin: FeaturePointInput;
2386
+ /** Destination of a route */
2387
+ destination: FeaturePointInput;
2388
+ /** An optional list of locations where we should stop */
2389
+ via?: Maybe<Array<Maybe<FeaturePointInput>>>;
2390
+ /** Alternative stations along a route within a specified radius in meters (minimum 500, maximum 5000) */
2391
+ stationsAlongRouteRadius?: Maybe<Scalars["Int"]>;
2392
+ /** Flag indicating wether the turn-by-turn navigation instructions should be prepared. Disclaimer: The functionality is under active development and the final API is a subject to change. Not ready for production */
2393
+ instructions?: Maybe<Scalars["Boolean"]>;
2091
2394
  };
2092
2395
 
2093
- /** Specifies one exceptional period for opening or access hours. */
2094
- export type OCPIExceptionalPeriod = {
2095
- /** Begin of the exception. In UTC, time_zone field can be used to convert to local time. */
2096
- period_begin?: Maybe<Scalars["DateTime"]>;
2097
- /** End of the exception. In UTC, time_zone field can be used to convert to local time. */
2098
- period_end?: Maybe<Scalars["DateTime"]>;
2396
+ export type RequestUser = {
2397
+ /** ID of the user */
2398
+ id?: Maybe<Scalars["ID"]>;
2099
2399
  };
2100
2400
 
2101
- /** A groupped representation of EVSEs */
2102
- export type Charger = {
2103
- /** Type of charger */
2104
- standard?: Maybe<OCPIConnectorType>;
2105
- /** Power of a charger */
2106
- power?: Maybe<Scalars["Float"]>;
2107
- /** Price of a charger */
2108
- price?: Maybe<Scalars["String"]>;
2109
- /** Charging speed */
2110
- speed?: Maybe<StationSpeedType>;
2111
- /** Statuses of all the EVSEs grouped in a charger */
2112
- status?: Maybe<ChargerStatuses>;
2113
- /** Total number of EVSEs grouped in a charger */
2114
- total?: Maybe<Scalars["Int"]>;
2401
+ /** The review model */
2402
+ export type Review = {
2403
+ /** ID of a review */
2404
+ id: Scalars["ID"];
2405
+ /** Station for which a review was provided */
2406
+ station?: Maybe<Station>;
2407
+ /** User who added a review. If a review was added by an anonymous user, this will be null */
2408
+ user?: Maybe<ReviewUser>;
2409
+ /** Rating of a review */
2410
+ rating?: Maybe<Scalars["Int"]>;
2411
+ /** Message of a review */
2412
+ message?: Maybe<Scalars["String"]>;
2413
+ /** Locale of a message */
2414
+ locale?: Maybe<Scalars["String"]>;
2415
+ /** Car that was provided/selected by a user */
2416
+ ev?: Maybe<Car>;
2417
+ /** Plug type that was provided/selected by a user */
2418
+ plugType?: Maybe<OCPIConnectorType>;
2419
+ /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
2420
+ properties?: Maybe<Scalars["JSON"]>;
2421
+ /** Boolean tags for a station review */
2422
+ tags?: Maybe<ReviewTags>;
2423
+ /** Date and time when a review was created */
2424
+ createdAt?: Maybe<Scalars["String"]>;
2425
+ /** Date and time when a review was updated */
2426
+ updatedAt?: Maybe<Scalars["String"]>;
2115
2427
  };
2116
2428
 
2117
- /** The station speed type */
2118
- export enum StationSpeedType {
2119
- /** Slow charging (below 43 kWh) */
2120
- SLOW = "slow",
2121
- /** Fast charging stations (above 43 kWh and below 150 kWh) */
2122
- FAST = "fast",
2123
- /** Ultra fast charging stations (above 150 kWh) */
2124
- TURBO = "turbo"
2125
- }
2429
+ /** Form input to add a new review */
2430
+ export type ReviewAdd = {
2431
+ /** Station ID for which a review is provided */
2432
+ stationId: Scalars["String"];
2433
+ /** Rating of a review */
2434
+ rating: Scalars["Int"];
2435
+ /** Review message */
2436
+ message?: Maybe<Scalars["String"]>;
2437
+ /** Locale of a message */
2438
+ locale?: Maybe<Scalars["String"]>;
2439
+ /** ID of the Car that was provided/selected by a user */
2440
+ ev?: Maybe<Scalars["String"]>;
2441
+ /** Plug type that was provided/selected by a user */
2442
+ plugType?: Maybe<OCPIConnectorType>;
2443
+ /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
2444
+ properties?: Maybe<Scalars["JSON"]>;
2445
+ /** Boolean tags for a station review */
2446
+ tags?: Maybe<ReviewTagsInput>;
2447
+ };
2126
2448
 
2127
- /** Groupping by status of the chargers */
2128
- export type ChargerStatuses = {
2129
- /** How many are free */
2130
- free?: Maybe<Scalars["Int"]>;
2131
- /** How many are busy */
2132
- busy?: Maybe<Scalars["Int"]>;
2133
- /** How many are unknown */
2134
- unknown?: Maybe<Scalars["Int"]>;
2135
- /** How many are not available */
2136
- error?: Maybe<Scalars["Int"]>;
2449
+ /** Form input for edit an existing review */
2450
+ export type ReviewEdit = {
2451
+ /** Rating of a review */
2452
+ rating: Scalars["Int"];
2453
+ /** Review message */
2454
+ message?: Maybe<Scalars["String"]>;
2455
+ /** Locale of a message */
2456
+ locale?: Maybe<Scalars["String"]>;
2457
+ /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
2458
+ properties?: Maybe<Scalars["JSON"]>;
2459
+ /** Boolean tags for a station review */
2460
+ tags?: Maybe<ReviewTagsInput>;
2137
2461
  };
2138
2462
 
2139
- /** Station availability for each weekday and hour */
2140
- export type StationPredictedAvailability = {
2141
- /** Number of weekday from 1 (monday) to 7 (sunday) */
2142
- weekday?: Maybe<Scalars["Int"]>;
2143
- /** The prediction for each hour 0-23 from 1 to 5 (1 - very busy ... 5 very quiet (free)) */
2144
- prediction?: Maybe<Array<Maybe<Scalars["Int"]>>>;
2463
+ /** Statistical information for reviews of a station */
2464
+ export type ReviewStats = {
2465
+ /** Average of all reviews */
2466
+ rating?: Maybe<Scalars["Float"]>;
2467
+ /** 'Total number of reviews */
2468
+ count?: Maybe<Scalars["Int"]>;
2145
2469
  };
2146
2470
 
2147
- /** Station occupancy for each weekday and hour */
2148
- export type StationPredictedOccupancy = {
2149
- /** Number of weekday from 1 (monday) to 7 (sunday) */
2150
- weekday?: Maybe<Scalars["Int"]>;
2151
- /** Occupancy on a scale from 1 to 10, where 1 means free for charging and 10 means fully occupied */
2152
- occupancy?: Maybe<Scalars["Int"]>;
2153
- /** Start of the period of the occupancy prediction (string of 'hh-mmZ' format) */
2154
- period_begin?: Maybe<Scalars["String"]>;
2155
- /** End of the period of the occupancy prediction (string of 'hh-mmZ' format) */
2156
- period_end?: Maybe<Scalars["String"]>;
2471
+ /** Boolean tags for the station review */
2472
+ export type ReviewTags = {
2473
+ /** Flag which indicates if the station was working when the review was added */
2474
+ working?: Maybe<Scalars["Boolean"]>;
2475
+ /** Flag which indicates if the user recommended the station when the review was added */
2476
+ recommended?: Maybe<Scalars["Boolean"]>;
2157
2477
  };
2158
2478
 
2159
- export enum ChargerStatus {
2160
- /** The charger is free */
2161
- FREE = "free",
2162
- /** The charger is occupied/busy */
2163
- BUSY = "busy",
2164
- /** The charger is unknown */
2165
- UNKNOWN = "unknown",
2166
- /** The charger has an error */
2167
- ERROR = "error"
2168
- }
2479
+ /** Boolean tags for a station review */
2480
+ export type ReviewTagsInput = {
2481
+ /** Flag which indicates if a station was working when the review was added */
2482
+ working?: Maybe<Scalars["Boolean"]>;
2483
+ /** Flag which indicates if a user recommended a station when the review was added */
2484
+ recommended?: Maybe<Scalars["Boolean"]>;
2485
+ };
2169
2486
 
2170
2487
  /** Special format for the user of a review */
2171
2488
  export type ReviewUser = {
@@ -2188,14 +2505,6 @@ export type ReviewUser = {
2188
2505
  lastName?: Maybe<Scalars["String"]>;
2189
2506
  };
2190
2507
 
2191
- /** Boolean tags for the station review */
2192
- export type ReviewTags = {
2193
- /** Flag which indicates if the station was working when the review was added */
2194
- working?: Maybe<Scalars["Boolean"]>;
2195
- /** Flag which indicates if the user recommended the station when the review was added */
2196
- recommended?: Maybe<Scalars["Boolean"]>;
2197
- };
2198
-
2199
2508
  export type Route = {
2200
2509
  /** Recommended route */
2201
2510
  route?: Maybe<RouteAlternative>;
@@ -2275,31 +2584,6 @@ export type RouteAlternativepolylineArgs = {
2275
2584
  decimals?: Maybe<Scalars["Int"]>;
2276
2585
  };
2277
2586
 
2278
- /** Types of an alternative route */
2279
- export enum RouteAlternativeType {
2280
- /** Fastest route between origin and destination */
2281
- FASTEST = "fastest",
2282
- /** Best matching amenities along the route with the requested list */
2283
- BESTMATCHING = "bestMatching",
2284
- /** An alternative to the fastest route */
2285
- ALTERNATIVE = "alternative"
2286
- }
2287
-
2288
- export type PathSegment = {
2289
- /** Elevation (altitude) in meters */
2290
- elevation?: Maybe<Scalars["Int"]>;
2291
- /** Average speed, in km/h, for this route path segment */
2292
- averageSpeed?: Maybe<Scalars["Float"]>;
2293
- /** Consumption, in kWh, of a route path segment */
2294
- consumption?: Maybe<Scalars["Float"]>;
2295
- /** Consumption, in kWh per km, of a route path segment */
2296
- consumptionPerKm?: Maybe<Scalars["Float"]>;
2297
- /** Distance, in meters, of a route path segment */
2298
- distance?: Maybe<Scalars["Float"]>;
2299
- /** Duration, in seconds, of a route path segment */
2300
- duration?: Maybe<Scalars["Float"]>;
2301
- };
2302
-
2303
2587
  export type RouteAlternativeSaving = {
2304
2588
  /** Total amount of CO2, in grams, which would be used with a petrol vehicle */
2305
2589
  co2?: Maybe<Scalars["String"]>;
@@ -2313,82 +2597,14 @@ export type RouteAlternativeSaving = {
2313
2597
  averageEnergyPrice?: Maybe<Scalars["String"]>;
2314
2598
  };
2315
2599
 
2316
- export type RouteLeg = {
2317
- /** ID of a leg */
2318
- id?: Maybe<Scalars["ID"]>;
2319
- /** Distance from the start to the end of a leg, in meters */
2320
- distance?: Maybe<Scalars["Int"]>;
2321
- /** Total drive time from the start to the end of a leg, in seconds */
2322
- duration?: Maybe<Scalars["Int"]>;
2323
- /** Total energy used in a leg in kWh */
2324
- consumption?: Maybe<Scalars["Float"]>;
2325
- /** Range, in meters, available at the beginning of a leg */
2326
- rangeStart?: Maybe<Scalars["Int"]>;
2327
- /** Total energy in a battery at the beginning of a leg, in kWh */
2328
- rangeStartKwh?: Maybe<Scalars["Float"]>;
2329
- /** Range, in meters, available at the end of a leg */
2330
- rangeEnd?: Maybe<Scalars["Int"]>;
2331
- /** Total energy left in a battery at the end of a leg, in kWh */
2332
- rangeEndKwh?: Maybe<Scalars["Float"]>;
2333
- /** Origin point location */
2334
- origin?: Maybe<FeaturePoint>;
2335
- /** Destination point location */
2336
- destination?: Maybe<FeaturePoint>;
2337
- /** Type of a leg */
2338
- type?: Maybe<LegType>;
2339
- /** Name of a destination. This is the station name in case a user should charge or the name of the location in case this was provided */
2340
- name?: Maybe<Scalars["String"]>;
2341
- /** ID of a station */
2342
- stationId?: Maybe<Scalars["String"]>;
2343
- /** ID of the operator */
2344
- operatorId?: Maybe<Scalars["String"]>;
2345
- /** Total time required to charge a battery until 80%, in seconds */
2346
- chargeTime?: Maybe<Scalars["Int"]>;
2347
- /** Recommended EVSE where to charge */
2348
- evse?: Maybe<EVSE>;
2349
- /** Recommended connector for charging */
2350
- connector?: Maybe<Connector>;
2351
- /** Number of available plugs at a station */
2352
- plugsAvailable?: Maybe<Scalars["Int"]>;
2353
- /** Number of occupied plugs at a charge station */
2354
- plugsOccupied?: Maybe<Scalars["Int"]>;
2355
- /** Number of unknown plugs at a charge station */
2356
- plugsUnknown?: Maybe<Scalars["Int"]>;
2357
- /** Number of out of order plugs at a charge station */
2358
- plugsOutOfOrder?: Maybe<Scalars["Int"]>;
2359
- /** Total number of plugs at a charge station */
2360
- plugsCount?: Maybe<Scalars["Int"]>;
2361
- };
2362
-
2363
- /** A GeoJSON Feature<Point> */
2364
- export type FeaturePoint = {
2365
- /** Feature ID */
2366
- id?: Maybe<Scalars["String"]>;
2367
- /** Feature type */
2368
- type: FeatureType;
2369
- /** Geometry of the feature */
2370
- geometry: Point;
2371
- /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
2372
- properties?: Maybe<Scalars["JSON"]>;
2373
- };
2374
-
2375
- /** GeoJSON Feature type */
2376
- export enum FeatureType {
2377
- FEATURE = "Feature"
2378
- }
2379
-
2380
- /** The types of the leg */
2381
- export enum LegType {
2382
- /** This leg ends at a charging station and the car must recharge */
2383
- STATION = "station",
2384
- /** This leg ends at a via charging station and the car must recharge */
2385
- STATIONVIA = "stationVia",
2386
- /** This leg ends at a via location */
2387
- VIA = "via",
2388
- /** This leg ends at the destination, and is the last leg of the route */
2389
- FINAL = "final",
2390
- /** This leg ends at the destination which is a charging station, and is the last leg of the route */
2391
- STATIONFINAL = "stationFinal"
2600
+ /** Types of an alternative route */
2601
+ export enum RouteAlternativeType {
2602
+ /** Fastest route between origin and destination */
2603
+ FASTEST = "fastest",
2604
+ /** Best matching amenities along the route with the requested list */
2605
+ BESTMATCHING = "bestMatching",
2606
+ /** An alternative to the fastest route */
2607
+ ALTERNATIVE = "alternative"
2392
2608
  }
2393
2609
 
2394
2610
  export type RouteInstruction = {
@@ -2441,6 +2657,159 @@ export enum RouteInstructionSign {
2441
2657
  IGNORE = "IGNORE"
2442
2658
  }
2443
2659
 
2660
+ export type RouteLeg = {
2661
+ /** ID of a leg */
2662
+ id?: Maybe<Scalars["ID"]>;
2663
+ /** Distance from the start to the end of a leg, in meters */
2664
+ distance?: Maybe<Scalars["Int"]>;
2665
+ /** Total drive time from the start to the end of a leg, in seconds */
2666
+ duration?: Maybe<Scalars["Int"]>;
2667
+ /** Total energy used in a leg in kWh */
2668
+ consumption?: Maybe<Scalars["Float"]>;
2669
+ /** Range, in meters, available at the beginning of a leg */
2670
+ rangeStart?: Maybe<Scalars["Int"]>;
2671
+ /** Total energy in a battery at the beginning of a leg, in kWh */
2672
+ rangeStartKwh?: Maybe<Scalars["Float"]>;
2673
+ /** Range, in meters, available at the end of a leg */
2674
+ rangeEnd?: Maybe<Scalars["Int"]>;
2675
+ /** Total energy left in a battery at the end of a leg, in kWh */
2676
+ rangeEndKwh?: Maybe<Scalars["Float"]>;
2677
+ /** Origin point location */
2678
+ origin?: Maybe<FeaturePoint>;
2679
+ /** Destination point location */
2680
+ destination?: Maybe<FeaturePoint>;
2681
+ /** Type of a leg */
2682
+ type?: Maybe<LegType>;
2683
+ /** Name of a destination. This is the station name in case a user should charge or the name of the location in case this was provided */
2684
+ name?: Maybe<Scalars["String"]>;
2685
+ /** ID of a station */
2686
+ stationId?: Maybe<Scalars["String"]>;
2687
+ /** ID of the operator */
2688
+ operatorId?: Maybe<Scalars["String"]>;
2689
+ /** Total time required to charge a battery until 80%, in seconds */
2690
+ chargeTime?: Maybe<Scalars["Int"]>;
2691
+ /** Recommended EVSE where to charge */
2692
+ evse?: Maybe<EVSE>;
2693
+ /** Recommended connector for charging */
2694
+ connector?: Maybe<Connector>;
2695
+ /** Number of available plugs at a station */
2696
+ plugsAvailable?: Maybe<Scalars["Int"]>;
2697
+ /** Number of occupied plugs at a charge station */
2698
+ plugsOccupied?: Maybe<Scalars["Int"]>;
2699
+ /** Number of unknown plugs at a charge station */
2700
+ plugsUnknown?: Maybe<Scalars["Int"]>;
2701
+ /** Number of out of order plugs at a charge station */
2702
+ plugsOutOfOrder?: Maybe<Scalars["Int"]>;
2703
+ /** Total number of plugs at a charge station */
2704
+ plugsCount?: Maybe<Scalars["Int"]>;
2705
+ };
2706
+
2707
+ export type RouteOperators = {
2708
+ /** Flag indicating if the operators ranking should be preferred or required */
2709
+ type?: Maybe<RouteOperatorsType>;
2710
+ /** Ranking of an operator with multiple levels, each level having it's own penalty value */
2711
+ ranking?: Maybe<RouteOperatorsRanking>;
2712
+ /** Operator IDs which should be excluded from a route */
2713
+ exclude?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2714
+ };
2715
+
2716
+ /** Preferred operators for a route calculation */
2717
+ export type RouteOperatorsInput = {
2718
+ /** Flag indicating if the operators ranking should be preferred or required */
2719
+ type?: Maybe<RouteOperatorsType>;
2720
+ /** Ranking of an operator with multiple levels, each level having it's own penalty value */
2721
+ ranking?: Maybe<RouteOperatorsRankingInput>;
2722
+ /** Operator IDs which should be excluded from a route */
2723
+ exclude?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2724
+ };
2725
+
2726
+ /** Ranking configuration for preferred operators */
2727
+ export type RouteOperatorsRanking = {
2728
+ /** Level 1 (most significant) for operator ranking */
2729
+ level1?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2730
+ /** Level 2 for operator ranking */
2731
+ level2?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2732
+ /** Level 3 for operator ranking */
2733
+ level3?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2734
+ /** Level 4 for operator ranking */
2735
+ level4?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2736
+ /** Level 5 for operator ranking */
2737
+ level5?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2738
+ /** Level 6 for operator ranking */
2739
+ level6?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2740
+ /** Level 7 for operator ranking */
2741
+ level7?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2742
+ /** Level 8 for operator ranking */
2743
+ level8?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2744
+ /** Level 9 for operator ranking */
2745
+ level9?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2746
+ /** Level 10 (least significant) for operator ranking */
2747
+ level10?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2748
+ };
2749
+
2750
+ /** Ranking configuration for preferred operators */
2751
+ export type RouteOperatorsRankingInput = {
2752
+ /** Level 1 (most significant) for operator ranking */
2753
+ level1?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2754
+ /** Level 2 for operator ranking */
2755
+ level2?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2756
+ /** Level 3 for operator ranking */
2757
+ level3?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2758
+ /** Level 4 for operator ranking */
2759
+ level4?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2760
+ /** Level 5 for operator ranking */
2761
+ level5?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2762
+ /** Level 6 for operator ranking */
2763
+ level6?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2764
+ /** Level 7 for operator ranking */
2765
+ level7?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2766
+ /** Level 8 for operator ranking */
2767
+ level8?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2768
+ /** Level 9 for operator ranking */
2769
+ level9?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2770
+ /** Level 10 (least significant) for operator ranking */
2771
+ level10?: Maybe<Array<Maybe<Scalars["ID"]>>>;
2772
+ };
2773
+
2774
+ /** Type of operator preference for a route */
2775
+ export enum RouteOperatorsType {
2776
+ /** Default option. Operators ranking will not be taken into account if no type is given */
2777
+ NONE = "none",
2778
+ /** Operators given in the operators ranking will be preferred when calculating routes */
2779
+ PREFERRED = "preferred",
2780
+ /** Operators given in the operators ranking will be required when calculating routes,excluded operators will be ignored */
2781
+ REQUIRED = "required"
2782
+ }
2783
+
2784
+ export type RoutePath = {
2785
+ /** GeoJSON location of a route path segment */
2786
+ location?: Maybe<Point>;
2787
+ /** Elevation (altitude) in meters */
2788
+ elevation?: Maybe<Scalars["Int"]>;
2789
+ /** Average speed, in km/h, for this route path segment */
2790
+ averageSpeed?: Maybe<Scalars["Float"]>;
2791
+ /** Recommended speed, in km/h for this route path segment to optimise the consumption */
2792
+ recommendedSpeed?: Maybe<Scalars["Float"]>;
2793
+ /** Consumption, in kWh, of a route path segment */
2794
+ consumption?: Maybe<Scalars["Float"]>;
2795
+ /** Consumption, in kWh per km, of a route path segment */
2796
+ consumptionPerKm?: Maybe<Scalars["Float"]>;
2797
+ /** Distance, in meters, of a route path segment */
2798
+ distance?: Maybe<Scalars["Float"]>;
2799
+ /** Duration, in seconds, of a route path segment */
2800
+ duration?: Maybe<Scalars["Float"]>;
2801
+ };
2802
+
2803
+ /** The season of the route */
2804
+ export enum RouteSeason {
2805
+ /** We suppose it is summer and we have the best weather conditions */
2806
+ SUMMER = "summer",
2807
+ /** We suppose it is winter and we have the worst weather conditions */
2808
+ WINTER = "winter",
2809
+ /** We fetch the current weather conditions */
2810
+ CURRENT = "current"
2811
+ }
2812
+
2444
2813
  export type RouteStationsAlong = {
2445
2814
  /** The ID of station */
2446
2815
  id?: Maybe<Scalars["String"]>;
@@ -2456,111 +2825,6 @@ export type RouteStationsAlong = {
2456
2825
  distance?: Maybe<Scalars["Int"]>;
2457
2826
  };
2458
2827
 
2459
- /** EV specific data for a route request */
2460
- export type RequestEv = {
2461
- /** Internal ID of a Car */
2462
- id?: Maybe<Scalars["ID"]>;
2463
- /** EV battery specific data */
2464
- battery?: Maybe<RequestEvBattery>;
2465
- /** Supported plugs for an EV */
2466
- plugs?: Maybe<Array<Maybe<RequestEvPlug>>>;
2467
- /** Supported adapters of plugs for an EV */
2468
- adapters?: Maybe<Array<Maybe<RequestEvPlug>>>;
2469
- /** Minimum desired power of chargers */
2470
- minPower?: Maybe<Scalars["Int"]>;
2471
- /** Climate is on. The default is true */
2472
- climate?: Maybe<Scalars["Boolean"]>;
2473
- /** The number of passengers on board */
2474
- numberOfPassengers?: Maybe<Scalars["Int"]>;
2475
- /** Consumption specific to an EV or inputed by a request */
2476
- consumption?: Maybe<RequestEvConsumption>;
2477
- };
2478
-
2479
- export type RequestEvBattery = {
2480
- /** The usable capacity of the battery used to compute the route. If this in not filled in, value as the car batteryUsableKwh. */
2481
- capacity?: Maybe<RequestEvBatteryValue>;
2482
- /** Usable capacity of a battery, in kWh. This value is computed from the provided capacity value. */
2483
- capacityKwh?: Maybe<Scalars["Float"]>;
2484
- /** Current amount of energy in a battery. If this is not filled in, we assume the battery is full and it will be equal to the batteryUsableKwh. */
2485
- stateOfCharge?: Maybe<RequestEvBatteryValue>;
2486
- /** Current amount of energy in a battery, in kWh. This value is computed from the provided state of charge. */
2487
- stateOfChargeKwh?: Maybe<Scalars["Float"]>;
2488
- /** Desired final amount of energy in a battery. If this is not filled in, it will be set to 20% of the car batteryUsableKwh. */
2489
- finalStateOfCharge?: Maybe<RequestEvBatteryValue>;
2490
- /** Desired final amount of energy in a battery, in kWh. This value is computed from the provided final state of charge. */
2491
- finalStateOfChargeKwh?: Maybe<Scalars["Float"]>;
2492
- };
2493
-
2494
- export type RequestEvBatteryValue = {
2495
- /** Value of the desired final amount of energy in a battery */
2496
- value: Scalars["Float"];
2497
- /** Type of the desired final amount of energy in a battery */
2498
- type: BatteryInputType;
2499
- };
2500
-
2501
- /** The type of the batter value */
2502
- export enum BatteryInputType {
2503
- KWH = "kwh",
2504
- KM = "km",
2505
- MILES = "miles"
2506
- }
2507
-
2508
- export type RequestEvPlug = {
2509
- /** Type of the plug */
2510
- standard?: Maybe<OCPIConnectorType>;
2511
- /** Maximum charging speed for a plug */
2512
- chargingPower?: Maybe<Scalars["Float"]>;
2513
- };
2514
-
2515
- export type RequestEvConsumption = {
2516
- /** Consumption, in kWh, of the auxiliaries */
2517
- aux?: Maybe<CarConsumption>;
2518
- /** The consumption, in kWh, of the battery management system */
2519
- bms?: Maybe<CarConsumption>;
2520
- /** The consumption, in kWh, of the car in idle mode */
2521
- idle?: Maybe<CarConsumption>;
2522
- };
2523
-
2524
- export type RequestUser = {
2525
- /** ID of the user */
2526
- id?: Maybe<Scalars["ID"]>;
2527
- };
2528
-
2529
- export type RequestRoute = {
2530
- /** Desired amenities near the stations, within a 1 km radius */
2531
- amenities?: Maybe<Array<Maybe<Scalars["String"]>>>;
2532
- /** Requested operators */
2533
- operatorIds?: Maybe<Array<Maybe<Scalars["String"]>>>;
2534
- /** Preferred operators are required. In case there are no preferred operators the route cannot be calculated */
2535
- operatorRequired?: Maybe<Scalars["Boolean"]>;
2536
- /** Encourage the route to use preferred operators. In case there are no preferred operators the route can still be calculated */
2537
- operatorPrefer?: Maybe<Scalars["Boolean"]>;
2538
- /** Season */
2539
- season?: Maybe<RouteSeason>;
2540
- /** Percentage for the minimum limit of the battery capacity before a recharge. The value should be between 0 and 60, with a default of 10% */
2541
- safeRiskMargin?: Maybe<Scalars["Int"]>;
2542
- /** Origin of a route */
2543
- origin?: Maybe<FeaturePoint>;
2544
- /** Destination of a route */
2545
- destination?: Maybe<FeaturePoint>;
2546
- /** Locations where a route will stop */
2547
- via?: Maybe<Array<Maybe<FeaturePoint>>>;
2548
- /** Radius in meters for alternative stations along a route (min 500 - max 5000) */
2549
- stationsAlongRouteRadius?: Maybe<Scalars["Int"]>;
2550
- /** Flag indicating wether the turn-by-turn navigation instructions should be prepared. Disclaimer: The functionality is under active development and the final API is a subject to change. Not ready for production */
2551
- instructions?: Maybe<Scalars["Boolean"]>;
2552
- };
2553
-
2554
- /** The season of the route */
2555
- export enum RouteSeason {
2556
- /** We suppose it is summer and we have the best weather conditions */
2557
- SUMMER = "summer",
2558
- /** We suppose it is winter and we have the worst weather conditions */
2559
- WINTER = "winter",
2560
- /** We fetch the current weather conditions */
2561
- CURRENT = "current"
2562
- }
2563
-
2564
2828
  /** The status of a route. The status can be pending, processing, done, not_found or error */
2565
2829
  export enum RouteStatus {
2566
2830
  /** Route is queued and pending processing. Temporary status */
@@ -2575,43 +2839,6 @@ export enum RouteStatus {
2575
2839
  ERROR = "error"
2576
2840
  }
2577
2841
 
2578
- /** A GeoJSON Point input */
2579
- export type PointInput = {
2580
- /** Point type */
2581
- type: PointType;
2582
- /** Coordinates [longitude, latitude] */
2583
- coordinates: Array<Scalars["Float"]>;
2584
- };
2585
-
2586
- export type RoutePath = {
2587
- /** GeoJSON location of a route path segment */
2588
- location?: Maybe<Point>;
2589
- /** Elevation (altitude) in meters */
2590
- elevation?: Maybe<Scalars["Int"]>;
2591
- /** Average speed, in km/h, for this route path segment */
2592
- averageSpeed?: Maybe<Scalars["Float"]>;
2593
- /** Recommended speed, in km/h for this route path segment to optimise the consumption */
2594
- recommendedSpeed?: Maybe<Scalars["Float"]>;
2595
- /** Consumption, in kWh, of a route path segment */
2596
- consumption?: Maybe<Scalars["Float"]>;
2597
- /** Consumption, in kWh per km, of a route path segment */
2598
- consumptionPerKm?: Maybe<Scalars["Float"]>;
2599
- /** Distance, in meters, of a route path segment */
2600
- distance?: Maybe<Scalars["Float"]>;
2601
- /** Duration, in seconds, of a route path segment */
2602
- duration?: Maybe<Scalars["Float"]>;
2603
- };
2604
-
2605
- /** The station stats model */
2606
- export type StationStats = {
2607
- /** Stations count grouped by standards */
2608
- standards?: Maybe<Array<Maybe<StandardStats>>>;
2609
- /** Stations count grouped by power */
2610
- power?: Maybe<Array<Maybe<PowerStats>>>;
2611
- /** Stations count grouped by amenities */
2612
- amenities?: Maybe<Array<Maybe<AmenityStats>>>;
2613
- };
2614
-
2615
2842
  /** Standards(plug type) stats model */
2616
2843
  export type StandardStats = {
2617
2844
  /** The plug type */
@@ -2620,38 +2847,95 @@ export type StandardStats = {
2620
2847
  total?: Maybe<Scalars["Int"]>;
2621
2848
  };
2622
2849
 
2623
- /** Power stats model */
2624
- export type PowerStats = {
2625
- /** The charging speed type for the specified power */
2626
- type?: Maybe<StationSpeedType>;
2627
- /** The list of powers for the speed type */
2628
- powers?: Maybe<Array<Maybe<PowerList>>>;
2629
- };
2630
-
2631
- /** The list of powers for the speed type */
2632
- export type PowerList = {
2633
- /** The maximum power the plug provides in kW */
2634
- power?: Maybe<Scalars["Float"]>;
2635
- /** The total number of stations with the specified power */
2636
- total?: Maybe<Scalars["Int"]>;
2637
- };
2638
-
2639
- /** Amenities stats model */
2640
- export type AmenityStats = {
2641
- /** The amenity type */
2642
- type?: Maybe<Scalars["String"]>;
2643
- /** The total number of stations with the specified amenity */
2644
- total?: Maybe<Scalars["Int"]>;
2645
- };
2646
-
2647
- /** Filter which can be applied to retrieve the station list action */
2648
- export type StationListQuery = {
2649
- /** ID of the station */
2650
- id?: Maybe<Scalars["ID"]>;
2651
- /** External ID of the station provided by the station data source */
2652
- external_id?: Maybe<Scalars["String"]>;
2653
- /** Exact name */
2850
+ /** Station data which extends OCPI Location */
2851
+ export type Station = {
2852
+ /** Review of a station */
2853
+ review?: Maybe<ReviewStats>;
2854
+ /** Unique ID of a station */
2855
+ id: Scalars["ID"];
2856
+ /** ISO-3166 alpha-2 country code of a station */
2857
+ country_code?: Maybe<Scalars["String"]>;
2858
+ /** CPO ID of a CPO that 'owns' this station (following the ISO-15118 standard) */
2859
+ party_id?: Maybe<Scalars["String"]>;
2860
+ /**
2861
+ * Defines if a location may be published on a website or app etc.
2862
+ * When this is set to false, only tokens identified in the field: publish_allowed_to are allowed to show this location.
2863
+ * When the same location has EVSEs that may be published and may not be published, two 'locations' should be created
2864
+ */
2865
+ publish?: Maybe<Scalars["Boolean"]>;
2866
+ /** Name of a charging station */
2654
2867
  name?: Maybe<Scalars["String"]>;
2868
+ /** Street/block name and house number if available */
2869
+ address?: Maybe<Scalars["String"]>;
2870
+ /** City or town */
2871
+ city?: Maybe<Scalars["String"]>;
2872
+ /** Postal code of a location, may only be omitted when a location has no postal code: in some countries charging locations at highways don’t have postal codes. */
2873
+ postal_code?: Maybe<Scalars["String"]>;
2874
+ /** State or province of a location, only to be used when relevant */
2875
+ state?: Maybe<Scalars["String"]>;
2876
+ /** ISO 3166-1 alpha-3 code for the country of this station */
2877
+ country?: Maybe<Scalars["String"]>;
2878
+ /** Coordinates of a location */
2879
+ coordinates?: Maybe<OCPIGeoLocation>;
2880
+ /** Geographical location of related points relevant to a user */
2881
+ related_locations?: Maybe<Array<Maybe<OCPIAdditionalGeoLocation>>>;
2882
+ /** Type of parking at a charge point location */
2883
+ parking_type?: Maybe<OCPIParkingType>;
2884
+ /** EVSEs that belong to a station */
2885
+ evses?: Maybe<Array<Maybe<EVSE>>>;
2886
+ /** Human-readable directions on how to reach a station */
2887
+ directions?: Maybe<Array<Maybe<OCPIDisplayText>>>;
2888
+ /** Information about an operator */
2889
+ operator?: Maybe<Operator>;
2890
+ /** Information about a suboperator if applicable */
2891
+ suboperator?: Maybe<Operator>;
2892
+ /** Information about an owner if available */
2893
+ owner?: Maybe<Operator>;
2894
+ /** Facilities a charging station belongs to */
2895
+ facilities?: Maybe<Array<Maybe<OCPIFacility>>>;
2896
+ /** Value from the IANA time zone database representing the time zone of a location. Examples: "Europe/Oslo", "Europe/Zurich". (http://www.iana.org/time-zones) */
2897
+ time_zone?: Maybe<Scalars["String"]>;
2898
+ /** Times when an EVSEs at a location can be accessed for charging */
2899
+ opening_times?: Maybe<OCPIHours>;
2900
+ /** Indicates if the EVSEs are still charging outside the opening hours. E.g. when a parking garage closes its barriers overnight, is it allowed to charge till the next morning? Default: true */
2901
+ charging_when_closed?: Maybe<Scalars["Boolean"]>;
2902
+ /** Links to images related to a location such as photos or logos */
2903
+ images?: Maybe<Array<Maybe<OCPIImage>>>;
2904
+ /** Details of the energy supplied at a location */
2905
+ energy_mix?: Maybe<OCPIEnergyMix>;
2906
+ /** Timestamp when a location, or one of its EVSEs or Connectors were last updated (or created) */
2907
+ last_updated?: Maybe<Scalars["DateTime"]>;
2908
+ /** ID provided by a station data source */
2909
+ external_id?: Maybe<Scalars["String"]>;
2910
+ /** GeoJSON location of a charging station */
2911
+ location?: Maybe<Point>;
2912
+ /** Elevation (altitude) level */
2913
+ elevation?: Maybe<Scalars["Int"]>;
2914
+ /** Groups of EVSEs by power and type */
2915
+ chargers?: Maybe<Array<Maybe<Charger>>>;
2916
+ /** Amenties located at this location */
2917
+ amenities?: Maybe<Scalars["JSON"]>;
2918
+ /** Enriched information about the physical address of a station */
2919
+ physical_address?: Maybe<Address>;
2920
+ /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
2921
+ properties?: Maybe<Scalars["JSON"]>;
2922
+ /** A flag that indicates if a station has real-time information about the availability of its connectors */
2923
+ realtime?: Maybe<Scalars["Boolean"]>;
2924
+ /** A flag that indicates if a station is on private property */
2925
+ private?: Maybe<Scalars["Boolean"]>;
2926
+ /** Connectors grouped by power */
2927
+ power?: Maybe<Scalars["JSON"]>;
2928
+ /**
2929
+ * Station availability
2930
+ * @deprecated predicted_availability, no value will be sent. Deprecated in favor of predicted_occupancy
2931
+ */
2932
+ predicted_availability?: Maybe<Array<Maybe<StationPredictedAvailability>>>;
2933
+ /** Predicted station occupancy */
2934
+ predicted_occupancy?: Maybe<Array<Maybe<StationPredictedOccupancy>>>;
2935
+ /** Charging speed for a station */
2936
+ speed?: Maybe<StationSpeedType>;
2937
+ /** Global status for a station */
2938
+ status?: Maybe<ChargerStatus>;
2655
2939
  };
2656
2940
 
2657
2941
  /** Filter which can be applied to retrieve the station around list action */
@@ -2666,169 +2950,54 @@ export type StationAroundQuery = {
2666
2950
  amenities?: Maybe<Array<Maybe<Scalars["String"]>>>;
2667
2951
  };
2668
2952
 
2669
- export type Mutation = {
2670
- /**
2671
- * Add a new review.
2672
- * If the `x-token` header is send for a valid user, the review will belong to it, otherwise will be added for an anonymouse user
2673
- */
2674
- addReview: Review;
2675
- /**
2676
- * Remove a review added by an authenticated user.
2677
- * The `x-token` header is mandatory in order to authorize the user who wants to remove a review.
2678
- * In case it is not sent, an error will occur.
2679
- * In case the review was not found or belongs to another user an error will occur.
2680
- * This is a premium feature, contact Chargetrip for more information.
2681
- */
2682
- deleteUserReview: Review;
2683
- /** Create a new route from the route input and its ID */
2684
- newRoute?: Maybe<Scalars["ID"]>;
2685
- };
2686
-
2687
- export type MutationaddReviewArgs = {
2688
- review: ReviewAdd;
2689
- };
2690
-
2691
- export type MutationdeleteUserReviewArgs = {
2692
- id: Scalars["ID"];
2693
- };
2694
-
2695
- export type MutationnewRouteArgs = {
2696
- input?: Maybe<RequestInput>;
2697
- };
2698
-
2699
- /** Form input to add a new review */
2700
- export type ReviewAdd = {
2701
- /** Station ID for which a review is provided */
2702
- stationId: Scalars["String"];
2703
- /** Rating of a review */
2704
- rating: Scalars["Int"];
2705
- /** Review message */
2706
- message?: Maybe<Scalars["String"]>;
2707
- /** Locale of a message */
2708
- locale?: Maybe<Scalars["String"]>;
2709
- /** ID of the Car that was provided/selected by a user */
2710
- ev?: Maybe<Scalars["String"]>;
2711
- /** Plug type that was provided/selected by a user */
2712
- plugType?: Maybe<OCPIConnectorType>;
2713
- /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
2714
- properties?: Maybe<Scalars["JSON"]>;
2715
- /** Boolean tags for a station review */
2716
- tags?: Maybe<ReviewTagsInput>;
2717
- };
2718
-
2719
- /** Boolean tags for a station review */
2720
- export type ReviewTagsInput = {
2721
- /** Flag which indicates if a station was working when the review was added */
2722
- working?: Maybe<Scalars["Boolean"]>;
2723
- /** Flag which indicates if a user recommended a station when the review was added */
2724
- recommended?: Maybe<Scalars["Boolean"]>;
2725
- };
2726
-
2727
- export type RequestInput = {
2728
- /** EV specific data for a route request */
2729
- ev: RequestEvInput;
2730
- /** Route request data */
2731
- routeRequest: RequestRouteInput;
2732
- };
2733
-
2734
- export type RequestEvInput = {
2735
- /** Iternal ID of a Car */
2736
- id: Scalars["ID"];
2737
- /** The EV battery specific data */
2738
- battery?: Maybe<RequestEvBatteryInput>;
2739
- /** Supported plugs of an EV */
2740
- plugs?: Maybe<Array<Maybe<RequestEvPlugInput>>>;
2741
- /** Supported adapters of plugs of an EV */
2742
- adapters?: Maybe<Array<Maybe<RequestEvPlugInput>>>;
2743
- /** Minimum desired power of chargers */
2744
- minPower?: Maybe<Scalars["Int"]>;
2745
- /** Flag which indicates if the climate is on. The default is true */
2746
- climate?: Maybe<Scalars["Boolean"]>;
2747
- /** Number of passengers on board */
2748
- numberOfPassengers?: Maybe<Scalars["Int"]>;
2749
- /** Consumption specific to the EV or inputed by the request */
2750
- consumption?: Maybe<RequestEvConsumptionInput>;
2751
- /** Deprecated */
2752
- auxConsumption?: Maybe<Scalars["Float"]>;
2753
- /** Deprecated */
2754
- bmsConsumption?: Maybe<Scalars["Float"]>;
2755
- };
2756
-
2757
- export type RequestEvBatteryInput = {
2758
- /** Usable capacity of a battery used to compute a route. If this in not filled in, we assume it is the same value as the car batteryUsableKwh. */
2759
- capacity?: Maybe<RequestEvBatteryInputValue>;
2760
- /** Current amount of energy in a battery. If this is not filled in, we assume the battery is full and we fill it in with car batteryUsableKwh. */
2761
- stateOfCharge?: Maybe<RequestEvBatteryInputValue>;
2762
- /** Desired final amount of energy in a battery. If this is not filled in, we assume it is 20% of the car batteryUsableKwh. */
2763
- finalStateOfCharge?: Maybe<RequestEvBatteryInputValue>;
2764
- };
2765
-
2766
- export type RequestEvBatteryInputValue = {
2767
- /** Value of a desired final amount of energy in a battery */
2768
- value: Scalars["Float"];
2769
- /** Type of a desired final amount of energy in a battery */
2770
- type: BatteryInputType;
2771
- };
2772
-
2773
- export type RequestEvPlugInput = {
2774
- /** Type of a plug */
2775
- standard: OCPIConnectorType;
2776
- /** Maximum charging speed for this plug */
2777
- chargingPower: Scalars["Float"];
2953
+ /** Filter which can be applied to retrieve the station list action */
2954
+ export type StationListQuery = {
2955
+ /** ID of the station */
2956
+ id?: Maybe<Scalars["ID"]>;
2957
+ /** External ID of the station provided by the station data source */
2958
+ external_id?: Maybe<Scalars["String"]>;
2959
+ /** Exact name */
2960
+ name?: Maybe<Scalars["String"]>;
2778
2961
  };
2779
2962
 
2780
- export type RequestEvConsumptionInput = {
2781
- /** Consumption, in kWh, of the auxiliaries */
2782
- aux?: Maybe<CarConsumptionInput>;
2783
- /** Cnsumption, in kWh, of the battery management system */
2784
- bms?: Maybe<CarConsumptionInput>;
2785
- /** Consumption, in kWh, of the car in idle mode */
2786
- idle?: Maybe<CarConsumptionInput>;
2963
+ /** Station availability for each weekday and hour */
2964
+ export type StationPredictedAvailability = {
2965
+ /** Number of weekday from 1 (monday) to 7 (sunday) */
2966
+ weekday?: Maybe<Scalars["Int"]>;
2967
+ /** The prediction for each hour 0-23 from 1 to 5 (1 - very busy ... 5 very quiet (free)) */
2968
+ prediction?: Maybe<Array<Maybe<Scalars["Int"]>>>;
2787
2969
  };
2788
2970
 
2789
- /** The consumption of the car */
2790
- export type CarConsumptionInput = {
2791
- /** Worst conditions are based on -10°C and use of heating */
2792
- worst?: Maybe<Scalars["Float"]>;
2793
- /** Best conditions are based on 23°C and no use of A/C */
2794
- best?: Maybe<Scalars["Float"]>;
2971
+ /** Station occupancy for each weekday and hour */
2972
+ export type StationPredictedOccupancy = {
2973
+ /** Number of weekday from 1 (monday) to 7 (sunday) */
2974
+ weekday?: Maybe<Scalars["Int"]>;
2975
+ /** Occupancy on a scale from 1 to 10, where 1 means free for charging and 10 means fully occupied */
2976
+ occupancy?: Maybe<Scalars["Int"]>;
2977
+ /** Start of the period of the occupancy prediction (string of 'hh-mmZ' format) */
2978
+ period_begin?: Maybe<Scalars["String"]>;
2979
+ /** End of the period of the occupancy prediction (string of 'hh-mmZ' format) */
2980
+ period_end?: Maybe<Scalars["String"]>;
2795
2981
  };
2796
2982
 
2797
- export type RequestRouteInput = {
2798
- /** A list of desired amenities near the stations, with a 1 km radius */
2799
- amenities?: Maybe<Array<Maybe<Scalars["String"]>>>;
2800
- /** A list of requested operators */
2801
- operatorIds?: Maybe<Array<Maybe<Scalars["String"]>>>;
2802
- /** Flag which indicates if the operators are required */
2803
- operatorRequired?: Maybe<Scalars["Boolean"]>;
2804
- /** Flag which indicates if the preferred operators should be loaded */
2805
- operatorPrefer?: Maybe<Scalars["Boolean"]>;
2806
- /** Optional flag to specify the season */
2807
- season?: Maybe<RouteSeason>;
2808
- /** Percentage for a minimum limit of a battery capacity before a recharge. The value should be between 0 and 60, with a default of 10% */
2809
- safeRiskMargin?: Maybe<Scalars["Int"]>;
2810
- /** Origin of a route */
2811
- origin: FeaturePointInput;
2812
- /** Destination of a route */
2813
- destination: FeaturePointInput;
2814
- /** An optional list of locations where we should stop */
2815
- via?: Maybe<Array<Maybe<FeaturePointInput>>>;
2816
- /** Alternative stations along a route within a specified radius in meters (minimum 500, maximum 5000) */
2817
- stationsAlongRouteRadius?: Maybe<Scalars["Int"]>;
2818
- /** Flag indicating wether the turn-by-turn navigation instructions should be prepared. Disclaimer: The functionality is under active development and the final API is a subject to change. Not ready for production */
2819
- instructions?: Maybe<Scalars["Boolean"]>;
2820
- };
2983
+ /** The station speed type */
2984
+ export enum StationSpeedType {
2985
+ /** Slow charging (below 43 kWh) */
2986
+ SLOW = "slow",
2987
+ /** Fast charging stations (above 43 kWh and below 150 kWh) */
2988
+ FAST = "fast",
2989
+ /** Ultra fast charging stations (above 150 kWh) */
2990
+ TURBO = "turbo"
2991
+ }
2821
2992
 
2822
- /** A GeoJSON Feature<Point> input */
2823
- export type FeaturePointInput = {
2824
- /** The feature ID */
2825
- id?: Maybe<Scalars["String"]>;
2826
- /** Feature type */
2827
- type: FeatureType;
2828
- /** Geometry of the feature */
2829
- geometry: PointInput;
2830
- /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
2831
- properties?: Maybe<Scalars["JSON"]>;
2993
+ /** The station stats model */
2994
+ export type StationStats = {
2995
+ /** Stations count grouped by standards */
2996
+ standards?: Maybe<Array<Maybe<StandardStats>>>;
2997
+ /** Stations count grouped by power */
2998
+ power?: Maybe<Array<Maybe<PowerStats>>>;
2999
+ /** Stations count grouped by amenities */
3000
+ amenities?: Maybe<Array<Maybe<AmenityStats>>>;
2832
3001
  };
2833
3002
 
2834
3003
  export type Subscription = {
@@ -2905,69 +3074,3 @@ export type SubscriptionstationUpdatedByIdArgs = {
2905
3074
  export type SubscriptionstationDeletedByIdArgs = {
2906
3075
  id: Scalars["ID"];
2907
3076
  };
2908
-
2909
- /** When uploading images to a car, you can select one of this types. The rest of the types are automatically generated by the system */
2910
- export enum CarImageTypeUploadable {
2911
- /** Full size image with a resolution at least 1536x864 px */
2912
- IMAGE = "image"
2913
- }
2914
-
2915
- /** Status of a car */
2916
- export enum CarStatus {
2917
- /** Was just imported */
2918
- NEW = "new",
2919
- /** Is being reviewed by a human operator */
2920
- REVIEW = "review",
2921
- /** Is public and can be used by a customer */
2922
- PUBLIC = "public",
2923
- /** Is removed and can not be used */
2924
- REMOVED = "removed"
2925
- }
2926
-
2927
- export type CarMakerImage = {
2928
- /** The full path URL of the large image */
2929
- url?: Maybe<Scalars["String"]>;
2930
- /** The height of the large image */
2931
- height?: Maybe<Scalars["Int"]>;
2932
- /** The width of the large image */
2933
- width?: Maybe<Scalars["Int"]>;
2934
- /** The full path URL of the thumbnail image */
2935
- thumbnail_url?: Maybe<Scalars["String"]>;
2936
- /** The height of the thumbnail image */
2937
- thumbnail_height?: Maybe<Scalars["Int"]>;
2938
- /** The width of the thumbnail image */
2939
- thumbnail_width?: Maybe<Scalars["Int"]>;
2940
- };
2941
-
2942
- export type CarMaker = {
2943
- /** The name of the car maker */
2944
- maker?: Maybe<Scalars["String"]>;
2945
- /** The media image of the car maker */
2946
- image?: Maybe<CarMakerImage>;
2947
- };
2948
-
2949
- /** The price model */
2950
- export type Price = {
2951
- /** The value of the price */
2952
- value?: Maybe<Scalars["String"]>;
2953
- /** The currency of the price */
2954
- currency?: Maybe<Scalars["String"]>;
2955
- /** The pricing model */
2956
- model?: Maybe<Scalars["String"]>;
2957
- /** The value of the price which should be deplay by the frontend */
2958
- displayValue?: Maybe<Scalars["String"]>;
2959
- };
2960
-
2961
- /** Form input for edit an existing review */
2962
- export type ReviewEdit = {
2963
- /** Rating of a review */
2964
- rating: Scalars["Int"];
2965
- /** Review message */
2966
- message?: Maybe<Scalars["String"]>;
2967
- /** Locale of a message */
2968
- locale?: Maybe<Scalars["String"]>;
2969
- /** Optional object where you can store custom data you need in your application. This extends the current functionalities we offer */
2970
- properties?: Maybe<Scalars["JSON"]>;
2971
- /** Boolean tags for a station review */
2972
- tags?: Maybe<ReviewTagsInput>;
2973
- };