Слои
Список слоев
GET /layers
Структура запроса:
GET /layers?token=mbs90lon2a8
token: ключ доступа
Получение списка слоев по английскому названию
GET /layers?name=testlayer?token=mbs90lon2a8
name: английское название слоя или слово, встречающееся в названии списка слоев
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"layers": [{
"order": 9,
"layer": {
"id": 135,
"name": "testlayerpoint",
"info": {
"id": 135,
"typeName": "test:testlayerpoint1410257743497_vw",
"style": "point",
"service": "WFS",
"poly": false,
"requestUrl": "/service/wfs"
},
"isEditable": true,
"fields": {
"id": 250,
"name": "Field",
"nameRu": "Поле",
"order": 1,
"title": false,
"view": true,
"type": "string"
}
},
"groupId": 12
}]
}
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Количество слоев
GET /layers/count
Структура запроса:
GET /layers/count?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
237
}
// количество слоев
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Создание слоя
POST /layers
Структура запроса:
POST /layers?token=mbs90lon2a8
token: ключ доступа
Пример запроса:
Формат: json
{
"attributes": [{
"rusName": "Атрибут",
"name": "attribute",
"type": "str",
"isTitle": false,
"isView": true
}],
"customFields": {
"field_1": {
"field_id": 41,
"value": "1"
},
},
"geometryType": "point",
"groupId": 1053,
"dataStoreId": 12,
"fromFile": false,
"isEditable": true,
"layerType": "vector",
"name": "Novyi-sloy",
"styles": {
"isBase": true
},
"title": "Новый слой"
}
// данные об атрибутах, массив
// русское название, строка
// английское название, строка
// тип, строка
// является ли заголовком, булевое поле
// показывать ли поле, булевое поле
// дополнительные поля, объект
// название дополнительного поля
// id поля, целое число
// значение поля, строка
// тип геометрии, строка
// id группы, целое число
// id хранилища, целое число
// из файла, булевое поле
// является редактируемым, булевое поле
// тип слоя, строка
// английское название слоя, строка
// стили, объект
// является ли стиль простым, булевое поле
// заголовок, строка
Примечание:
В зависимости от выбранного типа геометрии в «styles» могут передаваться следующие параметры:
- isBase — базовый стиль (булевое поле)
- isSymple — простой стиль (булевое поле)
- style — расширенный стиль (строка — описывается geocss)
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 154,
"name": "Новый слой",
"info": {
"id": 154,
"typeName": "test:novcyj_sloj_vw",
"style": "polygon",
"service": "WMS",
"poly": true,
"requestUrl": "/service/wms"
},
"isEditable": true,
"fields": [{
"id": 3452,
"name": "parameter",
"nameRu": "parameter",
"order": 1,
"title": false,
"view": true,
"type": "str"
}],
"groupId": 42,
"dataStoreId": 22,
"order": 3,
"geometryType": "multipolygon",
"dataStoreName": "fail_store",
"layerType": "vector"
}
// id слоя, целое число
// название слоя, строка
// информация о слое, объект
// id слоя, целое число
// английское название слоя, строка
// название стиля, строка
// тип сервиса, WMS/WFS
// является ли полигоном, булевое поле
// url для запроса, строка
// является ли редактируемым, булевое поле
// информация об атрибутах, массив
// id атрибута, целое число
// английское название атрибута, строка
// русское название атрибута, строка
// порядковый номер в списке, целое число
// является ли заголовком, булевое поле
// показывать ли поле, булевое поле
// тип, строка
// id группы, целое число
// id хранилища данных, целое число
// порядковый номер в списке, целое число
// тип геометрии, строка
// название хранилища, строка
// тип слоя, строка
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Изменение слоя
PUT /layers/{layerId}
Структура запроса:
PUT /layers/365?token=mbs90lon2a8
layerId: id изменяемого слоя
token: ключ доступа
Пример запроса:
Формат: json
{
"attributes": [{
"name": "nomer",
"rusName": "NOMER",
"type": "Long",
"isGeometryField": false,
"visible": null,
"view": true
},…],
"customFields": {
"field": {
"field_id": 501,
"value": ""
},
},
"dataStoreId": "21",
"fileName": "p19bmqvgl6101t1996124718ckqp4v.zip",
"fromFile": true,
"geometryType": "polygon",
"groupId": 1053,
"isEditable": true,
"layerType": "vector",
"name": "sloj_sloj",
"styles": {
"isBase": false,
"isSimple": true,
"style": "*{fill:#0000FF;}"
},
"title": "Слой слой",
"withProjection": true
}
// данные об атрибутах, массив
// русское название, строка
// английское название, строка
// тип, строка
// является геометрией, булевое поле
// дополнительные поля, объект
// название дополнительного поля
// id поля, целое число
// значение поля, строка
// id хранилища, строка
// название файла, строка
// из файла, булевое поле
// тип геометрии, строка
// id группы, целое число
// является редактируемым, булевое поле
// тип слоя, строка
// название слоя, строка
// стили, объект
// является ли стиль базовым, булевое поле
// является ли стиль простым, булевое поле
// geocss стиль
// заголовок, строка
// с проекцией, булевое поле
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 365,
"name": "Название слоя",
"info": {
"id": 365,
"typeName": "test:nazvanie_sloya_21399556133349_vw",
"style": "nazvanie_sloya_21399556133349style",
"service": "WFS",
"poly": false,
"requestUrl": "/service/wfs"
},
"isEditable": true,
"fields": [{
"id": 5972,
"name": "pole1",
"nameRu": "Атрибут_1",
"order": 1,
"title": true,
"view": true,
"type": "string"
},],
"dataStoreName": "ssc_inf",
"layerType": "vector",
"groupId": 117,
"dataStoreId": 21,
"order": 1,
"geometryType": "multipoint"
}
// id слоя, целое число
// название слоя, строка
// информация о слое, объект
// id слоя, целое число
// английское название слоя, строка
// название стиля, строка
// тип сервиса, WMS/WFS
// является ли полигоном, булевое поле
// url для запроса, строка
// является ли редактируемым, булевое поле
// информация об атрибутах, массив
// id атрибута, целое число
// английское название атрибута, строка
// русское название атрибута, строка
// порядковый номер в списке, целое число
// является ли заголовком, булевое поле
// показывать ли поле, булевое поле
// тип, строка
// название хранилища, строка
// тип слоя, строка
// id группы, целое число
// id хранилища данных, целое число
// порядковый номер в списке, целое число
// тип геометрии, строка
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Изменение конкретных полей слоя
PATCH /layers/{layerId}
Структура запроса:
PATCH /layers/1413?token=mbs90lon2a8
layerId: id изменяемого слоя
token: ключ доступа
Пример запроса:
Формат: json
{
"attributes": [{
"rusName": "Атрибут№1",
"name": "Attribute№1",
"type": "num",
"isTitle": false,
"isView": true
}],
"customFields": {
"newfield": {
"field_id": 501,
"value": "value"
},
},
"groupId": "1093",
"styles": {
"isBase": true
},
"title": "New layer name"
}
// данные об атрибутах, массив
// русское название, строка
// английское название, строка
// тип, строка
// является заголовком, булевое поле
// дополнительные поля, объект
// название дополнительного поля
// id поля, целое число
// значение поля, строка
// id группы, целое число
// стили, объект
// является ли стиль базовым, булевое поле
// заголовок, строка
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id": 1413,
"name": "New layer name",
"info": {
"id": 1413,
"typeName": "test:new_layer1419506827493_vw",
"style": "point",
"service": "WFS",
"poly": false,
"requestUrl": "/service/wfs"
},
"isEditable": true,
"fields": [{
"id": 15236,
"name": "newfield",
"nameRu": "Новое поле",
"order": 1,
"title": false,
"view": true,
"type": "str"
}],
"groupId": 1093,
"dataStoreId": 21,
"order": 6,
"geometryType": "multipoint",
"layerType": "vector",
"dataStoreName": "ssc_inf"
}
// id слоя, целое число
// название слоя, строка
// информация о слое, объект
// id слоя, целое число
// английское название слоя, строка
// название стиля, строка
// тип сервиса, WMS/WFS
// является ли полигоном, булевое поле
// url для запроса, строка
// является ли редактируемым, булевое поле
// информация о дополнительных полях, массив
// id поля, целое число
// английское название поля, строка
// русское название поля, строка
// порядковый номер в списке, целое число
// является ли заголовком, булевое поле
// показывать ли поле, булевое поле
// тип, строка
// id группы, целое число
// id хранилища данных, целое число
// порядковый номер в списке, целое число
// тип геометрии, строка
// тип слоя, строка
// название хранилища, строка
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Удаление слоя
DELETE /layers/{layerId}
Структура запроса:
DELETE /layers/14?token=mbs90lon2a8
layerId: id удаляемого слоя
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"delete": true
}
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Экспорт слоев
GET /layers.xlsx
Структура запроса:
GET /layers.xlsx?token=mbs90lon2a8
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
Возвращает бинарный файл
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Информация по слою
GET /layers/{layerId}
Структура запроса:
GET /layers/136?token=mbs90lon2a8
layerId: id слоя
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"layer": {
"order": 2,
"layer": {
"id": 136,
"name": "Тестовый слой",
"info": {
"id": 136,
"typeName": "test:test_p",
"style": "test_p_style",
"service": "WMS",
"poly": false,
"requestUrl": "/service/wms",
"eisInfo": {
"hasEis": true,
"pkField": "id"
}
},
"isEditable": true,
"fields": [
{
"id": 4423,
"name": "Field",
"nameRu": "Поле 1",
"order": 1,
"title": false,
"view": true,
"type": "string"
}
],
"customFields": null,
"dataStoreName": "ssc_inf",
"layerType": "vector",
"isKosmosnimok": false,
"access": {
"edit": true,
"write": true,
"read": true
},
"geometryType": "multipolygon",
"cluster": null
},
"groupId": 14
}
}
// объект
// порядковый номер в списке, целое число
// объект слоя
// id слоя, целое число
// русское название слоя, строка
// информация по слою, объект
// id слоя, целое число
// английское название слоя, строка
// название стиля, строка
// тип сервиса, WMS/WFS
// является ли полигоном, булевое поле
// url для запроса, строка
// данные о наличии медиа информации, объект
// есть ли медиа информация, булевое поле
// поле для первичного ключа, строка
// является ли редактируемым, булевое поле
// массив полей
// id поля, целое число
// английское название поля, строка
// русское название поля, строка
// порядок следования в списке, целое число
// является ли заголовком, булевое поле
// показывать ли поле, булевое поле
// тип поля, строка
// дополнительные поля, строка
// название хранилища данных, строка
// тип слоя, строка
// является ли космоснимком, булевое поле
// права текущего пользователя на слой
// на изменение/удаление слоя
// на добавление/изменение/удаление объектов слоя
// на чтение
// тип геометрии, строка
// кластер, строка
// id группы
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Информация по слою, исключая данные о группе слоя
GET /layers/{layerId}/info
Структура запроса:
GET /layers/132/info?token=mbs90lon2a8
layerId: id слоя
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"layer": {
"id": 136,
"name": "Тестовый слой",
"info": {
"id": 136,
"typeName": "test:test_p",
"style": "test_p_style",
"service": "WMS",
"poly": false,
"requestUrl": "/service/wms",
"eisInfo": {
"hasEis": true,
"pkField": "id",
}
},
"isEditable": true,
"fields": [
{
"id": 4423,
"name": "vid",
"nameRu": "Поле1",
"order": 1,
"title": false,
"view": true,
"type": "string"
}
],
"customFields": null,
"dataStoreName": "ssc_inf",
"layerType": "vector",
"isKosmosnimok": false,
"access": {
"edit": true,
"write": true,
"read": true
},
"geometryType": "multipolygon",
"cluster": null
}
}
// объект слоя
// id слоя, целое число
// русское название слоя, строка
// информация по слою, объект
// id слоя, целое число
// английское название слоя, строка
// название стиля, строка
// тип сервиса, WMS/WFS
// является ли полигоном, булевое поле
// url для запроса, строка
// данные о наличии медиа информации, объект
// есть ли медиа информация, булевое поле
// поле для первичного ключа, строка
// является ли редактируемым, булевое поле
// массив полей
// id поля, целое число
// английское название поля, строка
// русское название поля, строка
// порядок следования в списке, целое число
// является ли заголовком, булевое поле
// показывать ли поле, булевое поле
// тип поля, строка
// дополнительные поля, строка
// название хранилища данных, строка
// тип слоя, строка
// является ли космоснимком, булевое поле
// права текущего пользователя на слой
// на изменение/удаление слоя
// на добавление/изменение/удаление объектов слоя
// на чтение
// тип геометрии, строка
// кластер, строка
Статус: 403 — у вас нет доступа к данному слою
Формат: text/plain
Содержит описание ошибки
Статус: 404 — слой не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки