GBFSデータ+MapLibre GL JSで世界のシェアモビリティステーションマップを作成する

# はじめに
:::note info
この記事は [シェアモビリティの標準的なデータフォーマット GBFS Advent Calendar 2023](https://qiita.com/advent-calendar/2023/gbfs) 15日目の記事です。
:::
公開されている[GBFSデータ](https://raw.githubusercontent.com/NABSA/gbfs/master/systems.csv)と[MapLibre GL JS](https://maplibre.org/maplibre-gl-js/docs/)を用いて、世界のシェアモビリティステーションマップを作成してみました。

# アウトプットイメージ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/205045/b5749337-c6b2-93bf-e133-ae1e9147d3d2.png)
出典）本記事で使用したGBFSデータ[^1]

:::note info
2023年12月16日時点で取得できたGBFS由来のシェアモビリティステーション計92,418ステーションを表示しています。本記事では筆者が取得に成功したGBFSデータを根拠にステーションを表示しています。例えば、データ取得の失敗、ステーション情報の非存在、言語の問題、通信エラーやタイムアウト、公開されているデータが古い・誤っている等で実体を正確に反映しきれていない可能性があります。
:::

# データの取得
- GBFSデータ（station_information.json）を取得するために、[gbfs-client](https://pypi.org/project/gbfs-client/
)をインストールします。
```
pip install gbfs-client
```
https://pypi.org/project/gbfs-client/

:::note info
gbfs-clientでは、GBFSコミュニティによって管理されている、自転車シェアリングシステムのリスト（[systems.csv](https://raw.githubusercontent.com/NABSA/gbfs/master/systems.csv)）がサポートされているようです。systems.csvにはAuto-Discovery URLが記載されており、さらにAuto-Discovery URLにアクセスするとstation_information.jsonのURLが記載されています。
:::

- 下記の記事を参考にさせていただきながら、pythonでGBFSデータ（station_information.json）をCSV形式で取得します。  

https://qiita.com/hiskoh/items/d4fa1f032cce199ea701

```python:gbfs-station-info-dl.py
from gbfs.services import SystemDiscoveryService
import pandas as pd

ds = SystemDiscoveryService()

# システム一覧を取得
system_list = ds.systems

# ステーション一覧格納用の空DataFrameを用意
column = ["country_code", "system_name", "system_id", "station_id", "station_name", "lon", "lat"]
df = pd.DataFrame(columns=column)

# ログ情報格納用の空DataFrameを用意
log_columns = ["system_id", "status", "message", "System_Name", "Auto-Discovery URL"]
df_log = pd.DataFrame(columns=log_columns)

# システム一覧の中のシステム（サービス）を順番に処理
for system in system_list:
    # システム一覧より情報を取得
    country_code = system["Country Code"]
    system_name = system["Name"]
    system_id = system["System ID"]
    url = system["Auto-Discovery URL"]
    
    # systemID使って該当サービスのクライアントを生成
    try:
        # まずは英語のGBFSデータの取得をトライ
        client = ds.instantiate_client(system_id, "en")
    except BaseException as e:
        # 英語でのデータ公開がない場合、エラーメッセージをもとに第一言語を特定
        error_message = str(e)
        first_language = error_message.split(":")[1].split(",")[0].replace(" ", "")

        try:
            # 第一言語で再取得をトライ
            client = ds.instantiate_client(system_id, first_language)
        except:
            # それでも失敗した場合は本サービスのデータ取得は諦める
            print("言語情報の取得失敗," + system_id)
            new_log = pd.DataFrame([{"system_id": system_id, "status": "Failed", "message": "Language detection failed", "System_Name": system_name, "Auto-Discovery URL": url}])
            df_log = pd.concat([df_log, new_log], ignore_index=True)
            continue

    # 生成したクライアントの中にステーション情報が存在するか確認
    if "station_information" in client.feed_names:
        # ステーション情報が存在したとき、ステーション情報の取得を試みる
        try:
            # 取得に成功したときステーション情報を配列に格納
            stations = [
                [
                    country_code,
                    system_name,
                    system_id,
                    station["station_id"],
                    station["name"],
                    station["lon"],
                    station["lat"],
                ]
                for station in client.request_feed("station_information").get("data").get("stations")
            ]
            # ステーション情報の配列をDataFrameに追加
            df = pd.concat([df, pd.DataFrame(stations, columns=column)], ignore_index=True)
            print("ステーション取得成功！," + system_id)
            new_log = pd.DataFrame([{"system_id": system_id, "status": "Success", "message": "Stations retrieved", "System_Name": system_name, "Auto-Discovery URL": url}])
            df_log = pd.concat([df_log, new_log], ignore_index=True)
        except:
            # 取得に失敗したとき、本サービスのデータ取得は諦める
            print("ステーション情報取得失敗," + system_id)
            new_log = pd.DataFrame([{"system_id": system_id, "status": "Failed", "message": "Station information retrieval failed", "System_Name": system_name, "Auto-Discovery URL": url}])
            df_log = pd.concat([df_log, new_log], ignore_index=True)
            continue
    else:
        # ステーション情報が存在しないとき、ステーション情報が無いサービス（恐らくドッグレス型サービス）なのでデータ取得処理は行わない
        print("ステーション情報なし, " + system_id)
        new_log = pd.DataFrame([{"system_id": system_id, "status": "No Data", "message": "No station information available", "System_Name": system_name, "Auto-Discovery URL": url}])
        df_log = pd.concat([df_log, new_log], ignore_index=True)

# DataFrameをCSVファイルとして出力
df.to_csv("stations.csv", index=False)
df_log.to_csv("stations_log.csv", index=False)
```

# CSVからGeoJSON⇒PMTilesへの変換
- CSVからGeoJSONの変換には、[QGIS](https://www.qgis.org/ja/site/)を使用します。
- GeoJSONから[PMTiles](https://github.com/protomaps/PMTiles)の変換には、[feltのtippecanoe](https://github.com/felt/tippecanoe)を使用します。
:::note info
[PMTiles](https://github.com/protomaps/PMTiles)とは、特別なサーバ実装を必要とせず、大きな位置情報データの一部分を配信することを可能とするファイル形式（Cloud Optimized形式）です。GIS界隈ではCloud Optimizedが重要なキーワードになっています。
:::
- feltのtippecanoeやWSL2（Ubuntu-20.04）のインストール方法は、下記の記事を参照してください。

https://qiita.com/shi-works/items/a692b6fa12a8e834131a

- WSL2（Ubuntu-20.04）で下記のコマンドを実行してPMTilesを生成します。
```
tippecanoe -o stations.pmtiles stations.geojson -r1 -pf -pk -P
```
- tippecanoeのオプション
-r1：低ズームレベル時にポイントを間引かない（代わりにクラスタ化する）
-pf：地物数制限を無視する（1タイルあたり200,000フィーチャに制限しない）
-pk：ファイルサイズ制限を無視する（1タイルあたり500Kバイトに制限しない）
-P：並列読み込み
ただし、下記の記事によると、-Pオプションが有効なのは、GeoJSONSeqのみのようです。

https://qiita.com/Kanahiro/items/ceeb20c158b4c70b62b6

-z, -Z：ズームレベル指定
- ズームレベルを指定する場合は下記のとおりになります。
- -Z10 -z18とすると、ズームレベル10-18の範囲でタイルを生成します。
- 指定しない場合は自動的に設定されます（ズームレベル0-14）。
- 大文字のZが最小ズームレベル、小文字のzが最大ズームレベルを示すことに注意が必要です。
```
tippecanoe -o stations.pmtiles -Z10 -z18 stations.geojson -r1 -pf -pk -P
```

- 下記でズームレベルごとの地理分解能の概数がわかります。
- ズームレベル14で0.5m相当となり、これは一般的なWeb地図では十分な分解能と言えます。
- お好みでより高い精度を求めることは可能ですが、タイル数とのトレードオフになります。

https://github.com/felt/tippecanoe#zoom-levels

# PMTilesをMapLibre GL JSで表示する
- 上記の方法で生成したPMTilesとMapLibre GL JSでシェアモビリティステーションマップを作成します。
- ソースコードは下記のGitHubにて公開しています。

https://github.com/shi-works/world-share-mobility-station-map-on-maplibre-gl-js

## コードの解説
### PMTilesの読み込み
- HTMLのヘッドに、`<script src="https://unpkg.com/pmtiles@2.10.0/dist/index.js"></script>`を記述します。
```html:html
<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title>World Share Mobility Station Map（2023-12）</title>
    <meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no">
    <script src='https://unpkg.com/maplibre-gl@3.6.2/dist/maplibre-gl.js'></script>
    <link href='https://unpkg.com/maplibre-gl@3.6.2/dist/maplibre-gl.css' rel='stylesheet' />
    <script src="https://unpkg.com/pmtiles@2.10.0/dist/index.js"></script>
```
- addProtocolの設定を行い、PMTilesのURLを記述します。
```javascript:javascript
        // addProtocolの設定
        let protocol = new pmtiles.Protocol();
        maplibregl.addProtocol("pmtiles", protocol.tile);

        // （中略）

        map.on('load', () => {

            // （中略）

            // GBFS-stationsソース
            map.addSource("pmtiles-stations", {
                type: "vector",
                url: "pmtiles://" + "PMTilesのURLを入力してください",
                attribution: '<a href="https://github.com/MobilityData/gbfs/blob/master/systems.csv">MobilityData</a>'
            });
```
### レイヤの表示（ポイント）
- `map.addLayer`でシェアサイクルのポイントデータをレイヤとして表示します。
- [グロー(発光)エフェクト](https://note.com/mapbox_japan/n/n631895b30a5f)を適用するために、ポイントデータのレイヤーを3つ重ねています。
:::note info
「グロー(発光)エフェクト」とは、John M. Nelson氏が開発したカートグラフィー(地図製作)の手法のひとつで、マッピングしたデータを発光しているかのように表現するテクニックです。（引用元：Mapbox Japanの公式note）
:::
```javascript:javascript
            // stationsポイントレイヤ
            map.addLayer({
                id: 'stations-points-1',
                type: 'circle',
                source: 'pmtiles-stations',
                "source-layer": 'stations',
                minzoom: 0,
                maxzoom: 23,
                paint: {
                    'circle-color': '#6ff77c',
                    'circle-radius': 15,
                    'circle-blur': 3,
                    'circle-opacity': 0.8
                }
            });

            // stationsポイントレイヤ
            map.addLayer({
                id: 'stations-points-2',
                type: 'circle',
                source: 'pmtiles-stations',
                "source-layer": 'stations',
                minzoom: 0,
                maxzoom: 23,
                paint: {
                    'circle-color': '#00ff37',
                    'circle-radius': 7.5,
                    'circle-blur': 3,
                    'circle-opacity': 0.8
                }
            });

            // stationsポイントレイヤ
            map.addLayer({
                id: 'stations-points-3',
                type: 'circle',
                source: 'pmtiles-stations',
                "source-layer": 'stations',
                minzoom: 0,
                maxzoom: 23,
                paint: {
                    'circle-color': '#ffffff',
                    'circle-radius': 1.5,
                    'circle-blur': 0,
                    'circle-opacity': 1
                }
            });
```

## 東京
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/205045/ef68d328-3810-407d-c775-9fc03be67b4b.png)

## スイス
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/205045/a53882f0-6eb6-5c8d-d485-fbee21d5e2f9.png)

## オランダ・ベルギー・ドイツ（一部）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/205045/f41db77a-8d38-f34c-9bba-b1dedb2a7aec.png)

出典）本記事で使用したGBFSデータ[^1]

# おわりに
GBFSデータ+MapLibre GL JSでシェアモビリティステーションマップを作成する方法についてご紹介しました。[**GBFSはオープンデータライセンスを推奨する規格**](https://github.com/MobilityData/gbfs/blob/master/gbfs.md#licensing
)ですが、データ自体のライセンスはおそらく事業者に委ねられていると思いますので、今回、作成したデータの公開は控えようと思います。皆さんも取り扱う際には気を付けましょう。最後に、GBFSデータ+MapLibre GL JSを用いたWebマップについては、下記でも記事を書いていますので、あわせてご覧ください。

https://qiita.com/shi-works/items/f13dd3cf133fcfd8897e

[^1]: 本記事で使用したGBFSデータは下記の通りとなります。
Careem BIKE https://dubai.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Bike Nordelta https://nordelta.publicbikesystem.net/ube/gbfs/v1/
Ecobici https://buenosaires.publicbikesystem.net/ube/gbfs/v1/
city bike Linz https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_al/gbfs.json
nextbike Burgenland Austria https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_na/gbfs.json
nextbike Klagenfurt Austria https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ka/gbfs.json
nextbike Niederösterreich Austria https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_la/gbfs.json
Stadtrad Innsbruck Austria https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_si/gbfs.json
VVT REGIORAD Tirol https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_vt/gbfs.json
WienMobil Rad https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_wr/gbfs.json
Neuron Mobility https://mds-global-dud.neuron-mobility.com/gbfs/2/
Greenbike Aruba https://aruba.publicbikesystem.net/customer/gbfs/v2/gbfs.json
BL bike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bj/gbfs.json
nextbike BIH https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ba/gbfs.json
Zenica https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bz/gbfs.json
Bird Antwerp https://mds.bird.co/gbfs/v2/public/antwerp/gbfs.json
Blue-bike https://api.delijn.be/gbfs/gbfs.json
Bolt OÜ https://mds.bolt.eu/gbfs/2/336/gbfs
Donkey Republic Antwerp https://stables.donkey.bike/api/public/gbfs/2/donkey_antwerp/gbfs.json
Donkey Republic Ghent https://stables.donkey.bike/api/public/gbfs/2/donkey_gh/gbfs.json
Donkey Republic Kortrijk & Leiedal https://stables.donkey.bike/api/public/gbfs/2/donkey_kortrijk_leiedal/gbfs
Hoppy https://eu-mobility.joyride.tech/api/v1/gbfs/a640fd4b-5a16-48c6-9aa2-d72674caf5f8/3e98a50a40a54d4884c6aa01d8c18510/gbfs.json
Hoppy https://eu-mobility.joyride.tech/api/v1/gbfs/a640fd4b-5a16-48c6-9aa2-d72674caf5f8/2a29c4c627e14399a19436855d25ceb9/gbfs.json
Hoppy https://eu-mobility.joyride.tech/api/v1/gbfs/a640fd4b-5a16-48c6-9aa2-d72674caf5f8/57cb68a183234d0189474e7122944d81/gbfs.json
Lime Antwerp https://data.lime.bike/api/partners/v2/gbfs/antwerp/gbfs.json
Lime Brussels https://data.lime.bike/api/partners/v2/gbfs/brussels/gbfs.json
Pony Brussels https://gbfs.getapony.com/v1/brussels/en/gbfs.json
Pony Charleroi https://gbfs.getapony.com/v1/charleroi/en/gbfs.json
Pony Liège https://gbfs.getapony.com/v1/liege/en/gbfs.json
Pony Namur https://gbfs.getapony.com/v1/namur/en/gbfs.json
Velo Antwerpen https://gbfs.smartbike.com/antwerp/1.0/gbfs.json
Voi Marseille https://api.voiapp.io/gbfs/fr/6bb6b5dc-1cda-4da7-9216-d3023a0bc54a/gbfs.json
nextbike Bulgaria https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bg/gbfs.json
Bike Itaú - Pernambuco https://rec.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Bike Itaú - Poa https://poa.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Bike Itaú - Rio https://riodejaneiro.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Bike Itaú - Riviera https://riviera.publicbikesystem.net/ube/gbfs/v1/
Bike Itaú - Salvador https://salvador.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Bike Itaú - Sampa https://saopaulo.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Accès Vélo https://saguenay.publicbikesystem.net/customer/gbfs/v2/gbfs.json
àVélo https://quebec.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Bike Share Toronto https://tor.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Bird Calgary https://mds.bird.co/gbfs/v2/public/calgary/gbfs.json
Bird Edmonton https://mds.bird.co/gbfs/v2/public/edmonton/gbfs.json
Bird Ottawa https://mds.bird.co/gbfs/v2/public/ottawa/gbfs.json
BIXI Montréal https://gbfs.velobixi.com/gbfs/gbfs.json
Lime Calgary https://data.lime.bike/api/partners/v2/gbfs/calgary/gbfs.json
Lime Edmonton https://data.lime.bike/api/partners/v2/gbfs/edmonton/gbfs.json
Lime Kelowna https://data.lime.bike/api/partners/v2/gbfs/kelowna/gbfs.json
Lime Ottawa https://data.lime.bike/api/partners/v2/gbfs/ottawa/gbfs.json
Mobi Bike Share https://vancouver-gbfs.smoove.pro/gbfs/2/gbfs.json
Sobi Hamilton https://hamilton.socialbicycles.com/opendata/gbfs.json
Spin Edmonton https://gbfs.spin.pm/api/gbfs/v2_3/edmonton/gbfs
Spin Kelowna https://gbfs.spin.pm/api/gbfs/v2_3/kelowna/gbfs.json
Bird Basel https://mds.bird.co/gbfs/v2/public/basel/gbfs.json
Bird Biel https://mds.bird.co/gbfs/v2/public/biel/gbfs.json
Bird Bulle https://mds.bird.co/gbfs/v2/public/bulle/gbfs.json
Bird Uster https://mds.bird.co/gbfs/v2/public/uster/gbfs.json
Bird Winterthur https://mds.bird.co/gbfs/v2/public/winterthur/gbfs.json
Bird Zurich https://mds.bird.co/gbfs/v2/public/zurich/gbfs.json
Donkey Republic Geneva https://stables.donkey.bike/api/public/gbfs/2/donkey_ge/gbfs
Donkey Republic Kreuzlingen https://stables.donkey.bike/api/public/gbfs/2/donkey_kreuzlingen/gbfs.json
Donkey Republic Le Locle https://stables.donkey.bike/api/public/gbfs/2/donkey_le_locle/gbfs
Donkey Republic Neuchâtel https://stables.donkey.bike/api/public/gbfs/2/donkey_neuchatel/gbfs.json
Donkey Republic Sion https://stables.donkey.bike/api/public/gbfs/2/donkey_sion/gbfs.json
Donkey Republic Thun https://stables.donkey.bike/api/public/gbfs/2/donkey_thun/gbfs.json
Donkey Republic Yverdon-les-Bains https://stables.donkey.bike/api/public/gbfs/2/donkey_yverdon-les-bains/gbfs.json
Lime Opfikon https://data.lime.bike/api/partners/v2/gbfs/opfikon/gbfs.json
Lime Zug https://data.lime.bike/api/partners/v2/gbfs/zug/gbfs.json
nextbike Switzerland https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ch/gbfs.json
PubliBike https://api.publibike.ch/v1/gbfs/v2/gbfs.json
Share Birrer https://www.share-birrer.ch/gbfs/gbfs.json
sharedmobility.ch https://www.sharedmobility.ch/gbfs.json
Bike Itaú - Santiago https://santiagodc.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Bogotá https://bogota.publicbikesystem.net/customer/gbfs/v2/gbfs.json
nextbike Cyprus https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cy/gbfs.json
Velespeed https://nicosia.publicbikesystem.net/customer/gbfs/v2/gbfs.json
nextbike Benešov https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_co/gbfs.json
nextbike Berounsko https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_td/gbfs.json
nextbike Brno https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_te/gbfs.json
nextbike Česká Třebová https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_nc/gbfs.json
nextbike Dvůr Králové https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tf/gbfs.json
nextbike Frýdek-Místek https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ts/gbfs.json
nextbike Havířov https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_th/gbfs.json
nextbike Hořice https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_uf/gbfs.json
nextbike Hradec Králové https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tl/gbfs.json
nextbike Jablonec https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ud/gbfs.json
nextbike Jihlava https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tz/gbfs.json
nextbike Kladno https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tk/gbfs.json
nextbike Klášterec nad Ohří https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ko/gbfs.json
nextbike Krnov https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tw/gbfs.json
nextbike Liberec https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_xa/gbfs.json
nextbike Mladoboleslavsko https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tq/gbfs.json
nextbike Moravská Třebová https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_xc/gbfs.json
nextbike Olomouc https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ti/gbfs.json
nextbike Opava https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tj/gbfs.json
nextbike Ostrava https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_to/gbfs.json
nextbike Pardubice https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tm/gbfs.json
nextbike Pelhřimov https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cq/gbfs.json
nextbike Písek https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ty/gbfs.json
nextbike Praha https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tg/gbfs.json
nextbike Přerov https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_nr/gbfs.json
nextbike Prostejov https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cz/gbfs.json
nextbike Rychnovsko https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tx/gbfs.json
nextbike Třebíč https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tu/gbfs.json
nextbike Uherské Hradiště https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tt/gbfs.json
nextbike Vrchlabí https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_vr/gbfs.json
nextbike Zlín https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tv/gbfs.json
AB mit Lara https://abmitlara.de/wp-json/commonsbooking/v1/gbfs.json
BARshare Barnim All https://opendata.bbnavi.de/barshare/all/gbfs.json
BARshare Barnim Bikes https://opendata.bbnavi.de/barshare/bicycle/gbfs.json
BARshare Barnim Cargo Bikes https://opendata.bbnavi.de/barshare/other/gbfs.json
BARshare Barnim Cars https://opendata.bbnavi.de/barshare/car/gbfs.json
Bergisches e-Bike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ac/gbfs.json
Bird Ulm https://mds.bird.co/gbfs/v2/public/ulm/gbfs.json
Bonn nextbike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bf/gbfs.json
Donkey Republic Bamberg https://stables.donkey.bike/api/public/gbfs/2/donkey_bamberg/gbfs.json
Donkey Republic Berlin https://stables.donkey.bike/api/public/gbfs/2/donkey_berlin/gbfs.json
Donkey Republic Freiburg https://stables.donkey.bike/api/public/gbfs/2/donkey_freiburg/gbfs.json
Donkey Republic Kiel https://stables.donkey.bike/api/public/gbfs/2/donkey_kiel/gbfs.json
Donkey Republic Munich https://stables.donkey.bike/api/public/gbfs/2/donkey_munich/gbfs.json
Donkey Republic Regensburg https://stables.donkey.bike/api/public/gbfs/2/donkey_regensburg/gbfs.json
EDEKA Grünheide https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ed/gbfs.json
Eifel e-Bike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_eb/gbfs.json
EinfachMobil https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_eh/gbfs.json
fLotte Brandenburg https://opendata.bbnavi.de/flotte/flotte-brandenburg/gbfs.json
Frelo Freiburg https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_df/gbfs.json
Graben - ready4green https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_da/gbfs.json
Heraeus Hanau https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_hg/gbfs.json
KVB Rad Germany https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_kg/gbfs.json
KVV.nextbike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_fg/gbfs.json
Landkreis Nordsachsen - Deutschland https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_lc/gbfs.json
Lastenvelo Freiburg https://www.mobidata-bw.de/data/LastenveloFR/gbfs.json
Leipzzzig Sandkasten https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_sk/gbfs.json
Lime Frankfurt https://data.lime.bike/api/partners/v2/gbfs/frankfurt/gbfs.json
Lime Hamburg https://data.lime.bike/api/partners/v2/gbfs/hamburg/gbfs.json
Lime Oberhausen https://data.lime.bike/api/partners/v2/gbfs/oberhausen/gbfs.json
Lime Reutlingen https://data.lime.bike/api/partners/v2/gbfs/reutlingen/gbfs.json
Lime Solingen https://data.lime.bike/api/partners/v2/gbfs/solingen/gbfs.json
meinRad https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_mz/gbfs.json
meinSiggi https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dg/gbfs.json
metropolradruhr Germany https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_mr/gbfs.json
MOBIbike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dx/gbfs.json
mobic https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_re/gbfs.json
MV-Rad https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_um/gbfs.json
NEW MöBus nextbike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_sn/gbfs.json
nextbike Berlin https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bn/gbfs.json
nextbike Düsseldorf https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dd/gbfs.json
nextbike Erlangen https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_er/gbfs.json
nextbike Frankfurt https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ff/gbfs.json
nextbike Gießen https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ng/gbfs.json
nextbike Gütersloh https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dj/gbfs.json
nextbike Kassel https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dk/gbfs.json
nextbike Leipzig https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_le/gbfs.json
nextbike Lippstadt https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_li/gbfs.json
nextbike Marburg https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_nm/gbfs.json
nextbike Norderstedt https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_nn/gbfs.json
nextbike Rüsselsheim am Main https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_do/gbfs.json
nextbike Wiesbaden https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_wn/gbfs.json
Nibelungen-Bike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dn/gbfs.json
OLi-Bike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_wo/gbfs.json
Potsdam Rad https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dc/gbfs.json
Roxy Freiburg https://roxy.rideatom.com/gbfs/v2_2/en/gbfs?id=1227
RSVG-Bike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_rb/gbfs.json
RVK https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dr/gbfs.json
SAP Walldorf https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ds/gbfs.json
sprintRAD https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dh/gbfs.json
stadtmobil carsharing Stuttgart https://www.mobidata-bw.de/data/stadtmobil-S/gbfs.json
StadtRad Greifswald https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ug/gbfs.json
SWA Rad https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ag/gbfs.json
Tecklenburger Land https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_lt/gbfs.json
UsedomRad Germany https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ur/gbfs.json
VAG_Rad https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dv/gbfs.json
Velocity Aachen https://nitro.openvelo.org/aachen/velocity/v2/gbfs.json
VRNnextbike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_vn/gbfs.json
westBike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_gh/gbfs.json
WinsenRad https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_wd/gbfs.json
WK-Bike (Bremen) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_wk/gbfs.json
wupsiRad Leverkusen https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_dw/gbfs.json
Yoio Freiburg https://yoio.rideatom.com/gbfs/v2_2/en/gbfs?id=71
Donkey Republic Aalborg https://stables.donkey.bike/api/public/gbfs/2/donkey_aalborg/gbfs.json
Donkey Republic Aarhus https://stables.donkey.bike/api/public/gbfs/2/donkey_aarhus/gbfs.json
Donkey Republic Ballerup https://stables.donkey.bike/api/public/gbfs/2/donkey_ballerup/gbfs.json
Donkey Republic Bandholm https://stables.donkey.bike/api/public/gbfs/2/donkey_bandholm/gbfs.json
Donkey Republic Copenhagen https://stables.donkey.bike/api/public/gbfs/2/donkey_copenhagen/gbfs.json
Donkey Republic Frederikshavn https://stables.donkey.bike/api/public/gbfs/2/donkey_frederikshavn/gbfs.json
Donkey Republic Glostrup https://stables.donkey.bike/api/public/gbfs/2/donkey_glostrup/gbfs.json
Donkey Republic Herning https://stables.donkey.bike/api/public/gbfs/2/donkey_herning/gbfs.json
Donkey Republic Hillerød https://stables.donkey.bike/api/public/gbfs/2/donkey_hillerod/gbfs
Donkey Republic Klampenborg https://stables.donkey.bike/api/public/gbfs/2/donkey_klampenborg/gbfs.json
Donkey Republic Lalandia (Rødby) https://stables.donkey.bike/api/public/gbfs/2/donkey_lalandia/gbfs.json
Donkey Republic Middelfart https://stables.donkey.bike/api/public/gbfs/2/donkey_middelfart/gbfs.json
Donkey Republic Odense https://stables.donkey.bike/api/public/gbfs/2/donkey_odense/gbfs.json
Donkey Republic Rødvig https://stables.donkey.bike/api/public/gbfs/2/donkey_roedvig/gbfs.json
Donkey Republic Store Heddinge https://stables.donkey.bike/api/public/gbfs/2/donkey_store_heddinge/gbfs.json
Ambici https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bs/gbfs.json
Bicicoruña https://acoruna.publicbikesystem.net/customer/gbfs/v2/gbfs.json
bicimad https://madrid.publicbikesystem.net/customer/gbfs/v2/gbfs.json
BiciMAD (unofficial) https://gbfs.bici.madrid/gbfs.json
BiciMislata Mislata https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ad/gbfs.json
Bike Barcelona https://barcelona.publicbikesystem.net/customer/gbfs/v2/gbfs.json
BiciPalma https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ea/gbfs.json
Bilbaobizi (Bilbao) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bo/gbfs.json
Bird Madrid https://mds.bird.co/gbfs/v2/public/madrid/gbfs.json
Bird Zaragoza https://mds.bird.co/gbfs/v2/public/zaragoza/gbfs.json
Dbizi https://sansebastian.publicbikesystem.net/ube/gbfs/v1/
Getxobizi https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ex/gbfs.json
ibizi https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ei/gbfs.json
Lovesharing (Canary Islands) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ls/gbfs.json
nextbike León https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_sl/gbfs.json
Sitycleta (Las Palmas) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_el/gbfs.json
Valladolid https://valladolid.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Donkey Republic Hämeenlinna https://stables.donkey.bike/api/public/gbfs/2/donkey_haemeenlinna/gbfs.json
Donkey Republic Hamina https://stables.donkey.bike/api/public/gbfs/2/donkey_hamina/gbfs.json
Donkey Republic Hyvinkää https://stables.donkey.bike/api/public/gbfs/2/donkey_hyvinkaa/gbfs
Donkey Republic Iisalmi https://stables.donkey.bike/api/public/gbfs/2/donkey_iisalmi/gbfs.json
Donkey Republic Imatra https://stables.donkey.bike/api/public/gbfs/2/donkey_imatra/gbfs.json
Donkey Republic Kotka https://stables.donkey.bike/api/public/gbfs/2/donkey_kotka/gbfs.json
Donkey Republic Kouvola https://stables.donkey.bike/api/public/gbfs/2/donkey_kouvola/gbfs.json
Donkey Republic Lappeenranta https://stables.donkey.bike/api/public/gbfs/2/donkey_lappeenranta/gbfs.json
Donkey Republic Mäntsälä https://stables.donkey.bike/api/public/gbfs/2/donkey_maentsaelae/gbfs.json
Donkey Republic Mikkeli https://stables.donkey.bike/api/public/gbfs/2/donkey_mikkeli/gbfs
Donkey Republic Porvoo https://stables.donkey.bike/api/public/gbfs/2/donkey_porvoo/gbfs.json
Donkey Republic Raasepori https://stables.donkey.bike/api/public/gbfs/2/donkey_raasepori/gbfs
Donkey Republic Riihimäki https://stables.donkey.bike/api/public/gbfs/2/donkey_riihimaki/gbfs
Donkey Republic Turku https://stables.donkey.bike/api/public/gbfs/2/donkey_turku/gbfs.json
Joe Rauma https://joe.rideatom.com/gbfs/v2_2/en/gbfs?id=475
Oulu Poland https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_fo/gbfs.json
Bicloo https://transport.data.gouv.fr/gbfs/nantes/gbfs.json
Bird Bordeaux https://mds.bird.co/gbfs/v2/public/bordeaux/gbfs.json
Bird Castres https://mds.bird.co/gbfs/v2/public/castres/gbfs.json
Bird Chalonsenchampagne https://mds.bird.co/gbfs/v2/public/chalonsenchampagne/gbfs.json
Bird Dieppe https://mds.bird.co/gbfs/v2/public/dieppe/gbfs.json
Bird Draguignan https://mds.bird.co/gbfs/v2/public/draguignan/gbfs.json
Bird Epron https://mds.bird.co/gbfs/v2/public/epron/gbfs.json
Bird Herouvillesaintclair https://mds.bird.co/gbfs/v2/public/herouvillesaintclair/gbfs.json
Bird Larochesuryon https://mds.bird.co/gbfs/v2/public/larochesuryon/gbfs.json
Bird Laval https://mds.bird.co/gbfs/v2/public/laval/gbfs.json
Bird Marseille https://mds.bird.co/gbfs/v2/public/marseille/gbfs.json
Bird Millau https://mds.bird.co/gbfs/v2/public/millau/gbfs.json
Bird Montlucon https://mds.bird.co/gbfs/v2/public/montlucon/gbfs.json
Bird Ouistreham https://mds.bird.co/gbfs/v2/public/ouistreham/gbfs.json
Bird Sarreguemines https://mds.bird.co/gbfs/v2/public/sarreguemines/gbfs.json
Bird Vichy https://mds.bird.co/gbfs/v2/public/vichy/gbfs.json
CristoLib https://transport.data.gouv.fr/gbfs/creteil/gbfs.json
C-Vélo https://clermontferrand.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Donkey Republic Brest https://stables.donkey.bike/api/public/gbfs/2/donkey_brest/gbfs.json
Donkey Republic Valenciennes https://stables.donkey.bike/api/public/gbfs/2/donkey_valenciennes/gbfs.json
LE vélo STAR https://eu.ftp.opendatasoft.com/star/gbfs/gbfs.json
Libélo https://valence.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Lime Marseille https://data.lime.bike/api/partners/v2/gbfs/marseille/gbfs.json
Lime Paris https://data.lime.bike/api/partners/v2/gbfs/paris/gbfs.json
Optymo Belfort https://belfort-gbfs.klervi.net/gbfs/gbfs.json
Pony Angers https://gbfs.getapony.com/v1/angers/en/gbfs.json
Pony Basque Country https://gbfs.getapony.com/v1/basque_country/en/gbfs.json
Pony Beauvais https://gbfs.getapony.com/v1/beauvais/en/gbfs.json
Pony Beziers https://gbfs.getapony.com/v1/beziers/en/gbfs.json
Pony Bourges https://gbfs.getapony.com/v1/bourges/en/gbfs.json
Pony Bordeaux https://gbfs.getapony.com/v1/bordeaux/en/gbfs.json
Pony Evry https://gbfs.getapony.com/v1/evry/en/gbfs.json
Pony Grenoble https://gbfs.getapony.com/v1/grenoble/en/gbfs.json
Pony Herouville https://gbfs.getapony.com/v1/herouville/en/gbfs.json
Pony La Roche-sur-Yon https://gbfs.getapony.com/v1/la_roche_sur_yon/en/gbfs.json
Pony Limoges https://gbfs.getapony.com/v1/limoges/en/gbfs.json
Pony Lorient https://gbfs.getapony.com/v1/lorient/en/gbfs.json
Pony Olivet https://gbfs.getapony.com/v1/olivet/en/gbfs.json
Pony Paris https://gbfs.getapony.com/v1/paris/en/gbfs.json
Pony Perpignan https://gbfs.getapony.com/v1/perpignan/en/gbfs.json
Pony Poitiers https://gbfs.getapony.com/v1/poitiers/en/gbfs.json
Pony Project Hectar https://gbfs.getapony.com/v1/project_hectar/en/gbfs.json
VCub Bordeaux https://transport.data.gouv.fr/gbfs/vcub/gbfs.json
Vélam https://transport.data.gouv.fr/gbfs/amiens/gbfs.json
Vélivert https://saint-etienne-gbfs.klervi.net/gbfs/gbfs.json
VélO2 https://transport.data.gouv.fr/gbfs/cergy-pontoise/gbfs.json
Vélocéo https://vannes-gbfs.klervi.net/gbfs/gbfs.json
VéloCité https://transport.data.gouv.fr/gbfs/besancon/gbfs.json
VéloCité https://transport.data.gouv.fr/gbfs/mulhouse/gbfs.json
Vélomagg' https://montpellier-fr-smoove.klervi.net/gbfs/gbfs.json
Vélopop https://avignon-gbfs.klervi.net/gbfs/gbfs.json
VélOstan'lib https://transport.data.gouv.fr/gbfs/nancy/gbfs.json
VélÔToulouse https://transport.data.gouv.fr/gbfs/toulouse/gbfs.json
Vélo'v https://transport.data.gouv.fr/gbfs/lyon/gbfs.json
Vélivert (Saint-Étienne) https://api.saint-etienne-metropole.fr/velivert/api/gbfs/gbfs.json
VélYcéo https://api.gbfs.v1.ecovelo.mobi/gbfs/velyceo
V'lille https://transport.data.gouv.fr/gbfs/vlille/gbfs.json
BelfastBikes https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bu/gbfs.json
Beryl - BCP https://gbfs.beryl.cc/v2_2/BCP/gbfs.json
Beryl - Brighton https://gbfs.beryl.cc/v2_2/Brighton/gbfs.json
Beryl - Cornwall https://gbfs.beryl.cc/v2_2/Cornwall/gbfs.json
Beryl - Greater Manchester https://gbfs.beryl.cc/v2_2/Greater_Manchester/gbfs.json
Beryl  - Hackney Cargo Bike https://gbfs.beryl.cc/v2_2/Hackney_Cargo_Bike/gbfs.json
Beryl - Hereford https://gbfs.beryl.cc/v2_2/Hereford/gbfs.json
Beryl - Hertsmere https://gbfs.beryl.cc/v2_2/Hertsmere/gbfs.json
Beryl - Isle of Wight https://gbfs.beryl.cc/v2_2/Isle_of_Wight/gbfs.json
Beryl - Leeds https://gbfs.beryl.cc/v2_2/Leeds/gbfs.json
Beryl - London https://gbfs.beryl.cc/v2_2/London/gbfs.json
Beryl - Norwich https://gbfs.beryl.cc/v2_2/Norwich/gbfs.json
Beryl - Plymouth https://gbfs.beryl.cc/v2_2/Plymouth/gbfs.json
Beryl - Portsmouth https://gbfs.beryl.cc/v2_2/Portsmouth/gbfs.json
Beryl - Southampton https://gbfs.beryl.cc/v2_2/Southampton/gbfs.json
Beryl - Watford https://gbfs.beryl.cc/v2_2/Watford/gbfs.json
Beryl - West Midlands https://gbfs.beryl.cc/v2_2/West_Midlands/gbfs.json
Beryl - Westminster Cargo Bike https://gbfs.beryl.cc/v2_2/Westminster_Cargo_Bike/gbfs.json
Beryl - Wool https://gbfs.beryl.cc/v2_2/Wool/gbfs.json
Co-bikes https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_eu/gbfs.json
Demoland https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tb/gbfs.json
Donkey Republic Charlbury https://stables.donkey.bike/api/public/gbfs/2/donkey_charlbury/gbfs.json
Donkey Republic Cheltenham Spa https://stables.donkey.bike/api/public/gbfs/2/donkey_cheltenham_spa/gbfs.json
Donkey Republic Cirencester https://stables.donkey.bike/api/public/gbfs/2/donkey_cirencester/gbfs.json
Donkey Republic Henley On Thames https://stables.donkey.bike/api/public/gbfs/2/donkey_henley_on_thames/gbfs.json
Donkey Republic Kingham https://stables.donkey.bike/api/public/gbfs/2/donkey_kingham/gbfs.json
Donkey Republic Milton Park https://stables.donkey.bike/api/public/gbfs/2/donkey_miltonpark/gbfs
Donkey Republic Moreton In Marsh https://stables.donkey.bike/api/public/gbfs/2/donkey_moreton_in_marsh/gbfs.json
Donkey Republic Northleach https://stables.donkey.bike/api/public/gbfs/2/donkey_northleach/gbfs.json
Donkey Republic Oxford https://stables.donkey.bike/api/public/gbfs/2/donkey_oxford/gbfs.json
Donkey Republic Plymouth https://stables.donkey.bike/api/public/gbfs/2/donkey_plymouth/gbfs.json
Donkey Republic Stroud https://stables.donkey.bike/api/public/gbfs/2/donkey_stroud/gbfs.json
Donkey Republic Tetbury https://stables.donkey.bike/api/public/gbfs/2/donkey_tetbury/gbfs.json
Donkey Republic The Cotswold Water Park https://stables.donkey.bike/api/public/gbfs/2/donkey_the_cotswold_water_park/gbfs.json
Donkey Republic Whichford https://stables.donkey.bike/api/public/gbfs/2/donkey_whichford/gbfs.json
Donkey Republic Worthing https://stables.donkey.bike/api/public/gbfs/2/donkey_worthing/gbfs.json
nextbike Stirling https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_uk/gbfs.json
OVO Bikes Cardiff & Vale of Glamorgan https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_uc/gbfs.json
OVO Bikes Glasgow https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_gg/gbfs.json
Santander Cycles - Brunel https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ub/gbfs.json
Santander Cycles - Milton Keynes https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ku/gbfs.json
Santander Cycles - Swansea https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_uu/gbfs.json
eMobi (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_em/gbfs.json
Grad Drniš (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_gd/gbfs.json
Grad Ivanić-Grad (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ig/gbfs.json
Grad Karlovac (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_kc/gbfs.json
Grad Križevci (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_gk/gbfs.json
Grad Makarska (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ma/gbfs.json
Grad Metković (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cm/gbfs.json
Grad Pula (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_gs/gbfs.json
Grad Šibenik (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bc/gbfs.json
Grad Sisak (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cs/gbfs.json
Grad Slavonski Brod (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_sb/gbfs.json
Grad Split (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_gt/gbfs.json
Grad Velika Gorica (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cg/gbfs.json
Grad Vukovar (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_vu/gbfs.json
Grad Zadar (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_zd/gbfs.json
Grad Zaprešić (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_sg/gbfs.json
Hvar https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ol/gbfs.json
Jastrebarsko (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cj/gbfs.json
nextbike Croatia https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_hr/gbfs.json
Općina Brinje (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_br/gbfs.json
Općina Pitomača (Croatia) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_se/gbfs.json
Donkey Republic Budapest https://stables.donkey.bike/api/public/gbfs/2/donkey_budapest/gbfs.json
MOL Bubi https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bh/gbfs.json
Castletroy Bikes (Ireland) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_lm/gbfs.json
Navan Bikes (Ireland) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ll/gbfs.json
Bird Tel Aviv https://mds.bird.co/gbfs/v2/public/tel-aviv/gbfs.json
Lime Tel Aviv https://data.lime.bike/api/partners/v2/gbfs/tel_aviv/gbfs.json
Donkey Republic Reykjavik https://stables.donkey.bike/api/public/gbfs/2/donkey_reykjavik/gbfs.json
ARVAL https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ia/gbfs.json
Bird Rome https://mds.bird.co/gbfs/v2/public/rome/gbfs.json
Helbiz Waterloo https://gbfs.helbiz.com/v2.2/waterloo/gbfs.json
Lime Rome https://data.lime.bike/api/partners/v2/gbfs/rome/gbfs.json
Lime Verona https://data.lime.bike/api/partners/v2/gbfs/verona/gbfs.json
Milan Bikemi https://gbfs.urbansharing.com/bikemi.com/gbfs.json
nextbike Bergamo https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ib/gbfs.json
Verona Bike https://gbfs.urbansharing.com/bikeverona.it/gbfs.json
docomo bike share service https://api-public.odpt.org/api/v4/gbfs/docomo-cycle/gbfs.json
docomo bike share service https://api-public.odpt.org/api/v4/gbfs/docomo-cycle-tokyo/gbfs.json
HELLO CYCLING https://api-public.odpt.org/api/v4/gbfs/hellocycling/gbfs.json
Donkey Republic Liechtenstein https://stables.donkey.bike/api/public/gbfs/2/donkey_li/gbfs.json
nextbike LV https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_lv/gbfs.json
MonaBike https://monaco.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Ecobici https://gbfs.mex.lyftbikes.com/gbfs/gbfs.json
Mibici Guadalajara https://guadalajara-mx.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Cykl https://www.cykl.nl/gbfs/gbfs.json
Donkey Republic Amsterdam https://stables.donkey.bike/api/public/gbfs/2/donkey_am/gbfs.json
Donkey Republic Den Haag https://stables.donkey.bike/api/public/gbfs/2/donkey_den_haag/gbfs.json
Donkey Republic Dordrecht https://stables.donkey.bike/api/public/gbfs/2/donkey_dordrecht/gbfs.json
Donkey Republic Gorinchem https://stables.donkey.bike/api/public/gbfs/2/donkey_gorinchem/gbfs.json
Donkey Republic Rotterdam https://stables.donkey.bike/api/public/gbfs/2/donkey_rt/gbfs.json
Donkey Republic Rotterdam/Den Haag https://stables.donkey.bike/api/public/gbfs/2/donkey_rotterdam_den_haag/gbfs
Donkey Republic Utrecht https://stables.donkey.bike/api/public/gbfs/2/donkey_ut/gbfs.json
Donkey Republic Utrechtse Heuvelrug https://stables.donkey.bike/api/public/gbfs/2/donkey_utrechtse_heuvelrug/gbfs.json
GoAbout https://gbfs.goabout.com/2/gbfs.json
NS OV Fiets http://gbfs.openov.nl/ovfiets/gbfs.json
Bergen Bysykkel https://api.entur.io/mobility/v2/gbfs/bergenbysykkel/gbfs
Bergen City Bike https://gbfs.urbansharing.com/bergenbysykkel.no/gbfs.json
Brakar Bysykkel https://api.entur.io/mobility/v2/gbfs/brakarbysykkel/gbfs
Hertz Bildeling https://api.entur.io/mobility/v2/gbfs/hertzbildeling/gbfs
Hyre https://api.entur.io/mobility/v2/gbfs/hyrenorge/gbfs
Kolumbus Bysykkel https://api.entur.io/mobility/v2/gbfs/kolumbusbysykkel/gbfs
Otto https://api.entur.io/mobility/v2/gbfs/otto/gbfs
Oslo Bysykkel https://api.entur.io/mobility/v2/gbfs/oslobysykkel/gbfs
Trondheim Bysykkel https://api.entur.io/mobility/v2/gbfs/trondheimbysykkel/gbfs
Flamingo Palerston North https://data.rideflamingo.com/gbfs/palmerston-north/gbfs.json
Flamingo Waimakariri https://data.rideflamingo.com/gbfs/waimakariri/gbfs.json
Flamingo Wellington https://data.rideflamingo.com/gbfs/wellington/gbfs.json
ŁoKeR - Łomża https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_oa/gbfs.json
MEVO https://gbfs.urbansharing.com/rowermevo.pl/gbfs.json
Rowerowe Łódzkie Poland (RL) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_pw/gbfs.json
WRM nextbike Poland https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_pl/gbfs.json
Bird Braga https://mds.bird.co/gbfs/v2/public/braga/gbfs.json
Bird Cascais https://mds.bird.co/gbfs/v2/public/cascais/gbfs.json
Bird Lisbon https://mds.bird.co/gbfs/v2/public/lisbon/gbfs.json
Buzau VeloCity https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_bv/gbfs.json
Drobeta Velopark https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_rd/gbfs.json
nextbike Romania https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_nw/gbfs.json
Saturn https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_rs/gbfs.json
Sibiu BikeCity https://sibiu.publicbikesystem.net/operation/customer/gbfs/v2/gbfs.json
Topoloveni Bike https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_rt/gbfs.json
Velo Sântana https://santana.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Donkey Republic Ängelholm https://stables.donkey.bike/api/public/gbfs/2/donkey_aengelholm/gbfs.json
Donkey Republic Båstad https://stables.donkey.bike/api/public/gbfs/2/donkey_baastad/gbfs.json
Donkey Republic Malmö https://stables.donkey.bike/api/public/gbfs/2/donkey_malmoe/gbfs.json
Donkey Republic Ystad https://stables.donkey.bike/api/public/gbfs/2/donkey_ystad/gbfs.json
Qick Borlänge https://qickscooters.rideatom.com/gbfs/v2_2/en/gbfs?id=463
Qick Eskilstuna https://qickscooters.rideatom.com/gbfs/v2_2/en/gbfs?id=462
Qick Falun https://qickscooters.rideatom.com/gbfs/v2_2/en/gbfs?id=464
Qick Jönköping https://qickscooters.rideatom.com/gbfs/v2_2/en/gbfs?id=52
Qick Norrköping https://qickscooters.rideatom.com/gbfs/v2_2/en/gbfs?id=53
Qick Örebro https://qickscooters.rideatom.com/gbfs/v2_2/en/gbfs?id=5
Qick Västerås https://qickscooters.rideatom.com/gbfs/v2_2/en/gbfs?id=104
"Styr & Ställ (Sweden  Göteborg)" https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_zg/gbfs.json
Nomago Bikes - GO2GO https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ce/gbfs.json
Nomago Bikes - GO2GO Gorizia https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cd/gbfs.json
Nomago Bikes - KOLESCE https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cn/gbfs.json
Nomago Bikes - KRANJSKA GORA https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ck/gbfs.json
Nomago Bikes -  LJUBLJANA https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cc/gbfs.json
Nomago Bikes - PORTOROZ https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cl/gbfs.json
Nomago Bikes - SLOVENIA https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cx/gbfs.json
Nomago Bikes - ZANAPREJ https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_cf/gbfs.json
BikeKIA https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_ak/gbfs.json
AAR Bike https://app.linkalock.com/api/gbfs/D2uRLGw8vBa2FJxa8/gbfs.json
KARBIS Turkey https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_tr/gbfs.json
nextbike Konya https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_nk/gbfs.json
nextbike Kiev https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_nu/gbfs.json
nextbike Vinnitsa (Ukraine) https://gbfs.nextbike.net/maps/gbfs/v2/nextbike_uv/gbfs.json
Austin B-cycle https://gbfs.bcycle.com/bcycle_austin/gbfs.json
Aventura BCycle https://gbfs.bcycle.com/bcycle_aventura/gbfs.json
Bay Wheels https://gbfs.baywheels.com/gbfs/2.3/gbfs.json
Bike Chattanooga https://chat.publicbikesystem.net/customer/gbfs/v2/gbfs.json
BikeLNK https://gbfs.bcycle.com/bcycle_bikelnk/gbfs.json
Bikeshare Kona https://kona.publicbikesystem.net/ube/gbfs/v1/
BIKETOWN https://gbfs.biketownpdx.com/gbfs/2.3/gbfs.json
Biki https://hon.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Bird Alexandria https://mds.bird.co/gbfs/v2/public/alexandria/gbfs.json
bird arlingtonco https://mds.bird.co/gbfs/v2/public/arlingtonco/gbfs.json
Bird Baltimore https://mds.bird.co/gbfs/v2/public/baltimore/gbfs.json
Boulder BCycle https://gbfs.bcycle.com/bcycle_boulder/gbfs.json
Bird Chicago https://mds.bird.co/gbfs/v2/public/chicago/gbfs.json
Bird Cleveland https://mds.bird.co/gbfs/v2/public/cleveland/gbfs.json
Bird Columbus https://mds.bird.co/gbfs/v2/public/columbus/gbfs.json
Bird Culver City https://mds.bird.co/gbfs/v2/public/culver-city/gbfs.json
Bird Detriot https://mds.bird.co/gbfs/v2/public/detroit/gbfs.json
Bird Durham https://mds.bird.co/gbfs/v2/public/durham/gbfs.json
Bird Fairfax https://mds.bird.co/gbfs/v2/public/fairfax/gbfs.json
Bird Indianapolis https://mds.bird.co/gbfs/v2/public/indianapolis/gbfs.json
Bird Kansas City https://mds.bird.co/gbfs/v2/public/kansas-city/gbfs.json
Bird Los Angeles https://mds.bird.co/gbfs/v2/public/los-angeles/gbfs.json
Bird Louisville https://mds.bird.co/gbfs/v2/public/louisville/gbfs.json
Bird Miami https://mds.bird.co/gbfs/v2/public/miami/gbfs.json
Bird New York https://mds.bird.co/gbfs/v2/public/new-york/gbfs.json
Bird Portland https://mds.bird.co/gbfs/v2/public/portland/gbfs.json
Bird San Francisco https://mds.bird.co/gbfs/v2/public/san-francisco/gbfs.json
Bird St Louis https://mds.bird.co/gbfs/v2/public/st-louis/gbfs.json
Bird Tempe https://mds.bird.co/gbfs/v2/public/tempe/gbfs.json
Bird Washington DC https://mds.bird.co/gbfs/v2/public/washington-dc/gbfs.json
Blue Bikes https://gbfs.bluebikes.com/gbfs/gbfs.json
Boaz Bikes https://gbsf.movatic.co/en/1.1/576347857979998215
Broward B-cycle https://gbfs.bcycle.com/bcycle_broward/gbfs.json
Bublr Bikes https://gbfs.bcycle.com/bcycle_bublr/gbfs.json
Capital Bike Share https://gbfs.capitalbikeshare.com/gbfs/2.3/gbfs.json
Charlotte B-cycle https://gbfs.bcycle.com/bcycle_charlotte/gbfs.json
Cincy Red Bike https://gbfs.bcycle.com/bcycle_cincyredbike/gbfs.json
Citi Bike https://gbfs.citibikenyc.com/gbfs/2.3/gbfs.json
Clarksville B-cycle https://gbfs.bcycle.com/bcycle_clarksville/gbfs.json
Clemson BikeShare https://gbfs.bcycle.com/bcycle_clemson/gbfs.json
Coast Bike Share https://coast.socialbicycles.com/opendata/gbfs.json
CoGo https://gbfs.cogobikeshare.com/gbfs/2.3/gbfs.json
Des Moines B-cycle https://gbfs.bcycle.com/bcycle_desmoines/gbfs.json
Lyft Scooters Chicago https://gbfs.divvybikes.com/gbfs/2.3/gbfs.json
El Paso B-cycle https://gbfs.bcycle.com/bcycle_elpaso/gbfs.json
Encinitas BCycle https://gbfs.bcycle.com/bcycle_encinitas/gbfs.json
Explore Bike Share https://gbfs.bcycle.com/bcycle_memphis/gbfs.json
Fort Worth Bike Sharing https://gbfs.bcycle.com/bcycle_fortworth/gbfs.json
GREENbike https://gbfs.bcycle.com/bcycle_greenbikeslc/gbfs.json
Greenville B-cycle https://gbfs.bcycle.com/bcycle_greenville/gbfs.json
Heartland B-cycle https://gbfs.bcycle.com/bcycle_heartland/gbfs.json
Houston B-cycle https://gbfs.bcycle.com/bcycle_houston/gbfs.json
Indego https://gbfs.bcycle.com/bcycle_indego/gbfs.json
Indy - Pacers Bikeshare https://gbfs.bcycle.com/bcycle_pacersbikeshare/gbfs.json
Jackson County https://gbfs.bcycle.com/bcycle_jacksoncounty/gbfs.json
Lime Arlington https://data.lime.bike/api/partners/v2/gbfs/arlington/gbfs.json
Lime Chicago https://data.lime.bike/api/partners/v2/gbfs/chicago/gbfs.json
Lime Cleveland https://data.lime.bike/api/partners/v2/gbfs/cleveland/gbfs.json
Lime Colorado Springs https://data.lime.bike/api/partners/v2/gbfs/colorado_springs/gbfs.json
Lime Detroit https://data.lime.bike/api/partners/v2/gbfs/detroit/gbfs.json
Lime Grand Rapids https://data.lime.bike/api/partners/v2/gbfs/grand_rapids/gbfs.json
Lime Louisville https://data.lime.bike/api/partners/v2/gbfs/louisville/gbfs.json
Lime New York https://data.lime.bike/api/partners/v2/gbfs/new_york/gbfs.json
Lime Oakland https://data.lime.bike/api/partners/v2/gbfs/oakland/gbfs.json
Lime Portland https://data.lime.bike/api/partners/v2/gbfs/portland/gbfs.json
Lime San Francisco https://data.lime.bike/api/partners/v2/gbfs/san_francisco/gbfs.json
Lime San Jose https://data.lime.bike/api/partners/v2/gbfs/san_jose/gbfs.json
Lime Seattle https://data.lime.bike/api/partners/v2/gbfs/seattle/gbfs.json
Lime Washington DC https://data.lime.bike/api/partners/v2/gbfs/washington_dc/gbfs.json
Lyft https://gbfs.lyft.com/gbfs/2.3/dca/gbfs.json
Lyft Scooters Denver https://gbfs.lyft.com/gbfs/2.3/den/gbfs.json
Madison B-cycle https://gbfs.bcycle.com/bcycle_madison/gbfs.json
McAllen B-cycle https://gbfs.bcycle.com/bcycle_mcallen/gbfs.json
Metro Bike Share https://gbfs.bcycle.com/bcycle_lametro/gbfs.json
Mogo Detroit https://detroit-us.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Nashville BCycle https://gbfs.bcycle.com/bcycle_nashville/gbfs.json
PeaceHealth Rides https://peacehealthrides.com/opendata/gbfs.json
Pogoh https://pittsburgh.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Redding Bikeshare https://gbfs.bcycle.com/bcycle_redding/gbfs.json
Reddy Bikeshare https://reddybikeshare.socialbicycles.com/opendata/gbfs.json
Relay Bike Share https://relaybikeshare.socialbicycles.com/opendata/gbfs.json
Revel Miami https://gbfs.gorevel.com/gbfs/v2/miami/en/gbfs.json
Revel New York https://gbfs.gorevel.com/gbfs/v2/newyork/en/gbfs.json
Revel Oakland https://gbfs.gorevel.com/gbfs/v2/oakland/en/gbfs.json
Revel San Francisco https://gbfs.gorevel.com/gbfs/v2/sanfrancisco/en/gbfs.json
Revel Washington D.C. https://gbfs.gorevel.com/gbfs/v2/washingtondc/en/gbfs.json
RTC Bike Share https://gbfs.bcycle.com/bcycle_rtcbikeshare/gbfs.json
San Antonio B-cycle https://gbfs.bcycle.com/bcycle_sanantonio/gbfs.json
Santa Barbara BCycle https://gbfs.bcycle.com/bcycle_santabarbara/gbfs.json
Santa Cruz BCycle https://gbfs.bcycle.com/bcycle_santacruz/gbfs.json
SBU Wolf Ride Bike Share https://sbu.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Spin Akron https://gbfs.spin.pm/api/gbfs/v2_3/akron/gbfs
Spin Albuquerque https://gbfs.spin.pm/api/gbfs/v2_3/albuquerque/gbfs
Spin Alexandria https://gbfs.spin.pm/api/gbfs/v2_3/alexandria/gbfs
Spin Ann Arbor https://gbfs.spin.pm/api/gbfs/v2_3/ann_arbor/gbfs
Spin Asbury Park https://gbfs.spin.pm/api/gbfs/v2_3/asbury_park/gbfs
Spin Atlanta https://gbfs.spin.pm/api/gbfs/v2_3/atlanta/gbfs
Spin Austin https://gbfs.spin.pm/api/gbfs/v2_3/austin/gbfs
Spin Baltimore https://gbfs.spin.pm/api/gbfs/v2_3/baltimore/gbfs.json
Spin Boise https://gbfs.spin.pm/api/gbfs/v2_3/boise/gbfs
Spin Brookline https://gbfs.spin.pm/api/gbfs/v2_3/brookline/gbfs
Spin Charlotte https://gbfs.spin.pm/api/gbfs/v2_3/charlotte/gbfs
Spin Chicago https://gbfs.spin.pm/api/gbfs/v2_3/chicago_territory/gbfs
Spin Cleveland https://gbfs.spin.pm/api/gbfs/v2_3/cleveland/gbfs
Spin Columbus https://gbfs.spin.pm/api/gbfs/v2_3/columbus/gbfs
Spin Coral Gables https://gbfs.spin.pm/api/gbfs/v2_3/coral_gables/gbfs
Spin Dayton https://gbfs.spin.pm/api/gbfs/v2_3/dayton/gbfs
Spin Denver https://gbfs.spin.pm/api/gbfs/v2_3/denver/gbfs
Spin Detroit https://gbfs.spin.pm/api/gbfs/v2_3/detroit/gbfs
Spin Duke https://gbfs.spin.pm/api/gbfs/v2_3/duke/gbfs
Spin Durham https://gbfs.spin.pm/api/gbfs/v2_3/durham/gbfs
Spin Fayetteville https://gbfs.spin.pm/api/gbfs/v2_3/fayetteville/gbfs
Spin Fort Collins https://gbfs.spin.pm/api/gbfs/v2_3/fort_collins/gbfs
Spin Fort Pierce https://gbfs.spin.pm/api/gbfs/v2_3/fort_pierce/gbfs
Spin Gainesville https://gbfs.spin.pm/api/gbfs/v2_3/gainesville/gbfs
Spin Garden City https://gbfs.spin.pm/api/gbfs/v2_3/garden_city/gbfs
Spin Grand Rapids https://gbfs.spin.pm/api/gbfs/v2_3/grand_rapids/gbfs
Spin Greenville https://gbfs.spin.pm/api/gbfs/v2_3/greenville/gbfs
Spin Isla Vista https://gbfs.spin.pm/api/gbfs/v2_3/isla_vista/gbfs
Spin Jacksonville https://gbfs.spin.pm/api/gbfs/v2_3/jacksonville/gbfs
Spin Jefferson City https://gbfs.spin.pm/api/gbfs/v2_3/jefferson_city/gbfs
Spin Kansas City https://gbfs.spin.pm/api/gbfs/v2_3/kansas_city/gbfs
Spin Knoxville https://gbfs.spin.pm/api/gbfs/v2_3/knoxville/gbfs
Spin Lexington https://gbfs.spin.pm/api/gbfs/v2_3/lexington/gbfs
Spin Lincoln https://gbfs.spin.pm/api/gbfs/v2_3/lincoln/gbfs
Spin Long Beach https://gbfs.spin.pm/api/gbfs/v2_3/long_beach/gbfs
Spin Los Angeles https://gbfs.spin.pm/api/gbfs/v2_3/los_angeles/gbfs
Spin Louisville https://gbfs.spin.pm/api/gbfs/v2_3/louisville/gbfs
Spin Memphis https://gbfs.spin.pm/api/gbfs/v2_3/memphis/gbfs
Spin Mesa https://gbfs.spin.pm/api/gbfs/v2_3/mesa/gbfs
Spin Miami https://gbfs.spin.pm/api/gbfs/v2_3/miami/gbfs
Spin Michigan State University https://gbfs.spin.pm/api/gbfs/v2_3/michigan_state_university/gbfs
Spin Minneapolis https://gbfs.spin.pm/api/gbfs/v2_3/minneapolis/gbfs
Spin Mongomery County https://gbfs.spin.pm/api/gbfs/v2_3/montgomery_county/gbfs
Spin Nashville https://gbfs.spin.pm/api/gbfs/v2_3/nashville/gbfs
Spin Nicholls State University https://gbfs.spin.pm/api/gbfs/v2_3/nicholls_state/gbfs
Spin NMSU https://gbfs.spin.pm/api/gbfs/v2_3/nmsu/gbfs
Spin Oakland University https://gbfs.spin.pm/api/gbfs/v2_3/oakland_university/gbfs
Spin Ohio State https://gbfs.spin.pm/api/gbfs/v2_3/ohio_state/gbfs
Spin Omaha https://gbfs.spin.pm/api/gbfs/v2_3/omaha/gbfs
Spin Orem https://gbfs.spin.pm/api/gbfs/v2_3/orem/gbfs
Spin Orlando https://gbfs.spin.pm/api/gbfs/v2_3/orlando/gbfs
Spin Phoenix https://gbfs.spin.pm/api/gbfs/v2_3/phoenix/gbfs
Spin Pittsburgh https://gbfs.spin.pm/api/gbfs/v2_3/pittsburgh/gbfs
Spin Portland https://gbfs.spin.pm/api/gbfs/v2_3/portland/gbfs
Spin Providence https://gbfs.spin.pm/api/gbfs/v2_3/providence/gbfs
Spin Provo https://gbfs.spin.pm/api/gbfs/v2_3/provo/gbfs
Spin Purdue University https://gbfs.spin.pm/api/gbfs/v2_3/purdue_university/gbfs
Spin Raleigh https://gbfs.spin.pm/api/gbfs/v2_3/raleigh/gbfs
Spin Salem https://gbfs.spin.pm/api/gbfs/v2_3/salem/gbfs
Spin Salt Lake City https://gbfs.spin.pm/api/gbfs/v2_3/salt_lake_city/gbfs
Spin San Antonio https://gbfs.spin.pm/api/gbfs/v2_3/san_antonio/gbfs
Spin San Diego https://gbfs.spin.pm/api/gbfs/v2_3/san_diego/gbfs
Spin San Francisco https://gbfs.spin.pm/api/gbfs/v2_3/san_francisco/gbfs
Spin San Marcos https://gbfs.spin.pm/api/gbfs/v2_3/san_marcos/gbfs
Spin Santa Monica https://gbfs.spin.pm/api/gbfs/v2_3/santa%20monica/gbfs
Spin Seattle https://gbfs.spin.pm/api/gbfs/v2_3/seattle/gbfs
Spin South Miami https://gbfs.spin.pm/api/gbfs/v2_3/south_miami/gbfs
Spin St George https://gbfs.spin.pm/api/gbfs/v2_3/st_george/gbfs
Spin Stillwater https://gbfs.spin.pm/api/gbfs/v2_3/stillwater/gbfs
Spin St Louis https://gbfs.spin.pm/api/gbfs/v2_3/st_louis/gbfs
Spin Tallahassee https://gbfs.spin.pm/api/gbfs/v2_3/tallahassee/gbfs
Spin Tampa https://gbfs.spin.pm/api/gbfs/v2_3/tampa/gbfs
Spin Tempe https://gbfs.spin.pm/api/gbfs/v2_3/tempe/gbfs
Spin Towson https://gbfs.spin.pm/api/gbfs/v2_3/towson/gbfs
Spin Troy https://gbfs.spin.pm/api/gbfs/v2_3/troy/gbfs
Spin UC San Diego https://gbfs.spin.pm/api/gbfs/v2_3/uc_san_diego/gbfs
Spin University of Central Florida https://gbfs.spin.pm/api/gbfs/v2_3/university_of_central_florida/gbfs
Spin University of Kentucky https://gbfs.spin.pm/api/gbfs/v2_3/university_of_kentucky/gbfs
Spin Virginia Tech https://gbfs.spin.pm/api/gbfs/v2_3/virginia_tech/gbfs
Spin Washington DC https://gbfs.spin.pm/api/gbfs/v2_3/washington_dc/gbfs
Spin White Center https://gbfs.spin.pm/api/gbfs/v2_3/white_center/gbfs
Spin Wichita https://gbfs.spin.pm/api/gbfs/v2_3/wichita/gbfs
Spin Winston Salem https://gbfs.spin.pm/api/gbfs/v2_3/winston_salem/gbfs
Truckee BCycle https://gbfs.bcycle.com/bcycle_truckee/gbfs.json
Tugo https://tucson.publicbikesystem.net/customer/gbfs/v2/gbfs.json
Valentine Bike Share https://gbfs.bcycle.com/bcycle_valentine/gbfs.json
WE-cycle https://aspen.publicbikesystem.net/customer/gbfs/v2/gbfs.json