Skip to content

API GIS

Список маршрутів

#МетодМаршрутОписПрава доступу
1GET/cswОтримання метаданих у форматі Catalogue Service for the Web (CSW)L0
2POST/cswОтримання метаданих через POST-запит (CSW)L0
3GET/wcs/:styleWeb Coverage Service - покриття растрових данихL0
4GET/wmts/:styleWeb Map Tile Service - растрові тайли картиL0
5GET/wms/:styleWeb Map Service - динамічні картиL0
6GET/wfs/:style/:layerWeb Feature Service - векторні геоданіL0
7GET/vtile/:id/ua/:z/:x/:yВекторні тайли (Mapbox Vector Tiles)L0
8GET/vtile-table/:id/ua/:z/:x/:yВекторні тайли за таблицеюL0
9GET/rtile/:id/ua/:z/:x/:yРастрові тайлиL0
10GET/tiles/layersОтримання або оновлення кешу шарівL1
11GET/tiles/:id/:z/:x/:yРастрові тайли MapnikL0
12GET/geojson/:layerОтримання шару у форматі GeoJSONL1

1. Отримання метаданих у форматі CSW

Метод: GET URL: /cswПрава доступу: L0

Параметри (Query):

ПараметрТипОбов'язковістьОписПриклад
REQUESTstringобов'язковийТип CSW запитуGetCapabilities
SERVICEstringопціональнийНазва сервісуCSW
VERSIONstringопціональнийВерсія CSW2.0.2

Відповідь (200 OK)

xml
<?xml version="1.0" encoding="UTF-8"?>
<Capabilities xmlns="http://www.opengis.net/cat/csw/2.0.2">
  <Service>
    <Name>CSW</Name>
    <Title>Catalogue Service for the Web</Title>
    <Abstract>Сервіс каталогу метаданих</Abstract>
  </Service>
  <Capability>
    <Request>
      <GetCapabilities>
        <DCPType>
          <HTTP>
            <Get href="https://example.com/csw"/>
            <Post href="https://example.com/csw"/>
          </HTTP>
        </DCPType>
      </GetCapabilities>
      <GetRecords>
        <DCPType>
          <HTTP>
            <Get href="https://example.com/csw"/>
            <Post href="https://example.com/csw"/>
          </HTTP>
        </DCPType>
      </GetRecords>
    </Request>
  </Capability>
</Capabilities>

2. Отримання метаданих через POST-запит у форматі CSW

Метод: POST URL: /cswПрава доступу: L0

Тіло запиту: XML документ CSW

Відповідь (200 OK)

xml
<?xml version="1.0" encoding="UTF-8"?>
<GetRecordsResponse xmlns="http://www.opengis.net/cat/csw/2.0.2">
  <SearchStatus timestamp="2024-01-15T10:30:00Z"/>
  <SearchResults numberOfRecordsMatched="42" numberOfRecordsReturned="10" nextRecord="11">
    <BriefRecord>
      <Identifier>metadata_001</Identifier>
      <Title>Топографічна карта</Title>
      <Type>dataset</Type>
      <BoundingBox>
        <WestBoundLongitude>22.0</WestBoundLongitude>
        <EastBoundLongitude>40.0</EastBoundLongitude>
        <SouthBoundLatitude>44.0</SouthBoundLatitude>
        <NorthBoundLatitude>52.0</NorthBoundLatitude>
      </BoundingBox>
    </BriefRecord>
  </SearchResults>
</GetRecordsResponse>

3. Отримання метаданих у форматі WCS

Метод: GET URL: /wcs/:styleПрава доступу: L0

Параметри (Path):

ПараметрТипОбов'язковістьОписПриклад
stylestringобов'язковийID стилю3433809117582460836

Параметри (Query):

ПараметрТипОбов'язковістьОписПриклад
REQUESTstringобов'язковийТип запитуGetCapabilities, DescribeCoverage, GetCoverage
FORMATstringопціональнийФормат відповідіimage/png
BBOXstringопціональнийОбласть покриттяminx,miny,maxx,maxy
CRSstringопціональнийСистема координатEPSG:4326
WIDTHnumberопціональнийШирина зображення в пікселях256
HEIGHTnumberопціональнийВисота зображення в пікселях256

Відповідь (200 OK) - GetCapabilities

xml
<?xml version="1.0" encoding="UTF-8"?>
<wcs:WCS_Capabilities xmlns:wcs="http://www.opengis.net/wcs/2.0">
  <wcs:ServiceIdentification>
    <wcs:Title>Web Coverage Service</wcs:Title>
    <wcs:ServiceType>WCS</wcs:ServiceType>
    <wcs:ServiceTypeVersion>2.0.1</wcs:ServiceTypeVersion>
  </wcs:ServiceIdentification>
  <wcs:Contents>
    <wcs:CoverageSummary>
      <wcs:CoverageId>elevation</wcs:CoverageId>
      <wcs:CoverageSubtype>RectifiedGridCoverage</wcs:CoverageSubtype>
    </wcs:CoverageSummary>
  </wcs:Contents>
</wcs:WCS_Capabilities>

Відповідь (200 OK) - GetCoverage

http
HTTP/1.1 200 OK
Content-Type: image/png

[PNG image data]

4. Отримання метаданих у форматі Web Map Tile Service

Метод: GET URL: /wmts/:styleПрава доступу: L0

Параметри (Path):

ПараметрТипОбов'язковістьОписПриклад
stylestringобов'язковийID стилю3433809117582460836

Параметри (Query):

ПараметрТипОбов'язковістьОпис
REQUESTstringобов'язковийТип запиту (GetCapabilities, GetTile, GetFeatureInfo)
LAYERstringопціональнийНазва шару
BBOXstringопціональнийМежі (minx,miny,maxx,maxy)
VERSIONstringопціональнийВерсія WMTS (наприклад 1.0.0)
xnumberопціональнийКоордината X тайлу
ynumberопціональнийКоордината Y тайлу
sridnumberопціональнийSRID (система координат)
limitnumberопціональнийЛіміт записів для GetFeatureInfo
bufferSizenumberопціональнийРозмір буфера в пікселях

Відповідь (200 OK) - GetCapabilities

xml
<?xml version="1.0" encoding="UTF-8"?>
<Capabilities xmlns="http://www.opengis.net/wmts/1.0">
  <ows:ServiceIdentification>
    <ows:Title>Web Map Tile Service</ows:Title>
    <ows:ServiceType>WMTS</ows:ServiceType>
    <ows:ServiceTypeVersion>1.0.0</ows:ServiceTypeVersion>
  </ows:ServiceIdentification>
  <Contents>
    <Layer>
      <ows:Title>Базова мапа</ows:Title>
      <ows:Identifier>base</ows:Identifier>
      <TileMatrixSetLink>
        <TileMatrixSet>EPSG:3857</TileMatrixSet>
      </TileMatrixSetLink>
    </Layer>
  </Contents>
</Capabilities>

Відповідь (200 OK) - GetTile

http
HTTP/1.1 200 OK
Content-Type: image/png

[PNG tile image data]

5. Отримання метаданих у форматі WMS

Метод: GET URL: /wms/:styleПрава доступу: L0

Параметри (Path):

ПараметрТипОбов'язковістьОписПриклад
stylestringобов'язковийID стилю3433809117582460836

Параметри (Query):

ПараметрТипОбов'язковістьОпис
requeststringобов'язковийТип запиту (GetCapabilities, GetMap, GetFeatureInfo)
layersstringопціональнийСписок шарів через кому
bboxstringопціональнийМежі (minx,miny,maxx,maxy)
formatstringопціональнийФормат зображення (image/png, image/jpeg)
CRSstringопціональнийСистема координат (наприклад EPSG:4326)
srsstringопціональнийSRS (застарілий аналог CRS)
xnumberопціональнийКоордината X для GetFeatureInfo
ynumberопціональнийКоордината Y для GetFeatureInfo
bufferSizenumberопціональнийРозмір буфера в пікселях
feature_countnumberопціональнийКількість об'єктів для GetFeatureInfo
versionstringопціональнийВерсія WMS (наприклад 1.3.0, 1.1.1)
widthnumberопціональнийШирина зображення
heightnumberопціональнийВисота зображення

Відповідь (200 OK) - GetCapabilities

xml
<?xml version="1.0" encoding="UTF-8"?>
<WMS_Capabilities xmlns="http://www.opengis.net/wms" version="1.3.0">
  <Service>
    <Name>WMS</Name>
    <Title>Web Map Service</Title>
    <Abstract>Динамічні карти геоданих</Abstract>
  </Service>
  <Capability>
    <Request>
      <GetCapabilities>
        <Format>text/xml</Format>
        <DCPType>
          <HTTP><Get><OnlineResource href="https://example.com/wms/default"/></Get></HTTP>
        </DCPType>
      </GetCapabilities>
      <GetMap>
        <Format>image/png</Format>
        <Format>image/jpeg</Format>
      </GetMap>
    </Request>
    <Layer>
      <Title>Земельні ділянки</Title>
      <Name>parcels</Name>
      <CRS>EPSG:4326</CRS>
    </Layer>
  </Capability>
</WMS_Capabilities>

Відповідь (200 OK) - GetMap

http
HTTP/1.1 200 OK
Content-Type: image/png

[PNG image data]

6. Отримання метаданих у форматі WFS

Метод: GET URL: /wfs/:style/:layerПрава доступу: L0

Параметри (Path):

ПараметрТипОбов'язковістьОпис
stylestringобов'язковийНазва стилю (наприклад default)
layerstringопціональнийНазва шару (наприклад parcels)

Параметри (Query):

ПараметрТипОбов'язковістьОпис
REQUESTstringобов'язковийТип запиту (GetCapabilities, DescribeFeatureType, GetFeature)
featureIDstringопціональнийІдентифікатор об'єкта
propertyNamestringопціональнийСписок полів через кому
bboxstringопціональнийПросторовий фільтр (minx,miny,maxx,maxy)
sortBystringопціональнийСортування (наприклад field1 ASC,field2 DESC)
countnumberопціональнийЛіміт записів
RESULTTYPEstringопціональнийresults (повні дані) або hits (тільки кількість)
versionstringопціональнийВерсія WFS (наприклад 2.0.0, 1.1.0)
srsNamestringопціональнийSRID (наприклад EPSG:4326)
valueReferencestringопціональнийНазва поля для фільтрації
filterstringопціональнийXML-фільтр OGC
typeNamestringопціональнийНазва типу об'єкта

Відповідь (200 OK) - GetCapabilities

xml
<?xml version="1.0" encoding="UTF-8"?>
<wfs:WFS_Capabilities xmlns:wfs="http://www.opengis.net/wfs/2.0">
  <wfs:ServiceIdentification>
    <wfs:Title>Web Feature Service</wfs:Title>
    <wfs:ServiceType>WFS</wfs:ServiceType>
    <wfs:ServiceTypeVersion>2.0.0</wfs:ServiceTypeVersion>
  </wfs:ServiceIdentification>
  <wfs:FeatureTypeList>
    <wfs:FeatureType>
      <wfs:Name>parcels</wfs:Name>
      <wfs:Title>Земельні ділянки</wfs:Title>
      <wfs:DefaultCRS>EPSG:4326</wfs:DefaultCRS>
    </wfs:FeatureType>
  </wfs:FeatureTypeList>
</wfs:WFS_Capabilities>

Відповідь (200 OK) - GetFeature

xml
<?xml version="1.0" encoding="UTF-8"?>
<wfs:FeatureCollection xmlns:wfs="http://www.opengis.net/wfs/2.0"
                       xmlns:gml="http://www.opengis.net/gml/3.2"
                       numberMatched="42" numberReturned="10">
  <wfs:member>
    <parcels gml:id="parcel_001">
      <cadnum>1411745300:00:001:0262</cadnum>
      <area>2.5</area>
      <gml:location>
        <gml:Point srsName="EPSG:4326">
          <gml:pos>30.0 50.0</gml:pos>
        </gml:Point>
      </gml:location>
    </parcels>
  </wfs:member>
</wfs:FeatureCollection>

7. Векторні тайли

Метод: GET URL: /vtile/:id/ua/:z/:x/:yПрава доступу: L0

Параметри (Path):

ПараметрТипОбов'язковістьОписПриклад
idstringобов'язковийІдентифікатор шару або джерела даних3433809117582460836
znumberобов'язковийРівень масштабу (zoom)14
xnumberобов'язковийКоордината X тайлу795
ynumberобов'язковийКоордината Y тайлу456.vmt

Параметри (Query):

ПараметрТипОбов'язковістьОпис
filterstringопціональнийSQL-фільтр для обмеження даних
slstringопціональнийРівень доступу (security level)
propsstringопціональнийСписок полів через кому
typestringопціональнийТип геометрії (point, line, polygon)
tablestringопціональнийНазва таблиці в БД
clusterbooleanопціональнийУвімкнути кластеризацію точок
geombooleanопціональнийВключити геометрію у відповідь
pointZoomnumberопціональнийРівень масштабу для відображення точок
centroidbooleanопціональнийВикористовувати центроїди геометрій
nocachebooleanопціональнийОтримати дані без використання кешу

Відповідь (200 OK)

http
HTTP/1.1 200 OK
Content-Type: application/x-protobuf
Content-Encoding: gzip

[Mapbox Vector Tile data (PBF)]

8. Векторні тайли за таблицею

Метод: GET URL: /vtile-table/:id/ua/:z/:x/:yПрава доступу: L0

Параметри (Path):

ПараметрТипОбов'язковістьОписПриклад
idstringобов'язковийІдентифікатор таблиці або джерела данихgis.dataset, gis.dataset.table
znumberобов'язковийРівень масштабу (zoom)14
xnumberобов'язковийКоордината X тайлу795
ynumberобов'язковийКоордината Y тайлу456.vmt

Параметри (Query): ті самі, що й для /vtile

Відповідь (200 OK)

http
HTTP/1.1 200 OK
Content-Type: application/x-protobuf

[Mapbox Vector Tile data (PBF)]

9. Растрові тайли

Метод: GET URL: /rtile/:id/ua/:z/:x/:yПрава доступу: L0

Параметри (Path):

ПараметрТипОбов'язковістьОписПриклад
idstringобов'язковийІдентифікатор шару2993702092461311181
znumberобов'язковийРівень масштабу (zoom)
xnumberобов'язковийКоордината X тайлу
ynumberобов'язковийКоордината Y тайлу

Параметри (Query):

ПараметрТипОбов'язковістьОпис
filterstringопціональнийSQL-фільтр для обмеження даних
bboxstringопціональнийМежі тайлу (minx,miny,maxx,maxy)
nocachebooleanопціональнийОтримати без кешу
debugbooleanопціональнийРежим налагодження (тільки для admin)

Відповідь (200 OK)

http
HTTP/1.1 200 OK
Content-Type: image/png

[PNG tile image data]

10. Отримання списку шарів mapnik

Метод: GET URL: /tiles/layersПрава доступу: L1

Параметри (Query):

ПараметрТипОбов'язковістьОпис
nocachebooleanопціональнийОчистити кеш шарів (true для очищення)

Відповідь (200 OK)

json
{
  "success": true
}

11. Растрові тайли Mapnik для базових карт

Метод: GET URL: /tiles/:id/:z/:x/:yПрава доступу: L0

Параметри (Path):

ПараметрТипОбов'язковістьОписПриклад
idstringобов'язковийІдентифікатор стилю Mapnik (наприклад base)undp, atu
znumberобов'язковийРівень масштабу (zoom)12
xnumberобов'язковийКоордината X тайлу3
ynumberобов'язковийКоордината Y тайлу4.png

Відповідь (200 OK)

http
HTTP/1.1 200 OK
Content-Type: image/png

[PNG tile image data]

12. Отримання шару у форматі GeoJSON

Метод: GET URL: /geojson/:layerПрава доступу: L1

Параметри (Path):

ПараметрТипОбов'язковістьОписПриклад
layerstringобов'язковийНазва шару3433809117582460836.json

Параметри (Query):

ПараметрТипОбов'язковістьОписПриклад
tablestringопціональнийНазва таблиці в БД
filterstringопціональнийSQL-фільтр
typestringопціональнийТип геометрії
centroidbooleanопціональнийВикористовувати центроїди
extentbooleanопціональнийВключити extent у відповідь
idstringопціональнийID об'єкта (один або кілька через кому)
propsstringопціональнийСписок полів через кому
sridnumberопціональнийSRID /EPSG4326
reloadbooleanопціональнийПерезавантажити дані з БД (оминути кеш)
geombooleanопціональнийВключити геометрію
nocachebooleanопціональнийОтримати без кешу

Відповідь (200 OK)

json
{
  "type": "FeatureCollection",
  "features": [
        {
        "type": "Feature",
        "id": "parcel_001",
        "geometry": {
          "type": "Polygon",
          "coordinates": [[[30.0, 50.0], [30.1, 50.0], [30.1, 50.1], [30.0, 50.1], [30.0, 50.0]]]
        },
        "properties": {
          "cadnum": "1411745300:00:001:0262",
          "area": 2.5,
          "purpose": "Для ведення товарного сільськогосподарського виробництва"
        }
      }
  ],
  "total": 4535,
  "count": 2500,
  "meta": {
    "pk": "id",
    "columns": "id",
    "geom": "geom",
    "type": "r",
    "meta": {
    "table": "data.nerestovischia_all_polygon",
    "progrid": "data.nerestovischia_all_polygon",
    "srid": 4326,
    "count": 4535
  },
  "props": []
  }
}

Коди помилок

КодНазваОпис
400Bad RequestНекоректний запит (відсутні обов'язкові параметри, невірний формат)
401UnauthorizedВідсутня авторизація (для захищених ендпоінтів)
403ForbiddenДоступ заборонено
404Not FoundШар або тайл не знайдено
429Too Many RequestsПеревищено ліміт запитів
500Internal Server ErrorПомилка сервера

Примітки

  • L0 - публічний доступ без авторизації
  • L1 - доступ для авторизованих користувачів
  • OGC стандарти: Ендпоїнти відповідають стандартам OGC (CSW 2.0.2, WMS 1.3.0, WFS 2.0.0, WMTS 1.0.0, WCS 2.0.1)
  • Координати: за замовчуванням використовується EPSG:4326 (WGS84)
  • Тайли: використовується схема XYZ (Slippy Map Tiles)
  • Кешування: більшість ендпоїнтів підтримують параметр nocache для отримання актуальних даних