Суддя

Точка входу «Суддя» повертає інформацію стосовно суддів України.

Загальна інформація

Інформація про суддів з даних Державної судової адміністрації, опублікованих на відповідному порталі відкритих даних.

Унікальним ідентифікатором для кожного судді є певна судова установа та прізвище, ім’я та по батькові судді (або прізвище та ініціали).

Оновлюється за відповідними нормативно-правовими документами, опублікованими на сайті Верховної Ради України.

Кількість суддів

GET-запит за адресою https://api.conp.com.ua/api/v1.0/judge повертає загальну кількість суддів в системі

GET /judge HTTP/1.0
Host: https://api.conp.com.ua/api/v1.0

{ "message": 13852 }

Отримання інформації про суддю

GET-запит за адресою https://api.conp.com.ua/api/v1.0/judge/:id повертає інформацію про суддю за відповідною схемою даних . Де ``id` - це транслітерована комбінація коду суду та прізвища та ініціалів судді.

GET /judge/0590_ahieiev_o__v_ HTTP/1.0
Host: https://api.conp.com.ua/api/v1.0

{
  "person": {
    "source": "Агєєв Олександр Володимирович",
    "idName": "Агєєв О. В.",
    "fullName": "Агєєв Олександр Володимирович",
    "familyName": "Агєєв",
    "givenName": "Олександр",
    "additionalName": "Володимирович",
    "sex": "чоловік",
    "jobTitle": "Голова Апеляційного суду Донецької області (м. Бахмут)",
    "idNameRus": "Агеев А. В.",
    "fullNameRus": "Агеев Александр В",
    "familyNameRus": "Агеев",
    "givenNameRus": "Александр",
    "additionalNameRus": "В"
  },
  "courts": [
    {
      "address": {
        "geo": {
          "lon": "37.998301",
          "lat": "48.589041"
        },
        "streetAddress": "вулиця Свободи,10",
        "postalCode": "84513",
        "locality": "місто Бахмут",
        "fullAddress": "84513, Донецька область, місто Бахмут, вулиця Свободи,10",
        "source": "84500, м. Бахмут, вул. Свободи,10",
        "countryName": "Україна",
        "region": "Донецька область",
        "oldLocality": "місто Артемівськ"
      },
      "courtName": "Апеляційний суд Донецької області",
      "courtCode": "0590",
      "phone": [
        "+38 (062) 744 50 26",
        "+38 (062) 744 50 24",
        "+38 (062) 744 51 44",
        "+38 (062) 744 51 57"
      ],
      "instanceType": "Апеляційна",
      "organization": {
        "legalName": "АПЕЛЯЦІЙНИЙ СУД ДОНЕЦЬКОЇ ОБЛАСТІ",
        "head": {
          "idName": "Лісовий О. О.",
          "familyName": "Лісовий",
          "givenName": "Олександр",
          "sex": "чоловік",
          "jobTitle": "Директор",
          "fullName": "Лісовий Олександр Олександрович",
          "source": "ЛІСОВИЙ ОЛЕКСАНДР ОЛЕКСАНДРОВИЧ",
          "additionalName": "Олександрович"
        },
        "identifier": {
          "valid": true,
          "scheme": "UA-EDR",
          "id": "02891428"
        },
        "address": {
          "streetNumber": "1-А",
          "streetAddress": "проспект Миру, 1-А",
          "postalCode": "87500",
          "district": "Центральний район",
          "locality": "місто Маріуполь",
          "fullAddress": "87500, Донецька область, місто Маріуполь, проспект Миру, 1-А",
          "source": "87500, Донецька обл., місто Маріуполь, Центральний район, ПРОСПЕКТ МИРУ, будинок 1-А",
          "countryName": "Україна",
          "region": "Донецька область"
        },
        "currentStatus": "зареєстровано",
        "numberOfFounders": 1,
        "name": "АПЕЛЯЦІЙНИЙ СУД ДОНЕЦЬКОЇ ОБЛАСТІ",
        "kved": {
          "part": "84",
          "group": "23"
        },
        "founders": [
          {
            "organization": {
              "name": "Державна Судова Адміністрація України",
              "source": "ДЕРЖАВНА СУДОВА АДМІНІСТРАЦІЯ УКРАЇНИ"
            },
            "source": "ДЕРЖАВНА СУДОВА АДМІНІСТРАЦІЯ УКРАЇНИ, розмір внеску до статутного фонду - 0.00 грн."
          }
        ],
        "full_kved": "84.23 Діяльність у сфері юстиції та правосуддя",
        "updatedAt": "2018-08-10T12:30:10.548Z"
      },
      "courtRegion": "Донецька область",
      "openingHours": [
        "Пн-Чт з 08:00 до 17:00",
        "Пт з 08:00 до 15:45",
        "Перерва з 12:00 до 12:45"
      ],
      "url": "http://dna.court.gov.ua/sud0590/",
      "email": "inbox@dna.court.gov.ua",
      "updatedAt": "2018-08-10T13:15:42.915Z"
    }
  ],
  "id": "0590_ahieiev_o__v_",
  "updatedAt": "2018-08-10T15:19:57.947Z"
}

Пошук суддів

POST-запит за адресою https://api.conp.com.ua/api/v1.0/judge/search дозволяє шукати суддів.

POST-запит має містити JSON з наступними змінними

query:

рядок

Перелік термінів для повнотекстового пошуку.

defaultOperator:
 

рядок

Приймає значення or або and, щоб шукати будь-який з термінів для повнотекстового пошуку або усі терміни.

filter:

об’єкт

Об’єкт, який містить перелік усіх пошукових фільтрів, встановлених користувачем.

sort:

об’єкт

Об’єкт, який визначає порядок сортування результатів.

from:

ціле число (integer)

Кількість об’єктів, яку необхідно пропустити (використовується для пагінації).

aggregation:

булеве значення

Якщо встановлено значення false, то в результаті буде отримано перелік суддів, які відповідають повнотекстовому запиту та фільтрам. Якщо встановлено значення true, то повертає перелік агрегацій для фасетного пошуку.

Фільтри

Кожен з фільтрів має бути об’єктом з певною назвою (поле, за яким відбувається фільтрація) та будуватися за схемою:

list:

масив рядків

Перелік точних значень термінів для фільтрації результату.

operator:

рядок

Приймає значення or або and, щоб у результат попадали сутності з будь-яким зі значень фільтру або усі значення фільтру.

Суддів можна фільтрувати за точними значеннями таких змінних:

  • instanceType - Інстанція суду
  • courtName - Назва суду
  • sex - Стать судді
  • address.region - Область адреси суду
  • address.district - Район або район у місті адреси суду
  • address.locality - Населений пункт адреси суду
  • address.fullAddress - Повна адреса суду
  • address.currentStatus - Поточний статус суду

Приклад використання фільтру - «(1) Тільки судді-жінки (2) судів першої інстанції (3) міста Харків»:

...
{ "filter": {
  "instanceType": {
    "list": [
      "Перша"
    ],
    "operator": "or"
  },
  "sex": {
    "list": [
      "жінка"
    ],
    "operator": "or"
  },
  "address.locality": {
    "list": [
      "місто Харків"
    ],
    "operator": "or"
  }
}
...

Сортування

Для суддів дозволено сортування за повним іменем. Якщо змінна sort у запиті має значення {}, то сортування відбуватиметься за релевантністю.

Приклад сортування за повним іменем:

...
"sort": {
  "person.fullName.sort": { "order": "asc" }
}
...

Агрегація

Для суддів передбачено агрегацію за такими змінними:

  • Інстанція суду
  • Область суду
  • Населений пункт суду
  • Район суду
  • Стать судді

Агрегації розраховуються автоматично для усіх змінних, для яких встановлено фільтр. Якщо необхідно отримати агрегацію без фільтрації, то необхідно задати «пустий» фільтр таким чином:

...
"filter": {
  "instanceType": {
    "list": [],
    "operator": "or"
  }
}
...

Приклад повного запиту та відповіді

POST /judge/search HTTP/1.0
Host: https://api.conp.com.ua/api/v1.0

{
  "query": "",
  "defaultOperator": "or",
  "filter": {
    "instanceType": {
      "list": [
        "Апеляційна"
      ],
      "operator": "or"
    },
    "courtName": {
      "list": [],
      "operator": "or"
    },
    "fullName": {
      "list": [],
      "operator": "or"
    },
    "sex": {
      "list": [
        "чоловік"
      ],
      "operator": "or"
    },
    "address.region": {
      "list": [],
      "operator": "or"
    },
    "address.district": {
      "list": [],
      "operator": "or"
    },
    "address.locality": {
      "list": [
        "місто Дніпро"
      ],
      "operator": "or"
    },
    "address.fullAddress": {
      "list": [],
      "operator": "or"
    },
    "organization.currentStatus": {
      "list": [],
      "operator": "or"
    }
  },
  "searchIndex": "judge",
  "aggregation": true
}

{
  "aggs": {
    "address.locality": [],
    "compound": {},
    "address.district": [
      {
        "key": "Бабушкінський район",
        "doc_count": 35
      },
      {
        "key": "Жовтневий район",
        "doc_count": 18
      },
      {
        "key": "Шевченківський район",
        "doc_count": 14
      }
    ],
    "courtName": [
      {
        "key": "Апеляційний суд Дніпропетровської області",
        "doc_count": 34
      },
      {
        "key": "Дніпропетровський апеляційний адміністративний суд",
        "doc_count": 18
      },
      {
        "key": "Дніпропетровський апеляційний господарський суд",
        "doc_count": 14
      },
      {
        "key": "Апеляційний суд Дніпропетровської області (м. Кривий Ріг)",
        "doc_count": 1
      }
    ],
    "address.region": [
      {
        "key": "Дніпропетровська область",
        "doc_count": 67
      }
    ],
    "instanceType": [],
    "sex": []
  },
  "total": 67
}