API Authorization: различия между версиями

Материал из SmartSatu Knowledge Base
Перейти к навигации Перейти к поиску
Метки: правка из мобильной версии, правка с мобильного устройства
 
(не показано 12 промежуточных версий этого же участника)
Строка 4: Строка 4:
 
''Данный документа описывает метод авторизации поставщика/дистрибьютора в системе Smart Satu.''
 
''Данный документа описывает метод авторизации поставщика/дистрибьютора в системе Smart Satu.''
  
Авторизация пользователя в систему Smart Satu происходит путем отправки POST-запроса с логином и паролем пользователя в JSON-теле по URL: https://smartsatu.com/api/user/login. Headers в данном запросе не обрабатываются и могут быть пустыми. Далее на стороне сервера происходит валидация данных пользователя. В случае корректности данных сервер выдает JSON-тело ответа, которое содержит данные пользователя с уникальным токеном авторизации, который в дальнейшем будет использоваться в каждом последующем запросе к системе 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.
  
 
'''Версия'''
 
'''Версия'''
Строка 16: Строка 18:
 
'''URI схема'''
 
'''URI схема'''
  
''Host : //smartsatu.com/api/user/  Schemes : HTTPS''
+
''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;" | login
+
| 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"
 
  }
 
  }
  

Текущая версия на 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

Контактная информация

Contactinfo@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. Перед каждым запросом нужно проводить проверку, чтобы текущее время было меньше времени истечения жизни токена.
  3. В противном случае нужно отправить запрос на авторизацию и следовать пунктам №№ 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
email Почта 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"
}