@golemio/parkings 1.6.1 → 1.6.2-dev.1073199149
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/db/example/00_clear_test_data.sql +3 -0
- package/db/example/04_tsk_parking_v2.sql +21 -0
- package/db/migrations/postgresql/20230918124250-tsk-v-2-parking-sources.js +53 -0
- package/db/migrations/postgresql/20230918124259-tsk-v-2-parking-machines.js +53 -0
- package/db/migrations/postgresql/20230925090241-tsk-tariffs.js +53 -0
- package/db/migrations/postgresql/20231003115645-tsk-v-2-parking-special-access.js +53 -0
- package/db/migrations/postgresql/20231108130727-ipt-api-v3-allowed.js +53 -0
- package/db/migrations/postgresql/sqls/20230918124250-tsk-v-2-parking-sources-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20230918124250-tsk-v-2-parking-sources-up.sql +18 -0
- package/db/migrations/postgresql/sqls/20230918124259-tsk-v-2-parking-machines-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20230918124259-tsk-v-2-parking-machines-up.sql +15 -0
- package/db/migrations/postgresql/sqls/20230925090241-tsk-tariffs-down.sql +4 -0
- package/db/migrations/postgresql/sqls/20230925090241-tsk-tariffs-up.sql +4 -0
- package/db/migrations/postgresql/sqls/20231003115645-tsk-v-2-parking-special-access-down.sql +1 -0
- package/db/migrations/postgresql/sqls/20231003115645-tsk-v-2-parking-special-access-up.sql +1 -0
- package/db/migrations/postgresql/sqls/20231108130727-ipt-api-v3-allowed-down.sql +2 -0
- package/db/migrations/postgresql/sqls/20231108130727-ipt-api-v3-allowed-up.sql +2 -0
- package/dist/helpers/const.d.ts +0 -0
- package/dist/helpers/const.js +2 -0
- package/dist/helpers/const.js.map +1 -0
- package/dist/helpers/data-access/CachedParkingSourcesRepository.d.ts +12 -0
- package/dist/helpers/data-access/CachedParkingSourcesRepository.js +40 -0
- package/dist/helpers/data-access/CachedParkingSourcesRepository.js.map +1 -0
- package/dist/helpers/interfaces/IParkingSource.d.ts +8 -0
- package/dist/helpers/interfaces/IParkingSource.js +3 -0
- package/dist/helpers/interfaces/IParkingSource.js.map +1 -0
- package/dist/input-gateway/controllers/ParkingSourcesController.d.ts +9 -0
- package/dist/input-gateway/controllers/ParkingSourcesController.js +40 -0
- package/dist/input-gateway/controllers/ParkingSourcesController.js.map +1 -0
- package/dist/input-gateway/index.d.ts +2 -0
- package/dist/input-gateway/index.js +5 -0
- package/dist/input-gateway/index.js.map +1 -1
- package/dist/input-gateway/routers/ParkingSourcesRouter.d.ts +12 -0
- package/dist/input-gateway/routers/ParkingSourcesRouter.js +39 -0
- package/dist/input-gateway/routers/ParkingSourcesRouter.js.map +1 -0
- package/dist/integration-engine/ParkingInterface.d.ts +6 -0
- package/dist/integration-engine/datasources/TskParkingDataSourceFactory.d.ts +8 -0
- package/dist/integration-engine/datasources/TskParkingDataSourceFactory.js +51 -0
- package/dist/integration-engine/datasources/TskParkingDataSourceFactory.js.map +1 -0
- package/dist/integration-engine/index.d.ts +5 -1
- package/dist/integration-engine/index.js +5 -1
- package/dist/integration-engine/index.js.map +1 -1
- package/dist/integration-engine/ioc/Di.js +27 -1
- package/dist/integration-engine/ioc/Di.js.map +1 -1
- package/dist/integration-engine/ioc/ModuleContainerToken.d.ts +9 -0
- package/dist/integration-engine/ioc/ModuleContainerToken.js +9 -0
- package/dist/integration-engine/ioc/ModuleContainerToken.js.map +1 -1
- package/dist/integration-engine/repositories/ParkingMachinesRepository.d.ts +4 -0
- package/dist/integration-engine/repositories/ParkingMachinesRepository.js +35 -0
- package/dist/integration-engine/repositories/ParkingMachinesRepository.js.map +1 -0
- package/dist/integration-engine/repositories/ParkingSourcesRepository.d.ts +4 -0
- package/dist/integration-engine/repositories/ParkingSourcesRepository.js +23 -0
- package/dist/integration-engine/repositories/ParkingSourcesRepository.js.map +1 -0
- package/dist/integration-engine/transformations/TskParkingMachinesTransformation.d.ts +7 -0
- package/dist/integration-engine/transformations/TskParkingMachinesTransformation.js +24 -0
- package/dist/integration-engine/transformations/TskParkingMachinesTransformation.js.map +1 -0
- package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.d.ts +9 -0
- package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.js +42 -0
- package/dist/integration-engine/transformations/TskParkingSectionLevelTransformation.js.map +1 -0
- package/dist/integration-engine/transformations/TskParkingSectionTransformation.d.ts +10 -0
- package/dist/integration-engine/transformations/TskParkingSectionTransformation.js +66 -0
- package/dist/integration-engine/transformations/TskParkingSectionTransformation.js.map +1 -0
- package/dist/integration-engine/transformations/TskParkingZonesTariffsTransformation.d.ts +14 -0
- package/dist/integration-engine/transformations/TskParkingZonesTariffsTransformation.js +84 -0
- package/dist/integration-engine/transformations/TskParkingZonesTariffsTransformation.js.map +1 -0
- package/dist/integration-engine/workers/ParkingSourcesWorker.d.ts +5 -0
- package/dist/integration-engine/workers/ParkingSourcesWorker.js +18 -0
- package/dist/integration-engine/workers/ParkingSourcesWorker.js.map +1 -0
- package/dist/integration-engine/workers/TskParkingWorker.d.ts +5 -0
- package/dist/integration-engine/workers/TskParkingWorker.js +31 -0
- package/dist/integration-engine/workers/TskParkingWorker.js.map +1 -0
- package/dist/integration-engine/workers/schemas/ParkingSourceSchema.d.ts +9 -0
- package/dist/integration-engine/workers/schemas/ParkingSourceSchema.js +44 -0
- package/dist/integration-engine/workers/schemas/ParkingSourceSchema.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.d.ts +13 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.js +31 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingMachinesTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevelTask.d.ts +15 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevelTask.js +40 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionLevelTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.d.ts +13 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.js +41 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingSectionsTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingZonesTariffsTask.d.ts +11 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingZonesTariffsTask.js +33 -0
- package/dist/integration-engine/workers/tasks/SaveTskParkingZonesTariffsTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/UpdateParkingSourceTask.d.ts +14 -0
- package/dist/integration-engine/workers/tasks/UpdateParkingSourceTask.js +36 -0
- package/dist/integration-engine/workers/tasks/UpdateParkingSourceTask.js.map +1 -0
- package/dist/output-gateway/controllers/v3/V3ParkingController.d.ts +9 -0
- package/dist/output-gateway/controllers/v3/V3ParkingController.js +79 -0
- package/dist/output-gateway/controllers/v3/V3ParkingController.js.map +1 -0
- package/dist/output-gateway/controllers/v3/V3ParkingMachinesController.d.ts +9 -0
- package/dist/output-gateway/controllers/v3/V3ParkingMachinesController.js +78 -0
- package/dist/output-gateway/controllers/v3/V3ParkingMachinesController.js.map +1 -0
- package/dist/output-gateway/controllers/v3/V3ParkingTariffsController.d.ts +9 -0
- package/dist/output-gateway/controllers/v3/V3ParkingTariffsController.js +70 -0
- package/dist/output-gateway/controllers/v3/V3ParkingTariffsController.js.map +1 -0
- package/dist/output-gateway/data-access/ParkingMachinesRepository.d.ts +10 -0
- package/dist/output-gateway/data-access/ParkingMachinesRepository.js +101 -0
- package/dist/output-gateway/data-access/ParkingMachinesRepository.js.map +1 -0
- package/dist/output-gateway/data-access/ParkingRepository.d.ts +14 -0
- package/dist/output-gateway/data-access/ParkingRepository.js +141 -0
- package/dist/output-gateway/data-access/ParkingRepository.js.map +1 -0
- package/dist/output-gateway/data-access/TariffRepository.d.ts +10 -0
- package/dist/output-gateway/data-access/TariffRepository.js +99 -0
- package/dist/output-gateway/data-access/TariffRepository.js.map +1 -0
- package/dist/output-gateway/helpers/params/IPaginationParams.d.ts +4 -0
- package/dist/output-gateway/helpers/params/IPaginationParams.js +3 -0
- package/dist/output-gateway/helpers/params/IPaginationParams.js.map +1 -0
- package/dist/output-gateway/helpers/params/IParkingMachinesParams.d.ts +9 -0
- package/dist/output-gateway/helpers/params/IParkingMachinesParams.js +3 -0
- package/dist/output-gateway/helpers/params/IParkingMachinesParams.js.map +1 -0
- package/dist/output-gateway/helpers/params/IParkingParams.d.ts +10 -0
- package/dist/output-gateway/helpers/params/IParkingParams.js +3 -0
- package/dist/output-gateway/helpers/params/IParkingParams.js.map +1 -0
- package/dist/output-gateway/helpers/params/IParkingTariffsParams.d.ts +7 -0
- package/dist/output-gateway/helpers/params/IParkingTariffsParams.js +3 -0
- package/dist/output-gateway/helpers/params/IParkingTariffsParams.js.map +1 -0
- package/dist/output-gateway/index.js +9 -1
- package/dist/output-gateway/index.js.map +1 -1
- package/dist/output-gateway/ioc/Di.d.ts +3 -0
- package/dist/output-gateway/ioc/Di.js +30 -0
- package/dist/output-gateway/ioc/Di.js.map +1 -0
- package/dist/output-gateway/ioc/ModuleContainerToken.d.ts +9 -0
- package/dist/output-gateway/ioc/ModuleContainerToken.js +13 -0
- package/dist/output-gateway/ioc/ModuleContainerToken.js.map +1 -0
- package/dist/output-gateway/models/ParkingsLocationModel.d.ts +1 -1
- package/dist/output-gateway/models/ParkingsLocationModel.js +19 -5
- package/dist/output-gateway/models/ParkingsLocationModel.js.map +1 -1
- package/dist/output-gateway/models/ParkingsModel.d.ts +6 -4
- package/dist/output-gateway/models/ParkingsModel.js +46 -10
- package/dist/output-gateway/models/ParkingsModel.js.map +1 -1
- package/dist/output-gateway/models/ParkingsTariffsModel.d.ts +5 -1
- package/dist/output-gateway/models/ParkingsTariffsModel.js +17 -2
- package/dist/output-gateway/models/ParkingsTariffsModel.js.map +1 -1
- package/dist/output-gateway/models/index.js +4 -2
- package/dist/output-gateway/models/index.js.map +1 -1
- package/dist/output-gateway/routers/constants.d.ts +2 -1
- package/dist/output-gateway/routers/constants.js +1 -0
- package/dist/output-gateway/routers/constants.js.map +1 -1
- package/dist/output-gateway/routers/index.d.ts +3 -0
- package/dist/output-gateway/routers/index.js +3 -0
- package/dist/output-gateway/routers/index.js.map +1 -1
- package/dist/output-gateway/routers/v2/V2ParkingRouter.js +25 -4
- package/dist/output-gateway/routers/v2/V2ParkingRouter.js.map +1 -1
- package/dist/output-gateway/routers/v3/V3ParkingMachinesRouter.d.ts +3 -0
- package/dist/output-gateway/routers/v3/V3ParkingMachinesRouter.js +43 -0
- package/dist/output-gateway/routers/v3/V3ParkingMachinesRouter.js.map +1 -0
- package/dist/output-gateway/routers/v3/V3ParkingRouter.d.ts +3 -0
- package/dist/output-gateway/routers/v3/V3ParkingRouter.js +57 -0
- package/dist/output-gateway/routers/v3/V3ParkingRouter.js.map +1 -0
- package/dist/output-gateway/routers/v3/V3ParkingTariffsRouter.d.ts +3 -0
- package/dist/output-gateway/routers/v3/V3ParkingTariffsRouter.js +31 -0
- package/dist/output-gateway/routers/v3/V3ParkingTariffsRouter.js.map +1 -0
- package/dist/output-gateway/routers/v3/helpers/PrimarySourceValidator.d.ts +8 -0
- package/dist/output-gateway/routers/v3/helpers/PrimarySourceValidator.js +56 -0
- package/dist/output-gateway/routers/v3/helpers/PrimarySourceValidator.js.map +1 -0
- package/dist/output-gateway/transformations/interfaces/v3/IV3ParkingTariffDto.d.ts +27 -0
- package/dist/output-gateway/transformations/interfaces/v3/IV3ParkingTariffDto.js +3 -0
- package/dist/output-gateway/transformations/interfaces/v3/IV3ParkingTariffDto.js.map +1 -0
- package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.d.ts +9 -0
- package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.js +68 -0
- package/dist/output-gateway/transformations/v3/ParkingDtoTransformation.js.map +1 -0
- package/dist/output-gateway/transformations/v3/ParkingMachinesDtoTransformation.d.ts +8 -0
- package/dist/output-gateway/transformations/v3/ParkingMachinesDtoTransformation.js +35 -0
- package/dist/output-gateway/transformations/v3/ParkingMachinesDtoTransformation.js.map +1 -0
- package/dist/output-gateway/transformations/v3/ParkingTariffDtoTransformation.d.ts +11 -0
- package/dist/output-gateway/transformations/v3/ParkingTariffDtoTransformation.js +88 -0
- package/dist/output-gateway/transformations/v3/ParkingTariffDtoTransformation.js.map +1 -0
- package/dist/schema-definitions/datasources/InputParkingSourceSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/InputParkingSourceSchema.js +17 -0
- package/dist/schema-definitions/datasources/InputParkingSourceSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/ParkingTariffDtoSchema.d.ts +111 -3
- package/dist/schema-definitions/datasources/ParkingTariffDtoSchema.js +16 -0
- package/dist/schema-definitions/datasources/ParkingTariffDtoSchema.js.map +1 -1
- package/dist/schema-definitions/datasources/TskParkingMachinesSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/TskParkingMachinesSchema.js +23 -0
- package/dist/schema-definitions/datasources/TskParkingMachinesSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.js +25 -0
- package/dist/schema-definitions/datasources/TskParkingSectionLevelSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/TskParkingSectionSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/TskParkingSectionSchema.js +23 -0
- package/dist/schema-definitions/datasources/TskParkingSectionSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/TskParkingZoneTariffSchema.d.ts +3 -0
- package/dist/schema-definitions/datasources/TskParkingZoneTariffSchema.js +105 -0
- package/dist/schema-definitions/datasources/TskParkingZoneTariffSchema.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.d.ts +9 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingMachine.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.d.ts +9 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSection.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.d.ts +11 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingSectionLevel.js.map +1 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingZoneTariff.d.ts +57 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingZoneTariff.js +3 -0
- package/dist/schema-definitions/datasources/interfaces/ITskParkingZoneTariff.js.map +1 -0
- package/dist/schema-definitions/index.d.ts +3 -0
- package/dist/schema-definitions/index.js +8 -0
- package/dist/schema-definitions/index.js.map +1 -1
- package/dist/schema-definitions/models/ParkingMachinesModel.d.ts +14 -0
- package/dist/schema-definitions/models/ParkingMachinesModel.js +21 -0
- package/dist/schema-definitions/models/ParkingMachinesModel.js.map +1 -0
- package/dist/schema-definitions/models/ParkingSourcesModel.d.ts +12 -0
- package/dist/schema-definitions/models/ParkingSourcesModel.js +20 -0
- package/dist/schema-definitions/models/ParkingSourcesModel.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IAddress.d.ts +8 -0
- package/dist/schema-definitions/models/interfaces/IAddress.js +3 -0
- package/dist/schema-definitions/models/interfaces/IAddress.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IParking.d.ts +28 -0
- package/dist/schema-definitions/models/interfaces/IParking.js +3 -0
- package/dist/schema-definitions/models/interfaces/IParking.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IParkingLocation.d.ts +13 -0
- package/dist/schema-definitions/models/interfaces/IParkingLocation.js +3 -0
- package/dist/schema-definitions/models/interfaces/IParkingLocation.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/IParkingMachine.d.ts +10 -0
- package/dist/schema-definitions/models/interfaces/IParkingMachine.js +3 -0
- package/dist/schema-definitions/models/interfaces/IParkingMachine.js.map +1 -0
- package/dist/schema-definitions/{datasources → models}/interfaces/IParkingTariffDto.d.ts +8 -2
- package/dist/schema-definitions/models/interfaces/IParkingTariffDto.js.map +1 -0
- package/dist/schema-definitions/models/interfaces/tariff/IParkingTariffPeriod.d.ts +6 -0
- package/dist/schema-definitions/models/interfaces/tariff/IParkingTariffPeriod.js +3 -0
- package/dist/schema-definitions/models/interfaces/tariff/IParkingTariffPeriod.js.map +1 -0
- package/docs/implementation-documentation.md +116 -13
- package/docs/openapi-admin-input.yaml +90 -0
- package/docs/openapi-output.yaml +891 -58
- package/package.json +5 -3
- package/dist/schema-definitions/datasources/interfaces/IParkingTariffDto.js.map +0 -1
- /package/dist/schema-definitions/{datasources → models}/interfaces/IParkingTariffDto.js +0 -0
package/docs/openapi-output.yaml
CHANGED
|
@@ -20,6 +20,8 @@ tags:
|
|
|
20
20
|
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" /> 💡 Parking Lots
|
|
21
21
|
- name: 🅿️ Parking (v2)
|
|
22
22
|
description: <img src="https://img.shields.io/badge/opendata-available-green" alt="golemioapi-opendata-badge" /> 💡 Parking, parking zones, tarifs, measurements.
|
|
23
|
+
- name: 🅿️ Parking (v3)
|
|
24
|
+
description: 💡 Parking, tarifs, machines.
|
|
23
25
|
paths:
|
|
24
26
|
/v1/parkings:
|
|
25
27
|
get:
|
|
@@ -216,26 +218,18 @@ paths:
|
|
|
216
218
|
schema:
|
|
217
219
|
type: number
|
|
218
220
|
example: 0
|
|
219
|
-
- name:
|
|
221
|
+
- name: minutesBefore
|
|
220
222
|
in: query
|
|
221
|
-
required: true
|
|
222
|
-
style: form
|
|
223
|
-
explode: true
|
|
224
223
|
schema:
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
description: Lists items updated after given date (ISO format expected)
|
|
235
|
-
additionalProperties: false
|
|
236
|
-
oneOf:
|
|
237
|
-
- required: [ minutesBefore ]
|
|
238
|
-
- required: [ updatedSince ]
|
|
224
|
+
type: integer
|
|
225
|
+
example: 10
|
|
226
|
+
description: 'Filter by time conditions based on last data update. By maximal minutes before last update.'
|
|
227
|
+
- name: updatedSince
|
|
228
|
+
in: query
|
|
229
|
+
schema:
|
|
230
|
+
type: string
|
|
231
|
+
example: '2022-07-25T00:00:00.000Z'
|
|
232
|
+
description: 'Filter by time conditions based on last data update. Date has to be in ISO8601 format. Cannot be used together with minutsBefore.'
|
|
239
233
|
responses:
|
|
240
234
|
200:
|
|
241
235
|
description: OK
|
|
@@ -333,26 +327,18 @@ paths:
|
|
|
333
327
|
schema:
|
|
334
328
|
type: number
|
|
335
329
|
example: 0
|
|
336
|
-
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
updatedSince:
|
|
349
|
-
type: string
|
|
350
|
-
example: 2022-07-25
|
|
351
|
-
description: Lists items updated after given date (ISO format expected)
|
|
352
|
-
additionalProperties: false
|
|
353
|
-
oneOf:
|
|
354
|
-
- required: [ minutesBefore ]
|
|
355
|
-
- required: [ updatedSince ]
|
|
330
|
+
- name: minutesBefore
|
|
331
|
+
in: query
|
|
332
|
+
schema:
|
|
333
|
+
type: integer
|
|
334
|
+
example: 10
|
|
335
|
+
description: 'Filter by time conditions based on last data update. By maximal minutes before last update.'
|
|
336
|
+
- name: updatedSince
|
|
337
|
+
in: query
|
|
338
|
+
schema:
|
|
339
|
+
type: string
|
|
340
|
+
example: '2022-07-25T00:00:00.000Z'
|
|
341
|
+
description: 'Filter by time conditions based on last data update. Date has to be in ISO8601 format. Cannot be used together with minutsBefore.'
|
|
356
342
|
- name: zoneType
|
|
357
343
|
in: query
|
|
358
344
|
description: Filter by parking zone. Use with square brackets `zoneType[]`,
|
|
@@ -468,26 +454,18 @@ paths:
|
|
|
468
454
|
schema:
|
|
469
455
|
type: number
|
|
470
456
|
example: 0
|
|
471
|
-
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
updatedSince:
|
|
484
|
-
type: string
|
|
485
|
-
example: 2022-07-25
|
|
486
|
-
description: Lists items updated after given date (ISO format expected)
|
|
487
|
-
additionalProperties: false
|
|
488
|
-
oneOf:
|
|
489
|
-
- required: [ minutesBefore ]
|
|
490
|
-
- required: [ updatedSince ]
|
|
457
|
+
- name: minutesBefore
|
|
458
|
+
in: query
|
|
459
|
+
schema:
|
|
460
|
+
type: integer
|
|
461
|
+
example: 10
|
|
462
|
+
description: 'Filter by time conditions based on last data update. By maximal minutes before last update.'
|
|
463
|
+
- name: updatedSince
|
|
464
|
+
in: query
|
|
465
|
+
schema:
|
|
466
|
+
type: string
|
|
467
|
+
example: '2022-07-25T00:00:00.000Z'
|
|
468
|
+
description: 'Filter by time conditions based on last data update. Date has to be in ISO8601 format. Cannot be used together with minutsBefore.'
|
|
491
469
|
responses:
|
|
492
470
|
200:
|
|
493
471
|
description: OK
|
|
@@ -573,6 +551,314 @@ paths:
|
|
|
573
551
|
$ref: "#/components/responses/UnauthorizedError"
|
|
574
552
|
404:
|
|
575
553
|
description: Not found
|
|
554
|
+
/v3/parking:
|
|
555
|
+
get:
|
|
556
|
+
tags:
|
|
557
|
+
- 🅿️ Parking (v3)
|
|
558
|
+
summary: 'Get a list of parking locations with filtering options'
|
|
559
|
+
parameters:
|
|
560
|
+
- name: primarySource
|
|
561
|
+
in: query
|
|
562
|
+
schema:
|
|
563
|
+
type: array
|
|
564
|
+
items:
|
|
565
|
+
type: string
|
|
566
|
+
enum:
|
|
567
|
+
- tsk_v2
|
|
568
|
+
description: 'Filter by primary source. Use with square brackets `primarySource[]`'
|
|
569
|
+
- name: primarySourceId
|
|
570
|
+
in: query
|
|
571
|
+
schema:
|
|
572
|
+
type: string
|
|
573
|
+
example: 'c66bb668-eab6-49da-bc84-002263e1dce0'
|
|
574
|
+
description: 'Filter by primary source ID'
|
|
575
|
+
- name: boundingBox
|
|
576
|
+
in: query
|
|
577
|
+
schema:
|
|
578
|
+
type: string
|
|
579
|
+
example: '50.123,14.243,50.017,14.573'
|
|
580
|
+
description: 'Filter by bounding box in format "topLeft.lat,topLeft.lon,bottomRight.lat,bottomRight.lon", polygons that fit only partialy to selected bounding box are included'
|
|
581
|
+
- name: validFrom
|
|
582
|
+
in: query
|
|
583
|
+
schema:
|
|
584
|
+
type: string
|
|
585
|
+
format: date-time
|
|
586
|
+
example: '2022-08-01T00:00:00Z'
|
|
587
|
+
description: 'Filter by valid from date'
|
|
588
|
+
- name: accessDedicatedTo
|
|
589
|
+
in: query
|
|
590
|
+
schema:
|
|
591
|
+
type: array
|
|
592
|
+
items:
|
|
593
|
+
type: string
|
|
594
|
+
enum:
|
|
595
|
+
- for_all
|
|
596
|
+
- disabled
|
|
597
|
+
- charging
|
|
598
|
+
- parent
|
|
599
|
+
- delivery
|
|
600
|
+
- customer
|
|
601
|
+
- resident
|
|
602
|
+
- bus
|
|
603
|
+
- designated
|
|
604
|
+
- truck
|
|
605
|
+
- motorcycle
|
|
606
|
+
- RV
|
|
607
|
+
description: 'Experimental: Filter by access combinations to specific spaces in parking. Return only strictly matched parking by access to parking spaces'
|
|
608
|
+
- name: minutesBefore
|
|
609
|
+
in: query
|
|
610
|
+
schema:
|
|
611
|
+
type: integer
|
|
612
|
+
example: 10
|
|
613
|
+
description: 'Filter by time conditions based on last data update. By maximal minutes before last update.'
|
|
614
|
+
- name: updatedSince
|
|
615
|
+
in: query
|
|
616
|
+
schema:
|
|
617
|
+
type: string
|
|
618
|
+
example: '2022-07-25T00:00:00.000Z'
|
|
619
|
+
description: 'Filter by time conditions based on last data update. Date has to be in ISO8601 format. Cannot be used together with minutsBefore.'
|
|
620
|
+
- name: limit
|
|
621
|
+
in: query
|
|
622
|
+
schema:
|
|
623
|
+
type: integer
|
|
624
|
+
default: 1000
|
|
625
|
+
maximum: 10000
|
|
626
|
+
minimum: 0
|
|
627
|
+
description: 'Number of results to return'
|
|
628
|
+
- name: offset
|
|
629
|
+
in: query
|
|
630
|
+
schema:
|
|
631
|
+
type: integer
|
|
632
|
+
default: 0
|
|
633
|
+
minimum: 0
|
|
634
|
+
description: 'Number of results to skip for pagination'
|
|
635
|
+
responses:
|
|
636
|
+
'200':
|
|
637
|
+
description: 'Successful response'
|
|
638
|
+
content:
|
|
639
|
+
application/json; charset=utf-8:
|
|
640
|
+
schema:
|
|
641
|
+
type: object
|
|
642
|
+
properties:
|
|
643
|
+
features:
|
|
644
|
+
type: array
|
|
645
|
+
items:
|
|
646
|
+
$ref: '#/components/schemas/Parking'
|
|
647
|
+
type:
|
|
648
|
+
type: string
|
|
649
|
+
example: FeatureCollection
|
|
650
|
+
/v3/parking/{id}:
|
|
651
|
+
get:
|
|
652
|
+
tags:
|
|
653
|
+
- 🅿️ Parking (v3)
|
|
654
|
+
summary: 'Get detailed information about a parking location by ID'
|
|
655
|
+
parameters:
|
|
656
|
+
- name: id
|
|
657
|
+
in: path
|
|
658
|
+
required: true
|
|
659
|
+
schema:
|
|
660
|
+
type: string
|
|
661
|
+
format: uuid
|
|
662
|
+
example: 'c66bb668-eab6-49da-bc84-002263e1dce0'
|
|
663
|
+
description: 'The UUID identifier of the parking location to retrieve'
|
|
664
|
+
responses:
|
|
665
|
+
'200':
|
|
666
|
+
description: 'Successful response'
|
|
667
|
+
content:
|
|
668
|
+
application/json:
|
|
669
|
+
schema:
|
|
670
|
+
$ref: '#/components/schemas/Parking'
|
|
671
|
+
/v3/parking-tariffs:
|
|
672
|
+
get:
|
|
673
|
+
tags:
|
|
674
|
+
- 🅿️ Parking (v3)
|
|
675
|
+
summary: 'Get a list of tariffs with filtering options'
|
|
676
|
+
parameters:
|
|
677
|
+
- name: primarySource
|
|
678
|
+
in: query
|
|
679
|
+
schema:
|
|
680
|
+
type: array
|
|
681
|
+
items:
|
|
682
|
+
type: string
|
|
683
|
+
enum:
|
|
684
|
+
- tsk_v2
|
|
685
|
+
example: tsk_v2
|
|
686
|
+
description: 'Filter by primary source. Use with square brackets `primarySource[]`'
|
|
687
|
+
- name: primarySourceId
|
|
688
|
+
in: query
|
|
689
|
+
schema:
|
|
690
|
+
type: string
|
|
691
|
+
example: '6c08e2f9-a884-4dce-81e3-00e3391f811a'
|
|
692
|
+
description: 'Filter by primary source ID of ChargeBand in Tariff (result show all tariffs that contains atleast one ChargeBand with the selected primary sources id and inside only ChargeBand objects that fit into that filter)'
|
|
693
|
+
- name: validFrom
|
|
694
|
+
in: query
|
|
695
|
+
schema:
|
|
696
|
+
type: string
|
|
697
|
+
format: date-time
|
|
698
|
+
example: '2022-08-01T00:00:00.000Z'
|
|
699
|
+
description: 'Filter by valid from date of ChargeBand in Tariff (result show all tariffs that contains atleast one valid ChargeBand and inside only ChargeBand objects that fit into that filter)'
|
|
700
|
+
- name: validTo
|
|
701
|
+
in: query
|
|
702
|
+
schema:
|
|
703
|
+
type: string
|
|
704
|
+
format: date-time
|
|
705
|
+
example: '2023-12-31T00:00:00.000Z'
|
|
706
|
+
description: 'Filter by valid to date of ChargeBand in Tariff (result show all tariffs that contains atleast one valid ChargeBand and inside only ChargeBand objects that fit into that filter)'
|
|
707
|
+
- name: limit
|
|
708
|
+
in: query
|
|
709
|
+
schema:
|
|
710
|
+
type: integer
|
|
711
|
+
default: 1000
|
|
712
|
+
maximum: 10000
|
|
713
|
+
minimum: 0
|
|
714
|
+
description: 'Number of results to return'
|
|
715
|
+
- name: offset
|
|
716
|
+
in: query
|
|
717
|
+
schema:
|
|
718
|
+
type: integer
|
|
719
|
+
default: 0
|
|
720
|
+
minimum: 0
|
|
721
|
+
description: 'Number of results to skip for pagination'
|
|
722
|
+
responses:
|
|
723
|
+
'200':
|
|
724
|
+
description: 'Successful response'
|
|
725
|
+
content:
|
|
726
|
+
application/json:
|
|
727
|
+
schema:
|
|
728
|
+
type: array
|
|
729
|
+
items:
|
|
730
|
+
$ref: '#/components/schemas/ParkingTariff'
|
|
731
|
+
/v3/parking-tariffs/{id}:
|
|
732
|
+
get:
|
|
733
|
+
tags:
|
|
734
|
+
- 🅿️ Parking (v3)
|
|
735
|
+
summary: 'Get a tariff by ID'
|
|
736
|
+
parameters:
|
|
737
|
+
- name: id
|
|
738
|
+
in: path
|
|
739
|
+
required: true
|
|
740
|
+
schema:
|
|
741
|
+
type: string
|
|
742
|
+
format: uuid
|
|
743
|
+
example: '0639c53f-c555-49ac-b5e0-bb3d50acf588'
|
|
744
|
+
description: 'UUID of the tariff to retrieve'
|
|
745
|
+
responses:
|
|
746
|
+
'200':
|
|
747
|
+
description: 'Successful response'
|
|
748
|
+
content:
|
|
749
|
+
application/json:
|
|
750
|
+
schema:
|
|
751
|
+
$ref: '#/components/schemas/ParkingTariff'
|
|
752
|
+
/v3/parking-machines:
|
|
753
|
+
get:
|
|
754
|
+
tags:
|
|
755
|
+
- 🅿️ Parking (v3)
|
|
756
|
+
summary: 'Get a list of parking machines with filtering options'
|
|
757
|
+
parameters:
|
|
758
|
+
- name: primarySource
|
|
759
|
+
in: query
|
|
760
|
+
schema:
|
|
761
|
+
type: array
|
|
762
|
+
items:
|
|
763
|
+
type: string
|
|
764
|
+
enum:
|
|
765
|
+
- tsk_v2
|
|
766
|
+
example: tsk_v2
|
|
767
|
+
description: 'Filter by primary source. Use with square brackets `primarySource[]`'
|
|
768
|
+
- name: primarySourceId
|
|
769
|
+
in: query
|
|
770
|
+
schema:
|
|
771
|
+
type: string
|
|
772
|
+
example: '4521afac-66db-4680-abc5-0006837d977a'
|
|
773
|
+
description: 'Filter by primary source ID'
|
|
774
|
+
- name: type
|
|
775
|
+
in: query
|
|
776
|
+
schema:
|
|
777
|
+
type: array
|
|
778
|
+
items:
|
|
779
|
+
type: string
|
|
780
|
+
enum:
|
|
781
|
+
- payment_machine
|
|
782
|
+
- info_box
|
|
783
|
+
example: type[]=payment_machine&type[]=info_box
|
|
784
|
+
description: 'Filter by type'
|
|
785
|
+
- name: boundingBox
|
|
786
|
+
in: query
|
|
787
|
+
schema:
|
|
788
|
+
type: string
|
|
789
|
+
example: '50.123,14.243,50.017,14.573'
|
|
790
|
+
description: 'Filter by bounding box in format "topLeft.lat,topLeft.lon,bottomRight.lat,bottomRight.lon", polygons that fit only partialy to selected bounding box are included'
|
|
791
|
+
- name: codeMask
|
|
792
|
+
in: query
|
|
793
|
+
schema:
|
|
794
|
+
type: string
|
|
795
|
+
example: '%88'
|
|
796
|
+
description: |
|
|
797
|
+
Filter by code mask using substring match and "%" wildcard (partial match). (If used directly in postman or browser, "%" needs to be encoded as "%25".
|
|
798
|
+
Examples:
|
|
799
|
+
- `query` matches substring in codes
|
|
800
|
+
- `start%` matches codes starting with "start"
|
|
801
|
+
- `%end` matches codes ending with "end"
|
|
802
|
+
- `%middle%` matches codes containing "middle" anywhere
|
|
803
|
+
- name: validFrom
|
|
804
|
+
in: query
|
|
805
|
+
schema:
|
|
806
|
+
type: string
|
|
807
|
+
format: date-time
|
|
808
|
+
example: '2023-08-01T00:00:00Z'
|
|
809
|
+
description: 'Filter by valid from date'
|
|
810
|
+
- name: limit
|
|
811
|
+
in: query
|
|
812
|
+
schema:
|
|
813
|
+
type: integer
|
|
814
|
+
default: 1000
|
|
815
|
+
maximum: 10000
|
|
816
|
+
minimum: 0
|
|
817
|
+
description: 'Number of results to return'
|
|
818
|
+
- name: offset
|
|
819
|
+
in: query
|
|
820
|
+
schema:
|
|
821
|
+
type: integer
|
|
822
|
+
default: 0
|
|
823
|
+
minimum: 0
|
|
824
|
+
description: 'Number of results to skip for pagination'
|
|
825
|
+
responses:
|
|
826
|
+
'200':
|
|
827
|
+
description: 'Successful response'
|
|
828
|
+
content:
|
|
829
|
+
application/json; charset=utf-8:
|
|
830
|
+
schema:
|
|
831
|
+
type: object
|
|
832
|
+
properties:
|
|
833
|
+
features:
|
|
834
|
+
type: array
|
|
835
|
+
items:
|
|
836
|
+
$ref: '#/components/schemas/ParkingMachine'
|
|
837
|
+
type:
|
|
838
|
+
type: string
|
|
839
|
+
example: FeatureCollection
|
|
840
|
+
/v3/parking-machines/{id}:
|
|
841
|
+
get:
|
|
842
|
+
tags:
|
|
843
|
+
- 🅿️ Parking (v3)
|
|
844
|
+
summary: 'Get a parking machine by ID'
|
|
845
|
+
parameters:
|
|
846
|
+
- name: id
|
|
847
|
+
in: path
|
|
848
|
+
required: true
|
|
849
|
+
schema:
|
|
850
|
+
type: string
|
|
851
|
+
format: uuid
|
|
852
|
+
example: '4521afac-66db-4680-abc5-0006837d977a'
|
|
853
|
+
description: 'UUID of the parking machine to retrieve'
|
|
854
|
+
responses:
|
|
855
|
+
'200':
|
|
856
|
+
description: 'Successful response'
|
|
857
|
+
content:
|
|
858
|
+
application/json:
|
|
859
|
+
schema:
|
|
860
|
+
$ref: '#/components/schemas/ParkingMachine'
|
|
861
|
+
|
|
576
862
|
components:
|
|
577
863
|
responses:
|
|
578
864
|
UnauthorizedError:
|
|
@@ -1195,3 +1481,550 @@ components:
|
|
|
1195
1481
|
type: string
|
|
1196
1482
|
nullable: true
|
|
1197
1483
|
example: Mon-Sun 14:30
|
|
1484
|
+
# v3 schemas
|
|
1485
|
+
Parking:
|
|
1486
|
+
type: object
|
|
1487
|
+
title: Parking
|
|
1488
|
+
properties:
|
|
1489
|
+
geometry:
|
|
1490
|
+
type: object
|
|
1491
|
+
properties:
|
|
1492
|
+
type:
|
|
1493
|
+
type: string
|
|
1494
|
+
enum:
|
|
1495
|
+
- Point
|
|
1496
|
+
- Polygon
|
|
1497
|
+
- MultiPolygon
|
|
1498
|
+
description: The type of geometry (GeoJSON Point, Polygon, MultiPolygon).
|
|
1499
|
+
coordinates:
|
|
1500
|
+
oneOf:
|
|
1501
|
+
- type: array
|
|
1502
|
+
items:
|
|
1503
|
+
type: number
|
|
1504
|
+
example: [14.441252, 50.109318]
|
|
1505
|
+
description: Point coordinates
|
|
1506
|
+
- type: array
|
|
1507
|
+
items:
|
|
1508
|
+
type: array
|
|
1509
|
+
items:
|
|
1510
|
+
type: array
|
|
1511
|
+
items:
|
|
1512
|
+
type: number
|
|
1513
|
+
example:
|
|
1514
|
+
[
|
|
1515
|
+
[14.50823156003554, 50.10498927328214],
|
|
1516
|
+
[14.505782430390298, 50.1031042405622],
|
|
1517
|
+
[14.509701037821998, 50.1029471511537],
|
|
1518
|
+
[14.50823156003554, 50.10498927328214]
|
|
1519
|
+
]
|
|
1520
|
+
description: Polygon coordinates
|
|
1521
|
+
- type: array
|
|
1522
|
+
items:
|
|
1523
|
+
type: array
|
|
1524
|
+
items:
|
|
1525
|
+
type: array
|
|
1526
|
+
items:
|
|
1527
|
+
type: array
|
|
1528
|
+
items:
|
|
1529
|
+
type: number
|
|
1530
|
+
example:
|
|
1531
|
+
[
|
|
1532
|
+
[
|
|
1533
|
+
[14.50823156003554, 50.10498927328214],
|
|
1534
|
+
[14.505782430390298, 50.1031042405622],
|
|
1535
|
+
[14.509701037821998, 50.1029471511537],
|
|
1536
|
+
[14.50823156003554, 50.10498927328214]
|
|
1537
|
+
],
|
|
1538
|
+
[
|
|
1539
|
+
[14.50823156003554, 50.10498927328214],
|
|
1540
|
+
[14.505782430390298, 50.1031042405622],
|
|
1541
|
+
[14.509701037821998, 50.1029471511537],
|
|
1542
|
+
[14.50823156003554, 50.10498927328214]
|
|
1543
|
+
]
|
|
1544
|
+
]
|
|
1545
|
+
description: MultiPolygon coordinates
|
|
1546
|
+
description: Coordinates of the geometry.
|
|
1547
|
+
description: GeoJSON geometry of the parking location.
|
|
1548
|
+
properties:
|
|
1549
|
+
type: object
|
|
1550
|
+
properties:
|
|
1551
|
+
id:
|
|
1552
|
+
type: string
|
|
1553
|
+
description: 'The identifier for the parking location.'
|
|
1554
|
+
primary_source:
|
|
1555
|
+
type: string
|
|
1556
|
+
enum:
|
|
1557
|
+
- tsk_v2
|
|
1558
|
+
description: 'The primary source of the parking location. Assigned by us.'
|
|
1559
|
+
primary_source_id:
|
|
1560
|
+
type: string
|
|
1561
|
+
nullable: true
|
|
1562
|
+
description: 'The ID defined by the primary source. As in the source data.'
|
|
1563
|
+
name:
|
|
1564
|
+
type: string
|
|
1565
|
+
nullable: true
|
|
1566
|
+
description: 'The name of the parking location.'
|
|
1567
|
+
valid_from:
|
|
1568
|
+
type: string
|
|
1569
|
+
format: date-time
|
|
1570
|
+
description: 'The start date and time when the parking location is opened from. Or date of implementation.'
|
|
1571
|
+
centroid:
|
|
1572
|
+
type: object
|
|
1573
|
+
properties:
|
|
1574
|
+
type:
|
|
1575
|
+
type: string
|
|
1576
|
+
enum:
|
|
1577
|
+
- Point
|
|
1578
|
+
coordinates:
|
|
1579
|
+
type: array
|
|
1580
|
+
items:
|
|
1581
|
+
type: number
|
|
1582
|
+
description: 'The GeoJSON centroid of the parking location, centroid is always point in geometry.'
|
|
1583
|
+
last_updated_at:
|
|
1584
|
+
type: string
|
|
1585
|
+
format: date-time
|
|
1586
|
+
description: 'The date and time when info about the parking location was last checked and updated.'
|
|
1587
|
+
last_modified_at_source:
|
|
1588
|
+
type: string
|
|
1589
|
+
format: date-time
|
|
1590
|
+
description: 'The date and time when the parking location was last modified at the source. In case data source provides it.'
|
|
1591
|
+
space:
|
|
1592
|
+
type: object
|
|
1593
|
+
properties:
|
|
1594
|
+
features:
|
|
1595
|
+
type: array
|
|
1596
|
+
items:
|
|
1597
|
+
$ref: '#/components/schemas/ParkingSpace'
|
|
1598
|
+
type:
|
|
1599
|
+
type: string
|
|
1600
|
+
example: FeatureCollection
|
|
1601
|
+
tariff:
|
|
1602
|
+
type: string
|
|
1603
|
+
format: uuid
|
|
1604
|
+
description: 'UUID of related parking tariff.'
|
|
1605
|
+
required:
|
|
1606
|
+
- id
|
|
1607
|
+
- primary_source
|
|
1608
|
+
- valid_from
|
|
1609
|
+
- last_updated_at
|
|
1610
|
+
- centroid
|
|
1611
|
+
type:
|
|
1612
|
+
type: string
|
|
1613
|
+
example: Feature
|
|
1614
|
+
ParkingSpace:
|
|
1615
|
+
type: object
|
|
1616
|
+
title: Parking Space
|
|
1617
|
+
properties:
|
|
1618
|
+
geometry:
|
|
1619
|
+
type: object
|
|
1620
|
+
properties:
|
|
1621
|
+
type:
|
|
1622
|
+
type: string
|
|
1623
|
+
enum:
|
|
1624
|
+
- Point
|
|
1625
|
+
- Polygon
|
|
1626
|
+
- MultiPolygon
|
|
1627
|
+
description: The type of geometry (GeoJSON Point, Polygon, MultiPolygon).
|
|
1628
|
+
coordinates:
|
|
1629
|
+
oneOf:
|
|
1630
|
+
- type: array
|
|
1631
|
+
items:
|
|
1632
|
+
type: number
|
|
1633
|
+
example: [14.441252, 50.109318]
|
|
1634
|
+
description: Point coordinates
|
|
1635
|
+
- type: array
|
|
1636
|
+
items:
|
|
1637
|
+
type: array
|
|
1638
|
+
items:
|
|
1639
|
+
type: array
|
|
1640
|
+
items:
|
|
1641
|
+
type: number
|
|
1642
|
+
example:
|
|
1643
|
+
[
|
|
1644
|
+
[14.50823156003554, 50.10498927328214],
|
|
1645
|
+
[14.505782430390298, 50.1031042405622],
|
|
1646
|
+
[14.509701037821998, 50.1029471511537],
|
|
1647
|
+
[14.50823156003554, 50.10498927328214]
|
|
1648
|
+
]
|
|
1649
|
+
description: Polygon coordinates
|
|
1650
|
+
- type: array
|
|
1651
|
+
items:
|
|
1652
|
+
type: array
|
|
1653
|
+
items:
|
|
1654
|
+
type: array
|
|
1655
|
+
items:
|
|
1656
|
+
type: array
|
|
1657
|
+
items:
|
|
1658
|
+
type: number
|
|
1659
|
+
example:
|
|
1660
|
+
[
|
|
1661
|
+
[
|
|
1662
|
+
[14.50823156003554, 50.10498927328214],
|
|
1663
|
+
[14.505782430390298, 50.1031042405622],
|
|
1664
|
+
[14.509701037821998, 50.1029471511537],
|
|
1665
|
+
[14.50823156003554, 50.10498927328214]
|
|
1666
|
+
],
|
|
1667
|
+
[
|
|
1668
|
+
[14.50823156003554, 50.10498927328214],
|
|
1669
|
+
[14.505782430390298, 50.1031042405622],
|
|
1670
|
+
[14.509701037821998, 50.1029471511537],
|
|
1671
|
+
[14.50823156003554, 50.10498927328214]
|
|
1672
|
+
]
|
|
1673
|
+
]
|
|
1674
|
+
description: MultiPolygon coordinates
|
|
1675
|
+
description: Coordinates of the geometry.
|
|
1676
|
+
description: GeoJSON geometry of the parking space.
|
|
1677
|
+
properties:
|
|
1678
|
+
type: object
|
|
1679
|
+
properties:
|
|
1680
|
+
id:
|
|
1681
|
+
type: string
|
|
1682
|
+
description: 'The identifier for the parking space.'
|
|
1683
|
+
capacity:
|
|
1684
|
+
type: integer
|
|
1685
|
+
minimum: 0
|
|
1686
|
+
nullable: true
|
|
1687
|
+
description: 'The capacity of the parking space.'
|
|
1688
|
+
filter:
|
|
1689
|
+
type: string
|
|
1690
|
+
description: 'Specific marking of parking space (blue zone, A zone etc.).'
|
|
1691
|
+
access_dedicated_to:
|
|
1692
|
+
type: array
|
|
1693
|
+
items:
|
|
1694
|
+
type: string
|
|
1695
|
+
enum:
|
|
1696
|
+
- disabled
|
|
1697
|
+
- charging
|
|
1698
|
+
- parent
|
|
1699
|
+
- delivery
|
|
1700
|
+
- customer
|
|
1701
|
+
- resident
|
|
1702
|
+
- bus
|
|
1703
|
+
- designated
|
|
1704
|
+
- truck
|
|
1705
|
+
- all
|
|
1706
|
+
- motorcycle
|
|
1707
|
+
- RV
|
|
1708
|
+
minItems: 0
|
|
1709
|
+
description: |
|
|
1710
|
+
Array of dedicated access types for the parking space:
|
|
1711
|
+
* `disabled` - reserved for disabled individuals
|
|
1712
|
+
* `charging` - intended for electric vehicle charging
|
|
1713
|
+
* `parent` - designated for parents with children
|
|
1714
|
+
* `delivery` - exclusively for delivery purposes
|
|
1715
|
+
* `customer` - exclusive for customers
|
|
1716
|
+
* `resident` - reserved for residents
|
|
1717
|
+
* `bus` - reserved for buses
|
|
1718
|
+
* `designated` - specific purpose (e.g., school, embassy)
|
|
1719
|
+
* `truck` - reserved for trucks
|
|
1720
|
+
* `all` - open for all vehicles
|
|
1721
|
+
* `motorcycle` - for motorcycles only
|
|
1722
|
+
* `RV` - reserved for recreational vehicles
|
|
1723
|
+
address:
|
|
1724
|
+
$ref: '#/components/schemas/ParkingAddress'
|
|
1725
|
+
restriction:
|
|
1726
|
+
type: array
|
|
1727
|
+
items:
|
|
1728
|
+
$ref: '#/components/schemas/ParkingRestriction'
|
|
1729
|
+
required:
|
|
1730
|
+
- id
|
|
1731
|
+
- access_dedicated_to
|
|
1732
|
+
type:
|
|
1733
|
+
type: string
|
|
1734
|
+
example: Feature
|
|
1735
|
+
ParkingRestriction:
|
|
1736
|
+
title: Parking Restriction
|
|
1737
|
+
description:
|
|
1738
|
+
Vehicles with a special feature.
|
|
1739
|
+
* `CNG` - Compressed Natural Gas vehicles
|
|
1740
|
+
* `LPG` - Liquefied Petroleum Gas vehicles
|
|
1741
|
+
* `bus` - buses
|
|
1742
|
+
* `truck` - trucks
|
|
1743
|
+
* `motorcycle` - motorcycles
|
|
1744
|
+
* `trailer` - trailers
|
|
1745
|
+
* `RV` - recreational vehicles
|
|
1746
|
+
type: object
|
|
1747
|
+
properties:
|
|
1748
|
+
default:
|
|
1749
|
+
type: string
|
|
1750
|
+
enum:
|
|
1751
|
+
- cng
|
|
1752
|
+
- lpg
|
|
1753
|
+
- bus
|
|
1754
|
+
- truck
|
|
1755
|
+
- motorcycle
|
|
1756
|
+
- trailer
|
|
1757
|
+
- rv
|
|
1758
|
+
additionalProperties:
|
|
1759
|
+
type: boolean
|
|
1760
|
+
ParkingAddress:
|
|
1761
|
+
type: object
|
|
1762
|
+
title: Parking Address
|
|
1763
|
+
properties:
|
|
1764
|
+
address_formated:
|
|
1765
|
+
type: string
|
|
1766
|
+
nullable: true
|
|
1767
|
+
description: 'Formatted address of the parking location.'
|
|
1768
|
+
country:
|
|
1769
|
+
type: string
|
|
1770
|
+
nullable: true
|
|
1771
|
+
description: 'Country of the parking location.'
|
|
1772
|
+
locality:
|
|
1773
|
+
type: string
|
|
1774
|
+
nullable: true
|
|
1775
|
+
description: 'Locality of the parking location.'
|
|
1776
|
+
region:
|
|
1777
|
+
type: string
|
|
1778
|
+
nullable: true
|
|
1779
|
+
description: 'Region of the parking location.'
|
|
1780
|
+
postal_code:
|
|
1781
|
+
type: string
|
|
1782
|
+
nullable: true
|
|
1783
|
+
description: 'Postal code of the parking location.'
|
|
1784
|
+
street_address:
|
|
1785
|
+
type: string
|
|
1786
|
+
nullable: true
|
|
1787
|
+
description: 'Street address of the parking location.'
|
|
1788
|
+
ParkingTariff:
|
|
1789
|
+
type: object
|
|
1790
|
+
title: Parking Tariff
|
|
1791
|
+
properties:
|
|
1792
|
+
id:
|
|
1793
|
+
type: string
|
|
1794
|
+
format: uuid
|
|
1795
|
+
description: 'The UUID identifier for the tariff.'
|
|
1796
|
+
charge_bands:
|
|
1797
|
+
type: array
|
|
1798
|
+
items:
|
|
1799
|
+
$ref: '#/components/schemas/ParkingChargeBand'
|
|
1800
|
+
description: 'Array of Charge Band objects that represent tariff categories for different users.'
|
|
1801
|
+
required:
|
|
1802
|
+
- id
|
|
1803
|
+
- charge_bands
|
|
1804
|
+
ParkingChargeBand:
|
|
1805
|
+
type: object
|
|
1806
|
+
title: Parking Charge Band
|
|
1807
|
+
properties:
|
|
1808
|
+
primary_source:
|
|
1809
|
+
type: string
|
|
1810
|
+
enum: ['tsk_v2']
|
|
1811
|
+
description: 'The primary source of the charge band.'
|
|
1812
|
+
primary_source_id:
|
|
1813
|
+
type: string
|
|
1814
|
+
nullable: true
|
|
1815
|
+
description: 'The ID defines by the primary source.'
|
|
1816
|
+
maximum_duration:
|
|
1817
|
+
type: integer
|
|
1818
|
+
minimum: 0
|
|
1819
|
+
nullable: true
|
|
1820
|
+
description: 'Maximum duration for charging (in seconds).'
|
|
1821
|
+
valid_from:
|
|
1822
|
+
type: string
|
|
1823
|
+
format: date-time
|
|
1824
|
+
description: 'Valid from date.'
|
|
1825
|
+
valid_to:
|
|
1826
|
+
type: string
|
|
1827
|
+
format: date-time
|
|
1828
|
+
nullable: true
|
|
1829
|
+
description: 'Valid to date.'
|
|
1830
|
+
last_updated_at:
|
|
1831
|
+
type: string
|
|
1832
|
+
format: date-time
|
|
1833
|
+
description: 'The date and time when info about the tariff category was last checked and updated.'
|
|
1834
|
+
last_modified_at_source:
|
|
1835
|
+
type: string
|
|
1836
|
+
format: date-time
|
|
1837
|
+
nullable: true
|
|
1838
|
+
description: 'The date and time when the tariff category was last modified at the source.'
|
|
1839
|
+
charges:
|
|
1840
|
+
type: array
|
|
1841
|
+
items:
|
|
1842
|
+
$ref: '#/components/schemas/ParkingCharge'
|
|
1843
|
+
description: 'Array of Charge objects.'
|
|
1844
|
+
required:
|
|
1845
|
+
- primary_source
|
|
1846
|
+
- valid_from
|
|
1847
|
+
ParkingCharge:
|
|
1848
|
+
type: object
|
|
1849
|
+
title: Parking Charge
|
|
1850
|
+
properties:
|
|
1851
|
+
id:
|
|
1852
|
+
type: string
|
|
1853
|
+
format: uuid
|
|
1854
|
+
description: 'The UUID identifier for the charge.'
|
|
1855
|
+
charge:
|
|
1856
|
+
type: string
|
|
1857
|
+
example: '0.6666666666666666'
|
|
1858
|
+
description: 'Charge amount.'
|
|
1859
|
+
charge_type:
|
|
1860
|
+
type: string
|
|
1861
|
+
enum: ['other', 'minimum', 'maximum']
|
|
1862
|
+
description: 'Type of charge.'
|
|
1863
|
+
charge_order_index:
|
|
1864
|
+
type: integer
|
|
1865
|
+
minimum: 0
|
|
1866
|
+
description: 'Order index for charges.'
|
|
1867
|
+
charge_interval:
|
|
1868
|
+
type: integer
|
|
1869
|
+
minimum: 0
|
|
1870
|
+
description: 'Charge interval (in seconds).'
|
|
1871
|
+
max_iterations_of_charge:
|
|
1872
|
+
type: integer
|
|
1873
|
+
minimum: 0
|
|
1874
|
+
description: 'Maximum iterations of charge.'
|
|
1875
|
+
min_iterations_of_charge:
|
|
1876
|
+
type: integer
|
|
1877
|
+
minimum: 0
|
|
1878
|
+
description: 'Minimum iterations of charge.'
|
|
1879
|
+
valid_from:
|
|
1880
|
+
type: string
|
|
1881
|
+
format: date-time
|
|
1882
|
+
description: 'Valid from date.'
|
|
1883
|
+
valid_to:
|
|
1884
|
+
type: string
|
|
1885
|
+
format: date-time
|
|
1886
|
+
nullable: true
|
|
1887
|
+
description: 'Valid to date.'
|
|
1888
|
+
periods_of_time:
|
|
1889
|
+
type: array
|
|
1890
|
+
items:
|
|
1891
|
+
$ref: '#/components/schemas/ParkingPeriodsOfTime'
|
|
1892
|
+
description: 'Array of Periods of Time objects.'
|
|
1893
|
+
required:
|
|
1894
|
+
- id
|
|
1895
|
+
- charge
|
|
1896
|
+
- charge_type
|
|
1897
|
+
- charge_order_index
|
|
1898
|
+
- charge_interval
|
|
1899
|
+
- valid_from
|
|
1900
|
+
ParkingPeriodsOfTime:
|
|
1901
|
+
type: object
|
|
1902
|
+
title: Parking Periods Of Time
|
|
1903
|
+
properties:
|
|
1904
|
+
day_in_week:
|
|
1905
|
+
type: string
|
|
1906
|
+
enum: ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su']
|
|
1907
|
+
description: 'Day of the week.'
|
|
1908
|
+
start:
|
|
1909
|
+
type: string
|
|
1910
|
+
format: time
|
|
1911
|
+
description: 'Start time of the periods of time.'
|
|
1912
|
+
end:
|
|
1913
|
+
type: string
|
|
1914
|
+
format: time
|
|
1915
|
+
description: 'End time of the periods of time.'
|
|
1916
|
+
ph:
|
|
1917
|
+
type: string
|
|
1918
|
+
enum: ['PH_only', 'PH_off']
|
|
1919
|
+
description: 'Public holiday availability.'
|
|
1920
|
+
required:
|
|
1921
|
+
- day_in_week
|
|
1922
|
+
- start
|
|
1923
|
+
- end
|
|
1924
|
+
- ph
|
|
1925
|
+
ParkingMachine:
|
|
1926
|
+
type: object
|
|
1927
|
+
title: Parking Machine
|
|
1928
|
+
properties:
|
|
1929
|
+
geometry:
|
|
1930
|
+
type: object
|
|
1931
|
+
properties:
|
|
1932
|
+
type:
|
|
1933
|
+
type: string
|
|
1934
|
+
enum:
|
|
1935
|
+
- Point
|
|
1936
|
+
- Polygon
|
|
1937
|
+
- MultiPolygon
|
|
1938
|
+
description: The type of geometry (GeoJSON Point, Polygon, MultiPolygon).
|
|
1939
|
+
coordinates:
|
|
1940
|
+
oneOf:
|
|
1941
|
+
- type: array
|
|
1942
|
+
items:
|
|
1943
|
+
type: number
|
|
1944
|
+
example: [14.441252, 50.109318]
|
|
1945
|
+
description: Point coordinates
|
|
1946
|
+
- type: array
|
|
1947
|
+
items:
|
|
1948
|
+
type: array
|
|
1949
|
+
items:
|
|
1950
|
+
type: array
|
|
1951
|
+
items:
|
|
1952
|
+
type: number
|
|
1953
|
+
example:
|
|
1954
|
+
[
|
|
1955
|
+
[14.50823156003554, 50.10498927328214],
|
|
1956
|
+
[14.505782430390298, 50.1031042405622],
|
|
1957
|
+
[14.509701037821998, 50.1029471511537],
|
|
1958
|
+
[14.50823156003554, 50.10498927328214]
|
|
1959
|
+
]
|
|
1960
|
+
description: Polygon coordinates
|
|
1961
|
+
- type: array
|
|
1962
|
+
items:
|
|
1963
|
+
type: array
|
|
1964
|
+
items:
|
|
1965
|
+
type: array
|
|
1966
|
+
items:
|
|
1967
|
+
type: array
|
|
1968
|
+
items:
|
|
1969
|
+
type: number
|
|
1970
|
+
example:
|
|
1971
|
+
[
|
|
1972
|
+
[
|
|
1973
|
+
[14.50823156003554, 50.10498927328214],
|
|
1974
|
+
[14.505782430390298, 50.1031042405622],
|
|
1975
|
+
[14.509701037821998, 50.1029471511537],
|
|
1976
|
+
[14.50823156003554, 50.10498927328214]
|
|
1977
|
+
],
|
|
1978
|
+
[
|
|
1979
|
+
[14.50823156003554, 50.10498927328214],
|
|
1980
|
+
[14.505782430390298, 50.1031042405622],
|
|
1981
|
+
[14.509701037821998, 50.1029471511537],
|
|
1982
|
+
[14.50823156003554, 50.10498927328214]
|
|
1983
|
+
]
|
|
1984
|
+
]
|
|
1985
|
+
description: MultiPolygon coordinates
|
|
1986
|
+
description: Coordinates of the geometry.
|
|
1987
|
+
description: GeoJSON geometry of the parking machine.
|
|
1988
|
+
properties:
|
|
1989
|
+
type: object
|
|
1990
|
+
properties:
|
|
1991
|
+
id:
|
|
1992
|
+
type: string
|
|
1993
|
+
format: uuid
|
|
1994
|
+
description: The UUID identifier for the parking machine.
|
|
1995
|
+
primary_source:
|
|
1996
|
+
type: string
|
|
1997
|
+
enum:
|
|
1998
|
+
- tsk_v2
|
|
1999
|
+
description: The primary source of the parking machine.
|
|
2000
|
+
primary_source_id:
|
|
2001
|
+
type: string
|
|
2002
|
+
nullable: true
|
|
2003
|
+
description: The ID defined by the primary source.
|
|
2004
|
+
code:
|
|
2005
|
+
type: string
|
|
2006
|
+
description: The code of the parking machine.
|
|
2007
|
+
machine_type:
|
|
2008
|
+
type: string
|
|
2009
|
+
enum:
|
|
2010
|
+
- payment_machine
|
|
2011
|
+
- info_box
|
|
2012
|
+
description: |
|
|
2013
|
+
The type of the parking machine.
|
|
2014
|
+
* `payment_machine` - a facility where payment can be made for parking; often equipped with payment options
|
|
2015
|
+
* `info_box` - an installation providing information and possibly a QR code, without payment capabilities.
|
|
2016
|
+
valid_from:
|
|
2017
|
+
type: string
|
|
2018
|
+
format: date-time
|
|
2019
|
+
description: The start date when the parking machine is valid.
|
|
2020
|
+
tariff_id:
|
|
2021
|
+
type: string
|
|
2022
|
+
format: uuid
|
|
2023
|
+
description: The UUID identifier for the tariff connected to the parking machine.
|
|
2024
|
+
required:
|
|
2025
|
+
- id
|
|
2026
|
+
- primary_source
|
|
2027
|
+
- valid_from
|
|
2028
|
+
type:
|
|
2029
|
+
type: string
|
|
2030
|
+
example: Feature
|