Datamining
Client enums
The constants the web client ships with: permission bits, channel and message types, gateway opcodes, error codes and more. They're read from every new build, so new, removed and renumbered members show up as they land, and anything the API docs don't list is marked.
| Permissions Permission bits for roles and channel overwrites | 53 | Already here |
| ChannelTypes Channel type numbers | 20 | Already here |
| ChannelFlags Bits in channel.flags | 20 | Already here |
| MessageTypes Message type numbers, system messages included | 68 | Already here |
| MessageFlags Bits in message.flags | 19 | Already here |
| AttachmentFlags Bits in attachment.flags | 9 | Already here |
| UserFlags Bits in user.flags and public_flags | 22 | Already here |
| GuildMemberFlags Bits in guild member flags | 11 | Already here |
| RelationshipTypes Friend, block and pending request states | 7 | Already here |
| ActivityTypes Presence activity types | 7 | Already here |
| ActivityFlags Bits in activity.flags | 10 | Already here |
| ApplicationFlags Bits in application.flags | 22 | Already here |
| GatewayOpcodes Gateway opcodes the client sends and handles | 32 | Already here |
| GatewayDispatchEvents Gateway dispatch events the client has a handler for | 201 | Already here |
| AuditLogActionTypes Audit log action type numbers | 81 | Already here |
| InteractionTypes Interaction type numbers | 12 | Already here |
| InteractionContextTypes Where an interaction can be used | 3 | Already here |
| ApplicationCommandTypes Slash, user and message command types | 4 | Already here |
| ApplicationCommandOptionTypes Command option types | 11 | Already here |
| ComponentTypes Message and modal component types | 23 | Already here |
| ButtonStyles Button style numbers | 6 | Already here |
| StickerFormat Sticker format types | 4 | Already here |
| VerificationLevels Guild verification levels | 5 | Already here |
| ExplicitContentFilterLevels Guild explicit media filter levels | 3 | Already here |
| GuildNSFWLevels Guild NSFW levels | 4 | Already here |
| InviteTargetTypes What an invite points at besides the channel | 5 | Already here |
| GuildScheduledEventEntityTypes Where a scheduled event takes place | 5 | Already here |
| GuildScheduledEventStatus Scheduled event states | 4 | Already here |
| AutoModerationTriggerTypes AutoMod rule trigger types | 8 | Already here |
| AutoModerationActionTypes What an AutoMod rule does when it fires | 4 | Already here |
| SKUTypes Store SKU types | 6 | Already here |
| SKUFlags Bits in sku.flags, masks included | 16 | Already here |
| EntitlementTypes How an entitlement was granted | 17 | Already here |
| JSONErrorCodes REST API error codes the client knows by name | 215 | Already here |
| RPCCommands Commands the local RPC server accepts | 132 | Already here |
| RPCEvents Events an RPC client can subscribe to | 51 | Already here |
| RPCErrors Error codes in RPC responses | 34 | Already here |
| RPCCloseCodes Close codes for RPC sockets | 9 | Already here |
No enum or member matches that. Any part of a name works.
Each enum is located by a few members it's known to have, then read whole from that one object in current.js, so a member renamed or dropped elsewhere in the bundle can't leak in. Lazy-loaded chunks aren't scanned.
Enum names are ours; members and values are verbatim. "Already here" means nothing has changed since tracking started.
"Not in docs" compares values with the reference tables, and only for enums that have one. Read Nov 9, 16:51 UTC.