Сервис определения территориальной подсудности по адресу и координатам разработан в поддержку развития информационных систем в сфере юриспруденции (LegalTech). Решает проблему быстрого получения данных районных (городских) судов и судебных участков мировых судей. База данных содержит все суды России и их судебные районы на основе официальных источников. Актуальность данных судов и территорий поддерживается ежедневно. Для работы сервиса используется собственная технология определения подсудности.
На данном этапе сервис покрывает всю территорию России для определения районных (городских) судов и некоторые регионы по участками мировых судей (на стадии заполнения).
Также планируется создать сопутствующий функционал, формирование квитанций для оплаты государственной пошлины и многое другое. Для связи по вопросам сотрудничества и предложений воспользуйтесь формой обратной связи.
Документация API
О сервисе
Порядок подключения
После регистрации в системе, в личном кабинете отображается токен для запросов подсудности по адресу.
Запрос подсудности необходимо отправить методом GET c параметрами, включая полученный токен и адрес запроса, как указано в примере.
Ответ приходит в формате json с рядом значений.
Внимание! Адрес следует отправлять с точностью до здания в формате: Город, улица, дом (здание / строение / корп), без указания кв., пом., этаж и других более конкретных данных. Указание лишних данных может привести к неточности определения подсудности - алгоритмам разбора адреса требуется понятный ввод для корректной работы.
Запрос подсудности необходимо отправить методом GET c параметрами, включая полученный токен и адрес запроса, как указано в примере.
Ответ приходит в формате json с рядом значений.
Внимание! Адрес следует отправлять с точностью до здания в формате: Город, улица, дом (здание / строение / корп), без указания кв., пом., этаж и других более конкретных данных. Указание лишних данных может привести к неточности определения подсудности - алгоритмам разбора адреса требуется понятный ввод для корректной работы.
Ограничения
{free-count} запросов в день тестовый доступ по токену.
Для увеличения лимита запросов, выберете один из тарифов в личном кабинете сервиса.
Описание ответа
data техническая информация
data:last количество оставшихся суточных запросов
data:status 1 (true) - успешно, 0 (false) - ошибка
data:error текст ошибки
request информация о запросе
request:address запрошенный адрес
request:coords запрошенные координаты
court_fs информация о федеральном суде (райнном/городском)
court_fs:title наименование суда
court_fs:address адрес суда
court_fs:site сайт суда
court_fs:email email суда
court_fs:tel телефон суда
court_ms такая же информация об участке мирового судьи
data:last количество оставшихся суточных запросов
data:status 1 (true) - успешно, 0 (false) - ошибка
data:error текст ошибки
request информация о запросе
request:address запрошенный адрес
request:coords запрошенные координаты
court_fs информация о федеральном суде (райнном/городском)
court_fs:title наименование суда
court_fs:address адрес суда
court_fs:site сайт суда
court_fs:email email суда
court_fs:tel телефон суда
court_ms такая же информация об участке мирового судьи
Запрос по координатам
Запрос по координатам в отличие от запроса по адресу работает значительно быстрее.
При наличии и адреса и координат в запросе для поиска будут использоваться координаты ввиду их большей точности, адрес при этом игнорируется.
Формат координат принимается с разделителем - пробелом. Если не удается найти суд по координатам, попробуйте поменять порядок расположения широты и долготы координат. Пример: не находит c "55.794340 49.099524", но найдет c "49.099524 55.794340". Это происходит из-за различий в разных стандартах записи геоданных.
Описание ошибок
Error text | Расшифровка ошибки | Решение |
---|---|---|
Access to the API is denied by the user | Доступ к API заблокирован пользователем | Вы можете самостоятельно разблокировать доступ к API в личном кабинете |
Query limit is null (0) | Ваш лимит запросов равен нулю | Для тарифа "Начальный" лимит будет доступен с 00:00 по МСК. Для тарифа "Пакетный" лимит будет доступен после пополнения баланса (продления тарифа) или приобретения другого тарифа в личном кабинете. |
There are not enough funds on the balance | На балансе недостаточно средств | Пополните баланс в личном кабинете |
The validity period of the tariff has expired | Закончился срок действия тарифа | Пополните баланс для продления тарифа или приобретите другой тариф в личном кабинете |
Unknown tariff type | Неизвестный тип тарифа (техническая ошибка) | Сообщите в техническую поддержку по адресу service@podsudnost.ru |
Tariff type is empty | Тариф не установлен для пользователя (техническая ошибка) | Сообщите в техническую поддержку по адресу service@podsudnost.ru |
403 Forbidden | Доступ запрещен | Убедитесь, что все параметры запросу указаны в соотвествии с документацией. Укажите Токен предоставленный в личном кабинете |
401 Unauthorized | Неавторизованный пользователь | Укажите Токен предоставленный в личном кабинете |
Non-correct recording of coordinates | Неправильная запись координат | Верно укажите координаты (через пробел), например 50.12345 60.12345 |
Coords or address params not assigned | Координаты или параметры адреса не назначены | Верно укажите координаты (через пробел), например 50.12345 60.12345 Убедитесь, что все параметры запросу указаны в соотвествии с документацией |
Data Base Error: [...] | Описание ошибки базы данных (техническая ошибка) | Сообщите в техническую поддержку по адресу service@podsudnost.ru |
"court_fs": null "court_ms": null |
Данные по районному / городскому суду не найдены Данные по участку мирового суда не найдены |
Вероятно мы еще не добавили данные по районному / городскому суду в свою базу данных. Суды добавляются каждый день и нужные вам обязательно появятся в ближайшее время. Сообщите в техническую поддержку по адресу service@podsudnost.ru и мы постараемся добавить нужные суды в кратчайшие сроки. Также, попробуйте проверить правильность параметров запроса. Возможно в вашем запросе закралась ошибка. |
Примеры
Пример HTTP запросов
// Запрос по адресу
https://api.территориальная-подсудность.рф/api?token=Токен&address=Адрес
// Запрос по координатам
https://api.территориальная-подсудность.рф/api?token=Токен&coords=Координаты
// При отправке обоих параметров будут обработаны только координаты ввиду их большей точности
https://api.территориальная-подсудность.рф/api?token=Токен&address=Адрес&coords=Координаты
https://api.территориальная-подсудность.рф/api?token=Токен&address=Адрес
// Запрос по координатам
https://api.территориальная-подсудность.рф/api?token=Токен&coords=Координаты
// При отправке обоих параметров будут обработаны только координаты ввиду их большей точности
https://api.территориальная-подсудность.рф/api?token=Токен&address=Адрес&coords=Координаты
Пример ответа JSON
{
"data": {
"status": 1,
"last": 49
},
"request": {
"address": "Казань, Московская 1",
"coords": "49.108795 55.796289",
"court_fs": {
"title": "Вахитовский районный суд г. Казани",
"address": "420043, г. Казань, ул. Лесгафта, д. 33",
"site": "https://vahitovsky.tat.sudrf.ru",
"email": "vahitovsky.tat@sudrf.ru",
"phone": "(843) 264-93-00"
},
"court_ms": null
}
}
"data": {
"status": 1,
"last": 49
},
"request": {
"address": "Казань, Московская 1",
"coords": "49.108795 55.796289",
"court_fs": {
"title": "Вахитовский районный суд г. Казани",
"address": "420043, г. Казань, ул. Лесгафта, д. 33",
"site": "https://vahitovsky.tat.sudrf.ru",
"email": "vahitovsky.tat@sudrf.ru",
"phone": "(843) 264-93-00"
},
"court_ms": null
}
}
Пример запроса php cURL
// адрес сервера в punycode
$host = "https://api.xn----7sbarabva2auedgdkhac2adbeqt1tna3e.xn--p1ai/api/?";
$host = "https://api.территориальная-подсудность.рф/api/?";
$params = [
"token" => "Токен",
"address" => "Адрес", // в виде: Регион, населенный пункт, улица, дом
"coords" => "Координаты" // разделитель - пробел, прим. "49.099524 55.794340"
];
$url = $host . http_build_query($params);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($curl);
echo $data;
curl_close($curl);
// Обработка ответа
$response = json_decode($data);
if ($response->data->status == 1) {
if ($response->request->court_fs) {
$court_fs = $response->request->court_fs;
print_r($court_fs);
// доступ к данным федерального суда
// $court_fs->title;
// $court_fs->address;
// $court_fs->site;
// $court_fs->email;
// $court_fs->phone;
}
if ($response->request->court_ms) {
$court_ms = $response->request->court_ms;
print_r($court_ms);
// доступ к данным участка мирового судьи
// $court_ms->title;
// $court_ms->address;
// $court_ms->site;
}
} else {
$error = $response->data->error;
}
$host = "https://api.xn----7sbarabva2auedgdkhac2adbeqt1tna3e.xn--p1ai/api/?";
$host = "https://api.территориальная-подсудность.рф/api/?";
$params = [
"token" => "Токен",
"address" => "Адрес", // в виде: Регион, населенный пункт, улица, дом
"coords" => "Координаты" // разделитель - пробел, прим. "49.099524 55.794340"
];
$url = $host . http_build_query($params);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($curl);
echo $data;
curl_close($curl);
// Обработка ответа
$response = json_decode($data);
if ($response->data->status == 1) {
if ($response->request->court_fs) {
$court_fs = $response->request->court_fs;
print_r($court_fs);
// доступ к данным федерального суда
// $court_fs->title;
// $court_fs->address;
// $court_fs->site;
// $court_fs->email;
// $court_fs->phone;
}
if ($response->request->court_ms) {
$court_ms = $response->request->court_ms;
print_r($court_ms);
// доступ к данным участка мирового судьи
// $court_ms->title;
// $court_ms->address;
// $court_ms->site;
}
} else {
$error = $response->data->error;
}
Пример запроса jQuery Ajax
const host = "https://api.территориальная-подсудность.рф/api"
const token = "Токен"
let address = "Адрес" // в виде: Регион, населенный пункт, улица, дом
let coords = "Координаты" // разделитель - пробел, прим. "49.099524 55.794340"
$.get(host, { token, address, coords })
.done(function (response) {
if (response.data.status) {
console.log("Федеральный суд:", response.request.court_fs)
console.log("Мировой судья:", response.request.court_ms)
} else {
console.log("Ошибка запроса:", response.data.error)
}
})
.fail(function () {
console.log("ошибка ajax")
});
const token = "Токен"
let address = "Адрес" // в виде: Регион, населенный пункт, улица, дом
let coords = "Координаты" // разделитель - пробел, прим. "49.099524 55.794340"
$.get(host, { token, address, coords })
.done(function (response) {
if (response.data.status) {
console.log("Федеральный суд:", response.request.court_fs)
console.log("Мировой судья:", response.request.court_ms)
} else {
console.log("Ошибка запроса:", response.data.error)
}
})
.fail(function () {
console.log("ошибка ajax")
});