Bases

Bases are objects which represent different objects in the discord API. They minify the code written and can help improve readability in your code!

ActionRow

acord.bases.ActionRow(*components: List[acord.bases.components.Component], type: acord.bases.enums.components.ComponentTypes, custom_id: Optional[str] = None, disabled: Optional[bool] = False) None[source]

Activity

acord.bases.Activity(*, name: str, type: int, url: Optional[str] = None, emoji: Optional[Any] = None, state: Optional[str] = None) None[source]

ActivityType

acord.bases.ActivityType(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

AllowedMentions

acord.bases.AllowedMentions(*, roles: Optional[List[int]] = None, users: Optional[List[int]] = None, replied_user: Optional[bool] = False, everyone: Optional[bool] = False, deny_all: Optional[bool] = False, parse: Optional[List[str]] = []) None[source]

ApplicationCommandType

acord.bases.ApplicationCommandType(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

ApplicationFlags

acord.bases.ApplicationFlags(value: int = 0, **kwds: Dict[str, bool])[source]

An enumeration.

AuditLogEvent

acord.bases.AuditLogEvent(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

BaseFlagMeta

acord.bases.BaseFlagMeta(cls, bases, classdict)[source]

Metaclass for Enum

Button

acord.bases.Button(*, type: acord.bases.enums.components.ComponentTypes, custom_id: Optional[str] = None, style: acord.bases.enums.components.ButtonStyles, label: Optional[str] = None, emoji: Optional[acord.models.partials.PartialEmoji] = None, url: Optional[pydantic.networks.AnyHttpUrl] = None, disabled: Optional[bool] = False) None[source]

ButtonStyles

acord.bases.ButtonStyles(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

ChannelTypes

acord.bases.ChannelTypes(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

Component

acord.bases.Component(*, type: acord.bases.enums.components.ComponentTypes, custom_id: Optional[str] = None) None[source]

ComponentTypes

acord.bases.ComponentTypes(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

Embed

acord.bases.Embed(*, title: Optional[str] = None, type: Optional[Literal['rich', 'image', 'video', 'gifv', 'article', 'link']] = 'rich', description: Optional[str] = None, url: Optional[acord.bases.embeds.DiscordImageURL] = None, timestamp: Optional[datetime.datetime] = None, colour: acord.bases.embeds.EmbedColor = None, footer: Optional[acord.bases.embeds.EmbedFooter] = None, image: Optional[acord.bases.embeds.EmbedImage] = None, thumbnail: Optional[acord.bases.embeds.EmbedThumbnail] = None, video: Optional[acord.bases.embeds.EmbedVideo] = None, providor: Optional[acord.bases.embeds.EmbedProvidor] = None, author: Optional[acord.bases.embeds.EmbedAuthor] = None, fields: List[acord.bases.embeds.EmbedField] = []) None[source]

EmbedAuthor

acord.bases.EmbedAuthor(*, name: str, url: Optional[acord.bases.embeds.DiscordImageURL] = None, icon_url: Optional[acord.bases.embeds.DiscordImageURL] = None, proxy_icon_url: Optional[acord.bases.embeds.DiscordImageURL] = None) None[source]

EmbedColor

acord.bases.EmbedColor(color) None[source]

Mixin to provide __str__, __repr__, and __pretty__ methods. See #884 for more details.

__pretty__ is used by [devtools](https://python-devtools.helpmanual.io/) to provide human readable representations of objects.

EmbedField

acord.bases.EmbedField(*, name: str, value: str, inline: Optional[bool] = True) None[source]

EmbedFooter

acord.bases.EmbedFooter(*, text: str, icon_url: Optional[acord.bases.embeds.DiscordImageURL] = None, proxy_icon_url: Optional[acord.bases.embeds.DiscordImageURL] = None) None[source]

EmbedImage

acord.bases.EmbedImage(*, url: acord.bases.embeds.DiscordImageURL, proxy_url: Optional[acord.bases.embeds.DiscordImageURL] = None, height: Optional[int] = None, width: Optional[int] = None) None[source]

EmbedProvidor

acord.bases.EmbedProvidor(*, name: Optional[str] = None, url: Optional[acord.bases.embeds.DiscordImageURL] = None) None[source]

EmbedThumbnail

acord.bases.EmbedThumbnail(*, url: acord.bases.embeds.DiscordImageURL, proxy_url: Optional[acord.bases.embeds.DiscordImageURL] = None, height: Optional[int] = None, width: Optional[int] = None) None[source]

EmbedVideo

acord.bases.EmbedVideo(*, url: Optional[acord.bases.embeds.DiscordImageURL] = None, proxy_url: Optional[acord.bases.embeds.DiscordImageURL] = None, height: Optional[int] = None, width: Optional[int] = None) None[source]

ExplicitContentFilterLevel

acord.bases.ExplicitContentFilterLevel(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

File

acord.bases.File(*, fp: acord.bases.file.FilePointer, position: Optional[int] = 0, filename: Optional[str] = None, spoiler: Optional[bool] = False, is_closed: Optional[bool] = False) None[source]

GuildMessageNotification

acord.bases.GuildMessageNotification(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

Hashable

acord.bases.Hashable()[source]

IMessageFlags

acord.bases.IMessageFlags(cls, bases, classdict)[source]

Metaclass for Enum

Intents

acord.bases.Intents(value: int = 0, **kwds: Dict[str, bool])[source]

Intents are used for accessing certain content through the gateway, without them many of the events wouldn’t work as expected

Usage

All intents are assigned as a attribute, to combine intents, use the | operator, as shown below.

from acord import Intents

myIntents = (
    Intents.GUILDS
    | Intents.GUILD_MESSAGES
    | Intents.GUILD_PRESENCES
    ...
)

If bitwise operators are not to your taste, you can try using BaseFlagMeta.__call__().

Valid Attributes

Listed below are the allowed intent attrs and what events they allow to be used

  • NONE
    • No intents

  • ALL
    • Every intent allowed through the gateway

  • GUILDS
    • GUILD_CREATE

    • GUILD_UPDATE

    • GUILD_DELETE

    • GUILD_ROLE_CREATE

    • GUILD_ROLE_UPDATE

    • GUILD_ROLE_DELETE

    • CHANNEL_CREATE

    • CHANNEL_UPDATE

    • CHANNEL_DELETE

    • CHANNEL_PINS_UPDATE

    • THREAD_CREATE

    • THREAD_UPDATE

    • THREAD_DELETE

    • THREAD_LIST_SYNC

    • THREAD_MEMBER_UPDATE

    • THREAD_MEMBERS_UPDATE

    • STAGE_INSTANCE_CREATE

    • STAGE_INSTANCE_UPDATE

    • STAGE_INSTANCE_DELETE

  • GUILD_MEMBERS
    • GUILD_MEMBER_ADD

    • GUILD_MEMBER_UPDATE

    • GUILD_MEMBER_REMOVE

    • THREAD_MEMBERS_UPDATE

  • GUILD_BANS
    • GUILD_BAN_ADD

    • GUILD_BAN_REMOVE

  • GUILD_EMOJIS_AND_STICKERS
    • GUILD_EMOJIS_UPDATE

    • GUILD_STICKERS_UPDATE

  • GUILD_INTEGRATIONS
    • GUILD_INTEGRATIONS_UPDATE

    • INTEGRATION_CREATE

    • INTEGRATION_UPDATE

    • INTEGRATION_DELETE

  • GUILD_WEBHOOKS
    • WEBHOOKS_UPDATE

  • GUILD_INVITES
    • INVITE_CREATE

    • INVITE_DELETE

  • GUILD_VOICE_STATES
    • VOICE_STATE_UPDATE

  • GUILD_PRESENCES
    • PRESENCE_UPDATE

  • GUILD_MESSAGES
    • MESSAGE_CREATE

    • MESSAGE_UPDATE

    • MESSAGE_DELETE

    • MESSAGE_DELETE_BULK

  • GUILD_MESSAGE_REACTIONS
    • MESSAGE_REACTION_ADD

    • MESSAGE_REACTION_REMOVE

    • MESSAGE_REACTION_REMOVE_ALL

    • MESSAGE_REACTION_REMOVE_EMOJI

  • GUILD_MESSAGE_TYPING
    • TYPING_START

  • DIRECT_MESSAGES
    • MESSAGE_CREATE

    • MESSAGE_UPDATE

    • MESSAGE_DELETE

    • CHANNEL_PINS_UPDATE

  • DIRECT_MESSAGE_REACTIONS
    • MESSAGE_REACTION_ADD

    • MESSAGE_REACTION_REMOVE

    • MESSAGE_REACTION_REMOVE_ALL

    • MESSAGE_REACTION_REMOVE_EMOJI

  • DIRECT_MESSAGE_TYPING
    • TYPING_START

InteractionCallback

acord.bases.InteractionCallback(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

InteractionType

acord.bases.InteractionType(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

MFALevel

acord.bases.MFALevel(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

MessageFlags

acord.bases.MessageFlags(value: int = 0, **kwds: Dict[str, bool])[source]

Message flags are used by discord to parse your message in a specified way.

Example

For example, MessageFlags.SUPPRESS_EMBEDS tells discord to not allow embeds

All message flags are assigned as a attribute, to combine flags, use the | operator, as shown below.

from acord import MessageFlags

myFlags = (
    MessageFlags.CROSSPOSTED
    | MessageFlags.IS_CROSSPOSTED
    ...
)

If bitwise operators are not to your taste, you can try using BaseFlagMeta.__call__().

NSFWLevel

acord.bases.NSFWLevel(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

Permissions

acord.bases.Permissions(value: int = 0, **kwds: Dict[str, bool])[source]

Permissions define what actions a user can or cannot do, they are set and follow a hierarchy. If you try break the hierarchy 403 will be raised. E.g. Banning a member with a higher role then the client.

Usage

from acord import Permissions
permissions = (
    Permissions.MANAGE_MESSAGES
    | Permissions.BAN_MEMBER
    | Permissions.KICK_MEMBERS
)

If bitwise operators are not to your taste, you can try using BaseFlagMeta.__call__().

PermissionsOverwrite

acord.bases.PermissionsOverwrite(*, id: int, type: Literal[0, 1], allow: acord.bases.flags.permissions.Permissions, deny: acord.bases.flags.permissions.Permissions) None[source]

PremiumTierLevel

acord.bases.PremiumTierLevel(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

Presence

acord.bases.Presence(*, activities: List[acord.bases.presence.Activity], status: Optional[acord.bases.presence.StatusType] = StatusType.online, afk: Optional[bool] = False, since: Optional[float] = None) None[source]

ScheduledEventEntityType

acord.bases.ScheduledEventEntityType(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

ScheduledEventPrivacyLevel

acord.bases.ScheduledEventPrivacyLevel(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

ScheduledEventStatus

acord.bases.ScheduledEventStatus(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

SelectMenu

acord.bases.SelectMenu(*, type: acord.bases.enums.components.ComponentTypes, custom_id: Optional[str] = None, options: List[acord.bases.components.SelectOption], placeholder: Optional[str] = None, min_values: Optional[int] = None, max_values: Optional[int] = None, disabled: Optional[bool] = False) None[source]

SelectOption

acord.bases.SelectOption(*, label: str, value: str, description: str, emoji: Optional[acord.models.partials.PartialEmoji] = None, default: Optional[bool] = None) None[source]

StagePrivacyLevel

acord.bases.StagePrivacyLevel(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

StatusType

acord.bases.StatusType(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

SystemChannelFlags

acord.bases.SystemChannelFlags(value: int = 0, **kwds: Dict[str, bool])[source]

An enumeration.

TextInput

acord.bases.TextInput(*, type: acord.bases.enums.components.ComponentTypes, custom_id: Optional[str] = None, style: acord.bases.enums.components.TextInputStyle, label: str, min_length: Optional[int] = None, max_length: Optional[int] = None, required: Optional[bool] = False, value: Optional[str] = None, placeholder: Optional[str] = None) None[source]

TextInputStyle

acord.bases.TextInputStyle(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

UserFlags

acord.bases.UserFlags(value: int = 0, **kwds: Dict[str, bool])[source]

User flags allow you to identify users based on there badges given by discord

Usage

Checking for single flags

from acord import UserFlags

isStaff = User.flags & UserFlags.STAFF == UserFlags.STAFF

However, when checking for multiple flags, you need to use the | for all flags you want

from acord import UserFlags
flags = (
    UserFlags.STAFF
    | UserFlags.PARTNER
)

hasFlags = User.flags & flags == flags

If bitwise operators are not to your taste, you can try using BaseFlagMeta.__call__().

acord.bases.NONE

Value of 0, or NO flags

acord.bases.STAFF

discord staff flag

acord.bases.PARTNER

discord partner flag

acord.bases.HYPESQUAD

hypesquad events coordinator flag

acord.bases.HYPESQUAD_BRAVERY

hypesquad house bravery flag

acord.bases.HYPESQUAD_BRILLIANCE

hypesquad house brilliance flag

acord.bases.HYPESQUAD_BALANCE

hypesquad house bravery flag

acord.bases.BUG_HUNTER_LEVEL_1

bug hunter level 1 flag

acord.bases.BUG_HINTER_LEVEL_2

bug hunter level 2 flag

acord.bases.PREMIUM_EARLY_SUPPORTER

early Nitro Supporter

acord.bases.TEAM_PSEUDO_USER

user is a Team

acord.bases.VERIFIED_BOT

verified bot flag

acord.bases.VERIFIED_DEVELOPER

early verified bot developer flag

acord.bases.CERTIFIED_MODERATOR

discord certified moderator flag

VerificationLevel

acord.bases.VerificationLevel(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

VoiceQuality

acord.bases.VoiceQuality(value, names=None, *, module=None, qualname=None, type=None, start=1)[source]

An enumeration.

competing

acord.bases.competing(name: str, *, status: acord.bases.presence.StatusType = StatusType.online) acord.bases.presence.Presence[source]

game

acord.bases.game(name: str, *, status: acord.bases.presence.StatusType = StatusType.online) acord.bases.presence.Presence[source]

listening

acord.bases.listening(name: str, *, status: acord.bases.presence.StatusType = StatusType.online) acord.bases.presence.Presence[source]

streaming

acord.bases.streaming(name: str, url: str, *, status: acord.bases.presence.StatusType = StatusType.online) acord.bases.presence.Presence[source]

watching

acord.bases.watching(name: str, *, status: acord.bases.presence.StatusType = StatusType.online) acord.bases.presence.Presence[source]