Перейти к содержимому

Гильдии

Гильдия (в UI — «сервер») — коллекция пользователей, каналов и ролей. Бот всегда живёт в контексте конкретной гильдии: команды, XP, модерация — всё привязано к guild_id.

Поля, которые бот реально использует:

{
"id": "1424883034267582464",
"name": "Test server",
"icon": null,
"banner": null,
"owner_id": "974...",
"roles": [ ... ],
"emojis": [ ... ],
"stickers": [ ... ],
"features": [],
"system_channel_id": "...",
"member_count": 3,
"channels": [ ... ]
}
ПолеТипОписание
idsnowflakeID гильдии
namestringНазвание (2-100 символов)
iconstring | nullHash иконки. URL: https://floodilka.com/icons/<guild_id>/<icon>.png
bannerstring | nullHash баннера
owner_idsnowflakeВладелец (не может быть ботом)
rolesarray of RoleВсе роли гильдии
emojisarrayКастомные эмоджи гильдии
stickersarrayСтикеры гильдии
featuresarray of stringВключённые фичи: COMMUNITY, VERIFIED, PARTNERED и т.п.
system_channel_idsnowflake | nullКанал для системных сообщений (присоединения, левел-апы)
member_countintegerСколько участников
channelsarray of ChannelВсе каналы (в GUILD_CREATE, но не в REST-ответах)
{
"id": "1424...",
"name": "Модератор",
"color": 3447003,
"hoist": true,
"position": 5,
"permissions": "268435456",
"managed": false,
"mentionable": true
}
ПолеТипОписание
idsnowflakeID роли
namestringИмя
colorintegerRGB-цвет, 0 — без цвета
hoistbooleanОтделять от остальных в списке участников
positionintegerПозиция в иерархии. Больше = выше
permissionsstringБитовая маска прав как строка (см. Права доступа)
managedbooleanУправляется интеграцией — нельзя редактировать
mentionablebooleanМожно упоминать через @
{
"user": { ... },
"nick": "Глав мод",
"roles": ["1424...", "1424..."],
"joined_at": "2026-04-01T12:00:00.000Z",
"premium_since": null,
"deaf": false,
"mute": false,
"pending": false,
"communication_disabled_until": null
}
  • user — вложенный объект User
  • nick — ник в конкретной гильдии (null — используется user.global_name или user.username)
  • roles — массив ID ролей (не содержит @everyone)
  • communication_disabled_until — таймаут (ISO-время до которого участник не может писать; null — не в таймауте)
  • pending — участник ещё не прошёл member-screening

Полный объект гильдии. Тяжёлый — не вызывайте в горячем пути.

Список участников с пагинацией:

  • limit — 1-1000 (по умолчанию 1)
  • after — snowflake последнего полученного участника

Для большинства ботов проще полагаться на GUILD_CREATE + GUILD_MEMBER_ADD/UPDATE/REMOVE события из Gateway, чем дёргать этот эндпоинт.

Конкретный участник.

Изменить участника:

  • ник (MANAGE_NICKNAMES)
  • роли через поле roles (MANAGE_ROLES)
  • mute / deaf (MUTE_MEMBERS / DEAFEN_MEMBERS)
  • communication_disabled_until — timeout (MODERATE_MEMBERS)
  • channel_id — переместить в голосовой канал (MOVE_MEMBERS)

Пример timeout на 10 минут:

Окно терминала
curl -X PATCH https://floodilka.com/api/v1/guilds/$GID/members/$UID \
-H "Authorization: Bot $TOKEN" \
-H "Content-Type: application/json" \
-d '{"communication_disabled_until": "2026-04-23T23:00:00.000Z"}'

Добавить / убрать одну роль без пересылки всего массива ролей. Требует MANAGE_ROLES + иерархию.

Кик. Требует KICK_MEMBERS.

Бан. Требует BAN_MEMBERS.

{ "delete_message_days": 7 }

delete_message_days (0-7) — удалить все сообщения забаненного за последние N дней.

Список банов / снятие бана. Требуют BAN_MEMBERS.

CRUD для ролей. Требует MANAGE_ROLES.

Журнал аудита — подробнее.