Moderation
Модерация — высокий риск. Бот действует с полномочиями выданного scope, но
не может тронуть owner/admin (403) и самого себя (400). Каждое
действие (kick/mute) пишется в audit-log.
Удалить чужое сообщение
См. Messages → Удалить сообщение: эндпоинт
DELETE …/messages/{id} для чужого сообщения требует scope moderation.messages.
Кикнуть участника
POST /api/bot/spaces/{space_id}/members/{user_id}/kick · scope moderation.kick
curl -X POST https://api.reasonspace.ru/api/bot/spaces/{space_id}/members/{user_id}/kick \
-H "Authorization: Bot bot_..."
204 No Content. 403, если цель — owner/admin; 400, если бот пытается
тронуть самого себя (detail: "bot cannot target itself").
Mute участника
POST /api/bot/spaces/{space_id}/members/{user_id}/mute · scope moderation.mute
curl -X POST https://api.reasonspace.ru/api/bot/spaces/{space_id}/members/{user_id}/mute \
-H "Authorization: Bot bot_..." \
-H "Content-Type: application/json" \
-d '{"duration_minutes": 10, "reason": "spam"}'
duration_minutesintegerdefault: 101..10080 (до 7 дней).
reasonstringОпционально, до 200 символов.
204 No Content.
Ban — пока не реализован
moderation.ban пока не реализован — нет banlist (повторный join не
заблокировать). Для удаления используйте kick; ban появится отдельно
(нужна таблица бан-листа).
Errors
| HTTP | Что значит |
|---|---|
| 400 | бот целится в самого себя (detail: "bot cannot target itself") |
| 403 | нет scope, либо цель — owner/admin |
| 404 | space или участник не найден |
| 422 | невалидный duration_minutes (вне 1..10080) — ошибка валидации тела запроса |
| 429 | rate limit |