Pular para o conteúdo
Decoding Chat API

Membros da guilda

Um membro da guilda é uma conta que entrou em uma guilda. A associação possui um apelido, avatar, conjunto de cargos e estado de moderação que se aplicam apenas àquela guilda. Consultas indexadas de membros vivem em Pesquisa de membros da guilda, e banimentos em Moderação da guilda.

Uma guilda desconhecida retorna 404 UNKNOWN_GUILD, um não-membro recebe 403 MISSING_PERMISSIONS, e uma guilda marcada como indisponível retorna 403 MISSING_ACCESS. Transferir propriedade da guilda também retorna 403 ACCESS_DENIED quando a guilda existe no armazenamento mas o Gateway relata como não encontrada.

As operações de modificação retornam a associação resultante, Transferir propriedade da guilda retorna a guilda atualizada, e todas as outras mutações retornam 204 com um corpo vazio.

Todo campo exceto user descreve o estado que pertence à associação.

CampoTipoDescrição
userobjeto usuário parcialA conta à qual a associação pertence
nick?stringO apelido que a conta usa nesta guilda, ou null quando nenhum está definido
avatar1?stringO hash da imagem do avatar específico da guilda, ou null quando nenhum está definido
banner1?stringO hash da imagem do banner específico da guilda, ou null quando nenhum está definido
accent_color?integerA cor de destaque do perfil da guilda como RGB de 24 bits empacotado, ou null quando nenhuma está definida
roles2array[snowflake]Os IDs dos cargos atribuídos à associação (máx 250)
joined_attimestamp ISO8601O momento em que a conta se tornou membro desta guilda
mute3booleanSe um moderador mutou o membro na voz
deaf4booleanSe um moderador ensurdeceu o membro na voz
communication_disabled_until5?timestamp ISO8601O momento em que o timeout de comunicação expira, ou null quando o membro não está em timeout
profile_flags?6integerAs flags de perfil de membro da guilda definidas na associação
mention_flags?6integerA preferência de menção de resposta que se aplica apenas dentro desta guilda

1 Um hash animado tem o prefixo a_. Ambos são relatados como null enquanto a associação estiver marcada como higienizada de premium

2 O cargo everyone nunca está presente

3 Verdadeiro enquanto um mute de moderador estiver armazenado na associação e também enquanto um timeout de comunicação estiver ativo

4 Verdadeiro enquanto um ensurdecimento de moderador estiver armazenado na associação. Um timeout de comunicação não afeta isso

5 Um timestamp no passado é retido até que uma atualização posterior forneça communication_disabled_until

6 Omitido enquanto o valor armazenado for 0, então a ausência significa que nenhuma flag está definida e, para mention_flags, que a preferência em nível de conta se aplica

O Decoding Chat marca uma associação como higienizada de premium depois que sua conta perde o premium, quando a associação tem um avatar de guilda, banner, biografia ou cor de destaque. Uma associação higienizada de premium relata avatar e banner como null.

Um cliente compara communication_disabled_until com a hora atual, porque um valor não-null pode nomear um momento que já passou. Um timeout de comunicação não reduz a máscara de permissão computada do membro.

{
"user": {"id": "1489002177550843906", "username": "ada", "discriminator": "0042"},
"nick": "Ada L.",
"avatar": null,
"banner": null,
"accent_color": 3447003,
"roles": ["1489002177550843910"],
"joined_at": "2026-08-14T09:12:44.000Z",
"mute": false,
"deaf": false,
"communication_disabled_until": null
}

Um recurso de perfil de guilda tem estes estados. Uma associação sem flag e sem hash armazenado herda o recurso em nível de conta. Um hash armazenado define um recurso específico da guilda. Cada flag abaixo bloqueia a herança, para que o cliente mostre o recurso padrão.

ValorNomeDescrição
1 << 0AVATAR_UNSETO avatar da guilda está explicitamente não definido, então o avatar da conta não é herdado
1 << 1BANNER_UNSETO banner da guilda está explicitamente não definido, então o banner da conta não é herdado

O campo é validado como um inteiro entre 0 e 2147483647, então um bit não definido abaixo do bit 31 é armazenado e retornado sem alterações. O bit 31, e qualquer valor acima de 2147483647, são rejeitados.

O corpo da requisição compartilhado por Modificar membro atual da guilda e Modificar membro da guilda. Um campo omitido preserva seu valor atual.

CampoTipoDescrição
nick?1?stringO apelido a ser definido nesta guilda (1-32 caracteres)
roles?2array[snowflake]O conjunto completo de cargos de substituição (máx 250)
avatar?3?string base64Os dados da imagem do avatar da guilda, ou null para limpá-lo
banner?3?string base64Os dados da imagem do banner da guilda, ou null para limpá-lo
bio??stringA biografia do perfil da guilda (1-320 caracteres)
pronouns??stringOs pronomes do perfil da guilda (1-40 caracteres)
accent_color??integerA cor de destaque do perfil da guilda como RGB de 24 bits empacotado (0-16777215)
profile_flags??integerAs flags de perfil de membro da guilda para armazenar
mention_flags?4?integerA preferência de menção de resposta para aplicar nesta guilda
mute?5booleanSe o membro é mutado por um moderador na voz
deaf?5booleanSe o membro é ensurdecido por um moderador na voz
communication_disabled_until?6?timestamp ISO8601O tempo em que o timeout de comunicação expira
timeout_reason?7?stringO motivo registrado junto ao timeout (1-512 caracteres)
channel_id?8?snowflakeO canal de voz para o qual mover o membro, ou null para desconectá-lo
connection_id?8?stringA conexão de voz única a ser movida, assumindo como padrão todas as conexões (1-32 caracteres)

1 Uma string em branco é normalizada para null antes da verificação de comprimento, portanto um valor vazio limpa o apelido

2 Um ID de cargo ausente do array fornecido é removido do membro

3 Dados de imagem Base64 com um prefixo opcional de data URL, que não é contado

4 Um dos valores de enum de preferência de menção de resposta, onde 0 restaura a preferência em nível de conta

5 Armazenado na associação, portanto se aplica independentemente de o membro manter ou não uma conexão de voz

6 Uma data e hora ISO 8601. Uma string em branco é normalizada para null

7 Cortado (trimmed) e usado como o motivo de log de auditoria da entrada de atualização do membro quando a solicitação não envia nenhum cabeçalho X-Audit-Log-Reason

8 channel_id move ou desconecta, e connection_id seleciona uma das conexões de voz do membro

Uma entrada roles que não resolve para um cargo existente da guilda é descartada da substituição, então uma solicitação nomeando apenas cargos desconhecidos limpa o conjunto de cargos do membro.

Uma carga útil base64 de avatar ou banner mais longa que 13981016 caracteres retorna BASE64_LENGTH_INVALID, e uma malformada retorna INVALID_BASE64_FORMAT. O Decoding Chat então verifica os bytes decodificados em relação ao limite avatar_max_size configurado na instância, cujo valor de estoque é 10485760. O mesmo limite se aplica a ambos os campos. A imagem decodificada também deve estar em um formato que o campo aceita, e um AVIF animado é rejeitado. As dimensões dos pixels não são impostas. Um valor muito grande retorna IMAGE_SIZE_EXCEEDS_LIMIT, e um cujo formato ou animação não é permitido retorna INVALID_IMAGE_FORMAT.

Null e qualquer communication_disabled_until que não esteja no futuro limpam o timeout. Um tempo mais de 365,25 dias à frente retorna TIMEOUT_CANNOT_EXCEED_365_DAYS, e um valor que passa no esquema mas não é um instante real retorna INVALID_TIMEOUT_VALUE. timeout_reason não tem efeito a menos que communication_disabled_until também seja fornecido.

Omitir connection_id aplica a movimentação ou a desconexão a todas as conexões de voz que o membro mantém na guilda. Um connection_id que não é uma das conexões do próprio membro retorna 400 USER_NOT_IN_VOICE.

GET/v1/guilds/{guild_id}/membersBot

Retorna uma página de objetos de membro da guilda em ordem crescente de ID de usuário. Requer ser membro da guilda e nenhuma permissão.

Esta rota não verifica nenhum bit de permissão, incluindo VIEW_CHANNEL_MEMBERS.

CampoTipoDescrição
guild_idsnowflakeO ID da guilda
CampoTipoDescrição
limit?1integerO número máximo de membros a retornar (1-1000, padrão 1)
after?2snowflakeO limite inferior no ID do usuário, retornando apenas membros estritamente maiores que este valor

1 Um chamador que deseja um lote declara limit explicitamente, pois o padrão retorna um membro

2 O cursor é exclusivo, e não há forma decrescente ou before

StatusCorpoCondição
200array[objeto membro da guilda]Os membros foram retornados
403resposta de erroA guilda está indisponível, ou o chamador não é um membro
404resposta de erroA guilda não existe e a solicitação retorna UNKNOWN_GUILD

40 solicitações por 10 segundos para cada usuário autenticado e ID de guilda, no bucket guild:members::guild_id.

GET/v1/guilds/{guild_id}/members/@meBot

Retorna o objeto de membro da guilda da própria conta autenticada. Requer ser membro da guilda e nenhuma permissão.

CampoTipoDescrição
guild_idsnowflakeO ID da guilda
StatusCorpoCondição
200objeto membro da guildaA associação foi retornada
403resposta de erroA guilda está indisponível, ou o chamador não é um membro
4041resposta de erroA guilda não existe, ou o registro de associação está ausente

1 Uma guilda ausente retorna UNKNOWN_GUILD e um registro de associação ausente retorna UNKNOWN_MEMBER

40 solicitações por 10 segundos para cada usuário autenticado e ID de guilda, no bucket compartilhado guild:members::guild_id.

GET/v1/guilds/{guild_id}/members/{user_id}Bot

Retorna o objeto de membro da guilda de um membro. Requer ser membro da guilda e nenhuma permissão.

CampoTipoDescrição
guild_idsnowflakeO ID da guilda
user_idsnowflakeO ID do membro alvo
StatusCorpoCondição
200objeto membro da guildaA associação foi retornada
403resposta de erroA guilda está indisponível, ou o chamador não é um membro
404resposta de erroA guilda não existe, retornando UNKNOWN_GUILD, ou o alvo não é um membro, retornando UNKNOWN_MEMBER

40 solicitações por 10 segundos para cada usuário autenticado e ID de guilda, no bucket compartilhado guild:members::guild_id.

PATCH/v1/guilds/{guild_id}/members/@meBotAudit reason

Modifica a associação da própria conta autenticada e retorna o objeto de membro da guilda resultante. Requer associação à guilda. Emite um evento de Gateway Guild Member Update.

  • Alterar o apelido requer CHANGE_NICKNAME.
  • Fornecer channel_id requer MOVE_MEMBERS, mesmo para a associação do próprio chamador.
  • Fornecer mute requer MUTE_MEMBERS, e deaf requer DEAFEN_MEMBERS.
  • Fornecer nick, avatar, banner, bio, pronouns, accent_color ou profile_flags requer um endereço de e-mail verificado, e uma conta bot está isenta. Uma conta não verificada é rejeitada com 403 PROFILE_EMAIL_VERIFICATION_REQUIRED.

Um chamador sem CHANGE_NICKNAME não falha na solicitação. O Decoding Chat descarta a alteração de apelido e aplica todos os outros campos fornecidos. Um membro que possui a permissão, mas está em timeout, é rejeitado com 403 COMMUNICATION_DISABLED.

Um nick, bio ou pronouns bloqueado retorna 403 CONTENT_BLOCKED.

Avatar da guilda, banner, biografia e cor de destaque também exigem o limite feature_per_guild_profiles configurado na instância para a conta que faz a chamada. O Decoding Chat descarta qualquer um desses campos fornecidos sem essa capacidade e aplica todos os outros campos. Pronomes, profile_flags e mention_flags não exigem isso.

Um destino channel_id deve ser um canal de voz da guilda, e o chamador deve possuir tanto VIEW_CHANNEL quanto CONNECT lá. Fornecer channel_id para um membro sem conexão de voz ao vivo retorna 400 USER_NOT_IN_VOICE. Fornecer mute ou deaf para esse membro é bem-sucedido, armazena as flags e não emite nenhum Despacho de voz.

O Decoding Chat rejeita um communication_disabled_until fornecido com 403 MISSING_PERMISSIONS antes de qualquer outra verificação de timeout. Modificar membro da guilda endereçado ao próprio ID de usuário do chamador é rejeitado da mesma forma.

Avatar e banner consomem seu limite sempre que o campo está presente. Biografia, pronomes e cor de destaque consomem o deles apenas quando o valor fornecido difere do armazenado. O código do campo é AVATAR_CHANGED_TOO_MANY_TIMES, BANNER_CHANGED_TOO_MANY_TIMES, BIO_CHANGED_TOO_MANY_TIMES, PRONOUNS_CHANGED_TOO_MANY_TIMES ou ACCENT_COLOR_CHANGED_TOO_MANY_TIMES.

CampoTipoDescrição
guild_idsnowflakeO ID da guilda

O corpo é um objeto de atualização de membro da guilda sem roles. Um campo roles fornecido é descartado sem erro, então a atribuição de cargos ocorre através de Modificar membro da guilda.

StatusCorpoCondição
200objeto membro da guildaA associação foi processada
400resposta de erroDados de imagem ou um limite de alteração de perfil rejeita a solicitação
400resposta de errochannel_id foi fornecido para um membro sem conexão de voz ao vivo
400resposta de erroO canal de destino não existe ou não é um canal de voz
403resposta de erroA guilda está indisponível, o chamador não é um membro ou o endereço de e-mail não foi verificado
403resposta de erroConteúdo bloqueado foi fornecido, o chamador está em timeout ou uma permissão de voz necessária está ausente
403resposta de errocommunication_disabled_until foi fornecido
404resposta de erroA guilda não existe, ou o registro da associação ou conta está ausente

A operação atualiza a associação, registra uma entrada de auditoria MEMBER_UPDATE e emite Guild Member Update.

As próprias sessões do alvo sempre recebem o Despacho. Outras sessões da guilda o recebem sujeito à filtragem de eventos. O Despacho é produzido mesmo quando a associação resultante não se altera, e uma atualização que não muda nada não registra nenhuma entrada de auditoria.

Fornecer channel_id move ou desconecta toda conexão de voz que o membro possui, ou apenas aquela nomeada por connection_id. Ele registra uma entrada de auditoria MEMBER_MOVE ou MEMBER_DISCONNECT para toda a solicitação, independentemente de quantas conexões ele tocou. Um movimento para o canal que o membro já ocupa não registra nenhuma entrada. Ele emite Voice State Update para sessões que podem visualizar o canal afetado. Fornecer mute ou deaf atualiza a associação, não registra entrada de auditoria separada e emite o mesmo Despacho de voz uma vez para cada conexão ao vivo.

O Decoding Chat emite Guild Audit Log Entry Create para cada entrada de auditoria. Uma solicitação que falha após enviar um novo avatar ou banner deixa o recurso anterior no lugar.

20 solicitações por 10 segundos para cada usuário autenticado e ID de guilda, no bucket guild:member:update::guild_id.

PATCH/v1/guilds/{guild_id}/members/{user_id}BotAudit reason

Modifica o estado da guilda de outro membro e retorna o objeto de membro da guilda resultante. Requer associação à guilda. Emite um evento de Gateway Guild Member Update.

  • Alterar o apelido de outro membro requer MANAGE_NICKNAMES e autoridade de hierarquia de cargos sobre o alvo.
  • Substituir roles requer MANAGE_ROLES e autoridade de hierarquia sobre todo cargo que a substituição adiciona ou remove, e o dono da guilda ignora ambas as verificações.
  • Aplicar communication_disabled_until requer MODERATE_MEMBERS e autoridade de hierarquia, e o alvo não deve possuir ADMINISTRATOR.
  • Aplicar mute requer MUTE_MEMBERS, aplicar deaf requer DEAFEN_MEMBERS, e ambos exigem autoridade de hierarquia sobre o alvo.
  • Mover o alvo requer MOVE_MEMBERS e autoridade de hierarquia, além de VIEW_CHANNEL e CONNECT para o chamador no destino.

Um nick bloqueado retorna 403 CONTENT_BLOCKED.

A autoridade de hierarquia sobre o alvo não é verificada para roles, então um chamador que possui nível superior a todos os cargos afetados pode substituir o conjunto de cargos de um membro que possui nível superior a ele. O cargo everyone no array é rejeitado com o código de campo INVALID_ROLE_ID.

O Decoding Chat nunca verifica as próprias permissões do alvo no destino, de modo que um membro pode ser movido para um canal em que não poderia entrar por conta própria. Desconectar define channel_id como null e requer a mesma permissão.

Fornecer channel_id para um alvo sem conexão de voz ao vivo, ou um connection_id que não seja um dos do próprio alvo, retorna 400 USER_NOT_IN_VOICE. Fornecer mute ou deaf para esse alvo é bem-sucedido e armazena as flags. Um destino que não existe retorna o código de campo CHANNEL_DOES_NOT_EXIST, e um que não é um canal de voz retorna CHANNEL_MUST_BE_VOICE.

MANAGE_ROLES e MODERATE_MEMBERS são permissões elevadas. Quando o nível MFA da guilda é elevado, um chamador que não é o dono da guilda também precisa de um autenticador multifator cadastrado para substituir roles ou aplicar communication_disabled_until.

Um chamador que direciona seu próprio ID de usuário aqui segue as regras direcionadas a si mesmo de Modificar membro atual da guilda para os campos de perfil da guilda. O corpo continua sendo o objeto de atualização completo, então roles é aceito. Substituir seu próprio conjunto de cargos ainda requer MANAGE_ROLES e autoridade de hierarquia, e communication_disabled_until ainda é rejeitado com 403 MISSING_PERMISSIONS.

CampoTipoDescrição
guild_idsnowflakeO ID da guilda
user_idsnowflakeO ID do membro alvo

O corpo é um objeto de atualização de membro da guilda.

StatusCorpoCondição
200objeto membro da guildaA associação foi processada
400resposta de erroConjunto de cargos ou valor de timeout rejeita a solicitação
4001resposta de erroO chamador possui MANAGE_ROLES ou MODERATE_MEMBERS sem um autenticador cadastrado em uma guilda com MFA elevado
400resposta de errochannel_id foi fornecido para um alvo sem conexão de voz ao vivo
400resposta de erroO canal de destino não existe ou não é um canal de voz
403resposta de erroA guilda está indisponível, o chamador não é um membro ou uma permissão exigida está ausente
403resposta de erroConteúdo bloqueado foi fornecido, autoridade de hierarquia está ausente ou o alvo possui ADMINISTRATOR
403resposta de erroO alvo é o chamador e communication_disabled_until foi fornecido
404resposta de erroA guilda não existe, retornando UNKNOWN_GUILD, ou a associação ou conta do alvo está ausente, retornando UNKNOWN_MEMBER

1 O código de erro de autenticador ausente é TWO_FACTOR_REQUIRED, retornado apenas após a própria permissão ter sido confirmada, de modo que um chamador sem a permissão a recebe inteiramente 403 ao invés

A operação tem os mesmos efeitos de Modificar membro atual da guilda. Aplicar um conjunto de cargos não vazio também torna uma associação temporária permanente. Uma associação é temporária quando o membro entrou através de um convite cujo campo temporary é verdadeiro.

20 solicitações por 10 segundos para cada usuário autenticado e ID de guilda, no bucket guild:member:update::guild_id.

DELETE/v1/guilds/{guild_id}/members/{user_id}BotAudit reason

Remove um membro da guilda e retorna 204 com um corpo vazio. Requer associação, KICK_MEMBERS e autoridade de hierarquia de cargos sobre o alvo. Emite um evento de Gateway Guild Member Remove.

KICK_MEMBERS é uma permissão elevada, portanto um chamador que não é o dono da guilda precisa de um autenticador multifator cadastrado enquanto o nível MFA da guilda é elevado.

O chamador e o dono da guilda não podem ser removidos através desta operação, e ambos são relatados como 404 UNKNOWN_MEMBER.

CampoTipoDescrição
guild_idsnowflakeO ID da guilda
user_idsnowflakeO ID do membro alvo
StatusCorpoCondição
204vazioO membro foi removido
4001resposta de erroO chamador possui KICK_MEMBERS sem um autenticador cadastrado em uma guilda com MFA elevado
403resposta de erroA guilda está indisponível, o chamador não é um membro ou KICK_MEMBERS está ausente
403resposta de erroAutoridade de hierarquia sobre o alvo está ausente
404resposta de erroA guilda não existe, retornando UNKNOWN_GUILD
404resposta de erroO alvo não é um membro, é o chamador ou é o dono da guilda, cada um retornando UNKNOWN_MEMBER

1 O código de erro é TWO_FACTOR_REQUIRED, retornado apenas após a própria permissão ter sido confirmada

Voltar à guilda dentro de um ano retoma qualquer timeout de comunicação que não tenha expirado.

O membro perde seu perfil na guilda e os cargos. Estados de leitura, configurações da guilda e pastas de guilda permanecem inalterados.

O Decoding Chat registra uma entrada de auditoria MEMBER_KICK sem lista de alterações e emite Guild Audit Log Entry Create. As sessões da guilda restantes recebem Guild Member Remove, sujeito à filtragem de eventos. As sessões da conta removida recebem Guild Delete.

20 solicitações por 10 segundos para cada usuário autenticado e ID de guilda, no bucket guild:member:remove::guild_id.

POST/v1/guilds/{guild_id}/transfer-ownershipBotAudit reasonMFA

Transfere a propriedade da guilda para outro membro atual e retorna o objeto da guilda atualizado. Requer que o chamador seja o dono atual. Emite um evento de Gateway Guild Update.

  • Nenhum bit de permissão substitui a propriedade.
  • O alvo deve ser um membro atual.
  • Um alvo bot retorna 400 CANNOT_TRANSFER_OWNERSHIP_TO_BOT.

A operação requer os campos de verificação sudo. Uma credencial de bot não precisa de prova. Uma conta sem uma prova válida recebe 403 SUDO_MODE_REQUIRED, cuja carga útil nomeia seus segundos fatores disponíveis.

CampoTipoDescrição
guild_idsnowflakeO ID da guilda
CampoTipoDescrição
X-Fluxer-Sudo-Mode-JWT?stringA prova de modo sudo existente
CampoTipoDescrição
new_owner_idsnowflakeO ID do membro para se tornar o novo dono
password?stringA senha do dono atual, conforme definido pelos campos de verificação sudo
mfa_method?stringO segundo fator a ser verificado, seja totp ou webauthn
mfa_code?stringO código do autenticador, obrigatório quando o método é totp (1-32 caracteres)
webauthn_response?objeto declaração WebAuthnA declaração produzida quando o método é webauthn
webauthn_challenge?stringO desafio vinculado à declaração WebAuthn
StatusCorpoCondição
200objeto guildaA propriedade foi transferida
400resposta de erroA senha fornecida ou código do autenticador está incorreto, ou o alvo é uma conta de bot
403resposta de erroA guilda está indisponível, o modo sudo está ausente, ou o chamador não é o dono da guilda
403resposta de erroO registro da guilda existe enquanto nenhum processo do Gateway a serve, retornando ACCESS_DENIED
404resposta de erroA guilda não existe, retornando UNKNOWN_GUILD, ou o alvo não é um membro, retornando UNKNOWN_MEMBER

A operação altera apenas o owner_id da guilda. O dono que está saindo mantém todos os cargos, sobreposições de permissão e associação que possuía.

Ele registra uma entrada de auditoria GUILD_UPDATE nomeando o dono anterior e o novo em sua lista de alterações, emite Guild Audit Log Entry Create e emite Guild Update para todas as sessões que podem ver a guilda. Uma solicitação nomeando o dono atual não muda nada e não registra nenhuma entrada de auditoria. A resposta do log de auditoria não possui o membro options para esta entrada.

Uma conta com um segundo fator cadastrado também recebe uma prova de sudo reemitida. Uma credencial de bot e uma conta cuja única prova era uma senha recebem X-Fluxer-Sudo-Mode-JWT apenas quando a própria solicitação tiver uma.

20 solicitações por 10 segundos para cada usuário autenticado e ID de guilda, no bucket compartilhado guild:update::guild_id.

PUT/v1/guilds/{guild_id}/members/{user_id}/roles/{role_id}BotAudit reason

Adiciona um cargo a um membro e retorna 204 com um corpo vazio. Requer associação, MANAGE_ROLES e autoridade de hierarquia sobre o cargo. Emite um evento de Gateway Guild Member Update.

  • O dono da guilda ignora a permissão e a verificação de hierarquia.
  • O cargo everyone não pode ser atribuído e é rejeitado com o código de campo INVALID_ROLE_ID.

MANAGE_ROLES é uma permissão elevada, portanto um chamador que não seja o dono da guilda precisa de um autenticador multifator cadastrado enquanto o nível MFA da guilda for elevado.

O dono da guilda recebe 404 UNKNOWN_ROLE para um cargo que não existe na guilda. Qualquer outro chamador recebe 403 MISSING_PERMISSIONS.

CampoTipoDescrição
guild_idsnowflakeO ID da guilda
user_idsnowflakeO ID do membro alvo
role_idsnowflakeO ID do cargo a ser adicionado
StatusCorpoCondição
204vazioO cargo está presente no membro
4001resposta de erroO cargo é o cargo everyone, ou o chamador possui MANAGE_ROLES sem um autenticador cadastrado em uma guilda com MFA elevado
403resposta de erroA guilda está indisponível, o chamador não é um membro, MANAGE_ROLES está ausente, ou a autoridade de hierarquia sobre o cargo está ausente
404resposta de erroA guilda não existe, retornando UNKNOWN_GUILD
404resposta de erroO alvo não é um membro, retornando UNKNOWN_MEMBER
404resposta de erroO dono da guilda nomeou um cargo que não existe, retornando UNKNOWN_ROLE

1 O código de erro de autenticador ausente é TWO_FACTOR_REQUIRED, retornado apenas após a própria permissão ter sido confirmada

Adicionar um novo cargo torna permanente uma associação temporária. A operação registra uma entrada de auditoria MEMBER_ROLE_UPDATE e emite Guild Audit Log Entry Create e Guild Member Update. Um conjunto de cargos inalterado ainda emite Guild Member Update e não registra nenhuma entrada de auditoria.

A resposta do log de auditoria nomeia o cargo com a opção role_name e através da lista de alterações.

20 solicitações por 10 segundos para cada usuário autenticado e ID de guilda, no bucket guild:member:role:add::guild_id.

DELETE/v1/guilds/{guild_id}/members/{user_id}/roles/{role_id}BotAudit reason

Remove um cargo de um membro e retorna 204 com um corpo vazio. Requer associação, MANAGE_ROLES e autoridade de hierarquia sobre o cargo. Emite um evento de Gateway Guild Member Update.

  • O dono da guilda ignora a permissão e a verificação de hierarquia.
  • O cargo everyone não pode ser removido e é rejeitado com o código de campo INVALID_ROLE_ID.

MANAGE_ROLES é uma permissão elevada, portanto um chamador que não seja o dono da guilda precisa de um autenticador multifator cadastrado enquanto o nível MFA da guilda for elevado. Um cargo que não existe é relatado da mesma forma que para Adicionar cargo a membro da guilda.

CampoTipoDescrição
guild_idsnowflakeO ID da guilda
user_idsnowflakeO ID do membro alvo
role_idsnowflakeO ID do cargo a ser removido
StatusCorpoCondição
204vazioO cargo está ausente do membro
4001resposta de erroO cargo é o cargo everyone, ou o chamador possui MANAGE_ROLES sem um autenticador cadastrado em uma guilda com MFA elevado
403resposta de erroA guilda está indisponível, o chamador não é um membro, MANAGE_ROLES está ausente, ou a autoridade de hierarquia sobre o cargo está ausente
404resposta de erroA guilda não existe, retornando UNKNOWN_GUILD
404resposta de erroO alvo não é um membro, retornando UNKNOWN_MEMBER
404resposta de erroO dono da guilda nomeou um cargo que não existe, retornando UNKNOWN_ROLE

1 O código de erro de autenticador ausente é TWO_FACTOR_REQUIRED, retornado apenas após a própria permissão ter sido confirmada

A operação registra uma entrada de auditoria MEMBER_ROLE_UPDATE e emite Guild Audit Log Entry Create e Guild Member Update. Um cargo que o membro não possuía ainda emite Guild Member Update e não registra nenhuma entrada de auditoria. A remoção de um cargo não altera se a associação é temporária.

20 solicitações por 10 segundos para cada usuário autenticado e ID de guilda, no bucket guild:member:role:remove::guild_id.