Projekty
Streets API

Streets API

Streets API je REST api, ktorá poskytuje geografické informácie spojené s ulicami v meste Prešov. K dátam je momentálne public prístup bez akejkoľvek autentifikácie.

Dáta

Dáta o Prešovských uliciach boli získané z https://egov.presov.sk/GeoDataKatalog/ulice.geojson (opens in a new tab). Tie však obsahujú súradnice v súradnicovom systéme vrstvy: EPSG 102067 (S-JTSK (Greenwich) / Krovak East North), takže sme sa pre priamočiarejšiu prácu s dátami rozhodli prekonvertovať ich do EPSG:4326/WGS84.

API Endpointy

Endpointy vychádzajú z URL https://datahub.presov.sk/streets-api/api/v1 (opens in a new tab) a OpenAPI dokumentácia k Streets API sa nachádza na https://datahub.presov.sk/streets-api/api/v1/docs (opens in a new tab)

GET /streets

Vráti pole ulíc podľa zadaného stránkovania a vyhĺadávania.

Query parametre:

  • limit: default 100
  • offset: default 0
  • q: fulltext vyhľadávanie podľa názvu ulice
  • longitude: v spolupráci s latitude a radius dokáže vrátit ulice v okolí zadaného bodu vrámci zadaného okruhu
  • latitude: v spolupráci s longitude a radius dokáže vrátit ulice v okolí zadaného bodu vrámci zadaného okruhu
  • radius: označuje okruh v metroch, v rámci ktorého sa majú ulice vyhľadávať podľa zadaných súradníc (default 100)

Všetky query parametre sú nepovinné, no pre vyhľadávanie na základe súradníc je potrebné zadať longitude aj latitude.

GET /streets/{streetId}

Vráti konkrétnu ulicu podľa jej ID. Parameter streetId akceptuje ObjectID z databázy, aj číslo (I_GM_U) ulice.

Detail ulice

Názov atribútuPopis
_idUnikátne id v databáze
typeFeature - geojson Feature objekt - https://stevage.github.io/geojson-spec/#section-3.2 (opens in a new tab)
propertiesObsahuje údaje o ulici: unikátne číslo (I_GM_U) a názov (N_GM_U)
geometryObsahuje súradnicové body danej ulice

Príklad objektu:

{
    "_id": "6516e1dd984f879dad012557",
    "type": "Feature",
    "properties": {
        "I_GM_U": 36,
        "N_GM_U": "Volgogradská"
    },
    "geometry": {
        "type": "MultiLineString",
        "coordinates": [
            [
                [
                    21.22225026215099,
                    49.01133096863404
                ],
                [
                    21.222110681746415,
                    49.01058802643135
                ],
                [
                    21.221902535647974,
                    49.00946770407314
                ],
                [
                    21.221640508394252,
                    49.00811441267963
                ],
                [
                    21.221832706216613,
                    49.00814633997159
                ],
                [
                    21.222663473196686,
                    49.00834387973629
                ],
                [
                    21.22336927997628,
                    49.00851463216489
                ],
                [
                    21.22381078970556,
                    49.0086161147005
                ],
                [
                    21.224602735412688,
                    49.00880808974824
                ]
            ]
        ]
    }
}