What is GBFS?
An open data standard primarily used for traveller-facing shared mobility, governed through a consensus-based process on GitHub.
Open Data Standards
What is JSON?
What is GBFS and why should you use it?
What is GeoJSON?
Uses of GBFS
Why was GBFS created?
In 2015, under NABSA’s leadership, GBFS was developed by a team of bikeshare system owners and operators, application developers, and technology vendors.
GBFS specifies how shared mobility data should be structured for proper interoperability of systems. Until the creation of GBFS, bike sharing systems switched between different code formats, making it difficult for application developers to create tools for travellers.
What are the benefits of using GBFS?
How is GBFS different from MDS
The main differences between MDS and GBFS are:
GBFS is focused on providing data to the customer, whereas MDS has a focus on regulators and municipalities.
GBFS provides real-time data, whereas MDS provides historical data.
GBFS is a requirement for the Provider feed of MDS.
Can GBFS contain operational data?
GBFS does not contain operational data. GBFS only contains real-time data that is beneficial to the customer for their trips.
Can GBFS contain personal data?
GBFS does not contain personal data. Given the real-time nature of the data, as well as other safety measures such as rotating bike_id, a user’s information will never be shared and a user or individual trips will not be able to be traced.
What is shared mobility?
Shared mobility encompasses both micro mobility, such as bikeshare and scooters, as well as other larger types of mobility, such as carsharing.
What is shared micromobility?
Shared micromobility typically refers to small, lightweight mobility devices with speeds below 25km/h that are hired by the end user. Examples include bikes, ebikes, scooters, etc.
Why is GBFS named GBFS if it covers modes other than bikes?
GBFS has its roots in bikeshare. Only in 2019 were other forms of micromobility included in the specification. It has been discussed to one day rename GBFS to be more representative of the forms of shared mobility the specification supports.
Governance and Change Process
Who's in charge of GBFS?
NABSA (North American Bikeshare Association) is a member-based organization that provides resources and education and creates a space for the public, private and nonprofit sectors of bikeshare and shared micromobility to convene and empower each other. NABSA chose MobilityData to manage and maintain GBFS. More information on NABSA can be found at https://nabsa.net/.
MobilityData IO is a member-based non-profit organization that has been mandated by NABSA to handle all aspects of GBFS, including fostering a community as well as updating and maintaining the specification. MobilityData IO also handles GTFS, the public transit equivalent of GBFS.
How is the specification updated?
The specification is updated in 1 of 3 ways. (1) One of our sponsors comes to us with a change or extension they’d like to see, and we get to work on doing the research and drafting a proposal for the extension. (2) A community member (sometimes someone from MobilityData) opens an issue to discuss a certain topic, from which a proposal or Pull Request will arise. (3) A community member opens a Pull Request with a change they would like to see.
In all of these cases, Pull Requests are used for community consultation and modifications if need be. Once completed, a vote is called. Each vote is open for 10 calendar days, and must receive a minimum of 3 votes, with at least one from a producer and one from a consumer. If the vote passes, the changes are placed into what is called a Release Candidate. Once the members who committed to implementation come back to us with a successful dataset, the change is moved into an official release.
A more detailed outline of the governance process can be found here.
I would like to propose a modification to the specification.
If you are interested in proposing a modification, you can do so at the GBFS GitHub repo. If you don’t have the solution to the problem, we recommend you open an issue. If you are looking for input on a solution you’ve already come up with, please open a Pull Request.
What is GitHub?
GitHub is a repository hosting service that allows for collaboration and version iteration.
What is a repository?
A repository, often called a “repo”, is a place where all of a project's documents are stored.
What is an issue?
An issue on GitHub is a place for discussion. Anyone can open an issue to spark conversation about the specification, be it a direction you’d like to see the spec take, or a problem you are experiencing in using the specification.
What is a pull request?
A pull request is a request to change the specification. Anyone can open a pull request and open the floor to comments and discussion. Pull requests are then voted on to see whether or not they should be merged into the specification.
Working with GBFS
Why are GBFS Best Practices important?
GBFS Best Practices are important so that the end user has the best possible experience that does not compromise their identity or travel habits.
Do GBFS validator tools check for conformance with Best Practices?
Validator tools do not check for conformance with Best Practices since they are not explicit in the specification. It is recommended to use a manual approach to ensure conformance with Best Practices.
What should I do if I notice a GBFS data feed does not conform to Best Practices?
If you notice a data feed does not conform to Best Practices, you can contact either their feed contact e-mail found in system_information.json, or you can contact us at email@example.com.
I would like to propose a modification/addition to Best Practices.
If you would like to propose a modification to Best Practices, please do so by either opening an Issue or Pull Request on our GitHub.
What does is mean to rotate bike_id and why is it important?
Rotating bike_id means that a bike’s (or vehicle’s) ID will change once the bike is reserved or accessed. It is important to ensure this is being done to avoid potentially identifying individual trips and users. This is especially important for dockless mobility systems, where a user may end or begin their trip in front of their homes or other frequently visited locations.
What is a provider?
A provider is the entity that is publishing GBFS, most often the system operator.
What is a consumer?
A consumer is someone who is using this data in a certain way, for example a third-party trip planning app.
What is a system?
A system is the entirety of the service provided. Systems can be made up of docking stations, vehicles, and other infrastructure, for example charging stations.
What is a vehicle?
A system’s fleet is made up of individual vehicles. Some systems may have multiple vehicle types, whereas others may only have one.
What is a station?
A station is where the vehicles exist between trips. Stations can be virtual, meaning that there is no physical infrastructure, or stations can include physical infrastructure like docks.
What is a geofencing zone?
A geofencing zone is an area defined by a GeoJSON file that depicts a certain condition within the system. Examples of geofencing zones would be no ride areas, zones where a speed limit is enforced, or no park zones.
How do I get involved?
There are a number of ways you can get involved with our organization and the Shared Mobility community!
Join our slack: https://mobilitydata-io.herokuapp.com/
Join us on Github: https://github.com/NABSA/gbfs
What does it mean to be a MobilityData member?
MobilityData has two membership types:
Core Members are voting members, who have the opportunity to join any working group, an invitation to send up to two representatives to any of our workshops with no fee, early access to new tools and services (exclusive access for the first three months), a stronger influence on our roadmap, and recognition on MobilityData’s website as a Core Member.
Regular Members are non-voting members who receive updates on MobilityData’s projects, an invitation for one representative to attend one MobilityData workshop each year, occasional invitations to selected working groups and discussions, and recognition on MobilityData’s website as a Regular Member.