Авторизация в Gigma
Авторизация связывает клиента с его профилем, заказами и подписками в Gigma. Отдельная регистрация и постоянный пароль не нужны: пользователь получает одноразовый код, подтверждает звонок или передаёт подписанный контакт из приложения в MAX. В результате Gigma выдаёт Bearer клиента.
Для первого подключения подготовьте приложение, выберите способ входа и сохраните полученный Bearer. После этого отправляйте его во всех запросах к личным данным клиента.
Выберите сценарий
| Задача | Что использовать | Результат |
|---|---|---|
| Вход на сайте или в мобильном приложении | одноразовый код на телефон или email | Bearer клиента и его профиль |
| Вход без ввода кода | callback-звонок | Bearer после подтверждённого звонка |
| Вход из приложения в MAX | подписанный контакт провайдера | Bearer без отдельного кода |
| Доступ к закрытым функциям вашего продукта | собственный backend или BFF | локальная сессия и серверная проверка доступа |
| Работа сотрудника с ERP API | отдельный вход сотрудника | Bearer сотрудника с его правами |
| Доступ программного агента | Agent Token и разрешённые методы | серверный доступ агента в пределах выданных прав |
Все способы входа клиента заканчиваются одинаково: приложение получает Bearer и использует его для запросов от имени клиента.
Как проходит вход клиента
- Подготовьте
Applicationи получите App Token. - Запросите подтверждение выбранным способом.
- Обменяйте подтверждение на Bearer клиента.
- Сохраните Bearer целиком, включая разделитель
|. - Передавайте App Token и Bearer в личных запросах.
App Token отвечает на вопрос «какое приложение делает запрос», а Bearer — «какой клиент вошёл». Эти токены не заменяют друг друга.
Быстрый старт: вход по коду
Шаг 1. Отправьте код
POST /api/counterparty/send_password HTTP/1.1
Host: api.gigma.ru
Token: <application_token>
Content-Type: application/json
{ "phone": "79999999990" } В поле phone можно передать номер телефона в формате 7XXXXXXXXXX или email.
Шаг 2. Получите Bearer
POST /api/counterparty/login HTTP/1.1
Host: api.gigma.ru
Token: <application_token>
Content-Type: application/json
{ "phone": "79999999990", "password": "1111", "device": "storefront-web" } В ответе используйте counterparty.access_token.value. Полные параметры, ответы и ошибки описаны на странице «Вход клиента».
Шаг 3. Отправьте личный запрос
GET /api/counterparty/orders HTTP/1.1
Host: api.gigma.ru
Token: <application_token>
Authorization: Bearer <counterparty_token>
Accept: application/json Публичные данные приложения — каталог, страницы, блоки и тарифы — доступны по App Token. Профиль, заказы, избранное и подписки требуют Bearer клиента.
Готово: клиент вошёл, а приложение может работать с его личными данными.
Где хранить Bearer
Для продукта с собственными закрытыми данными используйте backend или BFF по умолчанию. Bearer клиента остаётся на сервере, а браузер получает локальную HttpOnly cookie.
При прямой мобильной интеграции храните Bearer в защищённом хранилище операционной системы. В браузерной интеграции не помещайте Bearer в постоянное хранилище (localStorage, IndexedDB и аналогичные механизмы). Не добавляйте токен в URL, аналитику и обычные логи.
Рекомендуемая схема:
Браузер
│ локальная HttpOnly cookie
▼
Backend / BFF продукта
│ App Token + Bearer клиента
▼
Gigma API Backend хранит Bearer, проверяет заказ или подписку и только после этого открывает закрытые функции. Браузеру достаточно локальной cookie вашего продукта. Полная схема находится в разделе «Интеграция через backend».
Токены и их назначение
| Данные доступа | Для чего нужны | Где использовать |
|---|---|---|
| App Token | выбирает Application и его настройки | в запросах сайта, приложения и backend к Gigma |
| Bearer клиента | подтверждает личность клиента | в личных методах клиента |
| Bearer сотрудника | подтверждает сотрудника и его права | только в интерфейсе платформы или доверенном backend |
client_id и client_secret | проверяют Bearer через introspect | только на backend |
| Agent Token | подтверждает программного агента | только на сервере агента |
App Token может быть виден в браузере и сам по себе не подтверждает личность, оплату или право доступа. Bearer сотрудника и client_secret — серверные секреты.
Что подключить дальше
- Подготовка приложения — создать
Application, получить App Token и проверить первый запрос. - Вход клиента — код, приложение в MAX, callback-звонок и выход.
- Интеграция через backend — локальная сессия и проверка платного доступа.
- Сессии клиента — срок жизни Bearer, устройства и причины завершения сессии.
- Вход сотрудника — отдельный сценарий для ERP API.
- Получение доступа агентом — серверная авторизация программного агента.