A data standard to enable communication between mobility companies and local governments.
The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:
The Mobility Data Specification (MDS), a project of the Open Mobility Foundation (OMF), is a set of Application Programming Interfaces (APIs) focused on dockless e-scooters, bicycles, mopeds and carshare. Inspired by projects like GTFS and GBFS, the goals of MDS are to provide a standardized way for municipalities or other regulatory agencies to ingest, compare and analyze data from mobility service providers, and to give municipalities the ability to express regulation in machine-readable formats.
MDS helps cities interact with companies who operate dockless scooters, bicycles, mopeds and carshare in the public right-of-way. MDS is a key piece of digital infrastructure that supports the effective implementation of mobility policies in cities around the world.
MDS is an open-source project. It was originally created by the Los Angeles Department of Transportation (LADOT). In November 2019, stewardship of MDS and the ownership of this repository was transferred to the Open Mobility Foundation. GitHub automatically redirects any links to this repository in the
CityOfLosAngelesorganization to the
openmobilityfoundationinstead. MDS continues to be used by LADOT and many other municipalities.
MDS is currently comprised of three distinct components:
MDS is designed to be a modular kit-of-parts. Regulatory agencies can use the components of the API that are appropriate for their needs. An agency may choose to use only
policy. Or they may select specific elements (endpoints) from each to help them implement their goals.
You can read more about the different APIs here: Understanding the different MDS APIs
To stay up to date on MDS releases, meetings, and events, please subscribe to the mds-announce mailing list.
The Mobility Data Specification is an open source project with all development taking place on GitHub. Comments and ideas can be shared by creating an issue, and specific changes can be suggested by opening a pull request. Before contributing, please review our CONTRIBUTING page to understand guidelines and policies for participation and our CODE OF CONDUCT page.
You can also get involved in development by joining an OMF working group. The working groups maintain the OMF GitHub repositories and work through issues and pull requests. Each working group has its own mailing list for non-technical discussion and planning:
|Provider Services||mds-provider-services||Manages the
providerAPI within MDS.
|City Services||mds-city-services||Manages the
policyAPIs within MDS, as well as the
You can view info about past releases and planning calls in the wiki.
Information about the latest release and all releases are below. Please note, you may be viewing a development copy of the Mobility Data Specification based on the current branch. Info about the latest release and all releases is below.
More than 80 cities and public agencies around the world use MDS, and it has been implemented by most major mobility providers. Below are links to some specific agency programs/policies:
Ulm: A draft of the guidelines can be found at the city's GitHub presence.
Some examples of how cities are using MDS in practice:
mds-core- A reference implementation of an MDS Agency Server, built using PostgresQL, TypeScript, NodeJS.
mds-compliance-mobile- A mobile app for performing in-the-field data validation and compliance monitoring.
mds-dev- Code to do cap checking, fake data generation and more with provider data.
mds-validator- Code to validate MDS APIs using JSONSchema.
aqueduct- ETL, Data Warehousing, and Machine Learning Platform for LA City Data Science team. Handles extracting MDS provider APIs and storing in data warehouse.
mds-agency-cli- Nodejs-based command-line interface to exercise the Agency API in the LADOT sandbox
mds-provider- Python package implementing a provider API client, validation using JSONSchema, data loading to multiple targets, and fake provider data generation.
mds-provider-services- Python scripts wrapped in Docker containers implementing a MDS provider data ingestion flow, using
mds-providerand handling the various dependencies.
transportation-dockless-dataviz- A hexbin origin/destintation web map of dockless trips using jQuery & Mapbox GL JS. See http://dockless.austintexas.io/.
transportation-dockless-api- Python Sanic-based API that provides an interface for retrieving anonymized and aggregated trip data. This API supplies data to our interactive Dockless Mobility Explorer. The source database for the API is our Dockless Vehicle Trips dataset.
transportation-dockless-processing- Python scripts for dockless mobility data ETL.
mds-provider-client- A forked Python client from
Please open a pull request if you create open source or private tools for implementing or working with MDS data.