API Authorization: различия между версиями
User (обсуждение | вклад) |
User (обсуждение | вклад) (→Методы) Метки: правка из мобильной версии, правка с мобильного устройства |
||
(не показано 14 промежуточных версий этого же участника) | |||
Строка 4: | Строка 4: | ||
''Данный документа описывает метод авторизации поставщика/дистрибьютора в системе Smart Satu.'' | ''Данный документа описывает метод авторизации поставщика/дистрибьютора в системе Smart Satu.'' | ||
− | Авторизация пользователя в систему Smart Satu происходит путем отправки POST-запроса с логином и паролем пользователя в JSON-теле по URL: https://smartsatu.com/api/ | + | Авторизация пользователя в систему Smart Satu происходит путем отправки POST-запроса с логином и паролем пользователя в JSON-теле по URL: https://food.smartsatu.com/api/users/login. Headers в данном запросе не могут быть пустыми и должны содержать: "content-type: application/json; charset=utf-8" и "country: ru". |
+ | |||
+ | Далее на стороне сервера происходит валидация данных пользователя. В случае корректности данных сервер выдает JSON-тело ответа, которое содержит данные пользователя с уникальным токеном авторизации, который в дальнейшем будет использоваться в каждом последующем запросе к системе Smart Satu. | ||
'''Версия''' | '''Версия''' | ||
Строка 16: | Строка 18: | ||
'''URI схема''' | '''URI схема''' | ||
− | ''Host : //smartsatu.com/api/user/ | + | ''Host : //login.smartsatu.com/api/user/login Schemes : HTTPS'' |
==Методы== | ==Методы== | ||
'''Авторизация пользователя''' | '''Авторизация пользователя''' | ||
− | POST /login | + | POST /api/user/login |
===Описание=== | ===Описание=== | ||
− | Метод для авторизации пользователя в системе Smart Satu | + | Метод для авторизации пользователя в системе Smart Satu. |
+ | |||
+ | Для авторизации необходимо воспользоваться выданным логином и паролем для системы заказов Smart Satu. В ответ на запрос авторизации приходит параметр - access_token_expiration_time, который в себе содержит unixtime время, когда токен станет недействителен. Порядок работы с токеном выглядит следующим образом: | ||
+ | # После получения токена необходимо сохранить время его истечения. | ||
+ | # Перед каждым запросом нужно проводить проверку, чтобы текущее время было меньше времени истечения жизни токена. | ||
+ | # В противном случае нужно отправить запрос на авторизацию и следовать пунктам №№ 1 и 2. | ||
+ | |||
===Параметры=== | ===Параметры=== | ||
{| class="wikitable" | {| class="wikitable" | ||
Строка 56: | Строка 64: | ||
'''Возвращаемые ресурсом типы MIME''' | '''Возвращаемые ресурсом типы MIME''' | ||
*application/json | *application/json | ||
+ | |||
==Определения== | ==Определения== | ||
===Login=== | ===Login=== | ||
Строка 65: | Строка 74: | ||
! style="font-weight:bold;" | Example | ! style="font-weight:bold;" | Example | ||
|- | |- | ||
− | | style="font-weight:bold;" | | + | | style="font-weight:bold;" | username |
| Логин | | Логин | ||
| string | | string | ||
Строка 74: | Строка 83: | ||
| string | | string | ||
| qwerty | | qwerty | ||
+ | |- | ||
+ | | style="font-weight:bold;" | direction | ||
+ | | Идентификатор сервера | ||
+ | | string | ||
+ | | food (Запросить у Smart Satu) | ||
|} | |} | ||
Строка 80: | Строка 94: | ||
{ | { | ||
"username" : "supplier", | "username" : "supplier", | ||
− | "password" : "qwerty" | + | "password" : "qwerty", |
+ | "direction" : "food" | ||
} | } | ||
Строка 159: | Строка 174: | ||
| Количество нолей после разделителя | | Количество нолей после разделителя | ||
| string | | string | ||
− | | | + | | 2 |
|- | |- | ||
| style="font-weight:bold;" | price_radix | | style="font-weight:bold;" | price_radix | ||
Строка 190: | Строка 205: | ||
| string | | string | ||
| 84 | | 84 | ||
+ | |- | ||
+ | | style="font-weight:bold;" | access_token_expiration_time | ||
+ | | Время действия токена доступа | ||
+ | | string | ||
+ | | 1579535438 | ||
+ | |- | ||
+ | | style="font-weight:bold;" | time_zone_offset | ||
+ | | Часовой пояс пользователя | ||
+ | | string | ||
+ | | 21600 | ||
|- | |- | ||
| style="font-weight:bold;" | country | | style="font-weight:bold;" | country | ||
Строка 224: | Строка 249: | ||
"is_replacement": false, | "is_replacement": false, | ||
"currency": "тг", | "currency": "тг", | ||
− | "price_decimals": | + | "price_decimals": 2, |
"price_radix": " ", | "price_radix": " ", | ||
"price_decimals_separator": ".", | "price_decimals_separator": ".", | ||
Строка 231: | Строка 256: | ||
"cashback_enabled": true, | "cashback_enabled": true, | ||
"company_id": 84, | "company_id": 84, | ||
+ | "access_token_expiration_time": 1579535438, | ||
+ | "time_zone_offset": 21600 | ||
"country": "kz", | "country": "kz", | ||
"direction": "Food", | "direction": "Food", | ||
"url_api": "https://food.smartsatu.com/api" | "url_api": "https://food.smartsatu.com/api" | ||
} | } |
Текущая версия на 02:51, 17 февраля 2024
API Авторизации
Содержание
Обзор
Данный документа описывает метод авторизации поставщика/дистрибьютора в системе Smart Satu.
Авторизация пользователя в систему Smart Satu происходит путем отправки POST-запроса с логином и паролем пользователя в JSON-теле по URL: https://food.smartsatu.com/api/users/login. Headers в данном запросе не могут быть пустыми и должны содержать: "content-type: application/json; charset=utf-8" и "country: ru".
Далее на стороне сервера происходит валидация данных пользователя. В случае корректности данных сервер выдает JSON-тело ответа, которое содержит данные пользователя с уникальным токеном авторизации, который в дальнейшем будет использоваться в каждом последующем запросе к системе Smart Satu.
Версия
Version: 1.0.0
Контактная информация
Contact: info@smartsatu.com
URI схема
Host : //login.smartsatu.com/api/user/login Schemes : HTTPS
Методы
Авторизация пользователя
POST /api/user/login
Описание
Метод для авторизации пользователя в системе Smart Satu.
Для авторизации необходимо воспользоваться выданным логином и паролем для системы заказов Smart Satu. В ответ на запрос авторизации приходит параметр - access_token_expiration_time, который в себе содержит unixtime время, когда токен станет недействителен. Порядок работы с токеном выглядит следующим образом:
- После получения токена необходимо сохранить время его истечения.
- Перед каждым запросом нужно проводить проверку, чтобы текущее время было меньше времени истечения жизни токена.
- В противном случае нужно отправить запрос на авторизацию и следовать пунктам №№ 1 и 2.
Параметры
Type | Name | Description | Schema |
---|---|---|---|
Body | body required | Авторизация пользователя | Login |
Ответы
HTTP Code | Description | Schema |
---|---|---|
200 | Ok | Login Response |
Принимаемые ресурсом типы MIME
- application/json
Возвращаемые ресурсом типы MIME
- application/json
Определения
Login
Для авторизации необходимо воспользоваться выданным логином и паролем для системы заказов Smart Satu.
Name | Description | Schema | Example |
---|---|---|---|
username | Логин | string | supplier |
password | Пароль | string | qwerty |
direction | Идентификатор сервера | string | food (Запросить у Smart Satu) |
Пример запроса:
{ "username" : "supplier", "password" : "qwerty", "direction" : "food" }
Login Response
В ответ на запрос придет массив данных зарегистрированного пользователя с уникальным токином авторизации - "access_token".
Name | Description | Schema | Example |
---|---|---|---|
id | Уникальный идентификатор | string | 132 |
Почта | string | daulet@smartsatu.kz | |
phone | Номер телефона | string | null |
username | Логин | string | supplier |
first_name | Имя | string | Иван |
last_name | Фамилия | string | Иванов |
middle_name | Отчество | string | Иванович |
access_token | Уникальный токен для входа | string | bkoUdBoAd1_jlIjwcMfttTNlH15y3Rnd |
role | Роль | string | 2 |
city_id | Город | string | 1 |
is_document | Лицензия | boolean | true |
is_replacement | Доступность обмена | boolean | false |
currency | Валюта | string | тг |
price_decimals | Количество нолей после разделителя | string | 2 |
price_radix | Разделитель разрядов | string | |
price_decimals_separator | Разделитель | string | . |
price_before_currency | Порядок показа валюты/цены | boolean | true |
price_pattern | Паттерн цены | string | ### ###.## тг |
cashback_enabled | Доступность кэшбэка | boolean | true |
company_id | Идентификатор компании | string | 84 |
access_token_expiration_time | Время действия токена доступа | string | 1579535438 |
time_zone_offset | Часовой пояс пользователя | string | 21600 |
country | Страна | string | kz |
direction | Стейджинг | string | Food |
url_api | URL | string | https://food.smartsatu.com/api |
Пример ответа:
{ "id": 132, "email": "daulet@smartsatu.kz", "phone": null, "username": "vendoralmaty", "first_name": "Иван", "last_name": "Иванов", "middle_name": "Иванович", "access_token": "bkoUdBoAd1_jlIjwcMfttTNlH15y3Rnd", "role": 2, "status": 1, "city_id": 1, "is_document": true, "is_replacement": false, "currency": "тг", "price_decimals": 2, "price_radix": " ", "price_decimals_separator": ".", "price_before_currency": true, "price_pattern": "### ###.## тг", "cashback_enabled": true, "company_id": 84, "access_token_expiration_time": 1579535438, "time_zone_offset": 21600 "country": "kz", "direction": "Food", "url_api": "https://food.smartsatu.com/api" }