Carrot quest имеет механизм контроля прав доступа. Каждый токен авторизации обладает несколькими ролями (permission scopes), которые определяют, к каким данным методам обратиться, используя этот токен.
На данный момент в открытом API используются роли:
Название | Описание | Методы |
---|---|---|
app-basic-read |
Базовые права на чтение (чтение настроек, сегментов, шаблонов, сохраненных ответов и т.д.) | |
app-basic-write |
Право записи базовых настроек | |
as-user |
Действие от имени пользователя на сайте POST /conversations/{id}/reply POST /conversations/{id}/markread POST /conversations/{id}/settyping |
|
conversations-read |
Диалоги, только чтение | |
conversations-write |
Диалоги, полный доступ (ответы, добавление тегов, назначения и т.д.) | |
messages-manual-send-one |
Отправка ручного сообщения нескольким пользователям или сегменту | |
user-read |
Информация о пользователе, только чтение | |
user-write |
Информация о пользователе, редактирование | |
users-list-active |
Список активных пользователей (страница LIVE) |
Метод | URL | Scope |
---|---|---|
GET | /apps/{id}/activeusers | Получить онлайн-пользователей на сайте |
GET | /apps/{id}/conversations | Получить диалоги приложения |
GET | /conversations/{id} | Получить конкретный диалог |
GET | /conversations/{id}/parts | Получить части (сообщения) диалога |
POST | /conversations/{id}/reply | Ответить в диалоге |
POST | /conversations/{id}/markread | Отметить диалог прочитанным (со стороны пользователя на сайте) |
POST | /conversations/{id}/settyping | Кто-то печатает ... |
POST | /conversations/{id}/assign | Назначить диалог администратору |
POST | /conversations/{id}/tag | Добавить тег диалога |
DELETE | /conversations/{id}/tag | Удалить тег диалога |
POST | /conversations/{id}/close | Закрыть диалог |
GET | /users/{id} | Получить данные о пользователе |
GET | /users/{id}/conversations | Получить диалоги с пользователем |
POST | /users/{id}/events | Записать событие |
POST | /users/{id}/props | Установить свойства пользователя |
POST | /users/{id}/setpresence | Отправить heartbeat сигнал |
POST | /users/{id}/sendmessage | Отправить ручное сообщение пользователю |
POST | /users/{id}/startconversation | Создать диалог, начатый пользователем на сайте |