Location
Service to communicate with locations.
Endpoints
GET/location/v1/locations
Get locations
GET
/location/v1/locations/{id}
Get location
PATCH
/location/v1/locations/{id}
Update location
GET
/location/v1/public-areas/{public_area_id}/locations
Get public area locations
/location/v1/locations
Get locations
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
radius |
string | No | Limit the result of returned locations by given radius. Ignored if lat_lng is not present. https://en.wikipedia.org/wiki/Geographical_distance#Spherical_Earth_projected_to_a_plane |
include |
string | No | Include additional data in the response. Supported values: resources |
tag |
string | No | Filter by location tag. Can be used as multiple value query param. |
lat_lng |
string | No | Filter locations by given latitude and longitude. For example lat_lng=59.4098187,24.7322463 |
Responses
200 response
data
[object]
code
string
owner_id
string
Restricted field, requires additional permissions
operator_id
string
Restricted field, requires additional permissions
support_phone
string
Support phone number for this location
latitude
number
icon
object
png2x
string
deprecated
Deprecated: use type instead
svg
string
deprecated
Deprecated: use type instead
png
string
deprecated
Deprecated: use type instead
type
string
Icon family ID, to be used with local/external assets
description
string
Restricted field, requires additional permissions
type
string
BIKE_DOCKS
BIKE_LOCKERS
BIKE_HOUSE
BIKE_HOUSE_DOCKLESS
BIKE_HANGAR
SCOOTER_DOCKS
SCOOTER_DOCKS_V2
BIKE_RENTALS
BIKE_RENTALS_SESSIONLESS
SCOOTER_RENTALS
BIKE_RENTALS and SCOOTER_RENTALS are deprecated.
has_maintenance_issues
boolean
Restricted field, requires additional permissions
terms_url
string
Terms and conditions for the usage of this location
audit
object
Restricted field, requires additional permissions
connection
string
onlinepartially_onlineofflineunknown
id
string
has_access_lists
boolean
reseller_id
string
Restricted field, requires additional permissions
longitude
number
address
string
offline_since
string
RFC3339 timestamp or empty string
rental_devices
object
deprecated
Deprecated: will be removed in a future version
available
number
deprecated
Deprecated. Number of available rental devices to rent
icon
object
deprecated
Deprecated: use icon on location root instead
uri
string
devices
object
total
number
Number of total locking devices in location
available
number
Number of available locking devices to use
icon
object
deprecated
Deprecated: use icon on location root instead
online
number
Number of online locking devices
resources
[object]
Detailed overview of location device resources, to determine which are online/available, included in response when querying with ‘include=resources’ param value
available
object
alias
string
Resource alias, usually dock number when dealing with devices
online
object
uri
string
label
string
uri
string
tags
[string]
Public tags, displayed to everyone
support_email
string
Support email address for this location
allowlisted
boolean
distributor_id
string
Restricted field, requires additional permissions
name
string
Convenience field, combines code and label
comment
string
Restricted field, requires additional permissions
private_tags
[string]
Restricted field, requires additional permissions
status
string
IN_HOUSE
DEMO
IN_DELIVERY
INSTALLED
LAUNCHED_OFFLINE
LAUNCHED
MAINTENANCE
OBSOLETE
uri
string
{
"data": [
{
"code": "string",
"owner_id": "00000000-0000-0000-0000-000000000000",
"operator_id": "00000000-0000-0000-0000-000000000000",
"support_phone": "+372 5555 5555",
"latitude": 59.437,
"icon": {
"png2x": "string",
"svg": "string",
"png": "string",
"type": "string"
},
"description": "string",
"type": "BIKE_DOCKS",
"has_maintenance_issues": true,
"terms_url": "https://example.com/resource",
"audit": {},
"connection": "online",
"id": "00000000-0000-0000-0000-000000000000",
"has_access_lists": true,
"reseller_id": "00000000-0000-0000-0000-000000000000",
"longitude": 24.7536,
"address": "string",
"offline_since": "2025-01-15T12:00:00Z",
"rental_devices": {
"available": 0,
"icon": {},
"uri": "https://example.com/resource"
},
"devices": {
"total": 0,
"available": 0,
"icon": {},
"online": 0,
"resources": [
{
"available": {
"last_updated": "string",
"value": true
},
"alias": "string",
"online": {
"last_updated": "string",
"value": true
}
}
],
"uri": "https://example.com/resource"
},
"label": "string",
"uri": "https://example.com/resource",
"tags": [
"string"
],
"support_email": "user@example.com",
"allowlisted": true,
"distributor_id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"comment": "string",
"private_tags": [
"string"
],
"status": "IN_HOUSE"
}
],
"uri": "https://example.com/resource"
}
400 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
403 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
500 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
Example Request
curl \
"https://services.bikeep.com/location/v1/locations" \
-H "Authorization: Bearer {ACCESS_TOKEN}"
/location/v1/locations/{id}
Get location
Path Parameters
| Name | Type | Description |
|---|---|---|
id |
string | Location id required |
Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
include |
string | No | Include additional data in the response. Supported values: resources |
Responses
200 response
subscriptions
object
uri
string
Subscriptions available in the location
owner_id
string
Restricted field, requires additional permissions
operator_id
string
Restricted field, requires additional permissions
support_phone
string
Support phone number for this location
type
string
BIKE_DOCKS
BIKE_LOCKERS
BIKE_HOUSE
BIKE_HOUSE_DOCKLESS
BIKE_HANGAR
SCOOTER_DOCKS
SCOOTER_DOCKS_V2
BIKE_RENTALS
BIKE_RENTALS_SESSIONLESS
SCOOTER_RENTALS
BIKE_RENTALS and SCOOTER_RENTALS are deprecated.
descriptions
object
uri
string
Additional location descriptions
access_list_ids
[string]
Access list IDs active in this location
allowlist_ids
[string]
Allowlist IDs active in this location
rfid_parking
boolean
free_parking_details
string
More detailed info about free parking in this location
segment
string
whitelists
object
uri
string
Whitelists the location is in
app_parking
boolean
connection
string
onlinepartially_onlineofflineunknown
id
string
state
string
reseller_id
string
Restricted field, requires additional permissions
longitude
number
generation
string
Restricted field, requires additional permissions
offline_since
string
RFC3339 timestamp or empty string
devices
object
total
number
Number of total locking devices in location
available
number
Number of available locking devices to use
icon
object
deprecated
Deprecated: use icon on location root instead
online
number
Number of online locking devices
resources
[object]
Detailed overview of location device resources, to determine which are online/available, included in response when querying with ‘include=resources’ param value
available
object
last_updated
string
RFC3339 timestamp
value
boolean
alias
string
Resource alias, usually dock number when dealing with devices
online
object
last_updated
string
RFC3339 timestamp
value
boolean
uri
string
free_parking_summary
string
Brief info about free parking in this location
terms_updated_at
string
Timestamp of the terms and conditions last update (RFC3339 timestamp)
tags
[string]
Public tags, displayed to everyone
allowlisted
boolean
district
string
distributor_id
string
Restricted field, requires additional permissions
name
string
Convenience field, combines code and label
region
string
status
string
IN_HOUSE
DEMO
IN_DELIVERY
INSTALLED
LAUNCHED_OFFLINE
LAUNCHED
MAINTENANCE
OBSOLETE
code
string
city
string
latitude
number
icon
object
png2x
string
deprecated
Deprecated: use type instead
svg
string
deprecated
Deprecated: use type instead
png
string
deprecated
Deprecated: use type instead
type
string
Icon family ID, to be used with local/external assets
description
string
Restricted field, requires additional permissions
has_maintenance_issues
boolean
Restricted field, requires additional permissions
booking_available
boolean
terms_url
string
Terms and conditions for the usage of this location
audit
object
Restricted field, requires additional permissions
external_devices
object
uri
string
Non-Bikeep devices used in the location
has_access_lists
boolean
address
string
rental_devices
object
deprecated
Deprecated: will be removed in a future version
available
number
deprecated
Deprecated: will be removed in a future version. Number of available rental devices to rent
icon
object
deprecated
Deprecated: use icon on location root instead
uri
string
deprecated
Deprecated: will be removed in a future version
auto_restarts_enabled
boolean
Restricted field, requires additional permissions
label
string
uri
string
power_save_strategy
string
Restricted field, requires additional permissions
free_parking_hours
number
How many hours is one allowed to use this location for free parking
use_case
string
analytics_dashboard_id
string
Restricted field, requires additional permissions
e_charging
boolean
support_email
string
Support email address for this location
max_user_sessions
number
Maximum number of concurrent parking sessions allowed in the location
organizations
object
uri
string
deprecated
Deprecated: use owner, operator, reseller and distributor IDs instead
comment
string
Restricted field, requires additional permissions
private_tags
[string]
Restricted field, requires additional permissions
free_of_charge
boolean
{
"subscriptions": {
"uri": "https://example.com/resource"
},
"owner_id": "00000000-0000-0000-0000-000000000000",
"operator_id": "00000000-0000-0000-0000-000000000000",
"support_phone": "+372 5555 5555",
"type": "BIKE_DOCKS",
"descriptions": {
"uri": "https://example.com/resource"
},
"access_list_ids": [
"string"
],
"allowlist_ids": [
"string"
],
"rfid_parking": true,
"free_parking_details": "string",
"segment": "string",
"whitelists": {
"uri": "https://example.com/resource"
},
"app_parking": true,
"connection": "online",
"id": "00000000-0000-0000-0000-000000000000",
"state": "string",
"reseller_id": "00000000-0000-0000-0000-000000000000",
"longitude": 24.7536,
"generation": "string",
"offline_since": "2025-01-15T12:00:00Z",
"devices": {
"total": 0,
"available": 0,
"icon": {},
"online": 0,
"resources": [
{
"available": {
"last_updated": "string",
"value": true
},
"alias": "string",
"online": {
"last_updated": "string",
"value": true
}
}
],
"uri": "https://example.com/resource"
},
"free_parking_summary": "string",
"terms_updated_at": "2025-01-15T12:00:00Z",
"tags": [
"string"
],
"allowlisted": true,
"district": "string",
"distributor_id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"region": "string",
"status": "IN_HOUSE",
"code": "string",
"city": "string",
"latitude": 59.437,
"icon": {
"png2x": "string",
"svg": "string",
"png": "string",
"type": "string"
},
"description": "string",
"has_maintenance_issues": true,
"booking_available": true,
"terms_url": "https://example.com/resource",
"audit": {},
"external_devices": {
"uri": "https://example.com/resource"
},
"has_access_lists": true,
"address": "string",
"rental_devices": {
"available": 0,
"icon": {},
"uri": "https://example.com/resource"
},
"auto_restarts_enabled": true,
"label": "string",
"uri": "https://example.com/resource",
"power_save_strategy": "string",
"free_parking_hours": 0,
"use_case": "string",
"analytics_dashboard_id": "00000000-0000-0000-0000-000000000000",
"e_charging": true,
"support_email": "user@example.com",
"max_user_sessions": 0,
"organizations": {
"uri": "https://example.com/resource"
},
"comment": "string",
"private_tags": [
"string"
],
"free_of_charge": true
}
403 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
404 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
500 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
Example Request
curl \
"https://services.bikeep.com/location/v1/locations/{ID}" \
-H "Authorization: Bearer {ACCESS_TOKEN}"
/location/v1/locations/{id}
Update location
Path Parameters
| Name | Type | Description |
|---|---|---|
id |
string | Location id required |
Request Body required
code
string
city
string
owner_id
string
Requires organization management permissions
operator_id
string
Requires organization management permissions
support_phone
string
Requires superadmin permissions
latitude
number
description
string
Requires superadmin permissions
type
string
Requires superadmin permissions
rfid_parking
boolean
free_parking_details
string
Restricted field, requires additional permissions
terms_url
string
Requires superadmin permissions
booking_available
boolean
segment
string
app_parking
boolean
state
string
reseller_id
string
Requires organization management permissions
longitude
number
icon_type
string
Requires superadmin permissions
generation
string
Requires superadmin permissions
address
string
free_parking_summary
string
Restricted field, requires additional permissions
auto_restarts_enabled
boolean
Requires superadmin permissions
label
string
power_save_strategy
string
Requires superadmin permissions
free_parking_hours
number
use_case
string
Requires superadmin permissions
public_tags
object
Requires public tag management permissions
add
[string]
remove
[string]
support_email
string
Requires superadmin permissions
e_charging
boolean
max_user_sessions
number
Requires superadmin permissions
district
string
distributor_id
string
Requires organization management permissions
comment
string
Restricted field, requires additional permissions
region
string
Requires superadmin permissions
private_tags
object
Requires private tag permissions
add
[string]
remove
[string]
free_of_charge
boolean
{
"code": "string",
"city": "string",
"owner_id": "00000000-0000-0000-0000-000000000000",
"operator_id": "00000000-0000-0000-0000-000000000000",
"support_phone": "+372 5555 5555",
"latitude": 59.437,
"description": "string",
"type": "string",
"rfid_parking": true,
"free_parking_details": "string",
"terms_url": "https://example.com/resource",
"booking_available": true,
"segment": "string",
"app_parking": true,
"state": "string",
"reseller_id": "00000000-0000-0000-0000-000000000000",
"longitude": 24.7536,
"icon_type": "string",
"generation": "string",
"address": "string",
"free_parking_summary": "string",
"auto_restarts_enabled": true,
"label": "string",
"power_save_strategy": "string",
"free_parking_hours": 0,
"use_case": "string",
"public_tags": {
"add": [
"string"
],
"remove": [
"string"
]
},
"support_email": "user@example.com",
"e_charging": true,
"max_user_sessions": 0,
"district": "string",
"distributor_id": "00000000-0000-0000-0000-000000000000",
"comment": "string",
"region": "string",
"private_tags": {
"add": [
"string"
],
"remove": [
"string"
]
},
"free_of_charge": true
}
Responses
204 response
400 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
403 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
404 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
500 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
Example Request
curl \
-X PATCH \
"https://services.bikeep.com/location/v1/locations/{ID}" \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"code": "string",
"city": "string",
"owner_id": "00000000-0000-0000-0000-000000000000",
"operator_id": "00000000-0000-0000-0000-000000000000",
"support_phone": "+372 5555 5555",
"latitude": 59.437,
"description": "string",
"type": "string",
"rfid_parking": true,
"free_parking_details": "string",
"terms_url": "https://example.com/resource",
"booking_available": true,
"segment": "string",
"app_parking": true,
"state": "string",
"reseller_id": "00000000-0000-0000-0000-000000000000",
"longitude": 24.7536,
"icon_type": "string",
"generation": "string",
"address": "string",
"free_parking_summary": "string",
"auto_restarts_enabled": true,
"label": "string",
"power_save_strategy": "string",
"free_parking_hours": 0,
"use_case": "string",
"public_tags": {
"add": [
"string"
],
"remove": [
"string"
]
},
"support_email": "user@example.com",
"e_charging": true,
"max_user_sessions": 0,
"district": "string",
"distributor_id": "00000000-0000-0000-0000-000000000000",
"comment": "string",
"region": "string",
"private_tags": {
"add": [
"string"
],
"remove": [
"string"
]
},
"free_of_charge": true
}'
/location/v1/public-areas/{public_area_id}/locations
Get public area locations
No authorization required
Public area consists of selected locations grouped under a public area ID. Querying public area locations are for users who want to add Bikeep locations on/in their websites/apps. Since there is no authorization required, it is the fastest and easiest way to display Bikeep locations. Public areas are created and managed by Bikeep, let us know if you need one. The response is in GeoJSON format (https://geojson.org)
Path Parameters
| Name | Type | Description |
|---|---|---|
public_area_id |
string | Public area ID required |
Responses
200 response
features
[object]
geometry
object
coordinates
[number]
type
string
Point
type
string
Feature
properties
object
parking
object
total
number
Total number of docks in location
available
number
Available docks for parking
online
number
Docks currently online
code
string
address
string
name
string
Convenience field, combines code and label
icon
object
deprecated
Deprecated: will be removed in the next version
png2x
string
deprecated
Deprecated: use icon type field instead
svg
string
deprecated
Deprecated: use icon type field instead
png
string
deprecated
Deprecated: use icon type field instead
label
string
renting
object
deprecated
Deprecated: will be removed in a future version.
available_docks
number
deprecated
Deprecated. Available docks for returning rentals
online_docks
number
deprecated
Deprecated. Currently online docks for returning rentals
total_docks
number
deprecated
Deprecated. Total docks for returning rentals
available_rentals
number
deprecated
Deprecated. Available rental devices (null if not available, as with sessionless bike rental)
tags
[string]
type
string
FeatureCollection
{
"features": [
{
"geometry": {
"coordinates": [
0
],
"type": "Point"
},
"type": "Feature",
"properties": {
"parking": {
"total": 0,
"available": 0,
"online": 0
},
"code": "string",
"address": "string",
"name": "string",
"icon": {
"png2x": "string",
"svg": "string",
"png": "string"
},
"label": "string",
"renting": {
"available_docks": 0,
"online_docks": 0,
"total_docks": 0,
"available_rentals": 0
},
"tags": [
"string"
]
}
}
],
"type": "FeatureCollection"
}
404 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
500 response
error_message
string
Human-readable error message.
status_code
integer
HTTP status code.
correlation_id
string
Request correlation ID for tracing.
error_code
string
Machine-readable error code, e.g. ERRORS.NOT_FOUND
{
"error_message": "string",
"status_code": 0,
"correlation_id": "00000000-0000-0000-0000-000000000000",
"error_code": "string"
}
Example Request
curl \
"https://services.bikeep.com/location/v1/public-areas/{PUBLIC_AREA_ID}/locations"