Права участников проекта¶
При добавлении участника в проект (раздел Команда) можно задать роль (Редактор / Наблюдатель) и отдельные права — галочками. Ниже описано, что делает каждая галочка, что меняется при включении/выключении и где это проверяется (бэкенд и фронтенд).
Просмотр контента (can_view_content)¶
Что даёт: Доступ к просмотру контент-плана и списка постов (лента, календарь, черновики, запланированные и опубликованные посты).
- Включено: Участник видит все посты проекта и контент-план. Без этого права разделы с контентом для него недоступны или скрыты.
- Выключено: Участник не видит список постов: запрос GET списка постов возвращает 403.
Где проверяется: бэкенд — GET /api/posts (project_id); при отсутствии права — 403 «Недостаточно прав для просмотра контента».
Редактирование контента (can_edit_content)¶
Что даёт: Создание, редактирование и удаление постов и записей контент-плана.
- Включено: Участник может создавать новые посты, редактировать и удалять свои посты (черновики — полностью; запланированные/опубликованные в рамках правил продукта). Бэкенд проверяет это право при создании поста (POST), изменении (PUT) и удалении (DELETE).
- Выключено: Кнопки «Создать пост» (в меню и мобильная) скрыты. Запросы POST создания поста, PUT и DELETE поста возвращают 403.
Где проверяется: бэкенд — создание поста, обновление поста (PUT), удаление поста (DELETE); фронтенд — видимость кнопки «Создать пост» в сайдбаре (по project.my_permissions.can_edit_content).
Публикация (can_publish)¶
Что даёт: Публикация постов в соцсети (сейчас) и планирование времени публикации.
- Включено: Участник видит и может нажимать «Опубликовать» и «Запланировать». Запрос на публикацию (POST
/api/posts/publish) разрешён. - Выключено: В модалке поста участник не видит «Опубликовать» и «Запланировать», видит только «На согласование». Запрос на публикацию возвращает 403.
Где проверяется: бэкенд — эндпоинт публикации поста; фронтенд — модалка создания поста (кнопки по my_permissions.can_publish).
Использование ИИ (can_use_ai)¶
Что даёт: Доступ к функциям генерации текста и изображений с помощью ИИ при создании/редактировании постов.
- Включено: Участник может пользоваться кнопками/блоками «Сгенерировать текст», «Сгенерировать изображение» и т.п. в модальном окне поста и в других местах, где есть ИИ-генерация.
- Выключено: Кнопка «AI-Помощник» и меню ИИ в модалке поста скрыты; модалки генерации текста/изображений не показываются. Запросы генерации текста, изображения и т.п. возвращают 403.
Где проверяется: бэкенд — POST /api/posts/generate-post, POST /api/posts/generate-image (и при наличии project_id); фронтенд — кнопка «AI-Помощник», меню ИИ и модалки ИИ (по my_permissions.can_use_ai).
Шаблоны (can_manage_templates)¶
Что даёт: Создание и редактирование шаблонов постов проекта.
- Включено: Участник может заходить в раздел шаблонов, создавать и редактировать шаблоны.
- Выключено: GET/POST/PUT/DELETE шаблонов и генерация шаблонов возвращают 403. Участник не видит шаблоны проекта (или раздел скрыт по правам).
Где проверяется: бэкенд — GET/POST/PUT/DELETE /api/posts/templates*, генерация шаблонов; шаблоны отдаются по проекту (доступ есть у владельца и у участников с правом).
Аналитика (can_view_analytics)¶
Что даёт: Просмотр отчётов и аналитики по проекту (статистика, охваты и т.д.).
- Включено: Участник видит разделы «Аналитика», «Статистика» и аналогичные отчёты по проекту.
- Выключено: Пункт меню «Статистика» скрыт. Запросы к API аналитики возвращают 403.
Где проверяется: бэкенд — эндпоинты аналитики (например, каналы); фронтенд — видимость пункта «Статистика» в меню (по project.my_permissions.can_view_analytics).
Соц. аккаунты (can_manage_accounts)¶
Что даёт: Привязка и отвязка соц. аккаунтов (Telegram, VK, OK и т.д.) к проекту.
- Включено: Участник может добавлять и отключать аккаунты в настройках проекта/аккаунтов.
- Выключено: Пункт меню «Аккаунты» скрыт. Создание, обновление и удаление аккаунтов возвращают 403.
Где проверяется: бэкенд — создание/обновление/удаление аккаунтов (POST/PUT/DELETE /api/accounts*); фронтенд — видимость пункта «Аккаунты» в меню (по project.my_permissions.can_manage_accounts).
Управление командой (can_manage_team)¶
Что даёт: Приглашение и удаление участников проекта, смена ролей и прав в разделе «Команда».
- Включено: Участник видит раздел «Команда», может приглашать новых участников, удалять существующих и менять им роли/права (в рамках своей роли).
- Выключено: Пункт меню «Команда» скрыт. Добавление/удаление участников и изменение ролей/прав возвращают 403.
Где проверяется: бэкенд — добавление/удаление участников, PATCH роли/прав; фронтенд — видимость пункта «Команда» в меню (по project.my_permissions.can_manage_team).
Настройки проекта (can_manage_settings)¶
Что даёт: Изменение настроек проекта (название, часовой пояс, оформление, обои и т.д.).
- Включено: Участник может сохранять изменения в настройках проекта (вкладки «Основные», «Оформление» и т.п.).
- Выключено: Пункт меню «Настройки проекта» скрыт. PUT проекта (название, настройки, оформление) возвращает 403.
Где проверяется: бэкенд — PUT /api/projects/:id; фронтенд — видимость пункта «Настройки проекта» в меню (по project.my_permissions.can_manage_settings).
Роли по умолчанию¶
- Редактор: по умолчанию включены: просмотр контента, редактирование контента, публикация, ИИ, шаблоны, аналитика. Выключены: управление командой, настройки, соц. аккаунты.
- Наблюдатель: по умолчанию включены только просмотр контента и аналитика; остальные выключены.
Владелец проекта всегда имеет все права; для него галочки не используются.