{ "$schema": "http://json-schema.org/draft-07/schema", "$id": "https://smart-data-models.github.io/dataModel.GBFS/free_bike_status/schema.json", "modelTags": "GBFS", "derivedFrom": "https://github.com/NABSA/gbfs/blob/v2.2/gbfs.md", "description": "Describes the vehicles that are available for rent (as of v2.1-RC2). According to the Standard GBFS 2.2", "$schemaVersion": "0.0.1", "title": "Smart Data Models adaptation of GBFS standard data model free_bike_status", "type": "object", "properties": { "id": { "$ref": "https://github.com/smart-data-models/data-models/raw/master/common-schema.json#/definitions/EntityIdentifierType" }, "type": { "type": "string", "description": "Property. NGSI entity type. It has to be free_bike_status", "enum": [ "free_bike_status" ] }, "last_updated": { "type": "integer", "description": "Property. Last time the data in the feed was updated in POSIX time.", "minimum": 1450155600 }, "ttl": { "type": "integer", "description": "Property. Number of seconds before the data in the feed will be updated again (0 if the data should always be refreshed).", "minimum": 0 }, "version": { "type": "string", "description": "Property. GBFS version number to which the feed conforms, according to the versioning framework (added in v1.1).", "enum": [ "2.2", "3.0-RC", "3.0" ] }, "data": { "type": "object", "description": "Property. Array that contains one object per bike as defined below.", "properties": { "bikes": { "type": "array", "items": { "type": "object", "properties": { "bike_id": { "description": "Rotating (as of v2.0) identifier of a vehicle.", "type": "string" }, "lat": { "description": "The latitude of the vehicle.", "type": "number", "minimum": -90, "maximum": 90 }, "lon": { "description": "The longitude of the vehicle.", "type": "number", "minimum": -180, "maximum": 180 }, "is_reserved": { "description": "Is the vehicle currently reserved?", "type": "boolean" }, "is_disabled": { "description": "Is the vehicle currently disabled (broken)?", "type": "boolean" }, "rental_uris": { "description": "Contains rental uris for Android, iOS, and web in the android, ios, and web fields (added in v1.1).", "type": "object", "properties": { "android": { "description": "URI that can be passed to an Android app with an intent (added in v1.1).", "type": "string", "format": "uri" }, "ios": { "description": "URI that can be used on iOS to launch the rental app for this vehicle (added in v1.1).", "type": "string", "format": "uri" }, "web": { "description": "URL that can be used by a web browser to show more information about renting this vehicle (added in v1.1).", "type": "string", "format": "uri" } } }, "vehicle_type_id": { "description": "The vehicle_type_id of this vehicle (added in v2.1-RC).", "type": "string" }, "last_reported": { "description": "The last time this vehicle reported its status to the operator's backend in POSIX time (added in v2.1-RC).", "type": "number", "minimum": 1450155600 }, "current_range_meters": { "description": "The furthest distance in meters that the vehicle can travel without recharging or refueling with the vehicle's current charge or fuel (added in v2.1-RC).", "type": "number", "minimum": 0 }, "station_id": { "description": "Identifier referencing the station_id if the vehicle is currently at a station (added in v2.1-RC2).", "type": "string" }, "pricing_plan_id": { "description": "The plan_id of the pricing plan this vehicle is eligible for (added in v2.1-RC2).", "type": "string" } }, "required": [ "bike_id", "is_reserved", "is_disabled" ] }, "required": [ "bikes" ] } } } }, "required": [ "id", "last_updated", "type" ] }