Member Models#
- class interactions.api.models.member.Member(kwargs_dict=None, /, **other_kwargs)[source]#
A class object representing the user of a guild, known as a “member.”
Note
pending
andpermissions
only apply for members retroactively requiring to verify rules via. membership screening or lack permissions to speak.- Variables:
user (User) – The user of the guild.
nick (str) – The nickname of the member.
avatar (Optional[str]) – The hash containing the user’s guild avatar, if applicable.
roles (List[int]) – The list of roles of the member.
joined_at (datetime) – The timestamp the member joined the guild at.
premium_since (datetime) – The timestamp the member has been a server booster since.
deaf (bool) – Whether the member is deafened.
mute (bool) – Whether the member is muted.
flags (MemberFlags) – The guild member flags. Default to 0.
pending (Optional[bool]) – Whether the member is pending to pass membership screening.
permissions (Optional[Permissions]) – Whether the member has permissions.
communication_disabled_until (Optional[str]) – How long until they’re unmuted, if any.
- property voice_state: VoiceState | None#
New in version 4.4.0.
Returns the current voice state of the member, if any.
- Return type:
- property guild: Guild | None#
New in version 4.4.0.
Attempts to get the guild the member is in. Only works then roles or nick or joined at is present and the guild is cached.
- Returns:
The guild this member belongs to.
- Return type:
- property guild_id: Snowflake | LibraryException | None#
New in version 4.3.2.
Attempts to get the guild ID the member is in. Only works when roles or nick or joined at is present and the guild is cached.
- Returns:
The ID of the guild this member belongs to.
- Return type:
Optional[Union[Snowflake, LibraryException]]
- property id: Snowflake#
New in version 4.1.0.
Returns the ID of the user.
- Returns:
The ID of the user
- Return type:
- property mention: str#
New in version 4.1.0.
Returns a string that allows you to mention the given member.
- Returns:
The string of the mentioned member.
- Return type:
- property name: str#
New in version 4.2.0.
Returns the string of either the user’s nickname or username.
- Returns:
The name of the member
- Return type:
- async ban(guild_id=<interactions.MISSING>, seconds=0, minutes=<interactions.MISSING>, hours=<interactions.MISSING>, days=<interactions.MISSING>, reason=None)[source]#
New in version 4.0.2.
Changed in version 4.3.2: Method has been aligned to changes in the Discord API. You can now input days, hours, minutes and seconds, as long as it doesn’t exceed 604800 seconds in total for deleting messages, instead of only days.
Changed in version 4.3.2:
guild_id
is no longer requiredBans the member from a guild.
- Parameters:
guild_id (Optional[Union[int, Snowflake, Guild]]) – The id of the guild to ban the member from
seconds (Optional[int]) – Number of seconds to delete messages, from 0 to 604800. Defaults to 0
minutes (Optional[int]) – Number of minutes to delete messages, from 0 to 10080
hours (Optional[int]) – Number of hours to delete messages, from 0 to 168
days (Optional[int]) – Number of days to delete messages, from 0 to 7
reason (Optional[str]) – The reason of the ban
- async kick(guild_id=<interactions.MISSING>, reason=None)[source]#
New in version 4.0.2.
Changed in version 4.3.2:
guild_id
is no longer required.Kicks the member from a guild.
- async add_role(role, guild_id=<interactions.MISSING>, reason=None)[source]#
New in version 4.0.2.
Changed in version 4.3.2:
guild_id
is no longer required.This method adds a role to a member.
- async remove_role(role, guild_id=<interactions.MISSING>, reason=None)[source]#
New in version 4.0.2.
Changed in version 4.3.2:
guild_id
is no longer required.This method removes a role from a member.
- async send(content=<interactions.MISSING>, *, components=<interactions.MISSING>, tts=<interactions.MISSING>, attachments=<interactions.MISSING>, files=<interactions.MISSING>, embeds=<interactions.MISSING>, allowed_mentions=<interactions.MISSING>)[source]#
New in version 4.0.2.
Sends a DM to the member.
- Parameters:
content (Optional[str]) – The contents of the message as a string or string-converted value.
components (Optional[Union[ActionRow, Button, SelectMenu, List[ActionRow], List[Button], List[SelectMenu]]]) – A component, or list of components for the message.
tts (Optional[bool]) – Whether the message utilizes the text-to-speech Discord programme or not.
attachments (Optional[List[Attachment]]) –
New in version 4.3.0.
The attachments to attach to the message. Needs to be uploaded to the CDN first
files (Optional[Union[File, List[File]]]) –
New in version 4.2.0.
A file or list of files to be attached to the message.
embeds (Optional[Union[Embed, List[Embed]]]) – An embed, or list of embeds for the message.
allowed_mentions (Optional[Union[AllowedMentions, dict]]) – The allowed mentions for the message.
- Returns:
The sent message as an object.
- Return type:
- async modify(guild_id=<interactions.MISSING>, nick=<interactions.MISSING>, roles=<interactions.MISSING>, mute=<interactions.MISSING>, deaf=<interactions.MISSING>, channel_id=<interactions.MISSING>, communication_disabled_until=<interactions.MISSING>, reason=None)[source]#
New in version 4.0.2.
Changed in version 4.3.2:
guild_id
is no longer required.Modifies the member of a guild.
- Parameters:
guild_id (Optional[Union[int, Snowflake, Guild]]) – The id of the guild to modify the member on
nick (Optional[str]) – The nickname of the member
roles (Optional[List[int]]) – A list of all role ids the member has
mute (Optional[bool]) – whether the user is muted in voice channels
deaf (Optional[bool]) – whether the user is deafened in voice channels
channel_id (Optional[Union[Channel, int, Snowflake]]) – id of channel to move user to (if they are connected to voice)
communication_disabled_until (Optional[datetime.isoformat]) – when the user’s timeout will expire and the user will be able to communicate in the guild again (up to 28 days in the future)
reason (Optional[str]) – The reason of the modifying
- Returns:
The modified member object
- Return type:
- get_avatar_url(guild_id=<interactions.MISSING>)[source]#
New in version 4.2.0.
Changed in version 4.3.0: Has been renamed to get_avatar_url instead of get_member_avatar_url
Changed in version 4.3.2:
guild_id
is no longer required.Returns the URL of the member’s avatar for the specified guild.
- async get_guild_permissions(guild_id=<interactions.MISSING>)[source]#
New in version 4.3.2.
Returns the permissions of the member for the specified guild.
Note
The permissions returned by this function will not take into account role and user overwrites that can be assigned to channels or categories. If you need these overwrites, look into
Channel.get_permissions_for()
.- Parameters:
guild (Guild) – The guild of the member
- Returns:
Base permissions of the member in the specified guild
- Return type:
- async has_permissions(*permissions, channel=<interactions.MISSING>, guild_id=<interactions.MISSING>, operator='and')[source]#
New in version 4.3.2.
Returns whether the member has the permissions passed.
Note
If the channel argument is present, the function will look if the member has the permissions in the specified channel. If the argument is missing, then it will only consider the member’s guild permissions.
- Parameters:
*permissions (Union[int, Permissions]) – The list of permissions
channel (Channel) – The channel where to check for permissions
guild_id (Optional[Union[int, Snowflake, Guild]]) – The id of the guild
operator (Optional[str]) – The operator to use to calculate permissions. Possible values: and, or. Defaults to and.
- Returns:
Whether the member has the permissions
- Return type: