From fc94f8079e284f74e6f43f2109b9eb605e3667fb Mon Sep 17 00:00:00 2001 From: Morgan Herlocker Date: Tue, 30 Apr 2019 13:37:26 -0700 Subject: [PATCH 1/5] Rotate bike_id on free_bike_status --- gbfs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gbfs.md b/gbfs.md index 65336087..047ecc8c 100644 --- a/gbfs.md +++ b/gbfs.md @@ -213,7 +213,7 @@ Describes bikes that are not at a station and are not currently in the middle of Field Name | Required | Defines ------------------| ----------| ---------- bikes | Yes | Array that contains one object per bike that is currently docked/stopped outside of the system as defined below -\- bike_id | Yes | Unique identifier of a bike +\- bike_id | Yes | Identifier of a bike, rotated to a random string after each trip to protect privacy \- lat | Yes | Latitude of the bike. The field value must be a valid WGS 84 latitude in decimal degrees format. See: http://en.wikipedia.org/wiki/World_Geodetic_System, https://en.wikipedia.org/wiki/Decimal_degrees \- lon | Yes | Longitude of the bike. The field value must be a valid WGS 84 latitude in decimal degrees format. See: http://en.wikipedia.org/wiki/World_Geodetic_System, https://en.wikipedia.org/wiki/Decimal_degrees \- is_reserved | Yes | 1/0 value - is the bike currently reserved for someone else From 52259d59428b625ed3a5b93235baf60059f0bae8 Mon Sep 17 00:00:00 2001 From: Morgan Herlocker Date: Wed, 9 Oct 2019 15:38:32 -0700 Subject: [PATCH 2/5] rotate id after each trip "at minimum" --- gbfs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gbfs.md b/gbfs.md index 047ecc8c..ba4eeb48 100644 --- a/gbfs.md +++ b/gbfs.md @@ -213,7 +213,7 @@ Describes bikes that are not at a station and are not currently in the middle of Field Name | Required | Defines ------------------| ----------| ---------- bikes | Yes | Array that contains one object per bike that is currently docked/stopped outside of the system as defined below -\- bike_id | Yes | Identifier of a bike, rotated to a random string after each trip to protect privacy +\- bike_id | Yes | Identifier of a bike, rotated to a random string, at minimum, after each trip to protect privacy \- lat | Yes | Latitude of the bike. The field value must be a valid WGS 84 latitude in decimal degrees format. See: http://en.wikipedia.org/wiki/World_Geodetic_System, https://en.wikipedia.org/wiki/Decimal_degrees \- lon | Yes | Longitude of the bike. The field value must be a valid WGS 84 latitude in decimal degrees format. See: http://en.wikipedia.org/wiki/World_Geodetic_System, https://en.wikipedia.org/wiki/Decimal_degrees \- is_reserved | Yes | 1/0 value - is the bike currently reserved for someone else From 9c8e78a31ec9e331569474876be59014828b2ecb Mon Sep 17 00:00:00 2001 From: Morgan Herlocker Date: Fri, 6 Dec 2019 12:18:48 -0800 Subject: [PATCH 3/5] Update gbfs.md Co-Authored-By: Heidi G <38441752+heidiguenin@users.noreply.github.com> --- gbfs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gbfs.md b/gbfs.md index ba4eeb48..40871033 100644 --- a/gbfs.md +++ b/gbfs.md @@ -213,7 +213,7 @@ Describes bikes that are not at a station and are not currently in the middle of Field Name | Required | Defines ------------------| ----------| ---------- bikes | Yes | Array that contains one object per bike that is currently docked/stopped outside of the system as defined below -\- bike_id | Yes | Identifier of a bike, rotated to a random string, at minimum, after each trip to protect privacy +\- bike_id | Yes | Identifier of a bike, rotated to a random string, at minimum, after each trip to protect privacy. Note: Persistent bike_id, published publicly, could pose a threat to individual traveler privacy. \- lat | Yes | Latitude of the bike. The field value must be a valid WGS 84 latitude in decimal degrees format. See: http://en.wikipedia.org/wiki/World_Geodetic_System, https://en.wikipedia.org/wiki/Decimal_degrees \- lon | Yes | Longitude of the bike. The field value must be a valid WGS 84 latitude in decimal degrees format. See: http://en.wikipedia.org/wiki/World_Geodetic_System, https://en.wikipedia.org/wiki/Decimal_degrees \- is_reserved | Yes | 1/0 value - is the bike currently reserved for someone else From 73253f83b32836e91ad0ec51d42d8337b2119a7d Mon Sep 17 00:00:00 2001 From: Aaron Antrim Date: Sun, 26 Jan 2020 17:33:35 -0800 Subject: [PATCH 4/5] reintroduce critical text -- rotate bike_id --- gbfs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gbfs.md b/gbfs.md index aa91fa87..aeb112d9 100644 --- a/gbfs.md +++ b/gbfs.md @@ -298,7 +298,7 @@ Describes bikes that are not at a station and are not currently in the middle of Field Name | Required | Type | Defines -------------------------------- | ----------| --------------- | --------------------- _`bikes`_ | Yes | Array | Array that contains one object per bike that is currently stopped as defined below. -\- `bike_id` | Yes | ID | Identifier of a bike. +\- `bike_id` | Yes | ID | Identifier of a bike. *Beta (v2.0-RC):* Identifier of a bike, rotated to a random string, at minimum, after each trip to protect privacy. Note: Persistent bike_id, published publicly, could pose a threat to individual traveler privacy. \- `lat` | Yes | Latitude | Latitude of the bike. \- `lon` | Yes | Longitude | Longitude of the bike. \- `is_reserved` | Yes | Boolean | Is the bike currently reserved?

`1` - Bike is currently reserved.
`0` - Bike is not currently reserved. From 25589847cc32b79b218d72b33f2950d14ffe9e87 Mon Sep 17 00:00:00 2001 From: Aaron Antrim Date: Sun, 26 Jan 2020 17:34:19 -0800 Subject: [PATCH 5/5] remove extra line break --- gbfs.md | 1 - 1 file changed, 1 deletion(-) diff --git a/gbfs.md b/gbfs.md index aeb112d9..467e379f 100644 --- a/gbfs.md +++ b/gbfs.md @@ -308,7 +308,6 @@ _`bikes`_ | Yes | Array | Array that cont  \- ios *(beta)* | Optional | URI | URI that can be used on iOS to launch the rental app for this bike. More information on this iOS feature can be found here: https://developer.apple.com/documentation/uikit/core_app/allowing_apps_and_websites_to_link_to_your_content/communicating_with_other_apps_using_custom_urls?language=objc. Please use iOS Universal Links (https://developer.apple.com/ios/universal-links/) if possible so viewing apps don’t need to manually manage the redirect of the user to the app store if the user doesn’t have the application installed.

This URI should be a deep link specific to this bike, and should not be a general rental page that includes information for more than one bike. The deep link should take users directly to this bike, without any prompts, interstitial pages, or logins. Make sure that users can see this bike even if they never previously opened the application.

If this field is empty, it means deep linking isn’t supported in the native iOS rental app.

Note that the URI does not necessarily include the bike_id - other identifiers can be used by the rental app within the URL to uniquely identify this bike.

See the [Analytics](#Analytics) section for how viewing apps can report the origin of the deep link to rental apps.

iOS Universal Links example value: `https://www.abc.com/app?sid=1234567890&platform=ios`

Deep Link (without Universal Links) example value: `com.abcrental.ios://open.abc.app/app?sid=1234567890`  \- `web` *(beta)* | Optional | URL | URL that can be used by a web browser to show more information about renting a vehicle at this bike.

This URL should be a deep link specific to this bike, and should not be a general rental page that includes information for more than one bike. The deep link should take users directly to this bike, without any prompts, interstitial pages, or logins. Make sure that users can see this bike even if they never previously opened the application.

If this field is empty, it means deep linking isn’t supported for web browsers.

Example value: https://www.abc.com/app?sid=1234567890 - ### system_hours.json Describes the system hours of operation.