Авторизация
Авторизация на сервере
POST /auth/token
Пример запроса
{
"login": "testlogin",
"password": "12345"
}
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"token": "ethryhetyjtyj",
"refreshToken": "ethryhetyjtyj",
"ttl": 3600
}
Статус: 401 - логин или пароль переданы неверно
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Обновление ключа доступа
GET /auth/token/refresh
Структура запроса:
GET /auth/token/refresh?refreshToken=738975947453
refreshToken: ключ для обновления ключа доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"token": "ethryhetyц4564",
"refreshToken": "yrjryukryukryu",
"ttl": 3600
}
// новый ключ доступа, строка // новый ключ для обновления ключа доступа, строка // время жизни ключа доступа в секундах, целое число
Статус: 400 - не передан параметр refreshToken
Формат: text/plain
Содержит описание ошибки
Статус: 404 - параметр refreshToken не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Авторизован ли пользователь
GET /auth
Структура запроса:
GET /auth?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"authenticated": true,
"user": {
"id": 11,
"name": "Пользователь",
"right": {
"id": 1,
"name": "Права",
"admin": false,
"mapExtent": {
"id": 2,
"name": "Republic of Tatarstan",
"extent": {
"minX": 46.09270788877181,
"minY": 53.99190870342375,
"maxX": 55.299713101706935,
"maxY": 56.68378708907719,
"projection": "EPSG:4326"
}
}
}
}
}
// true, если пользователь авторизован, иначе false, булевое поле // данные о пользователе, если он авторизован, объект // id пользователя, целое число // имя пользователя, строка // данные о группе прав, объект // id группы прав, целое число // название группы прав, строка // имеются ли права админа, булевое поле // данные о границе карты для данной группы прав, объект // id границы карты, целое число // название границы карты, строка // область видимости карты, объект // минимальный x, число с плавающей точкой // минимальный y, число с плавающей точкой // максимальный x, число с плавающей точкой // максимальный y, число с плавающей точкой // проекция
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Выход
GET /logout
Структура запроса:
GET /logout?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"status": "ok"
}
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Сервисы
WMS
GET /wms
Получение тайла слоя
Структура запроса:
GET /service/wms?service=WMS&request=GetMap&version=1.1.1&layers=kziokzn:vamin_kioski_p_vw&
styles=vamin_kioski_p_vw_style_21_03_2011_19_20_16&format=image/png&transparent=true&height=256&
width=256&srs=EPSG:900913&bbox=5283327.395071382,7514065.628545966,5322463.153553393,7553201.387027976&
token=bw3ty3h46yth
service: сервис запроса WMS
request: название запроса GetMap
version: версия 1.1.1
layers: английское название слоя или слоев через запятую
styles: название стиля или стилей через запятую
format: формат, в котором вернется тайл
transparent: есть ли прозрачность
height: высота тайла
width: ширина тайла
srs: код проекции
bbox: область запроса
cql_filter: строка CQL фильтра
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: зависит от параметра format
Статус: 404 - ни один слой не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 403 - нет доступа к слою
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
GET /wms
Запрос легенды слоя
Структура запроса:
GET /service/wms?request=GetLegendGraphic&style=vamin_kioski_p_vw_style_21_03_2011_19_20_16&
layer=kziokzn:vamin_kioski_p_vw&format=image/png&token=bw3ty3h46yth
request: название запроса GetLegendGraphic
layer: английское название слоя
style: название стиля слоя
format: формат, в котором вернется легенда
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: зависит от параметра format
Статус: 404 - слой не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 403 - нет доступа к слою
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
WFS
GET /wfs
Получение WFS слоя
Структура запроса:
GET /service/wfs?service=WFS&version=1.0.0&request=GetFeature&typeName=DEMO:kfu_building&outputFormat=json&
bbox=40.14404296875,52.905589081407825,61.23779296875,57.630699148918424&token=bw3ty3h46yth
service: сервис запроса WFS
request: название запроса GetFeature
version: версия 1.0.0
typeName: английское название слоя
outputFormat: формат возвращаемых данных
bbox: область запроса слоя
srs: код проекции, по умолчанию EPSG:4326
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: зависит от параметра outputFormat
Статус: 404 - слой не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 403 - нет доступа к слою
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Стиль слоя
GET /service/styles/{layerId}/{styleName}.sld
Запрос sld-файла стиля
Структура запроса:
GET /service/styles/367/set_wifi_iconstyle_02_10_2012_14_00_01.sld?token=bw3ty3h46yth
layerId: id слоя
styleName: название стиля
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: text/xml
Статус: 404 - слой не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 403 - нет доступа к слою
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Группы слоев
Список групп
GET /groups
Структура запроса:
GET /groups?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"groups": [
{
"id": 32,
"name": "Группа 1",
"order": "1"
}
]
}
// массив объектов с информацией по группе // id группы, целое число // название группы, строка // порядковый номер группы в списке, целое число
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
GET /groups/withLayers
Список групп, включая полную информацию по принадлежащим им слоям
Структура запроса:
GET /groups/withLayers?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"groups": [
{
"id": 32,
"name": "Группа1",
"order": "1",
"groupLayers": [
{
"layer": {
"id": 10,
"name": "Слой 1",
"enabled": false,
"info": {
"id": 10,
"typeName": "test:test_layer",
"style": "test_layer_a",
"service": "WMS",
"poly": false,
"requestUrl": "/service/wms",
"eisInfo": {
"hasEis": false,
"pkField": "id"
}
},
"fields": [
{
"id": 4076,
"name": "adm_znach",
"nameRu": "Поле 1",
"order": 1,
"title": false
}
],
"isKosmosnimok": false
},
"order": 1,
"groupId": 32
}
]
}
]
}
// массив групп // объект // id группы, целое число // название группы, строка // порядковый номер группы, целое число // массив слоев // информация по слою, объект // id слоя, целое число // русское название слоя, строка // включен ли слой по умолчанию, булевое поле // информация по слою, объект // id слоя, целое число // английское название слоя, строка // название стиля, строка // тип сервиса, WMS/WFS // является ли полигоном, булевое поле // url для запроса, строка // данные о наличии медиа информации, объект // есть ли медиа информация, булевое поле // поле для первичного ключа, строка // массив полей // объект поля // id поля, целое число // английское название поля, строка // русское название поля , строка // порядок следования в списке, целое число // является ли заголовком, булевое поле // является ли космоснимком, булевое поле // порядок слоя в списке, целое число // id группы
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
GET /groups/shortdata/withLayers
Список групп, включая краткую информацию по принадлежащим им слоям
Структура запроса:
GET /groups/shortdata/withLayers?token=bw3ty3h46yth
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"groups": [
{
"id": 32,
"name": "Группа1",
"order": "1",
"groupLayers": [
{
"layer": {
"id": 10,
"name": "Слой 1",
"enabled": false,
"info": {
"id": 10,
"typeName": "test:test_layer",
"style": "test_layer_a",
"service": "WMS",
"poly": false,
"requestUrl": "/service/wms",
},
},
"order": 1,
"groupId": 32
}
]
}
]
}
// массив групп // объект // id группы, целое число // название группы, строка // порядковый номер группы, целое число // массив слоев // информация по слою, объект // id слоя, целое число // русское название слоя, строка // включен ли слой по умолчанию, булевое поле // информация по слою, объект // id слоя, целое число // английское название слоя, строка // название стиля, строка // тип сервиса, WMS/WFS // является ли полигоном, булевое поле // url для запроса, строка // порядок слоя в списке, целое число // id группы
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Поиск по названию
GET /groups
Структура запроса:
GET /groups?name=Пункт&token=bw3ty3h46yth
name: слово/фраза, которая входит в название списка групп
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"groups": [
{
"id": 32,
"name": "Группа 1",
"order": "1"
}
]
}
// массив объектов с информацией по группе // id группы, целое число // название группы, строка // порядковый номер группы в списке, целое число
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
GET /groups/withLayers
Поиск списка групп, включая полную информацию по принадлежащим им слоям
Структура запроса:
GET /groups/withLayers?name=Пункт&token=bw3ty3h46yth
name: слово/фраза, которая входит в название списка групп
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"groups": [
{
"id": 32,
"name": "Группа1",
"order": "1",
"groupLayers": [
{
"layer": {
"id": 10,
"name": "Слой 1",
"enabled": false,
"info": {
"id": 10,
"typeName": "test:test_layer",
"style": "test_layer_a",
"service": "WMS",
"poly": false,
"requestUrl": "/service/wms",
"eisInfo": {
"hasEis": false,
"pkField": "id"
}
},
"fields": [
{
"id": 4076,
"name": "adm_znach",
"nameRu": "Поле 1",
"order": 1,
"title": false
}
],
"isKosmosnimok": false
},
"order": 1,
"groupId": 32
}
]
}
]
}
// массив групп // объект // id группы, целое число // название группы, строка // порядковый номер группы, целое число // массив слоев // информация по слою, объект // id слоя, целое число // русское название слоя, строка // включен ли слой по умолчанию, булевое поле // информация по слою, объект // id слоя, целое число // английское название слоя, строка // название стиля, строка // тип сервиса, WMS/WFS // является ли полигоном, булевое поле // url для запроса, строка // данные о наличии медиа информации, объект // есть ли медиа информация, булевое поле // поле для первичного ключа, строка // массив полей // объект поля // id поля, целое число // английское название поля, строка // русское название поля , строка // порядок следования в списке, целое число // является ли заголовком, булевое поле // является ли космоснимком, булевое поле // порядок слоя в списке, целое число // id группы
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Поиск по id
GET /groups/{groupId}
Структура запроса:
GET /groups/224?token=bw3ty3h46yth
groupId: id группы
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
group: {
id: 32,
name: "Базовые слои",
order: "1"
}
}
// группа, объект // id группы, целое число // название группы, строка // порядок группы в списке
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
GET /groups/{groupId}/withLayers
Группа слоев, включая полную информацию по принадлежащим ей слоям
Структура запроса:
GET /groups/224/withLayers?token=bw3ty3h46yth
groupId: id группы
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"group": {
"id": 32,
"name": "Населенные пункты",
"order": "1",
"groupLayers": [
{
"layer": {
"id": 10,
"name": "Населенные пункты",
"enabled": false,
"info": {
"id": 10,
"typeName": "test:test_a",
"style": "style_test__a",
"service": "WMS",
"poly": true,
"requestUrl": "/service/wms",
"eisInfo": {
"hasEis": false,
"pkField": ""
}
},
"fields": [
{
"id": 4076,
"name": "test",
"nameRu": "Поле1",
"order": 1,
"title": true
}
],
"isKosmosnimok": false
},
"order": 1,
"groupId": 32
}
]
}
}
// группа, объект // id группы, целое число // название группы, строка // порядковый номер группы, целое число // массив слоев // информация по слою, объект // id слоя, целое число // русское название слоя, строка // включен ли слой по умолчанию, булевое поле // информация по слою, объект // id слоя, целое число // английское название слоя, строка // название стиля, строка // тип сервиса, WMS/WFS // является ли полигоном, булевое поле // url для запроса, строка // данные о наличии медиа информации, объект // есть ли медиа информация, булевое поле // поле для первичного ключа, строка // массив полей // объект поля // id поля, целое число // английское название поля, строка // русское название поля , строка // порядок следования в списке, целое число // является ли заголовком, булевое поле // является ли космоснимком, булевое поле // порядок слоя в списке, целое число // id группы
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Слои
Список слоев
GET /layers
Список слоев с полной информацией
Структура запроса:
Получение списка слоев:
GET /layers?token=bw3ty3h46yth
token: ключ доступа
Получение списка слоев по английскому названию:
GET /layers?name=test:test_a&token=bw3ty3h46yth
name: английское название слоя или слово, встречающееся в названии списка слоев
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"layers": [
{
"layer": {
"id": 136,
"name": "Тестовый слой",
"enabled": false,
"info": {
"id": 136,
"typeName": "test:test_a",
"style": "test_a_style",
"service": "WMS",
"poly": true,
"requestUrl": "/service/wms",
"eisInfo": {
"hasEis": false,
"pkField": ""
}
},
"fields": [
{
"id": 4423,
"name": "vid",
"nameRu": "Поле 1",
"order": 1,
"title": false
}
],
"isKosmosnimok": false
},
"order": 2,
"groupId": 14
}
]
}
// массив слоев // объект слоя // id слоя, целое число // русское название слоя, строка // включен ли слой по умолчанию, булевое поле // информация по слою, объект // id слоя, целое число // английское название слоя, строка // название стиля, строка // тип сервиса, WMS/WFS // является ли полигоном, булевое поле // url для запроса, строка // данные о наличии медиа информации, объект // есть ли медиа информация, булевое поле // поле для первичного ключа, строка // массив полей // объект поля // id поля, целое число // английское название поля, строка // русское название поля , строка // порядок следования в списке, целое число // является ли заголовком, булевое поле // является ли космоснимком, булевое поле // порядок слоя в списке, целое число // id группы
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Информация по слою
GET /layers/{layerId}
Структура запроса:
GET /layers/132?token=bw3ty3h46yth
layerId: id слоя
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"layer": {
"layer": {
"id": 136,
"name": "Тестовый слой",
"enabled": false,
"info": {
"id": 136,
"typeName": "test:test_p",
"style": "test_p_style",
"service": "WMS",
"poly": false,
"requestUrl": "/service/wms",
"eisInfo": {
"hasEis": false,
"pkField": ""
}
},
"fields": [
{
"id": 4423,
"name": "vid",
"nameRu": "Поле 1",
"order": 1,
"title": false
}
],
"isKosmosnimok": false
},
"order": 2,
"groupId": 14
}
}
// объект // объект слоя // id слоя, целое число // русское название слоя, строка // включен ли слой по умолчанию, булевое поле // информация по слою, объект // id слоя, целое число // английское название слоя, строка // название стиля, строка // тип сервиса, WMS/WFS // является ли полигоном, булевое поле // url для запроса, строка // данные о наличии медиа информации, объект // есть ли медиа информация, булевое поле // поле для первичного ключа, строка // массив полей // объект поля // id поля, целое число // английское название поля, строка // русское название поля, строка // порядок следования в списке, целое число // является ли заголовком, булевое поле // является ли космоснимком, булевое поле // порядок слоя в списке, целое число // id группы
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
GET /layers/{layerId}/info
Информация по слою, исключая данные о группе слоя
Структура запроса:
GET /layers/132/info?token=bw3ty3h46yth
layerId: id слоя
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"layer": {
"id": 136,
"name": "Тестовый слой",
"enabled": false,
"info": {
"id": 136,
"typeName": "test:test_p",
"style": "test_p_style",
"service": "WMS",
"poly": false,
"requestUrl": "/service/wms",
"eisInfo": {
"hasEis": false,
"pkField": ""
}
},
"fields": [
{
"id": 4423,
"name": "vid",
"nameRu": "Поле1",
"order": 1,
"title": false
}
],
"isKosmosnimok": false
}
}
// объект слоя // id слоя, целое число // русское название слоя, строка // включен ли слой по умолчанию, булевое поле // информация по слою, объект // id слоя, целое число // английское название слоя, строка // название стиля, строка // тип сервиса, WMS/WFS // является ли полигоном, булевое поле // url для запроса, строка // данные о наличии медиа информации, объект // есть ли медиа информация, булевое поле // поле для первичного ключа, строка // массив полей // объект поля // id поля, целое число // английское название поля, строка // русское название поля, строка // порядок следования в списке, целое число // является ли заголовком, булевое поле // является ли космоснимком, булевое поле
Статус: 404 - слой не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 403 - у вас нет доступа к данному слою
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Граница слоя
GET /layers/{layerId}/bbox
Структура запроса:
GET /layers/199/bbox?token=bw3ty3h46yth
layerId: id слоя
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
boundingBox: {
minx: "49.053",
maxx: "49.24",
miny: "55.739",
maxy: "55.863",
crs: "EPSG:4326"
}
}
// объект // минимальный x, число с плавающей точкой // минимальный y, число с плавающей точкой // максимальный x, число с плавающей точкой // максимальный y, число с плавающей точкой // код проекции, строка
Статус: 404 - слой не найден
Формат: text/plain
Содержит описание ошибки
Статус: 403 - нет доступа к данному слою
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Метаданные слоя
GET /layers/{layerId}/metadata
Структура запроса:
GET /layers/199/metadata?token=bw3ty3h46yth
layerId: id слоя
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
metadata: {
id: 179,
owner: "dhedheh",
dataCreate: "2011.12.28 09.47",
dataUpdate: "2011.12.28 09.47",
itemsCount: 45,
type: {
id: 1,
name: "Космоснимки",
fieldList: [
{
id: 1,
name: "Облачность",
order: 1,
inTable: true,
inTableName: "clouds",
fieldType: {
id: 2,
name: "Облачность",
control: "input_integer",
geomType: null,
library: false,
libraryData: {}
},
necessary: false
},
{
id: 2,
name: "Спутники",
order: 5,
inTable: true,
inTableName: "sputnik_id",
fieldType: {
id: 1,
name: "Список спутников",
control: "combobox",
geomType: null,
library: true,
libraryData: {
1: "IKONOS (1м)",
2: "QuickBird (0.6м)",
3: "EROS-A (2м)",
4: "EROS-B (0.7м)",
5: "WorldView-1 (0.5м)",
6: "GeoEye-1 (0.5м)"
}
},
necessary: false
}
]
},
additionalFieldValues: [
{
field: {
id: 4,
name: "test11rrty",
order: 6,
inTable: false,
inTableName: null,
fieldType: {
id: 3,
name: "целое число",
control: "input_integer",
geomType: null,
library: false,
libraryData: {}
},
necessary: false
},
value: "213434априцукнр"
}
],
tableData: {
clouds: "45",
tecy_777: null,
sputnik_id: "1",
data: "2011-12-14 00:00:00+04",
test777: "1",
geom: null,
layer_id: "179",
quicklook: "kosmosnimok2012_02_08_05_06_06.jpg"
}
}
}
// метадата, объект // id слоя, целое число // владелец слоя, строка // дата создания, строка // дата обновления, строка // количество объектов, целое число // тип метаданных, объект // id типа, целое число // название типа, строка // массив полей // объект поля // id поля, целое число // название, строка // порядок отображения, целое число // содержится ли значение в основной таблице, булевое поле // название поля в основной таблице // тип поля, объект // id типа, целое число // название типа, строка // управляющий элемент, который используется, строка // тип геометрии, строка // нужно ли искать значение поля в словаре, булевое поле // данные словаря, объект // является ли обязательным,булевое поле // массив дополнительных полей // объект // объект поля // id поля, // название, строка // порядок отображения, целое число // содержится ли значение в основной таблице, булевое поле // название поля в основной таблице // тип поля, объект // id: типа, целое число // название типа, строка // управляющий элемент, который используется, строка // тип геометрии, строка // нужно ли искать значение поля в словаре, булевое поле // данные словаря, объект // является ли обязательным,булевое поле // значение поля // основная таблица с данными, объект // поле таблицы и его значение
Статус: 404 - слой не найден
Формат: text/plain
Содержит описание ошибки
Статус: 403 - нет доступа к данному слою
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
GET /layers/{layerId}/metadata/quicklook/{file}
Отображение превью-картинки у метаданных, если она присутствует
Структура запроса:
GET /layers/179/metadata/quicklook/kosmosnimok2012_02_08_05_06_06.jpg?token=bw3ty3h46yth
layerId: id слоя
file: название файла, приходит в качестве значения поля превью у метаданных
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: image/jpeg и т.д.
Статус: 404 - картинка не найдена
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Все атрибуты слоя
GET /layers/{layerId}/attributes
Структура запроса:
GET /layers/199/attributes?token=bw3ty3h46yth
layerId: id слоя
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"name": "vamin_kioski_p_vwType",
"features": [
{
"nillable": true,
"name": "srnaimenovanie",
"maxOccurs": "1",
"type": "{http://www.w3.org/2001/XMLSchema}string",
"minOccurs": 0
}
]
}
// название слоя английское // массив атрибутов // объект атрибута // название, строка // тип
Статус: 404 - слой не найден
Формат: text/plain
Содержит описание ошибки
Статус: 403 - нет доступа к данному слою
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Получение объектов
Список объектов в точке
POST /layers/feature
Структура запроса:
GET /layers/feature?token=bw3ty3h46yth
token: ключ доступа
Пример запроса:
{
"layersId": ["198","245","345"],
"size": {
"x": 1920,
"y": 778
},
"extent": {
"_southWest": {
"lat": 55.488191455802244,
"lng": 47.94158935546874
},
"_northEast": {
"lat": 56.08889483995169,
"lng": 50.57830810546875
}
},
"point": {
"x": 859,
"y": 364
}
}
// массив id слоев, где будет осуществляться поиск // размер области видимости в пикселях, объект // пикселей по оси x, целое число // пикселей по оси y, целое число // область видимости карты, объект // координаты нижней левой точки на карте в градусах, объект // широта нижней левой точки, число с плавающей точкой // долгота нижней левой точки, число с плавающей точкой // координаты верхней правой точки на карте в градусах, объект // широта верхней правой точки, число с плавающей точкой // долгота верхней правой точки, число с плавающей точкой // точка центра области видимости в пикселях, объект // координата х, целое число // координата y, целое число
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"data": {
"kziokzn:vamin_kioski_p_vw": {
"features": [
{
"fid": "141",
"zayavit": "ОАО \"Вамин Татарстан\"",
"syyinfo":"Есть",
"srnaimenovanie":"Ново-савиновский",
"geom":"",
"nomerdoma":"47","
sunaimenovanie":"10летОктября[П, Ст.Победилово]",
"syinfo":"Есть",
"svinfo":"Существующий"
}
],
"layerId":198,
"geomFieldName":null
}
}
}
// объект найденных данных // английское название слоя, где найдены объекты, объект // массив объектов // пример объекта // первичный ключ объекта // поля объекта и их значения // id слоя // поле геометрии либо null
Статус: 403 - нет доступа к слоям
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Список объектов в области
POST /layers/feature/bbox
Структура запроса:
GET /layers/feature/bbox?token=bw3ty3h46yth
token: ключ доступа
Пример запроса:
{
"layersId": ["198","234","23"],
"srs": "EPSG:4326",
"extent": {
"_southWest": {
"lng": 49.04296875,
"lat": 55.754940702479146
},
"_northEast": {
"lng": 49.299774169921875,
"lat": 55.90457539720638
}
}
}
// массив id слоев, где будет осуществляться поиск // проекция запроса, строка // область поиска, объект // координаты нижней левой точки области, объект // широта нижней левой точки, число с плавающей точкой // долгота нижней левой точки, число с плавающей точкой // координаты верхней правой точки области, объект // широта верхней правой точки, число с плавающей точкой // долгота верхней правой точки, число с плавающей точкой
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"data": {
"kziokzn:vamin_kioski_p_vw": {
"features": [
{
"fid": "141",
"zayavit": "ОАО \"Вамин Татарстан\"",
"syyinfo":"Есть",
"srnaimenovanie":"Ново-савиновский",
"geom":"",
"nomerdoma":"47","
sunaimenovanie":"10летОктября[П, Ст.Победилово]",
"syinfo":"Есть",
"svinfo":"Существующий"
}
],
"layerId":198,
"geomFieldName":null
}
}
}
// объект найденных данных // английское название слоя, где найдены объекты, объект // массив объектов // пример объекта // первичный ключ объекта // поля объекта и их значения // id слоя // поле геометрии либо null
Статус: 403 - нет доступа к слоям
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Получение медиа информации, прикрепленной к объекту слоя
GET layers/eis/{layerId}/{objectId}
Структура запроса:
GET /layers/eis/198/141?token=bw3ty3h46yth
layerId: id слоя
objectId: значение первичного ключа объекта
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"files": [
{
"url": "/layers/eis/198/141/photo/247",
"fileName": "Чистопольская,47.JPG",
"type": {
"id": 3,
"name": "photo"
},
"asUrl": false
},
{
"url": "/layers/eis/198/141/file/247",
"fileName": "Чистопольская,47.JPG",
"type": {
"id": 4,
"name": "file"
},
"asUrl": false
}
]
}
// массив найденных прикрепленных файлов // прикрепленный файл, объект // путь к файлу // название файла // тип файла // id типа, // название типа, может быть photo, video, audio, file // представлен ли файл как ссылка
Статус: 404 - слой не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Получение медиа файла, прикрепленного к объекту слоя
GET layers/eis/{layerId}/{objectId}/photo/{photoId}
Отображение прикрепленной фотографии
Структура запроса:
GET /layers/eis/198/141/photo/247?token=bw3ty3h46yth
layerId: id слоя
objectId: первичный ключ объекта
photoId: первичный ключ фотографии
token: ключ доступа
GET layers/eis/{layerId}/{objectId}/photo/{photoId}/{height}
Отображение прикрепленной фотографии с масштабированием по высоте
Структура запроса:
GET /layers/eis/198/141/photo/247/100?token=bw3ty3h46yth
layerId: id слоя
objectId: первичный ключ объекта
photoId: первичный ключ фотографии
height: высота для масштабирования
token: ключ доступа
GET layers/eis/{layerId}/{objectId}/photo/{photoId}/{height}/{width}
Отображение прикрепленной фотографии с масштабированием по высоте и ширине
Структура запроса:
GET /layers/eis/198/141/photo/247/100/150?token=bw3ty3h46yth
layerId: id слоя
objectId: первичный ключ объекта
photoId: первичный ключ фотографии
height: высота для масштабирования
width: ширина для масштабирования
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: image/jpeg и т.д.
Статус: 404 - слой не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
GET /layers/eis/{layerId}/{objectId}/{fileType}/{fileId}
Отображение прикрепленного файла
Структура запроса:
GET /layers/eis/198/141/file/247?token=bw3ty3h46yth
layerId: id слоя
objectId: первичный ключ объекта
fileType: тип файла: photo, video, audio, file
fileId: первичный ключ файла
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: зависит от типа отдаваемого файла
Статус: 404 - слой не найден в системе
Формат: text/plain
Содержит описание ошибки
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Геокодирование
Запрос геокодирования
POST /geocoding
Структура запроса:
POST /geocoding?token=bw3ty3h46yth
token: ключ доступа
Пример запроса
{
"layersId":[
"10",
"12",
"26"
],
"query":"Казань",
"point":{
"lon":50.69091796875,
"lat":55.33851784425634
}
}
// массив id слоев, где также надо осуществлять поиск // строка запроса // центр карты, объект // долгота точки, число с плавающей точкой // широта точки, число с плавающей точкой
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"layers": [
{
"layer": "Улицы",
"wmsName": "world:k2_ulitsy_l",
"layerId": null,
"items": [
{
"pkid": 162815,
"label": "Республика Татарстан, Казань, Ледяная",
"zoom": 16,
"point": {
"lon": 49.28956419647526,
"lat": 55.75372719479096
}
}
]
}
]
}
// массив слоев, где найдены объекты // объект слоя // русское название, строка // английское название, строка // null - слой, для поиска по умолчанию, иначе id из массива // массив найденных объектов // найденный объект // первичный ключ, строка // заголовок, строка // зум для отображения, целое число // точка, объект // долгота точки, число с плавающей точкой // широта точки, число с плавающей точкой
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки
GET /geocoding
Структура запроса:
POST /geocoding?query=Казань&lon=55.45&lat=49.67&layersId=12,23,345,56&token=bw3ty3h46yth
query: строка запроса
lon: долгота центра карты, число с плавающей точкой
lat: широта центра карты, число с плавающей точкой
layersId: id слоев, где также надо осуществлять поиск, через запятую
token: ключ доступа
Ответ:
Статус: 200 - успешное выполнение
Формат: json
{
"layers": [
{
"layer": "Улицы",
"wmsName": "world:k2_ulitsy_l",
"layerId": null,
"items": [
{
"pkid": 162815,
"label": "Республика Татарстан, Казань, Ледяная",
"zoom": 16,
"point": {
"lon": 49.28956419647526,
"lat": 55.75372719479096
}
}
]
}
]
}
// массив слоев, где найдены объекты // объект слоя // русское название, строка // английское название, строка // null - слой, для поиска по умолчанию, иначе id из массива // массив найденных объектов // найденный объект // первичный ключ, строка // заголовок, строка // зум для отображения, целое число // точка, объект // долгота точки, число с плавающей точкой // широта точки, число с плавающей точкой
Статус: 500 - ошибка на сервере
Формат: text/plain
Содержит описание ошибки