Data
Parking system Item
Parking system Item represents parking garage or parking lot typically with multiple entries/exits operated behind a barriers. The parking system Item must have class set to ParkingSystem
.
Item metadata
All parking-specific data is defined inside Item meta
object. It stores parking type, payment methods, parking accessibility and device list.
{
"type": "Garage",
"configurable": true,
"controllable": true,
"provider": {
"name": "Operator Ltd.",
"contact": "Phone 577 100 589"
},
"capacity": {
"total": 120,
"grouped": [{
"permit": "TaxiPermit",
"total": 10
}]
},
"payments": [
"Cash",
"Card",
"Sms"
],
"accessibility": {
"wheelchair": true,
"lpg": false,
"maxHeight": "200",
"maxLength": "400",
"maxWidth": "250"
},
"openingHours": [{
"dayOfWeek": ["Monday", "Tuesday"],
"opens": "09:00",
"duration": 480
}],
"images": {
"detailUri": "https://dotsoft.local/contents/donwload/507f1f77bcf86cd799439011"
},
"devices": [{
"name": "et1",
"type": "EntryTerminal",
"level": 0,
"description": "Entry terminal at Bay Street",
"position": {
"type": "Point",
"coordinates": [
17.991249561309814, 49.338986542414744
]
}
}],
"floors": [{
"level": 0,
"name": "Ground parking",
"polygon": {
"type": "Polygon",
"coordinates": [
[
[17.991206645965576, 49.33923820771258],
[17.99083113670349, 49.33912635662798],
[17.99161434173584, 49.33904246814772],
[17.991206645965576, 49.33923820771258]
]
]
}
}]
}
Where:
type
Parking type (Garage
orLot
)provider
Provider informationconfigurable
The parking system can be configuredcontrollable
The parking system can be controlledcapacity
Parking capacitycapacity
.overall
.total
Number of total placescapacity
.grouped
Capacity of parking places grouped by parking permitscapacity
.grouped
.permit
Parking permit (BlueZone
,DisabledPermit
,CarpoolingPermit
,EmployeePermit
,GovernmentPermit
,ResidentPermit
orTaxiPermit
)capacity
.grouped
.total
Number of total placespayments
Set of payment method flags (Cash
,Card
,Credit
,Sms
orOther
)accessibility
Information about parking accessibilityaccessibility
.wheelchair
True if parking is open for disabled driversaccessiblity
.lpg
True if vehicles with LPG allowedaccessiblity
.maxHeight
Maximum vehicle height allowed (in cm)accessiblity
.maxLength
Maximum vehicle length allowed (in cm)accessiblity
.maxWidth
Maximum vehicle width allowed (in cm)openingHours
Definition of opening hoursopeningHours
.dayOfWeek
List of days (Monday
,Tuesday
,Wednesday
,Thursday
,Friday
,Saturday
orSunday
)openingHours
.opens
Opening time (in formathh:mm
)openingHours
.duration
Opening time duration (in minutes)images
Parking system imagesimages
.detailUri
URI of detail imagedevices
List of parking system components, eg. terminals, barriers or cashiersdevices
.name
Device name used in malfunction reporting and control commandsdevices
.type
Type of device (Barrier
,EntryTerminal
,ExitTerminal
,PaymentTerminal
orCamera
)devices
.level
Device floor level (0 for ground)devices
.description
Device descriptiondevices
.position
Device position on map (in GeoJSONPoint
geometry object)floors
List of floors (in building)floors
.level
Floor level (0 for ground)floors
.name
Floor namefloors
.polygon
Floor area on map (in GeoJSONPolygon
geometry object)
Occupancy data
Occupancy data describes parking occupancy state. This data is updated periodically based on processing of ParkingSystemOccupancyChangedEvent
event. The occupancy data is stored in Item under the occupancy
data key.
{
"overall": {
"total": 120,
"free": 78
},
"grouped": [{
"permit": "TaxiPermit",
"total": 5,
"free": 1
}]
}
Where:
overall
Overall occupancy of parking lotoverall
.total
Number of total placesoverall
.free
Number of free placesgrouped
Occupancy of parking places grouped by parking permitsgrouped
.permit
Parking permit (BlueZone
,DisabledPermit
,CarpoolingPermit
,EmployeePermit
,GovernmentPermit
,ResidentPermit
orTaxiPermit
)grouped
.total
Number of total placesgrouped
.free
Number of free places
Parking zone Item
Parking zone Item represents parking zone or parking street restricted by specific geographical area. It is typically used as a virtual parking zone where other parking Items like occupancy sensors or payment machines can be located. The Parking zone Item must have class set to ParkingZone
.
Item metadata
All zone-specific data is defined inside Item meta
object. It describes zone type, name, level and provider information.
{
"tariffZone": "Zone A",
"tariffInfo": "Each hour *10 CZK*",
"openingHours": [{
"dayOfWeek": ["Monday", "Tuesday"],
"opens": "09:00",
"duration": 480
}]
}
Where:
tariffZone
Tariff zone nametarrifInfo
Tariff information (in Markdown)openingHours
Definition of opening hoursopeningHours
.dayOfWeek
List of days (Monday
,Tuesday
,Wednesday
,Thursday
,Friday
,Saturday
orSunday
)openingHours
.opens
Opening time (in formathh:mm
)openingHours
.duration
Opening time duration (in minutes)
Occupancy data
Occupancy data describes parking occupancy state. This data is updated periodically based on processing of ParkingZoneOccupancyChangedEvent
event. The occupancy data is stored in Item under the occupancy
data key.
{
"overall": {
"total": 120,
"free": 78
},
"grouped": [{
"permit": "TaxiPermit",
"total": 5,
"free": 1
}]
}
Where:
overall
Overall occupancy of parking lotgrouped
.total
Number of total placesgrouped
.free
Number of free placesgrouped
Occupancy of parking places grouped by parking permitsgrouped
.permit
Parking permit (BlueZone
,DisabledPermit
,CarpoolingPermit
,EmployeePermit
,GovernmentPermit
,ResidentPermit
orTaxiPermit
)grouped
.total
Number of total placesgrouped
.free
Number of free places
Payment machine Item
Payment machine Item represents payment machine or payment terminal dedicated parking fees collection. The Parking system Item must have class set to PaymentMachine
.
Item metadata
All parking-specific data is defined inside Item meta
object. It describes parking type, payment methods, parking accessibility and device list.
{
"provider": {
"name": "Operator Ltd.",
"contact": "Phone 577 100 589"
},
"payments": [
"Cash",
"Card",
"Sms"
],
"openingHours": {},
"images": {
"detailUri": "https://dotsoft.local/contents/donwload/507f1f77bcf86cd799439011"
}
}
Where:
provider
Provider informationpayments
Set of payment method flags (Cash
,Card
,Credit
,Sms
orOther
)openingHours
Definition of opening hoursopeningHours
.dayOfWeek
List of days (Monday
,Tuesday
,Wednesday
,Thursday
,Friday
,Saturday
orSunday
)openingHours
.opens
Opening time (in formathh:mm
)openingHours
.duration
Opening time duration (in minutes)images
Parking terminal imagesimages
.detailUri
URI of detail image
Occupancy sensor Item
Occupancy sensor Item represents parking occupancy sensor that detects occupancy of one parking place. The Parking system Item must have class set to OccupancySensor
.
Item metadata
All sensor-specific data is defined inside Item meta
object. It describes level and parking permits.
{
"level": {
"number": 0,
"name": "1PP"
},
"permits": [
"BlueZone",
"DisabledPermit"
],
"overstayLimit": 120
}
Where:
level
Level informationlevel
.number
Level number (eg. 0 as ground or -1 as underground)level
.name
Level namepermits
List of parking permits (BlueZone
,EvPermit
,DisabledPermit
,CarpoolingPermit
,EmployeePermit
,GovernmentPermit
,ResidentPermit
orTaxiPermit
)overstayLimit
Overstay limit (in minutes)
Occupancy data
Occupancy data describes parking sensor state. This data is updated periodically based on processing of SensorOccupancyChangedEvent
event. The occupancy data is stored in Item under the occupancy
data key (property).
{
"occupied": true,
"overstay": false
}
Where:
occupied
Vehicle presence at sensor (true
if place is occupied)overstay
Vehicle overstay (true
if vehicle stays on place over limit)
Commands
BarrierControlCommand
Command with type BarrierControlCommand
is dedicated to control the barriers of parking system.
Command extras
{
"device": "et1",
"action": "BarrierUp"
}
Where:
device
Device name from device list stored in Item metadata. Device type must beEntryTerminal
,ExitTerminal
orBarrier
.action
Action requested to be executed on equipment (BarrierUp
,BarrierDown
orAllowPassage
)
Events
ParkingSystemOccupancyChangedEvent
Event with type ParkingSystemOccupancyChangedEvent
shall be registered whenever parking system occupancy has changed.
Event extras
{
"overall": {
"total": 120,
"free": 78
},
"grouped": [{
"permit": "TaxiPermit",
"total": 5,
"free": 1
}]
}
Where:
overall
Overall occupancy of parking lotgrouped
.total
Number of total placesgrouped
.free
Number of free placesgrouped
Occupancy of parking places grouped by parking permitsgrouped
.permit
Parking permit (BlueZone
,DisabledPermit
,CarpoolingPermit
,EmployeePermit
,GovernmentPermit
,ResidentPermit
orTaxiPermit
)grouped
.total
Number of total placesgrouped
.free
Number of free places
ParkingVehicleEnteredEvent
Event with type ParkingVehicleEnteredEvent
shall be registered after new vehicle enters the parking.
Event extras
{
"sessionId": "456123",
"device": "et1",
"lpn": "2Z96447",
"image": "aHR0cHM6Ly93d3cubW90b2JpdC5jb20==="
}
Where:
sessionId
Vehicle entrance identification (if available)device
Device name from device list stored in Item metadatalpn
License plate numberimage
Picture (in Base64 format)
ParkingVehicleLeftEvent
Event with type ParkingVehicleLeftEvent
shall be registered after vehicle leaves the parking.
Event extras
{
"sessionId": "456123",
"device": "xt1",
"lpn": "2Z96447",
"image": "aHR0cHM6Ly93d3cubW90b2JpdC5jb20==="
}
Where:
sessionId
Vehicle entrance identification (if available)device
Device name from device list stored in Item metadatalpn
License plate numberimage
Picture (in Base64 format)
ParkingTransactionEvent
Event with type ParkingTransactionEvent
shall be registered each time parking system issue a new transaction.
Event extras
{
"device": "pt1",
"transactionType": "ParkingFeePayment",
"paymentMethod": "Card",
"amount": 450,
"currency": "CZK"
}
Where:
device
Device name from device list stored in Item metadata. The type of device must bePaymentTerminal
.transactionType
Transaction type (ParkingFeePayment
,CreditTopUp
orTravelTicket
)paymentMethod
Payment method (Cash
,Card
,Credit
,Sms
orOther
)amount
Amount including VATcurrency
Currency in the ISO 4217 format
ParkingZoneOccupancyChangedEvent
Event with type ParkingZoneOccupancyChangedEvent
shall be registered whenever parking zone occupancy has changed.
Event extras
{
"overall": {
"total": 120,
"free": 78
},
"grouped": [{
"permit": "TaxiPermit",
"total": 5,
"free": 1
}]
}
Where:
overall
Overall occupancy of parking lotgrouped
.total
Number of total placesgrouped
.free
Number of free placesgrouped
Occupancy of parking places grouped by parking permitsgrouped
.permit
Parking permit (BlueZone
,DisabledPermit
,CarpoolingPermit
,EmployeePermit
,GovernmentPermit
,ResidentPermit
orTaxiPermit
)grouped
.total
Number of total placesgrouped
.free
Number of free places
SensorOccupancyChangedEvent
Event with type SensorOccupancyChangedEvent
shall be registered whenever parking sensor occupancy has changed.
Event extras
{
"occupied": true
}
Where:
occupied
Vehicle presence at sensor (true
if place is occupied)
SensorOverstayDetectedEvent
Event with type SensorOverstayDetectedEvent
shall be registered whenever parking sensor signalizes an overstay.
Event extras
{
"limit": 120
}
Where:
limit
Overstay limit (in minutes)
Types of malfunction events
Malfunction types in event extras
AlarmDetected
BatteryEmpty
PowerLost
OutOfOrder
BoxFull
BoxEmpty
PaperOut
TransactionIssue
CashManipulationIssue