You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|`vehicle_attributes`| Array of [vehicle attributes](/modes/#vehicle-attributes)| Vehicle attributes appropriate for the current mode |
114
+
|`vehicle_attributes`| Conditionally Required | Array of [vehicle attributes](/modes/#vehicle-attributes)| Vehicle attributes appropriate for the current [mode][modes]|
115
115
116
116
201 Success Response:
117
117
@@ -143,7 +143,7 @@ Body Params:
143
143
144
144
| Field | Type | Required/Optional | Field Description |
|`vehicle_state`| Enum | Required | see [Vehicle States][vehicle-states]|
183
+
|`event_types`| Enum[]| Required | see [Vehicle Events][vehicle-events]|
184
+
|`timestamp`|[timestamp][ts]| Required | Date of last event update|
185
+
|`telemetry`|[Telemetry](#telemetry-data)| Required | Single point of telemetry|
186
186
|`event_geographies`| UUID[]| Optional |**[Beta feature](/general-information.md#beta-features):***Yes (as of 1.1.0)*. Array of Geography UUIDs consisting of every Geography that contains the location of the event. See [Geography Driven Events][geography-driven-events]. Required if `telemetry` is not present. |
187
-
|`trip_id`| UUID | Optional | UUID provided by Operator to uniquely identify the trip. Required if `event_types` contains `trip_start`, `trip_end`, `trip_cancel`, `trip_enter_jurisdiction`, or `trip_leave_jurisdiction`|
187
+
|`trip_id`| UUID | Conditionally required | UUID provided by Operator to uniquely identify the trip. See `trip_id` requirements for each [mode][modes].|
188
188
189
189
201 Success Response:
190
190
@@ -323,6 +323,8 @@ Path Params:
323
323
324
324
If `stop_id` is specified, `GET` will return an array with a single stop record, otherwise it will be a list of all stop records.
325
325
326
+
[Top][toc]
327
+
326
328
## Reservation Type
327
329
328
330
The reservation type enum expresses the urgency of a given reservation. This can be useful when attempting to quantify metrics around trips: for example, computing passenger wait-time. In the `on_demand` case, passenger wait-time may be quantified by the delta between the `reservation_time`, and the pick-up time; however, in the `scheduled` case, the wait time may be quantified based on the delta between the `scheduled_trip_start_time` found in the Trips payload, and the actual `trip_start_time`.
@@ -332,6 +334,8 @@ The reservation type enum expresses the urgency of a given reservation. This can
332
334
|`on_demand`| The passenger requested the vehicle as soon as possible |
333
335
|`scheduled`| The passenger requested the vehicle for a scheduled time in the future |
334
336
337
+
[Top][toc]
338
+
335
339
## Reservation Method
336
340
337
341
The reservation method enum describes the different ways in which a passenger can create their reservation.
@@ -342,6 +346,8 @@ The reservation method enum describes the different ways in which a passenger ca
342
346
|`street_hail`| Reservation was made by the passenger hailing the vehicle |
343
347
|`phone_dispatch`| Reservation was made by calling the dispatch operator |
344
348
349
+
[Top][toc]
350
+
345
351
## Fare
346
352
347
353
The Fare object describes a fare for a Trip.
@@ -354,6 +360,8 @@ The Fare object describes a fare for a Trip.
Copy file name to clipboardExpand all lines: general-information.md
+59-43Lines changed: 59 additions & 43 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,34 +1,36 @@
1
1
# Mobility Data Specification: **General information**
2
2
3
-
This document contains specifications that are shared between the various MDS APIs such as [`agency`][agency], [`policy`][policy], [`provider`][provider], etc.
3
+
This document contains specifications that are shared between the various MDS [APIs and endpoints](/README.md#endpoints).
|`electric_assist`| Provides power only alongside human propulsion |
185
-
|`electric`| Contains throttle mode with a battery-powered motor |
186
-
|`combustion`| Contains throttle mode with a gas engine-powered motor |
187
-
188
-
A vehicle may have one or more values from the `propulsion`, depending on the number of modes of operation. For example, a scooter that can be powered by foot or by electric motor would have the `propulsion` represented by the array `['human', 'electric']`. A bicycle with pedal-assist would have the `propulsion` represented by the array `['human', 'electric_assist']` if it can also be operated as a traditional bicycle.
189
-
190
-
[Top][toc]
191
-
192
181
## Responses
193
182
194
183
***200:** OK: operation successful.
@@ -251,7 +240,6 @@ Stops describe vehicle trip start and end locations in a pre-designated physical
251
240
| devices | UUID[]| Optional | List of device_ids for vehicles which are currently at this stop |
252
241
| image_url | URL | Optional | Link to an image, photo, or diagram of the stop. Could be used by providers to help riders find or use the stop. |
253
242
254
-
255
243
### Stop Status
256
244
257
245
**Stop Status** returns information about the current status of a **[Stop](#stops)**.
@@ -272,6 +260,8 @@ Example of the **Stop Status** object with properties listed:
272
260
}
273
261
```
274
262
263
+
[Top][toc]
264
+
275
265
### GBFS Compatibility
276
266
277
267
Some of the fields in the `Stops` definition are using notions which are currently not in MDS, such as `rental_methods`. These fields are included for compatibility with GBFS.
@@ -294,13 +284,13 @@ MDS uses Version 1 UUIDs by default. Version 4 UUIDs may be used where noted.
294
284
295
285
## Vehicle States
296
286
297
-
See new location in[vehicle states](/modes/vehicle_states.md)within[modes](/modes#vehicle-states).
287
+
See new location within[vehicle states](/modes/vehicle_states.md)in[modes](/modes#vehicle-states).
298
288
299
289
[Top][toc]
300
290
301
291
### Event Types
302
292
303
-
See new location in[event types](/modes/event_types.md)within[modes](/modes#event-types).
293
+
See new location within[event types](/modes/event_types.md)in[modes](/modes#event-types).
304
294
305
295
[Top][toc]
306
296
@@ -316,7 +306,32 @@ See new location within [individual modes](/modes#list-of-supported-modes) in [m
316
306
317
307
[Top][toc]
318
308
319
-
## Vehicle Types
309
+
## Vehicle Characteristics
310
+
311
+
Properties and characteristics of vehicles and devices.
312
+
313
+
[Top][toc]
314
+
315
+
### Accessibility Options
316
+
317
+
See new location within [individual modes](/modes#list-of-supported-modes) in [modes](/modes#accessibility-options).
|`electric_assist`| Provides power only alongside human propulsion |
327
+
|`electric`| Contains throttle mode with a battery-powered motor |
328
+
|`combustion`| Contains throttle mode with a gas engine-powered motor |
329
+
330
+
A vehicle may have one or more values from the `propulsion`, depending on the number of modes of operation. For example, a scooter that can be powered by foot or by electric motor would have the `propulsion` represented by the array `['human', 'electric']`. A bicycle with pedal-assist would have the `propulsion` represented by the array `['human', 'electric_assist']` if it can also be operated as a traditional bicycle.
331
+
332
+
[Top][toc]
333
+
334
+
### Vehicle Types
320
335
321
336
The list of allowed `vehicle_type` values in MDS. Aligning with [GBFS vehicle types form factors](https://github.com/NABSA/gbfs/blob/master/gbfs.md#vehicle_typesjson-added-in-v21-rc).
322
337
@@ -364,6 +379,7 @@ If an unsupported or invalid version is requested, the API must respond with a s
The `mode` value is used to specify the applicable mobility category in MDS Policy, MDS Jurisdictions, and other parts of the spec. The only currently supported mode is `micromobility`, but others such as taxi and delivery robots are planned.
16
+
The `mode` value is used to specify the applicable mobility category in MDS Policy, MDS Jurisdictions, and many other parts of MDS.
17
17
18
18
A `mode` is defined as: A distinct regulatory framework for a type of mobility service, as distinguished by a combination of a) the data needed by regulators, b) the operating rules under which the service functions, c) the legal authority under which it is regulated, and the d) design and operating model of the service itself.
19
19
20
-
There will be some gray areas and some differences from one jurisdiction to another (e.g. taxis and ridehail may be regulated under the same rules on one place, but different rules in another). We do not need to pre-define a complete taxonomy of modes, or identify every modal boundary upfront, but would instead add modes on an as-needed basis, maintaining as much consistency of naming as possible.
20
+
There will be some gray areas and some differences from one jurisdiction to another (e.g. taxis and ridehail may be regulated under the same rules on one place, but different rules in another). MDS will not pre-define a complete taxonomy of modes, or identify every modal boundary upfront, but will instead add modes on an as-needed basis, maintaining as much consistency of naming as possible.
21
21
22
-
We should err on the side of treating highly similar services as one mode, but should consult with our members and community to inform each decision about how to integrate a new service and whether it needs to be designated as its own mode. This is a policy implementation question as much as it is a technical one.
22
+
We err on the side of treating highly similar services as one mode, but consult with our members and community to inform each decision about how to integrate a new service and whether it needs to be designated as its own mode. This is a policy implementation question as much as it is a technical one.
23
23
24
24
Each mode defined in MDS shall include key descriptive information, such as journey type (e.g. point-to-point, multi-segment, multi-segment overlapping), primary purpose (goods, single passenger, multi-passenger, etc.), and a description of the service being offered that aligns with terminology commonly understood by the public (e.g. “e-scooter” or “ridehailing”).
25
25
@@ -62,6 +62,10 @@ The `trip_attributes` array allows additional mode-specific information about th
62
62
63
63
The `vehicle_attributes` array returns a list of JSON-formatted key/value pairs which correspond to the allowed attributes and values for the operative mode. For each mode, the allowed attributes and corresponding values are defined in the [mode definition](#list-of-supported-modes).
64
64
65
+
### Accessibility Options
66
+
67
+
The `accessibility_options` array returns a list of JSON-formatted key/value pairs which correspond to the allowed accessibility attributes and values for the operative mode. For each mode, the allowed attributes and corresponding values are defined in the [mode definition](#list-of-supported-modes).
0 commit comments