skip to Main Content

API карты пожаров

Использование REST API ГеоМиксер

Аутентификация

На данный момент для доступа к закрытым пользовательским данным и выполнения ряда операций запросы должны содержать API-ключ. Важно, чтобы он оставался секретным. Получить ключ можно, зарегистрировавшись на my.kosmosnimki.ru

Осуществление вызовов

Вызовы осуществляются посредством HTTP-запросов, различия между POST и GET запросами на данный момент нет. Методы PUT и DELETE не поддерживаются. Параметры могут быть переданы как в URL, так и в теле POST-запроса. Названия параметров не зависят от регистра. Результат выполнения операции содержится в коде состояния HTTP. Перечень возможных кодов приведен в таблице ниже. Если результат содержит данные, то они возвращаются в теле запроса в указанном формате. На данный момент поддерживаются формат GeoJson (по умолчанию) и внутренний формат GeoMixer.

Коды результатов ответа

В REST API используются следующие коды HTTP в качестве результатов:

Код результата Когда используется
200 OK Возвращается в случае успешно выполненной операции, тело, как правило, содержит дополнительную информацию.
204 No content Возвращается в случае успешно выполненной операции, когда результат не предусмотрен. Например, в случае удаления слоя.
400 Bad Request Возвращается в случае, если в запросе содержится ошибка, например, неправильно задан один из параметров.
403 Forbidden Возвращается в случае неавторизованного доступа (когда для доступа необходим API-ключ, но он не указан либо указан неправильный ключ).
404 Not Found Возвращается в случае, если не найден какой-либо объект, участвующий в запросе, например, слой.
500 Internal Server Error Возвращается в случае ошибки, произошедшей при работе сервера.
501 Not Implemented Возвращается в случае, если запрошенная операция не реализована.

Работа со слоями

Здесь и далее, layer_id обозначает 16-ти символьный идентификатор слоя. Параметры, помеченные символом “*”, являются обязательными.

URL:

Ссылка /rest/ver1/layers/layer_id/search

Параметры запроса:

Параметр Тип Описание
api_key String API-ключ пользователя
query String Запрос, задающий критерии поиска
columns String Названия столбцов атрибутов, включаемых в результат; указываются через запятую
orderby String Название столбца для сортировки результата
orderdirection String Порядок сортировки; возможные значения: asc, desc
skiprecords Integer Количество пропускаемых объектов в результате
limitrecords Integer Максимальное количество объектов в результате; в любом случае сервер вернет не более 1000 объектов
out_cs String Формат выходной системы координат, возможные значения: EPSG:4326 (по умолчанию), EPSG:3395
border String Геометрия в формате GeoJson или WKT, ограничивающая область поиска
borderFromLayer (borderID) String передача границы border по ссылке. Перекрывает параметр border. Указывает слой из которого следует использовать геометрию. BorderFromLayer – идентификатор слоя. Если слой растровый, то используется граница растрового слоя, если слой векторный, требуется указать BorderId – идентификатор объекта в векторном слое, тогда будет использоваться граница этого объекта. Для каталогов растров можно использовать значение BorderFromLayer=GMX_RasterCatalogID или BorderFromLayer=ID_каталога&BorderId=ID_объекта_в_каталоге
border_cs String Формат входной системы координат параметра border, возможные значения: EPSG:4326 (по умолчанию), EPSG:3395
count String Возможные значения: true/false (по умолчанию) определяют, что вернет запрос: только количество объектов в выборке (true) или же сами объекты (false).

Данные о пожарах

На данный момент существует два источника данных:

  • пожары СКАНЭКС (Россия)
  • пожары FIRMS (глобальные)

На основе обоих источников формируются два типа слоев:

  • термоточки пожаров (все термоточки за указанный период и время)
  • кластеры пожаров (сгруппированные термоточки по дням и за выбранный период)

Ниже приведены примеры запросов и ID для всех типов слоев:

Пожары СКАНЭКС

Пример запроса за термоточками:

http://maps.kosmosnimki.ru/rest/ver1/layers/F2840D287CD943C4B1122882C5B92565/search?query=%22DateTime%22%3E=%272014-11-07%27%20%20and%20%22DateTime%22%3C%272014-11-08%27%20&api_key=L5VW1QBBHJ

Параметры ответа сервера:

“HotSpotID”,”Sample”,”DataSource” – являются служебными параметрами в системе Kosmosnimki

“Platform” String спутник Terra / Aqua / NPP
“Confidence” integer на основе относительной яркости термоточки, значения 0-100
“Power” float на основе абсолютной яркости термоточки (не рассчитывается для NPP!)
“DateTime” datetime Unix timestamp / yyyy-mm-dd hh:mm:ss
“ClusterID” ID кластера, которому принадлежит термоточка
“FireType” integer null

Битовая маска признаков со следующими свойствами:

* бит 0 – признак техногенного источника

* бит 1 – признак пожара на торфянниках

* бит 2 – признак пожара вблизи города

Варианты:

* 1 (001) – техногенный источник

* 2 (010) – пожар на торфяннике

* 3 (011) – техногенный пожар на торфяннике

* 4 (100) – пожар вблизи города

* 5 (101) – техногенный источник вблизи города

* 6 (110) – источник на торфяннике вблизи города

* 7 (111) – техногенный источник на торфяннике вблизи города

“Town” string Название населенного пункта в радиусе < 5км
“geomixergeojson” geometry Координаты термоточки (Mercator / Lat, Lon)

Пример запроса за кластерами* пожаров:

http://maps.kosmosnimki.ru/rest/ver1/layers/E58063D97D534BB4BBDFF07FE5CB17F2/search?query=%22DateTime%22%3E=%272014-11-07%27%20%20and%20%22DateTime%22%3C%272014-11-08%27%20&api_key=L5VW1QBBHJ

*С помощью кластеризации выделены наиболее крупные очаги, которые наиболее вероятно являются пожарами. Заодно уменьшается кол-во объектов, которые надо отрисовывать на карте.

Пожары FIRMS

Если мы захотим показывать еще и глобальные пожары по всему миру – нужно будет просто добавить еще один запрос и поменять ID слоя. Но сейчас этот слой отстает по оперативности.

Пример запроса за термоточками

http://maps.kosmosnimki.ru/rest/ver1/layers/3E88643A8AC94AFAB4FD44941220B1CE/search?query=%22Timestamp%22%3E=%272014-11-07%27%20%20and%20%22Timestamp%22%3C%272014-11-08%27%20&api_key=L5VW1QBBHJ

Пример запроса за кластерами

http://maps.kosmosnimki.ru/rest/ver1/layers/3E88643A8AC94AFAB4FD44941220B1CE/search?query=%22ClusterDate%22%3E=%272014-11-07%27%20%20and%20%22ClusterDate%22%3C%272014-11-08%27%20&api_key=L5VW1QBBHJ

Из-за того что данные немного разные, для оперативности получения данных и настроек параметров обработки логично показывать два разных слоя, как сделано на fires.kosmosnimki.ru

(Пожары СКАНЭКС / Пожары FIRMS)

Либо показывать только один слой.

В запросах API поддерживаются операторы сравнения > >= <> = < <=

Так что можно показывать в режиме “прошедшие + текущие сутки”

http://maps.kosmosnimki.ru/VectorLayer/Search.ashx?layer=F2840D287CD943C4B1122882C5B92565&geometry=true&query=“DateTime”>=’13.04.2014′&”DateTime”<=’14.04.2014′

Пример использования

Пример запроса к слою пожаров в границе Приморского края (указывается слой границы из базы GeoMixer) за 07.11.2014, с возвращением координат Меркатора.

В примере запроса используется тестовый API-ключ, который может поменяться. Используйте собственный ключ

http://maps.kosmosnimki.ru/rest/ver1/layers/F2840D287CD943C4B1122882C5B92565/search?query=”DateTime”>=’2014-11-07’and”DateTime”=’2014-11-08’&BorderFromLayer=78E56184F48149DF8A39BA81CA25A01E&BorderID=1&api_key=L5VW1QBBHJ&out_cs=EPSG:3395

primorie geos

Условия использования

Условием бесплатного использования API является:

В случае если вы реализуете коммерческий проект или хотите заказать тех поддержку / дополнительные сервисы, обратитесь к нам: help@kosmosnimki.ru

Back To Top