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
|`timestamp`|[timestamp][ts]| Required | Date/time that event occurred. Based on GPS or GNSS clock |
88
+
|`timestamp`|[Timestamp][ts]| Required | Date/time that event occurred. Based on GPS or GNSS clock |
89
89
|`altitude`| Double | Required if Available | Altitude above mean sea level in meters |
90
90
|`heading`| Double | Required if Available | Degrees - clockwise starting at 0 degrees at true North |
91
91
|`speed`| Float | Required if Available | Estimated speed in meters / sec as reported by the GPS chipset |
@@ -113,6 +113,8 @@ Example of a vehicle location GeoJSON [`Feature`][geojson-feature] object:
113
113
}
114
114
```
115
115
116
+
(?) Remove this section?
117
+
116
118
### Stop-based Geographic Data
117
119
118
120
When an individual location coordinate measurement (Point) corresponds to a [Stop][general-stops], it must be presented with a `stop_id` property:
@@ -229,40 +231,36 @@ A Trip is defined by the following structure:
229
231
|`trip_duration`| Integer | Required | Time, in Seconds |
230
232
|`trip_distance`| Integer | Required | Trip Distance, in Meters |
231
233
|`trip_attributes`| Array | Optional |**[Mode](/modes#list-of-supported-modes) Specific**. [Trip attributes](/modes#trip-attributes) given as unordered key-value pairs |
232
-
|`start_time`|[timestamp][ts]| Required | Start of the passenger/driver trip |
233
-
|`end_time`|[timestamp][ts]| Required | End of the passenger/driver trip |
234
-
|`start_location`| GeoJSON [Point Feature][point-geo]| Required | Location of the start of the trip. See also [Stop-based Geographic Data][stop-based-geo]. |
235
-
|`end_location`| GeoJSON [Point Feature][point-geo]| Required | Location of the end of the trip. See also [Stop-based Geographic Data][stop-based-geo]. |
236
-
|`route`| GeoJSON `FeatureCollection`| Required | See [Routes](#routes) detail below. Note the `start_location` and `end_location` fields in this object are duplicated in the `route` data. |
237
-
|`accuracy`| Integer | Required | The approximate level of accuracy, in meters, of `Points` within `route`|
238
-
|`publication_time`|[timestamp][ts]| Optional | Date/time that trip became available through the trips endpoint |
239
-
|`parking_verification_url`| String | Optional | A URL to a photo (or other evidence) of proper vehicle parking |
234
+
|`start_time`|[Timestamp][ts]| Required | Start of the passenger/driver trip |
235
+
|`end_time`|[Timestamp][ts]| Required | End of the passenger/driver trip |
236
+
|`start_location`|`{ lat: number, lng: number }`| Required | Location of the start of the trip. See also [Stop-based Geographic Data][stop-based-geo]. |
237
+
|`end_location`|`{ lat: number, lng: number }`| Required | Location of the end of the trip. See also [Stop-based Geographic Data][stop-based-geo]. |
238
+
|`publication_time`|[Timestamp][ts]| Optional | Date/time that trip became available through the trips endpoint |
240
239
|`fare`|[Fare](#fare)| Conditionally Required | Fare for the trip (required if trip was completed) |
240
+
241
+
(?) Document that the route is obtained by hitting the /telemetry endpoint with a `trip_id`?
242
+
243
+
(?) Should we keep mix of `trip_` prefix vs. no prefix? E.g. `start_time`.
244
+
245
+
(?) Does anyone use `publication_time`?
246
+
247
+
(?) Should `fare` move into `trip_attributes`? No fare for delivery modes?
248
+
249
+
Examples of mode-specific `trip_attributes`:
250
+
251
+
| Field | Type | Required/Optional | Comments |
252
+
| ----- | -------- | ----------------- | ----- |
253
+
|`dispatch_time`|[Timestamp][ts]| Conditionally Required | Time the vehicle was dispatched to the customer (required if trip was dispatched) |
254
+
|`quoted_trip_start_time`|[Timestamp][ts]| Required | Time the trip was estimated or scheduled to start, that was provided to the passenger |
255
+
|`requested_trip_start_location`|`{ lat: number, lng: number }`| Conditionally Required | Location where the customer requested the trip to start (required if this is within jurisdictional boundaries) |
241
256
|`reservation_method`| Enum | Required | Way the customer created their reservation, see [reservation-method](#reservation-method)|
242
-
|`reservation_time`| Timestamp | Required | Time the customer *requested* a reservation |
257
+
|`reservation_time`|[Timestamp][ts]| Required | Time the customer *requested* a reservation |
243
258
|`reservation_type`| Enum | Required | Type of reservation, see [reservation-type](#reservation-type)|
259
+
|`cancellation_reason`| string | Conditionally Required | The reason why a *driver* cancelled a reservation. (required if a driver cancelled a trip, and a `driver_cancellation` event_type was part of the trip) |
260
+
|`accessibility_options`| Enum[]| Optional | The **union** of any accessibility options requested, and used. E.g. if the passenger requests a vehicle with `wheelchair_accessible`, but doesn’t utilize the features during the trip, the trip payload will include `accessibility_options: ['wheelchair_accessible']`. See [accessibility-options][accessibility-options]|
261
+
|`parking_verification_url`| String | Optional | A URL to a photo (or other evidence) of proper vehicle parking |
244
262
245
-
WORK IN PROGRESS - THIS WAS FROM THE AGENCY PROPOSAL
246
-
247
-
| Field | Type | Required/Optional | Field Description |
| trip_id | UUID | Required | UUID for the trip this payload pertains to |
250
-
| trip_type | Enum | Optional | The type of the trip |
251
-
| trip_attributes |`{ [String]: String}`| Optional | Trip attributes, given as mode-specific key-value pairs |
252
-
| provider_id | UUID | Required | Provider which managed this trip |
253
-
| reservation_method | Enum | Required | Way the customer created their reservation, see [reservation-method](#reservation-method)|
254
-
| reservation_time | Timestamp | Required | Time the customer *requested* a reservation |
255
-
| reservation_type | Enum | Required | Type of reservation, see [reservation-type](#reservation-type)|
256
-
| quoted_trip_start_time | Timestamp | Required | Time the trip was estimated or scheduled to start, that was provided to the passenger |
257
-
| requested_trip_start_location |`{ lat: number, lng: number }`| Conditionally Required | Location where the customer requested the trip to start (required if this is within jurisdictional boundaries) |
258
-
| dispatch_time | Timestamp | Conditionally Required | Time the vehicle was dispatched to the customer (required if trip was dispatched) |
259
-
| trip_start_time | Timestamp | Conditionally Required | Time the trip started (required if trip started) |
260
-
| trip_end_time | Timestamp | Conditionally Required | Time the trip ended (required if trip was completed) |
261
-
| distance | Float | Conditionally Required | Total distance of the trip in meters (required if trip was completed) |
262
-
| cancellation_reason | string | Conditionally Required | The reason why a *driver* cancelled a reservation. (required if a driver cancelled a trip, and a `driver_cancellation` event_type was part of the trip) |
263
-
| fare |[Fare](#fare)| Conditionally Required | Fare for the trip (required if trip was completed) |
264
-
| accessibility_options | Enum[]| Optional | The **union** of any accessibility options requested, and used. E.g. if the passenger requests a vehicle with `wheelchair_accessible`, but doesn’t utilize the features during the trip, the trip payload will include `accessibility_options: ['wheelchair_accessible']`. See [accessibility-options][accessibility-options]|
265
-
263
+
(?) Make sure that ALL mode-specific stuff goes into the Modes work!
266
264
267
265
[Top][toc]
268
266
@@ -315,8 +313,8 @@ Events represent changes in vehicle status.
315
313
|`vehicle_id`| String | Required | A unique vehicle identifier (visible code, licence plate, etc), visible on the vehicle itself |
316
314
|`vehicle_state`| Enum | Required | See [vehicle state][vehicle-states] table |
317
315
|`event_types`| Enum[]| Required | Vehicle [event types][vehicle-events] for state change, with allowable values determined by `vehicle_state`|
318
-
|`event_time`|[timestamp][ts]| Required | Date/time that event occurred at. See [Event Times][event-times]|
319
-
|`publication_time`|[timestamp][ts]| Optional | Date/time that event became available through the status changes endpoint |
316
+
|`event_time`|[Timestamp][ts]| Required | Date/time that event occurred at. See [Event Times][event-times]|
317
+
|`publication_time`|[Timestamp][ts]| Optional | Date/time that event became available through the status changes endpoint |
320
318
|`event_location`| GeoJSON [Point Feature][point-geo]| Required | See also [Stop-based Geographic Data][stop-based-geo]. |
321
319
|`event_geographies`| UUID[]| Optional |**[Beta feature](/general-information.md#beta-features):***Yes (as of 2.0.0)*. Array of Geography UUIDs consisting of every Geography that contains the location of the status change. See [Geography Driven Events][geography-driven-events]. Required if `event_location` is not present. |
322
320
|`trip_ids`[]| UUID[]| Required if Applicable | Trip UUIDs (foreign key to /trips endpoint), required if `event_types` contains `trip_start`, `trip_end`, `trip_cancel`, `trip_enter_jurisdiction`, or `trip_leave_jurisdiction`|
@@ -343,7 +341,7 @@ A standard point of vehicle telemetry. References to latitude and longitude impl
|`telemetry_id`| UUID | Required | ID used for uniquely-identifying a Telemetry entry |
345
343
|`device_id`| UUID | Required | ID used in [Register](#vehicle---register)|
346
-
|`timestamp`|[timestamp][ts]| Required | Date/time that event occurred. Based on GPS or GNSS clock |
344
+
|`timestamp`|[Timestamp][ts]| Required | Date/time that event occurred. Based on GPS or GNSS clock |
347
345
| `trip_ids` | UUID[] | Required | If telemetry occurred during a trip, the ID of the trip(s). If not in a trip, `null`.
348
346
| `journey_id` | UUID | Required | If telemetry occurred during a trip, the ID of the journey. If not in a trip, `null`.
349
347
|`stop_id`| UUID | Required if Applicable | Stop that the vehicle is currently located at. Only applicable for _docked_ Micromobility. See [Stops][stops]|
@@ -359,8 +357,6 @@ A standard point of vehicle telemetry. References to latitude and longitude impl
359
357
|`battery_percent`| Integer | Required if Applicable | Percent battery charge of vehicle, expressed between 0 and 100 |
360
358
|`fuel_percent`| Integer | Required if Applicable | Percent fuel in vehicle, expressed between 0 and 100 |
361
359
362
-
(?) Add `journey_id`?
363
-
364
360
[Top][toc]
365
361
366
362
## Stops
@@ -475,7 +471,7 @@ A vehicle record is as follows:
|`battery_capacity`| Integer | Required if Available | Capacity of battery expressed as milliamp hours (mAh) |
477
473
|`fuel_capacity`| Integer | Required if Available | Capacity of fuel tank (liquid, solid, gaseous) expressed in liters |
478
-
|`last_event_time`|[timestamp][ts]| Required | Date/time when last state change occurred. See [Event Times][event-times]|
474
+
|`last_event_time`|[Timestamp][ts]| Required | Date/time when last state change occurred. See [Event Times][event-times]|
479
475
|`last_state`| Enum | Required |[Vehicle state][vehicle-states] of most recent state change. |
480
476
|`last_event_types`| Enum[]| Required |[Vehicle event(s)][vehicle-events] of most recent state change, allowable values determined by `last_vehicle_state`. |
481
477
|`last_event_location`| GeoJSON [Point Feature][point-geo]| Required | Location of vehicle's last event. See also [Stop-based Geographic Data][stop-based-geo]. |
0 commit comments