@discord-types/apiTypes
API reference for @discord-types/apiTypes
@discord-types/apiTypes
Types
Partial
Raw Type
type Partial<T> = MakePartial<T>Snowflake
Raw Type
type Snowflake = stringPremiumTypes
https://discord.com/developers/docs/resources/user#user-object-premium-types
Raw Type
-- https://discord.com/developers/docs/resources/user#user-object-premium-types
type PremiumTypes = numberLanguageLocales
https://discord.com/developers/docs/reference#locales
Raw Type
-- https://discord.com/developers/docs/reference#locales
type LanguageLocales = "id" | "da" | "de" | "en-GB" | "en-US" | "es-ES" | "fr" | "hr" | "it" | "lt" | "nl" | "no" | "pl" | "pt-BR" | "ro" | "fi" | "sv-SE" | "vi" | "tr" | "cs" | "el" | "bg" | "ru" | "uk" | "hi" | "th" | "zn-CH" | "ja" | "ko"Union with variants:
Variant 1
"id"Variant 2
"da"Variant 3
"de"Variant 4
"en-GB"Variant 5
"en-US"Variant 6
"es-ES"Variant 7
"fr"Variant 8
"hr"Variant 9
"it"Variant 10
"lt"Variant 11
"nl"Variant 12
"no"Variant 13
"pl"Variant 14
"pt-BR"Variant 15
"ro"Variant 16
"fi"Variant 17
"sv-SE"Variant 18
"vi"Variant 19
"tr"Variant 20
"cs"Variant 21
"el"Variant 22
"bg"Variant 23
"ru"Variant 24
"uk"Variant 25
"hi"Variant 26
"th"Variant 27
"zn-CH"Variant 28
"ja"Variant 29
"ko"MembershipState
https://discord.com/developers/docs/topics/teams#data-models-membership-state-enum
Raw Type
-- https://discord.com/developers/docs/topics/teams#data-models-membership-state-enum
type MembershipState = numberTeamMemberRole
https://discord.com/developers/docs/topics/teams#data-models-membership-state-enum
Raw Type
-- https://discord.com/developers/docs/topics/teams#data-models-membership-state-enum
type TeamMemberRole = "Owner" | "Admin" | "Developer" | "Read-only"Union with variants:
Variant 1
"Owner"Variant 2
"Admin"Variant 3
"Developer"Variant 4
"Read-only"VerificationLevel
https://discord.com/developers/docs/resources/guild#guild-object-verification-level
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object-verification-level
type VerificationLevel = numberDefaultMessageNotification
https://discord.com/developers/docs/resources/guild#guild-object-default-message-notification-level
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object-default-message-notification-level
type DefaultMessageNotification = numberExplicitContentFilterLevel
https://discord.com/developers/docs/resources/guild#guild-object-explicit-content-filter-level
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object-explicit-content-filter-level
type ExplicitContentFilterLevel = numberMFALevel
https://discord.com/developers/docs/resources/guild#guild-object-explicit-content-filter-level
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object-explicit-content-filter-level
type MFALevel = numberGuildNSFWLevel
https://discord.com/developers/docs/resources/guild#guild-object-guild-nsfw-level
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object-guild-nsfw-level
type GuildNSFWLevel = numberPremiumTier
https://discord.com/developers/docs/resources/guild#guild-object-premium-tier
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object-premium-tier
type PremiumTier = numberSystemChannelFlags
https://discord.com/developers/docs/resources/guild#guild-object-system-channel-flags
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object-system-channel-flags
type SystemChannelFlags = numberGuildFeature
https://discord.com/developers/docs/resources/guild#guild-object-guild-features
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object-guild-features
type GuildFeature = "ANIMATED_BANNER" | "ANIMATED_ICON" | "APPLICATION_COMMAND_PERMISSIONS_V2" | "AUTO_MODERATION" | "BANNER" | "COMMUNITY" | "CREATOR_MONETIZABLE_PROVISIONAL" | "CREATOR_STORE_PAGE" | "DEVELOPER_SUPPORT_SERVER" | "DISCOVERABLE" | "FEATURABLE" | "INVITES_DISABLED" | "INVITE_SPLASH" | "MEMBER_VERIFICATION_GATE_ENABLED" | "MORE_STICKERS" | "NEWS" | "PARTNERED" | "PREVIEW_ENABLED" | "RAID_ALERTS_DISABLED" | "ROLE_ICONS" | "ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE" | "ROLE_SUBSCRIPTIONS_ENABLED" | "TICKETED_EVENTS_ENABLED" | "VANITY_URL" | "VERIFIED" | "VIP_REGIONS" | "WELCOME_SCREEN_ENABLED"Union with variants:
Variant 1
"ANIMATED_BANNER"Variant 2
"ANIMATED_ICON"Variant 3
"APPLICATION_COMMAND_PERMISSIONS_V2"Variant 4
"AUTO_MODERATION"Variant 5
"BANNER"Variant 6
"COMMUNITY"Variant 7
"CREATOR_MONETIZABLE_PROVISIONAL"Variant 8
"CREATOR_STORE_PAGE"Variant 9
"DEVELOPER_SUPPORT_SERVER"Variant 10
"DISCOVERABLE"Variant 11
"FEATURABLE"Variant 12
"INVITES_DISABLED"Variant 13
"INVITE_SPLASH"Variant 14
"MEMBER_VERIFICATION_GATE_ENABLED"Variant 15
"MORE_STICKERS"Variant 16
"NEWS"Variant 17
"PARTNERED"Variant 18
"PREVIEW_ENABLED"Variant 19
"RAID_ALERTS_DISABLED"Variant 20
"ROLE_ICONS"Variant 21
"ROLE_SUBSCRIPTIONS_AVAILABLE_FOR_PURCHASE"Variant 22
"ROLE_SUBSCRIPTIONS_ENABLED"Variant 23
"TICKETED_EVENTS_ENABLED"Variant 24
"VANITY_URL"Variant 25
"VERIFIED"Variant 26
"VIP_REGIONS"Variant 27
"WELCOME_SCREEN_ENABLED"MutableGuildFeatures
https://discord.com/developers/docs/resources/guild#guild-object-mutable-guild-features
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object-mutable-guild-features
type MutableGuildFeatures = "COMMUNITY" | "DISCOVERABLE" | "INVITES_DISABLED" | "RAID_ALERTS_DISABLED"Union with variants:
Variant 1
"COMMUNITY"Variant 2
"DISCOVERABLE"Variant 3
"INVITES_DISABLED"Variant 4
"RAID_ALERTS_DISABLED"StickerType
https://discord.com/developers/docs/resources/sticker#sticker-object-sticker-types
Raw Type
-- https://discord.com/developers/docs/resources/sticker#sticker-object-sticker-types
type StickerType = numberStickerFormatType
https://discord.com/developers/docs/resources/sticker#sticker-object-sticker-format-types
Raw Type
-- https://discord.com/developers/docs/resources/sticker#sticker-object-sticker-format-types
type StickerFormatType = numberOAuth2Scopes
https://discord.com/developers/docs/topics/oauth2#shared-resources-oauth2-scopes
Raw Type
-- https://discord.com/developers/docs/topics/oauth2#shared-resources-oauth2-scopes
type OAuth2Scopes = "activities.read" | "activities.write" | "applications.builds.read" | "applications.builds.upload" | "applications.commands" | "applications.commands.update" | "applications.commands.permissions.update" | "applications.entitlements" | "applications.store.update" | "bot" | "connections" | "dm_channels.read" | "email" | "gdm.join" | "guilds" | "guilds.join" | "guilds.members.read" | "identify" | "messages.read" | "relationships.read" | "role_connections.write" | "rpc" | "rpc.activities.write" | "rpc.notifications.read" | "rpc.voice.read" | "rpc.voice.write" | "voice" | "webhook.incoming"Union with variants:
Variant 1
"activities.read"Variant 2
"activities.write"Variant 3
"applications.builds.read"Variant 4
"applications.builds.upload"Variant 5
"applications.commands"Variant 6
"applications.commands.update"Variant 7
"applications.commands.permissions.update"Variant 8
"applications.entitlements"Variant 9
"applications.store.update"Variant 10
"bot"Variant 11
"connections"Variant 12
"dm_channels.read"Variant 13
"email"Variant 14
"gdm.join"Variant 15
"guilds"Variant 16
"guilds.join"Variant 17
"guilds.members.read"Variant 18
"identify"Variant 19
"messages.read"Variant 20
"relationships.read"Variant 21
"role_connections.write"Variant 22
"rpc"Variant 23
"rpc.activities.write"Variant 24
"rpc.notifications.read"Variant 25
"rpc.voice.read"Variant 26
"rpc.voice.write"Variant 27
"voice"Variant 28
"webhook.incoming"IntegrationType
https://discord.com/developers/docs/resources/guild#integration-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#integration-object
type IntegrationType = numberApplicationIntegrationType
"twitch" | "youtube" | "discord" | "guild_subscriptions"
Raw Type
-- "twitch" | "youtube" | "discord" | "guild_subscriptions"
-- https://discord.com/developers/docs/resources/application#application-object-application-integration-types
type ApplicationIntegrationType = numberApplicationCommandPermissionType
Raw Type
-- https://discord.com/developers/docs/interactions/application-commands#application-command-permissions-object-application-command-permission-type
type ApplicationCommandPermissionType = numberAutomoderationRuleEventType
Raw Type
-- https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-rule-object-event-types
type AutomoderationRuleEventType = numberAutomoderationRuleTriggerType
Raw Type
-- https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-rule-object-trigger-types
type AutomoderationRuleTriggerType = numberAutomoderationRuleKeywordPresetType
Raw Type
-- https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-rule-object-keyword-preset-types
type AutomoderationRuleKeywordPresetType = numberAutomoderationActionType
Raw Type
-- https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-action-object-action-types
type AutomoderationActionType = numberChannelType
https://discord.com/developers/docs/resources/channel#channel-object-channel-types
Raw Type
-- https://discord.com/developers/docs/resources/channel#channel-object-channel-types
type ChannelType = numberVideoQualityMode
https://discord.com/developers/docs/resources/channel#channel-object-video-quality-modes
Raw Type
-- https://discord.com/developers/docs/resources/channel#channel-object-video-quality-modes
type VideoQualityMode = numberChannelFlags
https://discord.com/developers/docs/resources/channel#channel-object-channel-flags
Raw Type
-- https://discord.com/developers/docs/resources/channel#channel-object-channel-flags
type ChannelFlags = numberSortOrderType
https://discord.com/developers/docs/resources/channel#channel-object-sort-order-types
Raw Type
-- https://discord.com/developers/docs/resources/channel#channel-object-sort-order-types
type SortOrderType = numberForumLayoutType
https://discord.com/developers/docs/resources/channel#channel-object-forum-layout-types
Raw Type
-- https://discord.com/developers/docs/resources/channel#channel-object-forum-layout-types
type ForumLayoutType = numberOverwriteObjectType
https://discord.com/developers/docs/resources/channel#overwrite-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#overwrite-object
type OverwriteObjectType = numberEntitlementType
https://discord.com/developers/docs/monetization/entitlements#entitlement-object-entitlement-types
Raw Type
-- https://discord.com/developers/docs/monetization/entitlements#entitlement-object-entitlement-types
type EntitlementType = numberActivityType
https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-types
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-types
type ActivityType = numberPrivacyLevel
https://discord.com/developers/docs/resources/stage-instance#stage-instance-object-privacy-level
Raw Type
-- https://discord.com/developers/docs/resources/stage-instance#stage-instance-object-privacy-level
type PrivacyLevel = numberGuildScheduledEventStatus
Raw Type
-- https://discord.com/developers/docs/resources/guild-scheduled-event#guild-scheduled-event-object-guild-scheduled-event-status
type GuildScheduledEventStatus = numberGuildScheduledEventEntityType
Raw Type
-- https://discord.com/developers/docs/resources/guild-scheduled-event#guild-scheduled-event-object-guild-scheduled-event-entity-types
type GuildScheduledEventEntityType = numberIntegrationExpireBehaviours
https://discord.com/developers/docs/resources/guild#integration-object-integration-expire-behaviors
Raw Type
-- https://discord.com/developers/docs/resources/guild#integration-object-integration-expire-behaviors
type IntegrationExpireBehaviours = numberInteractionType
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-interaction-type
type InteractionType = numberEmbedType
https://discord.com/developers/docs/resources/message#embed-object-embed-types
Raw Type
-- https://discord.com/developers/docs/resources/message#embed-object-embed-types
type EmbedType = "Rich" | "Image" | "Video" | "GIFV" | "Article" | "Link" | "PollResult"Union with variants:
Variant 1
"Rich"Variant 2
"Image"Variant 3
"Video"Variant 4
"GIFV"Variant 5
"Article"Variant 6
"Link"Variant 7
"PollResult"MessageType
https://discord.com/developers/docs/resources/channel#message-object-message-types
Raw Type
-- https://discord.com/developers/docs/resources/channel#message-object-message-types
type MessageType = numberMessageActivityType
https://discord.com/developers/docs/resources/channel#message-object-message-activity-types
Raw Type
-- https://discord.com/developers/docs/resources/channel#message-object-message-activity-types
type MessageActivityType = numberButtonStyle
https://discord.com/developers/docs/interactions/message-components#button-object-button-styles
Raw Type
-- https://discord.com/developers/docs/interactions/message-components#button-object-button-styles
type ButtonStyle = numberTextInputStyles
Raw Type
-- https://discord.com/developers/docs/interactions/message-components#text-input-object-text-input-styles
type TextInputStyles = numberPollLayoutType
https://discord.com/developers/docs/resources/poll#layout-type
Raw Type
-- https://discord.com/developers/docs/resources/poll#layout-type
type PollLayoutType = numberApplicationCommandOptionType
Raw Type
-- https://discord.com/developers/docs/interactions/application-commands#application-command-object-application-command-option-type
type ApplicationCommandOptionType = numberInteractionContextType
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-interaction-context-types
type InteractionContextType = numberInviteTypes
https://discord.com/developers/docs/resources/invite#invite-object-invite-types
Raw Type
-- https://discord.com/developers/docs/resources/invite#invite-object-invite-types
type InviteTypes = numberInviteTargetTypes
https://discord.com/developers/docs/resources/invite#invite-object-invite-target-types
Raw Type
-- https://discord.com/developers/docs/resources/invite#invite-object-invite-target-types
type InviteTargetTypes = numberReactionType
https://discord.com/developers/docs/resources/channel#get-reactions-reaction-types
Raw Type
-- https://discord.com/developers/docs/resources/channel#get-reactions-reaction-types
type ReactionType = numberApplicationRoleConnectionMetadataType
Raw Type
-- https://discord.com/developers/docs/resources/application-role-connection-metadata#application-role-connection-metadata-object-application-role-connection-metadata-type
type ApplicationRoleConnectionMetadataType = numberApplicationCommandType
Raw Type
-- https://discord.com/developers/docs/interactions/application-commands#application-command-object-application-command-types
type ApplicationCommandType = numberAuditLogEventType
https://discord.com/developers/docs/resources/audit-log#audit-log-entry-object-audit-log-events
Raw Type
-- https://discord.com/developers/docs/resources/audit-log#audit-log-entry-object-audit-log-events
type AuditLogEventType = numberWebhookType
https://discord.com/developers/docs/resources/webhook#webhook-object-webhook-types
Raw Type
-- https://discord.com/developers/docs/resources/webhook#webhook-object-webhook-types
type WebhookType = numberOnboardingMode
https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-mode
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-mode
type OnboardingMode = numberPromptTypes
https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
type PromptTypes = numberConnectionObjectServices
https://discord.com/developers/docs/resources/user#connection-object-services
Raw Type
-- https://discord.com/developers/docs/resources/user#connection-object-services
type ConnectionObjectServices = "battlenet" | "bungie" | "domain" | "ebay" | "epicgames" | "facebook" | "github" | "instagram" | "leagueoflegends" | "paypal" | "playstation" | "reddit" | "riotgames" | "spotify" | "skype" | "stream" | "tiktok" | "twitch" | "twitter" | "xbox" | "youtube"Union with variants:
Variant 1
"battlenet"Variant 2
"bungie"Variant 3
"domain"Variant 4
"ebay"Variant 5
"epicgames"Variant 6
"facebook"Variant 7
"github"Variant 8
"instagram"Variant 9
"leagueoflegends"Variant 10
"paypal"Variant 11
"playstation"Variant 12
"reddit"Variant 13
"riotgames"Variant 14
"spotify"Variant 15
"skype"Variant 16
"stream"Variant 17
"tiktok"Variant 18
"twitch"Variant 19
"twitter"Variant 20
"xbox"Variant 21
"youtube"AllowedMentionTypes
https://discord.com/developers/docs/resources/channel#allowed-mentions-object-allowed-mention-types
Raw Type
-- https://discord.com/developers/docs/resources/channel#allowed-mentions-object-allowed-mention-types
type AllowedMentionTypes = "roles" | "users" | "everyone"Union with variants:
Variant 1
"roles"Variant 2
"users"Variant 3
"everyone"ConnectionVisibilityTypes
https://discord.com/developers/docs/resources/user#connection-object-visibility-types
Raw Type
-- https://discord.com/developers/docs/resources/user#connection-object-visibility-types
type ConnectionVisibilityTypes = numberMessageReferenceType
https://discord.com/developers/docs/resources/channel#message-reference-types
Raw Type
-- https://discord.com/developers/docs/resources/channel#message-reference-types
type MessageReferenceType = numberGuildMemberFlags
https://discord.com/developers/docs/resources/guild#guild-member-object-guild-member-flags
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-member-object-guild-member-flags
type GuildMemberFlags = numberInteractionCallbackType
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-response-object-interaction-callback-type
type InteractionCallbackType = numberActivityTimestampObject
https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-timestamps
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-timestamps
type ActivityTimestampObject = {
start: number,
-- Unix time (in milliseconds) of when the activity started
nil"end"nil: number
}ActivityEmojiObject
https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-emoji
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-emoji
type ActivityEmojiObject = {
name: string,
-- Name of the emoji
id: Snowflake,
-- ID of the emoji
animated: boolean?
}ActivityPartyObject
https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-party
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-party
type ActivityPartyObject = {
id: string,
-- ID of the party
size: {number}
}ActivityAssetsObject
https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-assets
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-assets
type ActivityAssetsObject = {
large_image: string,
-- https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-asset-image
large_text: string,
-- Text displayed when hovering over the large image of the activity
small_image: string,
-- https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-asset-image
small_text: string
}ActivitySecretsObject
https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-secrets
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-secrets
type ActivitySecretsObject = {
join: string?,
-- Secret for joining a party
spectate: string?,
-- Secret for spectating a game
match: string?
}ActivityButtonsObject
https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-buttons
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-buttons
type ActivityButtonsObject = {
label: string,
-- Text shown on the button (1-32 characters)
url: string
}ActivityObject
https://discord.com/developers/docs/topics/gateway-events#activity-object
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#activity-object
type ActivityObject = {
name: string,
-- Activity's name
type: number,
-- Activity's type
url: string?,
-- Stream URL, is validated when type is 1
created_at: number,
-- Unix timestamp (in milliseconds) of when the activity was added to the user's session
timestamps: ActivityTimestampObject,
-- Unix timestamps for start and/or end of the game
application_id: Snowflake,
-- Application ID for the game
details: string?,
-- What the player is currently doing
state: string?,
-- User's current party status, or text used for a custom status
emoji: ActivityEmojiObject?,
-- Emoji used for a custom status
party: ActivityPartyObject?,
-- Information for the current party of the player
assets: ActivityAssetsObject?,
-- Images for the presence and their hover texts
secrets: ActivitySecretsObject?,
-- Secrets for Rich Presence joining and spectating
instance: boolean?,
-- Whether or not the activity is an instanced game session
flags: number?,
-- Activity flags ORd together, describes what the payload includes
buttons: {ActivityButtonsObject}?
}| Prop | Type | Description |
|---|---|---|
name | - | |
type | - | |
url? | - | |
created_at | - | |
timestamps | - | |
application_id | - | |
details? | - | |
state? | - | |
emoji? | - | |
party? | - | |
assets? | - | |
secrets? | - | |
instance? | - | |
flags? | - | |
buttons? | - |
PresenceObject
https://discord.com/developers/docs/topics/gateway-events#update-presence
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#update-presence
type PresenceObject = {
since: number,
-- Unix time (in milliseconds) of when the client went idle, or null if the client is not idle
activities: {ActivityObject},
-- User's activities
status: string,
-- User's new status
afk: boolean
}| Prop | Type | Description |
|---|---|---|
since | - | |
activities | - | |
status | - | |
afk | - |
IdentifyPropertiesObject
https://discord.com/developers/docs/topics/gateway-events#identify-identify-connection-properties
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#identify-identify-connection-properties
type IdentifyPropertiesObject = {
os: string,
browser: string,
device: string
}AvatarDecorationDataObject
https://discord.com/developers/docs/resources/user#avatar-decoration-data-object
Raw Type
-- https://discord.com/developers/docs/resources/user#avatar-decoration-data-object
type AvatarDecorationDataObject = {
asset: string,
-- the avatar decoration hash
sku_id: Snowflake
}UserObject
https://discord.com/developers/docs/resources/user#user-object
Raw Type
-- https://discord.com/developers/docs/resources/user#user-object
type UserObject = {
id: Snowflake,
-- the user's id
username: string,
-- the user's username, not unique across the platform
discriminator: string,
-- the user's Discord-tag
global_name: string,
-- the user's display name, if it is set. For bots, this is the application name
avatar: string,
-- the user's avatar hash
bot: boolean?,
-- whether the user belongs to an OAuth2 application
system: boolean?,
-- whether the user is an Official Discord System user (part of the urgent message system)
mfa_enabled: boolean?,
-- whether the user has two factor enabled on their account
banner: string?,
-- the user's banner hash
accent_color: number?,
-- the user's banner color encoded as an integer representation of hexadecimal color code
locale: LanguageLocales?,
-- the user's chosen language option
verified: boolean?,
-- whether the email on this account has been verified
email: string?,
-- the user's email
flags: number?,
-- the flags on a user's account
premium_type: PremiumTypes?,
-- the type of Nitro subscription on a user's account
public_flags: number?,
-- the public flags on a user's account
avatar_decoration_data: AvatarDecorationDataObject?
}| Prop | Type | Description |
|---|---|---|
id | - | |
username | - | |
discriminator | - | |
global_name | - | |
avatar | - | |
bot? | - | |
system? | - | |
mfa_enabled? | - | |
banner? | - | |
accent_color? | - | |
locale? | - | |
verified? | - | |
email? | - | |
flags? | - | |
premium_type? | - | |
public_flags? | - | |
avatar_decoration_data? | - |
UnavailableGuildObject
https://discord.com/developers/docs/resources/guild#unavailable-guild-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#unavailable-guild-object
type UnavailableGuildObject = {
id: Snowflake,
-- guild id
unavailable: boolean
}TeamMemberObject
https://discord.com/developers/docs/topics/teams#data-models-team-member-object
Raw Type
-- https://discord.com/developers/docs/topics/teams#data-models-team-member-object
type TeamMemberObject = {
membership_state: MembershipState,
-- User's membership state on the team
team_id: Snowflake,
-- ID of the parent team of which they are a member
user: UserObject,
-- Avatar, discriminator, ID, and username of the user
role: TeamMemberRole
}| Prop | Type | Description |
|---|---|---|
membership_state | - | |
team_id | - | |
user | - | |
role | - |
TeamObject
https://discord.com/developers/docs/topics/teams#data-models-team-object
Raw Type
-- https://discord.com/developers/docs/topics/teams#data-models-team-object
type TeamObject = {
icon: string,
-- Hash of the image of the team's icon
id: Snowflake,
-- Unique ID of the team
members: {TeamMemberObject},
-- Members of the team
name: string,
-- Name of the team
owner_user_id: Snowflake
}| Prop | Type | Description |
|---|---|---|
icon | - | |
id | - | |
members | - | |
name | - | |
owner_user_id | - |
GuildRoleTagObject
https://discord.com/developers/docs/topics/permissions#role-object-role-tags-structure
Raw Type
-- https://discord.com/developers/docs/topics/permissions#role-object-role-tags-structure
type GuildRoleTagObject = {
bot_id: Snowflake?,
-- the id of the bot this role belongs to
integration_id: Snowflake?,
-- the id of the integration this role belongs to
premium_subscriber: nil,
-- whether this is the guild's Booster role
subscription_listing_id: Snowflake,
-- the id of this role's subscription sku and listing
available_for_purchase: nil,
-- whether this role is available for purchase
guild_connections: nil
}| Prop | Type | Description |
|---|---|---|
bot_id? | - | |
integration_id? | - | |
premium_subscriber | - | |
subscription_listing_id | - | |
available_for_purchase | - | |
guild_connections | - |
GuildRoleObject
https://discord.com/developers/docs/topics/permissions#role-object
Raw Type
-- https://discord.com/developers/docs/topics/permissions#role-object
type GuildRoleObject = {
id: Snowflake,
-- role id
name: string,
-- role name
color: number,
-- integer representation of hexadecimal color code
hoist: boolean,
-- if this role is pinned in the user listing
icon: string?,
-- role icon hash
unicode_emoji: string?,
-- role unicode emoji
position: number,
-- position of this role (roles with the same position are sorted by id)
permissions: string,
-- permission bit set
managed: boolean,
-- whether this role is managed by an integration
mentionable: boolean,
-- whether this role is mentionable
tags: GuildRoleTagObject?,
-- the tags this role has
flags: number
}| Prop | Type | Description |
|---|---|---|
id | - | |
name | - | |
color | - | |
hoist | - | |
icon? | - | |
unicode_emoji? | - | |
position | - | |
permissions | - | |
managed | - | |
mentionable | - | |
tags? | - | |
flags | - |
EmojiObject
https://discord.com/developers/docs/resources/emoji#emoji-object
Raw Type
-- https://discord.com/developers/docs/resources/emoji#emoji-object
type EmojiObject = {
id: Snowflake?,
-- emoji id
name: string,
-- emoji name
roles: {Snowflake}?,
-- roles allowed to use this emoji
user: UserObject?,
-- user that created this emoji
require_colons: boolean?,
-- whether this emoji must be wrapped in colons
managed: boolean?,
-- whether this emoji is managed
animated: boolean?,
-- whether this emoji is animated
available: boolean?
}| Prop | Type | Description |
|---|---|---|
id? | - | |
name | - | |
roles? | - | |
user? | - | |
require_colons? | - | |
managed? | - | |
animated? | - | |
available? | - |
WelcomeScreenChannelObject
Raw Type
-- https://discord.com/developers/docs/resources/guild#welcome-screen-object-welcome-screen-channel-structure
type WelcomeScreenChannelObject = {
channel_id: Snowflake?,
-- the channel's id
description: string?,
-- the description shown for the channel
emoji_id: Snowflake?,
-- the emoji id, if the emoji is custom
emoji_name: string?
}| Prop | Type | Description |
|---|---|---|
channel_id? | - | |
description? | - | |
emoji_id? | - | |
emoji_name? | - |
WelcomeScreenObject
https://discord.com/developers/docs/resources/guild#welcome-screen-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#welcome-screen-object
type WelcomeScreenObject = {
description: string,
-- the server description shown in the welcome screen
welcome_channels: {WelcomeScreenChannelObject}
}| Prop | Type | Description |
|---|---|---|
description | - | |
welcome_channels | - |
StickerObject
https://discord.com/developers/docs/resources/sticker#sticker-object
Raw Type
-- https://discord.com/developers/docs/resources/sticker#sticker-object
type StickerObject = {
id: Snowflake,
-- id of the sticker
pack_id: Snowflake,
-- for standard stickers, id of the pack the sticker is from
name: string,
-- name of the sticker
description: string?,
-- description of the sticker
tags: string,
-- autocomplete/suggestion tags for the sticker (max 200 characters)
asset: string?,
-- Deprecated previously the sticker asset hash, now an empty string
type: StickerType,
-- type of sticker
format_type: StickerFormatType,
-- type of sticker format
available: boolean?,
-- whether this guild sticker can be used, may be false due to loss of Server Boosts
guild_id: Snowflake?,
-- id of the guild that owns this sticker
user: UserObject?,
-- the user that uploaded the guild sticker
sort_value: number?
}| Prop | Type | Description |
|---|---|---|
id | - | |
pack_id | - | |
name | - | |
description? | - | |
tags | - | |
asset? | - | |
type | - | |
format_type | - | |
available? | - | |
guild_id? | - | |
user? | - | |
sort_value? | - |
GuildObject
https://discord.com/developers/docs/resources/guild#guild-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-object
type GuildObject = {
id: Snowflake?,
-- guild id
name: string?,
-- guild name (2-100 characters, excluding trailing and leading whitespace)
icon: string?,
-- icon hash
icon_hash: string?,
-- icon hash, returned when in the template object
splash: string?,
-- splash hash
discovery_splash: string?,
-- discovery splash hash; only present for guilds with the "DISCOVERABLE" feature
owner: boolean?,
-- true if the user is the owner of the guild
owner_id: Snowflake?,
-- id of owner
permissions: string?,
-- total permissions for the user in the guild (excludes overwrites and implicit permissions)
region: string?,
-- voice region id for the guild (deprecated)
afk_channel_id: Snowflake?,
-- id of afk channel
afk_timeout: number?,
-- afk timeout in seconds
widget_enabled: boolean?,
-- true if the server widget is enabled
widget_channel_id: Snowflake?,
-- the channel id that the widget will generate an invite to, or null if set to no invite
verification_level: VerificationLevel?,
-- verification level required for the guild
default_message_notifications: DefaultMessageNotification?,
-- default message notifications level
explicit_content_filter: ExplicitContentFilterLevel?,
-- explicit content filter level
roles: {GuildRoleObject}?,
-- roles in the guild
emojis: {EmojiObject}?,
-- custom guild emojis
features: {GuildFeature}?,
-- enabled guild features
mfa_level: MFALevel?,
-- required MFA level for the guild
application_id: Snowflake?,
-- application id of the guild creator if it is bot-created
system_channel_id: Snowflake?,
-- the id of the channel where guild notices such as welcome messages and boost events are posted
system_channel_flags: SystemChannelFlags?,
-- system channel flags
rules_channel_id: Snowflake?,
-- the id of the channel where Community guilds can display rules and/or guidelines
max_presences: number?,
-- the maximum number of presences for the guild (null is always returned, apart from the largest of guilds)
max_members: number?,
-- the maximum number of members for the guild
vanity_url_code: string?,
-- the vanity url code for the guild
description: string?,
-- the description of a guild
banner: string?,
-- banner hash
premium_tier: PremiumTier?,
-- premium tier (Server Boost level)
premium_subscription_count: number?,
-- the number of boosts this guild currently has
preferred_locale: LanguageLocales?,
-- the preferred locale of a Community guild; used in server discovery and notices from Discord, and sent in interactions; defaults to "en-US"
public_updates_channel_id: Snowflake?,
-- the id of the channel where admins and moderators of Community guilds receive notices from Discord
max_video_channel_users: number?,
-- the maximum amount of users in a video channel
max_stage_video_channel_users: number?,
-- the maximum amount of users in a stage video channel
approximate_member_count: number?,
-- approximate number of members in this guild, returned from the GET /guilds/<id> and /users/@me/guilds endpoints when with_counts is true
approximate_presence_count: number?,
-- approximate number of non-offline members in this guild, returned from the GET /guilds/<id> and /users/@me/guilds endpoints when with_counts is true
welcome_screen: WelcomeScreenObject?,
-- the welcome screen of a Community guild, shown to new members, returned in an Invite's guild object
nsfw_level: GuildNSFWLevel?,
-- guild NSFW level
stickers: {StickerObject}?,
-- custom guild stickers
premium_progress_bar_enabled: boolean?,
-- whether the guild has the boost progress bar enabled
safety_alerts_channel_id: Snowflake?
}| Prop | Type | Description |
|---|---|---|
id? | - | |
name? | - | |
icon? | - | |
icon_hash? | - | |
splash? | - | |
discovery_splash? | - | |
owner? | - | |
owner_id? | - | |
permissions? | - | |
region? | - | |
afk_channel_id? | - | |
afk_timeout? | - | |
widget_enabled? | - | |
widget_channel_id? | - | |
verification_level? | - | |
default_message_notifications? | - | |
explicit_content_filter? | - | |
roles? | - | |
emojis? | - | |
features? | - | |
mfa_level? | - | |
application_id? | - | |
system_channel_id? | - | |
system_channel_flags? | - | |
rules_channel_id? | - | |
max_presences? | - | |
max_members? | - | |
vanity_url_code? | - | |
description? | - | |
banner? | - | |
premium_tier? | - | |
premium_subscription_count? | - | |
preferred_locale? | - | |
public_updates_channel_id? | - | |
max_video_channel_users? | - | |
max_stage_video_channel_users? | - | |
approximate_member_count? | - | |
approximate_presence_count? | - | |
welcome_screen? | - | |
nsfw_level? | - | |
stickers? | - | |
premium_progress_bar_enabled? | - | |
safety_alerts_channel_id? | - |
InstallParamsObject
https://discord.com/developers/docs/resources/application#install-params-object
Raw Type
-- https://discord.com/developers/docs/resources/application#install-params-object
type InstallParamsObject = {
scopes: {OAuth2Scopes},
-- Scopes to add the application to the server with
permissions: string
}| Prop | Type | Description |
|---|---|---|
scopes | - | |
permissions | - |
ApplicationObject
https://discord.com/developers/docs/resources/application#application-object
Raw Type
-- https://discord.com/developers/docs/resources/application#application-object
type ApplicationObject = {
id: Snowflake,
-- ID of the app
name: string,
-- Name of the app
icon: string?,
-- Icon hash of the app
description: string,
-- Description of the app
rpc_origins: {string}?,
-- List of RPC origin URLs, if RPC is enabled
bot_public: boolean,
-- When false, only the app owner can add the app to guilds
bot_require_code_grant: boolean,
-- When true, the app's bot will only join upon completion of the full OAuth2 code grant flow
bot: UserObject?,
-- Partial user object for the bot user associated with the app
terms_of_service_url: string?,
-- URL of the app's Terms of Service
privacy_policy_url: string?,
-- URL of the app's Privacy Policy
owner: UserObject?,
-- Partial user object for the owner of the app
summary: string,
-- deprecated and will be removed in v11. An empty string.
verify_key: string,
-- Hex encoded key for verification in interactions and the GameSDK's GetTicket
team: TeamObject?,
-- If the app belongs to a team, this will be a list of the members of that team
guild_id: Snowflake?,
-- Guild associated with the app. For example, a developer support server.
guild: GuildObject?,
-- Partial object of the associated guild
primary_sku_id: Snowflake?,
-- If this app is a game sold on Discord, this field will be the id of the "Game SKU" that is created, if exists
slug: string?,
-- If this app is a game sold on Discord, this field will be the URL slug that links to the store page
cover_image: string?,
-- App's default rich presence invite cover image hash
flags: number?,
-- App's public flags
approximate_guild_count: number?,
-- Approximate count of guilds the app has been added to
redirect_uris: {string}?,
-- Array of redirect URIs for the app
interactions_endpoint_url: string?,
-- Interactions endpoint URL for the app
role_connections_verification_url: string?,
-- Role connection verification URL for the app
tags: {string}?,
-- List of tags describing the content and functionality of the app. Max of 5 tags.
install_params: InstallParamsObject?,
-- Settings for the app's default in-app authorization link, if enabled
integration_types_config: {
[ApplicationIntegrationType]: boolean
}?,
-- In preview. Default scopes and permissions for each supported installation context. Value for each key is an integration type configuration object
custom_install_url: string?
}| Prop | Type | Description |
|---|---|---|
id | - | |
name | - | |
icon? | - | |
description | - | |
rpc_origins? | - | |
bot_public | - | |
bot_require_code_grant | - | |
bot? | - | |
terms_of_service_url? | - | |
privacy_policy_url? | - | |
owner? | - | |
summary | - | |
verify_key | - | |
team? | - | |
guild_id? | - | |
guild? | - | |
primary_sku_id? | - | |
slug? | - | |
cover_image? | - | |
flags? | - | |
approximate_guild_count? | - | |
redirect_uris? | - | |
interactions_endpoint_url? | - | |
role_connections_verification_url? | - | |
tags? | - | |
install_params? | - | |
integration_types_config? | - | |
custom_install_url? | - |
GuildApplicationCommandPermissionObject
Raw Type
-- https://discord.com/developers/docs/interactions/application-commands#application-command-permissions-object-application-command-permissions-structure
type GuildApplicationCommandPermissionObject = {
id: Snowflake,
-- ID of the role, user, or channel. It can also be a permission constant
type: ApplicationCommandPermissionType,
-- role (1), user (2), or channel (3)
permission: boolean
}| Prop | Type | Description |
|---|---|---|
id | - | |
type | - | |
permission | - |
GuildApplicationCommandPermissionsObject
Raw Type
-- https://discord.com/developers/docs/interactions/application-commands#application-command-permissions-object-guild-application-command-permissions-structure
type GuildApplicationCommandPermissionsObject = {
id: Snowflake,
-- ID of the command or the application ID
application_id: Snowflake,
-- ID of the application the command belongs to
guild_id: Snowflake,
-- ID of the guild
permissions: {GuildApplicationCommandPermissionObject}
}| Prop | Type | Description |
|---|---|---|
id | - | |
application_id | - | |
guild_id | - | |
permissions | - |
AutomoderationRuleTriggerMetadataObject
Raw Type
-- https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-rule-object-trigger-metadata
type AutomoderationRuleTriggerMetadataObject = {
keyword_filter: {string},
-- substrings which will be searched for in content (Maximum of 1000)
regex_patterns: {string},
-- regular expression patterns which will be matched against content (Maximum of 10)
presets: {AutomoderationRuleKeywordPresetType},
-- the internally pre-defined wordsets which will be searched for in content
allow_list: {string},
-- substrings which should not trigger the rule (Maximum of 100 or 1000)
mention_total_limit: number,
-- total number of unique role and user mentions allowed per message (Maximum of 50)
mention_raid_protection_enabled: boolean
}| Prop | Type | Description |
|---|---|---|
keyword_filter | - | |
regex_patterns | - | |
presets | - | |
allow_list | - | |
mention_total_limit | - | |
mention_raid_protection_enabled | - |
AutmoderationActionMetadataObject
Raw Type
-- https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-action-object-action-metadata
type AutmoderationActionMetadataObject = {
channel_id: Snowflake,
-- channel to which user content should be logged
duration_seconds: number,
-- timeout duration in seconds, maximum of 2419200 seconds (4 weeks)
custom_message: string?
}AutomoderationActionObject
https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-action-object
Raw Type
-- https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-action-object
type AutomoderationActionObject = {
type: AutomoderationActionType,
-- the type of action
metadata: AutmoderationActionMetadataObject?
}| Prop | Type | Description |
|---|---|---|
type | - | |
metadata? | - |
AutomoderationRuleObject
https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-rule-object
Raw Type
-- https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-rule-object
type AutomoderationRuleObject = {
id: Snowflake,
-- the id of this rule
guild_id: Snowflake,
-- the id of the guild which this rule belongs to
name: string,
-- the rule name
creator_id: Snowflake,
-- the user which first created this rule
event_type: AutomoderationRuleEventType,
-- the rule event type
trigger_type: AutomoderationRuleTriggerType,
-- the rule trigger type
trigger_metadata: AutomoderationRuleTriggerMetadataObject,
-- the rule trigger metadata
actions: {AutomoderationActionObject},
-- the actions which will execute when the rule is triggered
enabled: boolean,
-- whether the rule is enabled
exempt_roles: {Snowflake},
-- the role ids that should not be affected by the rule (Maximum of 20)
exempt_channels: {Snowflake}
}| Prop | Type | Description |
|---|---|---|
id | - | |
guild_id | - | |
name | - | |
creator_id | - | |
event_type | - | |
trigger_type | - | |
trigger_metadata | - | |
actions | - | |
enabled | - | |
exempt_roles | - | |
exempt_channels | - |
OverwriteObject
https://discord.com/developers/docs/resources/channel#overwrite-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#overwrite-object
type OverwriteObject = {
id: Snowflake,
-- role or user id
type: OverwriteObjectType,
-- either 0 (role) or 1 (member)
allow: string,
-- permission bit set
deny: string
}| Prop | Type | Description |
|---|---|---|
id | - | |
type | - | |
allow | - | |
deny | - |
ThreadMetadataObject
https://discord.com/developers/docs/resources/channel#thread-metadata-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#thread-metadata-object
type ThreadMetadataObject = {
archived: boolean,
-- whether the thread is archived
auto_archive_duration: number,
-- the thread will stop showing in the channel list after auto_archive_duration minutes of inactivity, can be set to: 60, 1440, 4320, 10080
archive_timestamp: string,
-- timestamp when the thread's archive status was last changed, used for calculating recent activity
locked: boolean,
-- whether the thread is locked; when a thread is locked, only users with MANAGE_THREADS can unarchive it
invitable: boolean?,
-- whether non-moderators can add other non-moderators to a thread; only available on private threads
create_timestamp: string
}| Prop | Type | Description |
|---|---|---|
archived | - | |
auto_archive_duration | - | |
archive_timestamp | - | |
locked | - | |
invitable? | - | |
create_timestamp | - |
GuildMemberObject
https://discord.com/developers/docs/resources/guild#guild-member-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-member-object
type GuildMemberObject = {
user: UserObject?,
-- the user this guild member represents
nick: string?,
-- this user's guild nickname
avatar: string?,
-- the member's guild avatar hash
roles: {Snowflake},
-- array of role object ids
joined_at: string,
-- when the user joined the guild
premium_since: string?,
-- when the user started boosting the guild
deaf: boolean,
-- whether the user is deafened in voice channels
mute: boolean,
-- whether the user is muted in voice channels
flags: number,
-- guild member flags represented as a bit set, defaults to 0
pending: boolean?,
-- whether the user has not yet passed the guild's Membership Screening requirements
permissions: string?,
-- total permissions of the member in the channel, including overwrites, returned when in the interaction object
communication_disabled_until: string?,
-- when the user's timeout will expire and the user will be able to communicate in the guild again, null or a time in the past if the user is not timed out
avatar_decoration_data: AvatarDecorationDataObject?
}| Prop | Type | Description |
|---|---|---|
user? | - | |
nick? | - | |
avatar? | - | |
roles | - | |
joined_at | - | |
premium_since? | - | |
deaf | - | |
mute | - | |
flags | - | |
pending? | - | |
permissions? | - | |
communication_disabled_until? | - | |
avatar_decoration_data? | - |
ThreadMemberObject
https://discord.com/developers/docs/resources/channel#thread-member-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#thread-member-object
type ThreadMemberObject = {
id: Snowflake?,
-- ID of the thread
user_id: Snowflake?,
-- ID of the user
join_timestamp: string,
-- Time the user last joined the thread
flags: number,
-- Any user-thread settings, currently only used for notifications
member: GuildMemberObject?
}| Prop | Type | Description |
|---|---|---|
id? | - | |
user_id? | - | |
join_timestamp | - | |
flags | - | |
member? | - |
ForumTagObject
https://discord.com/developers/docs/resources/channel#forum-tag-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#forum-tag-object
type ForumTagObject = {
id: Snowflake,
-- the id of the tag
name: string,
-- the name of the tag (0-20 characters)
moderated: boolean,
-- whether this tag can only be added to or removed from threads by a member with the MANAGE_THREADS permission
emoji_id: string?,
-- the id of a guild's custom emoji
emoji_name: string?
}DefaultReactionObject
https://discord.com/developers/docs/resources/channel#default-reaction-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#default-reaction-object
type DefaultReactionObject = {
emoji_id: string?,
-- the id of a guild's custom emoji
emoji_name: string?
}ChannelObject
https://discord.com/developers/docs/resources/channel#channel-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#channel-object
type ChannelObject = {
id: Snowflake,
-- the id of this channel
type: ChannelType,
-- the type of channel
guild_id: Snowflake?,
-- the id of the guild (may be missing for some channel objects received over gateway guild dispatches)
position: number,
-- sorting position of the channel (channels with the same position are sorted by id)
permission_overwrites: {OverwriteObject},
-- explicit permission overwrites for members and roles
name: string,
-- the name of the channel (1-100 characters)
topic: string?,
-- the channel topic (0-4096 characters for GUILD_FORUM and GUILD_MEDIA channels, 0-1024 characters for all others)
nsfw: boolean?,
-- whether the channel is nsfw
last_message_id: Snowflake?,
-- the id of the last message sent in this channel (or thread for GUILD_FORUM or GUILD_MEDIA channels) (may not point to an existing or valid message or thread)
bitrate: number?,
-- the bitrate (in bits) of the voice channel
user_limit: number?,
-- the user limit of the voice channel
rate_limit_per_user: number?,
-- amount of seconds a user has to wait before sending another message (0-21600); bots, as well as users with the permission manage_messages or manage_channel, are unaffected
recipients: {UserObject}?,
-- the recipients of the DM
icon: string?,
-- icon hash of the group DM
owner_id: Snowflake?,
-- id of the creator of the group DM or thread
application_id: Snowflake?,
-- application id of the group DM creator if it is bot-created
managed: boolean?,
-- for group DM channels: whether the channel is managed by an application via the gdm.join OAuth2 scope
parent_id: Snowflake?,
-- for guild channels: id of the parent category for a channel (each parent category can contain up to 50 channels), for threads: id of the text channel this thread was created
last_pin_timestamp: string?,
-- when the last pinned message was pinned. This may be null in events such as GUILD_CREATE when a message is not pinned.
rtc_region: string?,
-- voice region id for the voice channel, automatic when set to null
video_quality_mode: VideoQualityMode?,
-- the camera video quality mode of the voice channel, 1 when not present
message_count: number?,
-- number of messages (not including the initial message or deleted messages) in a thread.
member_count: number?,
-- an approximate count of users in a thread, stops counting at 50
thread_metadata: ThreadMetadataObject?,
-- thread-specific fields not needed by other channels
member: ThreadMemberObject?,
-- thread member object for the current user, if they have joined the thread, only included on certain API endpoints
default_auto_archive_duration: number?,
-- default duration, copied onto newly created threads, in minutes, threads will stop showing in the channel list after the specified period of inactivity, can be set to: 60, 1440, 4320, 10080
permissions: string?,
-- computed permissions for the invoking user in the channel, including overwrites, only included when part of the resolved data received on a slash command interaction. This does not include implicit permissions, which may need to be checked separately
flags: ChannelFlags?,
-- channel flags combined as a bitfield
total_message_sent: number?,
-- number of messages ever sent in a thread, it's similar to message_count on message creation, but will not decrement the number when a message is deleted
available_tags: {ForumTagObject}?,
-- the set of tags that can be used in a GUILD_FORUM or a GUILD_MEDIA channel
applied_tags: {Snowflake}?,
-- the IDs of the set of tags that have been applied to a thread in a GUILD_FORUM or a GUILD_MEDIA channel
default_reaction_emoji: DefaultReactionObject?,
-- the emoji to show in the add reaction button on a thread in a GUILD_FORUM or a GUILD_MEDIA channel
default_thread_rate_limit_per_user: number?,
-- the initial rate_limit_per_user to set on newly created threads in a channel. this field is copied to the thread at creation time and does not live update.
default_sort_order: SortOrderType?,
-- the default sort order type used to order posts in GUILD_FORUM and GUILD_MEDIA channels. Defaults to null, which indicates a preferred sort order hasn't been set by a channel admin
default_forum_layout: ForumLayoutType?
}| Prop | Type | Description |
|---|---|---|
id | - | |
type | - | |
guild_id? | - | |
position | - | |
permission_overwrites | - | |
name | - | |
topic? | - | |
nsfw? | - | |
last_message_id? | - | |
bitrate? | - | |
user_limit? | - | |
rate_limit_per_user? | - | |
recipients? | - | |
icon? | - | |
owner_id? | - | |
application_id? | - | |
managed? | - | |
parent_id? | - | |
last_pin_timestamp? | - | |
rtc_region? | - | |
video_quality_mode? | - | |
message_count? | - | |
member_count? | - | |
thread_metadata? | - | |
member? | - | |
default_auto_archive_duration? | - | |
permissions? | - | |
flags? | - | |
total_message_sent? | - | |
available_tags? | - | |
applied_tags? | - | |
default_reaction_emoji? | - | |
default_thread_rate_limit_per_user? | - | |
default_sort_order? | - | |
default_forum_layout? | - |
EntitlementObject
https://discord.com/developers/docs/monetization/entitlements#entitlement-object
Raw Type
-- https://discord.com/developers/docs/monetization/entitlements#entitlement-object
type EntitlementObject = {
id: Snowflake,
-- ID of the entitlement
sku_id: Snowflake,
-- ID of the SKU
application_id: Snowflake,
-- ID of the parent application
user_id: Snowflake?,
-- ID of the user that is granted access to the entitlement's sku
type: EntitlementType,
-- Type of entitlement
deleted: boolean,
-- Entitlement was deleted
starts_at: string?,
-- Start date at which the entitlement is valid. Not present when using test entitlements.
ends_at: string?,
-- Date at which the entitlement is no longer valid. Not present when using test entitlements.
guild_id: Snowflake?,
-- ID of the guild that is granted access to the entitlement's sku
consumed: boolean?
}| Prop | Type | Description |
|---|---|---|
id | - | |
sku_id | - | |
application_id | - | |
user_id? | - | |
type | - | |
deleted | - | |
starts_at? | - | |
ends_at? | - | |
guild_id? | - | |
consumed? | - |
VoiceStateObject
https://discord.com/developers/docs/resources/voice#voice-state-object
Raw Type
-- https://discord.com/developers/docs/resources/voice#voice-state-object
type VoiceStateObject = {
guild_id: Snowflake?,
-- the guild id this voice state is for
channel_id: Snowflake?,
-- the channel id this user is connected to
user_id: Snowflake,
-- the user id this voice state is for
member: GuildMemberObject?,
-- the guild member this voice state is for
session_id: string,
-- the session id for this voice state
deaf: boolean,
-- whether this user is deafened by the server
mute: boolean,
-- whether this user is muted by the server
self_deaf: boolean,
-- whether this user is locally deafened
self_mute: boolean,
-- whether this user is locally muted
self_stream: boolean?,
-- whether this user is streaming using "Go Live"
self_video: boolean,
-- whether this user's camera is enabled
suppress: boolean,
-- whether this user's permission to speak is denied
request_to_speak_timestamp: string?
}| Prop | Type | Description |
|---|---|---|
guild_id? | - | |
channel_id? | - | |
user_id | - | |
member? | - | |
session_id | - | |
deaf | - | |
mute | - | |
self_deaf | - | |
self_mute | - | |
self_stream? | - | |
self_video | - | |
suppress | - | |
request_to_speak_timestamp? | - |
ClientStatusObject
https://discord.com/developers/docs/topics/gateway-events#client-status-object
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#client-status-object
type ClientStatusObject = {
desktop: string?,
-- User's status set for an active desktop (Windows, Linux, Mac) application session
mobile: string?,
-- User's status set for an active mobile (iOS, Android) application session
web: string?
}PresenceUpdateObject
https://discord.com/developers/docs/topics/gateway-events#presence-update
Raw Type
-- https://discord.com/developers/docs/topics/gateway-events#presence-update
type PresenceUpdateObject = {
user: UserObject,
-- User whose presence is being updated
guild_id: Snowflake,
-- ID of the guild
status: string,
-- Either "idle", "dnd", "online", or "offline"
activities: {ActivityObject},
-- User's current activities
client_status: ClientStatusObject
}| Prop | Type | Description |
|---|---|---|
user | - | |
guild_id | - | |
status | - | |
activities | - | |
client_status | - |
StageInstanceObject
https://discord.com/developers/docs/resources/stage-instance#stage-instance-object
Raw Type
-- https://discord.com/developers/docs/resources/stage-instance#stage-instance-object
type StageInstanceObject = {
id: Snowflake,
-- The id of this Stage instance
guild_id: Snowflake,
-- The guild id of the associated Stage channel
channel_id: Snowflake,
-- The id of the associated Stage channel
topic: string,
-- The topic of the Stage instance (1-120 characters)
privacy_level: PrivacyLevel,
-- The privacy level of the Stage instance
discoverable_disabled: boolean,
-- Whether or not Stage Discovery is disabled (deprecated)
guild_scheduled_event_id: Snowflake?
}| Prop | Type | Description |
|---|---|---|
id | - | |
guild_id | - | |
channel_id | - | |
topic | - | |
privacy_level | - | |
discoverable_disabled | - | |
guild_scheduled_event_id? | - |
GuildScheduledEventEntityMetadata
Raw Type
-- https://discord.com/developers/docs/resources/guild-scheduled-event#guild-scheduled-event-object-guild-scheduled-event-entity-metadata
type GuildScheduledEventEntityMetadata = {
location: string
}| Prop | Type | Description |
|---|---|---|
location | - |
GuildScheduledEventObject
https://discord.com/developers/docs/resources/guild-scheduled-event#guild-scheduled-event-object
Raw Type
-- https://discord.com/developers/docs/resources/guild-scheduled-event#guild-scheduled-event-object
type GuildScheduledEventObject = {
id: Snowflake,
-- the id of the scheduled event
guild_id: Snowflake,
-- the guild id which the scheduled event belongs to
channel_id: Snowflake?,
-- the channel id in which the scheduled event will be hosted, or null if scheduled entity type is EXTERNAL
creator_id: Snowflake?,
-- the id of the user that created the scheduled event
name: string,
-- the name of the scheduled event (1-100 characters)
description: string?,
-- the description of the scheduled event (1-1000 characters)
scheduled_start_time: string,
-- the time the scheduled event will start
scheduled_end_time: string?,
-- the time the scheduled event will end, required if entity_type is EXTERNAL
privacy_level: PrivacyLevel,
-- the privacy level of the scheduled event
status: GuildScheduledEventStatus,
-- the status of the scheduled event
entity_type: GuildScheduledEventEntityType,
-- the type of the scheduled event
entity_id: Snowflake?,
-- the id of an entity associated with a guild scheduled event
entity_metadata: GuildScheduledEventEntityMetadata?,
-- additional metadata for the guild scheduled event
creator: UserObject?,
-- the user that created the scheduled event
user_count: number,
-- the number of users subscribed to the scheduled event
image: string?
}| Prop | Type | Description |
|---|---|---|
id | - | |
guild_id | - | |
channel_id? | - | |
creator_id? | - | |
name | - | |
description? | - | |
scheduled_start_time | - | |
scheduled_end_time? | - | |
privacy_level | - | |
status | - | |
entity_type | - | |
entity_id? | - | |
entity_metadata? | - | |
creator? | - | |
user_count | - | |
image? | - |
IntegrationAccountObject
https://discord.com/developers/docs/resources/guild#integration-account-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#integration-account-object
type IntegrationAccountObject = {
id: string,
-- id of the account
name: string
}IntegrationObject
https://discord.com/developers/docs/resources/guild#integration-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#integration-object
type IntegrationObject = {
id: Snowflake,
-- integration id
name: string,
-- integration name
type: IntegrationType,
-- integration type (twitch, youtube, discord, or guild_subscription)
enabled: boolean,
-- is this integration enabled
syncing: boolean?,
-- is this integration syncing
role_id: Snowflake?,
-- id that this integration uses for "subscribers"
enable_emoticons: boolean?,
-- whether emoticons should be synced for this integration (twitch only currently)
expire_behaviour: IntegrationExpireBehaviours?,
-- the behavior of expiring subscribers
expire_grace_period: number?,
-- the grace period (in days) before expiring subscribers
user: UserObject?,
-- user for this integration
account: IntegrationAccountObject,
-- integration account information
synced_at: string?,
-- when this integration was last synced
subscriber_count: number?,
-- how many subscribers this integration has
revoked: boolean?,
-- has this integration been revoked
application: IntegrationApplicationObject?,
-- The bot/OAuth2 application for discord integrations
scopes: {OAuth2Scopes}?
}| Prop | Type | Description |
|---|---|---|
id | - | |
name | - | |
type | - | |
enabled | - | |
syncing? | - | |
role_id? | - | |
enable_emoticons? | - | |
expire_behaviour? | - | |
expire_grace_period? | - | |
user? | - | |
account | - | |
synced_at? | - | |
subscriber_count? | - | |
revoked? | - | |
application? | - | |
scopes? | - |
ChannelMentionObject
https://discord.com/developers/docs/resources/channel#channel-mention-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#channel-mention-object
type ChannelMentionObject = {
id: Snowflake,
-- id of the channel
guild_id: Snowflake,
-- id of the guild containing the channel
type: ChannelType,
-- the type of channel
name: string
}| Prop | Type | Description |
|---|---|---|
id | - | |
guild_id | - | |
type | - | |
name | - |
AttachmentObject
https://discord.com/developers/docs/resources/channel#attachment-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#attachment-object
type AttachmentObject = Partial<{
id: Snowflake,
-- attachment id
filename: string,
-- name of file attached
title: string?,
-- the title of the file
description: string?,
-- description for the file (max 1024 characters)
content_type: string?,
-- the attachment's media type
size: number,
-- size of file in bytes
url: string,
-- source url of file
proxy_url: string,
-- a proxied url of file
height: number?,
-- height of file (if image)
width: number?,
-- width of file (if image)
ephemeral: boolean?,
-- whether this attachment is ephemeral
duration_secs: number?,
-- the duration of the audio file (currently for voice messages)
waveform: string?,
-- base64 encoded bytearray representing a sampled waveform (currently for voice messages)
flags: number
}>Partial<{id: Snowflake, filename: string, title: string?, description: string?, content_type: string?, size: number, url: string, proxy_url: string, height: number?, width: number?, ephemeral: boolean?, duration_secs: number?, waveform: string?, flags: number}>
EmbedFooterObject
https://discord.com/developers/docs/resources/channel#embed-object-embed-footer-structure
Raw Type
-- https://discord.com/developers/docs/resources/channel#embed-object-embed-footer-structure
type EmbedFooterObject = {
text: string,
-- footer text
icon_url: string?,
-- url of footer icon (only supports http(s) and attachments)
proxy_icon_url: string?
}EmbedImageObject
https://discord.com/developers/docs/resources/channel#embed-object-embed-image-structure
Raw Type
-- https://discord.com/developers/docs/resources/channel#embed-object-embed-image-structure
type EmbedImageObject = {
url: string,
-- source url of image (only supports http(s) and attachments)
proxy_url: string?,
-- a proxied url of the image
height: number?,
-- height of image
width: number?
}EmbedProviderObject
https://discord.com/developers/docs/resources/channel#embed-object-embed-provider-structure
Raw Type
-- https://discord.com/developers/docs/resources/channel#embed-object-embed-provider-structure
type EmbedProviderObject = {
name: string?,
-- name of provider
url: string?
}EmbedAuthorObject
https://discord.com/developers/docs/resources/channel#embed-object-embed-author-structure
Raw Type
-- https://discord.com/developers/docs/resources/channel#embed-object-embed-author-structure
type EmbedAuthorObject = {
name: string,
-- name of author
url: string?,
-- url of author (only supports http(s))
icon_url: string?,
-- url of author icon (only supports http(s) and attachments)
proxy_icon_url: string?
}EmbedFieldObject
https://discord.com/developers/docs/resources/channel#embed-object-embed-field-structure
Raw Type
-- https://discord.com/developers/docs/resources/channel#embed-object-embed-field-structure
type EmbedFieldObject = {
name: string,
-- name of the field
value: string,
-- value of the field
inline: boolean?
}EmbedThumbnailObject
https://discord.com/developers/docs/resources/channel#embed-object-embed-thumbnail-structure
Raw Type
-- https://discord.com/developers/docs/resources/channel#embed-object-embed-thumbnail-structure
type EmbedThumbnailObject = {
url: string,
-- source url of thumbnail (only supports http(s) and attachments)
proxy_url: string?,
-- a proxied url of the thumbnail
height: number?,
-- height of thumbnail
width: number?
}EmbedVideoObject
https://discord.com/developers/docs/resources/channel#embed-object-embed-video-structure
Raw Type
-- https://discord.com/developers/docs/resources/channel#embed-object-embed-video-structure
type EmbedVideoObject = {
url: string,
-- source url of video
proxy_url: string?,
-- a proxied url of the video
height: number?,
-- height of video
width: number?
}EmbedObject
https://discord.com/developers/docs/resources/message#embed-object
Raw Type
-- https://discord.com/developers/docs/resources/message#embed-object
type EmbedObject = {
title: string?,
-- title of embed
type: EmbedType?,
-- type of embed (always "rich" for webhook embeds)
description: string?,
-- description of embed
url: string?,
-- url of embed
timestamp: string?,
-- timestamp of embed content
color: number?,
-- color code of the embed
footer: EmbedFooterObject?,
-- footer information
image: EmbedImageObject?,
-- image information
thumbnail: EmbedThumbnailObject?,
-- thumbnail information
video: EmbedVideoObject?,
-- video information
provider: EmbedProviderObject?,
-- provider information
author: EmbedAuthorObject?,
-- author information
fields: {EmbedFieldObject}?
}| Prop | Type | Description |
|---|---|---|
title? | - | |
type? | - | |
description? | - | |
url? | - | |
timestamp? | - | |
color? | - | |
footer? | - | |
image? | - | |
thumbnail? | - | |
video? | - | |
provider? | - | |
author? | - | |
fields? | - |
ReactionCountDetailsObject
https://discord.com/developers/docs/resources/channel#reaction-count-details-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#reaction-count-details-object
type ReactionCountDetailsObject = {
burst: number,
-- Count of super reactions
normal: number
}ReactionObject
https://discord.com/developers/docs/resources/channel#reaction-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#reaction-object
type ReactionObject = {
count: number,
-- Total number of times this emoji has been used to react (including super reacts)
count_details: ReactionCountDetailsObject,
-- Reaction count details object
me: boolean,
-- Whether the current user reacted using this emoji
me_burst: boolean,
-- Whether the current user super-reacted using this emoji
emoji: EmojiObject,
-- emoji information
burst_colors: {string}
}| Prop | Type | Description |
|---|---|---|
count | - | |
count_details | - | |
me | - | |
me_burst | - | |
emoji | - | |
burst_colors | - |
MessageActivityObject
https://discord.com/developers/docs/resources/channel#message-object-message-activity-structure
Raw Type
-- https://discord.com/developers/docs/resources/channel#message-object-message-activity-structure
type MessageActivityObject = {
type: MessageActivityType,
-- type of message activity
party_id: string
}| Prop | Type | Description |
|---|---|---|
type | - | |
party_id | - |
MessageReferenceObject
Raw Type
-- https://discord.com/developers/docs/resources/channel#message-reference-object-message-reference-structure
type MessageReferenceObject = {
type: MessageReferenceType?,
-- type of reference.
message_id: Snowflake?,
-- id of the originating message
channel_id: Snowflake?,
-- id of the originating message's channel
guild_id: Snowflake?,
-- id of the originating message's guild
fail_if_not_exists: boolean?
}| Prop | Type | Description |
|---|---|---|
type? | - | |
message_id? | - | |
channel_id? | - | |
guild_id? | - | |
fail_if_not_exists? | - |
MessageInteractionMetadatObject
Raw Type
-- https://discord.com/developers/docs/resources/channel#message-interaction-metadata-object-message-interaction-metadata-structure
type MessageInteractionMetadatObject = {
id: Snowflake,
-- ID of the interaction
type: InteractionType,
-- Type of interaction
user: UserObject,
-- User who triggered the interaction
authorizing_integration_owners: {
[ApplicationIntegrationType]: Snowflake
},
-- IDs for installation context(s) related to an interaction. Details in Authorizing Integration Owners Object
original_response_message_id: Snowflake?,
-- ID of the original response message, present only on follow-up messages
interacted_message_id: Snowflake?,
-- ID of the message that contained interactive component, present only on messages created from component interactions
triggering_interaction_metadata: MessageInteractionMetadatObject
}| Prop | Type | Description |
|---|---|---|
id | - | |
type | - | |
user | - | |
authorizing_integration_owners | - | |
original_response_message_id? | - | |
interacted_message_id? | - | |
triggering_interaction_metadata | - |
MessageInteractionObject
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#message-interaction-object-message-interaction-structure
type MessageInteractionObject = {
id: string,
-- ID of the interaction
type: InteractionType,
-- Type of interaction
name: string,
-- Name of the application command, including subcommands and subcommand groups
user: UserObject,
-- User who invoked the interaction
member: GuildMemberObject?
}| Prop | Type | Description |
|---|---|---|
id | - | |
type | - | |
name | - | |
user | - | |
member? | - |
SelectOptionObject
Raw Type
-- https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-option-structure
type SelectOptionObject = {
label: string,
-- User-facing name of the option; max 100 characters
value: string,
-- Dev-defined value of the option; max 100 characters
description: string?,
-- Additional description of the option; max 100 characters
emoji: EmojiObject?,
-- id, name, and animated
default: boolean
}| Prop | Type | Description |
|---|---|---|
label | - | |
value | - | |
description? | - | |
emoji? | - | |
default | - |
SelectDefaultValueObject
Raw Type
-- https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-default-value-structure
type SelectDefaultValueObject = {
id: Snowflake,
-- ID of a user, role, or channel
type: string
}ActionRowComponentObject
https://discord.com/developers/docs/interactions/message-components#action-rows
Raw Type
-- https://discord.com/developers/docs/interactions/message-components#action-rows
type ActionRowComponentObject = {
type: number,
-- 1 for an action row.
components: {ComponentObjects}
}| Prop | Type | Description |
|---|---|---|
type | - | |
components | - |
ButtonComponentObject
https://discord.com/developers/docs/interactions/message-components#button-object
Raw Type
-- https://discord.com/developers/docs/interactions/message-components#button-object
type ButtonComponentObject = Partial<{
type: number,
-- 2 for a button
style: ButtonStyle,
-- A button style
label: string?,
-- Text that appears on the button; max 80 characters
emoji: EmojiObject?,
-- name, id, and animated
custom_id: string?,
-- Developer-defined identifier for the button; max 100 characters
sku_id: string?,
-- Identifier for a purchasable SKU, only available when using premium-style buttons
url: string?,
-- URL for link-style buttons
disabled: boolean?
}>Partial<{type: number, style: ButtonStyle, label: string?, emoji: EmojiObject?, custom_id: string?, sku_id: string?, url: string?, disabled: boolean?}>
SelectMenuComponentObject
https://discord.com/developers/docs/interactions/message-components#select-menu-object
Raw Type
-- https://discord.com/developers/docs/interactions/message-components#select-menu-object
type SelectMenuComponentObject = {
type: number,
-- Type of select menu component (text: 3, user: 5, role: 6, mentionable: 7, channels: 8)
custom_id: string,
-- ID for the select menu; max 100 characters
options: {SelectOptionObject}?,
-- Specified choices in a select menu (only required and available for string selects (type 3); max 25
channel_types: {ChannelType}?,
-- List of channel types to include in the channel select component (type 8)
placeholder: string?,
-- Placeholder text if nothing is selected; max 150 characters
default_values: {SelectDefaultValueObject}?,
-- List of default values for auto-populated select menu components; number of default values must be in the range defined by min_values and max_values
min_values: number?,
-- Minimum number of items that must be chosen (defaults to 1); min 0, max 25
max_values: number?,
-- Maximum number of items that can be chosen (defaults to 1); max 25
disabled: boolean?
}| Prop | Type | Description |
|---|---|---|
type | - | |
custom_id | - | |
options? | - | |
channel_types? | - | |
placeholder? | - | |
default_values? | - | |
min_values? | - | |
max_values? | - | |
disabled? | - |
TextInputComponentObject
https://discord.com/developers/docs/interactions/message-components#select-menu-object
Raw Type
-- https://discord.com/developers/docs/interactions/message-components#select-menu-object
type TextInputComponentObject = {
type: number,
-- 4 for a text input
custom_id: string,
-- Developer-defined identifier for the input; max 100 characters
style: TextInputStyles,
-- The Text Input Style
label: string,
-- Label for this component; max 45 characters
min_length: number?,
-- Minimum input length for a text input; min 0, max 4000
max_length: number?,
-- Maximum input length for a text input; min 1, max 4000
required: boolean?,
-- Whether this component is required to be filled (defaults to true)
value: string?,
-- Pre-filled value for this component; max 4000 characters
placeholder: string?
}| Prop | Type | Description |
|---|---|---|
type | - | |
custom_id | - | |
style | - | |
label | - | |
min_length? | - | |
max_length? | - | |
required? | - | |
value? | - | |
placeholder? | - |
ComponentObjects
https://discord.com/developers/docs/interactions/message-components#message-components
Raw Type
-- https://discord.com/developers/docs/interactions/message-components#message-components
type ComponentObjects = ActionRowComponentObject | ButtonComponentObject | SelectMenuComponentObject | TextInputComponentObjectUnion with variants:
Variant 1
Variant 2
Variant 3
Variant 4
SitckerItemObject
https://discord.com/developers/docs/resources/sticker#sticker-item-object
Raw Type
-- https://discord.com/developers/docs/resources/sticker#sticker-item-object
type SitckerItemObject = {
id: Snowflake,
-- id of the sticker
name: string,
-- name of the sticker
format_type: StickerFormatType
}| Prop | Type | Description |
|---|---|---|
id | - | |
name | - | |
format_type | - |
RoleSubscriptionDataObject
https://discord.com/developers/docs/resources/channel#role-subscription-data-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#role-subscription-data-object
type RoleSubscriptionDataObject = {
role_subscription_listing_id: Snowflake,
-- the id of the sku and listing that the user is subscribed to
tier_name: string,
-- the name of the tier that the user is subscribed to
total_months_subscribed: number,
-- the cumulative number of months that the user has been subscribed for
is_renewal: boolean
}| Prop | Type | Description |
|---|---|---|
role_subscription_listing_id | - | |
tier_name | - | |
total_months_subscribed | - | |
is_renewal | - |
PollMediaObject
https://discord.com/developers/docs/resources/poll#poll-media-object-poll-media-object-structure
Raw Type
-- https://discord.com/developers/docs/resources/poll#poll-media-object-poll-media-object-structure
type PollMediaObject = {
text: string?,
-- The text of the field
emoji: Partial<EmojiObject>?
}| Prop | Type | Description |
|---|---|---|
text? | - | |
emoji? | - |
PollAnswerObject
https://discord.com/developers/docs/resources/poll#poll-answer-object-poll-answer-object-structure
Raw Type
-- https://discord.com/developers/docs/resources/poll#poll-answer-object-poll-answer-object-structure
type PollAnswerObject = {
answer_id: number,
-- The ID of the answer
poll_media: PollMediaObject
}| Prop | Type | Description |
|---|---|---|
answer_id | - | |
poll_media | - |
PollAnswerCountObject
Raw Type
-- https://discord.com/developers/docs/resources/poll#poll-results-object-poll-answer-count-object-structure
type PollAnswerCountObject = {
id: number,
-- The answer_id
count: number,
-- The number of votes for this answer
me_voted: boolean
}PollResultObject
https://discord.com/developers/docs/resources/poll#poll-results-object-poll-results-object-structure
Raw Type
-- https://discord.com/developers/docs/resources/poll#poll-results-object-poll-results-object-structure
type PollResultObject = {
is_finalized: boolean,
-- Whether the votes have been precisely counted
answer_counts: {PollAnswerCountObject}
}| Prop | Type | Description |
|---|---|---|
is_finalized | - | |
answer_counts | - |
PollObject
https://discord.com/developers/docs/resources/poll#poll-object
Raw Type
-- https://discord.com/developers/docs/resources/poll#poll-object
type PollObject = {
question: PollMediaObject,
-- The question of the poll. Only text is supported.
answers: {PollAnswerObject},
-- Each of the answers available in the poll.
expiry: string?,
-- The time when the poll ends.
--fixme: for some reason luau's type system doesn't like this being a \`boolean\`????
allow_multiselect: true | false,
-- Whether a user can select multiple answers
layout_type: PollLayoutType,
-- The layout type of the poll
results: PollResultObject?
}| Prop | Type | Description |
|---|---|---|
question | - | |
answers | - | |
expiry? | - | |
allow_multiselect | - | |
layout_type | - | |
results? | - |
MessageCallObject
https://discord.com/developers/docs/resources/channel#message-call-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#message-call-object
type MessageCallObject = {
participants: {UserObject},
-- array of user object ids that participated in the call
ended_timestamp: string
}| Prop | Type | Description |
|---|---|---|
participants | - | |
ended_timestamp | - |
MessageObject
https://discord.com/developers/docs/resources/channel#message-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#message-object
type MessageObject = {
id: Snowflake?,
-- id of the message
channel_id: Snowflake?,
-- id of the channel the message was sent in
author: UserObject?,
-- the author of this message (not guaranteed to be a valid user, see below)
content: string?,
-- contents of the message
timestamp: string?,
-- when this message was sent
edited_timestamp: string?,
-- when this message was edited (or null if never)
tts: boolean?,
-- whether this was a TTS message
mention_everyone: boolean?,
-- whether this message mentions everyone
mentions: {UserObject}?,
-- users specifically mentioned in the message
mention_roles: {GuildRoleObject}?,
-- roles specifically mentioned in this message
mention_channels: {ChannelMentionObject}?,
-- channels specifically mentioned in this message
attachments: {AttachmentObject}?,
-- any attached files
embeds: {EmbedObject}?,
-- any embedded content
reactions: {ReactionObject}?,
-- reactions to the message
nonce: string?,
-- used for validating a message was sent
pinned: boolean?,
-- whether this message is pinned
webhook_id: Snowflake?,
-- if the message is generated by a webhook, this is the webhook's id
type: MessageType?,
-- type of message
activity: MessageActivityObject?,
-- sent with Rich Presence-related chat embeds
application: ApplicationObject?,
-- sent with Rich Presence-related chat embeds
application_id: Snowflake?,
-- if the message is an Interaction or application-owned webhook, this is the id of the application
message_reference: MessageReferenceObject?,
-- data showing the source of a crosspost, channel follow add, pin, or reply message
flags: number?,
-- message flags combined as a bitfield
referenced_message: MessageObject?,
-- the message associated with the message_reference
interaction_metadata: MessageInteractionMetadatObject?,
-- In preview. Sent if the message is sent as a result of an interaction
interaction: MessageInteractionObject?,
-- Deprecated in favor of interaction_metadata; sent if the message is a response to an interaction
thread: ChannelObject?,
-- the thread that was started from this message, includes thread member object
components: {ComponentObjects}?,
-- sent if the message contains components like buttons, action rows, or other interactive components
sticker_items: {SitckerItemObject}?,
-- sent if the message contains stickers
stickers: {StickerObject}?,
-- Deprecated the stickers sent with the message
position: number?,
-- A generally increasing integer (there may be gaps or duplicates) that represents the approximate position of the message in a thread, it can be used to estimate the relative position of the message in a thread in company with total_message_sent on parent thread
role_subscription_data: RoleSubscriptionDataObject?,
-- data of the role subscription purchase or renewal that prompted this ROLE_SUBSCRIPTION_PURCHASE message
resolved: ResolvedDataStructure?,
-- data for users, members, channels, and roles in the message's auto-populated select menus
poll: PollObject?,
-- the poll associated with the message
call: MessageCallObject?
}| Prop | Type | Description |
|---|---|---|
id? | - | |
channel_id? | - | |
author? | - | |
content? | - | |
timestamp? | - | |
edited_timestamp? | - | |
tts? | - | |
mention_everyone? | - | |
mentions? | - | |
mention_roles? | - | |
mention_channels? | - | |
attachments? | - | |
embeds? | - | |
reactions? | - | |
nonce? | - | |
pinned? | - | |
webhook_id? | - | |
type? | - | |
activity? | - | |
application? | - | |
application_id? | - | |
message_reference? | - | |
flags? | - | |
referenced_message? | - | |
interaction_metadata? | - | |
interaction? | - | |
thread? | - | |
components? | - | |
sticker_items? | - | |
stickers? | - | |
position? | - | |
role_subscription_data? | - | |
resolved? | - | |
poll? | - | |
call? | - |
ResolvedDataStructure
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure
type ResolvedDataStructure = {
users: {
[Snowflake]: UserObject
}?,
-- the ids and User objects
members: {
[Snowflake]: GuildMemberObject
}?,
-- the ids and partial Member objects
roles: {
[Snowflake]: GuildRoleObject
}?,
-- the ids and Role objects
channels: {
[Snowflake]: ChannelObject
}?,
-- the ids and partial Channel objects
messages: {
[Snowflake]: MessageObject
}?,
-- the ids and partial Message objects
attachments: {
[Snowflake]: AttachmentObject
}?
}| Prop | Type | Description |
|---|---|---|
users? | - | |
members? | - | |
roles? | - | |
channels? | - | |
messages? | - | |
attachments? | - |
ApplicationCommandInteractionDataOptionObject
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-application-command-interaction-data-option-structure]
type ApplicationCommandInteractionDataOptionObject = {
name: string,
-- Name of the parameter
type: ApplicationCommandOptionType,
-- Value of application command option type
value: (string | number | boolean)?,
-- Value of the option resulting from user input
options: {ApplicationCommandInteractionDataOptionObject},
-- Present if this option is a group or subcommand
focused: boolean
}| Prop | Type | Description |
|---|---|---|
name | - | |
type | - | |
value? | - | |
options | - | |
focused | - |
InteractionDataObject
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-interaction-data
type InteractionDataObject = {
id: Snowflake,
-- the ID of the invoked command
name: string,
-- the name of the invoked command
type: number,
-- the type of the invoked command
resolved: ResolvedDataStructure?,
-- converted users + roles + channels + attachments
options: {ApplicationCommandInteractionDataOptionObject}?,
-- the params + values from the user
guild_id: Snowflake?,
-- the id of the guild the command is registered to
target_id: Snowflake?,
-- id of the user or message targeted by a user or message command,
custom_id: string?,
-- custom_id of the component
component_type: number?,
-- type of the component
values: {SelectOptionObject}?,
-- Values the user selected in a select menu component
components: {ComponentObjects}?
}| Prop | Type | Description |
|---|---|---|
id | - | |
name | - | |
type | - | |
resolved? | - | |
options? | - | |
guild_id? | - | |
target_id? | - | |
custom_id? | - | |
component_type? | - | |
values? | - | |
components? | - |
InteractionObject
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-interaction-structure
type InteractionObject = {
id: Snowflake,
-- ID of the interaction
application_id: Snowflake,
-- ID of the application this interaction is for
type: InteractionType,
-- Type of interaction
data: InteractionDataObject?,
-- Interaction data payload
guild: GuildObject?,
-- Guild that the interaction was sent from
guild_id: Snowflake?,
-- Guild that the interaction was sent from
channel: ChannelObject?,
-- Channel that the interaction was sent from
channel_id: Snowflake?,
-- Channel that the interaction was sent from
member: GuildMemberObject?,
-- Guild member data for the invoking user, including permissions
user: UserObject?,
-- User object for the invoking user, if invoked in a DM
token: string,
-- Continuation token for responding to the interaction
version: number,
-- Read-only property, always 1
message: MessageObject?,
-- For components, the message they were attached to
app_permissions: string,
-- Bitwise set of permissions the app has in the source location of the interaction
locale: LanguageLocales?,
-- Selected language of the invoking user
guild_locale: LanguageLocales?,
-- Guild's preferred locale, if invoked in a guild
entitlements: {EntitlementObject},
-- For monetized apps, any entitlements for the invoking user, representing access to premium SKUs
authorizing_integration_owners: {IntegrationType},
-- Mapping of installation contexts that the interaction was authorized for to related user or guild IDs. See Authorizing Integration Owners Object for details
context: InteractionContextType
}| Prop | Type | Description |
|---|---|---|
id | - | |
application_id | - | |
type | - | |
data? | - | |
guild? | - | |
guild_id? | - | |
channel? | - | |
channel_id? | - | |
member? | - | |
user? | - | |
token | - | |
version | - | |
message? | - | |
app_permissions | - | |
locale? | - | |
guild_locale? | - | |
entitlements | - | |
authorizing_integration_owners | - | |
context | - |
ApplicationRoleConnectionMetadataObject
Raw Type
-- https://discord.com/developers/docs/resources/application-role-connection-metadata#application-role-connection-metadata-object
type ApplicationRoleConnectionMetadataObject = {
type: ApplicationRoleConnectionMetadataType,
-- type of metadata value
key: string,
-- dictionary key for the metadata field (must be a-z, 0-9, or _ characters; 1-50 characters)
name: string,
-- name of the metadata field (1-100 characters)
name_localizations: {
[LanguageLocales]: string
}?,
-- translations of the name
description: string,
-- description of the metadata field (1-200 characters)
description_localizations: {
[LanguageLocales]: string
}?
}| Prop | Type | Description |
|---|---|---|
type | - | |
key | - | |
name | - | |
name_localizations? | - | |
description | - | |
description_localizations? | - |
ApplicationCommandOptionChoiceObject
Raw Type
-- https://discord.com/developers/docs/interactions/application-commands#application-command-object-application-command-option-choice-structure
type ApplicationCommandOptionChoiceObject = {
name: string,
-- 1-100 character choice name
name_localizations: {
[LanguageLocales]: string
}?,
-- Localization dictionary for the name field. Values follow the same restrictions as name
value: string | number
}| Prop | Type | Description |
|---|---|---|
name | - | |
name_localizations? | - | |
value | - |
ApplicationCommandOptionObject
Raw Type
-- https://discord.com/developers/docs/interactions/application-commands#application-command-object-application-command-option-structure
type ApplicationCommandOptionObject = {
type: ApplicationCommandOptionType,
-- Type of option
name: string,
-- 1-32 character name
name_localizations: {
[LanguageLocales]: string
}?,
-- Localization dictionary for the name field. Values follow the same restrictions as name
description: string?,
-- 1-100 character description
description_localizations: {
[LanguageLocales]: string
}?,
-- Localization dictionary for the description field. Values follow the same restrictions as description
required: boolean?,
-- Whether the parameter is required or optional, default false
choices: {ApplicationCommandOptionChoiceObject},
-- Choices for the user to pick from, max 25
options: {ApplicationCommandOptionObject}?,
-- If the option is a subcommand or subcommand group type, these nested options will be the parameters or subcommands respectively; up to 25
channel_types: {ChannelType}?,
-- The channels shown will be restricted to these types
min_value: number?,
-- The minimum value permitted
max_value: number?,
-- The maximum value permitted
min_length: number?,
-- The minimum allowed length (minimum of 0, maximum of 6000)
max_length: number?,
-- The maximum allowed length (minimum of 1, maximum of 6000)
autocomplete: boolean?
}| Prop | Type | Description |
|---|---|---|
type | - | |
name | - | |
name_localizations? | - | |
description? | - | |
description_localizations? | - | |
required? | - | |
choices | - | |
options? | - | |
channel_types? | - | |
min_value? | - | |
max_value? | - | |
min_length? | - | |
max_length? | - | |
autocomplete? | - |
ApplicationCommandObject
https://discord.com/developers/docs/interactions/application-commands#application-command-object
Raw Type
-- https://discord.com/developers/docs/interactions/application-commands#application-command-object
type ApplicationCommandObject = {
id: Snowflake?,
-- Unique ID of command
type: ApplicationCommandType?,
-- Type of command, defaults to 1
application_id: Snowflake?,
-- ID of the parent application
guild_id: Snowflake?,
-- Guild ID of the command, if not global
name: string,
-- Name of command, 1-32 characters
name_localizations: {
[LanguageLocales]: string
}?,
-- Localization dictionary for name field. Values follow the same restrictions as name
description: string,
-- Description for CHAT_INPUT commands, 1-100 characters. Empty string for USER and MESSAGE commands
description_localizations: {
[LanguageLocales]: string
}?,
-- Localization dictionary for description field. Values follow the same restrictions as description
options: {ApplicationCommandOptionObject}?,
-- Parameters for the command, max of 25
default_member_permissions: string?,
-- Set of permissions represented as a bit set
dm_permission: string?,
-- Deprecated (use contexts instead); Indicates whether the command is available in DMs with the app, only for globally-scoped commands. By default, commands are visible.
default_permission: boolean?,
-- Not recommended for use as field will soon be deprecated. Indicates whether the command is enabled by default when the app is added to a guild, defaults to true
nsfw: boolean?,
-- Indicates whether the command is age-restricted, defaults to false
integration_types: {IntegrationType}?,
-- Installation contexts where the command is available, only for globally-scoped commands. Defaults to your app's configured contexts
contexts: {InteractionContextType}?,
-- Interaction context(s) where the command can be used, only for globally-scoped commands. By default, all interaction context types included for new commands.
version: Snowflake?
}| Prop | Type | Description |
|---|---|---|
id? | - | |
type? | - | |
application_id? | - | |
guild_id? | - | |
name | - | |
name_localizations? | - | |
description | - | |
description_localizations? | - | |
options? | - | |
default_member_permissions? | - | |
dm_permission? | - | |
default_permission? | - | |
nsfw? | - | |
integration_types? | - | |
contexts? | - | |
version? | - |
AuditLogChangeObject
https://discord.com/developers/docs/resources/audit-log#audit-log-change-object
Raw Type
-- https://discord.com/developers/docs/resources/audit-log#audit-log-change-object
type AuditLogChangeObject = {
new_value: any?,
-- New value of the key
old_value: any?,
-- Old value of the key
key: string
}OptionalAuditEntryInfoObject
Raw Type
-- https://discord.com/developers/docs/resources/audit-log#audit-log-entry-object-optional-audit-entry-info
type OptionalAuditEntryInfoObject = {
application_id: Snowflake,
-- ID of the app whose permissions were targeted
auto_moderation_rule_name: string,
-- Name of the Auto Moderation rule that was triggered
auto_moderation_rule_trigger_type: AutomoderationRuleTriggerType,
-- Trigger type of the Auto Moderation rule that was triggered
channel_id: Snowflake,
-- Channel in which the entities were targeted
count: string,
-- Number of entities that were targeted
delete_member_days: string,
-- Number of days after which inactive members were kicked
id: Snowflake,
-- ID of the overwritten entity
members_removed: string,
-- Number of members removed by the prune
message_id: Snowflake,
-- ID of the message that was targeted
role_name: string,
-- Name of the role if type is "0" (not present if type is "1")
type: string,
-- Type of overwritten entity - role ("0") or member ("1")
integration_type: IntegrationType
}| Prop | Type | Description |
|---|---|---|
application_id | - | |
auto_moderation_rule_name | - | |
auto_moderation_rule_trigger_type | - | |
channel_id | - | |
count | - | |
delete_member_days | - | |
id | - | |
members_removed | - | |
message_id | - | |
role_name | - | |
type | - | |
integration_type | - |
AuditLogEntryObject
https://discord.com/developers/docs/resources/audit-log#audit-log-entry-object
Raw Type
-- https://discord.com/developers/docs/resources/audit-log#audit-log-entry-object
type AuditLogEntryObject = {
target_id: string?,
-- ID of the affected entity (webhook, user, role, etc.)
changes: {AuditLogChangeObject}?,
-- Changes made to the target_id
user_id: Snowflake?,
-- User or app that made the changes
id: Snowflake,
-- ID of the entry
action_type: AuditLogEventType,
-- Type of action that occurred
options: {OptionalAuditEntryInfoObject}?,
-- Additional info for certain event types
reason: string?,
-- Reason for the change (1-512 characters)
guild_id: Snowflake?
}| Prop | Type | Description |
|---|---|---|
target_id? | - | |
changes? | - | |
user_id? | - | |
id | - | |
action_type | - | |
options? | - | |
reason? | - | |
guild_id? | - |
WebhookObject
https://discord.com/developers/docs/resources/webhook#webhook-object
Raw Type
-- https://discord.com/developers/docs/resources/webhook#webhook-object
type WebhookObject = {
id: Snowflake,
-- the id of the webhook
type: WebhookType,
-- the type of the webhook
guild_id: Snowflake?,
-- the guild id this webhook is for, if any
channel_id: Snowflake?,
-- the channel id this webhook is for, if any
user: UserObject?,
-- the user this webhook was created by (not returned when getting a webhook with its token)
name: string?,
-- the default name of the webhook
avatar: string?,
-- the default user avatar hash of the webhook
token: string?,
-- the secure token of the webhook (returned for Incoming Webhooks)
application_id: Snowflake?,
-- the bot/OAuth2 application that created this webhook
source_guild: GuildObject?,
-- the guild of the channel that this webhook is following (returned for Channel Follower Webhooks)
source_channel: ChannelObject?,
-- the channel that this webhook is following (returned for Channel Follower Webhooks)
url: string?
}| Prop | Type | Description |
|---|---|---|
id | - | |
type | - | |
guild_id? | - | |
channel_id? | - | |
user? | - | |
name? | - | |
avatar? | - | |
token? | - | |
application_id? | - | |
source_guild? | - | |
source_channel? | - | |
url? | - |
AuditLogObject
https://discord.com/developers/docs/resources/audit-log#audit-log-object
Raw Type
-- https://discord.com/developers/docs/resources/audit-log#audit-log-object
type AuditLogObject = {
application_commands: {ApplicationCommandObject},
-- List of application commands referenced in the audit log
audit_log_entries: {AuditLogEntryObject},
-- List of audit log entries, sorted from most to least recent
auto_moderation_rules: {AutomoderationRuleObject},
-- List of auto moderation rules referenced in the audit log
guild_scheduled_events: {GuildScheduledEventObject},
-- List of guild scheduled events referenced in the audit log
integrations: {IntegrationObject},
-- List of partial integration objects
threads: {ChannelObject},
-- List of threads referenced in the audit log*
users: {UserObject},
-- List of users referenced in the audit log
webhooks: {WebhookObject}
}| Prop | Type | Description |
|---|---|---|
application_commands | - | |
audit_log_entries | - | |
auto_moderation_rules | - | |
guild_scheduled_events | - | |
integrations | - | |
threads | - | |
users | - | |
webhooks | - |
InviteObject
https://discord.com/developers/docs/resources/invite#invite-object
Raw Type
-- https://discord.com/developers/docs/resources/invite#invite-object
type InviteObject = {
type: InviteTypes,
-- the type of invite
code: string,
-- the invite code (unique ID)
guild: GuildObject?,
-- the guild this invite is for
channel: ChannelObject?,
-- the channel this invite is for
inviter: UserObject?,
-- the user who created the invite
target_type: InviteTargetTypes,
-- the type of target for this voice channel invite
target_user: UserObject?,
-- the user whose stream to display for this voice channel stream invite
target_application: ApplicationObject?,
-- the embedded application to open for this voice channel embedded application invite
approximate_presence_count: number?,
-- approximate count of online members, returned from the GET /invites/<code> endpoint when with_counts is true
approximate_member_count: number?,
-- approximate count of total members, returned from the GET /invites/<code> endpoint when with_counts is true
expires_at: string?,
-- the expiration date of this invite, returned from the GET /invites/<code> endpoint when with_expiration is true
stage_instance: StageInstanceObject?,
-- stage instance data if there is a public Stage instance in the Stage channel this invite is for (deprecated)
guild_scheduled_event: GuildScheduledEventObject?
}| Prop | Type | Description |
|---|---|---|
type | - | |
code | - | |
guild? | - | |
channel? | - | |
inviter? | - | |
target_type | - | |
target_user? | - | |
target_application? | - | |
approximate_presence_count? | - | |
approximate_member_count? | - | |
expires_at? | - | |
stage_instance? | - | |
guild_scheduled_event? | - |
GuildVanityUrl
https://discord.com/developers/docs/resources/guild#get-guild-vanity-url
Raw Type
-- https://discord.com/developers/docs/resources/guild#get-guild-vanity-url
type GuildVanityUrl = {
code: string,
uses: number
}InviteMetadataObject
https://discord.com/developers/docs/resources/invite#invite-metadata-object
Raw Type
-- https://discord.com/developers/docs/resources/invite#invite-metadata-object
type InviteMetadataObject = {
uses: number,
-- number of times this invite has been used
max_uses: number,
-- max number of times this invite can be used
max_age: number,
-- duration (in seconds) after which the invite expires
temporary: boolean,
-- whether this invite only grants temporary membership
created_at: string
}FollowedChannelObject
https://discord.com/developers/docs/resources/channel#followed-channel-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#followed-channel-object
type FollowedChannelObject = {
channel_id: Snowflake,
-- source channel id
webhook_id: Snowflake
}GuildPreviewObject
https://discord.com/developers/docs/resources/guild#guild-preview-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-preview-object
type GuildPreviewObject = {
id: Snowflake,
-- guild id
name: string,
-- guild name (2-100 characters)
icon: string?,
-- icon hash
splash: string?,
-- splash hash
discovery_splash: string?,
-- discovery splash hash
emojis: {EmojiObject},
-- custom guild emojis
features: {GuildFeature},
-- enabled guild features
approximate_member_count: number,
-- approximate number of members in this guild
approximate_presence_count: number,
-- approximate number of online members in this guild
description: string?,
-- the description for the guild
stickers: {StickerObject}
}| Prop | Type | Description |
|---|---|---|
id | - | |
name | - | |
icon? | - | |
splash? | - | |
discovery_splash? | - | |
emojis | - | |
features | - | |
approximate_member_count | - | |
approximate_presence_count | - | |
description? | - | |
stickers | - |
BanObject
https://discord.com/developers/docs/resources/guild#ban-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#ban-object
type BanObject = {
reason: string?,
-- the reason for the ban
user: UserObject
}| Prop | Type | Description |
|---|---|---|
reason? | - | |
user | - |
VoiceRegionObject
https://discord.com/developers/docs/resources/voice#voice-region-object
Raw Type
-- https://discord.com/developers/docs/resources/voice#voice-region-object
type VoiceRegionObject = {
id: string,
-- unique ID for the region
name: string,
-- name of the region
optimal: boolean,
-- true for a single server that is closest to the current user's client
deprecated: boolean,
-- whether this is a deprecated voice region (avoid switching to these)
custom: boolean
}GuildWidgetSettingsObject
https://discord.com/developers/docs/resources/guild#guild-widget-settings-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-widget-settings-object
type GuildWidgetSettingsObject = {
enabled: boolean?,
-- whether the widget is enabled
channel_id: Snowflake?
}GuildWidgetObject
https://discord.com/developers/docs/resources/guild#guild-widget-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-widget-object
type GuildWidgetObject = {
id: Snowflake,
-- guild id
name: string,
-- guild name (2-100 characters)
instant_invite: string?,
-- instant invite for the guilds specified widget invite channel
channels: {ChannelObject},
-- voice and stage channels which are accessible by @everyone
members: {UserObject},
-- special widget user objects that includes users presence (Limit 100)
presence_count: number
}| Prop | Type | Description |
|---|---|---|
id | - | |
name | - | |
instant_invite? | - | |
channels | - | |
members | - | |
presence_count | - |
PromptOptionObject
https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-option-structure
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-option-structure
type PromptOptionObject = {
id: Snowflake?,
-- ID of the prompt option
channel_ids: {Snowflake},
-- IDs for channels a member is added to when the option is selected
role_ids: {Snowflake},
-- IDs for roles assigned to a member when the option is selected
emoji: EmojiObject | nil,
-- Emoji of the option (see below)
emoji_id: Snowflake?,
-- Emoji ID of the option (see below)
emoji_name: string?,
-- Emoji name of the option (see below)
emoji_animated: boolean?,
-- Whether the emoji is animated (see below)
title: string?,
-- Title of the option
description: string?
}| Prop | Type | Description |
|---|---|---|
id? | - | |
channel_ids | - | |
role_ids | - | |
emoji | - | |
emoji_id? | - | |
emoji_name? | - | |
emoji_animated? | - | |
title? | - | |
description? | - |
OnboardingPromptObject
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-prompt-structure
type OnboardingPromptObject = {
id: Snowflake | nil,
-- ID of the prompt
type: PromptTypes?,
-- Type of prompt
options: {PromptOptionObject},
-- Options available within the prompt
title: string?,
-- Title of the prompt
single_select: boolean?,
-- Indicates whether users are limited to selecting one option for the prompt
required: boolean?,
-- Indicates whether the prompt is required before a user completes the onboarding flow
in_onboarding: boolean?
}| Prop | Type | Description |
|---|---|---|
id | - | |
type? | - | |
options | - | |
title? | - | |
single_select? | - | |
required? | - | |
in_onboarding? | - |
GuildOnboardingObject
https://discord.com/developers/docs/resources/guild#guild-onboarding-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#guild-onboarding-object
type GuildOnboardingObject = {
guild_id: Snowflake,
-- ID of the guild this onboarding is part of
prompts: {OnboardingPromptObject},
-- Prompts shown during onboarding and in customize community
default_channel_ids: {Snowflake},
-- Channel IDs that members get opted into automatically
enabled: boolean,
-- Whether onboarding is enabled in the guild
mode: OnboardingMode
}| Prop | Type | Description |
|---|---|---|
guild_id | - | |
prompts | - | |
default_channel_ids | - | |
enabled | - | |
mode | - |
GuildScheduledEventUserObject
Raw Type
-- https://discord.com/developers/docs/resources/guild-scheduled-event#guild-scheduled-event-user-object
type GuildScheduledEventUserObject = {
guild_scheduled_event_id: Snowflake,
-- the scheduled event id which the user subscribed to
user: UserObject,
-- user which subscribed to an event
member: GuildMemberObject?
}| Prop | Type | Description |
|---|---|---|
guild_scheduled_event_id | - | |
user | - | |
member? | - |
GuildTemplateObject
https://discord.com/developers/docs/resources/guild-template#guild-template-object
Raw Type
-- https://discord.com/developers/docs/resources/guild-template#guild-template-object
type GuildTemplateObject = {
code: string,
-- the template code (unique ID)
name: string,
-- template name
description: string?,
-- the description for the template
usage_count: number,
-- number of times this template has been used
creator_id: Snowflake,
-- the ID of the user who created the template
creator: UserObject,
-- the user who created the template
created_at: string,
-- when this template was created
updated_at: string,
-- when this template was last synced to the source guild
source_guild_id: Snowflake,
-- the ID of the guild this template is based on
serialized_source_guild: GuildObject,
-- the guild snapshot this template contains
is_dirty: boolean?
}| Prop | Type | Description |
|---|---|---|
code | - | |
name | - | |
description? | - | |
usage_count | - | |
creator_id | - | |
creator | - | |
created_at | - | |
updated_at | - | |
source_guild_id | - | |
serialized_source_guild | - | |
is_dirty? | - |
StickerPackObject
https://discord.com/developers/docs/resources/sticker#sticker-pack-object
Raw Type
-- https://discord.com/developers/docs/resources/sticker#sticker-pack-object
type StickerPackObject = {
id: Snowflake,
-- id of the sticker pack
stickers: {StickerObject},
-- the stickers in the pack
name: string,
-- name of the sticker pack
sku_id: Snowflake,
-- id of the pack's SKU
cover_sticker_id: Snowflake?,
-- id of a sticker in the pack which is shown as the pack's icon
description: string,
-- description of the sticker pack
banner_asset_id: Snowflake?
}| Prop | Type | Description |
|---|---|---|
id | - | |
stickers | - | |
name | - | |
sku_id | - | |
cover_sticker_id? | - | |
description | - | |
banner_asset_id? | - |
IntegrationApplicationObject
https://discord.com/developers/docs/resources/guild#integration-application-object
Raw Type
-- https://discord.com/developers/docs/resources/guild#integration-application-object
type IntegrationApplicationObject = {
id: Snowflake,
-- the id of the app
name: string,
-- the name of the app
icon: string?,
-- the icon hash of the app
description: string,
-- the description of the app
bot: UserObject?
}| Prop | Type | Description |
|---|---|---|
id | - | |
name | - | |
icon? | - | |
description | - | |
bot? | - |
ConnectionObject
https://discord.com/developers/docs/resources/user#connection-object
Raw Type
-- https://discord.com/developers/docs/resources/user#connection-object
type ConnectionObject = {
id: string,
-- id of the connection account
name: string,
-- the username of the connection account
type: ConnectionObjectServices,
-- the service of this connection
revoked: boolean?,
-- whether the connection is revoked
integrations: {IntegrationObject}?,
-- an array of partial server integrations
verified: boolean,
-- whether the connection is verified
friend_sync: boolean,
-- whether friend sync is enabled for this connection
show_Activity: boolean,
-- whether activities related to this connection will be shown in presence updates
two_way_link: boolean,
-- whether this connection has a corresponding third party OAuth2 token
visibility: ConnectionVisibilityTypes
}| Prop | Type | Description |
|---|---|---|
id | - | |
name | - | |
type | - | |
revoked? | - | |
integrations? | - | |
verified | - | |
friend_sync | - | |
show_Activity | - | |
two_way_link | - | |
visibility | - |
ApplicationRoleConnectionObject
https://discord.com/developers/docs/resources/user#application-role-connection-object
Raw Type
-- https://discord.com/developers/docs/resources/user#application-role-connection-object
type ApplicationRoleConnectionObject = {
platform_name: string?,
-- the vanity name of the platform a bot has connected (max 50 characters)
platform_username: string?,
-- the username on the platform a bot has connected (max 100 characters)
metadata: ApplicationRoleConnectionMetadataObject
}| Prop | Type | Description |
|---|---|---|
platform_name? | - | |
platform_username? | - | |
metadata | - |
SessionStartLimitObject
https://discord.com/developers/docs/topics/gateway#session-start-limit-object
Raw Type
-- https://discord.com/developers/docs/topics/gateway#session-start-limit-object
type SessionStartLimitObject = {
total: number,
-- Total number of session starts the current user is allowed
remaining: number,
-- Remaining number of session starts the current user is allowed
reset_after: number,
-- Number of milliseconds after which the limit resets
max_concurrency: number
}AllowedMentionObject
https://discord.com/developers/docs/resources/channel#allowed-mentions-object
Raw Type
-- https://discord.com/developers/docs/resources/channel#allowed-mentions-object
type AllowedMentionObject = {
parse: {AllowedMentionTypes}?,
-- An array of allowed mention types to parse from the content.
users: {string}?,
-- Array of role_ids to mention (Max size of 100)
roles: {string}?,
-- Array of user_ids to mention (Max size of 100)
replied_user: boolean?
}| Prop | Type | Description |
|---|---|---|
parse? | - | |
users? | - | |
roles? | - | |
replied_user? | - |
ForumAndMediaThreadMessageObject
Raw Type
-- https://discord.com/developers/docs/resources/channel#start-thread-in-forum-or-media-channel-forum-and-media-thread-message-params-object
type ForumAndMediaThreadMessageObject = {
content: string?,
-- Message contents (up to 2000 characters)
embeds: {EmbedObject}?,
-- Up to 10 rich embeds (up to 6000 characters)
allowed_mentions: AllowedMentionObject?,
-- Allowed mentions for the message
components: {ComponentObjects}?,
-- Components to include with the message
sticker_ids: {Snowflake}?,
-- IDs of up to 3 stickers in the server to send in the message
attachments: {AttachmentObject}?,
-- Attachment objects with filename and description. See Uploading Files
flags: number?
}| Prop | Type | Description |
|---|---|---|
content? | - | |
embeds? | - | |
allowed_mentions? | - | |
components? | - | |
sticker_ids? | - | |
attachments? | - | |
flags? | - |
InteractionCallbackAutocompleteObject
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-response-object-interaction-callback-data-structure
type InteractionCallbackAutocompleteObject = {
choices: {ApplicationCommandOptionChoiceObject}?
}| Prop | Type | Description |
|---|---|---|
choices? | - |
InteractionCallbackModalObject
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-response-object-interaction-callback-data-structure
type InteractionCallbackModalObject = {
custom_id: string?,
-- Developer-defined identifier for the modal, max 100 characters
title: string?,
-- Title of the popup modal, max 45 characters
components: {ComponentObjects}
}| Prop | Type | Description |
|---|---|---|
custom_id? | - | |
title? | - | |
components | - |
InteractionResponseObject
Raw Type
-- https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-response-object-interaction-callback-type
type InteractionResponseObject = {
type: InteractionCallbackType,
-- the type of response
data: (Partial<MessageObject> | InteractionCallbackAutocompleteObject | InteractionCallbackModalObject)?
}| Prop | Type | Description |
|---|---|---|
type | - | |
data? | - |
Last updated on