Awesome
Mobility Data Specification
Table of Contents
- About
- Endpoints
- Modes
- Versions
- Get Involved
- Cities Using MDS
- Providers Using MDS
- Software Companies Using MDS
- Data Privacy
- Use Cases
- Related Projects
About
The Mobility Data Specification (MDS), a project of the Open Mobility Foundation (OMF), is a set of Application Programming Interfaces (APIs) that helps cities better manage transportation in the public right of way, standardizing communication and data-sharing between cities and mobility providers, allowing cities to share and validate policy digitally, and enabling vehicle management and better outcomes for residents. Inspired in part by projects like GTFS and GBFS, MDS is focused on managing mobility services such as dockless scooters, bicycles, mopeds, car share, delivery robots, and passenger services.
MDS is a key piece of digital infrastructure that supports the effective implementation of mobility policies in cities around the world. For a high level overview and visuals, see the About MDS page on the OMF website.
MDS is an open-source project originally created by the Los Angeles Department of Transportation (LADOT). In November 2019, stewardship of MDS and the ownership of this repository were transferred to the Open Mobility Foundation. GitHub automatically redirects any links to this repository from the CityOfLosAngeles
organization to the openmobilityfoundation
instead. MDS continues to be used by LADOT and many other municipalities and companies.
Endpoints
MDS is comprised of six distinct APIs, with multiple endpoints under each API:
<a href="/provider/"><img src="https://i.imgur.com/yzXrKpo.png" width="80" align="left" alt="MDS Provider Icon" border="0"></a>
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 provides historical and recent views of operations. First released in June 2018.
<a href="/agency/"><img src="https://i.imgur.com/HzMWtaI.png" width="80" align="left" alt="MDS Agency Icon" border="0"></a>
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. First released in April 2019.
<a href="/policy/"><img src="https://i.imgur.com/66QXveN.png" width="80" align="left" alt="MDS Policy Icon" border="0"></a>
The policy
API endpoints are intended to be implemented by regulatory agencies and consumed by mobility providers. Providers query the Policy API to get information about local rules that may affect the operation of their mobility service or which may be used to determine compliance. First released in October 2019.
<a href="/geography/"><img src="https://i.imgur.com/JJdKX8b.png" width="80" align="left" alt="MDS Geography Icon" border="0"></a>
The geography
API endpoints are intended to be implemented by regulatory agencies and consumed by mobility providers. Providers query the Geography API to get information about geographical regions for regulatory and other purposes. First released in October 2019, as part of the Policy specification.
<a href="/jurisdiction/"><img src="https://i.imgur.com/tCRCfxT.png" width="80" align="left" alt="MDS Jurisdiction Icon" border="0"></a>
The jurisdiction
API endpoints are intended to be implemented by regulatory agencies that have a need to coordinate with each other. The Jurisdiction API endpoints allow cities to communicate boundaries between one another and to mobility providers. First released in March 2021.
<a href="/metrics/"><img src="https://i.imgur.com/ouijHLj.png" width="80" align="left" alt="MDS Metrics Icon" border="0"></a>
The metrics
API endpoints are intended to be implemented by regulatory agencies or their appointed third-party representatives to have a standard way to consistently describe available metrics, and create an extensible interface for querying MDS metrics. First released in March 2021.
Modularity
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 agency
, provider
, and/or policy
. Other APIs like geography
, jurisdiction
, and/or metrics
can be used in coordination as described with these APIs or sometimes on their own. Or agencies may select specific elements (endpoints) from each API to help them implement their goals. Development of the APIs takes place under the guidance of the OMF's MDS Working Group.
Many parts of the MDS definitions and APIs align across each other. In these cases, consolidated information can be found on the General Information page.
You can read more in our Understanding the different MDS APIs guide.
GBFS Requirement
All MDS compatible Provider and/or Agency feeds must also expose a public GBFS feed for the micromobility and car share modes (passenger services and delivery robots may be optionally supported at the discretion of the agency running the program). Compatibility with GBFS 2.2 or greater is advised, or the version recommended per MobilityData's supported releases guidance. Read MobilityData's RFP recommendations and required files list in their GBFS and Shared Mobility Data Policy guide.
See our MDS Vehicles Guide for how MDS Provider/Agency /vehicles
can be used by regulators instead of the public GBFS /free_bike_status
. Additional information on MDS and GBFS can be found in this guidance document.
Modes
MDS supports multiple "modes", defined as a distinct regulatory framework for a type of mobility service. See the modes overview or get started with a specific mode:
- Micromobility - dockless or docked small devices such as e-scooters and bikes.
- Passenger services - transporting individuals with a vehicle driven by another entity, including taxis, TNCs, and microtransit
- Car share - shared point-to-point and station-based multi-passenger vehicles.
- Delivery robots - autonomous and remotely driven goods delivery devices
Versions
MDS has a current release (version 2.0.0), previous releases (both recommended and longer recommended for use), and upcoming releases in development. For a full list of releases, their status, recommended versions, and timelines, see the Official MDS Releases page.
The OMF provides guidance on upgrading for cities, providers, and software companies, and sample permit language for cities. See our MDS Version Guidance for best practices on how and when to upgrade MDS as new versions become available. Our complimentary MDS Policy Language Guidance document is for cities writing MDS into their operating policy and includes sample policy language.
Technical Information
The latest MDS release is in the main
branch, and development for the next release occurs in the dev
branch.
The MDS specification is versioned using Git tags and semantic versioning. See prior releases and the Release Guidelines for more information and version support.
- Latest Release Branch (main)
- Development Branch (dev)
- All GitHub Releases
- MDS Releases - current/recommended versions, timeline
- Release Guidelines
Data Validation
To help with MDS data and feed validation, please see our OpenAPI schema description in the OMF mds-openapi repository. Browsable interactive documentation is also linked to in that repository.
Starting with MDS 2.0, OpenAPI documents describe MDS endpoints and allow for schema validation, expanding on the JSON Schemas formerly housed in this repository.
Get Involved
To stay up to date on MDS, please subscribe to the mds-announce mailing list for general updates, the wg-mds mailing list for Working Group details and meetings, and read our Community Wiki.
The Mobility Data Specification is an open source project with all development taking place on GitHub and public meetings through our MDS Working Group. Comments and ideas can be shared by starting a discussion, creating an issue, suggesting changes with a pull request, and attending meetings. Before contributing, please review our OMF CONTRIBUTING and CODE OF CONDUCT pages to understand guidelines and policies for participation.
Read our How to Get Involved in the Open Mobility Foundation blog post for more detail and an overview of how the OMF is organized.
For other questions about MDS or media inquiries please contact the OMF directly on our website.
Membership
OMF Members (public agencies and commercial companies) have additional participation opportunities with leadership roles within our OMF governance:
- Board of Directors
- Privacy, Security, and Transparency Committee
- Technology Council
- Strategy Committee
- Advisory Committee
- Steering committees of all Working Groups, currently:
Read about how to become an OMF member, how to get involved and our governance model, and contact us for more details.
Cities Using MDS
More than 200 cities and public agencies across 21 countries around the world are known to use MDS, and it has been implemented by most major mobility service providers.
- See our list of cities using MDS with links to public mobility websites and policy/permit documents.
Please let us know via our website or in the public discussion area if you are an agency using MDS so we can add you to the city resource list, especially if you have published your policies or documents publicly.
To add yourself to the agency list and add your Policy Requirement link, please let us know via our website or open an Issue or Pull Request. Find out how in our Adding an Agency ID help document.
Providers Using MDS
Over four dozen mobility service providers (MSPs) around the world use MDS, allowing them to create tools around a single data standard for multiple cities.
- See our list of providers using MDS. For a table list with unique IDs, see the MDS provider list which includes both service operators and data solution providers.
- A provider needs a unique ID for each mode they operate under.
To add yourself to the provider list, please let us know via our website or open an Issue or Pull Request. Find out how in our Adding an Provider ID help document.
Software Companies Using MDS
An open source approach to data specifications benefits cities and companies by creating a space for collaborative development, reducing costs, and nurturing a healthy, competitive ecosystem for mobility services and software tools. The open model promotes a competitive ecosystem for software tools built by dozens of software companies providing their services to cities, agencies, and providers.
- See our list of third party software companies using MDS and an article about the benefits of an open approach.
- For a table list with unique IDs, see the MDS provider list which includes both service operators and data solution providers.
To add yourself to the provider list (as a data solution providers), please let us know via our website or open an Issue or Pull Request. Find out how in our Adding an Provider ID help document.
Please let us know if you are using MDS in your company so we can add you to the list.
Data Privacy
MDS includes information about vehicles, their location, and trips taken on those vehicles to allow agencies to regulate their use in the public right of way and to conduct transportation planning and analysis. While MDS is not designed to convey personal information about the users of shared mobility services, data collected about mobility can be sensitive. The OMF and MDS community have created a number of resources to help cities, mobility providers, and software companies handle vehicle data safely:
- MDS Privacy Guide for Cities - guide that covers essential privacy topics and best practices
- The Privacy Principles for Mobility Data - principles endorsed by the OMF and other mobility organizations to guide the mobility ecosystem in the responsible use of data and the protection of individual privacy
- Mobility Data State of Practice - real-world examples related to the handling and protection of MDS and other types of mobility data
- Understanding the Data in MDS - technical document outlining what data is (and is not) in MDS
- Use Case Database - a starting point for understanding how MDS can be used, and what parts of MDS is required to meet those use cases
- Policy Requirements - built into MDS, allowing agencies to specify only the endpoints and fields needed for program regulation
- Using MDS Under GDPR - how to use MDS in the context of GDPR in Europe
The OMF’s Privacy, Security, and Transparency Committee creates many of these resources, and advises the OMF on principles and practices that ensure the secure handling of mobility data. The committee – which is composed of both private and public sector OMF members – also holds regular public meetings, which provide additional resources and an opportunity to discuss issues related to privacy and mobility data. Learn more here.
Use Cases
How cities use MDS depends on a variety of factors: their transportation goals, existing services and infrastructure, and the unique needs of their communities. Cities are using MDS to create policy, enforce rules, manage hundreds of devices, and ensure the safe operation of vehicles in the public right of way. Some examples of how cities are using MDS in practice are:
- Vehicle Caps: Determine total number of vehicles per operator in the right of way
- Distribution Requirements: Ensure vehicles are distributed according to equity requirements
- Injury Investigation: Investigate injuries and collisions with other objects and cars to determine roadway accident causes
- Restricted Area Rides: Find locations where vehicles are operating or passing through restricted areas
- Resident Complaints: Investigate and validate complaints from residents about operations, parking, riding, speed, etc, usually reported through 311
- Infrastructure Planning: Determine where to place new bike/scooter lanes and drop zones based on usage and demand, start and end points, and trips taken
A list of use cases is useful to show what's possible with MDS, to list what other cities are accomplishing with the data, to see many use cases up front for privacy considerations, and to use for policy discussions and policy language. More details and examples can be seen on the OMF website and our Wiki Database. An agency may align their program to specific use cases by publishing Policy Requirement use cases.
Please let us know if you have recommended updates or use cases to add.
Related Projects
Community projects are those efforts by individual contributors or informal groups that take place outside Open Mobility Foundation’s formalized process, complementing MDS. These related projects often push new ideas forward through experimental or locally-focused development, and are an important part of a thriving open source community. Some of these projects may eventually be contributed to and managed by the Open Mobility Foundation.
The OMF's Community Projects page has an every growing list of projects related to MDS, and see our Privacy Committee's State of Practice for more examples.
Please let us know if you create open source or private tools for implementing or working with MDS data.