АПИ для получения расписания заседаний арбитражных судов 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 дней. Ответ отражает последнее загруженное расписание, поэтому изменения на сайте суда могут появиться в нём позже.

Типовой сценарий: суды → судьи → расписание

  1. Получите названия судов через /api/RadArbitr/courts?apiKey=YOUR_API_KEY. Возьмите нужное название из items, например «АС города Москвы».
  2. Запросите судей: /api/RadArbitr/judges?apiKey=YOUR_API_KEY&searchQuery=АС города Москвы.
  3. Получите расписание суда: /api/RadArbitr/data?apiKey=YOUR_API_KEY&searchQuery=АС города Москвы&dayNumber=2. Для отдельного судьи передайте значение items[].judge: /api/RadArbitr/data?apiKey=YOUR_API_KEY&judge=Новиков Н. А., АС города Москвы.
  4. Если известен номер дела, можно сразу искать по нему: /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–312
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:MM10: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Строковый ключ записи для повторного точного запроса
kindday, 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Источник данных временно недоступен или вернул неожиданный ответ. Повторите запрос позже.

Связанные статьи