Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
…ta-standard into dev

* 'dev' of https://github.com/CityOfLosAngeles/mobility-data-standard:
  Fixing newlines again (openmobilityfoundation#135)
  typo fix.
  Update README to show associated python libraries (openmobilityfoundation#132)
  Add Lyft
  Add Razor to providers.csv
  update update_vehicle_status to use standard post
  clarification on how we extend GBFS
  Elevating Status of Realtime Feed
  • Loading branch information
hunterowens committed Oct 16, 2018
2 parents 5e8392e + ecebf75 commit 50fff71
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 14 deletions.
15 changes: 15 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,21 @@ The City of Los Angeles is currently looking for feedback and comments on the dr

*10/1/2018 Update*: Applications for the Conditional Permit are now open for submission on the [LADOT Website](http://ladot.lacity.org/ladot-begins-conditional-permit-program-dockless-mobility)

## Related Projects

### City of Los Angeles
* [`mds-dev`](https://github.com/cityoflosangeles/mds-dev) - Code to do cap checking, fake data generation and more with provider data.
* [`mds-validator`](https://github.com/cityoflosangeles/mds-validator) - Code to validate MDS APIs using JSONSchema.
* [`aqueduct`](https://github.com/cityoflosangeles/aqueduct) - ETL, Data Warehousing, and Machine Learning Platform for LA City Data Science team. Handles extracting MDS provider APIs and storing in data warehouse.

### City of Santa Monica
* [`mds-provider`](https://github.com/cityofsantamonica/mds-provider) - Python package implementing the provider API, validation using JSONSchema, data loading to multiple targets, and fake provider data generation.
* [`mds-provider-services`](https://github.com/cityofsantamonica/mds-provider-services) - Python scripts wrapped in Docker containers implementing an MDS provider data ingestion flow, using `mds-provider` and handling the various dependencies.

### Others

Please open a pull request if you create open source or private MDS tooling.

## Contact

Questions can be directed to [email protected].
Expand Down
31 changes: 17 additions & 14 deletions provider/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ This specification contains a data standard for *mobility as a service* provider
* [General Information](#general-information)
* [Trips](#trips)
* [Status Changes](#status-changes)
* [Realtime Data](#realtime-data)

## General Information

Expand Down Expand Up @@ -109,13 +110,11 @@ A trip represents a journey taken by a *mobility as a service* customer with a g

The trips API allows a user to query historical trip data.

Endpoint: `/trips`\
Method: `GET`
Endpoint: `/trips`
Method: `GET`
Schema: [`trips` schema][trips-schema]
`data` Payload: `{ "trips": [] }`, an array of objects with the following structure

Response: See the [`trips` schema][trips-schema] for the expected format._
Data: `{ "trips": [] }`, an array of objects with the following structure

Data: `{ "trips": [] }`, an array of objects with the following structure

| Field | Type | Required/Optional | Comments |
| ----- | -------- | ----------------- | ----- |
Expand Down Expand Up @@ -218,12 +217,10 @@ The status of the inventory of vehicles available for customer use.

This API allows a user to query the historical availability for a system within a time range.

Endpoint: `/status_changes`\
Method: `GET`

Response: See the [`status_changes` schema][sc-schema] for the expected format.

Data: `{ "status_changes": [] }`, an array of objects with the following structure
Endpoint: `/status_changes`
Method: `GET`
Schema: [`status_changes` schema][sc-schema]
`data` Payload: `{ "status_changes": [] }`, an array of objects with the following structure

| Field | Type | Required/Optional | Comments |
| ----- | ---- | ----------------- | ----- |
Expand Down Expand Up @@ -269,9 +266,15 @@ bbox=-122.4183,37.7758,-122.4120,37.7858
| | | `rebalance_pick_up` | Device removed from street and will be placed at another location to rebalance service |
| | | `maintenance_pick_up` | Device removed from street so it can be worked on |

### Realtime Data
## Realtime Data

All MDS compatible `provider` APIs must expose a public [GBFS](https://github.com/NABSA/gbfs) feed as well. Given that GBFS hasn't fully [evolved to support dockless mobility](https://github.com/NABSA/gbfs/pull/92) yet, we follow the current guidelines in making bike information avaliable to the public.

- `system_information.json` is always required
- `free_bike_status.json` is required for MDS
- `station_information.json` and `station_status.json` don't apply for MDS


All MDS compatible `provider` APIs must expose a [GBFS](https://github.com/NABSA/gbfs) feed as well. For historical data, a `time` parameter should be provided to access what the GBFS feed showed at a given time.

[Top][toc]

Expand Down
2 changes: 2 additions & 0 deletions providers.csv
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,5 @@ provider_name,provider_id,url,mds_api_url
JUMP,c20e08cf-8488-46a6-a66c-5d8fb827f7e0,https://jump.com,https://api.uber.com/v0.1/emobility/mds
Lime,63f13c48-34ff-49d2-aca7-cf6a5b6171c3,https://li.me,https://data.lime.bike/api/partners/v1/mds
Bird,2411d395-04f2-47c9-ab66-d09e9e3c3251,https://www.bird.co,https://mds.bird.co
Razor,6ddcc0ad-1d66-4046-bba4-d1d96bb8ca4d,https://www.razor.com/share,https://razor-200806.appspot.com/api/v2/mds
Lyft,e714f168-ce56-4b41-81b7-0b6a4bd26128,https://www.lyft.com,https://api.lyft.com/v1/last-mile/mds

0 comments on commit 50fff71

Please sign in to comment.