Авторизация
Отправка звонка-сброса с паролем
- Метод
- POST
- URL
https://api.gigma.ru/api/counterparty/send_password- Авторизация
- Не требуется
- Headers
Authorization: Bearer {token}
Параметры запроса
phone— номер телефона контрагента
Пример запроса
{
"phone": "79999999990"
} Ответ
При успешном действии возвращается HTTP код 200.
{
"message": "Password successfully send"
} Описание полей ответа
message— информационное сообщение об успешном выполнении операции
Авторизация
- Метод
- POST
- URL
https://api.gigma.ru/api/counterparty/login- Авторизация
- Не требуется
- Headers
Authorization: Bearer {token}
Параметры запроса
phone— номер телефона контрагентаpassword— последние 4 цифры номера телефона, с которого был совершён звонок-сброс (в примере ниже — условный1111)
Пример запроса
{
"phone": "79999999990",
"password": "1111"
} Ответ
При успешном действии возвращается HTTP код 200.
{
"counterparty": {
"id": 1,
"type": {
"id": 2,
"name": "Розница",
"created_at": "2024-03-23T10:27:06.000000Z"
},
"manager": {
"id": 1,
"first_name": "Артём",
"last_name": "Полищук",
"middle_name": "Николаевич",
"name": "Полищук Артём"
},
"avatar": null,
"first_name": "Алексей",
"last_name": "Петров",
"middle_name": "Викторович",
"birthday": "1980-04-02",
"address": "630073, Новосибирская область, город Новосибирск, Новогодняя ул., д. 20/1, кв. 26",
"phone_1": "79999999990",
"phone_2": "78888888888",
"email": "support@itecho.ru",
"created_at": "2024-03-22T14:01:37.000000Z",
"updated_at": "2024-03-23T10:48:33.000000Z",
"access_token": {
"value": "2|k8InFzsVIDB3sumslYax1hWJcZDglKptEgIWzxWo21bdb3d6"
}
}
} Описание полей ответа
id— первичный ключtype— объект с информацией о типе контрагентаid— идентификатор типаname— название типаcreated_at— дата создания
manager— объект с информацией о менеджереid— идентификатор менеджераfirst_name— имя менеджераlast_name— фамилия менеджераmiddle_name— отчество менеджераname— полное имя менеджера
avatar— аватар пользователяfirst_name— имя контрагентаlast_name— фамилия контрагентаmiddle_name— отчество контрагентаbirthday— дата рожденияaddress— адресphone_1— основной номер телефонаphone_2— дополнительный номер телефонаemail— электронная почтаcreated_at— дата созданияupdated_at— дата последнего обновленияaccess_token.value— Bearer token для авторизации в системе
Авторизация miniapp по подписанному контакту
- Метод
- POST
- URL
https://api.gigma.ru/api/counterparty/miniapps/{provider}/contact_auth- Авторизация
- App Token
- Headers
Token: {application_token}
Используется, когда miniapp уже получил у провайдера подтверждённый контакт клиента и должен получить обычный counterparty.access_token.value для E-Commerce API.
Канонический маршрут находится в counterparty-контуре. Не используйте публичные alias URL вида /api/miniapps/.../auth/....
Параметры пути
provider— провайдер miniapp. Сейчас поддерживаетсяmax.
Параметры запроса
phone(string, обязательно) — телефон из подписанного contact payload. Можно передать в формате+79139277802, в базе он сохранится как79139277802.auth_date(integer, обязательно) — Unix timestamp подписи.hash(string, обязательно) — подпись contact payload, 64 hex-символа.init_data(string, обязательно) — подписанные init data miniapp.device(string, необязательно) — имя устройства для Sanctum token, напримерmax-miniapp.
Пример запроса
{
"phone": "+79139277802",
"auth_date": 1780000000,
"hash": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
"init_data": "auth_date=1780000000&user=%7B%22id%22%3A123456%7D&hash=...",
"device": "max-miniapp"
} Ответ
При успешном действии возвращается HTTP код 200 с объектом контрагента и access_token (аналогично POST /api/counterparty/login).
{
"counterparty": {
"id": 1,
"phone_1": "79139277802",
"access_token": {
"value": "2|k8InFzsVIDB3sumslYax1hWJcZDglKptEgIWzxWo21bdb3d6"
}
}
} Возможные ошибки
401 Application token is missing— не передан заголовокToken.401 miniapp_contact_auth_invalid— подпись,init_dataили срок действия не прошли проверку.422 miniapp_contact_auth_not_supported— provider не поддерживает безопасный signed contact login, например Telegram без proof владения телефоном.503 miniapp_contact_auth_not_configured— на backend не настроен token провайдера.
Выход контрагента из системы
- Метод
- POST
- URL
https://api.gigma.ru/api/counterparty/logout- Авторизация
- Bearer token
- Headers
Authorization: Bearer {token}
Параметры запроса
from_all_devices— признак выхода со всех устройств (boolean)
Пример запроса
{
"from_all_devices": true
} Ответ
При успешном действии возвращается HTTP код 200.
{
"message": "User successfully logout from all devices"
}Инициализация авторизации по callback (звонок)
- Метод
- POST
- URL
https://api.gigma.ru/api/counterparty/callback_auth/init- Авторизация
- Не требуется
- Headers
Authorization: Bearer {token}
Запускает звонок на номер телефона контрагента для авторизации по callback.
Параметры запроса
phone(string, обязательно) — номер телефона контрагента
Ответ
При успешном действии возвращается HTTP код 200 с информацией о запущенном звонке.
Проверка статуса callback-авторизации
- Метод
- POST
- URL
https://api.gigma.ru/api/counterparty/callback_auth/status- Авторизация
- Не требуется
- Headers
Authorization: Bearer {token}
Проверяет, завершён ли callback-звонок, и возвращает access_token если авторизация прошла успешно.
Параметры запроса
phone(string, обязательно) — номер телефона контрагента
Ответ
При успешном действии возвращается HTTP код 200 с объектом контрагента и access_token (аналогично POST /api/counterparty/login).