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
The Agency API endpoints are intended to be implemented by regulatory agencies and consumed by mobility providers. Providers query the Agency API when events (such as a trip start or vehicle status change) occur in their systems.
5
+
The Agency API endpoints are intended to be implemented by regulatory agencies and consumed by mobility providers. Data is **pushed** to agencies by providers. Providers query the Agency API when events (such as a trip start or vehicle status change) occur in their systems.
6
6
7
7
This specification contains a collection of RESTful APIs used to specify the digital relationship between *mobility as a service* providers and the agencies that regulate them.
8
8
@@ -39,7 +39,7 @@ Versioning must be implemented as specified in the [Versioning section][versioni
39
39
40
40
### Modes
41
41
42
-
MDS is intended to be used for multiple transportation modes, including its original micromobility (e-scooters, bikes, etc.) as well as additional modes such as taxis and delivery bots. A given `provider_id` shall be associated with a single mobility [mode], so that the mode does not have to be specified in each data structure and API call. A provider implementing more than one mode shall [register](/README.md#providers-using-mds) a `provider_id` for each mode.
42
+
MDS is intended to be used for multiple transportation modes, including its original micromobility (e-scooters, bikes, etc.) as well as additional modes such as taxis and delivery bots. A given `provider_id` shall be associated with a single mobility [mode][modes], so that the mode does not have to be specified in each data structure and API call. A provider implementing more than one mode shall [register](/README.md#providers-using-mds) a `provider_id` for each mode.
Copy file name to clipboardExpand all lines: data-types.md
+7-3Lines changed: 7 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,9 @@
1
1
# Mobility Data Specification: **Data Types**
2
2
3
+
This MDS data types page catalogs the objects (fields, types, requirements, descriptions) used across MDS, particularly with the unified Provider and Agency endpoints.
4
+
5
+
## Table of Contents
6
+
3
7
-[Vehicles](#vehicles)
4
8
-[Vehicle Types](#vehicle-types)
5
9
-[Propulsion Types](#propulsion-types)
@@ -25,7 +29,7 @@ A vehicle record is as follows:
25
29
|`vehicle_type`| Enum | Required | The [vehicle type][vehicle-types]|
26
30
|`vehicle_attributes`| Array | Optional |**[Mode](/modes#list-of-supported-modes) Specific**. [Vehicle attributes](/modes#vehicle-attributes) given as mode-specific unordered key-value pairs |
|`accessibility_options`| Enum[]| Required |**[Mode](/modes#list-of-supported-modes) Specific**. [Accessibility options](/modes#accessibility-options) given as an array of enumerated values. List of any accessibility options available on the vehicle. |
32
+
|`accessibility_options`| Enum[]| Required |**[Mode](/modes#list-of-supported-modes) Specific**. [Accessibility options](/modes#accessibility-options) given as an array of enumerated values. List of any accessibility options **available on the vehicle**. |
29
33
|`battery_capacity`| Integer | Required if Available | Capacity of battery expressed as milliamp hours (mAh) |
30
34
|`fuel_capacity`| Integer | Required if Available | Capacity of fuel tank (liquid, solid, gaseous) expressed in liters |
31
35
@@ -98,7 +102,7 @@ Events represent changes in vehicle status.
98
102
99
103
### Event Times
100
104
101
-
Because of the unreliability of device clocks, the Provider is unlikely to know with total confidence what time an event occurred at. However, Providers are responsible for constructing as accurate a timeline as possible. Most importantly, the order of the timestamps for a particular device's events must reflect the Provider's best understanding of the order in which those events occurred.
105
+
Because of the unreliability of device clocks, the provider is unlikely to know with total confidence what time an event occurred at. However, providers are responsible for constructing as accurate a timeline as possible. Most importantly, the order of the timestamps for a particular device's events must reflect the provider's best understanding of the order in which those events occurred.
102
106
103
107
[Top][toc]
104
108
@@ -210,7 +214,7 @@ A Trip is defined by the following structure:
210
214
|`duration`| Integer | Required | Time, in Seconds |
211
215
|`distance`| Integer | Required | Trip Distance, in Meters |
212
216
|`publication_time`|[Timestamp][ts]| Optional | Date/time that trip became available through the trips endpoint |
213
-
|`accessibility_options`| Enum[]| Required |**[Mode](/modes#list-of-supported-modes) Specific**. [Accessibility options](/modes#accessibility-options) given as an array of enumerated values. List of any accessibility options used during the trip. |
217
+
|`accessibility_options`| Enum[]| Required |**[Mode](/modes#list-of-supported-modes) Specific**. [Accessibility options](/modes#accessibility-options) given as an array of enumerated values. List of any accessibility options **used during the trip**. |
214
218
|`parking_verification_url`| URL | Optional | A URL to a photo (or other evidence) of proper vehicle parking |
215
219
|`standard_cost`| Integer | Optional | The cost, in the currency defined in `currency`, to perform that trip in the standard operation of the System (see [Costs & Currencies][costs-and-currencies]) |
216
220
|`actual_cost`| Integer | Optional | The actual cost, in the currency defined in `currency`, paid by the customer of the *mobility as a service* provider (see [Costs & Currencies][costs-and-currencies]) |
Copy file name to clipboardExpand all lines: modes/README.md
+8-4Lines changed: 8 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,7 +29,7 @@ Each mode defined in MDS shall include key descriptive information, such as jour
29
29
30
30
-**[Micromobility](/modes/micromobility.md)** (`micromobility`) - dockless or docked small devices such as e-scooters and bikes.
31
31
-**[Passenger services](/modes/passenger-services.md)** (`passenger-services`) - transporting individuals with a vehicle driven by another entity, including taxis, TNCs, and microtransit
32
-
-**[Car share](/modes/car-share.md)** (`car-share`) - shared point-to-point and station-based mutli-passenger vehicles.
32
+
-**[Car share](/modes/car-share.md)** (`car-share`) - shared point-to-point and station-based multi-passenger vehicles.
@@ -50,6 +50,10 @@ Some fields used across MDS APIs are defined in more detail within each mode.
50
50
51
51
The `journey_id` field allows multiple trip segments to be referentially linked together. See each [mode definition](#list-of-supported-modes) for details.
52
52
53
+
### Journey Attributes
54
+
55
+
The `journey_attributes` array allows additional mode-specific information about the nature of a journey to be described. See each [mode definition](#list-of-supported-modes) for details.
56
+
53
57
### Trip Type
54
58
55
59
The `trip_type` field allows the purpose of each trip segment to be described. See each [mode definition](#list-of-supported-modes) for details.
@@ -58,19 +62,19 @@ The `trip_type` field allows the purpose of each trip segment to be described. S
58
62
59
63
The `trip_attributes` array allows additional mode-specific information about the nature of a trip to be described. It can return a list of JSON-formatted key/value pairs which correspond to the allowed attributes and values for the operative mode. See each [mode definition](#list-of-supported-modes) for details.
60
64
61
-
_See more available trip attributes for any mode in the [trips endpoint](/provider#trips)._
65
+
_See more available trip attributes for any mode in the [trips object](/data-types.md#trips)._
62
66
63
67
### Fare Attributes
64
68
65
69
The `fare_attributes` array allows additional mode-specific information about fare information associated with the trip. It can return a list of JSON-formatted key/value pairs which correspond to the allowed attributes and values for the operative mode. See each [mode definition](#list-of-supported-modes) for details.
66
70
67
-
_See more available fare attributes for any mode in the [trips endpoint](/provider#trips)._
71
+
_See more available fare attributes for any mode in the [trips object](/data-types.md#trips)._
68
72
69
73
### Vehicle Attributes
70
74
71
75
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).
72
76
73
-
_See more available vehicle attributes for any mode in the [vehicles endpoint](/provider#vehicles)._
77
+
_See more available vehicle attributes for any mode in the [vehicles object](/data-types.md#vehicles)._
The Provider API endpoints are intended to be implemented by mobility providers and consumed by regulatory agencies. When a municipality queries information from a mobility provider, the Provider API has a historical view of operations in a standard format.
5
+
The Provider API endpoints are intended to be implemented by mobility providers and consumed by regulatory agencies. Data is **pulled** from providers by agencies. When a municipality queries information from a mobility provider, the Provider API has a historical view of operations in a standard format.
6
6
7
7
This specification contains a data standard for *mobility as a service* providers to define a RESTful API for municipalities to access on-demand.
0 commit comments