discord-interactions

Channel Models

class interactions.api.models.channel.ChannelType(value)

An enumerable object representing the type of channels.

..note::

While all of them are listed, not all of them will be used at this library’s scope.

class interactions.api.models.channel.ThreadMetadata(**kwargs)

A class object representing the metadata of a thread.

Note

invitable will only show if the thread can have an invited created with the current cached permissions.

Variables
  • archived (bool) – The current thread accessibility state.

  • auto_archive_duration (int) – The auto-archive time.

  • archive_timestamp (datetime.datetime.timestamp) – The timestamp that the thread will be/has been closed at.

  • locked (bool) – The current message state of the thread.

  • invitable (typing.Optional[bool]) – The ability to invite users to the thread.

class interactions.api.models.channel.ThreadMember(**kwargs)

A class object representing a member in a thread.

Note

id only shows if there are active intents involved with the member in the thread.

Variables
  • id (typing.Optional[int]) – The “ID” or intents of the member.

  • user_id (int) – The user ID of the member.

  • join_timestamp (datetime.datetime.timestamp) – The timestamp of when the member joined the thread.

  • flags (int) – The bitshift flags for the member in the thread.

class interactions.api.models.channel.Channel(**kwargs)

A class object representing all types of channels.

Note

The purpose of this model is to be used as a base class, and is never needed to be used directly.

Variables
  • id (int) – The (snowflake) ID of the channel.

  • type (int) – The type of channel.

  • guild_id (typing.Optional[int]) – The ID of the guild if it is not a DM channel.

  • position (typing.Optional[int]) – The position of the channel.

  • permission_overwrites (typing.List[interactions.api.models.misc.Overwrite]) – The non-synced permissions of the channel.

  • name (str) – The name of the channel.

  • topic (typing.Optional[str]) – The description of the channel.

  • nsfw (typing.Optional[bool]) – Whether the channel is NSFW.

  • last_message_id (int) – The ID of the last message sent.

  • bitrate (typing.Optional[int]) – The audio bitrate of the channel.

  • user_limit (typing.Optional[int]) – The maximum amount of users allowed in the channel.

  • rate_limit_per_user (typing.Optional[int]) – The concurrent ratelimit for users in the channel.

  • recipients (typing.Optional[typing.List[interactions.api.models.user.User]]) – The recipients of the channel.

  • icon (typing.Optional[str]) – The icon of the channel.

  • owner_id (typing.Optional[int]) – The owner of the channel.

  • application_id (typing.optional[int]) – The application of the channel.

  • parent_id (typing.Optional[int]) – The ID of the “parent”/main channel.

  • last_pin_timestamp (typing.Optional[datetime.datetime]) – The timestamp of the last pinned message in the channel.

  • rtc_region (typing.Optional[str]) – The region of the WebRTC connection for the channel.

  • video_quality_mode (typing.Optional[int]) – The set quality mode for video streaming in the channel.

  • message_count (int) – The amount of messages in the channel.

  • member_count (typing.Optional[int]) – The amount of members in the channel.

  • thread_metadata (typing.Optional[interactions.api.models.channel.ThreadMetadata]) – The thread metadata of the channel.

  • member (typing.Optional[interactions.api.models.channel.ThreadMember]) – The member of the thread in the channel.

  • default_auto_archive_duration (typing.Optional[int]) – The set auto-archive time for all threads to naturally follow in the channel.

  • permissions (typing.Optional[str]) – The permissions of the channel.

class interactions.api.models.channel.CategoryChannel(**kwargs)

This is a derivation of interactions.api.models.channel.Channel but for category channels.

class interactions.api.models.channel.TextChannel(**kwargs)

This is a derivation of interactions.api.models.channel.Channel but for text channels.

class interactions.api.models.channel.VoiceChannel(**kwargs)

This is a derivation of interactions.api.models.channel.Channel but for voice channels.

class interactions.api.models.channel.DMChannel(**kwargs)

This is a derivation of interactions.api.models.channel.Channel but for DM channels.

class interactions.api.models.channel.ThreadChannel(**kwargs)

This is a derivation of interactions.api.models.channel.Channel but for thread channels.