Wumpus.py API Reference

Client

class wumpus.Client(*, intents: Optional[wumpus.models.intents.Intents] = None, http_version: Literal[3, 4, 5, 6, 7, 8, 9] = 9, gateway_version: Literal[4, 5, 6, 7, 8, 9] = 9, loop: Optional[asyncio.events.AbstractEventLoop] = None)

Represents a client connection to Discord.

property api: Optional[wumpus.core.http.Router]

The HTTP API router this client uses.

Type

Router

async fetch_guild_preview(id: int) wumpus.models.guild.GuildPreview

This function is a coroutine.

Fetches a GuildPreview by it’s ID.

Note

If the client is not in the guild, then the guild must be lurkable.

Parameters

id (Snowflake) – The snowflake ID of the guild to fetch.

Returns

Return type

GuildPreview

async login(token: Optional[str] = None, /) None

This function is a coroutine.

Establishes an HTTP session to Discord.

property loop: asyncio.events.AbstractEventLoop

The event loop this client is using.

Type

asyncio.AbstractEventLoop

property user: wumpus.models.user.ClientUser

ClientUser The Discord user this client represents.

class wumpus.Emitter
class wumpus.Router(route: str = '', /, *, base: str, http: wumpus.core.http.HTTPClient)

Objects

class wumpus.Object(id: Optional[int] = None, /)

Represents a Discord object.

property created_at: wumpus.models.objects.Timestamp

The creation timestamp of this object.

Type

Timestamp

property id: int

The snowflake ID of this object.

Type

Snowflake

class wumpus.Timestamp(year: int, month: Optional[int] = None, day: Optional[int] = None, hour: int = 0, minute: int = 0, second: int = 0, microsecond: int = 0, tzinfo: datetime.timezone = timezone.utc, *, fold: int = '0')

Represents a timestamp of something related to Discord. This inherits from datetime.datetime.

There are some major differences from datetime and this class:

  • This class defaults to timezone-aware datetimes for consistency.

  • When used in format strings, a “formatted timestamp” in the form of <t:unix:?format> is returned.
    • This can be convenient, for example: f”This user was created {user.created_at:R}.”

astimezone()

tz -> convert to local time in new timezone tz

combine()

date, time -> datetime with same date and time fields

ctime()

Return ctime() style string.

date()

Return date object with same year, month and day.

dst()

Return self.tzinfo.dst(self).

classmethod from_datetime(dt: datetime.datetime, /) wumpus.models.objects.DT

Casts a datetime.datetime into a Timestamp.

Parameters

dt (datetime.datetime) – The datetime to use.

Returns

Return type

Timestamp

fromisocalendar()

int, int, int -> Construct a date from the ISO year, week number and weekday.

This is the inverse of the date.isocalendar() function

fromisoformat()

string -> datetime from datetime.isoformat() output

fromordinal()

int -> date corresponding to a proleptic Gregorian ordinal.

fromtimestamp()

timestamp[, tz] -> tz’s local time from POSIX timestamp.

isocalendar()

Return a 3-tuple containing ISO year, week number, and weekday.

isoformat()

[sep] -> string in ISO 8601 format, YYYY-MM-DDT[HH[:MM[:SS[.mmm[uuu]]]]][+HH:MM]. sep is used to separate the year from the time, and defaults to ‘T’. timespec specifies what components of the time to include (allowed values are ‘auto’, ‘hours’, ‘minutes’, ‘seconds’, ‘milliseconds’, and ‘microseconds’).

isoweekday()

Return the day of the week represented by the date. Monday == 1 … Sunday == 7

classmethod now() wumpus.models.objects.DT

Return the current timestamp, timezone aware.

Returns

Return type

Timestamp

replace()

Return datetime with new specified fields.

strftime()

format -> strftime() style string.

strptime()

string, format -> new datetime parsed from a string (like time.strptime()).

time()

Return time object with same time but with tzinfo=None.

timestamp()

Return POSIX timestamp as float.

timetuple()

Return time tuple, compatible with time.localtime().

timetz()

Return time object with same time and tzinfo.

to_datetime() datetime.datetime

Casts this into a datetime.datetime.

Returns

Return type

datetime.datetime

to_snowflake(*, worker_id: int = 1, process_id: int = 0, increment: Optional[int] = None) int

Generates a snowflake ID from this timestamp.

All parameters are keyword-only and optional.

Parameters
  • worker_id (int) – The worker ID this process is on.

  • process_id (int) – The process ID.

  • increment (int) – The increment number.

Returns

Return type

Snowflake

today()

Current date or datetime: same as self.__class__.fromtimestamp(time.time()).

toordinal()

Return proleptic Gregorian ordinal. January 1 of year 1 is day 1.

tzname()

Return self.tzinfo.tzname(self).

classmethod utcfromtimestamp(timestamp: float, /) wumpus.models.objects.DT

Return the timestamp from the given Unix timestamp.

Parameters

timestamp (float) – The unix timestamp to use.

Returns

Return type

Timestamp

classmethod utcnow() wumpus.models.objects.DT

An alias for Timestamp.now().

Returns

Return type

Timestamp

utcoffset()

Return self.tzinfo.utcoffset(self).

utctimetuple()

Return UTC time tuple, compatible with time.localtime().

weekday()

Return the day of the week represented by the date. Monday == 0 … Sunday == 6

Snowflake

A type alias for int. This is used when a type should be a “snowflake ID”.

User

class wumpus.User(connection: wumpus.core.connection.Connection, /, data: Optional[wumpus.typings.payloads.PartialUserPayload] = None)

Represents a Discord user.

property avatar: wumpus.models.asset.Asset

The user’s display avatar.

Type

Asset

property bot: bool

Whether or not this user is a bot.

Type

bool

async create_dm() ...

This function is a coroutine.

Opens a DM with this user. This is implicitly called, this should not be used frequently.

property created_at: wumpus.models.objects.Timestamp

The creation timestamp of this object.

Type

Timestamp

property discriminator: str

The user’s discriminator.

Type

str

property id: int

The snowflake ID of this object.

Type

Snowflake

property mention: str

The mention format of the user.

Type

str

property name: str

The user’s username.

Type

str

property system: bool

Whether or not this user is an official system account.

Type

bool

property tag: str

The user’s name and discriminator in the conventional name#discrim format.

Type

str

to_dict() wumpus.typings.payloads.PartialUserPayload

Converts this user into a raw dictionary that can be sent to Discord.

Returns

Return type

JSON

class wumpus.ClientUser(connection: wumpus.core.connection.Connection, /, data: Optional[wumpus.typings.payloads.PartialUserPayload] = None)

Represents the user that represents the client.

property avatar: wumpus.models.asset.Asset

The user’s display avatar.

Type

Asset

property bot: bool

Whether or not this user is a bot.

Type

bool

property created_at: wumpus.models.objects.Timestamp

The creation timestamp of this object.

Type

Timestamp

property discriminator: str

The user’s discriminator.

Type

str

async edit(*, name: Optional[str] = None, avatar: Union[str, bytes] = Ellipsis) None

This function is a coroutine.

Changes the name and/or avatar of this user. All parameters are keyword only, and they are all optional.

Parameters
  • name (str) – The username to change to.

  • avatar (Union[bytes, str]) – The avatar to change to. This can be a raw byte string, or a file path that leads to the image.

property id: int

The snowflake ID of this object.

Type

Snowflake

property locale: Optional[str]

The locale (language choice) of this user.

Type

str

property mention: str

The mention format of the user.

Type

str

property mfa_enabled: bool

Whether or not 2 factor authentication is enabled on this account.

Type

bool

property name: str

The user’s username.

Type

str

property system: bool

Whether or not this user is an official system account.

Type

bool

property tag: str

The user’s name and discriminator in the conventional name#discrim format.

Type

str

to_dict() wumpus.typings.payloads.UserPayload

Converts this user into a raw dictionary that can be sent to Discord.

Returns

Return type

JSON

property verified: bool

Whether or not this account has a verified email.

Type

bool

Guild

class wumpus.Guild(connection: wumpus.core.connection.Connection, /, data: wumpus.typings.payloads.GuildPayload)
property created_at: Optional[wumpus.models.objects.Timestamp]

The creation timestamp of this object.

Type

Timestamp

property id: int

The snowflake ID of this object.

Type

Snowflake

class wumpus.GuildPreview(connection: wumpus.core.connection.Connection, /, data: wumpus.typings.payloads.GuildPreviewPayload)

Member

class wumpus.Member(connection: Connection, data: JSON, *, guild: Guild, user: PartialUserPayload = None)

Represents a guild member. This inherits from User.

async add_role(role: Union[Role, Object], /, *, reason: str = None) None

This function is a coroutine.

Adds a role to this member.

Parameters
  • role (Role) – The role to add.

  • reason (str) – The audit log reason to use.

async add_roles(*roles: Union[Role, Object], reason: str = None) None

This function is a coroutine.

Adds multiple roles to this member at once.

Parameters
  • *roles (Role) – The roles to add.

  • reason (str) – The audit log reason to use.

property avatar: wumpus.models.asset.Asset

The user’s display avatar.

Type

Asset

async ban(*, reason: Optional[str] = None, delete_message_days: Literal[0, 1, 2, 3, 4, 5, 6, 7] = 1) None

This function is a coroutine.

Bans this member from it’s guild. This requires the ban_members permission.

This is equivalent to Guild.ban().

Parameters
  • delete_message_days (int) – The amount of days worth of message history from this user to delete.

  • reason (str) – The audit log reason to use.

property bot: bool

Whether or not this user is a bot.

Type

bool

async create_dm() ...

This function is a coroutine.

Opens a DM with this user. This is implicitly called, this should not be used frequently.

property created_at: wumpus.models.objects.Timestamp

The creation timestamp of this object.

Type

Timestamp

property deaf: bool

Whether or not this member is deafened.

Type

bool

property discriminator: str

The user’s discriminator.

Type

str

property display_name: str

The name that appears for messages from this member.

Type

str

async edit(*, nick: str = None, roles: Iterable[Union[Role, Object]] = None, mute: bool = None, deaf: bool = None, reason: str = None) None

This function is a coroutine.

Edits attributes of this member. All parameters are keyword-only and optional.

Parameters
  • nick (str) – The new nickname of this member.

  • roles (Iterable[Role]) – An iterable of roles to overwrite the member’s roles with.

  • mute (bool) – Whether or not to mute this member.

  • deaf (bool) – Whether or not to deafen this member.

  • reason (str) – The audit log reason to use.

property guild: Guild

The guild this member is in.

Type

Guild

property id: int

The snowflake ID of this object.

Type

Snowflake

property joined_at: wumpus.models.objects.Timestamp

The timestamp for when this member joined it’s guild.

Type

Timestamp

async kick(reason: str, /) None

This function is a coroutine.

Removes this member from it’s guild. This requires the kick_members permission.

This is equivalent to Guild.kick().

Parameters

reason (str) – The audit log reason to use.

property mention: str

The mention format of the user.

Type

str

property mute: bool

Whether or not this member is muted.

Type

bool

property name: str

The user’s username.

Type

str

property nick: str

The member’s nickname. None if the member does not have one.

Type

str

property permissions: wumpus.models.permissions.Permissions

The permissions for this member at the guild level.

Note

This does not account for channel overwrites. See Member.permissions_in() for that.

Type

Permissions

property premium_since: Optional[wumpus.models.objects.Timestamp]

The timestamp for when this member started boosting this guild.

This will be None is the member is not boosting at all.

Type

Timestamp

async remove_role(role: Union[Role, Object], /, *, reason: str = None) None

This function is a coroutine.

Removes a role from this member.

Parameters
  • role (Role) – The role to remove.

  • reason (str) – The audit log reason to use.

async remove_roles(*roles: Union[Role, Object], reason: str = None) None

This function is a coroutine.

Removes multiple roles from this member at once.

Parameters
  • *roles (Role) – The roles to remove.

  • reason (str) – The audit log reason to use.

property system: bool

Whether or not this user is an official system account.

Type

bool

property tag: str

The user’s name and discriminator in the conventional name#discrim format.

Type

str

to_dict() wumpus.typings.payloads.PartialUserPayload

Converts this user into a raw dictionary that can be sent to Discord.

Returns

Return type

JSON

async unban(*, reason: Optional[str] = None) None

This function is a coroutine.

Unbans this member from it’s stored guild. This can be useful is the member is still stored after being banned.

This is equivalent to Guild.unban().

Parameters

reason (str) – The audit log reason to use.

Role

class wumpus.Role(connection: Connection, guild: Guild, data: JSON, /)

Represents a Discord role inside of a guild.

id

The Snowflake ID of this role.

Type

int

name

The name of this role.

Type

str

guild

The guild this role belongs to.

Type

Guild

position

The position of this role.

Type

int

permissions

The permissions this role has.

Type

Permissions

managed

Whether the role is managed by the guild.

Type

bool

mentionable

Whether this role is mentionable.

Type

bool

color

The color of this role.

Type

Color

hoist

Whether this role is hoisted.

Type

bool

property created_at: wumpus.models.objects.Timestamp

The creation timestamp of this object.

Type

Timestamp

async delete(*, reason: Optional[str] = None) None

This function is a coroutine.

Deletes this role.

Parameters

reason (str) – The audit log reason to use.

async edit(*, name: None = None, permissions: Optional[Union[wumpus.models.permissions.Permissions, int]] = None, color: Optional[Union[wumpus.models.color.Color, int]] = None, hoist: Optional[bool] = None, mentionable: Optional[bool] = None, reason: Optional[str] = None) wumpus.models.role.T

This function is a coroutine.

Modifies and edits this role. All parameters are optional and keyword-only.

Parameters
  • name (str) – The new name of the role.

  • permissions (Union[Permissions, int]) – The new permissions of the role.

  • color (Union[Color, int]) – The new color of the role.

  • hoist (bool) – Whether or not to hoist the role.

  • mentionable (bool) – Whether or not to make this role mentionable.

  • reason (str) – The audit log reason to use.

property id: int

The snowflake ID of this object.

Type

Snowflake

async move(position: int, *, reason: Optional[str] = None) wumpus.models.role.T

This function is a coroutine.

Changes the position of this role.

Parameters
  • position (int) – The new position to update to.

  • reason (str) – The audit log reason to use.

async rename(name: str, /, *, reason: Optional[str] = None) wumpus.models.role.T

This function is a coroutine.

Changes the name of this role.

Parameters
  • name (int) – The new name to update to.

  • reason (str) – The audit log reason to use.

class wumpus.RoleTags(data: Dict[str, Any], /)

Represents the tags of a Discord role.

bot_id

The ID of the bot that manages this role, if any.

Type

Snowflake

integration_id

The ID of the integration that manages this role, if any.

Type

Snowflake

premium_subscriber

Whether or not this role is the “Nitro Booster” role.

Type

bool

Emoji

class wumpus.PartialEmoji(*, name: str, id: Optional[int] = None, animated: bool = False, connection: Optional[wumpus.core.connection.Connection] = None)

Represents an emoji with basic attributes.

name

The name of this emoji.

Type

str

id

The snowflake ID of this emoji.

Type

Optional[int]

animated

Whether or not this emoji is animated.

Type

bool

property created_at: wumpus.models.objects.Timestamp

The creation timestamp of this object.

Type

Timestamp

classmethod from_json(payload: Dict[str, Any], /, *, connection: Optional[wumpus.core.connection.Connection] = None) wumpus.models.emoji.PT

Generates a PartialEmoji from a raw JSON payload.

Parameters

payload (dict) – The payload to use.

Returns

The generated partial emoji object from the payload.

Return type

PartialEmoji

property id: int

The snowflake ID of this object.

Type

Snowflake

property image: wumpus.models.asset.Asset

Retrieves the Asset that represents this emoji.

Returns

The asset of this emoji.

Return type

Asset

Raises

ValueError – This asset is a unicode emoji.

is_unicode() bool

Return whether or not this asset is a unicode emoji.

Returns

Whether or not this asset is a unicode emoji.

Return type

bool

classmethod parse(string: str, /, *, connection: Optional[wumpus.core.connection.Connection] = None) wumpus.models.emoji.PT

Parses a string that represents an emoji into a PartialEmoji.

The given string should follow one of the following formats:

  • <:name:id>

  • <a:name:id>

  • name:id

  • a:name:id

Note

This does not account for unicode emoji. (It is been considered, however)

Parameters

string (str) – The string to parse.

Returns

The partial emoji object representing the string.

Return type

PartialEmoji

to_json() Dict[str, Any]

Turns this into a raw JSON payload to be sent to Discord.

This only takes into account minimal attributes as they are all we need.

Returns

The payload that was made.

Return type

dict

property url: str

The asset URL of this image.

Type

str

Asset

class wumpus.Asset(connection: wumpus.core.connection.Connection, /, *, url: str, info: wumpus.models.asset.AssetInfo = AssetInfo(format=None, static_format=None, size=None), animated: bool = False, hash: Optional[str] = None)

Represents an image representing something inside of Discord.

property animated: str

Whether or not this asset is animated.

Type

bool

property base_url: str

The base URL with no extension or query parameters, that this asset uses.

Type

str

property default_format: Literal['png', 'jpg', 'jpeg', 'webp', 'gif']

The default format of this asset.

Type

str

property format: Literal['png', 'jpg', 'jpeg', 'webp', 'gif']

The format of this asset.

Type

str

property hash: str

The hash of this asset, if any.

Type

str

replace(*, format: Optional[Literal[png, jpg, jpeg, webp, gif]] = None, size: Optional[Literal[16, 32, 64, 128, 256, 512, 1024, 2048, 4096]] = None, static_format: Optional[Literal[png, jpg, jpeg, webp]] = None) wumpus.models.asset.T

Return a copy of this asset with replaced attributes. All parameters are positional only and optional.

Parameters
  • format (str) – The new format of the asset.

  • size (int) – The new size of the asset.

  • static_format (str) – The new static format of the asset.

Returns

Return type

Asset

property size: Literal[16, 32, 64, 128, 256, 512, 1024, 2048, 4096]

The size of this asset.

Type

Optional[int]

property static_format: Literal['png', 'jpg', 'jpeg', 'webp']

The static format of this asset.

Type

str

property url: str

The CDN url of this asset.

Type

str

with_format(format: Literal[png, jpg, jpeg, webp, gif], /) wumpus.models.asset.T

Return a copy of this asset with the given format.

Parameters

format (str) – The new format of the asset.

Returns

Return type

Asset

with_size(size: Literal[16, 32, 64, 128, 256, 512, 1024, 2048, 4096], /) wumpus.models.asset.T

Return a copy of this asset with the given size.

Parameters

size (int) – The new size of the asset.

Returns

Return type

Asset

with_static_format(static_format: Literal[png, jpg, jpeg, webp], /) wumpus.models.asset.T

Return a copy of this asset with the given static format.

Parameters

static_format (str) – The new static format of the asset.

Returns

Return type

Asset

Managers

class wumpus.UserManager(connection: wumpus.core.connection.Connection, /, cache: Optional[Dict[int, wumpus.models.user.User]] = None)
property cache: Dict[int, wumpus.core.manager.T]

The internal cache of this manager.

Type

Dict[Snowflake, Any]

property count: int

The amount of objects stored in the internal cache.

Type

int

async fetch(id: int, /, *, cache: bool = True) wumpus.models.user.User

Makes an API request to Discord to fetch a user by their snowflake ID.

Parameters
  • id (Snowflake) – The user’s snowflake ID.

  • cache (bool = False) – Whether or not to cache the fetched user.

Returns

The user fetched. If none was found, None is returned.

Return type

Optional[User]

filter(predicate: Callable[[wumpus.core.manager.T], bool], /) Iterable[wumpus.core.manager.T]

Returns a filter object after filtering the internal cache with a predicate.

Parameters

predicate (Callable[[Any], bool]) – The check predicate to use.

Returns

Return type

Iterable[Any]

find(predicate: Callable[[wumpus.core.manager.T], bool], /) wumpus.core.manager.T

Finds an item in the internal cache by a predicate function.

Parameters

predicate (Callable[[Any], bool]) – The check predicate to use.

Returns

Return type

Optional[Any]

flatten() List[wumpus.core.manager.T]

Returns a list of all objects stored in the internal cache.

Returns

Return type

List[Any]

get(id: int, /) wumpus.core.manager.T

Gets and returns an item from the internal cache by it’s snowflake ID.

Parameters

id (Snowflake) – The ID to lookup.

async getch(id: int, /) wumpus.models.user.User

Calls UserManager.get() on the given snowflake. If no user is found in the cache, UserManager.fetch() is then called instead.

This is the exact equivalent of doing:

users.get(id) or await users.fetch(id)
Parameters

id (Snowflake) – The user’s snowflake ID.

Returns

The user found. If none was found, None is returned.

Return type

Optional[User]

has(id: int, /) bool

Return whether or not the internal cache is storing an object mapped to the specified snowflake ID.

Parameters

id (Snowflake) – The ID to lookup.

Returns

Return type

bool

subset(predicate: Callable[[wumpus.core.manager.T], bool], /) wumpus.core.manager.C

Creates a copy of this class with a subset of the cache.

For example, Manager([1, 2, 3]).subset(lambda x: x % 2 == 1) would return Manager([1, 3]). (Note that this is not how managers are actually constructed.)

Parameters

predicate (Callable[[Any], bool]) – The check predicate to use.

Returns

Return type

Any

class wumpus.GuildManager(connection: wumpus.core.connection.Connection, /, cache: Optional[Dict[int, wumpus.models.user.User]] = None)
property cache: Dict[int, wumpus.core.manager.T]

The internal cache of this manager.

Type

Dict[Snowflake, Any]

property count: int

The amount of objects stored in the internal cache.

Type

int

async fetch(id: int, /, *, cache: bool = True) wumpus.typings.payloads.GuildPayload

Makes an API request to Discord to fetch a guild by it’s snowflake ID.

Parameters
  • id (Snowflake) – The guild’s snowflake ID.

  • cache (bool = False) – Whether or not to cache the fetched guild.

Returns

The guild fetched. If none was found, None is returned.

Return type

Optional[Guild]

filter(predicate: Callable[[wumpus.core.manager.T], bool], /) Iterable[wumpus.core.manager.T]

Returns a filter object after filtering the internal cache with a predicate.

Parameters

predicate (Callable[[Any], bool]) – The check predicate to use.

Returns

Return type

Iterable[Any]

find(predicate: Callable[[wumpus.core.manager.T], bool], /) wumpus.core.manager.T

Finds an item in the internal cache by a predicate function.

Parameters

predicate (Callable[[Any], bool]) – The check predicate to use.

Returns

Return type

Optional[Any]

flatten() List[wumpus.core.manager.T]

Returns a list of all objects stored in the internal cache.

Returns

Return type

List[Any]

get(id: int, /) wumpus.core.manager.T

Gets and returns an item from the internal cache by it’s snowflake ID.

Parameters

id (Snowflake) – The ID to lookup.

async getch(id: int, /) wumpus.models.user.User

Calls GuildManager.get() on the given snowflake. If no user is found in the cache, GuildManager.fetch() is then called instead.

This is the exact equivalent of doing:

guilds.get(id) or await guilds.fetch(id)
Parameters

id (Snowflake) – The guild’s snowflake ID.

Returns

The guild found. If none was found, None is returned.

Return type

Optional[Guild]

has(id: int, /) bool

Return whether or not the internal cache is storing an object mapped to the specified snowflake ID.

Parameters

id (Snowflake) – The ID to lookup.

Returns

Return type

bool

subset(predicate: Callable[[wumpus.core.manager.T], bool], /) wumpus.core.manager.C

Creates a copy of this class with a subset of the cache.

For example, Manager([1, 2, 3]).subset(lambda x: x % 2 == 1) would return Manager([1, 3]). (Note that this is not how managers are actually constructed.)

Parameters

predicate (Callable[[Any], bool]) – The check predicate to use.

Returns

Return type

Any

Bitfields

class wumpus.Intents(value: int = 0, /, **kwargs)
property value: int

The internal value this bitfield represents.

Type

int

class wumpus.Permissions(value: int = 0, /, **kwargs)

Represents the permissions that a member or role has.

This can be constructed using a permissions integer or by using keyword-arguments.

property value: int

The internal value this bitfield represents.

Type

int

class wumpus.SystemChannelFlags(value: Optional[int] = None, /)
property suppress_guild_reminder_notifications: None

Whether or not to suppress server setup tips.

property suppress_join_notifications: None

Whether or not to suppress join notifications.

property suppress_premium_notifications: None

Whether or not to suppress server boost notifications.

property value: int

The internal value this bitfield represents.

Type

int

Enums

class wumpus.PremiumType(value)

This is an enum.

Represents the type of Nitro subscription a user has.

none

The user does not have Nitro.

nitro_classic

The user has Nitro Classic.

nitro

The user has Nitro.

class wumpus.GuildFeature(value)

This is an enum.

Represents a key feature a guild has.

animated_icon

Guild has access to set an animated guild icon.

banner

Guild has access to set a guild banner image.

commerce

Guild has access to use commerce features (i.e. create store channels).

community

Guild can enable welcome screen, Membership Screening, stage channels and discovery, and receives community updates.

discoverable

Guild is able to be discovered in the directory.

featurable

Guild is able to be featured in the directory.

invite_splash

Guild has access to set an invite splash background.

member_verification_gate

Guild has enabled Membership Screening.

news

Guild has access to create news channels.

partnered

Guild is partnered.

preview_enabled

Guild can be previewed before joining via Membership Screening or the directory.

vanity_url

Guild has access to set a vanity URL.

verified

Guild is verified.

vip_regions

Guild has access to set 384kbps bitrate in voice (previously VIP voice servers).

welcome_screen_enabled

Guild has enabled the welcome screen.

ticketed_events_enabled

Guild has enabled ticketed events.

monetization_enabled

Guild has enabled monetization.

more_stickers

Guild has increased custom sticker slots.

three_day_thread_archive

Guild has access to the three day archive time for threads.

seven_day_thread_archive

Guild has access to the seven day archive time for threads.

private_threads

Guild has access to create private threads.

Errors

exception wumpus.errors.Forbidden(response: aiohttp.client_reqrep.ClientResponse, /, *, json: Optional[Dict[str, Any]] = None, message: Optional[str] = None)

Raised when you are missing permissions for a certain action.

exception wumpus.errors.HTTPError(response: aiohttp.client_reqrep.ClientResponse, /, *, json: Optional[Dict[str, Any]] = None, message: Optional[str] = None)

Something unexpected happened when trying to make a request.

exception wumpus.errors.InternalServerError(response: aiohttp.client_reqrep.ClientResponse, /, *, json: Optional[Dict[str, Any]] = None, message: Optional[str] = None)

Something went wrong inside of Discord, internally.

exception wumpus.errors.NotFound(response: aiohttp.client_reqrep.ClientResponse, /, *, json: Optional[Dict[str, Any]] = None, message: Optional[str] = None)

What you requested for is not found.

exception wumpus.errors.Unauthorized(response: aiohttp.client_reqrep.ClientResponse, /)

You are not authorized, this should only be raised when you regenerate your token during runtime.

exception wumpus.errors.WumpusError

The base :class`Exception` that all errors related to this library inherit from. This can techinically be used to handle all errors raised by by this library.