Vehicle Parking Updaters
Contact Info
- For HSL Park and Ride updater: Digitransit team, HSL, Helsinki, Finland
- For Bikely updater: Leonard Ehrenfried, mail@leonard.io
Documentation
This sandbox contains vehicle parking updaters. Unlike for some other sandbox features, this is not
enabled/disabled through otp-config.json
but from router-config.json
updaters.
Currently contains the following updaters:
Configuration
These sandboxed vehicle parking updaters can be enabled by editing the updaters
section in
the router-config.json
according to the following examples.
All updaters have the following parameters in common:
type
: this needs to be"vehicle-parking"
feedId
: this is used as a "prefix" for park ids, entrance ids and sometimes also for tags.
HSL Park and Ride
Config Parameter | Type | Summary | Req./Opt. | Default Value | Since |
---|---|---|---|---|---|
type = "vehicle-parking" | enum |
The type of the updater. | Required | 1.5 | |
facilitiesFrequencySec | integer |
How often the facilities should be updated. | Optional | 3600 |
2.2 |
facilitiesUrl | string |
URL of the facilities. | Optional | 2.2 | |
feedId | string |
The name of the data source. | Required | 2.2 | |
hubsUrl | string |
Hubs URL | Optional | 2.2 | |
sourceType | enum |
The source of the vehicle updates. | Required | 2.2 | |
timeZone | time-zone |
The time zone of the feed. | Optional | 2.2 | |
utilizationsFrequencySec | integer |
How often the utilization should be updated. | Optional | 600 |
2.2 |
utilizationsUrl | string |
URL of the utilization data. | Optional | 2.2 |
Details
feedId
Since version: 2.2
∙ Type: string
∙ Cardinality: Required
Path: /updaters/[2]
The name of the data source.
This will end up in the API responses as the feed id of of the parking lot.
sourceType
Since version: 2.2
∙ Type: enum
∙ Cardinality: Required
Path: /updaters/[2]
Enum values: park-api
| bicycle-park-api
| hsl-park
| bikely
The source of the vehicle updates.
timeZone
Since version: 2.2
∙ Type: time-zone
∙ Cardinality: Optional
Path: /updaters/[2]
The time zone of the feed.
Used for converting abstract opening hours into concrete points in time.
Example configuration
// router-config.json
{
"updaters" : [
{
"type" : "vehicle-parking",
"sourceType" : "hsl-park",
"feedId" : "hslpark",
"timeZone" : "Europe/Helsinki",
"facilitiesFrequencySec" : 3600,
"facilitiesUrl" : "https://p.hsl.fi/api/v1/facilities.json?limit=-1",
"utilizationsFrequencySec" : 600,
"utilizationsUrl" : "https://p.hsl.fi/api/v1/utilizations.json?limit=-1",
"hubsUrl" : "https://p.hsl.fi/api/v1/hubs.json?limit=-1"
}
]
}
ParkAPI
Config Parameter | Type | Summary | Req./Opt. | Default Value | Since |
---|---|---|---|---|---|
type = "vehicle-parking" | enum |
The type of the updater. | Required | 1.5 | |
feedId | string |
The name of the data source. | Required | 2.2 | |
frequency | duration |
How often to update the source. | Optional | "PT1M" |
2.2 |
sourceType | enum |
The source of the vehicle updates. | Required | 2.2 | |
timeZone | time-zone |
The time zone of the feed. | Optional | 2.2 | |
url | string |
URL of the resource. | Optional | 2.2 | |
headers | map of string |
HTTP headers to add to the request. Any header key, value can be inserted. | Optional | 2.2 | |
tags | string[] |
Tags to add to the parking lots. | Optional | 2.2 |
Details
feedId
Since version: 2.2
∙ Type: string
∙ Cardinality: Required
Path: /updaters/[3]
The name of the data source.
This will end up in the API responses as the feed id of of the parking lot.
sourceType
Since version: 2.2
∙ Type: enum
∙ Cardinality: Required
Path: /updaters/[3]
Enum values: park-api
| bicycle-park-api
| hsl-park
| bikely
The source of the vehicle updates.
timeZone
Since version: 2.2
∙ Type: time-zone
∙ Cardinality: Optional
Path: /updaters/[3]
The time zone of the feed.
Used for converting abstract opening hours into concrete points in time.
headers
Since version: 2.2
∙ Type: map of string
∙ Cardinality: Optional
Path: /updaters/[3]
HTTP headers to add to the request. Any header key, value can be inserted.
tags
Since version: 2.2
∙ Type: string[]
∙ Cardinality: Optional
Path: /updaters/[3]
Tags to add to the parking lots.
Example configuration
// router-config.json
{
"updaters" : [
{
"type" : "vehicle-parking",
"sourceType" : "park-api",
"feedId" : "parkapi",
"timeZone" : "Europe/Berlin",
"frequency" : "10m",
"url" : "https://foo.bar",
"headers" : {
"Cache-Control" : "max-age=604800"
},
"tags" : [
"source:parkapi"
]
}
]
}
Bikely
Config Parameter | Type | Summary | Req./Opt. | Default Value | Since |
---|---|---|---|---|---|
type = "vehicle-parking" | enum |
The type of the updater. | Required | 1.5 | |
feedId | string |
The name of the data source. | Required | 2.2 | |
frequency | duration |
How often to update the source. | Optional | "PT1M" |
2.3 |
sourceType | enum |
The source of the vehicle updates. | Required | 2.2 | |
url | uri |
URL of the locations endpoint. | Optional | 2.3 | |
headers | map of string |
HTTP headers to add to the request. Any header key, value can be inserted. | Optional | 2.3 |
Details
feedId
Since version: 2.2
∙ Type: string
∙ Cardinality: Required
Path: /updaters/[4]
The name of the data source.
This will end up in the API responses as the feed id of of the parking lot.
sourceType
Since version: 2.2
∙ Type: enum
∙ Cardinality: Required
Path: /updaters/[4]
Enum values: park-api
| bicycle-park-api
| hsl-park
| bikely
The source of the vehicle updates.
headers
Since version: 2.3
∙ Type: map of string
∙ Cardinality: Optional
Path: /updaters/[4]
HTTP headers to add to the request. Any header key, value can be inserted.
Example configuration
// router-config.json
{
"updaters" : [
{
"type" : "vehicle-parking",
"feedId" : "bikely",
"sourceType" : "bikely",
"url" : "https://api.safebikely.com/api/v1/s/locations",
"headers" : {
"X-Bikely-Token" : "${BIKELY_TOKEN}",
"Authorization" : "${BIKELY_AUTHORIZATION}"
}
}
]
}