@motis-project/motis-client 2.1.2 → 2.7.2

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.
@@ -19,6 +19,7 @@ var TimeRangeSchema = {
19
19
  The interval is considered active at time t if t is greater than or equal to the start time and less than the end time.
20
20
  `,
21
21
  type: "object",
22
+ required: ["start", "end"],
22
23
  properties: {
23
24
  start: {
24
25
  description: `If missing, the interval starts at minus infinity.
@@ -185,6 +186,44 @@ var LocationTypeSchema = {
185
186
  type: "string",
186
187
  enum: ["ADDRESS", "PLACE", "STOP"]
187
188
  };
189
+ var ModeSchema = {
190
+ description: `# Street modes
191
+
192
+ - \`WALK\`
193
+ - \`BIKE\`
194
+ - \`RENTAL\` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs.
195
+ - \`CAR\`
196
+ - \`CAR_PARKING\` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs.
197
+ - \`CAR_DROPOFF\` Experimental. Expect unannounced breaking changes (without version bumps) for all perameters and returned structs.
198
+ - \`ODM\` on-demand taxis from the Prima+\xD6V Project
199
+ - \`RIDE_SHARING\` ride sharing from the Prima+\xD6V Project
200
+ - \`FLEX\` flexible transports
201
+
202
+ # Transit modes
203
+
204
+ - \`TRANSIT\`: translates to \`RAIL,TRAM,BUS,FERRY,AIRPLANE,COACH,CABLE_CAR,FUNICULAR,AREAL_LIFT,OTHER\`
205
+ - \`TRAM\`: trams
206
+ - \`SUBWAY\`: subway trains (Paris Metro, London Underground, but also NYC Subway, Hamburger Hochbahn, and other non-underground services)
207
+ - \`FERRY\`: ferries
208
+ - \`AIRPLANE\`: airline flights
209
+ - \`BUS\`: short distance buses (does not include \`COACH\`)
210
+ - \`COACH\`: long distance buses (does not include \`BUS\`)
211
+ - \`RAIL\`: translates to \`HIGHSPEED_RAIL,LONG_DISTANCE,NIGHT_RAIL,REGIONAL_RAIL,REGIONAL_FAST_RAIL,SUBURBAN,SUBWAY\`
212
+ - \`SUBURBAN\`: suburban trains (e.g. S-Bahn, RER, Elizabeth Line, ...)
213
+ - \`HIGHSPEED_RAIL\`: long distance high speed trains (e.g. TGV)
214
+ - \`LONG_DISTANCE\`: long distance inter city trains
215
+ - \`NIGHT_RAIL\`: long distance night trains
216
+ - \`REGIONAL_FAST_RAIL\`: regional express routes that skip low traffic stops to be faster
217
+ - \`REGIONAL_RAIL\`: regional train
218
+ - \`CABLE_CAR\`: Cable tram. Used for street-level rail cars where the cable runs beneath the vehicle (e.g., cable car in San Francisco).
219
+ - \`FUNICULAR\`: Funicular. Any rail system designed for steep inclines.
220
+ - \`AERIAL_LIFT\`: Aerial lift, suspended cable car (e.g., gondola lift, aerial tramway). Cable transport where cabins, cars, gondolas or open chairs are suspended by means of one or more cables.
221
+ - \`AREAL_LIFT\`: deprecated
222
+ - \`METRO\`: deprecated
223
+ `,
224
+ type: "string",
225
+ enum: ["WALK", "BIKE", "RENTAL", "CAR", "CAR_PARKING", "CAR_DROPOFF", "ODM", "RIDE_SHARING", "FLEX", "TRANSIT", "TRAM", "SUBWAY", "FERRY", "AIRPLANE", "SUBURBAN", "BUS", "COACH", "RAIL", "HIGHSPEED_RAIL", "LONG_DISTANCE", "NIGHT_RAIL", "REGIONAL_FAST_RAIL", "REGIONAL_RAIL", "CABLE_CAR", "FUNICULAR", "AERIAL_LIFT", "OTHER", "AREAL_LIFT", "METRO"]
226
+ };
188
227
  var MatchSchema = {
189
228
  description: "GeoCoding match",
190
229
  type: "object",
@@ -193,6 +232,14 @@ var MatchSchema = {
193
232
  type: {
194
233
  "$ref": "#/components/schemas/LocationType"
195
234
  },
235
+ category: {
236
+ description: `Experimental. Type categories might be adjusted.
237
+
238
+ For OSM stop locations: the amenity type based on
239
+ https://wiki.openstreetmap.org/wiki/OpenStreetMap_Carto/Symbols
240
+ `,
241
+ type: "string"
242
+ },
196
243
  tokens: {
197
244
  description: "list of non-overlapping tokens that were matched",
198
245
  type: "array",
@@ -230,10 +277,18 @@ var MatchSchema = {
230
277
  description: "house number",
231
278
  type: "string"
232
279
  },
280
+ country: {
281
+ description: "ISO3166-1 country code from OpenStreetMap",
282
+ type: "string"
283
+ },
233
284
  zip: {
234
285
  description: "zip code",
235
286
  type: "string"
236
287
  },
288
+ tz: {
289
+ description: 'timezone name (e.g. "Europe/Berlin")',
290
+ type: "string"
291
+ },
237
292
  areas: {
238
293
  description: "list of areas",
239
294
  type: "array",
@@ -244,6 +299,17 @@ var MatchSchema = {
244
299
  score: {
245
300
  description: "score according to the internal scoring system (the scoring algorithm might change in the future)",
246
301
  type: "number"
302
+ },
303
+ modes: {
304
+ description: "available transport modes for stops",
305
+ type: "array",
306
+ items: {
307
+ "$ref": "#/components/schemas/Mode"
308
+ }
309
+ },
310
+ importance: {
311
+ description: "importance of a stop, normalized from [0, 1]",
312
+ type: "number"
247
313
  }
248
314
  }
249
315
  };
@@ -263,40 +329,13 @@ var PedestrianProfileSchema = {
263
329
  type: "string",
264
330
  enum: ["FOOT", "WHEELCHAIR"]
265
331
  };
266
- var ModeSchema = {
267
- description: `# Street modes
268
-
269
- - \`WALK\`
270
- - \`BIKE\`
271
- - \`RENTAL\` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs.
272
- - \`CAR\`
273
- - \`CAR_PARKING\` Experimental. Expect unannounced breaking changes (without version bumps) for all parameters and returned structs.
274
- - \`CAR_DROPOFF\` Experimental. Expect unannounced breaking changes (without version bumps) for all perameters and returned structs.
275
- - \`ODM\` on-demand taxis from the Prima+\xD6V Project
276
- - \`FLEX\` flexible transports
277
-
278
- # Transit modes
279
-
280
- - \`TRANSIT\`: translates to \`RAIL,TRAM,BUS,FERRY,AIRPLANE,COACH,CABLE_CAR,FUNICULAR,AREAL_LIFT,OTHER\`
281
- - \`TRAM\`: trams
282
- - \`SUBWAY\`: subway trains
283
- - \`FERRY\`: ferries
284
- - \`AIRPLANE\`: airline flights
285
- - \`BUS\`: short distance buses (does not include \`COACH\`)
286
- - \`COACH\`: long distance buses (does not include \`BUS\`)
287
- - \`RAIL\`: translates to \`HIGHSPEED_RAIL,LONG_DISTANCE,NIGHT_RAIL,REGIONAL_RAIL,REGIONAL_FAST_RAIL,METRO,SUBWAY\`
288
- - \`METRO\`: metro trains
289
- - \`HIGHSPEED_RAIL\`: long distance high speed trains (e.g. TGV)
290
- - \`LONG_DISTANCE\`: long distance inter city trains
291
- - \`NIGHT_RAIL\`: long distance night trains
292
- - \`REGIONAL_FAST_RAIL\`: regional express routes that skip low traffic stops to be faster
293
- - \`REGIONAL_RAIL\`: regional train
294
- - \`CABLE_CAR\`: Cable tram. Used for street-level rail cars where the cable runs beneath the vehicle (e.g., cable car in San Francisco).
295
- - \`FUNICULAR\`: Funicular. Any rail system designed for steep inclines.
296
- - \`AREAL_LIFT\`: Aerial lift, suspended cable car (e.g., gondola lift, aerial tramway). Cable transport where cabins, cars, gondolas or open chairs are suspended by means of one or more cables.
297
- `,
298
- type: "string",
299
- enum: ["WALK", "BIKE", "RENTAL", "CAR", "CAR_PARKING", "CAR_DROPOFF", "ODM", "FLEX", "TRANSIT", "TRAM", "SUBWAY", "FERRY", "AIRPLANE", "METRO", "BUS", "COACH", "RAIL", "HIGHSPEED_RAIL", "LONG_DISTANCE", "NIGHT_RAIL", "REGIONAL_FAST_RAIL", "REGIONAL_RAIL", "CABLE_CAR", "FUNICULAR", "AREAL_LIFT", "OTHER"]
332
+ var PedestrianSpeedSchema = {
333
+ description: "Average speed for pedestrian routing in meters per second",
334
+ type: "number"
335
+ };
336
+ var CyclingSpeedSchema = {
337
+ description: "Average speed for bike routing in meters per second",
338
+ type: "number"
300
339
  };
301
340
  var VertexTypeSchema = {
302
341
  type: "string",
@@ -325,6 +364,10 @@ var PlaceSchema = {
325
364
  description: "The ID of the stop. This is often something that users don't care about.",
326
365
  type: "string"
327
366
  },
367
+ importance: {
368
+ description: "The importance of the stop between 0-1.",
369
+ type: "number"
370
+ },
328
371
  lat: {
329
372
  description: "latitude",
330
373
  type: "number"
@@ -337,6 +380,10 @@ var PlaceSchema = {
337
380
  description: "level according to OpenStreetMap",
338
381
  type: "number"
339
382
  },
383
+ tz: {
384
+ description: 'timezone name (e.g. "Europe/Berlin")',
385
+ type: "string"
386
+ },
340
387
  arrival: {
341
388
  description: "arrival time",
342
389
  type: "string",
@@ -459,7 +506,7 @@ var ReachableSchema = {
459
506
  var StopTimeSchema = {
460
507
  description: "departure or arrival event at a stop",
461
508
  type: "object",
462
- required: ["place", "mode", "realTime", "headsign", "agencyId", "agencyName", "agencyUrl", "tripId", "routeShortName", "pickupDropoffType", "cancelled", "tripCancelled", "source"],
509
+ required: ["place", "mode", "realTime", "headsign", "tripTo", "agencyId", "agencyName", "agencyUrl", "tripId", "routeShortName", "routeLongName", "tripShortName", "displayName", "pickupDropoffType", "cancelled", "tripCancelled", "source"],
463
510
  properties: {
464
511
  place: {
465
512
  "$ref": "#/components/schemas/Place",
@@ -474,11 +521,15 @@ var StopTimeSchema = {
474
521
  type: "boolean"
475
522
  },
476
523
  headsign: {
477
- description: `For transit legs, the headsign of the bus or train being used.
524
+ description: `The headsign of the bus or train being used.
478
525
  For non-transit legs, null
479
526
  `,
480
527
  type: "string"
481
528
  },
529
+ tripTo: {
530
+ description: "final stop of this trip",
531
+ "$ref": "#/components/schemas/Place"
532
+ },
482
533
  agencyId: {
483
534
  type: "string"
484
535
  },
@@ -497,9 +548,41 @@ For non-transit legs, null
497
548
  tripId: {
498
549
  type: "string"
499
550
  },
551
+ routeType: {
552
+ type: "integer"
553
+ },
500
554
  routeShortName: {
501
555
  type: "string"
502
556
  },
557
+ routeLongName: {
558
+ type: "string"
559
+ },
560
+ tripShortName: {
561
+ type: "string"
562
+ },
563
+ displayName: {
564
+ type: "string"
565
+ },
566
+ previousStops: {
567
+ type: "array",
568
+ description: `Experimental. Expect unannounced breaking changes (without version bumps).
569
+
570
+ Stops on the trips before this stop. Returned only if \`fetchStop\` and \`arriveBy\` are \`true\`.
571
+ `,
572
+ items: {
573
+ "$ref": "#/components/schemas/Place"
574
+ }
575
+ },
576
+ nextStops: {
577
+ type: "array",
578
+ description: `Experimental. Expect unannounced breaking changes (without version bumps).
579
+
580
+ Stops on the trips after this stop. Returned only if \`fetchStop\` is \`true\` and \`arriveBy\` is \`false\`.
581
+ `,
582
+ items: {
583
+ "$ref": "#/components/schemas/Place"
584
+ }
585
+ },
503
586
  pickupDropoffType: {
504
587
  description: "Type of pickup (for departures) or dropoff (for arrivals), may be disallowed either due to schedule, skipped stops or cancellations",
505
588
  "$ref": "#/components/schemas/PickupDropoffType"
@@ -521,14 +604,18 @@ For non-transit legs, null
521
604
  var TripInfoSchema = {
522
605
  description: "trip id and name",
523
606
  type: "object",
524
- required: ["tripId", "routeShortName"],
607
+ required: ["tripId"],
525
608
  properties: {
526
609
  tripId: {
527
610
  description: "trip ID (dataset trip id prefixed with the dataset tag)",
528
611
  type: "string"
529
612
  },
530
613
  routeShortName: {
531
- description: "trip display name",
614
+ description: "trip display name (api version < 4)",
615
+ type: "string"
616
+ },
617
+ displayName: {
618
+ description: "trip display name (api version >= 4)",
532
619
  type: "string"
533
620
  }
534
621
  }
@@ -700,8 +787,16 @@ var RentalReturnConstraintSchema = {
700
787
  var RentalSchema = {
701
788
  description: "Vehicle rental",
702
789
  type: "object",
703
- required: ["systemId"],
790
+ required: ["providerId", "providerGroupId", "systemId"],
704
791
  properties: {
792
+ providerId: {
793
+ type: "string",
794
+ description: "Rental provider ID"
795
+ },
796
+ providerGroupId: {
797
+ type: "string",
798
+ description: "Rental provider group ID"
799
+ },
705
800
  systemId: {
706
801
  type: "string",
707
802
  description: "Vehicle share system ID"
@@ -714,6 +809,12 @@ var RentalSchema = {
714
809
  type: "string",
715
810
  description: "URL of the vehicle share system"
716
811
  },
812
+ color: {
813
+ type: "string",
814
+ description: `Color associated with this provider, in hexadecimal RGB format
815
+ (e.g. "#FF0000" for red). Can be empty.
816
+ `
817
+ },
717
818
  stationName: {
718
819
  type: "string",
719
820
  description: "Name of the station"
@@ -749,6 +850,389 @@ var RentalSchema = {
749
850
  }
750
851
  }
751
852
  };
853
+ var MultiPolygonSchema = {
854
+ type: "array",
855
+ description: `A multi-polygon contains a number of polygons, each containing a number
856
+ of rings, which are encoded as polylines (with precision 6).
857
+
858
+ For each polygon, the first ring is the outer ring, all subsequent rings
859
+ are inner rings (holes).
860
+ `,
861
+ items: {
862
+ type: "array",
863
+ items: {
864
+ "$ref": "#/components/schemas/EncodedPolyline"
865
+ }
866
+ }
867
+ };
868
+ var RentalZoneRestrictionsSchema = {
869
+ type: "object",
870
+ required: ["vehicleTypeIdxs", "rideStartAllowed", "rideEndAllowed", "rideThroughAllowed"],
871
+ properties: {
872
+ vehicleTypeIdxs: {
873
+ type: "array",
874
+ description: `List of vehicle types (as indices into the provider's vehicle types
875
+ array) to which these restrictions apply.
876
+ If empty, the restrictions apply to all vehicle types of the provider.
877
+ `,
878
+ items: {
879
+ type: "integer"
880
+ }
881
+ },
882
+ rideStartAllowed: {
883
+ type: "boolean",
884
+ description: "whether the ride is allowed to start in this zone"
885
+ },
886
+ rideEndAllowed: {
887
+ type: "boolean",
888
+ description: "whether the ride is allowed to end in this zone"
889
+ },
890
+ rideThroughAllowed: {
891
+ type: "boolean",
892
+ description: "whether the ride is allowed to pass through this zone"
893
+ },
894
+ stationParking: {
895
+ type: "boolean",
896
+ description: "whether vehicles can only be parked at stations in this zone"
897
+ }
898
+ }
899
+ };
900
+ var RentalVehicleTypeSchema = {
901
+ type: "object",
902
+ required: ["id", "formFactor", "propulsionType", "returnConstraint", "returnConstraintGuessed"],
903
+ properties: {
904
+ id: {
905
+ type: "string",
906
+ description: "Unique identifier of the vehicle type (unique within the provider)"
907
+ },
908
+ name: {
909
+ type: "string",
910
+ description: "Public name of the vehicle type (can be empty)"
911
+ },
912
+ formFactor: {
913
+ "$ref": "#/components/schemas/RentalFormFactor"
914
+ },
915
+ propulsionType: {
916
+ "$ref": "#/components/schemas/RentalPropulsionType"
917
+ },
918
+ returnConstraint: {
919
+ "$ref": "#/components/schemas/RentalReturnConstraint"
920
+ },
921
+ returnConstraintGuessed: {
922
+ type: "boolean",
923
+ description: "Whether the return constraint was guessed instead of being specified by the rental provider"
924
+ }
925
+ }
926
+ };
927
+ var RentalProviderSchema = {
928
+ type: "object",
929
+ required: ["id", "name", "groupId", "bbox", "vehicleTypes", "formFactors", "defaultRestrictions", "globalGeofencingRules"],
930
+ properties: {
931
+ id: {
932
+ type: "string",
933
+ description: "Unique identifier of the rental provider"
934
+ },
935
+ name: {
936
+ type: "string",
937
+ description: "Name of the provider to be displayed to customers"
938
+ },
939
+ groupId: {
940
+ type: "string",
941
+ description: "Id of the rental provider group this provider belongs to"
942
+ },
943
+ operator: {
944
+ type: "string",
945
+ description: "Name of the system operator"
946
+ },
947
+ url: {
948
+ type: "string",
949
+ description: "URL of the vehicle share system"
950
+ },
951
+ purchaseUrl: {
952
+ type: "string",
953
+ description: "URL where a customer can purchase a membership"
954
+ },
955
+ color: {
956
+ type: "string",
957
+ description: `Color associated with this provider, in hexadecimal RGB format
958
+ (e.g. "#FF0000" for red). Can be empty.
959
+ `
960
+ },
961
+ bbox: {
962
+ type: "array",
963
+ description: `Bounding box of the area covered by this rental provider,
964
+ [west, south, east, north] as [lon, lat, lon, lat]
965
+ `,
966
+ minItems: 4,
967
+ maxItems: 4,
968
+ items: {
969
+ type: "number"
970
+ }
971
+ },
972
+ vehicleTypes: {
973
+ type: "array",
974
+ items: {
975
+ "$ref": "#/components/schemas/RentalVehicleType"
976
+ }
977
+ },
978
+ formFactors: {
979
+ type: "array",
980
+ description: "List of form factors offered by this provider",
981
+ items: {
982
+ "$ref": "#/components/schemas/RentalFormFactor"
983
+ }
984
+ },
985
+ defaultRestrictions: {
986
+ "$ref": "#/components/schemas/RentalZoneRestrictions"
987
+ },
988
+ globalGeofencingRules: {
989
+ type: "array",
990
+ items: {
991
+ "$ref": "#/components/schemas/RentalZoneRestrictions"
992
+ }
993
+ }
994
+ }
995
+ };
996
+ var RentalProviderGroupSchema = {
997
+ type: "object",
998
+ required: ["id", "name", "providers", "formFactors"],
999
+ properties: {
1000
+ id: {
1001
+ type: "string",
1002
+ description: "Unique identifier of the rental provider group"
1003
+ },
1004
+ name: {
1005
+ type: "string",
1006
+ description: "Name of the provider group to be displayed to customers"
1007
+ },
1008
+ color: {
1009
+ type: "string",
1010
+ description: `Color associated with this provider group, in hexadecimal RGB format
1011
+ (e.g. "#FF0000" for red). Can be empty.
1012
+ `
1013
+ },
1014
+ providers: {
1015
+ type: "array",
1016
+ description: "List of rental provider IDs that belong to this group",
1017
+ items: {
1018
+ type: "string"
1019
+ }
1020
+ },
1021
+ formFactors: {
1022
+ type: "array",
1023
+ description: "List of form factors offered by this provider group",
1024
+ items: {
1025
+ "$ref": "#/components/schemas/RentalFormFactor"
1026
+ }
1027
+ }
1028
+ }
1029
+ };
1030
+ var RentalStationSchema = {
1031
+ type: "object",
1032
+ required: ["id", "providerId", "providerGroupId", "name", "lat", "lon", "isRenting", "isReturning", "numVehiclesAvailable", "formFactors", "vehicleTypesAvailable", "vehicleDocksAvailable", "bbox"],
1033
+ properties: {
1034
+ id: {
1035
+ type: "string",
1036
+ description: "Unique identifier of the rental station"
1037
+ },
1038
+ providerId: {
1039
+ type: "string",
1040
+ description: "Unique identifier of the rental provider"
1041
+ },
1042
+ providerGroupId: {
1043
+ type: "string",
1044
+ description: "Unique identifier of the rental provider group"
1045
+ },
1046
+ name: {
1047
+ type: "string",
1048
+ description: "Public name of the station"
1049
+ },
1050
+ lat: {
1051
+ description: "latitude",
1052
+ type: "number"
1053
+ },
1054
+ lon: {
1055
+ description: "longitude",
1056
+ type: "number"
1057
+ },
1058
+ address: {
1059
+ type: "string",
1060
+ description: "Address where the station is located"
1061
+ },
1062
+ crossStreet: {
1063
+ type: "string",
1064
+ description: "Cross street or landmark where the station is located"
1065
+ },
1066
+ rentalUriAndroid: {
1067
+ type: "string",
1068
+ description: "Rental URI for Android (deep link to the specific station)"
1069
+ },
1070
+ rentalUriIOS: {
1071
+ type: "string",
1072
+ description: "Rental URI for iOS (deep link to the specific station)"
1073
+ },
1074
+ rentalUriWeb: {
1075
+ type: "string",
1076
+ description: "Rental URI for web (deep link to the specific station)"
1077
+ },
1078
+ isRenting: {
1079
+ type: "boolean",
1080
+ description: "true if vehicles can be rented from this station, false if it is temporarily out of service"
1081
+ },
1082
+ isReturning: {
1083
+ type: "boolean",
1084
+ description: "true if vehicles can be returned to this station, false if it is temporarily out of service"
1085
+ },
1086
+ numVehiclesAvailable: {
1087
+ type: "integer",
1088
+ description: "Number of vehicles available for rental at this station"
1089
+ },
1090
+ formFactors: {
1091
+ type: "array",
1092
+ description: "List of form factors available for rental and/or return at this station",
1093
+ items: {
1094
+ "$ref": "#/components/schemas/RentalFormFactor"
1095
+ }
1096
+ },
1097
+ vehicleTypesAvailable: {
1098
+ type: "object",
1099
+ description: "List of vehicle types currently available at this station (vehicle type ID -> count)",
1100
+ additionalProperties: {
1101
+ type: "integer"
1102
+ }
1103
+ },
1104
+ vehicleDocksAvailable: {
1105
+ type: "object",
1106
+ description: "List of vehicle docks currently available at this station (vehicle type ID -> count)",
1107
+ additionalProperties: {
1108
+ type: "integer"
1109
+ }
1110
+ },
1111
+ stationArea: {
1112
+ "$ref": "#/components/schemas/MultiPolygon"
1113
+ },
1114
+ bbox: {
1115
+ type: "array",
1116
+ description: `Bounding box of the area covered by this station,
1117
+ [west, south, east, north] as [lon, lat, lon, lat]
1118
+ `,
1119
+ minItems: 4,
1120
+ maxItems: 4,
1121
+ items: {
1122
+ type: "number"
1123
+ }
1124
+ }
1125
+ }
1126
+ };
1127
+ var RentalVehicleSchema = {
1128
+ type: "object",
1129
+ required: ["id", "providerId", "providerGroupId", "typeId", "lat", "lon", "formFactor", "propulsionType", "returnConstraint", "isReserved", "isDisabled"],
1130
+ properties: {
1131
+ id: {
1132
+ type: "string",
1133
+ description: "Unique identifier of the rental vehicle"
1134
+ },
1135
+ providerId: {
1136
+ type: "string",
1137
+ description: "Unique identifier of the rental provider"
1138
+ },
1139
+ providerGroupId: {
1140
+ type: "string",
1141
+ description: "Unique identifier of the rental provider group"
1142
+ },
1143
+ typeId: {
1144
+ type: "string",
1145
+ description: "Vehicle type ID (unique within the provider)"
1146
+ },
1147
+ lat: {
1148
+ description: "latitude",
1149
+ type: "number"
1150
+ },
1151
+ lon: {
1152
+ description: "longitude",
1153
+ type: "number"
1154
+ },
1155
+ formFactor: {
1156
+ "$ref": "#/components/schemas/RentalFormFactor"
1157
+ },
1158
+ propulsionType: {
1159
+ "$ref": "#/components/schemas/RentalPropulsionType"
1160
+ },
1161
+ returnConstraint: {
1162
+ "$ref": "#/components/schemas/RentalReturnConstraint"
1163
+ },
1164
+ stationId: {
1165
+ type: "string",
1166
+ description: "Station ID if the vehicle is currently at a station"
1167
+ },
1168
+ homeStationId: {
1169
+ type: "string",
1170
+ description: "Station ID where the vehicle must be returned, if applicable"
1171
+ },
1172
+ isReserved: {
1173
+ type: "boolean",
1174
+ description: "true if the vehicle is currently reserved by a customer, false otherwise"
1175
+ },
1176
+ isDisabled: {
1177
+ type: "boolean",
1178
+ description: "true if the vehicle is out of service, false otherwise"
1179
+ },
1180
+ rentalUriAndroid: {
1181
+ type: "string",
1182
+ description: "Rental URI for Android (deep link to the specific vehicle)"
1183
+ },
1184
+ rentalUriIOS: {
1185
+ type: "string",
1186
+ description: "Rental URI for iOS (deep link to the specific vehicle)"
1187
+ },
1188
+ rentalUriWeb: {
1189
+ type: "string",
1190
+ description: "Rental URI for web (deep link to the specific vehicle)"
1191
+ }
1192
+ }
1193
+ };
1194
+ var RentalZoneSchema = {
1195
+ type: "object",
1196
+ required: ["providerId", "providerGroupId", "z", "bbox", "area", "rules"],
1197
+ properties: {
1198
+ providerId: {
1199
+ type: "string",
1200
+ description: "Unique identifier of the rental provider"
1201
+ },
1202
+ providerGroupId: {
1203
+ type: "string",
1204
+ description: "Unique identifier of the rental provider group"
1205
+ },
1206
+ name: {
1207
+ type: "string",
1208
+ description: "Public name of the geofencing zone"
1209
+ },
1210
+ z: {
1211
+ type: "integer",
1212
+ description: "Zone precedence / z-index (higher number = higher precedence)"
1213
+ },
1214
+ bbox: {
1215
+ type: "array",
1216
+ description: `Bounding box of the area covered by this zone,
1217
+ [west, south, east, north] as [lon, lat, lon, lat]
1218
+ `,
1219
+ minItems: 4,
1220
+ maxItems: 4,
1221
+ items: {
1222
+ type: "number"
1223
+ }
1224
+ },
1225
+ area: {
1226
+ "$ref": "#/components/schemas/MultiPolygon"
1227
+ },
1228
+ rules: {
1229
+ type: "array",
1230
+ items: {
1231
+ "$ref": "#/components/schemas/RentalZoneRestrictions"
1232
+ }
1233
+ }
1234
+ }
1235
+ };
752
1236
  var LegSchema = {
753
1237
  type: "object",
754
1238
  required: ["mode", "startTime", "endTime", "scheduledStartTime", "scheduledEndTime", "realTime", "scheduled", "duration", "from", "to", "legGeometry"],
@@ -823,6 +1307,10 @@ For non-transit legs, null
823
1307
  `,
824
1308
  type: "string"
825
1309
  },
1310
+ tripTo: {
1311
+ description: "final stop of this trip (can differ from headsign)",
1312
+ "$ref": "#/components/schemas/Place"
1313
+ },
826
1314
  routeColor: {
827
1315
  type: "string"
828
1316
  },
@@ -830,7 +1318,7 @@ For non-transit legs, null
830
1318
  type: "string"
831
1319
  },
832
1320
  routeType: {
833
- type: "string"
1321
+ type: "integer"
834
1322
  },
835
1323
  agencyName: {
836
1324
  type: "string"
@@ -847,6 +1335,15 @@ For non-transit legs, null
847
1335
  routeShortName: {
848
1336
  type: "string"
849
1337
  },
1338
+ routeLongName: {
1339
+ type: "string"
1340
+ },
1341
+ tripShortName: {
1342
+ type: "string"
1343
+ },
1344
+ displayName: {
1345
+ type: "string"
1346
+ },
850
1347
  cancelled: {
851
1348
  description: "Whether this trip is cancelled",
852
1349
  type: "boolean"
@@ -1119,6 +1616,14 @@ transfer duration in minutes for the car profile
1119
1616
  }
1120
1617
  }
1121
1618
  };
1619
+ var ErrorSchema = {
1620
+ type: "object",
1621
+ properties: {
1622
+ error: {
1623
+ type: "string"
1624
+ }
1625
+ }
1626
+ };
1122
1627
 
1123
1628
  export {
1124
1629
  AlertCauseSchema,
@@ -1130,10 +1635,12 @@ export {
1130
1635
  AreaSchema,
1131
1636
  TokenSchema,
1132
1637
  LocationTypeSchema,
1638
+ ModeSchema,
1133
1639
  MatchSchema,
1134
1640
  ElevationCostsSchema,
1135
1641
  PedestrianProfileSchema,
1136
- ModeSchema,
1642
+ PedestrianSpeedSchema,
1643
+ CyclingSpeedSchema,
1137
1644
  VertexTypeSchema,
1138
1645
  PickupDropoffTypeSchema,
1139
1646
  PlaceSchema,
@@ -1149,6 +1656,14 @@ export {
1149
1656
  RentalPropulsionTypeSchema,
1150
1657
  RentalReturnConstraintSchema,
1151
1658
  RentalSchema,
1659
+ MultiPolygonSchema,
1660
+ RentalZoneRestrictionsSchema,
1661
+ RentalVehicleTypeSchema,
1662
+ RentalProviderSchema,
1663
+ RentalProviderGroupSchema,
1664
+ RentalStationSchema,
1665
+ RentalVehicleSchema,
1666
+ RentalZoneSchema,
1152
1667
  LegSchema,
1153
1668
  RiderCategorySchema,
1154
1669
  FareMediaTypeSchema,
@@ -1157,5 +1672,6 @@ export {
1157
1672
  FareTransferRuleSchema,
1158
1673
  FareTransferSchema,
1159
1674
  ItinerarySchema,
1160
- TransferSchema
1675
+ TransferSchema,
1676
+ ErrorSchema
1161
1677
  };