Авторизація
Доступ до всіх сервісів УБКІ здійснюється за наявності чинного сесійного ключа.
Для отримання сесійного ключа використовується сервіс авторизації. Ключ діє до 23:59:59 дати, в яку він був отриманий. Новий ключ можна отримати з 22:00, він буде діяти з моменту отримання і весь наступний день. Kлюч може бути скомпрометований і заблокований з різних причин, сервіс поверне повідомлення "Помилка безпеки. Час життя сесійного ключа минув". У такій ситуації слід авторизуватися заново.
Сесійний ключ необхідно отримувати виключно один раз на добу. ВАЖЛИВО не формувати новий сесійний ключ при кожному запиті, так як це створює зайве навантаження в роботі сервісів. Запит на отримання сесійного ключа підтримується у форматах xml/json. Необхідно вказувати HTTP заголовки - Content-Type: application/xml або Content-Type: application/json.
- Якщо ваше програмне забезпечення використовує заголовок Content-Type: application/json; charset=utf-8, необхідно додатково вказати HTTP заголовок X-API-Version:2
Сервіс авторизації
Http Method | POST |
---|---|
Request URL | https://secure.ubki.ua/b2_api_xml/ubki/auth |
Test URL | https://test.ubki.ua/b2_api_xml/ubki/auth |
Request |
---|
JSON
headers:
Content-Type: application/json
Accept: application/json
body:
{
"doc" : {
"auth" : {
"login" : "Логін",
"pass" : "Пароль"
}
}
}
XML
headers:
Content-Type: application/xml
Accept: application/xml
body:
<!-- Запит необхідно кодувати в Base64 --!>
<?xml version="1.0" encoding="utf-8" ?>
<doc>
<auth login="Логін" pass="Пароль"/>
</doc>
Response |
---|
JSON
body:
{
"doc": {
"auth": {
"errcode": "Код помилки (Код з дов.0)",
"errtext": "Текст помилки",
"errtextclient": "Текст помилки для клієнтів",
"sessid": "Ключ сесії",
"datecr": "Дата і час створення сесії",
"dateed": "Дата і час відновлення сесії",
"userlogin": "Логін",
"userid": "ІД користувача",
"userfname": "Прізвище користувача",
"userlname": "Ім'я користувача",
"usermname": "По батькові користувача",
"rolegroupid": "ІД групи ролі",
"rolegroupname": "Найменування групи ролі",
"agrid": "ІД організації",
"agrname": "Найменування організації",
"role": "Технічне поле, що не несе ніякої корисної інформації для партнера",
"mustchngpass": "Рекомендація щодо зміни пароля для облікового запису користувача (1 - рекомендовано змінити пароль, -/0 - у зміні пароля немає необхідності)"
}
}
}
XML
body:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<doc>
<auth
errcode="Код помилки (Код з дов.0)"
errtext="Текст помилки"
errtextclient="Текст помилки для клієнтів"
sessid="Ключ сесії"
datecr="Дата і час створення сесії"
dateed="Дата і час відновлення сесії"
userlogin="Логін"
userid="ІД користувача"
userfname="Прізвище користувача"
userlname="Ім'я користувача"
usermname="По батькові користувача"
rolegroupid="ІД групи ролі"
rolegroupname="Найменування групи ролі"
agrid="ІД організації"
agrname="Найменування організації"
role="Технічне поле, що не несе ніякої корисної інформації для партнера"
mustchngpass= "Рекомендація щодо зміни пароля для облікового запису користувача (1 - рекомендовано змінити пароль, -/0 - у зміні пароля немає необхідності)"
/>
</doc>
При виконанні запиту авторизації, у разі некоректного запиту або недостатніх налаштувань облікового запису користувача, API поверне код помилки. Щоб мінімізувати помилки при інтеграції з API та для правильного налаштування відповіді, необхідно аналізувати всі отримані помилки.