#github-notifications

1 messages · Page 38 of 1

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The Command Permissions section of the Integrations page for a bot is a useful alternative to trying to create commands/settings/etc that control who can use certain commands (which I think was the goal). However, leading a user (especially a user less-familiar with Discord) to this page is a bit tricky. Being able to provide a clickable hyperlink or button component that takes a user directly to this page (if possible for their permissions) would drastically smooth out the experience of swit...

#

@night can you re-read my comment above (and this one) and help me understand why this is not a bug in the documentation or not something that can be / should be changed? Sorry for the length. I didn't expect to write an essay on something trivial either.

As far as I can see, (1) there are two endpoints here with the same name (one is deprecated) and (2) the active endpoint is referred to by two different names. I think that alone is confusing from the point of view of a regular API consum...

#

This would be fairly straightforward: a button style that corresponds to MESSAGE-type Application Command.

This type of button would:

  • be functionally identical to attempting to use the command via the context menu for the command
  • visibly promote specific MESSAGE-type commands on specific messages
  • be greyed out or invisible to those who can't use the command (following permissions v2)

The reasoning for this feature: Sometimes a bot knows that a user might want to use a cert...

chilly siloBOT
#

Description

Message context commands 403 for messages where you dont have write permissions in the given channel, this leaves the UI in a loading state, although i cant now check as commands v2 is fully rolled out i think v1 allowed you to use contexts under these same circumstances.

Steps to Reproduce

Have send message permissions denied in a channel and try to load context message commands on a message.

Expected Behavior

The menu loads as normal.

Current Behavior

The ...

#

Description

The slash command picker UI is left empty but still present if you dont have access to any commands, this is not the bext UX in the world and is quite confusing lol (i thought commands were still broken in DAPI, turns out i just didnt have perms), a better solution might be to load a small message explaining that you dont have access to any of that applications commands if the application_commands array is returned empty when requesting a specific applications commands

###...

chilly siloBOT
#

i think v1 allowed you to use contexts under these same circumstances.

it did not.
image

Ideally, it would make sense for the client to not show "Apps" at all on channels you do not have the read message permission for, instead of the permanent loading menu, which I can repro (see below).
![image](https://user-images.githubusercontent.com/71233171/167233596-5693fe5e-29db-4545-a6...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I'm just leaving this for any others struggling with this b/c I spent 3 days trying to debug a 50001 error and found nothing and this thread comes up as one of the first on google.

Apparently, if the Discord server your Bot / integration mandates multi-factor authentication, the developer account associated with your Bot MUST have MFA enabled. I enabled it on my discord developer account, and the 50001 errors immediately resolved.

chilly siloBOT
#

unknown
As you can see in the picture, I am using greyed out primary buttons. Imo, we should have a new component, label, with the styles:

  1. Button Style - it would show in the place of a button, but'll not be clickable and will not have background.
  2. ActionRow style - must be the first object in the list, and will add a label above the action row
  3. Modal style - it would add text...
chilly siloBOT
#

This is reproducible in dms for global commands as well. However, I believe the solution is to hide the application icon for applications which don't have commands you can use in the current channel (the API already returns the correct result here, this is a client side thing). So, if you have permission to use none of the commands in a channel, it would behave like a fully denied use application commands permission.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Is that not just a side-effect of them being markdown'd headings? I'm able to find them because they all have the pattern ## {name} % METHOD {route}.

I think some of this is worth moving to a proper discussion so that it's not ignored, which happens in closed issues. Specifically, I'm interested in a general discussion on endpoint naming because this inconsistency is not the only one.

#

Description

Exacly the same as https://github.com/discord/discord-api-docs/issues/4856 but with the non-bulk endpoint.

Updating or creating commands through the non-bulk endpoint may cause commands not to appear in the command list, making use impossible.

The only way to make them appear is to set a manual override for each affected command (which can be removed later).

See video below.

Steps to Reproduce

  • Have admin or be owner

  • Create or modify a command with the gu...

chilly siloBOT
chilly siloBOT
#

Currently - we can only make a text input as a modal component.
I've taken the rest below from @NegativeDev (thanks), but here is what me and Negative think should be available in modals.

NumberInput

This would only allow numbers. Pretty self explanatory

SelectBoxInput

This would present a list of boxes of texts, similar to how SelectMenu looks

FileAttachInput

The ability to attach files, with proper security measures in place would be quite nice for different uses, suc...

chilly siloBOT
#

Description

Discord crashes when running the blurplefy slash command with an attachment

Steps to Reproduce

  • Type a blurplefy slash command
  • Select an attachment
  • Send the command message

Expected Behavior

The command runs the filter on the selected image

Current Behavior

Discord crashes immediately

Screenshots/Videos

No response

Client and System Information

Operating System: Android
Version: 125.14 - Stable
Device Model: CPH 2239

chilly siloBOT
#

Description

The API documentation writes: "Timestamps will display the given timestamp in the user's timezone and locale."

An example output is provided as: 20 April 2021 16:20

However, no matter what language/locale I select. I cannot get my desktop discord client to display the time in this 24h format. It is always in 12h format in American English.

Steps to Reproduce

  • Use the desktop app
  • Pick any language other than American English for the language settings
  • Send a ...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

The Developer Reference is not clear how or where the User Agent requirement is enforced. The Reference only states that a user-agent must be provided which conforms to RFC2616 with additional format restrictions: https://discord.com/developers/docs/reference#user-agent

The Execute Webhook API API accepts the following User Agent strings, none of which do not abide by your restrictions.

  • Ruby (fro...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The current Interaction Data documentation is unclear when it comes to what fields the developer should expect when. Surrounding information helps to form a better picture, but the table itself is confusing, particularly with the suggested but incorrect optionality of fields.

This PR separates the structures and updates the fields to better reflect expected behavior for the different interaction types.

Two things,
1: I wasn't sure if the Resolved Data Structure should remain immediatel...

chilly siloBOT
#

Description

If you had a command which used V1 permissions there is a way to make it not possible to update the permissions for it.

Steps to Reproduce

  • Have a command from pre-V2 permissions which had a user who never in the guild given permission to use it
  • Attempt to remove their permission to use it from the Integrations menu

Expected Behavior

The user is removed from the list of users able to use the command

Current Behavior

An error with "Unknown Member" is disp...

chilly siloBOT
#

The inner data payload of an interaction can vary drastically from interaction to interaction but is guaranteed based on the [type of interaction](#DOCS_INTERACTIONS_RECEIVING_AND_RESPONDING/interaction-object-interaction-type). As mentioned in the table above, `PING` interactions *never* have a `data` property. For all other types of interactions, the structure of the inner `data` payload can be found below, split by type.

chilly siloBOT
#

It appears that it does indeed return a Cloudfront error code -

$ curl -D - -A 'Python-urllib/3.8' https://discord.com/api/webhooks/...
HTTP/2 403
date: Tue, 10 May 2022 06:12:31 GMT
content-type: text/plain; charset=UTF-8
content-length: 16
x-frame-options: SAMEORIGIN
referrer-policy: same-origin
cache-control: private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0
expires: Thu, 01 Jan 1970 00:00:01 GMT
expect-ct: max-age=604800, report-uri="https:/...
chilly siloBOT
chilly siloBOT
#

Description

Welcome all, I have a problem I made bot a long time ago and I got bored of his picture and his current name I said I will change it but when I entered discord site in developers applications I changed the image and changed the name in the site but in Discord they did not change and tried again and the third time did not change I wish to solve the problem

Steps to Reproduce

.

Expected Behavior

.

Current Behavior

.

Screenshots/Videos

in website :
![im...

chilly siloBOT
#

I don't understand why administrators bypass the command permission system. I want to disable commands in order for them to not clutter up my inputs.

A lot of bots, such as Dyno or Mee6 offer a lot of random useless commands that I would like to just turn off entirely. Instead, because I own the server, I'm forced to always have them show up in every channel. This is a bad user experience and seems like a bug for uninitiated users, especially since you can't even select admin members in th...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

However, leading a user (especially a user less-familiar with Discord) to this page is a bit tricky. Being able to provide a clickable hyperlink or button component that takes a user directly to this page (if possible for their permissions) would drastically smooth out the experience of switching to/integrating with the new permissions system.

I've added a context menu item on integrations' messages and member list entries that will be out soon:

![Untitled](https://user-images.githubu...

chilly siloBOT
#

I think this is a step in the wrong direction.

It's already an issue that despite Read Messages being a permission that can already be granted or denied from bots, a separate intent is also needed in order to read messages. If a server manager wants to grant permissions or capabilities to a bot, they should be able to do so. If a bot needs certain permissions to function, and a server manager does not grant those permissions, then the bot failing to function correctly is the fault of the...

chilly siloBOT
#

The bot invite-window should say which intent an app has been approved for, by telling users which data it could collect, as not everyone has a good basic understanding for intents.

I made a concept on how I imagine this could look like, attached below.

As Discord keeps making changes to protect the users privacy, this would be an important step to let users know which data is actually granted, as I think very little users actually bother to read an apps privacy-policy.
![image](http...

#

This PR updates the audit log docs to reflect the current state, remove duplicative information, and add more details and nuance to different events, keys, and objects.

Context for some of the changes are in #4841

Changes

  • Updates event table to include description and objects affected. These are audit log specific properties so I wanted to document them
  • Rework the change key table to map objects in the event table to the available keys. As part of this, I removed the descrip...
#

(First of all, duplicate of #3310)

This would be a valuable addition, especially for bots that don't connect to the gateway. Caching permissions is not effective, because:

  • If the bot already has the needed permissions, then it will still hit a 403 if the permissions change; it would be just as effective to not check permissions at all (and save several API calls)
  • If the bot doesn't have the necessary permissions, it will need to keep fetching them every request, because the normal ...
#

To follow up, consider an alternative: All bots can request any permissions they want, but elevated permissions require an additional confirmation box to be clicked (next to each elevated permission checkbox) before allowing the bot to be authorized, forcing users to acknowledge the difference between elevated and non-elevated permissions. If a bot actually needs those permissions to function, and the user is not willing to grant them, then it is probably the case that the bot should simply n...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

For transparency's sake—I've also made a branch that takes the deduping a step further and only notes exceptions in the keys table: https://github.com/shaydewael/discord-api-docs/blob/test-other-audit-log/docs/resources/Audit_Log.md#audit-log-change-key-exceptions

I think with the objects and key exceptions clearly documented for the events, this would make it a lot easier to maintain the docs and offer built-in flexibility as audit log events and object payloads change over time, especial...

#

This PR is looking a lot better than the other one, thanks!

Regarding the other branch:

For most objects, the change keys can be any field included on the object, and the types and descriptions can be found in the respective documentation. The following table details possible exceptions to this pattern for select objects.

As long as all the exceptions to this pattern are documented, I think this way of documenting the audit log change keys is fine as well.

The key thing (no pun intend...

chilly siloBOT
#
| APPLICATION_COMMAND_PERMISSION_UPDATE | 121   | Permissions were updated for a command                    | [Command Permission](#DOCS_INTERACTIONS_APPLICATION_COMMANDS/application-command-permissions-object-guild-application-command-permissions-structure) |

The current link is for a single permission update, which while intuitively is the entity being updated, isn't the one actually represented by this entry.

#
> For `APPLICATION_COMMAND_PERMISSION_UPDATE` events, the `target_id` is the app or command ID since the `changes` array represents the entire `permissions` property on the [guild permissions](#DOCS_INTERACTIONS_APPLICATION_COMMANDS/application-command-permissions-object-guild-application-command-permissions-structure) object.

target_id is the same id used in the permissions update endpoint, which is usually a command id, but can also be application id for the "global" ...

#

I'm again going to ask if its somehow possible to get the key for application commands permissions update to be something other than a snowflake. It makes it significantly harder (read: impossible) to type these entries as strictly as we could before and you already have to check new_value / old_value to see what type the id is anyways (channel, role, or user).

chilly siloBOT
chilly siloBOT
#

For most objects, the change keys can be any field included on the object, and the types and descriptions can be found in the respective documentation.

Just a question for the other branch, the above is used as a catch all but doesn't this leave it up to end users to reverse engineer which fields are actually included in the audit logs? This is especially the case for audit log create events where people might naturally expect to see all of the object's fields in the change object(s) if ...

#

If `new_value` is not present in the change object while `old_value` is, it indicates that the changed property has been reset or set to `null`.

Since this line now acts as the only documentation for the fact that any fields marked as null on their relevant change object would never be null here, would it be worth also documenting that old_value won't be present if the field was originally null?

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This limitation seems pretty arbitrary.
If the idea is that it would be confusing for users if they didn't have time to read the message before it disappears, then why is it limited to ephemeral messages? It's surely as or more confusing if a normal channel message (where multiple people can read it) disappears quickly?

One of our use cases for ephemeral messages is gathering user input then editing that ephemeral message over and over like a in-channel multi-step form. Then when they're...

chilly siloBOT
#

Description

As far as I know, ordinary users get deny permission overwrite from GUILD_CREATE, but for some reason bots don't

Steps to Reproduce

  1. Connect to discord gateway
  2. Send bot token in identify
  3. Recieve GUILD_CREATE
  4. Look to permission_overwrites array in any channel wich have any deny permission overwrite
  5. It have only id and allow overwrite not deny

Expected Behavior

It gives deny and allow permission overwrites

Current Behavior

I recieve only allo...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

@FasterSpeeding I think even with the keys listed there's already some level of reverse engineering needed for the case you're talking about since it's not guaranteed that all of the keys listed will appear (they usually don't, even for some create events). Part of the reasoning for the other branch is to discourage hardcoding or assuming inclusion of keys that follow the standard pattern, and assume that any of the object's key can show up but is not guaranteed to.

I prefer the simplici...

chilly siloBOT
chilly siloBOT
#

Description

https://github.com/discord/discord-api-docs/blob/main/docs/Reference.md?plain=1#L295

Image size can be any power of two between 16 and 4096.

But using a script, all the available images sizes actually appear to be the following:
16,20,22,24,28,32,40,44,48,56,60,64,80,96,100,128,160,240,256,300,320,480,512,600,640,1024,1280,1536,2048,3072,4096

Should these all be documented, or are sizes that aren't a power of two not meant to be officially supported as part of the A...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

What is "Improved entry point" and why is it crossed out for Android?
Basically allowing you to open the slash command picker similar to how you can create threads by clicking the + beside the chat box.

Also, are there any plans to add the slash command permissions UI to mobile?
I don't think they'll be doing that soon, because the mobile app never had a functional integrations menu.

chilly siloBOT
chilly siloBOT
#

Description

The Discord RPC API supports subscribing to Message Events like MESSAGE_CREATE and MESSAGE_UPDATE. However, it does not appear that the new Thread Events such as THREAD_CREATE or THREAD_UPDATE are available as valid events to subscribe to.

Is there a valid way, or a workaround, to get the Thread Message contents? This is not a bot account, so it seems I cannot use the REST API to query the message contents.

If not, will this be added to RPC in the future?

Steps t...

chilly siloBOT
chilly siloBOT
#
- The `reason` field has been removed for `PUT /guilds/{guild.id}/bans/{user.id}` and `POST /guilds/{guild.id}/prune` endpoints. The `X-Audit-Log-Reason` header should be used instead. Read more in the [Audit Logs documentation](#DOCS_RESOURCES_AUDIT_LOG).

AFAIK the reason field parameter only existed for these 2 endpoints.
The original phrasing also looked like that X-Audit-Log-Reason was something new, but it has been around for years.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Same as last suggestion—feel free to take or leave

\* For **voice channels**, `bitrate` can be set up to `96000` in non-boosted servers. In [boosted](https://support.discord.com/hc/en-us/articles/360028038352-Server-Boosting-FAQ-#h_419c3bd5-addd-4989-b7cf-c7957ef92583) servers, it can be set up to `128000` for level 1, up to `256000` for level 2, and up to `384000` for level 3 or in servers with the `VIP_REGIONS` [guild feature](#DOCS_RESOURCES_GUILD/guild-object-guild-feature...
#

Feel free to take what you want from this, but I just tried to clean it up a bit since it's a long note. Not sure about bolding voice channels/stage channels, but stage channels feels buried so that's reasoning.

\* For **voice channels**, `bitrate` can be set up to `96000` in non-boosted servers. In [boosted](https://support.discord.com/hc/en-us/articles/360028038352-Server-Boosting-FAQ-#h_419c3bd5-addd-4989-b7cf-c7957ef92583) servers, it can be set up to `128000` for level ...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The Problem

In the current state, if you trigger an interaction while being scrolled in a channel, you won't see the reply until you scroll back down to the very bottom of the channel. And in some cases, you won't even be able to see the reply if it's ephemeral, because the message will be gone due to the scroll position.
Additionally, this is an issue if you're doing some sort of task that requires you to go back finding old messages in a channel and do something with them (like using...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

After I deployed a new bot which registered slash commands, those commands will appear in the auto-completion of Mobile App, but not Desktop App. However, after I manually synced those commands within "Server settings => Integration => Bot command", they show up within Desktop App auto-completion.
The way I register the commands are like:

const { SlashCommandBuilder } = require('@discordjs/builders');
const { REST } = require('@discordjs/rest');
const { Routes } = require('discord-api-t...

chilly siloBOT
covert aspen
#

☝️ @snow sandal opened that re: the discussion the other day—lmk if you don't think it's clearer

chilly siloBOT
#

Description

Whenever my bot tries to edit a message with a new image, it returns a discord server error. This is mostly reproducible in DMs. As I was recording videos to demonstrate the issue, I found that on my tablet, the message isn't edited in either DMs or a guild, but it works on my phone when in a guild. And now after trying to record it on my phone, it doesn't work either.

Steps to Reproduce

  1. Send a message with an image in a DM with a bot.

  2. Edit the message with a n...

chilly siloBOT
#

Description

When I go to the link from discord.js, it leads to this page and has an error (screenshot added)

Steps to Reproduce

Visit this page: https://discord.com/developers/docs/dispatch
[Original: https://discord.com/developers/docs/dispatch/field-values#predefined-field-values-accepted-locales]

Expected Behavior

I recommend redirecting to the homepage or https://discord.com/developers/docs/dispatch/dispatch-and-you

Current Behavior

Minified React error #130; visit...

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

Description

In the server folders when you open and close a server folder it bugs and the server icons do not appear in the same folder.

Steps to Reproduce

Double right click on a folder

Expected Behavior

What should happen is that you see the icons of the first 4 servers in that folder

Current Behavior

The folder icon remains instead of the server icons

Screenshots/Videos

https://user-images.githubusercontent.com/102625468/168430554-30f35e2d-5714-4770-88a7-5da7...

chilly siloBOT
#

Originally discussed in #4841 and #4919.

⚠️ Unfortunately this has been stalled long enough so it would be a breaking change.

The idea here is to get the key for application commands permissions update to be something other than a snowflake. It makes it significantly harder (read: impossible) to type these entries as strictly as we could before. It's basically typing the key as a String now and leaving it at that. If you do use that, you can no longer identify the type of the values by ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I can't use defer because I don't want the server to get spammed with, "Invalid search parameter"

You can reply to the user "wait a bit I'm searching".
When its done you can either edit it, or post your public message to the channel, or edit it and give it a button that the user can press to proceed to next stage.

So in your case you would reply with ephemeral and say "Give me a sec", if there is an error you update the text in the ephemeral with the error.
If there was not an error...

chilly siloBOT
#

When you try to edit permissions for commands of an integration, you only see the name of the top-level command. This means you have to just know what that command does when editing permissions for it.

An improvement for user-experience would be to add the command description, and potentially also the relevant subcommands for each command.

image

I have no idea what these commands...

chilly siloBOT
#

Description

When I type / the client shows commands for a bot which I am unable to configure in the integration settings.

Steps to Reproduce

Check the commands in the Discord API server.

Expected Behavior

The list of bots should be the same when typing / and in the integration tab.

Current Behavior

They are not the same.

Screenshots/Videos

Commands shown for Muck Man when typing /

![image](https://user-images.githubusercontent.com/18090140/168480323-1b11f...

chilly siloBOT
#

Description

Commands do not show up for some users, whether they are slash commands or context menu commands.

Steps to Reproduce

Unknown, cause / reproduction steps unknown.

An alt I use for testing permissions is impacted, but my main is not. This holds true across the desktop client, Edge Version 101.0.1210.47 (Official build) (64-bit)
, and Chrome Version 101.0.4951.67 (Official Build) (64-bit).

Transferring ownership of the test server to said alt does not alleviate the ...

#

Interesting observations network inspection though.

When I attempt to view context menu commands / commands it makes a request like so:

https://discord.com/api/v9/channels/<snip>/application-commands/search?type=1&limit=10&command_ids=&include_applications=true

It does not load because that does not return the info necessary, in fact it returns an "Invalid Form Body".

{"code": 50035, "errors": {"command_ids": {"0": {"_errors": [{"code": "NUMBER_TYPE_COERCE", "message": "Va...
chilly siloBOT
#

It's also worth noting that this occurs with third party bots, and my own. No matter the mix.

I was trying to find where those command IDs are supposed to come from in the client code, but can't find anything. I suspect they come from the websocket (not a normal XHR request).

I also created a completely fresh server with no integrations, and on 2 accounts (work & alt) I got the same 400 invalid form body and was unable to view slash commands, even built in ones. As before, this was pers...

#

Description

When I try to edit the permission of an integration in the Discord API server, I get a save button which is non-functional. I belive the API does a wrong permission check.

Steps to Reproduce

  1. Create a guild and invite an application
  2. Join with an alt account and set your permissions to Manage Server (access to integration tab), but not Use Application Commands (shouldn't be required)
  3. Try setting permissions and save

Expected Behavior

The permissio...

chilly siloBOT
chilly siloBOT
#

Description

If you have a modal with some fields eg. 3 or more, you cant scroll down on them while having the keyboard open. The keyboard is shown on top of the textfield and you cant see what you are typing in in that field

Steps to Reproduce

  1. Grab an apple device
  2. Open a modal with a few TextInputs
  3. Type inside the last input

Expected Behavior

Be able to scroll down (android footage attached)

https://user-images.githubusercontent.com/66848091/168494508-482ed9ce-c...

chilly siloBOT
#

I have been seeing something like this ever since Permissions v2 and Backend v2 rolled out. I believe that if you revoke permissions for certain conditions the bot will still appear in the menu with no commands similar to the screenshot. This is a bug.

I am also unable to see these commands in the integrations tab

Not sure about that though ^

Yeah, and now my other members can see the slash commands, but they aren't appearing in the integrations tag

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I set up my bot and everything. It was working fine last night and I am hosting it using Uptimerobot.com. So a few minutes ago, I felt like testing if it was still working, it wasn't. I went to repl.it (where the code is) and it showed me that my token is invalid. I proceeded to regenerate my token and paste over 5 times and it is still invalid. I am pretty sure its valid at this point.

I have read on StackOverflow that this might be because Discord blocked my bot for mali...

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

What about the second point?

  • There are multiple servers which offer communities for users to come together and play various bots together especially ones which require interaction between users eg bots which require trading.

Also if this is something discord is not going to change, it should be documented and clearly communicated to users because if you go into a few support servers, you can still see multiple people asking why the bot doesnt show up in integrations and developers...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Displays all slash-commands in android app, regardless of permissions/default_member_permissions

Steps to Reproduce

Create command(s) with default_member_permissions or overwrite permissions in integration settings for existing command(s)

Expected Behavior

Users without required permissions dont see this command(s) as on desktop or web app

Current Behavior

Users without required permissions still see these command(s)

Screenshots/Videos

desktop/web
![1...

chilly siloBOT
#

Currently, if you have 10 bots or more with the same command (like /help) and you want to use a specific help command from a bot, you can't scroll in the command list and because of that, you can't use this command unless you kick a bot or remove his slash command right.

Discord should make it possible to scroll in the slash command list every time because many bots have their own /help command. And if you can see only 5 of them, is it impossible to enter some commands.

chilly siloBOT
chilly siloBOT
#

Description

The context: I maintain a bot called Cerebro that serves as a querying utility for all of the cards in Marvel Champions — a Fantasy Flight Games (FFG) living card game (LCG). Users query for card names and the bot returns the card images in response. If their query returns more than one possible result, they must choose the option they want to be returned, which requires a button interaction. When that happens, a message is sent a...

chilly siloBOT
#

great work so far, thanks for contributing to this everyone! i'll start commenting and making suggestions here a bit later today. We should have gateway events very soon so I can help add those here after they are tested and out (they aren't finalized and are still subject to change until we officially publish this PR and update the docs as usual).

@Mateo-tem let me know if you are comfortable with letting me push changes to your fork too so I can help 🙂

chilly siloBOT
chilly siloBOT
#

Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions a...

chilly siloBOT
chilly siloBOT
#

Description

Currently send messages is required to use context menus, however this is limiting and it would be great if that was changed. I'm assuming this is because they are generally treated the same as application commands #3590 however that could be changed.
This feature request is close to #3309 but is just for context menus.

Currently buttons can be used in a channel without send message permissions, so there is a precedent for interactions with potential message effects.
...

chilly siloBOT
#

Also experiencing the issue GoogleGenius is describing:
As soon as permissions for some commands are gated behind a role, no commands show up for other users.
As soon as I configure a few commands to not be available for @everyone, but only for @mod, the @everyone commands will not be available for anyone except people with a role at or above @mod, too -- at least that's my understanding of the issue.

This is making it impossible to move to slash commands for now, as obviousl...

chilly siloBOT
#

To be honest. This is just were the discord platform sinks in for me.. Limitations all the time on bot features.
You guys keep saying "WE" but like. Yes you guys want that. And we want this. So come up with a better midway solution.
What is wrong with a yellow warning style? Nothing. You can't compare yellow to red come on...
That is just a problem. Discord releases new features but always have big limitations to them...

(This is my opinion)

chilly siloBOT
#

I'd love this, too. Discord already has UX for "invalid argument", and I hate how inconsistent it gets as soon as I introduce additional validation on top of that. With the autocomplete system we already have an existing precedent for discord sending the content of an argument before the command is submitted, so clearly that's not an inherent consern.

The optimal solution here would be for discord to allow me to register bot-side argument validation somehow, such that when the user tries...

chilly siloBOT
chilly siloBOT
#

Description

The autocomplete docs mention the following:

Your application will receive partial data for any existing user input, as long as that input passes client-side validation. For example, you may receive partial strings, but not invalid numbers.

Despite this, I'm observing an empty string being sent for an integer/number option.

I apologize if I used the wrong issue template, wasn't ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Not issue to provide repro steps when different users have these issues.
-bot is in 1 guild only

  • 13 integration only
  • no permission alteration has been made
  • User A and User B share identical roles. User A cannot see the slash command at all while User B can see the command.
  • Ive logged in to User A and it appears that i cant see the slash command list despite that i can see it on User B, using the same device, same client, same browser version.
    Discord permission shows that all s...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

It seems like the default_member_permissions field is currently not working properly, causing members to not have access to commands that they should have access to.

Commands are either invisible to members when they should have access to them (according to default_member_permissions as well as the integration settings), or are visible (sometimes in cases where they shouldn't be) but fail to execute without ever hitting our bot instance. More details described below.

##...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When using the bulk update endpoint with a command that has the dm_permission field, it still gets updated, even though they did not change.

Steps to Reproduce

Use the bulk edit endpoint (i tried it on a guild, but should behave the same on global) with the following command
{"dm_permission":false,"default_permission":true,"name":"test","options":[],"description":"hello","type":1}
Now, if you use the same endpoint again, with the same command, it will update the...

chilly siloBOT
#
Congrats! You’ve found the Discord Developer Documentation! These pages are dedicated to showing you all the ways that you can use Discord to make cool stuff. Whether you’re looking to create awesome bots for your community, empower your applications with our API, or hook us right into your game with Rich Presence or the GameSDK, Discord has something special for you.

I think the previous wording was more correct here.

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

Somehow, an user needs to close the modal to read the error and then re-open the modal. If that case is unhandled, all fields are cleared.
That would be the worst behaviour users can expect. So unlikely, if something is wrong in the modal, bots don't have a great option to tell the user actually what's wrong with that.
Also when pressing a button, most people are saying that the fact of scrolling is really bad. Imagine needing to scroll down to read the error message and then scroll back up...

chilly siloBOT
#

Hi all, it looks like we mainly have two issues being reported here:

  • setting default_member_permissions when creating a command causes the command to not show up until the command's permissions are updated (#4959)
  • having access to none of an application's commands makes the slash command picker confusing, because it continues to show the application's icon on the sidebar (#4895)

Because we have more specific issues for these issues I'm going to give this one a close. If you have ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When publishing my commands, Discord is replying with a 429 Bad Request error and says that "command name toggle got already used is this options". So I can't publish /logs toggle and /xp toggle commands. Renaming one of those two commands like logs enable will make things work correctly.

Steps to Reproduce

Just make a put request to https://discord.com/api/v9/applications//commands with the following JSON* plus headers that only contains an Authorization with...

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

Description

I wanted to add roles while making the member join but for some reasons it doesn't work or the documentation is wrong ?

Steps to Reproduce

await fetch(`https://discord.com/api/guilds/${ServerID}/members/${UserID}`, {
        method: "PUT",
        headers: {
            "Authorization": `Bot ${botToken}`,
            "Content-Type": "application/json"
        },
        body: JSON.stringify({
            access_token: access_token,
            roles: [rol...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I'd be wary about the word "chat" here. Does "chat" have semantic meaning in the API / this documentation? If not, it might not even be worth mentioning that there's an associated text channel since all voice channels will have a text channel. The distinction will only mean anything to devs who used the API prior to the release, because after there will be no concept of a "voice channel without text".

chilly siloBOT
#

Will this be added to mobile at some point?

I run a couple decent sized bots and want to switch over to slash command perms for the benefit that guilds have complete control... but the lack of mobile support for command permissions is kind of a deal-breaker. If I rely solely on command perms I can just imagine questions from all the mobile users who don't have that option.

#

The new command permissions system is awesome... the ability for guilds to control which users/roles have access to commands, and in which channels, means that as a bot developer I don't have to worry about coding a permissions system into my bot.

However, managing slash command permissions is not currently available on mobile. If you try to go to the "Integrations" page under "Server Settings" you are met with the following screen:

Protocol FR13NDSH1P can only be executed from the ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This is great for desktop, how about mobile? Mobile is already nothing like desktop in this regard, and I think we'll basically see the same thing as inline fields for embeds, where mobile gets no support for the aesthetic feature. I don't actually care about mobile for personal use since I rarely use it, but there's an astonishingly high number of people that use mobile exclusively so as a dev I have to consider it.

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

Description

Guild commands take almost the same time to refresh when they being edited, so fast development or testing isnt possible.
The commands are registered but they are not visible (after 10-60 Minutes they are) when I type / in the chat.
Even after multiple restart (the bot and the client) nothing. Its annoying to wait half an hour and somethings longer just to test a new feature or something else.

Steps to Reproduce

  1. Add a slash command
  2. Update the OptionData
  3. Bo...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hi,

The current timestamp formatting options are extremely limiting and difficult to work with.
For instance there is currently no way to show weekdays without using the absolute longest option, which is really hard to make look good.

What I'd like to see is formatting like date-fns format() that is based on Unicode technical standard #35
https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table
https://date-fns.org/v2.28.0/docs/format

#

Why don't use HEX colors and change it directly in css? You could use parameters to set style like: border color, background color, text color. I don't think that limit a developer option in something like this is any good, everyone wants that, so why not?
And last, but not least:
"green to indicate success, red to indicate danger" this is horrible color choice if you want to talk about accessibility, since I know people with Protanopia, which is a colorblind type that can't differ between ...

#

this is horrible color choice if you want to talk about accessibility

Yes, but this is something that a colorblind mode can handle, while custom colors would be far more challenging. So you kind of made an argument against custom colors with this. You are not choosing colors, you are choosing button styles (which can be represented differently by clients, depending on settings) unlike custom colors.

chilly siloBOT
#

You are not choosing colors, you are choosing button styles

If you can set border color and background separately you are changing what you call "button styles", since the only difference between styles is background color and the type(success, destructive???, etc), nothing more.

but this is something that a colorblind mode can handle

Since Discord don't care about creating this mode, it doesn't change a thing to be challenging or not, you have to install something to change color...

chilly siloBOT
#

To be a bit more explicit, the current system just uses the locale to render the date how someone would expect it (e.g. MM/DD/YYYY vs DD/MM/YYYY) using a short set of strings that allow Intl.DateTimeFormat to work with that constraint in mind. Free form format strings like the ones in the Unicode TR35 would make it possible for a user to create a format string that would look fine in e.g. en-US locale but look foreign in ja-JP locale.

Adding additional locale-independent formats for wee...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Mh.. I made a request by only keeping essential data like you, and it seems to be working... (I apologize for the displaying of the code...)

[{"name":"logs","name_localizations":{},"description":"Permet de gérer le système de logs.","description_localizations":{},"options":[
        
                            {"name":"channel","type":1,"name_localizations":{},"description_localizations":{},"options":[{"name":"salon","name_localizations":{},"description":"Le salon où envoyer le...
#

Here are the checks I made:

  • [x] Getting a successful response by keeping only /logs and /xp (see above)
  • [x] Re-checking first check after some adjustements
  • [x] Adding /automod to request
  • [x] Adding /userinfo to request
  • [x] Adding /ping & /support to request
  • [x] Adding /autorole to request
  • [x] Adding /language to request
  • [x] Retrying with old data I was sending when getting the error
  • [x] Resetting code to the default one that was glitching

Well, it's working... ...

chilly siloBOT
#

Ok. I'm sorry for all of that. It seems I made a mistake in my code. The error came back, so I removed all of the commands one by one, until I was sending only the xp command. Then, I checked the data sent, and saw that:

[
    {"name":"xp","name_localizations":{},"description":"Permet de gérer le système d'expérience du serveur.","description_localizations":{},"options":[
        {"name":"toggle","type":1,"name_localizations":{},"description_localizations":{},"options":[
        ...
chilly siloBOT
chilly siloBOT
#

Due to a misinterpretation of the current DM limits and because there was a server blackout, my bot ended up sending DMs to notify users they got kicked out of a channel. My bot was flagged for this reason and although we removed all unsolicited DMs and submitted two appeals, we have not received any response yet and it has been more than 2 months now.

Is there anything else that I could do apart from submitting an appeal to get my bot whitelisted?

I know this is slightly unrelated to ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The first note was removed completely because the fields were moved to the gateway page. The second note was changed to one * and is kept - it doesn't seem like Git correctly picked up on this though.

The same thing applies to the rest:

chilly siloBOT
#

Hmmm yeah that's tricky...in that case maybe leaving it where you added it is fine. We could also keep that in the description or add a footnote to the Channel.md table with that information (and maybe an INFO callout above the gateway table that also the difference).

I slightly lean towards the option I described so that there's consistency with other tables (and they'll already be referencing the Channel.md table for other fields), but I'm also fine keeping it the way you have now.

chilly siloBOT
#
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

On my testing server (I am the owner) I have a channel for each bot. Each bot's permission is set so they can only access their specific channel. I set up command permissions in server settings but all the commands still show in every channel. So I'd like to be able to hide the non applicable commands, or at the very least have them sorted to the bottom. It would make using slash commands in my server a lot easier.

#

This is more of a client request but it has to do with slash command permissions so I think it still belongs here.

One of the bots on my server defaults to changing permissions for a lot of the commands. However, I want to sync all of these commands to some other restrictions I set. Currently the only way to sync them all is to go into each individual command and press sync and save. Not only do I have to do this on a lot of commands, but I have to do it slowly due to each one being an ind...

chilly siloBOT
#

Description

I'm seeing people having problems with slash commands more and more when it comes to a field accepting a user tag.

In this example the user types: (Pics show it clearer)
/mod_channel_create
They select discord_tag so it changes to:
/mod_channel_create discord_tag:
Start typing @Ult and select @Ultimate from the pop up. It changes to:
/mod_channel_create @Ultimate#676
Notice its deselected the discord_tag option

Anyone else experiencing this or have a way around ...

chilly siloBOT
#

Description

Hello! I sharing an issue today. The App Directory preview was just launched a few minutes ago for us bot developers to see on what to expect from our Apps pages, however one of the most important parts for me personally appear to be not working correctly, as per shown in the image below.
image

Steps to Reproduce

Go to app directory and add a hyperlink to the lon...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Unless I'm missing something, the table above indicates that PING never has the locale field available. It doesn't seem to mention anything about PING's data field.

So yeah, I believe the footnote of the Interaction Structure table [implicitly mentions](https://github.com/discord/discord-api-docs/pull/4909/commits/9afd84ccf4502058a96bda6c6a616d0c178f26b2#diff-b44c2bafd9f1fb4cd3383e25770ef07d972796aa56dedd73ba1a7853df2d62d0R31 in the footnote) that PING should not be expected to...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When i go to submit / enable my app discovery it mentions "Your application commands may not contain any harmful or bad language", even though my bots slash commands contain no harmful language, i have gone through every single command and disabled them and it still says the same thing, i even waited 24h to see if it needed to propegate but still no luck

Steps to Reproduce

idk why it is like this. maybe to write a harmful command name...

Expected Behavior

it shoul...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The new slash command triggers, such as typing hello!, $, >, +, - all trigger the slash command text box.
This discussion is to be a center of all the issues users have found with why this is a bad decision, things that would be extremely frustrating for users:

  • ! triggering inside the message
  • wanting to type something like a stock $HCP
  • adding to their previous message like +and this and that
  • generic - within a message for demonstrating pause
  • other similar cal...
#

I don't have the issue you mentioned. For example, typing hello! doesn't trigger the menu.

I think educating users about new slash commands is required for a smooth transition, and showing a suggestion when a user is using an old-style text command is a good idea. Note that they are only suggestions, they aren't selected by default. If you ignore the suggestion and just type your message, the message is correctly sent, as expected.

Many bots devs have already shown that this education...

chilly siloBOT
#

Description

Fetching an invite to a private voice channel (i.e. with view channel or connect permissions denied for @everyone) without authorization returns an object that is lacking a channel field, but contains "channel_id": null. The documentation states that channel is nullable, but not optional.
It appears to work fine with other channel types (text, stage, forum), or when fetching the in...

chilly siloBOT
#

Description

Client doesn't allow selecting the managed boost role to set permissions.

Steps to Reproduce

Have a server which has a managed boost role
Try to set permissions for a command in integration settings for that role.

Expected Behavior

The role shows up in the list

Current Behavior

The role does not show up in the list

Screenshots/Videos

No response

Client and System Information

Canary 130019 (71dc42b) Host 1.0.46 Windows 10 64-Bit (10.0.22621)

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

As we know discord rolled out a new update where messages starting from ., -, ? etc also show matching slash commands, For e.g. ?ping will show all the /ping commands matching for that guild.

In my opinion, we can take it even further and allow bots to tell discord their prefix. This can be global and per-guild just as slash commands. This means if I set my bot's prefix to k!, upon typing k!ping I will be shown the /ping command for my bot only.

To better explain this,...

chilly siloBOT
#

I opened a ticket for Discord's API Support with the category "API Question" more than a month ago. Still no answer.
Now yesterday I opened a new ticket for Discord's general support to ask what's up with the ticket. Someone answered in my first language today and will now forward me to the English-speaking team. Let's see if they can tell me more.
As of now, I only see inactive posts on the Feedback hub and closed issues on GitHub. There is an [issue where a Discord employee ](https://gith...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

The APPLICATION ID for a discord application is the same as the CLIENT ID.
Having two names for the same information is redundant and causes confusion.
Welcome documentation uses CLIENT ID: https://discord.js.org/#/docs/discord.js/stable/general/welcome

Routes.applicationGuildCommands(CLIENT_ID, GUILD_ID),

Source saying they are the same information: https://support-dev.discord.com/hc/en-us/articles/360028717192-Where-can-I-find-my-Application-Team-Server-ID-#:~:tex...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

the oauth2 tab uses "client id" because that is the name in the oauth2 spec, so non-Discord-related oauth2 libraries and stuff might ask you for a client id. Discord generally calls it the application id.

Welcome documentation uses CLIENT ID: https://discord.js.org/#/docs/discord.js/stable/general/welcome

discord.js is not affiliated with Discord; Discord uses application id in the context of commands.

chilly siloBOT
chilly siloBOT
#

Background

2FA is pretty good feature for security. mfa_level (2FA requirement for moderation) is good feature to encourage (almost force) guild (server) operators to enable 2FA, by requiring it for their duty.

However, almost all moderation bots allow bypassing 2FA requirement, checking only permissions and roles, probably because there is currently no reasonable way to enforce it without adding extra hassle besides the requirement itself.

Currently it is possible to determine ...

chilly siloBOT
#

Description

When adding a name_localizations dictionary to commands the name field is still being shown in the UI.

Steps to Reproduce

Create an application command with a name_localizations field and change your language in Discord to test the localized name.

Type in the /{localized name} command and you'll see /{name} in the "COMMANDS MATCHING" section

Expected Behavior

I expect the localized names to be shown as the matching command names.

Current Behavior...

chilly siloBOT
#

Description

I have some localized commands, and they appear as expected. However, it is impossible to manually type command names in the target locale. The interface only matches the default/English command names.

Steps to Reproduce

Attempt to type in a slash command's localized name (with client using corresponsing locale and feature/web-slash-command-localization).

Expected Behavior

I would expect that Discord would match the localized name.

Current Behavior

Discord o...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I run an anti raid bot called Beemo Helper which is a third-party extension of Beemo, the two thousand nonmember ban limit prevents me from dealing with raids as sometimes just when I ban users they leave the server and I get rate limited. So I hoping a skip parameter could be introduced to the ban endpoint to skip nonmember bans and thus not get rate limited.

Steps to Reproduce

Encounter large bot raid where they leave right after sending their spam.

Expected Be...

chilly siloBOT
#

Adding additional context, especially for the named use case (antiraid bots) it would be a huge plus being able to avoid hitting this rate limit. Sometimes, especially in big raids, due to various latencies and request queueing, you can't be fully sure if a user is actually still a guild member by the time the ban request is sent. Even if you try to GET /members/:id before every ban, there is still a real chance the user has left the guild in the time between discord sending the member respon...

chilly siloBOT
#

This will become a problem, if the app directory becomes the standard for server owners to find bots.

If unverified bots get no exposure then they will not grow and the developer will just abandon the bot and stop using the discord API all together.

I have 1 verified bot and a few unverified. (1 being a backup bot for my verfied incase that has any downtime).
unverified bots take a while to grow as it is.

#

On Tue, May 31, 2022 at 00:01 Jake Birchall @.***>
wrote:

This will become a problem, if the app directory becomes the standard for
server owners to find bots.

If unverified bots get no exposure then they will not grow and the
developer will just abandon the bot and stop using the discord API all
together.

I have 1 verified bot and a few unverified. (1 being a backup bot for my
verfied incase that has any downtime).
unverified bots take a while to grow as it is.

...

chilly siloBOT
#

Why is this needed ?

The guilds.join Oauth2 scope can be very useful. It allows you to add a user to a guild, with the roles you need.

This can be very useful in a lot of situations, but two notable ones are :

  • Joining a guild that requires linking your discord account. Using the code grant allows you to add the user to the guild, bypassing verification and giving the user the right roles.
  • Joining a private guild. The web server can check a database or any other authenticat...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I made a bot before and that was working.
I deleted my app and make a new one in another discord account.
but when I enter a new token instead of an old one
I receive this error:

  File "c:\Users\Behrad\projects\Discord.py\main.py", line 82, in 
    bot.run("OTgxMTkyNzQ1NjIyMzExMDAy.GUxjlA.3ca377klZS541ICP2knI_dAx8aWxzLqYzBq3uc")
  File "C:\Users\Behrad\AppData\Roaming\Python\Python310\site-packages\discord\client.py", line 723, in...
#

I recommend reading the error, it tells you exactly what is wrong:

Shard ID None is requesting privileged intents that have not been explicitly enabled in the developer portal. It is recommended to go to https://discord.com/developers/applications/ and explicitly enable the privileged intents within your application's page. If this is not possible, then consider disabling the privileged intents instead.

This means you have to turn on the privileged intents in your application dashboar...

#

I recommend reading the error, it tells you exactly what is wrong:

Shard ID None is requesting privileged intents that have not been explicitly enabled in the developer portal. It is recommended to go to https://discord.com/developers/applications/ and explicitly enable the privileged intents within your application's page. If this is not possible, then consider disabling the privileged intents instead.

This means you have to turn on the privileged intents in your applicatio...

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

Description

kinda off topic but~ looks like token length got increased recently and the secret scanning on github was not updated to reflect this, as of now tokens generated wont be reset and the user wont get a system DM.

Steps to Reproduce

Post a new token in a gist

Expected Behavior

Its reset

Current Behavior

Its not

Screenshots/Videos

N/A

Client and System Information

N/A

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Apps Menu and Context Commands (right click message/user > Apps) do not show up in Text-in-Voice channels.

Normal slash commands still work.

Steps to Reproduce

  1. Create a context-menu command to show on a user or message.
  2. Right click a message or username in a TiV channel.

Note that there is no Apps submenu.

Expected Behavior

When a context command exists, there should be an Apps submenu when right clicking a user or message in a TiV channel.

###...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

It would be so great to have a button to resend a command that was successful in its execution. This is already done with commands when the application does not respond, so why not those that worked?

As a developer, it would help me waste less time when I make incremental changes on a command what want to try it over and over with the same arguments without having to copypaste or type everything again.

Or perhaps, something to instantly bring the whole command arguments to the message ...

chilly siloBOT
chilly siloBOT
#

Description

Command localisation (https://discord.com/developers/docs/interactions/application-commands#localization) is documented as if its been released which isn't the case, there's also zero indication around when it may be released, if its at all considered "stable" etc etc.

Steps to Reproduce

Look at the documentation

Expected Behavior

The state of this feature should be mentioned.

Current Behavior

The feature is documented as if it's been released despite the ...

chilly siloBOT
#

My personal use case is for an LFG bot, in order to create new groups, but there are definitely tons of interesting use cases (e.g. moderation, search). I think this is a compelling feature to add because (at least superficially) it appears not to require any modifications to the backend--the only thing really preventing it from being possible already is the lack of an entry point on the UI.


A possible solution could be to use something like the current "+" button.
![image](https:/...

chilly siloBOT
#

use modals

also... I don't think context commands for channels are a thing, so you can't even use a context command on a thread? (I have no way to test this though)

It also doesn't really make sense (semantically) to e.g. create a new post through a context command on an existing post?

(I'm not saying there aren't ways to work around this, I'm just saying that I think the feature is worth adding! This comment section currently is just "here's a way to emulate your desired behavior"...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

this issue applies on all bot integration permission. None of the 8 bot permission list the nitro booster role in the role list

Steps to Reproduce

Integrations->Bot->Add Roles or Members
list doesnt show the default nitro booster role at all

Expected Behavior

Role list is suppose to nitro booster role, the default role that discord creates for each server

Current Behavior

Not even listing the nitro booster role

Screenshots/Videos

No response

Cl...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When sending a message through a webhook, if you provide a custom avatar_url, it returns no avatar hash on the return payload.

Steps to Reproduce

POST https://canary.discord.com/api/webhooks//?wait=true

{
    "content": "Wow!",
    "username": "Username",
    "avatar_url": "https://i.natgeofe.com/n/82fddbcc-4cbb-4373-bf72-dbc30068be60/drill-monkey-01_2x3.jpg"
}

Expected Behavior

author.avatar on the return should have the avatar hash.

C...

chilly siloBOT
chilly siloBOT
#

Hey !

I'me a nooby developer, and I had a script that used discord api to retrieve infos about my discord account using tokens (doing http request to https://discordapp.com/api/v6/users/@me, with authorization header)

Recently, it stoped working :,(

Also, I used a js script to login to my account using my token, but it (also) doesn't work (

`function login(token) {
setInterval(() => {
document.body.appendChild(document.createElement 'iframe').contentWindow.localStorage.token = '...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Currently, given that you only have a response to a message component, there's no way to tell if the message was sent as a response to an interaction because the message interaction field isn't present in the response message.

The docs state for the message interaction field:

sent if the message is a response to an Interaction

Which in the case of a message component reply is true, yet the field isn't pres...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Text in voice recently allowed using app commands in voice channels. Additionally, forum channels are getting close to release. However, they can not have command permissions disabled with permissions v2.

Steps to Reproduce

Attempt to use the UI to select a voice or forum channel in integrations for command permissions.

Expected Behavior

Forum and voice channels can be selected.

Current Behavior

You can only select text channels.

Screenshots/Videos

_No...

#
#

That would be cool too, although for our use case specifically it wouldn't work as well because we have people who translate news for our mobile game from Japanese to English and manually type it into a news server. Everyone on this team has Nitro and shares the emojis that we use for our bot, so it's super convenient; we simply invite these people to our bot's servers.

Also fwiw I bet that making a new type of guild is, from a technical pov, a much easier task than creating an entirely ne...

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

Description

When you are using the View Server As Role feature and you change your roles, the slash commands shown as available will not update until you change channels. It seems like it's just an issue with the local cache not clearing.

This happens on the initial load, and any time you use the dropdown to change roles.

Steps to Reproduce

  1. Create a Slash Command (/report)
  2. Create a Role ("Reporter").
  3. In the Permissions V2 UI, change the /report command to only be u...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

https://discord.com/developers/applications/641672044076990470/
https://github.com/AzazelWormwood/Jax/blob/main/litbot.py

This bot is a small nextcord.py based bot running off a sparkedhost.us server, and it is returning a 429 Too Many Requests (error code 0) error and temporarily blocking access to the API. The bot itself doesn't do anything on its own; it only responds to commands. I am not sure what would cause it to make enough requests that it hits the rate limit. I ...

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

My suggestion is to have a developer-customisable bot settings menu, made similarly like modals , but integrated into the Server Settings > Integrations tab.

Every setting would have its own Category that holds different settings, and contains a title and an optional description.
Settings can have:

  • Title (required)
  • Type (selections, true/false toggle, channel selectors, user & role selectors, text inputs & file uploads) (required)
  • Description
  • Emoji

This would remove the...

chilly siloBOT
#

Feature: Provide a declarative UI for application commands in the developer portal.

Problem: Currently, a user has to manage the state of their application commands using REST endpoints procedurally which can create unnecessary effort in maintaining an updated list of commands. This issue is also related to the application commands endpoint being heavily rate limited, which means deploying a bot for tests or with slightly changed commands relies on developers manually removing or a...

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

The following things they should add:

  • User
  • Role
  • Channel
  • Multiple Choice
  • Choices (Here you can only select 1 out of the given choices. Like: Yes, No

And this

Like if we need an email, or something, let the bot validate it and return errors for the user to solve (this is in addition to your suggestion)

will never be. Because Discord cares about its users' safety, their personal information should be kept secret.
They will not make it so you can ask people for their em...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I have a dynamically expanding voice channel function integrated with my bot, when you join a voice channel a new one opens up so there is always one channel. Additionally I create a thread or get an existing thread that shares a name with the voice channel and add users who joined the voice channel to said thread, when they leave the call I remove them from the thread.
![Dynamic Rooms Example](https://user-images.githubusercontent.com/58058942/172501950-5191d083-a3d1-4131-aca3-239a93a7ee94....

chilly siloBOT
chilly siloBOT
#

Description

When using a older version of iOS (13.6.1, 14.4) the login modal never displays, page says on a grey screen.

Steps to Reproduce

Find a device with a old iOS version
Navigate to a oAuth2 login page
Observe no modal to enter credentials

Expected Behavior

Login/Password modal to display

Current Behavior

It does not.

Screenshots/Videos

Uploading RPReplay_Final1654443322.mp4…

Client and System Information

iPhone 7 running iOS 13.6.1, and iPad ...

chilly siloBOT
chilly siloBOT
#

Went back through and addressed most comments. Some changes reflecting this (e.g. adding user_id field to one of the gateway events) are in but won't be live to later today. We're aiming to finalize this documentation by tomorrow so please let me know if there are still outstanding issues that are concerning. One issue that still needs to be addressed is some of the error messages having unexpected nesting + need for more clarity on errors. We will look to address this after docs are initia...

chilly siloBOT
#

We're aiming to finalize this documentation by tomorrow so please let me know if there are still outstanding issues that are concerning.

I was wondering why only messages being blocked have entries in the audit log, as opposed to actions such as timeouts and potentially others in the future having entries as well. Of course, actions such as timeouts are still visible to bots via events, however, I think that a user being timed out without any log of it could be potentially confusing to g...

#

We're aiming to finalize this documentation by tomorrow so please let me know if there are still outstanding issues that are concerning.

I was wondering why only messages being blocked have entries in the audit log, as opposed to actions such as timeouts and potentially others in the future having entries as well. Of course, actions such as timeouts are still visible to bots via events, however, I think that a user being timed out without any log of it could be potentially confusin...

chilly siloBOT
chilly siloBOT
#

@JohnyTheCarrot Hey sorry for the delay on this. I'm happy to merge it, but could we move it under the existing Embed Visualizer category?

The copy for that section should change a little to encompass both visualizer. You could simplify it to something like:

Webhooks and embeds might seem like black magic. That's because they are, but let us help you demystify them a bit. These tools can help you test how...

#

Just wanted to say that there's other use-cases where this is an issue.

For example, we have a command in our server which creates a joinable private thread in relation to an episode of a show. We use private threads for this because public threads have message previews so users can still be spoiled even if they aren't in the thread. These system messages are annoying here because you see a notification in a thread for obi-wan season 1 episode 4, you think someone has something new to sa...

chilly siloBOT
chilly siloBOT
#

I have a dynamically expanding voice channel function integrated with my bot, when you join a voice channel a new one opens up so there is always an open channel. Additionally I create a thread or get an existing thread that shares a name with the voice channel and add users who joined the voice channel to said thread, when they leave the call I remove them from the thread.
![Dynamic Rooms Example](https://user-images.githubusercontent.com/58058942/172501950-5191d083-a3d1-4131-aca3-239a93a7e...

chilly siloBOT
chilly siloBOT
#

I guess this is not technically an API request or suggestion (well, it is but it isn't), but I want to just get this idea planted in as many people as I can. Selfbots / compromised accounts that are spamming DM's to our guild members are an ever increasing problem, and this is now something that occurs several times a day, even for small guilds of only a few hundred members. There is currently nothing we, the guild admins, can do to combat this problem.

I think it would be very easy to fix...

#

In recent months, discord has dramatically improved spam protection and continues to do so. For example, now a new DM with an unknown user starts with a warning about possible spam. Users can also be marked as spammers by discord, and their messages will be automatically hidden. In addition, there are new methods of protection that have not yet come out. Unfortunately, your solution will cause more inconvenience not to selfbots but to ordinary users, so I doubt that something like this will b...

#

Can you explain what the downside to this idea is? I am not saying that this should be enabled by default (the currently strictest mode is not enabled by default either). I would just prefer to have this option available. For reference, it has been less than 1 hour since the last time one of our members received a spam DM that was not labeled as such in any way. They were not friends and they did not have any roles (only 1 mutual guild). The current measures are clearly not working.

#

There are already countermeasures offered to server moderation teams to handle this. There's moderation bots, membership screening, privacy levels per user for DMs, a built-in report spam feature and likely others I'm forgetting. Saying that this seems likely easy to fix feels somewhat dismissive of Discord's latest efforts to combat spam and unwanted accounts like self bots. Some servers even have a captcha verification step upon invitation.

#

I am not sure you understand what the problem is; this is not an in-guild issue, this is a DM issue. Moderation bots, membership screening and similar features do not protect users from DM's if the spambot has a verified phone number on their account (which is common now). With a verified phone number you can bypass any moderation level in any guild, and there is nothing a guild admin or guild bot can do about it, because DM's are private.

The user can choose to report it, but that doesn't...

#

It seems to me that this does not correspond to the concept of servers. So it turns out that the server administration will be able to manage channels (DMs) to which it simply has nothing to do. This can greatly complicate communication outside the server for ordinary users on some very large servers. It seems to me that the current course of development of anti-spam systems is more optimal.
![unknown-7.png](https://user-images.githubusercontent.com/68960526/172826287-5d7a58ae-6e67-48dc-bf4a-...

#

It seems to me that this does not correspond to the concept of servers. So it turns out that the server administration will be able to manage channels (DMs) to which it simply has nothing to do.
I must not have explained the idea properly then; the guild would still not manage DM channels or have any kind of access or insight into DM's. The idea is to have the exact system we currently do, with just one single modification: A phone number is not enough to be allowed to send DM's - you need...

#

Spam ????

၂၀၂၂၊ ဇွန် ၉၊ ကြာ ၁၇:၁၃ တွင် Nathzukie @.***> က
ရေးခဲ့သည်−

Either way, we have solid evidence that it doesn't work. I don't know why
it does not work, but it doesn't. As it stands, I have never seen a bot
capable of passing our guild's custom anti-bot-test, which means that the
proposal most likely would be super effective.


Reply to this email directly, view it on GitHub
<https://github.com/discord/discord-api-docs/discussions/5042#discussioncomment-2912584...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Whilst first attempting to get this working, my bot created around 250 roles and then I was given an error saying I could not create anymore roles. after manually deleting the roles, and confirming my bot was still working to create a couple of additional roles, I continue with the development of my bot.

Going forward I notice my bot was no longer creating roles (around 2 hours later). I've since spent all night and all day today, reviewing my code, going back to the examp...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I believe the "Default Authorization Link" character limit is too low, I understand why there is one, but I believe that for Discord links, there shouldn't be one.

This is the link I want to add:
https://discord.com/oauth2/authorize?client_id=847495054514716713&permissions=335924456&redirect_uri=https%3A%2F%2Finvitelogger.nickyux.com%2F&response_type=code&scope=identify guilds bot

And the 170 Character limit is cutting the URL off.

Steps to Reproduce

  • Create...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

The updated configuration for github token scanning no longer successfully invalidates tokens that were created before the token length was updated.

this is a continuation of #5009 where it was updated to support new token but support was not maintained for tokens that fit the style of the past several years.

Steps to Reproduce

upload a valid token that had a 27 character length hmac to github

Expected Behavior

the token is invalidated by discord.

Current ...

chilly siloBOT
#

Since you can get a preview of this by building locally, does this actually work as expected? It makes intuitive sense to do this, and it'd make a lot of links work in the GH render of the docs, but IIRC it doesn't work on the deployed site in its current state.

Could we get it to work on the deployed site?

If it doesn't work here's the fix:

In the **Settings** tab, add your bot’s `TOKEN`, `GUILD_ID`, `CLIENT_ID` from [the section above](#DOCS_TUTORIALS_HOSTING_ON_HERO...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

My issue with the ephmeral response suggestion is that users have to re-enter potentially long responses upon failure.

Example: I got a modal with two textfields and two text areas. One textfield needs an official timezone name to work and my bot validates it upon submission. If the user enters erroneous data (because he isn't familiar with timezone names), he has to enter the whole info again--including the two text areas. Can I dump all his inputs into a reply and try to parse it back i...

chilly siloBOT
#

Description

So basically everything described in issue #4692 is still happening in real time as we are speaking.
TLDR: Requesting users from discord api returns members with their old names, even though they changed names afterwards.

Steps to Reproduce

I have no way to actually reproduce the issue and attempts to reproduce it would be against TOS, so I won't :P.
But here is what is happening from my POV as developer of the bot:

  1. Hundreds of accounts join the server with ...
chilly siloBOT
#

Hello, so it will be really good if slash commands of a bot are divided into categories, like developers can choose which command to go under which category, and in the slash command box it will be divided according to that category and the user can also hide a category because sometimes for a user they don't use all the commands a bot offers and finding through all the commands is hectic too, so they can just hide the categories like channel categories hide.

chilly siloBOT
chilly siloBOT
#

No, it's not like them because they were not able to tell the use cases and the earlier ones were mistaken with the subcommand group, but these are not commands these are categories like the channel has categories. So it will help the developers to arrange the commands properly and users to hide not frequently used categories so that they don't have to scroll a long way to find the command they use more frequently.

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

Description

Someone in our community reported a bug with receiving an unavailable guild on a GUILD_CREATE. I asked around and this has been possible for a while. I haven't had time up to now to have a proper look at it and noticed that the docs specifically state that this should not happen, a GUILD_DELETE should be fired instead.

Would just appreciate some more information on this and whether the documentation should be updated regarding this

Steps to Reproduce

I am uncerta...

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

The issue is still here sometimes. Anyway, if you don’t wanna restart your bot to set his status : add a command to your bot that only you can execute (it checks your ID) to set the presence again.

I still have that issue, I just discoverd this thread and I thought I was the only one but I was wrong. It is actually annoying that you have to restart the bot with a command or via cmd to get the presence back.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

There are a LOT servers that are currently abusing the guilds.join scope with having it as a requirement to join a server. There are some servers that require guilds.join in order to pass their verification-gate. In my opinion, this is not well handled, as having an account that randomly joins a guild is a bad user experience. (maybe for that special case, a toast-notification would be useful: "{application_name} made you join {guild_name}").

There's also the special case where tos-violati...

chilly siloBOT
#

So currently the https://discord.com/api/v10/guilds/{guild.id}/scheduled-events endpoint can only be accessed via a bot that has been added to a guild with permissions and is not accessible with a client token from OAuth2.

I wanted to have a client app access this endpoint, currently I would have to sign in the client using OAuth2, fetch their guilds, request to the applications bot (via a separate api that has the bots secret) to get the guilds events, if the bot is not in the guild the...

chilly siloBOT
#

That would not make guild events private once a member authorizes with some kind of scope of that. It would mean that the bot needs to be on every server, which does not equal to what the guilds scope returns.
I would rather think that it would be cool to make a scope that returns the events a user subscribed to. That would not fix it 100% but that's the best thing I could expect to happen on a users behalf.

#

I was assuming that a client calling the endpoint would not be able to do so with guild id's that client is not a part of meaning events would still be private as per what a user can see normally.

Having a scope for events a user is subscribed to would also work though would not allow seeing other events that they haven't subbed to in guilds they are in so ideally this would just be a parameter or handled by user code.

chilly siloBOT
chilly siloBOT
#

Also related to the timeout action - seems like there's currently no AUTO_MODERATION_ACTION_EXECUTION gateway event being dispatched for it? There's a GUILD_MEMBER_UPDATE as one would expect, but with no way to tell that someone was timed out by automod in particular, not sure if that's intentional.

this will be added, it's not intentionally left out, we just haven't finished making this change yet

chilly siloBOT
chilly siloBOT
#
- New gateway events emitted when Auto Moderation rules are [created](#DOCS_TOPICS_GATEWAY/auto-moderation-rule-create) (`AUTO_MODERATION_RULE_CREATE`), [updated](#DOCS_TOPICS_GATEWAY/auto-moderation-rule-update) (`AUTO_MODERATION_RULE_UPDATE `), and [deleted](#DOCS_TOPICS_GATEWAY/auto-moderation-rule-delete) (`AUTO_MODERATION_RULE_DELETE `). Requires the `AUTO_MODERATION_CONFIGURATION` (`1 << 20`) intent
- New gateway event emitted when a [rule is triggered](#DOCS_TOPICS_GATE...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I'm well aware that those discussions aren't the right place to suggest features to be added to Discord that aren't related to the API itself.
But there really isn't another place to properly share this idea. Yes, I'm aware feedback.discord.com exists, but having my suggestion reach the exposure and upvotes to gain Discord's attention is as likely as me getting all world-records in existence in a month.

I also want to mention that I already suggested this to a Discord Staff member and tha...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT