Авторизация в API
Авторизация в API Radist.Online по API-ключу: как получить ключ в личном кабинете, заголовок X-Api-Key и права доступа scopes для разделов API.
Авторизация от имени интеграции (по API-ключу)
Такой способ авторизации позволяет получить доступ к конкретным разделам API в рамках одной компании, для которой был выдан ключ. Все действия, совершённые с использованием API-ключей, совершаются от имени владельца компании.
Методы учётной записи пользователя по API-ключу недоступны: создание компании и вступление в неё (POST /companies/, POST /companies/join, GET /companies/name/{code}) и методы /users/me/..., кроме GET /users/me и GET /users/me/profile. Запрос к ним, к другой компании или к разделу, на который у ключа нет права доступа, возвращает 403 с телом {"detail": "Forbidden"}.
Чтобы получить API-ключ, необходимо в личном кабинете перейти в “Настройки” -> “Интеграции” и выбрать в доступных интеграциях “API”.
Пример ключа: dRuxlQOV6lZUi1X90py_JqsVXuIkJ-UB6nHhb0H5T-Da0To50CnyqP8d_Xs-KCcSoFvdlKRbu0STWYOe8-A6Pw
Этот ключ нужно подставлять во все запросы к API в заголовок X-Api-Key.
Права доступа (scopes):
connections- Подключения. Даёт возможность просматривать список подключений, менять их настройки и создавать новые. Даёт доступ к изменению профиля WABA.integrations- Интеграции. Даёт возможность просматривать список интеграций и управлять их настройками.messaging- Сообщения. Даёт доступ на просмотр и создание чатов, на просмотр и отправку сообщений, на управление шаблонами сообщений, контактами и тегами.members- Сотрудники. Даёт доступ к списку сотрудников компании и списку её ролей.sales- Продажи. Даёт доступ к управлению товарами/каталогами/магазинами.webhooks- Вебхуки. Даёт доступ на создание, редактирование и удаление вебхуков.partners- Партнёрка. Даёт доступ к управлению настройками партнёра и его клиентов.subscriptions- Подписки. Даёт возможность управлять подписками и счетами на оплату.
OAuth2
Этот способ авторизации не доступен.
Частые вопросы
Как получить API-ключ Radist.Online?
В личном кабинете: «Настройки» → «Интеграции» → в доступных интеграциях выбрать «API». Ключ показывается при создании — сохраните его сразу. Подставлять его нужно в заголовок X-Api-Key во всех запросах.
Можно ли авторизоваться в API через OAuth2?
Для интеграций — нет, используйте API-ключ. В Swagger вы увидите схему OAuth2PasswordBearer, но это вход пользователя личного кабинета, а не способ подключить стороннюю интеграцию: сторонним системам выдаётся именно ключ.
Что такое scopes и какие они бывают?
Это права доступа ключа к разделам API. Их восемь: connections (подключения и профиль WABA), integrations (интеграции с CRM), messaging (чаты, сообщения, шаблоны, контакты, теги), members (сотрудники и роли), sales (товары, каталоги, магазины), webhooks, partners (партнёрка), subscriptions (подписки и счета).
Что значит 403 Forbidden в API Radist.Online?
Три причины: запрос в чужую компанию, запрос к разделу, на который у ключа нет scope, или вызов метода учётной записи пользователя — такие методы по API-ключу недоступны. Тело ответа будет {"detail": "Forbidden"}.
От чьего имени выполняются действия по ключу?
От имени владельца компании, для которой ключ выдан. Поэтому ключ стоит хранить как пароль: он даёт те же возможности в пределах выданных scopes.