Аутентификация и авторизация (API версия 2)/uk: различия между версиями
(Новая страница: «з якого необхідно витягти поля<br> '''''token''''' – токен, буде потрібно для авторизації при вик...») |
|||
Строка 52: | Строка 52: | ||
У разі зазначення неправильного імені користувача або пароля, ви отримаєте таку відповідь | У разі зазначення неправильного імені користувача або пароля, ви отримаєте таку відповідь | ||
* Status Code: | * Status Code: 412 Precondition Failed | ||
* Body: | * Body: | ||
<pre> | <pre> | ||
{ | { | ||
"code": | "code": 412, | ||
"message": | "message": "Некоректні дані користувача. Перевірте коректність введених даних і спробуйте ще раз." | ||
} | } | ||
</pre> | </pre> |
Текущая версия на 07:18, 6 февраля 2024
Для отримання доступу до 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" } }