#github-notifications

1 messages · Page 36 of 1

chilly siloBOT
#

Description

If you delete a guild scheduled event by deleting its associated channel (which deletes the event as well) there is no deletion event sent.

Steps to Reproduce

  1. Create guild scheduled event in a voice or stage channel
  2. Delete voice or stage channel

Expected Behavior

Guild scheduled event delete event should be sent.

Current Behavior

Guild scheduled event delete event is not sent.

Screenshots/Videos

No response

Client and System Information

...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Currently, there is no way for end users to know whether a bot can fetch memberships, presence data, and message content. With this implemented, the profile of the bot would display something like:

  • cannot read messages in the servers it is in
  • can fetch your presence status if you share servers with this bot
  • can fetch memberships of the servers it is in

While developer portal has this info, it is currently only accessible to bot owner itself, making it only useful for ...

chilly siloBOT
#

Just like lambda people might not know what the "identify" scope is, but Discord shows a more friendly description when people are asked to grant access to their account. People not knowing what intents do is not an issue as it can simply be explained directly with sentences like "this bot can access your status" and the likes, maybe hyperlinking longer support articles on the topic

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I am Zina and I propose a new discord feature.

Copy id feature for slash commands when right clicking one if the user has developer mode enabled

Alternatives considered
Opening network tab
Sending slash command in client
Monitoring request data and copying the id from that tab

this is not a good idea because I always in a voice-channel streaming and my user account token gets exposed when scrolling down to the request payload and some bad user can steal my user token and...

chilly siloBOT
chilly siloBOT
#

Description

Commands which feature optional attachment options seem to not work as intended. Trying to omit the option and hitting the send message button forces the attachment option to pop up (including file picker), and supplying an attachment per the app's whims causes the interaction to fail anyways. This behavior does not happen on desktop, untested on the web version.

I assume these two issues are unrelated, but I am including the second issue just in case.

I enabled as much...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

That could work.

On Wed, Mar 2, 2022, 7:28 AM Jakob @.***> wrote:

What about an easier version without the more complex stuff?


Reply to this email directly, view it on GitHub
https://github.com/discord/discord-api-docs/discussions/3581#discussioncomment-2280158,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXQSAQG2TBLENM2FDRN3Y7LU55NF3ANCNFSM5BQB3H5A
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/ap...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

It was my intention but sometimes one forgets things. I'll close this out under the assumption that it was just reporting the client cutting off requests too soon. If someone finds that they are receiving interactions that immediately 404 when acking, I'd ask for a separate issue with:

  • if you're using http interactions, x-signature-timestamp
  • the interaction's id
  • json of the definition for the command/button/modal/etc that was used so it can be recreated
  • if you're using http in...
chilly siloBOT
chilly siloBOT
#

Description

If an attachment argument comes before arguments with autocomplete, the autocomplete fails to load. If the attachment argument is last, everything works as intended.

Steps to Reproduce

Slash command with at least one attachment argument, in the first position, and another argument with autocomplete following the attachment.

Upload attachment, and see autocomplete fail to load for the following arguments.

Expected Behavior

Autocomplete should load.

Curren...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Autocomplete still bugs and uses name instead of value.

Steps to Reproduce

Happens when you switch from "no results" to previously cached choices.

See the video of the repro

Expected Behavior

Returns value

Current Behavior

Returns name

Screenshots/Videos

https://user-images.githubusercontent.com/5685050/156463662-071225ab-b970-451b-a45a-2c2f6bf22366.mov

Client and System Information

`Stable 116961 (5fb0703) Host 0.0.265 OS X 10.15.7 ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

See this issue https://github.com/discord/discord-api-docs/issues/535

It's closed as fixed, but as the last comment says, this API is always returning null for me in the Java Discord client library...

Example code:

                DiscordClient client = DiscordClient.create( token );
                gateway = client.login().block();
                gateway.on( MessageCreateEvent.class )
               .subscribe( event -> {
                   try {
        ...
chilly siloBOT
chilly siloBOT
#

Description

RE: #4451

Hey, so I sent an email with the following text: https://pastebin.com/5h8p0DKF
I received a response from Clyde bot: https://pastebin.com/kqKPLZBP
Then I sent: https://pastebin.com/8X5A1W3b
After 22 days (yesterday) I received the following answer: https://pastebin.com/2tWhn7LW
Then I sent the following response: Its discord-owned server

But... Today my request was closed without any answers...

I'm so sorry for these issues, I know this is not the ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I am looking to connect with someone in the bug bounty and/or reports department to report a hack/bug I've managed to find. I have successfully acquired discord's api's key which include stripe, braintree, and ALGOLIA_KEY as well as various endpoints and other critical information. These are PRODUCTION Keys in which I'd like to report for compensation. Please reach out (discord dev team or the likes) for more information and/or details to replicate

Steps to Reproduce

I...

chilly siloBOT
chilly siloBOT
#

Description

The member object in the voice-state-object has mute/deaf properties. It appears that their values represent the previous (guild) mute/deaf state, not the current one.

Since this is an update ..packet?, it would make sense to include the previous state, but this being an oversight is equally possible, so I'm unsure whether this is by-design or not.

Steps to Reproduce

Observe voice-state-u...

chilly siloBOT
chilly siloBOT
#

Description

When using autocomplete parameters, if you try to copy and paste the command anything after the autocomplete gets merged into the one parameter.

Steps to Reproduce

Set a command option to autocomplete, and try copy pasting it after running the command. As long as it isn't the last option it should run into this issue.

Expected Behavior

Parameters should be able to copy and paste properly where the arguments stay in their option rather than merge all arguments.

##...

chilly siloBOT
chilly siloBOT
#

Description

If you set the info for the application so it is eligible to be in discovery and then put it in discovery, it doesn't get removed if it doesn't have all the required information.

Steps to Reproduce

  1. Fill out everything and enable discovery
  2. Remove some info
  3. Check the page to show discovery status

Expected Behavior

It would be removed if the required data is no longer there.

Current Behavior

It stays in discovery.

Screenshots/Videos

_No respons...

chilly siloBOT
#

Hello:

A few hours ago an event occurred on the Discord Developers server in which an App Discovery Sneek Peak was displayed, in addition, we were granted access to modify some parameters that will be displayed on the page when a user clicks on the bot.

One of the things that concerns me is the requirement that commands cannot contain harmful or inappropriate names.

First of all, I know that one of the Discord employees mentioned on the Discord Developers server that the NSFW commands to a...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Upon trying to update any (unverified) bots intents, I am redirected to the login page & my changes are not saved.

Steps to Reproduce

  1. Go to an unverified bots privileged intents.
  2. Try change them (on->off or off->on).
  3. Save the changes.

Expected Behavior

Changes are saved.

Current Behavior

You are logged out & promoted to log back into the developer portal and your changes are not saved.

Screenshots/Videos

No response

Client and System ...

chilly siloBOT
#

Description

When you have unsaved changed on the developer portal you are typically prevented from changing page until you have either discarded your changes or saved them. However, you are still able to click on the "Select App" / "Select Team" dropdowns & change the current selected application/team - Despite this visual selection, you continue to stay on your unsaved changes page.

Steps to Reproduce

  1. Have unsaved changes (name update, avatar update, description update, etc).
    ...
chilly siloBOT
#

Modals are really good for getting user input, but right now they don't give much towards explaining to the user what the modal does / will do. Currently the only options for displaying data to the user while they are filling out a modal is the title and the text components, which are fairly limited.
A description would allow more information to be presented to the user while they are filling out a modal.

chilly siloBOT
#

I think this poses way too many architectual challenges to implement feasibly.

Things like

  • Discord has to send out interactions to every single application in the server
  • Handling of the 100% will be happening race conditions of different applications responding
  • Somehow displaying to the user what is happening
  • Loading the slash command list is a blocking operation, you cannot send a message that starts with / until the list has loaded, which is already slow for some
  • etc..
#

It would be nice if instead of bots having to register their commands through API, they could return their command list dynamically when requested through an interaction, which would give the bot more control of where, when and who is requesting their command list and what commands should be returned, and also allow them to update instantly and without limits their command list.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

We received a Guild Scheduled Event with "description": null but it is not documented to be nullable, this PR changes this.

{
  //...
  "guild_scheduled_events": [
    {
      "status": 1,
      "sku_ids": [],
      "scheduled_start_time": "2023-01-13T20:00:00+00:00",
      "scheduled_end_time": "2023-01-13T21:00:00+00:00",
      "privacy_level": 2,
      "name": "test",
      "image_hash": null,
      "id": "931256650600415272",
      "guild_id": "699595207720566824",...
chilly siloBOT
chilly siloBOT
#

Description

Discord server widget shows all the stuff about server
but not the server icon :/
why
the icon is in the server widget but not in the json

Steps to Reproduce

just add server iconURL

Expected Behavior

iconURL should show the icon of the Server

Current Behavior

doesn't show icon of the server

Screenshots/Videos

https://discord.com/api/guilds/459910889924067358/widget.json => doesn't have server url

https://discordapp.com/api/guilds/45991088992406...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Discord API returns incorrect position values in Channel Objects.

Steps to Reproduce

Steps to Reproduce:

  1. Add your bot in a server with adequate channels.
  2. make a request to GET /guilds/{guild.id}/channels
  3. Sort channels by position output Channel names
  4. Compare the result with your server

Expected Behavior

Channel Positions are Consistent with information viewed from clients.

Current Behavior

Some channels are reporting incorrect positions i...

#

You'll also need to take channel types into account. Here's some logic i wrote a big ago (in javascript);

const SortSections = {
  [ChannelTypes.GUILD_NEWS_THREAD]: 1,
  [ChannelTypes.GUILD_PUBLIC_THREAD]: 1,
  [ChannelTypes.GUILD_PRIVATE_THREAD]: 1,

  [ChannelTypes.GUILD_TEXT]: 2,
  [ChannelTypes.GUILD_CATEGORY]: 2,
  [ChannelTypes.GUILD_NEWS]: 2,
  [ChannelTypes.GUILD_STORE]: 2,

  [ChannelTypes.GUILD_VOICE]: 3,
  [ChannelTypes.GUILD_STAGE_VOICE]: 3,
};

function di...
#

You'll also need to take channel types into account. Here's some logic i wrote a big ago (in javascript):

const SortSections = {
  [ChannelTypes.GUILD_NEWS_THREAD]: 1,
  [ChannelTypes.GUILD_PUBLIC_THREAD]: 1,
  [ChannelTypes.GUILD_PRIVATE_THREAD]: 1,

  [ChannelTypes.GUILD_TEXT]: 2,
  [ChannelTypes.GUILD_CATEGORY]: 2,
  [ChannelTypes.GUILD_NEWS]: 2,
  [ChannelTypes.GUILD_STORE]: 2,

  [ChannelTypes.GUILD_VOICE]: 3,
  [ChannelTypes.GUILD_STAGE...
#

This could probably do with some documentation, yes. The positions in the API are not canonicalized. Channels which are never moved do not have a position at all (e.g. you determine their position based on their creation date, which is conveniently their id). Channels also have restrictions based on their type (for example, a voice channel in the same category as a text channel can not be above that text channel). Additionally, clients only update the positions of channels that they have pe...

#

Description

Currently team members get every permission out there,
Discord requires you to have a 2fa code in hand to check the token of a bot but you can add team members
to the bot's team without 2fa making the current 2fa requirements useless.

Steps to Reproduce

  • go to the developer portal
  • add someone to your bot's team
  • observe.

Expected Behavior

it should require a 2fa confirmation.

Current Behavior

it does not require a 2fa confirmation so people who are i...

#

This could probably do with some documentation, yes. The positions in the API are not canonicalized. Channels which are never moved do not have a position at all (e.g. you determine their position based on their creation date, which is conveniently their id). Channels also have restrictions based on their type (for example, a voice channel in the same category as a text channel can not be above that text channel). Additionally, clients only update the positions of channels that they have ...

chilly siloBOT
#

Just spent a decent amount of time trying to figure out what the hell "Doesn't look like anything to me" means. Finally found this issue through Google searching. Still not entirely clear on what it means.

For those wondering, "Doesn't look like anything to me" is a reference to Westworld, when a "host" (robot) is looking at something that they are not allowed to process. Don't look it up unless you're happy to be spoiled, though.

chilly siloBOT
#

Command (didn't truncate anything):

{"name":"appcmd","default_permission":false,"options":[{"name":"permissions","description":"Edit command permissions","type":2,"options":[{"name":"get","description":"See permissions of all commands or specific one","type":1,"options":[{"name":"id","autocomplete":true,"type":3,"description":"ApplicationCommand ID"}]},{"name":"set","description":"Set permission for a command","type":1,"options":[{"name":"id","required":true,"autocomplete":true,"typ...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

this doesn't make any sense. the bot would still need the Create Invite permission to create the invite, and it would be a pointless headache to get the users to authorize via oauth2, when currently they can skip all of that by just clicking a link to the invite, which is better than this request in every way. I would not make the bot use this, and this request still seems totally useless to me. literally just link to the discord.gg url directly.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

While it sounds good on an open source bot, there's still a chance for phishing on closed sourced ones.
The users of the bot may not be tech savvy.
Imagine one link going to an external site which "requires" Discord authentication which triggers an interaction webhook to make the Modal popup, which will ask for the 2FA to continue.
It's a double-edged sword which can abused if the bot dev knows his stuff.
If Discord implements something like an encrypted password input field, then this ca...

#

While what suspense mentioned seems like a far more sane solution/implementation, I personally can't think of anything a user would do outside of OAuth2 that would prompt for a 2FA code. Even bots with [mass-]moderation functionality have limited ability over a server and its members, especially when you take into consideration ratelimits.

Assuming this isn't just a shitpost (the idea seems incredibly asinine even on a surface level), I'm curious to know what legitimate use case could come ...

#

Imagine one link going to an external site which "requires" Discord authentication which triggers an interaction webhook to make the Modal popup, which will ask for the 2FA to continue.

That's not how interactions work, interactions are only created by user actions (using a slash command, clicking a button and the likes). they can't be programatically created. And as mentioned in my previous mesage, Discord wouldn't return your 2FA code itself but either whether it was valid or not, or n...

chilly siloBOT
#

I got the idea today to make an interaction response for the error message. Since modals popup and user may submit wrong information, people may want to know, what the error actually is, but don't want to close the modal and open it again. So I thought about making a response for that.

This can also be useful in other interactions, because bots can give more accurate information about the error. Yes, it is possible to do this with a message, but ephemeral messages need to get dismissed or ...

chilly siloBOT
#

Currently it is impossible to distinguish between simply not receiving ratelimit headers and a particular route not having any specific ratelimit.

It would be cool if, with v10, Discord started sending a sentinel value in X-RateLimit-Bucket or maybe using X-RateLimit-Scope to indicate what type of ratelimits a particular route is affected by. This would mean that client libraries knows whether ratelimit headers just wasn't received, or the route is only affected by the global ratelimit...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When I login to dev portal, It redirects to login screen even I typed correct information and worked.

Steps to Reproduce

  1. Open https://discord.com/developers/applications
  2. Login with mail & pass, or QR
  3. Observe

Expected Behavior

Logged in and see application

Current Behavior

Redirects to https://discord.com/login?redirect_to=%2Fdevelopers%2Fapplications

Screenshots/Videos

https://user-images.githubusercontent.com/59691627/157197800-bb4ab353-f...

chilly siloBOT
#

Description

When responding to a component interaction with type 7 and the data is invalid the discord client won't show that the interaction had failed.

If i change the type to 4 the client will show that it failed

Steps to Reproduce

receive a component interaction and respond with:

{
type: 7,
data:{}
}

Expected Behavior

The discord client would show that the interaction had failed

Current Behavior

The client stops the loading state

Screenshots/Vi...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Some of these partial outages such as the one today would break a lot more functionality than what the outage has caused. Again, many bot developers had all their commands break because of the typing endpoint 403ing with html when most of the command functionally works fine. I think it’s necessary to let developers know of the random htmls from cloudflare when you disable endpoints so they don’t have to be on-the-clock with discord status updates and update real-time to work around issues th...

#

Its best practice (and recommended) for libraries to ignore unknown/undocumented fields. If a library chooses not to do that, or a bot using the raw API chooses not to do that, that's on them as undocumented fields are added and removed literally all the time.

As for the other complaint, its an outage, unexpected behavior is expected. Its not production behavior, it doesn't need to be documented, and can't be documented. When things break, weird things happen, deal with it.

#

Its best practice (and recommended) for libraries to ignore unknown/undocumented fields. If a library chooses not to do that, or a bot using the raw API chooses not to do that, that's on them as undocumented fields are added and removed literally all the time.
I see nothing on the current docs that say such a thing is best practice, and the Discord API is the only place where I notice these changes constantly. Other APIs (Twilio, stripe, or the Windows API do not introduce random fields in...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

It is currently undocumented that a user must be able to "Send Messages" as well as "Use Application Commands" in order to invoke a user command. This comes as an additional complication because of the intersection of channel permissions and user permissions. Attempts to invoke a user command in a channel which the user cannot speak in (e.g., a rules channel) will result in a permission denied error, as if the underlying application command provider had insufficient permissions.

This is c...

chilly siloBOT
chilly siloBOT
#

I'd support this if and only if bot developers are not involved in any chain of the process apart from

  1. Bot asks discord to display a mfa prompt to user within the discord client
  2. Discord asks the user to complete an mfa prompt (app codes for some people, email codes for others)
  3. Discord sends the bot (true|false), that is the only info that a bot should receive.
  4. Bot decides to (A) proceed with spicy action, (B) Not proceed

A real world use-case I can see would be if a use...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Exactly my concern @imranbarbhuiya

Moreover, the whole point of using 2FA in commands is to prevent compromised accounts from using the commands right?
But if an account with 2FA enabled got compromised in the first place, there's a high chance that they have the means to get the 2FA code as well. Which totally defeats the purpose of enforcing it in a command.

But if we're using it just for the sake of confirmation, something like "Type the command name to confirm" should suffice.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

API return Internal Server Error on try to upload .zip file in application commands.

Steps to Reproduce

upload zip file in application commands

Expected Behavior

file upload successfully

Current Behavior

api server returning Internal Server Error

Screenshots/Videos

image

Client and System Information

Windows 11 Pro 21H2 : build 22000.493
D...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

If the user is scrolled back far enough (around 50 messages), the client will no longer show ephemeral messages. This means it is nearly impossible to actually respond with an error on those kinds of situations. This applies to all context menu commands and all component interactions. Errors could be shown identically to current client errors under a button for example, which is arguably a better user experience.

chilly siloBOT
#

It's just better UX, that's all.

I can't see how this would improve the UX. If anything, it would make it harder to tell whether an error came from Discord or the bot, and would limit flexibility in what and how information is provided with the error, because of the inability to use an embed. Having several lines of red text on a dark background isn't great for accessibility either, so messages would have to be shorter than with a regular response.

Of course, bots wouldn't have to u...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

You said it didn't have "any error responses that work consistently", I interpreted that to be a different problem than the one mentioned earlier. I do see your point that there isn't a great way to present errors for context menu commands, and I agree it should be solved, but that seems to me like a different problem to the one discussed here, and one that should have its own discussion.

chilly siloBOT
#

Currently, Modals can only be sent in the initial response to an interaction.
While this seems like a good UX practice as it makes us respond to the interaction as soon as possible, it's a strict limitation. There are edge cases where we need to defer the response and then send the Modal in a followup.

Here are 2 example use cases:

  1. We need to a perform a slightly time consuming computation (or maybe a DB call) before populating the labels for the TextBoxes on the Modal.
  2. We want to...
#

If you have support built for it, why aren't your interactions REST already? Discord built this system with the gateway pain points in mind. Furthermore, the cases where Discord goes down only for bots and not for users aswell are so rare that it just doesn't make sense to have a backup in place.

If you want commands to be more reliable, just use REST as the default. It's a dedicated service for bots and will probably prove itself as the more reliable option (to us, it already has).

chilly siloBOT
chilly siloBOT
#

In my testing, I removed the terms and privacy policy urls after enabling discovery on my application. What I meant by removed is that discovery would get disabled on it. I do not know what other fields this would apply to because I didn't test with any others, but I would assume it applies to all required fields.

chrome_hqdeMTusk7

ah for that we're going to build an alert/mod...

#

After some more testing I have to correct myself. You get all the scopes the app is authorized for but not the webhooks.incoming scope. applications.commands.update only showed up because the scope was already given the app I tested with.
But the bug still persists: When testing with a fresh application the scopes field is empty while it should contain at least webhook.incoming as the docs imply so.

Here is the code you requested:

@app.route("/webhooks")
def webhoo...
chilly siloBOT
#

Description

The text "Once you authorize, you will be redirected outside of Discord to: null" shows up when using a redirect_uri that does not begin with http(s).

I have added my custom URI scheme redirect to my application in the Developer Portal.

Steps to Reproduce

  1. Create a new application.
  2. Inside a mobile

Expected Behavior

The "once you authorize" text should show my Application name, not null.

Current Behavior

The "once you authorize" text shows up a...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

What's the issue here though? If you've just created the bot, there's no drawback in regenerating it?

At least with most services I've used (I may just use bad services I guess), when you create something (say, for object storage, when you create bucket), you're shown the API key for that once, and afterwards you have to have to regenerate the token (in Discord's case with 2FA). What Discord has done here is effectively put up a giant roadblock of inconvenience for doing so much as gener...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When editing a description that isn't the default language, providing no other settings have changed, you will not be prompted to save your changes until you edit another part of the application.

Steps to Reproduce

  1. Go to the app directory page of a verified bot
  2. While a default description is already set (and saved), add a description for another language.
  3. See that the save your changes prompt does not come up until you save another setting

Expected Beha...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

When you include a permissions=0 in the bot authorize URL, it won't create a role for the bot automatically.

However, when you include a non-zero value, and uncheck all the permissions before continuing, it will still create the role. This is annoying as a server owner, since I can't use the new feature of adding bots in-app on Desktop, because by default most of those links include some permissions, and if I don't want to be forced to have an undeletable role, I can't do anything about...

chilly siloBOT
chilly siloBOT
#

Description

The video permission is not listed in the bot add GUI as a permission and therefore it is always granted when asked for (!), after an authorization has been finished.

Steps to Reproduce

Create an OAuth URL for authorizing a bot to your server with the permissions=512 or any other permissions including the 512 permission.

Example with GiveawayBot:
https://discord.com/oauth2/authorize?client_id=294882584201003009&permissions=512&scope=bot

Go to the link, clic...

chilly siloBOT
#

Description

JSON API output data limited to display only 100 active voice chat users.

Steps to Reproduce

Open a Discord servers' JSON API URL with 100+ active voice chat users.
ie. discord.gg/English

Expected Behavior

Expected Example:
Server has 233 active voice chat users > Output should be displaying the correct output of 233 users.

Current Behavior

Current Behavior Examples:
Server has 252 Active Voice Chat users it shows 100 users.
Server has 98 A...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This seems to be at least partially wrong for request_to_speak_timestamp: we received the following JSON:

"voice_states": [
  {
    "user_id": "...",
    "suppress": false,
    "session_id": "...",
    "self_video": false,
    "self_mute": true,
    "self_deaf": false,
    "request_to_speak_timestamp": null,
    "mute": false,
    "deaf": false,
    "channel_id": "..."
  }
],

So I can confirm that request_to_speak_timestamp is nullable, I don't know if it is a...

chilly siloBOT
chilly siloBOT
#

Here are our current plans. If an item is on this list, we're actively working toward it!

Last updated: 2022-02-02

Developers

  • [ ] New option types

    • [x] Floating-point number

    • [x] Attachment

    • [x] Autocomplete - choices populated dynamically by the application

    • [ ] Datepicker

  • [x] Text input interaction

    • [x] Desktop

    • [x] Android

    • [x] iOS

  • [ ] Age-gated commands - a way to mark commands NSFW s...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I register a parameterless slash command and try to use it, but allthough the registration worked fine, it cannot be used but fails with an error even before the bot is contacted.

Steps to Reproduce

Trying to send PUT request to https://discord.com/api/v9/applications/652517092599267377/guilds/653665297894473764/commands with body [{"name":"ping","description":"Ping back","type":1}]

Sent PUT request to https://discord.com/api/v9/applications/652517092599267377/gu...

chilly siloBOT
#

I observed the same behavior.

But in my observation, the problem is in the updating of the commands, when initially created without parameters, the problem does not happen.

However after performing an update on the command, making it without parameters the error starts happening.

I noticed the same error messages reported above on the desktop and mobile client.

And as reported, the problem seems to be between the client's interaction with the server, as no event arrives via websoc...

#

Here are our current plans. If an item is on this list, we're actively working toward it!

Last updated: 2022-02-02

Developers

  • [ ] New option types

    • [x] Floating-point number
    • [x] Attachment
    • [x] Autocomplete - choices populated dynamically by the application
    • [ ] Datepicker
  • [x] Text input interaction

    • [x] Desktop
    • [x] Android
    • [x] iOS
  • [ ] Age-gated commands - a way to mark commands NSFW so they wi...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Correct, the server widget. Using the URL to extract the number of users online and voice users online, is there a reason it is limited? If so, this is obviously more of a feature request.

Elgato Stream Deck offers the usage of plugins. One of the Discord plug-ins made by Krabs.me > https://www.krabs.me/streamdeck-plugins/discord-member-count

  • Allows you to display the number of Online members and active Voice Chat users on the Stream Deck.

After contacting the developer of the plug-i...

chilly siloBOT
#

Description

I created slash command bot with bot, applications.commands scopes. And create slash command for guild, and command not showed so I create commands as application scope. And still not showing

Steps to Reproduce

const serverless = require("serverless-http");
const express = require("express");
const app = express();
const { CreateRateUseCase } = require("./core/usecase/createRateUseCase");
const nacl = require("tweetnacl");
const getRawBody = require(...
chilly siloBOT
chilly siloBOT
#

Guild Scheduled Events were a good idea. Unfortunately Discord has not went far enough with them, so very few servers are using them atm. I have a few suggestions after implementing them to my bot and reading user feedback in the past few weeks:

  1. Events that take place in a voice or stage channel DO NOT start automatically atm, despite the last screen of creation stating it. If this is intended, please re-think that. Why would it not start automatically ?

  2. You can hide events fr...

chilly siloBOT
#

Another important use case:

In API v10, existing attachments must be specified when editing a message with new attachments. Any attachments not specified will be removed and replaced with the specified list.

What this means is, you can no longer easily append files to a message without having a list of the existing attachments in the message.

Therefore, if the message attachments are not returned in the content of the Interaction response, appending files to an interaction messag...

chilly siloBOT
chilly siloBOT
#

Hey there, so a feature I think would be pretty cool would be the ability to "mention" slash commands, just like how we can mention members, channels etc.

What the mention would provide users is possible a way to simply click on the mention to open up an invocation menu, and a hover on the command mention would provide some sort of information, like the name of the command and what bot it relates to.

chilly siloBOT
chilly siloBOT
#

I agree with community members in this case, but not due to networking issues.

One major benefit to interactions is that you can deploy discord bots to serverless functions (lamda, azure, etc.). Function instances like these have a 'cold start' delay that can take a few seconds to receive and route an interaction and startup the function instance.

Here are three options for them that I have no preference:

  1. Change the global default for all interactions.
  2. Allow an application ...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

In addition to the suggestion, I'd like to add that if modals to contain a description, then the components should become optional. Right now, modals can only be for inputting information, but using them as a confirmation of some action is also good UX and is used by some of the built-in features of the Discord client. (A modal will need to have either a description or components or both. If the modal has no components, it is better to change the button label from Submit to Confirm)

![imag...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Thanks for the report. Interaction successes and failures strictly occur when there is an issue in the send -> receive flow for interactions. The interaction here did succeed, as the bot replied to it with a valid interaction callback. However, since the bot failed to supply a valid message payload its update was not persisted in interaction post processing. Validation errors can occur in numerous post-command operations (including deferred operations bots run within their platform).

#

I think I have found where the bug is.

When the guild is updated, the client receives GUILD_UPDATE event, but the problem is that the event doesn't send any application_command_counts field and thus the client seems to clean that data.

application_command_counts data before the GUILD_UPDATE:
image

application_command_counts data after the GUILD_UPDATE:
![image](http...

chilly siloBOT
#

This behavior looks to be resolved now:

{"code": 50035, "errors": {"0": {"options": {"0": {"_errors": [{"code": "MODEL_TYPE_CONVERT", "message": "Only dictionaries may be used in a ModelType"}]}, "1": {"_errors": [{"code": "MODEL_TYPE_CONVERT", "message": "Only dictionaries may be used in a ModelType"}]}, "2": {"_errors": [{"code": "MODEL_TYPE_CONVERT", "message": "Only dictionaries may be used in a ModelType"}]}, "3": {"_errors": [{"code": "MODEL_TYPE_CONVERT", "message": "Only dicti...
#

Thanks for the report. As stated earlier this behavior appears working as intended, as unspecified fields are interpreted with defaults in mind. As for why garbage fields appear discarded, it is because our API ignores fields which it does not know about. Similar to consumers ignoring new fields, our API will also ignore new fields. This helps keep backwards and forwards compatibility.

#

It looks like we are already checking for the suppress embeds flag when resolving embeds. If you are still seeing this behavior, it is most likely a race condition and your change to wait for us to finishing resolving embeds is likely the best fix. As we intentionally do not lock around message mutations and last writes win, this is unfortunately not easily fixable in our infrastructure.

chilly siloBOT
#

Description

When trying to fetch an attachment with Cloudflare Workers I get a 403 error.

I'm not sure if you are blocking Cloudflare Workers to prevent abuse/scraping but this attachment happens to be uploaded through an interaction to my bot so maybe at least let the bot authorise itself with it's token so it's able to get attachments uploaded with it's own interaction.

Steps to Reproduce

Run this javascript code on a cloudflare worker:

const attachment = await...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

These are great suggestions, thanks for thinking these through and sharing. Some of our initial plans included some of these, e.g. (3) and a few others on this list we did consider but decided against for the first offering of events. Shared these suggestions with the team 👍 we'll have a discussion about where these can fit on our list of improvements we want to make

chilly siloBOT
chilly siloBOT
#

Description

Get current user with a bot token returns a user object in which mfa_enabled and verified are true. In the case of verified this should not be present because this isnt a request in the context of the email oauth2 scope.

Steps to Reproduce

Make the request to /users/@me with bot token.

Expected Behavior

The values are missing, or falsey.

Current Behavior

See description of issue.

Screenshots/Videos

No response

Client and System Information...

chilly siloBOT
#

Initially I understood the reasoning for not allowing it. Obviously there could be unwanted notifications resulting from it. But time and feedback has shown me that making actual use of guild scheduled events will never be widespread without a bot doing work in the background or using its own embed to display event data. Not being able to sync up the bot events users list with the guild scheduled event "interested" list is a shame, because it will never be fully seamless that way. Here is how...

chilly siloBOT
#

Description

The channel history endpoint returns messages with no content on api v10 despite the message content intent being present

Steps to Reproduce

Run this

curl "https://canary.discord.com/api/v10/channels/{channel_id}/messages?limit=10"  -H "authorization: bot {token}"

(with proper token)
and take a look at the json

Expected Behavior

The messages should contain content, as I have the intent within the developer portal enabled.

Current Behavior

None...

chilly siloBOT
#

This is working as intended, the mfa_enabled flag set on the /users/@me endpoint lets the bot know whether or not it can act in guilds with the 2fa requirement. See #69 for more information on that.

As for verified in our system, all bots are considered as having "verified" emails, for... reasons I'm not actually sure about, however, it's been this way forever now, and is not likely to change.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I think the original naming feels more accurate here, as it returns a list of ApplicationCommandPermissions for the guild

I agree. But problem is that it's very confusing: "Get Guild Application Command Permissions" implies both that it will return permissions for a particular command or that it will return permissions for all commands.
"Get Guild Application Commands Permissions" on other hand, clearly states that endpoint returns permissions for all commands in the guild.

chilly siloBOT
#
While most endpoints that return application command objects will return `name_localizations` and `description_localizations` fields, some will not. This includes `GET` endpoints that return all of an application's guild or global commands.  Instead, those endpoints will supply additional `name_localized` or `description_localized` fields, which contain only the localization relevant to the requester's locale.

double space after dot

#

This behavior looks correct to me. By sending type 7 you are submitting a message update to our server, which is then triggering a MESSAGE_UPDATE event that causes a rerender of the message in clients (telling the client to set the defaults back for components in the message). As stated above components are locally stored state, so the only way to keep persisted state is to set those values as new defaults when updating the message.

#

Greetings fellow developers,

An update on decommission plans for old API versions:

  • Based on a review of bot usage and discussion with developers, we are postponing the decommission of API v7 until early 2023
  • The API v6 decommission will continue as planned. The last officially supported date is Tuesday, May 3.

We’ve gotten some questions around what decommission looks like, so here are some details:

  • The decommission process will begin with direct notifications to affec...
#

Honestly I don't really get why this decision has been made, the people that haven't updated yet won't update in a year either. The decommission was getting rid of a lot of selfbots and stopping to support outdated and unmaintained applications and it's apparently a bad idea? From my point of view, most developers who have not updated yet won't update until their bot stops working, and this deprecation update will just make them update their bots months later.

Versions like discord.js v11 ...

chilly siloBOT
#

I'm a little confused, Is discord.js v12 using API v8?
And if so when will api v8 be decomissioned (when you HAVE to update).
If not what api version does discordjs v12 use?
I've been looking around and i can't seem to find much info on this topic, and i'd like to know so i can plan out how and when to update my discord bots accordingly.

Thanks :)
P.S. I'm still a bit of a noob when it comes to github, sorry if i have submit this in the wrong place

chilly siloBOT
chilly siloBOT
#

I actually hadn't gotten any notification at all about the v6 shut down (which my bot 100% relies on). A month ago when I happened to come across a relevant issue on GitHub while I was looking into another feature to add and realized I needed to upgrade everything. I would've expected the bot owners be contacted directly while there's still time to upgrade, rather than me having to monitor GitHub or a Discord server's messages.

It's ok, I should be off v6 in time as I've been migrating t...

chilly siloBOT
#

Description

If you're in a dm with another discord user and they send a message, but then delete it, the notification still exists. If they send 5 messages and delete all of them, the discord popup next to their name says there are 5 unread messages.

Steps to Reproduce

Have another user message you. Then have them delete their message. When clicking back into the chat, you won't see any new messages.

Expected Behavior

I believe the notifications should either disappear, or th...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

The text in https://discord.com/developers/docs/topics/oauth2#advanced-bot-authorization hasn't been updated to reflect the addition of the application.commands scope.

[...] You can request additional scopes outside of bot, which will prompt a continuation into a complete authorization code grant flow and add the ability to request the user's access token. If you request any scopes outside of bot, response_type is again mandatory [...].

Steps to Reproduce

-...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The Problem:

Currently you can't really know whether users using an activity in voice channel. The only way is checking the user's presence. This only works if the user is online and enabled showing them in their status.

Also some servers might restrict some activities like YouTube or Poker if the server is focused on a younger community.

Possible API improvements:

  • Provide active activities in the channel object
  • Add a new event or provide activity changes to an existing en...
chilly siloBOT
#

Description

When a component is disabled, VoiceOver does not state it is disabled. This gives the impression that the component can still be interacted with.

Steps to Reproduce

  1. Find a disabled component
  2. Traverse to it

Expected Behavior

The component would state it is disabled.

Current Behavior

The component reads as if it were enabled.

Screenshots/Videos

No response

Client and System Information

Discord ...

chilly siloBOT
#

I don't think the primary use of this API is for management (in particular, the clients may use it to discover application commands), so it's important for it to be relatively lean by default. You can supply with_localizations as a query argument if you need the entire dictionary. I'll make it so supplying that argument disables the name_localized and description_localized fields, so that raw diffing will work.

chilly siloBOT
chilly siloBOT
#

Summary

To make it easier for bot developers and lib devs, it would make more sense to not have a 100-character limit on Slash Command descriptions and instead let the width of client determine how many characters can be displayed.

Why this should be changed

  1. Having such a small limit will cause many developers to run into HTTP Exceptions telling them their descriptions are too long. It is not so simple to immediately know when you have reached a 100 character limit when writ...
chilly siloBOT
chilly siloBOT
#

One thought I've have even before slash commands for bots was implemented was the ability for users to create custom commands for their account that can be ran anywhere. The idea stemmed from the original (and still available) built-in commands:

image

The thought is that apps can register slash commands that when authorized by a user are added to their slash commands menu everywhere...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Thanks for the report. This behavior looks intended as we gate the ability to see an event by your access to the channel. GET on the event with its id should also return you a Missing Access error.

Whats the reason for sending channels with the guild payload then when they can't be viewed ? These kind of inconsistencies are what makes an API a pain to work with.

chilly siloBOT
#

This is a super cool idea that unfortunately requires a ton of work. We would basically have to refactor our entire auth system to support it, which is not in scope for any foreseeable future.

I, personally, like the idea a lot. It's on my mind of "cool things we could do" but is not planned nor is it likely to be planned.

chilly siloBOT
chilly siloBOT
#
While most endpoints that return application command objects will return the `name_localizations` and `description_localizations` fields, some will not.  This includes `GET` endpoints that return all of an application's guild or global commands.  Instead, those endpoints will supply additional `name_localized` or `description_localized` fields, which only contain the localization relevant to the requester's locale.
#
Slash commands can be localized, which will cause them to use localized names and descriptions depending on the client's selected language. This is entirely optional.  Localization is available for names and descriptions of commands, subcommands, and options, as well as the names of choices, by submitting the appropriate `name_localizations` and `description_localizations` fields when creating or updating the application command.
chilly siloBOT
chilly siloBOT
#

Description

The perms view server insights and stream should be removed from the url generator as they cause invalid permission errors if you attempt to use them

Steps to Reproduce

Select either of the above perms and try to add a bot to a guild with them

Expected Behavior

The permissions arnt on the site

Current Behavior

They are on the site

Screenshots/Videos

No response

Client and System Information

any

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This might have been intended behavior, but it makes subcommands somewhat handicapped for top-level commands to be practically useless in implementation if they aren't able to be used independently from subcommands.

I'm sure I'm not the only bot developer whose bot currently uses a standard subcommand structure like +version and +version set which do different things, this is a pretty common paradigm in bot commands that has seemingly been ignored.

chilly siloBOT
#

If you set your slash command up to autocomplete members or roles, it will show every member/role in the guild. I would like to be able to filter out the members by role (for instance only showing members who have access to the current channel), or limit the roles to a subset of all roles in the guild. My use case is doing an action on a member, for instance removing a role from them so they can no longer see the current channel. Showing everyone (even people who don't have the role) is somet...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

In the following ocassion:


---
---
---

Where --- are X amount of unloaded messages, clicking a button will not show the ephemeral message.

Steps to Reproduce

  1. Create a message with a button.
  2. Grab yourself 20 trolls, tell them "ping everyone." Granting them the "Ping Everyone" permission will lead to a greater effect, at the cost of a minor loss of reputation and server members.
  3. Wait 20 seconds
  4. Kick the trolls, reload your client
  5. G...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

It would be great to have an event fired when a text channel is selected or left. This would allow my external app to track if a user has possibly seen notifications from the NOTIFICATION_CREATE event. Currently there is no way to follow up when a cached notification should be removed. Adding this event will at least provide a semi-reliable way of knowing when the user has come across their new message/mention in a text channel.

chilly siloBOT
#

It would take 30 seconds to make an issue or ask in the DAPI/ddevs server.

There is no obvious way for someone looking at the affected documentation page to make an issue or ask a question. (Someone who has a question has to head over to the Intro page and then click the link on the 3rd line to get to this repo.) Developers like me who have never worked on or with Discord or its API before aren't familiar with your issue-reporting process ...

chilly siloBOT
chilly siloBOT
#

Discord recently made an announcement about formalizing the API versioning at #4510. Maybe you found this during your search, @geoff-m. There, it's indicated that v6 and v7 will be decommissioned on April 30.

After this, there were some attempts add v10 information to this infamous table (#4512, #4587, #4609). These were rejected. Presumably, we're waiting for Discord to fully commit to the version switchover and maybe a more complete docs update than just editing a table. The v7 informati...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Currently there isn't anyway to know if the user dismissed an ephemeral message, not even an error or an event.

Through this discussion I suggest that when the user that created the interaction clicks in "Dismiss message", the API emits an event. Then it's possible to handle some problems.

Practical example

  • User uses a game command that sends a ephemeral message
  • A collection is created, it will collect every user message until they lose or win
  • User leaves Discord or clicks...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

When DMs get sent out to affected folks, can the DMs please include which application/bot the DM is referring to? As an owner of multiple bots, the system DMs I receive often do not make it clear which one they are referring to, which makes tracking down issues rather inconvenient.

As a developer, the onus is on you to ensure your work is up to date with current standards. Sure, Discord may choose to specify in correspondence which token has been recently used on an affected API version ...

chilly siloBOT
chilly siloBOT
#

You've just hit the nail on the head and exactly the reason why the blackouts are going to be used. They're intended to wake up the developers who clearly don't care enough about what they're doing or their work to keep up to date with standards. This is also why you'll find a lot of people, me included, that are rather annoyed that we took the deprecation warnings seriously and after spending time and effort bringing some of our older projects up to current spec before the deadline, we fin...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Not everyone is a seasoned bot developer who keeps tabs on everything. Learn to respect the smaller devs.

I'm a small dev, I've only been messing around with Discord development since the start of Covid because I was bored. In fairness I guess I perhaps take more interest in a project's development than a lot of other people do, and I of course don't mean any offence to those that want to say spin up a simple bot for their friends in their private Discord server.

My comment was pointe...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

No it does not resolve the issue I've done it billion times. Through postman manualy and through my discord bot like always (and it worked) you can even see on the screenshots I provided there is my user ID. I tried it with my other testing/beta bot too and no luck. I dont have v2 permissions enabled I dont even know how. If its my issue then please tell me how/what am I doing wrong? I'm getting the correct data from your API yet it won't let me use it. I'm just repeating myself but its frust...

chilly siloBOT
#

Hi there,

I'm aware this is a very minor adjustment of #4036. However, there's a slight difference between a HypeSquad Event Coordinator and an Event Attendee:

  • Event Attendee - "A world-traveler who attends events, local or abroad. You get an exclusive Discord HypeSquad shirt!"
  • Event Coordinator - "A community leader who runs a school club, Convention or LAN event. These members get a box of swag once per quarter for an event."

Regardless, the HYPESQUAD flag is the sam...

chilly siloBOT
#

Description

Sending a request to the endpoint results in a "405: Method not allowed".
The endpoint started having this problem yesterday at about 20:51 UTC.

Steps to Reproduce

Send a PUT request to /applications/{application.id}/guilds/{guild.id}/commands/permissions

Expected Behavior

That the permissions are applied correctly

Current Behavior

The API responds with a "405: Method not allowed"

Screenshots/Videos

No response

Client and System Information

...

chilly siloBOT
#

This is not a bug. Bots intentionally cannot edit command permissions in servers with Command Permissions v2 (currently rolled out to 1% of community servers). An OAuth2 scope will be released to allow dashboards to edit permissions of specific commands on behalf of a server admin.

In servers with Command Permissions v2, server admins can edit command permissions in Server Settings > Integrations.
https://support.discord.com/h...

chilly siloBOT
#

If this change ends up not being reverted, can there at least be an announcement? This supposed fix broke some people's invite links, which resulted in needless confusion for end users and stopped the growth of affected bots

At least (as mentioned above), some user education about certain perms not directly affecting bots (outside of overrides) would be appreciated. Simply removing the perms from the generator doesn't seem like a good way to do things..

chilly siloBOT
#

Description

As mentions are not supported in command options, but I like to provide just a few channels I decided to use autocomplete.

My Autocomplete Name looks like this: #channelname [Categoryname]. When a user choose the option #channelname gets auto converted into an mentions which returns a custom choice which looks like this: [Categoryname]

Steps to Reproduce

  1. Create a command option which includes a @ or #
  2. Select the option in autocomplete

Expected Behavi...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Some unicode characters are getting stripped from autocomplete responses, causing emoji to show up incorrectly.

Steps to Reproduce

Respond to an autocomplete interaction with

{
  "type": 8,
  "data": {
    "choices": [
      {
        "name": "🏳️‍🌈 gay_pride_flag",
        "value": "🏳️‍🌈"
      }
    ]
  }
}

Expected Behavior

The response is returned and shown to the client as-is

Current Behavior

Characters \uFE0F and \u200D get st...

chilly siloBOT
#

Description

I develop a Moderation bot that depends on user join events, and guild member update events. It looks at user names, and bans users with user defined keywords. An issue that we have been running into recently (we started noticing it a month or two ago) is that we never get the guild member update events in certain situations. We don't know what exactly causes it, but this problem is a symptom of an even larger issue which is inaccurate guild member information. What happens i...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

sorry it took a while to circle back to this issue -- we have a change for this ready that will address this. We've had internal discussions about whether a timeout semantically needs to be a guild wide lockdown on perms (like we currently imply in the docs) or if it should be scoped down to restricting perms within a communication context, like in channels and threads (which is what our current implementation actually suggests). Will update here soon on what we decide to do -- most likely we...

chilly siloBOT
chilly siloBOT
#

Description

In the nav sidebar, the Receiving and Responding section doesn't accurately update the active header for the last 4 navigation elements (starting at Create followup message). The active header indication stays at Delete Original Interaction Response

Steps to Reproduce

  1. Click on Receiving and Responding header
  2. Click on any of the last 4 elements under the header

Expected Behavior

Update active section indication

Current Behavior

Not updating...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When updating your nickname on a server without also updating your server about me, it will be cleared.

Steps to Reproduce

  1. Update your nickname on a server

  2. Don’t update your server about me

  3. Click save

Expected Behavior

Your nickname is updated & about me is unaffected.

Current Behavior

Your about me is cleared.

Screenshots/Videos

No response

Client and System Information

iOS 15.1
iPhone 11 Pro Max
TestFlight 120.0 (31345)

...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hey all 👋

I wanted to drop a quick note to say we’ve updated the default branch name from master to main in this repository (there’s a good writeup about the history and motivation on the Software Freedom Conservancy’s blog.

To migrate, we’re using [Github’s renaming feature](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/renaming-a-branch#ab...

chilly siloBOT
chilly siloBOT
#

The Console everytime says but i dont know how to fix that.

Uncaught DiscordAPIError DiscordAPIError: 404: Not Found
    at DiscordAPIError (c:\Users\prvts\OneDrive\Desktop\Elite License System\node_modules\discord.js\src\rest\DiscordAPIError.js:9:5)
    at execute (c:\Users\prvts\OneDrive\Desktop\Elite License System\node_modules\discord.js\src\rest\RequestHandler.js:350:13)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
chilly siloBOT
#

How do webhook routes without a token calculate the top level resource? I'm assuming it's just the id, but I think it would be helpful to explicitly include that.

During calculation, per-route rate limits often account for top-level resources within the path I'm confused by what "often" implies here: it reads like there are some routes for which this is not true?

I don't think this PR clarifies the hypothetical situation where two top level resources are present in a route. Unless t...

chilly siloBOT
chilly siloBOT
#

How do webhook routes without a token calculate the top level resource? I'm assuming it's just the id, but I think it would be helpful to explicitly include that.

Not all webhook routes (or routes in general) rate limit the same way, but some do utilize webhook_id for the per-route limit as it's a unique identifier for the resource. I can try to change the wording/formatting slightly to clarify.

I'm confused by what "often" implies here: it reads like there are some routes for whi...

chilly siloBOT
chilly siloBOT
#

Background

My bot allows users to compile code. Due to the amount of failed compilations, our current model allows users to edit their messages containing code and the bot will recompile and execute it.

The Problem

Using the current message command implementation pictured below, I'm able to obtain message content. Unfortunately, though (as I understand), message edits will no longer be reported to large bots. This means that I will be unable to reprocess the new input and the user ...

chilly siloBOT
chilly siloBOT
#

Just so you are both aware, message-based application commands already exist.

While I'm not going to try to convince anyone that they are a full-blown replacement and solution for your issues at hand, you can easily turn a message command into a more customizable command by following up on that interaction with, say, an ephemeral message which includes components such as buttons or a drop-down to exte...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Previously, tags was present on role objects included in the Guild Create gateway event if a role had at least one tag. Now, tags is missing from all roles in Guild Create.

Steps to Reproduce

Connect to the Gateway and listen for the Guild Create event.

Expected Behavior

Roles that have tags should include a tags property.

Current Behavior

The tags property is missing from all roles in the Guild Create event.

Screenshots/Videos

No response

#...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

sorry it took a while to circle back to this issue -- we have a change for this ready that will address this. We've had internal discussions about whether a timeout semantically needs to be a guild wide lockdown on perms (like we currently imply in the docs) or if it should be scoped down to restricting perms within a communication context, like in channels and threads (which is what our current implementation actually suggests). Will update here soon on what we decide to do -- most likely ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I noticed that some anchor links for tables which were previously working fine in the channel doc are broken and not jumping to any point in the page. After navigating to one of the tables, I discovered that the anchor link had changed.

For example, the jump link to the query string parameters for GET /channels/{channel.id}/messages was https://discord.com/developers/docs/resources/channel#get-channel-messages-quer...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

@night I think I’m still experiencing this issue. A moderator in a 150,000+ member server previously reported this issue but it seemed to get better, so I hadn’t commented on this thread yet. But just today, there were 40+ accounts that weren’t detected for having specific names via my bot, using the API, and could only be seen by some users who had access to the full member list. See the screenshot below for a short description of the issue. I don’t have hands-on in the server unfortunatel...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

indeed the ci script does not seem to be correct. if anyone is interested, here's the current logic:

function getText(node: React.ReactNode): string {
  if (typeof node === 'string') {
    return node;
  }

  if (typeof node === 'number') {
    return node.toString();
  }

  if (React.isValidElement(node)) {
    return getText(node.props.children);
  }

  if (Array.isArray(node)) {
    return node.map((element) => getText(element)).join('');
  }
  return '';
}

...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Currently, there is no "convenient" and documented way of determining why a GUILD_CREATE event was dispatched. As the documentation states, it is dispatched when:

  • Initially loading guilds when connecting to gateway.
  • Client joining a new guild.
  • An unavailable guild becoming available to client.

However there is no way of properly differentiating between these cases and why a GUILD_CREATE event is fired. There is an unavailable field on guild object that shows different beha...

chilly siloBOT
#

expected guilds are listed in the READY event (with unavailable:true) iirc, before they are dispatched as full GUILD_CREATEs as they get connected to your session, so I think you can differentiate with that? any GUILD_CREATEs you get that aren't part of the initial list are new joins, as of that session anyway. if you wanted to handle joins that happened while you were offline for some reason, you could compare your member joined_at timestamp i think.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

expected guilds are listed in the READY event (with unavailable:true) iirc, before they are dispatched as full GUILD_CREATEs as they get connected to your session, so I think you can differentiate with that? any GUILD_CREATEs you get that aren't part of the initial list are new joins, as of that session anyway. if you wanted to handle joins that happened while you were offline for some reason, you could compare your member joined_at timestamp i think.

chilly siloBOT
chilly siloBOT
#

This appears to already be fixed as of late January, and the update message interaction callback functions identically to message PATCH. By default a message update with a new attachment will append a new attachment in v9 and below. To replace the attachments you will need to send the attachments key in the message body in addition to the attachment data in multipart data. In v10, lack of attachments will result in a replace by default.

chilly siloBOT
#

Description

About a year ago, Discord's branding changed, the changes are visible everywhere I can look for, except for the Developer Documentation.

Steps to Reproduce

immagine

Expected Behavior

I expect the changes from the 2021 rebrand to be reflected in the documentation too.

Current Behavior

Some changes (including the logo) are not yet updated.

Screensho...

chilly siloBOT
chilly siloBOT
#

Might I precede this entire discussion with a simple question: Why is this not the case already? If the goal of slash commands is to promote stateless/less-state-reliant bots, why require an additional REST request just to fetch a channel with its overwrites?

We have a slash command which modifies a guild channel's overwrites - with a target channel option to modify. The resolved entities passed alongside the command interaction includes the target channel, obviously, but that model is m...

chilly siloBOT
chilly siloBOT
#

I like the general idea of heaving a single "/" button to start command, no matter what bot. This works great for PC client but is super annoying on mobile. I believe that android can modify keyboard layout so people who commonly use commands could just bind slash key into their main keyboard to have easy access to it but it's not a thing for iphones. Also forcing people to edit their system settings just to use single app sounds bad.

How about adding into discord client option to change "...

#

Making all reactions now also register creation timestamp would create just a extra garbage data that in 99.99999% cases wouldn't be used, making discord gateway/api send more data than needed. If your bot needs to know where specific emoji got added - your best bet is to just listen to such even from gateway and cache it on your side. You won't be able to get records from past but assuming your bot works 24/7 - you should get all reaction timestamps counting from moment you implement it whic...

#

I understand your issue but here's the issue - storing more text data is not a problem for Discord. The issue is how to render it. If slash commands would have longer description that would mean they would have to cover bigger space to display it. It would look ugly on PC and on mobile would be really hard to use if suddenly description label would cover like 3/4 of your mobile screen.

I have a bit different suggestion. How about making 2 descriptions? Current description could be called "...

#

I'm not saying descriptions should be allowed to take up the whole screen, rather the client would trim the text with "..." (as it already does) when the description begins to take up too much space.

Having the help command showing the full descriptions would be nice. I don't know if it needs to built in, as a bot could easily implement that by fetching a list of its commands and displaying all their descriptions.

chilly siloBOT
#

Modal right now have two text input styles: Short and Paragraph. I propose a new Markdown/Rich Content style that allows users to input markdown and other rich content on Discord (such as channel links, role tags, and user tags).

Also, having a separate message component input for one/multiple channel links, role tags, and user tags would be very useful. (Similar to some Application Command Options.)

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

As currently planed, subcommands won't be supported with the new permissions system. This is due to sub commands having no individual ID.

This is really unfortunate as there are many use cases for sub commands permissions. eG.

/example start - Should be public
/example settings - should be Moderator only

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

🤔 . I wanted to share a few thoughts on this. This is 50% "looking-for-opinions" and 50% "can-you-do-this-instead?"

So I think for starters, given the use-case outlined in https://github.com/discord/discord-api-docs/pull/3757#issuecomment-911994541 we should 100% document the channel type. Thanks for that.

Now for the rest of the information in added in this PR. So right now Student Hubs is stable and shipped, but really intended as a place for humans only. Therefore, we have an opinion...

chilly siloBOT
chilly siloBOT
#

Are hubs always going to be exclusive for school/university, or will we be able to create our own at some point (maybe with the ability to add bots)

I don't really want to get involved in "what is the future of hubs". For the purposes of this PR let's assume that nothing with hubs is gonna change for the foreseeable future.

But for this specific question we have no plans for people to create their own hubs right now.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

On the documentation about rate-limits#exceeding-a-rate-limit

https://discord.com/developers/docs/topics/rate-limits#exceeding-a-rate-limit

the retry_after data on the 429 response is said to be SECONDS.

But it is been returned as MILISECONDS instead of SECONDS.

Steps to Reproduce

I'm using a python script to make multiple requests to a discord webhook.

Expected Behavior

Documentation to point the retry_after data on the 429 respon...

chilly siloBOT
#

What

When a bot specifies interaction://custom_id as a link's location, it should trigger an interaction with that id from the message similar to a message component when a user clicks the link.

Why

Currently, message components take up a lot of space on a message and are always underneath all the text and images. This would allow for interactable objects to be inline with text or even work on an embed title, author, or footer (see images below as an example). Two of these button...

chilly siloBOT
#

Hello everyone,

Another update on decommission plans for deprecated API versions. We’ve spent some more time considering how we intend to perform API decommissions and have decided to extend the API v6 decommission to 2023 to match the v7 timeline.

Our decision is based on several reasons:

  1. Giving ample notice to developers who do not monitor the Discord Developers server or Discord API docs
  2. The population of existing bots on v6
  3. Consistency in how we apply our decomm...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Giving ample notice to developers who do not monitor the Discord Developers server or Discord API docs

i don't mean to be that guy but isn't this the developers responsibility? if they notice their discord applications that are using v6 api aren't working, then i'm sure they will look into it, right? plus, isn't v6 the version the last version that is keeping self botting alive and well?

chilly siloBOT
chilly siloBOT
#

it is not worth sending what could be a lot of data in every interaction

I'm a little confused by this. Not every interaction that's sent across the gateway is a slash command interaction, and not every slash command interaction is for a command that specifically contains a (resolved) channel entity. I completely understand the concern about sending extra/unnecessary data across the gateway, but this could be said for a lot of events in general. I can't imagine that the vast majority of ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Text inputs can be putted in the messages

From: Tais993 @.>
Sent: Thursday, March 31, 2022 12:07 PM
To: discord/discord-api-docs @.
>
Cc: Георгий Гришко @.>; Comment @.>
Subject: Re: [discord/discord-api-docs] Message component for user text input (Discussion #3543)

And modals currently don't support anything other than text

Please take your time to read my messages.
Text-inputs can be used yes, but anything other than text (buttons, select and wha...

#

When you use a library that uses v6, that might be a version of the library which released over 5 years ago. In that time frame, a lot can change, and the library will most likely have received breaking changes or entire rewrites. It is not as simple as updating a number in a config somewhere, often it involves a far bigger change and potentially rewrite of large sections of bot code. You are grossly underestimating the cost of updating a library.

plus, isn't v6 the version that is keepi...

#

Well me personally, I use discord.js on the latest version. I don't underestimate anything - I maintain many bots and I have had times where i've has to completely rewrite bits of the bot and even do stuff more recently like add support for slash commands & normal chat commands both at the same time, depending on what a guild wants. Trust me - I understand but it's really not that hard if you put some time into it.

No, the client and self bots can use any API version. This is completely ir...

#

Text inputs can be putted in the message

No they cannot. Please stop spreading misinformation. Discord intentionally did not make text inputs available inside messages, to prevent moving input boxes due to scrolling and message deletions. Text inputs can only be used inside modals, and that seems likely to hold true for the foreseeable future.
Sorry, I didn't readed docs, only changelog. Also, it's in the message components category
![image](https://user-images.githubuserconten...

#

This is more than likely to avoid fragmenting what's already a pretty shattered documentation structure, as well as how these are probably handled internally. For all intents and purposes, text inputs are just a component like any other, with some restrictions. They have a type (4), custom_id, etc, and given it's currently the only component that isn't/can't be attached to a message, it simply doesn't make sense to slap this into it's own section.

![shrug](https://cdn.discordapp.com/emoji...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT