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.
[Top][toc]
Endpoints
MDS is comprised of six distinct APIs, with multiple endpoints under each API:
The [provider
][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.
The [agency
][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.
The [policy
][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.
The [geography
][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.
The [jurisdiction
][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.
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.
[Top][toc]
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
[Top][toc]
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.
[Top][toc]
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.
[Top][toc]
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.
[Top][toc]
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.
[Top][toc]