Skip to content

Commit ae4076a

Browse files
authored
Update version numbers to v3.1-RC in the spec (#639)
* Update version numbers to v3.1-RC in the spec * Update 'added in v3.1-RC' for the new fields * Add v3.1-RC to README
1 parent ca2f933 commit ae4076a

File tree

2 files changed

+35
-35
lines changed

2 files changed

+35
-35
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ Release Candidates will receive *Current Version* status when they have been ful
5959

6060
| Version | Type | Release Date | Status | JSON Schema | Release Notes |
6161
|:---:|:-----:|----------------|----------------------------|----------------------------------------------------------------------------------------|---------------------|
62-
| No current Release Candidate versions | | | | | |
62+
| [v3.1-RC](https://github.com/MobilityData/gbfs/blob/v3.1-RC/gbfs.md) | MINOR | May 22, 2024 | :white_check_mark: Ready for implementation | [v3.1-RC Schema](https://github.com/MobilityData/gbfs-json-schema/tree/master/v3.1-RC) | [v3.1-RC Release Notes](https://github.com/MobilityData/gbfs/releases/tag/v3.1-RC) |
6363

6464
### Past Version Releases
6565
Past versions with *Supported* status MAY be patched to correct bugs or vulnerabilities but new features will not be introduced.<br />

gbfs.md

+34-34
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ This document explains the types of files and data that comprise the General Bik
44

55
## Reference version
66

7-
This documentation refers to **v3.0**.
7+
This documentation refers to **v3.1-RC**.
88

99
For past and upcoming versions see the [README](https://github.com/MobilityData/gbfs/blob/master/README.md#current-version-recommended).
1010

@@ -265,7 +265,7 @@ Field Name | REQUIRED | Type | Defines
265265
{
266266
"last_updated": "2023-07-17T13:34:13+02:00",
267267
"ttl": 3600,
268-
"version": "3.0",
268+
"version": "3.1-RC",
269269
"data": {
270270
"name": [
271271
{
@@ -296,7 +296,7 @@ Field Name | REQUIRED | Type | Defines
296296
{
297297
"last_updated": "2023-07-17T13:34:13+02:00",
298298
"ttl": 0,
299-
"version": "3.0",
299+
"version": "3.1-RC",
300300
"data": {
301301
"feeds": [
302302
{
@@ -326,27 +326,27 @@ Field Name | REQUIRED | Type | Defines
326326
`datasets[].versions` | Yes | Array&lt;Object&gt; | Contains one object for each of the available versions of a feed. The array MUST be sorted by increasing MAJOR and MINOR version number.
327327
`datasets[].versions[].version` | Yes | String | The semantic version of the feed in the form `X.Y`.
328328
`datasets[].versions[].url` | Yes | URL | URL of the corresponding `gbfs.json` endpoint.
329-
`datasets[].area` | OPTIONAL | GeoJSON MultiPolygon | A GeoJSON MultiPolygon that describes the operating area. If `area` is supplied, then the record describes the general operating area of the system for the purpose of discovery. Geographic details of the system's operating restrictions must be explicitly specified using station locations and geofencing zones, where appropriate.
330-
`datasets[].country_code` | OPTIONAL | Country Code | The ISO 3166-1 alpha-2 country code of the operating area. The field MUST NOT be specified if the operating area spans multiple countries.
329+
`datasets[].area` <br/>*(added in v3.1-RC)* | OPTIONAL | GeoJSON MultiPolygon | A GeoJSON MultiPolygon that describes the operating area. If `area` is supplied, then the record describes the general operating area of the system for the purpose of discovery. Geographic details of the system's operating restrictions must be explicitly specified using station locations and geofencing zones, where appropriate.
330+
`datasets[].country_code` <br/>*(added in v3.1-RC)* | OPTIONAL | Country Code | The ISO 3166-1 alpha-2 country code of the operating area. The field MUST NOT be specified if the operating area spans multiple countries.
331331

332332
**Example:**
333333
```json
334334
{
335335
"last_updated": "2023-07-17T13:34:13+02:00",
336336
"ttl":0,
337-
"version":"3.0",
337+
"version": "3.1-RC",
338338
"data":{
339339
"datasets":[
340340
{
341341
"system_id":"example_berlin",
342342
"versions":[
343343
{
344-
"version":"2.0",
344+
"version": "2.0",
345345
"url":"https://berlin.example.com/gbfs/2/gbfs"
346346
},
347347
{
348-
"version":"3.0",
349-
"url":"https://berlin.example.com/gbfs/3/gbfs"
348+
"version": "3.1-RC",
349+
"url":"https://berlin.example.com/gbfs/3.1-RC/gbfs"
350350
}
351351
],
352352
"area": {
@@ -392,12 +392,12 @@ Field Name | REQUIRED | Type | Defines
392392
"system_id":"example_paris",
393393
"versions":[
394394
{
395-
"version":"2.0",
395+
"version": "2.0",
396396
"url":"https://paris.example.com/gbfs/2/gbfs"
397397
},
398398
{
399-
"version":"3.0",
400-
"url":"https://paris.example.com/gbfs/3/gbfs"
399+
"version": "3.1-RC",
400+
"url":"https://paris.example.com/gbfs/3.1-RC/gbfs"
401401
}
402402
],
403403
"area": {
@@ -465,16 +465,16 @@ Field Name | REQUIRED | Type | Defines
465465
{
466466
"last_updated": "2023-07-17T13:34:13+02:00",
467467
"ttl": 0,
468-
"version": "3.0",
468+
"version": "3.1-RC",
469469
"data": {
470470
"versions": [
471471
{
472472
"version": "2.0",
473473
"url": "https://www.example.com/gbfs/2/gbfs"
474474
},
475475
{
476-
"version": "3.0",
477-
"url": "https://www.example.com/gbfs/3/gbfs"
476+
"version": "3.1-RC",
477+
"url": "https://www.example.com/gbfs/3.1-RC/gbfs"
478478
}
479479
]
480480
}
@@ -530,7 +530,7 @@ Field Name | REQUIRED | Type | Defines
530530
{
531531
"last_updated": "2023-07-17T13:34:13+02:00",
532532
"ttl": 1800,
533-
"version": "3.0",
533+
"version": "3.1-RC",
534534
"data": {
535535
"system_id": "example_cityname",
536536
"languages": ["en"],
@@ -642,7 +642,7 @@ Field Name | REQUIRED | Type | Defines
642642
{
643643
"last_updated": "2023-07-17T13:34:13+02:00",
644644
"ttl": 0,
645-
"version": "3.0",
645+
"version": "3.1-RC",
646646
"data": {
647647
"vehicle_types": [
648648
{
@@ -825,7 +825,7 @@ Field Name | REQUIRED | Type | Defines
825825
{
826826
"last_updated": "2023-07-17T13:34:13+02:00",
827827
"ttl": 0,
828-
"version": "3.0",
828+
"version": "3.1-RC",
829829
"data": {
830830
"stations": [
831831
{
@@ -861,7 +861,7 @@ Field Name | REQUIRED | Type | Defines
861861
{
862862
"last_updated": "2023-07-17T13:34:13+02:00",
863863
"ttl": 0,
864-
"version": "3.0",
864+
"version": "3.1-RC",
865865
"data": {
866866
"stations": [
867867
{
@@ -953,7 +953,7 @@ Field Name | REQUIRED | Type | Defines
953953
{
954954
"last_updated": "2023-07-17T13:34:13+02:00",
955955
"ttl": 0,
956-
"version": "3.0",
956+
"version": "3.1-RC",
957957
"data": {
958958
"stations": [
959959
{
@@ -1056,7 +1056,7 @@ Field Name | REQUIRED | Type | Defines
10561056
{
10571057
"last_updated": "2023-07-17T13:34:13+02:00",
10581058
"ttl":0,
1059-
"version":"3.0",
1059+
"version": "3.1-RC",
10601060
"data":{
10611061
"vehicles":[
10621062
{
@@ -1094,7 +1094,7 @@ Field Name | REQUIRED | Type | Defines
10941094
{
10951095
"last_updated": "2023-07-17T13:34:13+02:00",
10961096
"ttl":0,
1097-
"version":"3.0",
1097+
"version": "3.1-RC",
10981098
"data":{
10991099
"vehicles":[
11001100
{
@@ -1157,7 +1157,7 @@ Field Name | REQUIRED | Type | Defines
11571157
{
11581158
"last_updated": "2023-07-17T13:34:13+02:00",
11591159
"ttl": 86400,
1160-
"version": "3.0",
1160+
"version": "3.1-RC",
11611161
"data": {
11621162
"regions": [
11631163
{
@@ -1213,8 +1213,8 @@ Field Name | REQUIRED | Type | Defines
12131213
`plans[].name` <br/>*(as of v3.0)* | Yes | Array&lt;Localized String&gt; | Name of this pricing plan.
12141214
`plans[].currency` | Yes | String | Currency used to pay the fare. <br /><br /> This pricing is in ISO 4217 code: http://en.wikipedia.org/wiki/ISO_4217 <br />(for example, `CAD` for Canadian dollars, `EUR` for euros, or `JPY` for Japanese yen.)
12151215
`plans[].price` | Yes | Non-Negative Float | Fare price, in the unit specified by `currency`. <br/>*(added in v2.2)* In case of non-rate price, this field is the total price. In case of rate price, this field is the base price that is charged only once per trip (typically the price for unlocking) in addition to `per_km_pricing` and/or `per_min_pricing`.
1216-
`plans[].reservation_price_per_min` <br/>*(added in v3.1)* | OPTIONAL | Non-Negative Float | The cost, described as per minute rate, to reserve the vehicle prior to beginning a rental. This amount is charged for each minute of the vehicle reservation until the rental is initiated, or until the number of minutes defined in `vehicle_types.json#default_reserve_time` elapses, whichever comes first. When using this field, you MUST declare a value in `vehicle_types.json#default_reserve_time`. This field MUST NOT be combined in a single pricing plan with `reservation_price_flat_rate`.
1217-
`plans[].reservation_price_flat_rate` <br/>*(added in v3.1)* | OPTIONAL | Non-Negative Float | The cost, described as a flat rate, to reserve the vehicle prior to beginning a rental. This amount is charged once to reserve the vehicle for the duration of the time defined by `vehicle_types.json#default_reserve_time`. When using this field, you MUST declare a value in `vehicle_types.json#default_reserve_time`. This field MUST NOT be combined in a single pricing plan with `reservation_price_per_min`.
1216+
`plans[].reservation_price_per_min` <br/>*(added in v3.1-RC)* | OPTIONAL | Non-Negative Float | The cost, described as per minute rate, to reserve the vehicle prior to beginning a rental. This amount is charged for each minute of the vehicle reservation until the rental is initiated, or until the number of minutes defined in `vehicle_types.json#default_reserve_time` elapses, whichever comes first. When using this field, you MUST declare a value in `vehicle_types.json#default_reserve_time`. This field MUST NOT be combined in a single pricing plan with `reservation_price_flat_rate`.
1217+
`plans[].reservation_price_flat_rate` <br/>*(added in v3.1-RC)* | OPTIONAL | Non-Negative Float | The cost, described as a flat rate, to reserve the vehicle prior to beginning a rental. This amount is charged once to reserve the vehicle for the duration of the time defined by `vehicle_types.json#default_reserve_time`. When using this field, you MUST declare a value in `vehicle_types.json#default_reserve_time`. This field MUST NOT be combined in a single pricing plan with `reservation_price_per_min`.
12181218
`plans[].is_taxable` | Yes | Boolean | Will additional tax be added to the base price?<br /><br />`true` - Yes.<br /> `false` - No. <br /><br />`false` MAY be used to indicate that tax is not charged or that tax is included in the base price.
12191219
`plans[].description` <br/>*(as of v3.0)* | Yes | Array&lt;Localized String&gt; | Customer-readable description of the pricing plan. This SHOULD include the duration, price, conditions, etc. that the publisher would like users to see.
12201220
`plans[].per_km_pricing` <br/>*(added in v2.2)* | OPTIONAL | Array&lt;Object&gt; | Array of segments when the price is a function of distance traveled, displayed in kilometers.<br /><br />Total cost is the addition of `price` and all segments in `per_km_pricing` and `per_min_pricing`. If this array is not provided, there are no variable costs based on distance.
@@ -1237,7 +1237,7 @@ The user does not pay more than the base price for the first 10 km. After 10 km
12371237
{
12381238
"last_updated": "2023-07-17T13:34:13+02:00",
12391239
"ttl": 0,
1240-
"version": "3.0",
1240+
"version": "3.1-RC",
12411241
"data": {
12421242
"plans": [
12431243
{
@@ -1290,7 +1290,7 @@ This example demonstrates a pricing scheme that has a rate both by minute and by
12901290
{
12911291
"last_updated": "2023-07-17T13:34:13+02:00",
12921292
"ttl": 0,
1293-
"version": "3.0",
1293+
"version": "3.1-RC",
12941294
"data": {
12951295
"plans": [
12961296
{
@@ -1356,7 +1356,7 @@ Field Name | REQUIRED | Type | Defines
13561356
{
13571357
"last_updated": "2023-07-17T13:34:13+02:00",
13581358
"ttl": 60,
1359-
"version": "3.0",
1359+
"version": "3.1-RC",
13601360
"data": {
13611361
"alerts": [
13621362
{
@@ -1453,7 +1453,7 @@ See examples below.
14531453
{
14541454
"last_updated": "2023-07-17T13:34:13+02:00",
14551455
"ttl": 60,
1456-
"version": "3.0",
1456+
"version": "3.1-RC",
14571457
"data": {
14581458
"geofencing_zones": {
14591459
"type": "FeatureCollection",
@@ -1714,7 +1714,7 @@ Other supported parameters include:
17141714
{
17151715
"last_updated": "2023-07-17T13:34:13+02:00",
17161716
"ttl": 60,
1717-
"version": "3.0",
1717+
"version": "3.1-RC",
17181718
"data": {
17191719
"name": [
17201720
{
@@ -1745,7 +1745,7 @@ Other supported parameters include:
17451745
{
17461746
"last_updated": "2023-07-17T13:34:13+02:00",
17471747
"ttl": 60,
1748-
"version": "3.0",
1748+
"version": "3.1-RC",
17491749
"data": {
17501750
"stations": [
17511751
{
@@ -1778,7 +1778,7 @@ Note that the Android URI and iOS Universal Link URLs do not necessarily use the
17781778
{
17791779
"last_updated": "2023-07-17T13:34:13+02:00",
17801780
"ttl": 60,
1781-
"version": "3.0",
1781+
"version": "3.1-RC",
17821782
"data": {
17831783
"name": [
17841784
{
@@ -1809,7 +1809,7 @@ Note that the Android URI and iOS Universal Link URLs do not necessarily use the
18091809
{
18101810
"last_updated": "2023-07-17T13:34:13+02:00",
18111811
"ttl": 60,
1812-
"version": "3.0",
1812+
"version": "3.1-RC",
18131813
"data": {
18141814
"stations": [
18151815
{
@@ -1840,7 +1840,7 @@ Note that the Android URI and iOS Universal Link URLs do not necessarily use the
18401840
{
18411841
"last_updated": "2023-07-17T13:34:13+02:00",
18421842
"ttl": 60,
1843-
"version": "3.0",
1843+
"version": "3.1-RC",
18441844
"data": {
18451845
"stations": [
18461846
{

0 commit comments

Comments
 (0)