API для доступа к данным openpolice.ru

API openpolice.ru представляет собой инструмент, с помощью которого информация из баз данных openpolice.ru, становится доступной в виде, удобном для использования сторонними сайтами и приложениями. Этот механизм предоставляет огромные возможности для разработчиков, создающих сайты и приложения (в т. ч. для мобильных устройств).

Механизм API принимает запросы, составленные по определённому шаблону от сторонних приложений, а в ответ возвращает запрошенные данные в стандартном и широко используемом формате JSON.

API

На данный момент доступен API версии 1.1.

API принимает на вход get-запрос описанного ниже вида, возвращает данные в виде JSON-документов.

Описание языка запросов

Запросы к API принимаются в следующем виде:

http://api.openpolice.ru/api/v1/{Datasource type}/{Datasource}/{Parameter1}&{ParameterN}

Datasource type

Datasource

Parameter

Type

Description

db

Тип источника данных — база данных.

MVDorgs

Источник данных — организации МВД.

regcode

str

Цифровой код региона (ГИБДД). Допустимые значения: от '01' до '99' (за исключением несуществующих кодов) или 'all' (все регионы).

type

str

Тип организации МВД: подразделение ГИБДД 'GIBDDunit', подразделение МВД 'MVDorg', все подразделения 'all'.

id

str

Принимает в качестве значения строку с ID документа в базе данных (см. поле «_id» в описании полей базы данных), возвращает один документ с заданным ID. При этом в параметрах «regcode» и «type» следует передавать значение «all».

page

int

Номер страницы выдачи.

perpage

int

Документов на страницу.

returnfields

list

Список вида '[field1, field2, …, fieldN]', ограничивающий перечень полей в возвращаемых в ответ на запрос документах.

Persons

Источник данных — персоны.

okato

str

11-значный код ОКАТО.

type

str

Тип документа по персоне: «districtPolice» — документы по участковым.

level1

str

Название объекта административно-территориального деления первого уровня классификации ОКАТО.

level2

str

Название объекта административно-территориального деления второго уровня классификации ОКАТО.

level3

str

Название объекта административно-территориального деления третьего уровня классификации ОКАТО.

surname

str

Фамилия персоны.

id

str

Принимает в качестве значения строку с ID документа в базе данных (см. поле «_id» в описании полей базы данных), возвращает один документ с заданным ID. При этом в параметрах «okato» и «type» следует передавать значение «all» или не использовать эти параметры в запросе вовсе.

page

int

Номер страницы выдачи.

perpage

int

Документов на страницу.

returnfields

list

Список вида '[field1, field2, …, fieldN]', ограничивающий перечень полей в возвращаемых в ответ на запрос документах.

OKATO

Источник данных — классификатор ОКАТО.

okato

str

11-значный код ОКАТО.

level

int

Уровень (в классификации ОКАТО) объекта административно-территориального деления.

name

str

Название объекта административно-территориального деления (согласно классификации ОКАТО).

parent

str

11-значный код ОКАТО объекта административно-территориального деления включающего в себя данный объект.

id

str

Принимает в качестве значения строку с ID документа в базе данных (см. поле «_id» в описании полей базы данных), возвращает один документ с заданным ID. При этом в параметрах «okato» и «type» следует передавать значение «all» или не использовать эти параметры в запросе вовсе.

page

int

Номер страницы выдачи.

perpage

int

Документов на страницу.

returnfields

list

Список вида '[field1, field2, …, fieldN]', ограничивающий перечень полей в возвращаемых в ответ на запрос документах.

refbook

Тип источника данных — справочники.

Copfinder

Источник данных — адреса территорий, за которые ответственны участковые.

place

str

Название населённого пункта, по которому ведётся поиск участкового полицейского.

street

str

Название улицы (или бульвара, проспекта, переулка и т. д.; или номера корпуса для некоторых населённых пунктов), по которой ведётся поиск участкового полицейского.

page

int

Номер страницы выдачи.

perpage

int

Документов на страницу.

returnfields

list

Список вида '[field1, field2, …, fieldN]', ограничивающий перечень полей в возвращаемых в ответ на запрос документах.

 

Примеры

1.

http://api.openpolice.ru/api/v1/db/MVDorgs/regcode=62&type=all&page=1&perpage=5

Из базы данных (db) по организациям МВД (MVDorgs) Рязанской области /код региона 62/ (regcode=62) получить список из всех подразделений МВД (type=all). Список выдавать постранично: первая страница (page=1) из 5 документов (perpage=5).

2.

http://api.openpolice.ru/api/v1/db/MVDorgs/regcode=65&type=all&page=1&perpage=10&returnfields=[Адрес подразделения, lat_org, lon_org]

Из базы данных (db) по организациям МВД (MVDorgs) Сахалинской области области /код региона 65/ (regcode=65) получить список из всех подразделений МВД (type=all). Поля возвращаемых документов ограничить (returnfields=[]) следующими: адрес подразделения (Адрес подразделения), широта (lat_org), долгота (lon_org). Список выдавать постранично: первая страница (page=1) из 10 документов (perpage=10).

3.

http://api.openpolice.ru/api/v1/db/Persons/surname=Иванов&page=1&perpage=5

Из базы данных (db) по персонам (Persons) получить список документов о всех с фамилией «Иванов» (surname=Иванов). Список выдавать постранично: первая страница (page=1) из 5 документов (perpage=5).

4.

http://api.openpolice.ru/api/v1/db/OKATO/name=Сочи

Из базы данных (db) по данным классификатора ОКАТО (OKATO) получить документ объекта административно-территориального деления с названием «Сочи» (name=Сочи).

5.

http://api.openpolice.ru/api/v1/refbook/Copfinder/place=Самара&street=Ленина

Из базы данных (db) по персонам (Persons) получить список документов по всем участковым полицейским, обслуживающим в Томске (place=Томск) участки на улице Сибирской (street=Сибирская).

Источники данных

·       MVDorgs: база данных «Организации МВД»

·       Persons: база данных «Персоны»

·       OKATO: база данных «ОКАТО»