{"id":178,"date":"2021-02-02T09:35:13","date_gmt":"2021-02-02T08:35:13","guid":{"rendered":"https:\/\/tomp-wg.org\/?p=178"},"modified":"2021-02-25T15:46:11","modified_gmt":"2021-02-25T14:46:11","slug":"tomp-api-gbfs","status":"publish","type":"post","link":"https:\/\/tomp-wg.org\/?p=178","title":{"rendered":"TOMP-API &#038; GBFS"},"content":{"rendered":"\n<p>We are frequently asked about the relationship between the TOMP-API and several existing standards. In this post, we will clarify how the TOMP-API and GBFS are related.<\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color has-medium-font-size\">GBFS<\/p>\n\n\n\n<p>GBFS is in use for quite a while now. It has a large base of organizations that are more or less using it. The majority of the (public) implementations are completed to a basic level.<\/p>\n\n\n\n<p>It&#8217;s used in 45+ countries to create public data for over 450+ shared mobility systems. It was initially designed to support publicly available standardized data about shared mobility service offerings.<\/p>\n\n\n\n<p>GBFS consists of files that are published in a public place. In a lot of cases, the implication is limited to only the basic files (general information, sometimes stations, sometimes availabilities), which does not include all data that is required to set up a full implementation.<br><br>Therefore a lot of MaaS providers who need this data, make individual arrangements with these bike operators and implement a complete set of files somewhere in a non-public location.<\/p>\n\n\n\n<p>It was also not designed for private fields, such as the vehicle status or the battery level, so MaaS Providers often used a customized version of GBFS.<\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color has-medium-font-size\">GBFS adoption<\/p>\n\n\n\n<p>As the TOMP working group, we were convinced that this GBFS standard is a good starting point, so we took the GBFS description, transformed it to a web service format, and extended it:<\/p>\n\n\n\n<ul><li>we added paging (for big datasets, like available-assets) with limit &amp; offset parameters<\/li><li>we added some server-side filter options (like stations within a region or available assets within a station)<\/li><li>we added geographical information: the regions are extended with a polygon, describing the region<\/li><li>some other fields, like the Chamber of Commerce, product type, and class of assets (in GBFS this is of course not an issue, it&#8217;s always &#8216;BIKE&#8217;)<\/li><\/ul>\n\n\n\n<p>Actually, you could say we are covering the complete GBFS standard. For easy, file-based, implementation of the GBFS standard is very valuable for communicating information from Bike Operator to MaaS provider, but when aiming for a full MaaS integration, you&#8217;ll need the TOMP-API.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" width=\"357\" height=\"345\" src=\"https:\/\/tomp-wg.org\/wp-content\/uploads\/2021\/02\/TOMP-API-GBFS.png\" alt=\"\" class=\"wp-image-192\" srcset=\"https:\/\/tomp-wg.org\/wp-content\/uploads\/2021\/02\/TOMP-API-GBFS.png 357w, https:\/\/tomp-wg.org\/wp-content\/uploads\/2021\/02\/TOMP-API-GBFS-300x290.png 300w\" sizes=\"(max-width: 357px) 100vw, 357px\" \/><figcaption>TOMP-API concepts overlap GBFS concepts<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color has-medium-font-size\">The future of GBFS<\/p>\n\n\n\n<p>Whenever GBFS makes extensions, we&#8217;ll take a good look at it. Lately, GBFS 2.0 was released, containing URIs for deep links. We have added them also in the TOMP-API, despite it is actually against the vision of the TOMP workgroup, where deep linking shouldn&#8217;t be needed in the future. But nowadays it is often the only technical solution, so we decided to add these fields in the TOMP-API 1.1.0.<\/p>\n\n\n\n<p>We see that MobilityData (http:\/\/mobilitydata.org\/), the organization is working on the extension GBFS-Private. We &#8211; as TOMP working group &#8211; will cooperate together with MobilityData, trying to align with the intention of reducing the burdens on data producers and consumers. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>We are frequently asked about the relationship between the TOMP-API and several existing standards. In this post, we will clarify how the TOMP-API and GBFS are related. GBFS GBFS is<span class=\"post-excerpt-end\">&hellip;<\/span><\/p>\n<p class=\"more-link\"><a href=\"https:\/\/tomp-wg.org\/?p=178\" class=\"themebutton\">Read More<\/a><\/p>\n","protected":false},"author":2,"featured_media":192,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[9,8],"jetpack_featured_media_url":"https:\/\/tomp-wg.org\/wp-content\/uploads\/2021\/02\/TOMP-API-GBFS.png","_links":{"self":[{"href":"https:\/\/tomp-wg.org\/index.php?rest_route=\/wp\/v2\/posts\/178"}],"collection":[{"href":"https:\/\/tomp-wg.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tomp-wg.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tomp-wg.org\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/tomp-wg.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=178"}],"version-history":[{"count":7,"href":"https:\/\/tomp-wg.org\/index.php?rest_route=\/wp\/v2\/posts\/178\/revisions"}],"predecessor-version":[{"id":195,"href":"https:\/\/tomp-wg.org\/index.php?rest_route=\/wp\/v2\/posts\/178\/revisions\/195"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tomp-wg.org\/index.php?rest_route=\/wp\/v2\/media\/192"}],"wp:attachment":[{"href":"https:\/\/tomp-wg.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=178"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tomp-wg.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=178"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tomp-wg.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=178"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}