Аутентифікація і авторизація
Для отримання доступу до API, необхідно виконати вхід в свій обліковий запис, виконавши POST запит на URI
https://order24-api.utr.ua/api/login_check
Передавши в тілі запиту логін, пароль і підпис браузера, наприклад:
{
"email":"[email protected]",
"password":"mysecretpassword",
"browser_fingerprint": "some-unique-key-here"
}
Де:
Email - логін користувача
Password - пароль користувача
Browser_fingerprint - підпис браузера, для API використовуйте будь-яку унікальну строку довжиною не більше 128 символів. Ми, наприклад, використовуємо хеш md5();
Обов'язково надсилайте заголовок Content-Type:
Content-Type: application/json
На відправлений запит буде отримана відповідь в json-форматі:
{
"token": "eyJ0eXAiOiJKV1Q...",
"expires_at": "2020-01-17 15:04:50",
"refresh_token": "2a3bb84af9a3..."
}
з якого необхідно витягти поля
token – токен, буде потрібно для авторизації при виконанні наступних запитів, має термін дії
refresh_token – токен, який буде потрібний для подальшого оновлення поля token, після закінчення його терміну дії
Наприклад, для пошуку деталі по артикулу OC90, посилаємо наступний запит:
https://order24-api.utr.ua/api/search/oc90
додавши при цьому в headers
Authorization: Bearer eyJ0eXAiOiJKV1Q...<br>
Де в Authorization після ключового слова Bearer потрібно передати отриманий вище token.
Помилка аутентифікації
У разі зазначення неправильного імені користувача або пароля, ви отримаєте таку відповідь
- Status Code: 412 Precondition Failed
- Body:
{
"code": 412,
"message": "Некоректні дані користувача. Перевірте коректність введених даних і спробуйте ще раз."
}
У разі відсутності Authorization або відсутності ключового слова Bearer, ви отримаєте таку відповідь
- Status Code: 401 Unauthorized
- Body:
{
"code": 401,
"message": "JWT Token not found"
}
У разі зазначення неправильного Authorization ви отримаєте таку відповідь
- Status Code: 401 Unauthorized
- Body:
{
"code": 401,
"message": "Invalid JWT Token"
}
Оновлення простроченого token-у
У разі закінчення терміну дії token-а, ви отримаєте таку відповідь
- Status Code: 401 Unauthorized
- Body:
{
"code": 401,
"message": "Expired JWT Token"
}
Для поновлення значення простроченого token-а необхідно виконати запит POST запит на URI
https://order24-api.utr.ua/api/token/refresh
передавши в тілі запиту значення refresh_token, отриманий раніше:
{
"refresh_token": "2a3bb84af9a3...",
"browser_fingerprint": "some-unique-key-here"
}
Де:
refresh_token – рефреш токен отриманий раніше.
browser_fingerprint – підпис браузера, строка повинна бути аналогічна тій яка використовувалася при авторизації.
На відправлений запит буде отримана відповідь в json-форматі:
{
"token": "eyJ0eXAiOiJKV1Q...",
"expires_at": "2020-01-17 15:14:50",
"refresh_token": "2a3bb84af9a3..."
}
При відсутності або вказівці невірного значення refresh_token, ви отримаєте таку відповідь
- Status Code: 401 Unauthorized
- Body:
{
"code": 401,
"message": {
"status": "401 Unauthorized",
"message": "Bad credentials, please verify that your login/password are correctly set"
}
}