АПИ для получения расписания заседаний арбитражных судов rad.arbitr.ru
АПИ для расписания заседаний арбитражных судов позволяет получить расписание с сайта rad.arbitr.ru, список судов и судей. Получите API KEY по инструкции «Открытое API системы СУДиДЕЛО». Базовый адрес — https://api-sudodelo.torkndgov.ru. Описание методов и схемы ответов: Swagger, раздел RadArbitr.
Все три метода используют GET и требуют apiKey в строке запроса. В примерах curl для Bash замените YOUR_API_KEY своим ключом. Параметры и поля JSON записываются в camelCase.
Откуда данные и как часто обновляются
Расписание читается из ранее загруженных данных: запрос расписания не открывает сайт суда. Обновление запускается раз в сутки на текущий день и на день через 5 дней. Если выбранная дата приходится на выходной, она переносится на понедельник. Список судов обновляется раз в 15 дней; справочник судей синхронизируется с сайтов судов раз в 15 дней. Ответ отражает последнее загруженное расписание, поэтому изменения на сайте суда могут появиться в нём позже.
Типовой сценарий: суды → судьи → расписание
- Получите названия судов через
/api/RadArbitr/courts?apiKey=YOUR_API_KEY. Возьмите нужное название изitems, например «АС города Москвы». - Запросите судей:
/api/RadArbitr/judges?apiKey=YOUR_API_KEY&searchQuery=АС города Москвы. - Получите расписание суда:
/api/RadArbitr/data?apiKey=YOUR_API_KEY&searchQuery=АС города Москвы&dayNumber=2. Для отдельного судьи передайте значениеitems[].judge:/api/RadArbitr/data?apiKey=YOUR_API_KEY&judge=Новиков Н. А., АС города Москвы. - Если известен номер дела, можно сразу искать по нему:
/api/RadArbitr/data?apiKey=YOUR_API_KEY&caseNumber=А66-5354/2026. Примеры curl ниже кодируют пробелы и кириллицу автоматически.
1. GET /api/RadArbitr/courts — список судов
Единственный параметр — обязательный apiKey (строка, ключ пользователя). Ответ: items — массив названий судов, total — их количество. Названия подходят для searchQuery. Пагинации нет, пустые названия исходного списка отбрасываются.
curl --fail --get "https://api-sudodelo.torkndgov.ru/api/RadArbitr/courts" \
--data-urlencode "apiKey=YOUR_API_KEY"
Первый запрос: если список ещё ни разу не собирался, запрос ждёт около 30 секунд и может вернуть пустой items. Повторите его позже.
2. GET /api/RadArbitr/judges — судьи суда
| Параметр | Обязательность и формат | Пример |
|---|---|---|
apiKey | Обязательный ключ пользователя, строка | YOUR_API_KEY |
searchQuery | Название из /courts; обязательно, если нет courtId | АС города Москвы |
courtId | Положительное целое число; обязательно, если нет searchQuery. При передаче обоих параметров имеет приоритет | 6 |
curl --fail --get "https://api-sudodelo.torkndgov.ru/api/RadArbitr/judges" \
--data-urlencode "apiKey=YOUR_API_KEY" \
--data-urlencode "searchQuery=АС города Москвы"
curl --fail --get "https://api-sudodelo.torkndgov.ru/api/RadArbitr/judges" \
--data-urlencode "apiKey=YOUR_API_KEY" \
--data-urlencode "courtId=6"
В ответе searchQuery содержит переданное название без пробелов по краям (при поиске только по ID — null); court — найденный суд; items — судьи; total — их количество. Пагинации нет. Если судьи ещё не загружены, список пустой.
| Поле court | Значение |
|---|---|
id | Числовой идентификатор для courtId |
name | Полное название суда |
url | Адрес сайта суда |
groupCode | Код группы судов |
groupName | Название группы судов |
| Поле элемента items | Значение |
|---|---|
id | Идентификатор судьи |
courtId | Идентификатор суда, совпадает с court.id |
fullName | Фамилия, имя и отчество судьи |
position | Должность; часто null |
phone | Телефон; часто null |
profileUrl | Страница судьи на сайте суда |
judge | Готовое значение фильтра judge для /data, например «Новиков Н. А., АС города Москвы»; заполняется только при searchQuery, иначе null |
court.name может отличаться от названия на rad.arbitr.ru: «Арбитражный суд города Москвы» и «АС города Москвы». Для searchQuery используйте короткое название из /courts, а для judge — готовое поле судьи. Если передаёте и название, и ID, они должны относиться к одному суду.
3. GET /api/RadArbitr/data — расписание заседаний
Передайте обязательный apiKey и хотя бы один из фильтров ниже. Все фильтры объединяются по «И». Пустая строка считается отсутствием фильтра.
Фильтры записи расписания
| Имя | Что значит и формат | Пример |
|---|---|---|
searchQuery | Название суда, строка | АС города Москвы |
judge | Судья и суд, строка из /judges | Новиков Н. А., АС города Москвы |
dayNumber | Число месяца, целое 1–31 | 2 |
kind | Тип записи: day — расписание за день; output — сводный результат; court_list — список судов | day |
cacheKey | Технический ключ, строка из ответа | Скопируйте items[].cacheKey |
updatedAtFrom | Время записи в кеш не раньше указанного, Unix-секунды (число) | 1790899200 |
updatedAtTo | Время записи в кеш не позже указанного, Unix-секунды (число) | 1790985599 |
usedProxy | Данные получены через прокси (true) или без него (false) | true |
Фильтры по полям заседания
| Имя | Что значит и формат | Пример / откуда взять значение |
|---|---|---|
caseNumber | Номер дела, строка | А66-5354/2026 |
participants | Точное совпадение с одним участником, строка | Администрация Калининского муниципального округа Тверской области |
time | Время, строка HH:MM | 10:00 |
officeNumber | Зал, строка как в расписании | 13 |
judges | Судьи внутри заседания, строка; отличается от judge записи | Скопируйте непустое hearings[].judges |
date | Текстовая дата, строка как в расписании | Пятница, 25 Сентября 2026 |
link | Полная ссылка на карточку дела, строка | https://kad.arbitr.ru/card/33f2535e-3238-430c-9920-179976d6aa8a |
Период заседаний
| Имя | Что значит и формат | Пример |
|---|---|---|
datetimeFrom | Нижняя граница включительно, ISO-дата и время без часового пояса | 2026-10-02T00:00:00 |
datetimeTo | Верхняя граница включительно, ISO-дата и время без часового пояса | 2026-10-02T23:59:59 |
Важные правила отбора
- Без фильтров —
400. Один apiKey фильтром не считается. - Строковые фильтры требуют точного совпадения, поиск по подстроке не выполняется.
dayNumber— только число месяца, без месяца и года. Для конкретной даты используйтеdatetimeFromиdatetimeTo.datetimeTo=2026-10-02означает начало дня. Чтобы включить весь день, укажите2026-10-02T23:59:59.- При фильтрах по полям заседания или периоду в
hearingsостаются только подходящие заседания. Записи без совпадений не возвращаются. При отборе по периоду заседания без даты и времени исключаются. kind=dayбез других фильтров вернёт почти весь кеш — сотни мегабайт. Сочетайте его сdayNumber,searchQuery,caseNumberили периодом.judgesу заседания частоnull. Для отбора по судье обычно удобнееjudge, полученный через /judges.
Примеры запросов
По номеру дела:
curl --fail --get "https://api-sudodelo.torkndgov.ru/api/RadArbitr/data" \
--data-urlencode "apiKey=YOUR_API_KEY" \
--data-urlencode "caseNumber=А66-5354/2026"
По суду и числу месяца:
curl --fail --get "https://api-sudodelo.torkndgov.ru/api/RadArbitr/data" \
--data-urlencode "apiKey=YOUR_API_KEY" \
--data-urlencode "searchQuery=АС города Москвы" \
--data-urlencode "dayNumber=2"
По судье:
curl --fail --get "https://api-sudodelo.torkndgov.ru/api/RadArbitr/data" \
--data-urlencode "apiKey=YOUR_API_KEY" \
--data-urlencode "judge=Новиков Н. А., АС города Москвы"
За один конкретный день:
curl --fail --get "https://api-sudodelo.torkndgov.ru/api/RadArbitr/data" \
--data-urlencode "apiKey=YOUR_API_KEY" \
--data-urlencode "kind=day" \
--data-urlencode "datetimeFrom=2026-10-02T00:00:00" \
--data-urlencode "datetimeTo=2026-10-02T23:59:59"
Поля ответа /data
items — записи расписания, от свежих к старым по updatedAt; total — количество записей, не заседаний. Возвращается весь найденный результат, без пагинации. Если совпадений нет, items пустой и total равен 0.
| Поле записи items[] | Описание |
|---|---|
cacheKey | Строковый ключ записи для повторного точного запроса |
kind | day, output или court_list |
searchQuery | Название суда; null у списка судов |
judge | Судья; null у расписания суда целиком |
dayNumber | Число месяца строкой; null у списка судов |
updatedAt | Время записи в кеш, Unix-секунды (число) |
updatedAtUtc | То же время в UTC, строка даты и времени |
usedProxy | Логическое значение: данные получены через прокси |
hearings | Плоский массив заседаний; может быть пустым |
courtList | Массив названий судов только при kind=court_list; иначе null |
| Поле заседания hearings[] | Описание |
|---|---|
time | Время HH:MM |
caseNumber | Номер дела |
participants | Массив строк с участниками; пустой, если не указаны |
officeNumber | Зал заседания строкой |
link | Ссылка на карточку дела в kad.arbitr.ru |
judges | Судьи, указанные в заседании; часто null |
date | Текстовая дата как на сайте |
datetime | Дата и время как на сайте, без часового пояса; null, если определить их не удалось |
Ошибки
| HTTP-код | Причина и действие |
|---|---|
400 | В /data нет фильтра; kind не из day / output / court_list; dayNumber вне 1–31; нижняя граница updatedAt или datetime больше верхней. В /judges нет параметра суда или courtId < 1. Нечисловое значение числового параметра также даёт 400. Исправьте параметры. |
401 | Неверный apiKey. Проверьте ключ пользователя. |
404 | Суд не найден — только /judges. Проверьте название или courtId. |
502 | Источник данных временно недоступен или вернул неожиданный ответ. Повторите запрос позже. |