#github-notifications

1 messages · Page 1 of 1 (latest)

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

While writing a parser for the docs I realized that there are multiple formats and some unnecessary formats for the tables containing api types/enums

I wrote a little tool to extract the table headings and manually modified every table with those headings.

Previously we had the following headings for tables:

  • | Field | Type | Description | Valid Types |
  • | Name | Type | Description |
  • | Field | Type | Description |
  • | Name | Value | Note |
  • `| Permission | Value | Ty...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I support a change that allows us to use the documentation as machine readable. When we created Dasgo, we had to manually parse everything out and the lack of standardization led to us requiring numerous regex strings and weeks of effort.

We use Dasgo to generate a majority of — the almost completed — Disgo (including all 174 endpoints Discord provides). A machine readable API would allow one to update type libra...

chilly siloBOT
#

This does not make the docs more machine readable in any meaningful way. Making markdown tidier does not make these docs usable as a machine readable api specification.

Moreover these changes are finite at best because when new documentation is added any associated tables will not be written following the loose convention established here.

There are also no changes to the meta documentation outlining the conventions established and no CI action provided to verify the consistency of an...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I personally think that bots should not be able to DM users unless the user DMs the bot first, as this is being abused by bots which DM advertise, send fake giveaway DMs and other hacked bots.

Example:
Without intent, starting a DM Channel - POST /channels/@me => Cannot create a DM with a recipient which did not DM the application.
Without intent, GETting a DM Channel, or both of those with the intent - ​POST /channels/@me => (DM Channel)

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

Description

On the Applications section of the developer portal, when sorting applications by "Date Created", applications created after July 22 (with a 19-digit ID) are sorted first, while they should be sorted last.

Steps to Reproduce

Have at least two applications: one with an 18-digit ID, and one with a 19-digit ID, and sort applications by "Date Created" in the developer portal.

##...

chilly siloBOT
#

Description

I have a role manager bot which has a /ping command which lets moderators mention certain roles without them having access to the mention everyone permission.

I ran into an issue where the bot doesn't seem to be able to ping roles anymore after I switched to slash commands.

I used to create a normal channel message before but since I have to respond using an interaction response now that isn't an option anymore.

Steps to Reproduce

  1. Set up the bot so it has permi...
chilly siloBOT
chilly siloBOT
#

Description

I will admit, this is a slight misuse of slash command argument expectations. The use I've made for a discord bot uses both Discord mentions as well as Reddit usernames. If we tell discord to expect a discord mention, it's impossible to mention a reddit username without providing a different argument.

Instead, we can tell Discord to expect a String and allow users to ping someone, or provide a reddit username as a string.

When using this configuration, the command becom...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This is a known issue. Interaction responses are webhooks under the hood, and therefore use the @everyone role's permissions (instead of the bot's permissions)

This is planned to be changed on July 28 to use bot's permissions when checking for the MENTION_EVERYONE (and USE_EXTERNAL_EMOJIS) permission for interaction responses and application-owned webhooks.

So your bot should start to work as expected after July 28 wi...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Fetching guilds on the guild 222078108977594368 (specifically) returns a 500 response both when accessed via the bot API and the client (server settings > integrations).
Note: fetching hooks on each individual channel of the guild works and will return the webhooks.

@IanMitchell here is the reminder you asked for

Steps to Reproduce

GET /guilds/222078108977594368/webhooks

Expected Behavior

Getting webhooks

Current Behavior

500

Screenshots/Vid...

chilly siloBOT
#

Description

When using bearer tokens to update command permissions missing application.commands.permissions.update scope make api return code 40001 instead of 50026. This causes confusion around why the respective request fails.

Steps to Reproduce

  • Get a bearer token with the oauth flow with missing application.commands.permissions.update scope
  • Use that token to send a request to /applications/app_id/guilds/guild_id/commands/command_id/permissions
  • Api returns 401 Stat...
#

Description

Oauth2 url generator is missing some of the available scopes

Steps to Reproduce

Expected Behavior

Listed scopes should include applications.commands.permissions.update applications.commands.permissions.update `.

Current Behavior

It does not include applications.commands.permissions.update in the scope list.

Screenshots/Videos

No response

Client and System...

chilly siloBOT
chilly siloBOT
#

Description

matched_content and content are documented as optional, but as of a recent change (like 3-4 days), are no longer provided when the message content intent is disabled. This goes against the documentation, and is a breaking change.

Steps to Reproduce

Can't provide curl requests due to this being over the gateway.

  1. Provide the automod execution intents to the gateway when connecting, while making sure the message_content intent is not provided.
  2. Have the manage...
chilly siloBOT
#

This statement is rather ambiguous because "often" implies that it does NOT apply to every request containing a top-level resource; or started by a top-level resource. The problem is that this statement is also the only sentence regarding Discord's Per Resource Rate Limits; barring X-RateLimit-Scope which only indicates that a 429'd request is a Per Resource Rate Limit. There is also no clarification why the X-RateLimit-Scope calls Per Resource rate limits shared, which could imply that mul...

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

I'd like to bump this up, because I have the same issues. I have accessibility concerns, and I cannot read light text on a dark background. To me, this is like being in a wheelchair at a subway station that doesn't have elevators. I just can't work with it!

The last time I was in this type of situation, I had to fight tooth and nail, downloading a bunch of custom CSS extensions and manually changing each element one by one.

Please please please tell me that this isn't the case here. I...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When using the V9 gateway, discord allows you to enable the MESSAGE_CONTENT intent without it being approved for the application.

Instead, this should still close the socket with a 4014: Disallowed Intents close code. However, it should allow you to enable it if you are approved.

This way, a library can already provide the intent before updating to v10, so bot devs can properly prepare and transition to the future versions smoothly. It doesn't really make sense for a ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hello, I really love discord, but there is one feature I really miss.
My community and I are playing different tactical games where you use internal VOIP and so you have to set push to mute hotkeys in discord. But it is different each time which keys have to be set. A cool feature would be to able to set them per game, so set hot keys for game A are not set for game B or desktop etc.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

According to RFC 6749 §5.2, the server should respond with invalid_request if the request is missing required parameters:

         invalid_request
               The request is missing a required parameter, includes an
               unsupported parameter value (other than grant type),
               repeats a parameter, includes multiple credentials,
               utilizes more than one mechanism for...
chilly siloBOT
#

I get what you're saying here, the problem is that's not actually what its like. Its not a temporary revocation of permissions, its an extra layer separate from permissions that says how often you can use said permission.

Probably a better approach would be having 3 permissinos, pin, delete, and slow mode bypass + management, but given discord has "planned" to separate pin and delete for so long, grouping management into this is a far easier request at the moment.

chilly siloBOT
chilly siloBOT
#

Description

Responding to an interaction received via webhook directly with a multipart/form-data file upload causes "This interaction failed" when uploading a 160kb file, but works when uploading a 150kb file.

I have tested with multiple file types including images, text and binary, with and without content-length, changed keepalive timeout headers, boundary encoding...

I am unsure at which exact size the issue starts, but somewhere between 150kb and 160kb the responses start fail...

#

Background
The only way to authorize a user to login with Discord is through OAuth2, forcing mobile developers to redirect users to the browser to sign in.

Problem
The user experience requires that users remember their Discord credentials because they are likely not signed into mobile web.

Solution
Enable deep linking to the Discord app for authorization. This will save user's time (no remembering passwords) and improve...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Hello, I am currently facing an issue where global slash commands for my bot (with ID 808706062013825036) are not appearing for some users in a particular server (with ID 351064956478685184). Below is the minimum code I am using to create the global slash command, and I can confirm that this command (/slashtest) does appear for all members in other servers, but only appears for one member in this particular server. I have confirmed that all users have the `use_applicati...

chilly siloBOT
#

Description

The OAuth2 topic of the developer documentation does not mention that PKCE is supported.

Steps to Reproduce

View OAuth2 topic in documentation

Expected Behavior

PKCE should be mentioned that it is supported by Discord OAuth2.
Some information about usage of PKCE.

Current Behavior

PKCE is not mentioned at all in OAuth2 topic.

Screenshots/Videos

No response

Client and System Information

Not relevant

chilly siloBOT
chilly siloBOT
#

Has there been any consideration of allowing command permissions to be set by category? I was surprised to see that automod could be set up to whitelist categories when there isn't a similar feature for setting command permissions. This would vastly simplify our permission settings and save us a lot of work as we frequently create/delete channels and currently have to denylist a couple dozen commands for each of them.
![image](https://user-images.githubusercontent.com/66987192/181617232-7be5...

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

Same as always been. No difference from before.

On Fri, Jul 29, 2022, 3:58 PM Suspense @.***> wrote:

what do you see


Reply to this email directly, view it on GitHub
https://github.com/discord/discord-api-docs/discussions/5187#discussioncomment-3284220,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASINGSP7YHSU3ABC45B5CU3VWRAV7ANCNFSM53PTNCDQ
.
You are receiving this because you commented.Message ID:
@.***
com>

chilly siloBOT
chilly siloBOT
#

Description

You are able to give permissions to an application command but not take them back.

Steps to Reproduce

  1. Go to a server where you have manage server permissions, manage role permissions and you can manage some channels (not all).
  2. Head over to Server Settings -> Integrations -> Bots and Apps and select any application with application commands.
  3. Select a command (you can also use the global permissions), remove for "All Channels"
  4. Try to re-add per...
chilly siloBOT
chilly siloBOT
#

I'm still facing this problem in the API, receiving 404 with Unknown Entitlement. It seems that the user is not found. <img alt="image" width="971" src="https://user-images.githubusercontent.com/3102127/155575023-5420648a-5c50-418e-b8dd-eb4cf77552b9.png">

Did you ever find the way to do this @ivanseidel ? I am getting the same error. If you rename percent_complete to something else, it replies with

{
    "percent_complete": [
        "This field is required"
    ]
}

...

chilly siloBOT
chilly siloBOT
#

When trying to use the application.flags provided by the READY dispatch, I also noticed that these flags are incorrect on v9:

The application payload I receive on gateway v9 shows these flags:

{
  "flags" : 8691712,
  "id" : 420321485757087746
}

Which includes the GATEWAY_MESSAGE_CONTENT flag, since 8691712 & (1 << 18) == 1 << 18. However, I have this flag disabled:

![image](https://user-images.githubusercontent.com/18090140/182181735-8655e49c-2812-4191-931a...

chilly siloBOT
chilly siloBOT
#

Description

The x-ratelimit-scope header is wrong, also error message should probs be changed from You are being rate limited to The write action you are performing on the server has hit the write rate limit

Steps to Reproduce

Send enough requests to get the guild rate limited then check the response headers

Expected Behavior

x-ratelimit-scope: shared

Current Behavior

x-ratelimit-scope: user

Screenshots/Videos

No response

Client and System Informati...

chilly siloBOT
#

The connection service list includes a samsunggalaxy connection which seems to not actually exist. There is a Samsung galaxy activity, but that works through OAuth2, not a Discord connection.

from @Jupith:

{
    "code": "BASE_TYPE_CHOICES",
    "message": "Value must be one of ('skype', 'spotify', 'leagueoflegends', 'steam', 'battlenet', 'twitch', 'epicgames', 'twitter', 'youtube', 'github', 'reddit', 'facebook', 'contacts', 'playstation', 'xbox')."
}
chilly siloBOT
chilly siloBOT
#

Description

Currently only on PC, I and my users have been experiencing an issue when using slash commands which take an attachment as an argument. As soon as I press send, the message says "This interaction failed" and clyde sends a messaging saying:
"Your message could not be delivered. This is usually because you don't share a server with the recipient or the recipient is only accepting direct messages from friends. You can see the full list of reasons here: https://support.discord.c...

chilly siloBOT
chilly siloBOT
#

Description

In Desktop/PC app, when someone tries to place one attachment the other one gets deleted and vice versa, no error appearing.

Steps to Reproduce

  1. Write a command that takes two or more attachment arguments
  2. Try to attach both arguments

Expected Behavior

The user should be able to attach both attachments without them getting deleted.

Current Behavior

When you upload one of the attachment arguments, the other one gets deleted, making it impossible for the ...

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

It is correct that we can't test everything a user might try to do, but this is more about testing the actual functionality.
Also, a test suite often contains regression tests which make sure, that you don't re-introduce bugs you previously fixed.

If you are a developer, you should know the importance of automated testing. Especially because it is a reproducable test which doesn't forget to test one thing.

A solution proposed above your comment would be ideal, which would include a set...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I just have one webhook created in our server, suddenly it stopped working. So I checked the webhook settings and the webhook was gone. I tried to create a new webhook and I get the same "internal server error" as above. This has been weeks now, not hours. So I dont think its a temporary outage or anything like that? And also I am in admin role, so it should not be an authority issue.

chilly siloBOT
#

Description

image

Steps to Reproduce

Create a webhook in a guild
execute the created webhook with an emoji from a different guild

Curl requests for creating the webhook have not been provided as authorisation is with a user token.

I used discohook to execute the webhook, rather than manual execution, copyable [here](https://discohook.org/?data=eyJtZXNzYWdlcyI6W3siZGF0Y...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Similar to the scope of this PR, it would be nice if we had a PR separate to normalize optional field values. There's a large inconsistency between marking fields in a table as optional, with some areas having ? on the name, others on the type, or the description outright saying "null."

I believe normalising the table headers is the first big step towards ensuring consistent documentation. Documentation is meant to be read by humans, sure, but allowing a docs parser format things s...

chilly siloBOT
chilly siloBOT
#

Description

Currently, if you input multiple options while using a slash command, it doesn't matter what order you specify them, _hoistedOptions will ALWAYS output the options in the same order you created them in the SlashCommandBuilder.

Steps to Reproduce

  • I have a command named /create with options name, cost, and type. Each of these is optional.
  • I run the command /create type:Food cost:45
  • Log the output of interaction.options._hoistedOptions
  • Notice the `co...
#

This is a problem because the order of options is critical to my bot's function. I create 1 long string out of everything given, and the option that gets appended to the end is important. If it's always in the same order, my system does not work.

Context:
I run a neuralnetwork and use these options to build a "primetext" to feed into it. Whatever is at the end of the primetext, the NN then continues off of it.

chilly siloBOT
#

Description

When entering an emoji into an option on mobile, it only calculates the length of the name of the emoji, not the full formatted emoji.

Steps to Reproduce

  1. Create a text option with a min length set to 23 characters (the minimum possible for a custom emoji with ID).
  2. Observe that the option works fine on desktop and web
  3. Observe that the option does not work on mobile

Expected Behavior

The emoji should calculate into the length of input before sending the c...

#

This feature has been merged and deployed.

If an interaction is owned by an application with a bot in the server, the interaction will respect the bot's permissions for MENTION_EVERYONE, USE_EXTERNAL_EMOJI, and SEND_TTS_MESSAGES.

The same is true for webhooks created/owned by bots in the server.

Interactions owned by an application without a bot in the server will continue to respect @everyone for those permissions.

#

This feature has been merged and deployed.

If an interaction is owned by an application with a bot in the server, the interaction will respect the bot's permissions for MENTION_EVERYONE, USE_EXTERNAL_EMOJI, and SEND_TTS_MESSAGES.

The same is true for webhooks created/owned by bots in the server.

Interactions owned by an application without a bot in the server will continue to respect @everyone for those permissions.

chilly siloBOT
#

Description

Permission calculation for webhook and interaction responses is available, but when updating an interaction, it hasn't been updated, there is still the old permission calculation system

Steps to Reproduce

create an interaction with a component that update during the update you will see that the emotes are not displayed anymore because everyone has no permission to send external emotes yet the bot can

Expected Behavior

have the same behavior as when I send an inter...

chilly siloBOT
#

Currently, the Supports Commands badge only display if a bot 1 or more global commands. However, some bots, like MEE6, have "categories" to enable in which all commands are guild commands given to a server when a category is enabled. However, just 1 guild command shouldn't be enough to enable the badge if there are no global commands, as it could be the developer just testing slash commands. So for bots that do things similar to MEE6, if 75%+ guilds have at least 1 gu...

#

We want the badge to signify that a command is available for users who see it - the intent is to convey information rather than for it to serve as just a vanity item. To that end, we restricted it to global commands only - I don't think this is something we are considering changing. We don't want the badge to appear on a bot when there are no guild commands in the guild the user is viewing the bot in, since it would be confusing to them.

#

We want the badge to signify that a command is available for users who see it - the intent is to convey information rather than for it to serve as just a vanity item. To that end, we restricted it to global commands only - I don't think this is something we are considering changing. We don't want the badge to appear on a bot when there are no guild commands in the guild the user is viewing the bot in, since it would be confusing to them.

chilly siloBOT
chilly siloBOT
#
Your client should store the `session_id` and `resume_gateway_url` from the [Ready](#DOCS_TOPICS_GATEWAY/ready), and the sequence number of the last event it received. When your client detects that it has been disconnected, it should completely close the connection and open a new one (following the same strategy as [Connecting](#DOCS_TOPICS_GATEWAY/connecting)) to `resume_gateway_url`. Once the new connection has been opened, the client should send a [Gateway Resume](#DOCS_TOPI...
chilly siloBOT
#

there is no inconsistency between the nullable and optional indicators, they are different things that are clearly documented to have different meanings. that's like saying the existence of both "a" and "b" is an inconsistency

For clarification, there are numerous resources that place the nullable field marker ? with "null" mentioned in the field description. Stuff like this is inconsistent and serves as noise to reading the documentation, which either way can be read from a human or m...

#

we'll make an actual announcement in the ddevs server in a few days to ask people to make this change and share timelines! we aim to give you plenty of time to do it.

Out of curiosity, what will the property return in the future?

This is to prepare for some internal changes to tolerate GCP Availability Zone outages better, in the future there will probably be a set of resume urls that point to different zones and we ask that you reconnect to the one that you get in the ready payload
...

chilly siloBOT
#

Description

I created a webhook on Github to send all deployment events to a Discord channel. These events seem to be rejected with HTTP 400.

Steps to Reproduce

I am providing the rejected payload:

{
  "deployment_status": {
    "url": "https://api.github.com/repos/podkrepi-bg/frontend/deployments/619900440/statuses/1177038693",
    "id": 1177038693,
    "node_id": "DES_kwDOEzALAs5GKC9l",
    "state": "success",
    "creator": {
      "login": "imilchev",
      "i...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I think there should be an option to allow multiple files to be attached to a single command option. This could be achieved by having maximum and minimum count properties on attachment options. This would give developers greater control over what users can upload.

I fully understand that a similar effect can be achieved by having multiple options that all accept one attachment each, but this can make the user experience very clunky in my opinion. My bot, for example, requires users to upl...

chilly siloBOT
#

Description

If a guild has a few webhooks trying to retrive them all will endup with the request timing out.

Solution

Add a guild limit of like 1k and bump up per channel limits to 25 per type as followed channel hooks sharing the same limit as ordinary just makes no sense

Steps to Reproduce

Try to fetch a guilds webhooks where there are a few channels with lots of webhooks

Expected Behavior

The guild has a limit on the total amount of webhooks allows so this situati...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#
gc

Description

There was a change recently changing how webhooks/interaction responses permissions work, allowing them to have the permissions of the bot account, instead of the base/everyone permissions, and so be able to mention everyone/roles. So this issue is based on the assumption it was attempted to be fixed already.

After this change, I tested in every such way, trying to get this to work, and I cant get it to work. My goal was to ping a role with a slash interaction response.
...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

As I mentioned in my second paragraph, I am aware this is possible, but for bots like mine that require any number of attachments between 1 and 5, having 5 options when they won't all be used most of the time makes the command look very cluttered, especially on small screens. I would much prefer if I single option were able to accept a specified number of attachments if the developer chose to allow it.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I am having the same issue, it seems to be related to the Discord server, not the bot. I have a test server for my bots where the new feature works, however when I use the exact same setup on a different server it does not work. Same bot, same permissions, different results.

I thought that maybe the bot has to be remade or something so I recreated it in the Discord developer portal but the new one I made had the exact same behaviour.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When trying to turn off the "Public Bot" box in the developer portal for a bot, this error message is displayed:

"Cannot have install fields on a private application."

The actual error is that the bot cannot be private unless the OAuth2 Default Authorization Link is set to 'None'. The current error message is not sufficiently clear enough to diagnose the problem and I was forced to find the solution through a Reddit post.

Please consider revising the error message t...

chilly siloBOT
#
chilly siloBOT
#

As responses work the same as webhooks, the @everyone role must have permissions to mention @everyone, @here and All Roles.

<img width="471" alt="image" src="https://user-images.githubusercontent.com/30734036/183286803-27a94187-5e58-4993-bde0-a6526f486932.png">

<img width="345" alt="image" src="https://user-images.githubusercontent.com/30734036/183286805-54ce3e8e-85f3-442c-8dd1-42d92c8feafe.png">

But this was changed recently.

chilly siloBOT
chilly siloBOT
#

Would it be possible to have these limits documented somewhere? There have been multiple times now where these limits are changed without warning, and the only indication is that images that were fine before no longer work when set as an avatar. This leads to proxy bot creators trying to guesstimate the new requirements and users of those bots getting confused and frustrated

We'd really appreciate some transparency with these changes, or at least some way to find the exact dimensions and f...

chilly siloBOT
#

Description

Sending null for all entity fields returns 500 Internal Server Error

Steps to Reproduce

✔️ Send a PATCH request to a scheduled event (Tested with EXTERNAL type, should work with STAGE_INSTANCE and VOICE too though.) with the following payload:

{
    "entity_type": null,
    "entity_id": null,
    "entity_metadata": null
}

❌ It returns a 500 Internal Server Error.

Expected Behavior

It should return 400 Bad Request.

Current Behav...

chilly siloBOT
#

Description

Mentioning a user in a normal message was inviting them into private threads, but not in an ephemeral message
For a few days now, when a bot mentions a user inside a private thread, even in an ephemeral message, it automatically adds the user into the private thread (as long as the bot has the permission to add a user into the thread)
This results into users getting added to the threads without knowing what added them

Steps to Reproduce

Make a private thread
Make a b...

#

در دوشنبه ۸ اوت ۴ ریوا در ۱:۵۲ imanataee @.***> نوشت:

Description

Mentioning a user in a normal message was inviting them into private
threads, but not in an ephemeral message
For a few days now, when a bot mentions a user inside a private thread,
even in an ephemeral message, it automatically adds the user into the
private thread (as long as the bot has the permission to add a user into
the thread)
This results into users getting added to the threads without knowing ...

chilly siloBOT
chilly siloBOT
#

Description

Game developers who had a game for sale before the stores were deprecated are unable to use the Developer Portal for accounting purposes, and no proof of sales have ever been sent from Discord.

The self-serve Analytics section of the Developer Portal (via discord.com/developers/applications/) does not work, making it impossible to get any sort of proof of sales for accounting purposes. The last payment was received last quarter, making the issue still relevant to accountin...

chilly siloBOT
chilly siloBOT
#

Description

So, as mentioned in the title, there is an bug in Discord API, that causes to 'hide' about me section of bot in desktop client.

It causes serious problems, when you have important informations to show for users, when they click bot profile.

Steps to Reproduce

  • Head to Discord Developers Site
  • Create any application that is a bot
  • Head to General Informations
  • Set bot description
  • Log in Desktop Client
  • Invite Bot
  • Click it's profile

Expected Behavio...

#

I haven't found any specific requirements for uploading own library to Discord docs so in case Tempest would miss something - let me know. I created it primarily to have fast & higher level library/framework to work with interactions on http instead gateway.

Here's already https://github.com/bsdlp/discord-interactions-go added to the documentation but it's outdated and adds barely anything so it's hard to call it library. By looking at JavaScript or Python positions I guess that it's ok t...

chilly siloBOT
#

Can reproduce
Desktop canary:

Canary 140672 (156c86e) Host 0.0.136 Linux 64-Bit (5.15.0-43-Generic)

Web stable:

Stable 140575 (12c29a3) Linux 64-Bit

Web ptb:

Ptb 140672 (156c86e) Linux 64-Bit

Web canary:

Canary 140672 (156c86e) Linux 64-Bit

but not on iOS stable 137.0

App: 137.0 (33973) stable; Manifest: W/"f9921cec4a08f7e9fe631ba73d351f59"; Build Override: N/A; Device: iPhone10,4 OS 15.5;

and not on iOS stable 138.0

A...
chilly siloBOT
#

Description

In the embeds there is the thumbnail property but the width and height do not work

Steps to Reproduce

Create an embed with a thumbnail and add width and height property
{
color: 9731306,
fields: [],
author: { name: 'Music Added', icon_url: undefined, url: undefined },
thumbnail: {
url: 'https://i.scdn.co/image/ab67616d00001e025fa646a4cfcd17842fdd7bbd',
width: 200,
height: 200
},
description: '**[Heart - Alone](https://open.spotify.com/...

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

Description

Using a command interaction to open a modal from within a forum thread while it is not opened in 'Full View' causes the submission to fail and the interactions endpoint to return a 400 error with the response {"message": "Cannot execute action on this channel type", "code": 50024}.

If instead the modal is submitted with the thread in Full View, it succeeds.

Steps to Reproduce

  1. Create or open an existing thread inside of a forum channel that is not in Full View.
    ...
chilly siloBOT
#

Description

Select inputs dont appear in modals on mobile at all, while they work just fine on desktop

Steps to Reproduce

Send a modal with a select. I'm using Discord.py so I have no clue how the raw payload looks like, so I can't post it.
If it matters, I'm sending the Modal as a response to a Button interaction.

Expected Behavior

The Modal to appear as it does on Desktop

Current Behavior

Select doesn't appear

Screenshots/Videos

![image](https://user-images.git...

chilly siloBOT
chilly siloBOT
#

Description

When my bot bans a user it DMs the user their ban reason before banning them. However as of recently this fails if the first message in the DM channel is being sent by the bot.

Steps to Reproduce

  1. Create a DM channel with a user (there has to be no prior direct message history with the user)
  2. Attempt to send a message to the DM channel
  3. Observe

Expected Behavior

The direct message gets sent just fine

Current Behavior

The direct message gets blocked w...

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

Description

At the moment translations provided in name_localizations on CHAT_INPUT commands and options have to be written in lower-case characters where possible. For some languages this can result in being forced to use very unnatural looking and even orthographically wrong translations. In German for example, all common nouns are capitalised. With this restriction however they all have to be written in lower-case.

Steps to Reproduce

I guess in a way it's a change request so I c...

chilly siloBOT
#

This was almost immediately fed back when slash command naming restrictions were announced and there wasn't any movement on this back then so unfortunately this is likely not going to change. This also not a localization issue because the default language your commands use is completely up to you; it's really an issue with the name restrictions:

CHAT_INPUT command names and command option names must match the following regex ^[-_\p{L}\p{N}\p{sc=Deva}\p{sc=Thai}]{1,32}$ with the unicode f...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

My point is that it becomes much more of an issue with names being translateable.
Technically it was an issue before already and I don't doubt that there are developers who wanted to write their default command names in languages other than English. But I would expect that for most bot developers using languages other than English was just not feasible before.

#

We currently have no plans to change this. To my knowledge all our officially supported languages (the ones you can put as keys in localizations, including english), should still immediately understandable under our restrictions. Also fwiw lower-kebab-case is orthographically incorrect in english as well. You are also free to put whatever language you want as default, it doesn't have to be english.

#

Description

When I use a slash command, the bot's interaction reply will be shown with a little header in the client: It says "$username used /blah". If the command has a localised name in my client's language, that name is shown in that header. (I couldn't test what language it is shown in for other users - hopefully the one for their locale.)

However, if I use a message command and the bot replies, the header uses the default name of the command, not the localised one. (In the c...

chilly siloBOT
#

@devsnek Thank you for your consideration and I see your point about it still being immediately understandable. I will live with it looking unnatural. :-)

It's beside the point of this ticket but I just wanted to clarify:
I understand that technically I am able to use any supported language as the default. My point was that the use cases for doing that are just very limited because English is the lingua franca on the internet. Either you're writing a bot for a very small audience where yo...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

As I said above, just the existence of JavaScript in SVG should not really a problem, as scripts in it should not be able to be run unexpectedly (XSS) if you use it properly. If they are, it means that you set it up incorrectly, or you did it on purpose.

If Discord will allow SVGs for preview in channels, or for RPC activity assets so they can be displayed in users' profiles, they will embed them in img tags, just like they do for GIFs, JPGs, PNGs, or any other image format...

chilly siloBOT
#

Description

the error message is incorrect

Steps to Reproduce

send enough messages in a channel to get yourself rate-limited

Expected Behavior

"message": "You are being rate limited."

Current Behavior

message: "The write action you are performing on the channel has hit the write rate limit."

Screenshots/Videos

image

Client and System Information

Ca...

chilly siloBOT
#

This is a bug and the fields will be added soon (in the next couple of days) to make it consistent, so I'm going to close this out

This doesn't change that the documentation is currently out of sync with the behavior. This is furthered with this commit https://github.com/discord/discord-api-docs/commit/a003d94dbd21af355703b4b3456e6fe09ff3e3dd which makes the documentation out of sync with itself, giving conflicting information in two different locations while not clarifying when one is...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

It's a channel-global rate limit shared by all users sending messages in that channel, rather than a rate limit just for your client, hence the different message to make that distinction clear. Your own rate limit may not be exhausted yet, but the channel-global limit is.

True but it's also sent when a single user hits the channel send limit for themselves.

chilly siloBOT
#

Description

As documented here, https://discord.com/developers/docs/change-log#calculated-permissions-in-interaction-payloads , applications always have the EMBED_LINKS and ATTACH_FILES permissions when responding to interactions. However, this are not provided in the app_permissions field when the bot is not in the guild, even though these permissions are documented as being provided.

Steps to Reproduce

Prerequisites: have a button or slash command in a guild, without the bot th...

chilly siloBOT
#

Why

Because sometimes you can have a select and another button, and having the button on its own line can look ugly.

Use Cases

  • a select to add/remove objects from a list, and a button to switch between removing and adding.
  • a select together with a message delete button. As you can see below, having the button near the select looks much nicer than at the bottom of it.
  • additionally, if we'll also have support for another button before the select, we can use buttons as arrows to...
chilly siloBOT
#

Description

Whenever I try to broadcast the entire screen on discord, the content is not shared, with the other participants seeing only the black screen being broadcast.

Steps to Reproduce

When entering an audio channel, I click on the Share your screen button.
In the window to choose which screen I want to share, I choose the option Entire Screen. And then the option Live.

Expected Behavior

I hope that everything that is being presented on my screen will be shared wi...

chilly siloBOT
#

Description

I am fairly certain this a discord problem. If not, please correct me. I ran a simple test sending the same message with an external emoji as a command interaction reply and a follow up to this same interaction. The external emoji worked fine in the reply but not the follow up. This same test was working a couple weeks ago but has recently stopped working. I have gone through discord.js support and they believe their is a bug in the discord API.

  • discord.js@v14.2
  • The e...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Quick question: if the resume fails (the gateway responds with OP9 Invalid Session), can we send an IDENTIFY directly to the "resume gateway"? Or are we expected to disconnect from the "resume gateway", and reconnect to wss://gateway.discord.gg/ to start a new session?

@daisyzhou would it be possible to get an answer on this?

oh, good question. If the resume fails, please reconnect to the main gateway entry point (in theory whatever you have cached from the Get Gateway or Ge...

chilly siloBOT
#

Description

When using the POST /guilds/{guild.id}/channels endpoint with a bot token, it is not able to create a channel of type 15 (Forum Channel) (50024: Cannot execute action on this channel type). This however isn't the case for clients, as creating Forum Channels in the client works just fine.

Steps to Reproduce

`curl --location --request POST 'https://discord.com/api/v10/guilds/{guild.id}/channels'
--header 'Authorization: Bot {token}'
--header 'Content-Type: app...

#

As a note,

It's also possible that your client cannot reconnect in time to resume, in which case the client will receive a Opcode 9 Invalid Session and is expected to wait a random amount of time—between 1 and 5 seconds—then send a fresh Opcode 2 Identify.

This content is odd. It feels like this is saying "you can waiting 1-5 seconds after receiving an Op 9 and then send an IDENTIFY **on the same WS connection t...

chilly siloBOT
#

It won't make things safer, let alone better from a user experience perspective.

I think I understand the idea. Some bots need certain "critical" permissions only to ensure the operation of a single, very little used feature, like applying a server backup.

First, 5 minutes is enough to raid. Second, you can't force bots to use a temporary permission system. Malicious bots will continue to request essential permissions when adding them.

Users should be careful about the permissions th...

chilly siloBOT
#

It wouldn't matter much if people I work with somehow get my token and leak it.

I hope your bot never gets certified. Dumbest thing I've ever read related to security.

0-day's or CVE's can't give hackers access to my bot.

If someone finds a critical zero day on your bot, IP whitelisting won't help you.
The attacker will have compromised the bot process which is launched on the server linked to the IP which has been whitelisted.

One of my music nodes could become compromised...

#

some details about this issue:

Technically, bots don't have bios; applications have descriptions. The /profile endpoint inserts the application's description into the bio field in the user object, which is actually "" in the real user object.

Recently, a user_profile object was added, and the clients now read bio, banner, and accent_color from user_profile, instead of user. However, the API doesn't put the application description into user_profile, so the client does...

#

I hope your bot never gets certified.

Seems very unprofessional to go "I hope <bad thing> happens because I disagree or think you are wrong.

Lol ? If your node is compromised, I hope you're hung up and isolated because privilege escalation does exist.

In that case, if we should not implement good security because [x] vulnerability might exist, why bother with any security in the first place?

You are very naive for someone who uses the term CVE.

The term CVE is not very...

#

If anyone has to manually implement this algorithm this is what I came up with using Discord.js. I'm sure I missed a bunch of weird details and off by one errors (coming from Discord themselves) but as far as I could tell this has the same results as the client.

// This is an approximation of Discord's own algorithm done in the Discord client
// It does not, however, strip away invalid characters like dots and slashes.
private generateDefaultThreadName(message: Message): string {
...
chilly siloBOT
#

Description

API is applying configurations with invalid fields that should return an error explaining that the fields are invalid, I tested applying it by the test bot and the API is accepting these configurations, I verified in the Discord Client that they are actually applying and the API is returning a status code 500 when the settings are applied.

(I'm using google translator there will probably be a typo.) :(

Steps to Reproduce

Bug actions[0].type:

I added thi...

chilly siloBOT
#

Description

Allow bots to access the "insights" of the server from the API.

Why This is Needed

The server insights are really handy even if it misses some things. However, for those who manage several servers, it becomes annoying to have to download them in CSV format to reuse them in software or scripts.

If bots were able to retrieve this information, I'm sure it would be possible to automatically import the data into online tools or other software.

I can imagine deep...

chilly siloBOT
chilly siloBOT
#

Yes, it's useless to protect yourself from malicious bots. The goal is to reduce the incidence of a compromised bot by reducing its attack surface. Giving administrative permissions for one-time actions is a security issue if the permission is not removed, since in the event that the bot is compromised, a malicious actor could use it to destroy the server or perform other unwanted actions. The temporary permissions will greatly reduce this risk for the bots using it.

#

I updated the description to clarify the goals of this suggestion. It's not about protecting against malicious bots, the goal is to reduce the incidence of compromised bots.

Personally I'd like to be able to request approval for the specific action

This will make the user experience worse, as these permissions are usually requested on moderation commands with the goal of being run quickly. Imho a system based on the command arguments would be better (giving the permission only for mem...

chilly siloBOT
#

Yes, it's useless to protect yourself from malicious bots. The goal is to reduce the incidence of a compromised bot by reducing its attack surface. Giving administrative permissions for one-time actions is a security issue if the permission is not removed, since in the event that the bot is compromised, a malicious actor could use it to destroy the server or perform other unwanted actions. The temporary permissions will greatly reduce this risk for the bots using it.

In this case it is the...

#

I understand your point but I read carefully. I was just pointing out the accessibility problem implied by the optionality of the title. Currently the name of the threads is mandatory on the beta version of Discord. If they changed this tiny behavior it is for a reason that is surely related to what I wrote. I should have made it clear, sorry about that. Conclusion, from my point of view, whether on the client or on the API, the title should be mandatory. After that, nothing will prevent you ...

chilly siloBOT
#

@RealAlphabet I still don't think you understand, so let me clarify. In the client, the thread name is optional if, and only if, you start your thread on a message. It uses the message content to generate a default thread name, and sends this name to the API. The resulting thread will always have a name.

I was just pointing out the accessibility problem implied by the optionality of the title.

Nobody is saying that threads should be able to be without a name. There is no a11y problem...

#

Your answer is irrelevant.

I'm not trying to decriminalize people. I'm just pointing out the problem with such a state of mind from a security point of view. Where you don't seem to have understood or read what I wrote, is that just because you have security features doesn't mean you have to give a damn and start leaking your credentials everywhere. Do you agree with the user's comment?

The reason I wrote this is to remind you that just because we have a security mechanism doesn't mean we s...

#

I tried it on the BETA Discord version on an Android device. Maybe it's only mandatory on mobile. Before updating to BETA (before yesterday) the title was also optional for me.

I think you have indeed picked up a behavior that doesn't seem to be very well defined by Discord at the moment.

Even though my opinion hasn't changed I think you did the right thing by bringing it up.

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

Quick question: if the resume fails (the gateway responds with OP9 Invalid Session), can we send an IDENTIFY directly to the "resume gateway"? Or are we expected to disconnect from the "resume gateway", and reconnect to wss://gateway.discord.gg/ to start a new session?

@daisyzhou would it be possible to get an answer on this?

oh, good question. If the resume fails, please reconnect to the main gateway entry point (in theory whatever you have cached from the G...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Posting to POST /guilds/{guild.id}/channels or POST /channels/{channel.id}/threads or POST /channels/{channel.id}/messages/{message.id}/threads is allowed with any name. However, Discord removes characters that it considers invalid and sometimes replaces it with something else. It would be very beneficial for us developers if this replacement process was documented, preferably with a RegEx of characters that will be removed/replaced with something else.

Suggestion

...

#

Reverse engineered findings

Feel free to post comments below this post with your findings. Helps other people implement this until Discord releases their official restrictions.

Channel names

  • Spaces are replaced with -. Tested with U+0020, U+00A0, U+1680, U+180E, U+2000-U+2009, U+200A, U+200B, U+202F, U+205F, U+3000, U+FEFF
  • ???

Thread names

  • The following characters are removed: /\"#:<>
  • ???
chilly siloBOT
#

Characters that have one are transformed into their lowercase variant.

Have one what? Uppercase character? If so, it seems that's display-side only, or at least was that way up until recently. One of our moderators trolled and set a channel name to ThIs KiNd Of CaSe, because people using third-party discord clients saw the uppercase characters, while everyone else just saw the normal lowercase.

Do note this was multiple months ago now, it may have changed.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I cannot figure out the specifics, however I have figured out a snippet that can reproduce the issue 100% of the time.

Steps to Reproduce

✔️ Send a PATCH request to a scheduled event (Tested with EXTERNAL type, should work with STAGE_INSTANCE and VOICE too though.) with the following payload:

Expected Behavior

It doesn't return 500 Internal Server Error.

Current Behavior

It returns 500 Internal Server Error.

Screenshots/Videos

No response

##...

#

Description

We're pulling comments from a feed to embed in a channel. We noticed that someone responded in Hebrew or Yiddish and the RTL characters caused the entire field value to get pooched.

Steps to Reproduce

Embed regular text with RTL text

Expected Behavior

The RTL text should still appear in the same spot, but should not alter the bullets or datetime placement

Current Behavior

Everything gets moved around in the field's value

Screenshots/Videos

![Untitled]...

chilly siloBOT
#

Description

When sending the "allowed_mentions" parameter as part of the json params with the https://discord.com/developers/docs/resources/webhook#execute-webhook endpoint, it doesn't work.

Steps to Reproduce

send (for example)

"content": "",
"allowed_mentions": {
  "parse": []
}

with to params to https://discord.com/developers/docs/resources/webhook#execute-webhook whilst pinging someone in the content, and it will ping the user/role anyway.

Expected Behav...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I know this proposal has already been answered but I would like to bring it up to date.
If follow-ups are allowed for ephemeral messages, we should be able to edit or delete them without requiring user interaction.


Conformity with everything said about most threads I could find on the subject

Indeed, ephemeral messages can be "dismissed" by the user. Except that if you do this, it doesn't prevent the bot from continuing to send messages thanks to follow-ups. **This means tha...

chilly siloBOT
chilly siloBOT
#

Quick question: if the resume fails (the gateway responds with OP9 Invalid Session), can we send an IDENTIFY directly to the "resume gateway"? Or are we expected to disconnect from the "resume gateway", and reconnect to wss://gateway.discord.gg/ to start a new session?

@daisyzhou would it be possible to get an answer on this?

oh, good question. If the resume fails, please reconnect to the main gateway entry point (in theory whatever you have...

chilly siloBOT
chilly siloBOT
#

I would just like to state, so people don't get confused. This is an optional change that we prefer people implement. But if you do not, the worst that will happen is we will just disconnect your web-socket a bit more often, in hopes that your reconnect will land you to the right destination.

So, the worst case is "you have to resume a bit more often as we bump you around until your connection lands on the right zone."

chilly siloBOT
#

Bumps @actions/core from 1.6.0 to 1.9.1.

Changelog
Sourced from @​actions/core's changelog.

1.9.1

Randomize delimiter when calling core.exportVariable

1.9.0

Added toPosixPath, toWin32Path and toPlatformPath utilities #1102

1.8.2

Update to v2.0.1 of @actions/http-client #1087

1.8.1

Update to v2.0.0 of @actions/http-client

1.8.0

Deprecate markdownSummary extension export in favor of summary

actions/toolkit#1072
actions/to...

chilly siloBOT
chilly siloBOT
#

Since switching to the HTTP-only system, a massive number of users have complained that it isn't clear if they've pressed a button (for example, see this kind of feedback is common). For reference, when a user presses a button, the reply to the interaction contains the updated message content (which shouldn't invoke any ratelimits, as there is no request to Discord being made). The volume of button presses would make creating an additional ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I would just like to state, so people don't get confused. This is an optional change that we prefer people implement. But if you do not, the worst that will happen is we will just disconnect your web-socket a bit more often, in hopes that your reconnect will land you to the right destination.

So, the worst case is "you have to resume a bit more often as we bump you around until your connection lands on the right zone."

Which, is of course not preferred.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I did lots of research on this and the closest match I got were the [joypixels/emoji-toolkit] sources, where all names also existed in Discord, but this list is not exhaustive. For example, the family and job emojis are not covered. Where does Discord get this data from and is there any way of getting it (maybe even from the official API)? I'm just looking for a 1:1 mapping of Discord names to Emojis.

For context: I want to bring Emojis into Minecraft and would like to give users...

chilly siloBOT
#

Okay, thank you for linking the other discussion. What I found is https://github.com/DSharpPlus/DSharpPlus/blob/master/DSharpPlus/Entities/Emoji/DiscordEmoji.EmojiUtils.cs which generated its mappings from https://static.emzi0767.com/misc/discordEmojiMap.min.json

Though, this JSON source seems to be (geo-)blocking all requests from Germany in relation to the war, so I need to un-generate the CSharp code I guess.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Guild schedule event creator is None

Steps to Reproduce

wait for guild_scheduled_event_create and print event creator to console

Expected Behavior

i want to see member, who created this event

Current Behavior

event creator returns None

Screenshots/Videos

this is simple code to test this bug

import nextcord
from nextcord.ext import commands

bot  = commands.Bot(command_prefix = '!', intents = nextcord.Intents.all()) 

@bot.event
async ...
chilly siloBOT
#

Description

Having a server with no public channels and a vanity url set will cause GET ..../vanity-url to alternate every request, either returning the correct code and uses, or returning empty values. Each time the request succeeds a GUILD_UPDATE event is emitted with the vanity_url property changing depending on the response of the rest request.

Steps to Reproduce

Set a vanity
Make all channels private

Expected Behavior

GET ..../vanity-url has a consistent respons...

chilly siloBOT
chilly siloBOT
#

this is just due to the client caching webhooks as users (and badly, when messages have different names and avatars), pretty sure it isn’t really intended and it probably shouldn’t be relied on

These mentions are also added to the chat box when shift clicking the name of a Webhook on desktop or when tapping the name on mobile. If its not intended, the client shouldn't have a way to mention webhooks IMO.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Adding on to this, when this documentation is written, please note the length/format requirements for the additional parameters under section 4 of RFC 7636. Several major OAuth2 providers (GitHub, GitLab, Google, Facebook) are more permissive than the spec dictates, making Discord a bit of an exception here (in a good way).

I just spent several hours trying to figure out what `{"error": "invalid_request", "error_description": "Invalid "c...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The volume of button presses would make creating an additional response (such as an ephemeral message in addition to the original message edit) not feasible due to ratelimits (for example, button presses could easily exceed 50 presses per second).

Interactions/followups are webhooks under the hood. This means they have their own ratelimits and don't count towards the bot's global ratelimit, [as documented here](https://discord.com/developers/docs/interactions/receiving-and-responding#end...

chilly siloBOT
chilly siloBOT
#

Description

I have created a slash command with a default permissions value of "0". In my guild, I have given @everyone permission to use this command. Despite this, only server admins can use the command. If I remove the default_member_permissions property from the command everyone can use it again.

Steps to Reproduce

  1. Create a slash command with a default_member_permissions value of "0"
  2. Allow @everyone to use the command
  3. Attempt to use the command as a user ...
chilly siloBOT
chilly siloBOT
#

Description

This issue is similar to #5319, but applies to webhooks created by the bot itself, not part of the interaction system.

  • External emojis still work with user-created webhooks.
  • It's not because of a bot token also being sent, I've tested without bot too.

Steps to Reproduce

Have a bot account:

  • Create a webhook.
  • Send a message with that webhook containing an emoji from a server the bot is not a member of.

Expected Behavior

I expect to see an emoji.

C...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I'll start off by saying this is more of a client side bug, but is effects developers and breaks functionality because users cannot easily fix it.

There is no Manage Webhook permission toggle in text in voice channels (aka, normal voice channels). This means, the Manage Webhook permission can only be controlled through a category and cannot be controlled directly through the channel. This is a problem for many reasons.

For example, I had a user come into the support se...

chilly siloBOT
#

Description

Slash mentions are not tappable when used inside an embed. This works on the latest iOS update, and also works on desktop with no issue. This is on client version 143.1 canary. I have followed this feature for a while now, and since it is now rolling out while still not working, I decided to open an issue.
Tapping slash mentions inside message content works as epected.

Steps to Reproduce

• Create an embed that contains slash mentions
• Tap away

Expected Behavior

...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Since this has now been implemented I am specifying this feature request to having prefilled arguments in the application command tag which would work like:

</NAME SUB_NAME [ARGUMENT:VALUE]:ID>

this would copy the prefilled arguments to the textbox.

This would be helpful for advanced moderation e.g. when you view a moderation case the developer could embed a command like
</REMOVECASE [CASE:12]:1234567890123456789> to easily remove the case without needing to search for a command...

chilly siloBOT
#

I hope your bot never gets certified. Dumbest thing I've ever read related to security.

Ah yes, thanks for being so nice /s
Maybe don't act like the average offended Twitter user? Talk to me like a normal human being and tell me exactly why and how I'm stupid. It's like @ooliver1 said, it's really unprofessional. Jesus christ just leave sentences like this out.

If someone finds a critical zero day on your bot, IP whitelisting won't help you. The attacker will have compromised the bot...

chilly siloBOT
chilly siloBOT
#

Currently, if a user interacts with any Component or Context-Menu command, you can only respond by sending a message.

The Discord client on desktop does have Toast support builtin. (They show up if banning or timing out goes wrong afaik)

I think it should be possible for bots to respond to such Interactions by sending a Toast message (For example when giving roles a "Role added" toast is less intrusive than a whole message)

chilly siloBOT
#

I think this'll be fixed naturally once it fully rolls out
It's just gated to english only and certain client versions it looks like:

  - filters:
      - guild_has_feature: [COMMUNITY]
      - guild_member_count_range: [200, '*']
      - user_locale: ['en-US', 'en-GB', 'en-CA']
      - client_build_number_range: [129531, '*']

So, you can try to fake those headers
But in hindsight, definitely doesn't surprise me it doesn't work for bots, but nothing I can realistically do a...

chilly siloBOT
#

Description

Most of the servers have a bot-commands channel or other specific channels (or specific roles for commands etc.). Setting default permissions to all applications one by one is tedious for me. So I think it would be an easier and useful way to setting command permissions for server moderators/admins.

How it works?

Default permissions will be automatically applied to all applications' default permissions. (If no permissions have been applied to application.)

Conc...

chilly siloBOT
chilly siloBOT
#

There's certainly no way for now to see what commands the bot has and manage a particular command externally without writing a program. I wonder if we can manage commands for a bot from the dev portal. Let's say we wan't to delete a command. We can just head over to the dev portal and delete it. It will be more convenient than writing a script to delete it. We should also be able to edit the basics of a command like description default_member_perms dm_access n all...

chilly siloBOT
chilly siloBOT
#

Small Idea I just wanted to throw in. I would really appreciate it if the results that come up in the command browser when searching commands could be matched even more fuzzy than they are at the moment. As of now, it just checks whether the given strings is a simple substring of the full qualified name of a command. It would be great if they results could match as fuzzy as in the little concept video I included below.
Fuzzy matching allows for way faster and more convenient searching of a...

chilly siloBOT
chilly siloBOT
#

Description

It seems the "hide after inactivity" option for threads is not working properly and is not closing the thread after the inactivity duration
What happens is that the threads will not be shown in the channel list of participants, but does not get archived (basically like a forum post)
This results into hidden active threads that can quickly result into servers hitting the 1000 threads cap

Steps to Reproduce

  1. Create a thread with any "HIDE AFTER INACTIVITY" amount
  2. ...
chilly siloBOT
#

A helpful CM in the Discord Admin Community pointed this out:
https://github.com/discord/discord-api-docs/pull/5365

It has been mentioned that:

Threads automatically archive after 7 days of inactivity (as a server approaches the max thread limit this timer will automatically lower, but never below the auto_archive_duration). "Activity" is defined as sending a message, unarchiving a thread, or changing the auto-archive time. The auto_archive_duration field previously controlled how ...

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

Description

USE_EMBEDDED_ACTIVITIES is not visible in required permissions, and if the command only has that one required permission, it opens a blank modal.

Steps to Reproduce

  1. Create a command with USE_EMBEDDED_ACTIVITIES (549755813888) as its default permissions.
  2. Look at required permissions field in the slash command configuration in the integration page.
  3. Notice it shows a blank modal.

Expected Behavior

It would say what permissions the command requires.

...

chilly siloBOT
chilly siloBOT
#

As a workaround, you can try the lowercase Latin letter Satillo or the Hebrew letter Yud י which look similar to an apostrophe and are accepted by the current command validation.

Note: As Hebrew is a right-to-left language the symbol may be more difficult to position in the t...

chilly siloBOT
#

Hey,
i am the lead-developer on a 75k member discord server (704715447764779178) and we thought about rebuilding our support ticket system that is currently using private threads with the new forum channels when they gonna get released.

Sadly in the docs it's stated that forum channels will only contain public threads so such a rebuild wouldn't be possible.
In our ticket system we got multiple categories (report, ticket, bot-support, applications) of ticket types you can select from a d...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When an ephemeral message is edited, either through a chat input command interaction reply edit or a message component interaction update, the value of allowed_mentions is completely ignored. That means that, whether you've previously passed allowed_mentions as { parse: [] }, for example, or you passed that value in the edit, both will be ignored and the users/roles will always be pinged upon editing. The same behavior cannot be replicated with non-ephemeral messages. Also ...

chilly siloBOT
chilly siloBOT
#

This PR is an attempt to clarify, expand, and organize the existing Gateway documentation. I'm not going to merge this for a bit since it's large (and maybe controversial). I also wanna verify my understanding of a few of the Gateway concepts, and understand if there are any sections that need to be expanded more. Hopefully this isn't a flop lol

Main files are docs/topics/Gateway.mdx, docs/topics/Gateway_Events.md, and docs/images/gateway-lifecycle.png

🚧 TODO

  • [ ] I'm making ...
chilly siloBOT
#

@SuperchupuDev tried to touch on it in the explanation, but .mdx is required for the break tags (<br/>) which is what let me convert the intents list into a table (which is easier to read than just in a code block). im not set on this choice if most people disagree with it.

(side note: im working on some new components that will require some files to be converted to .mdx so im thinking this will become a more common pattern, or all files just may be converted at once.)

#

Description

I am unable to see slash commands for new bots in the UI when typing / in a server I own with more than 50 integrations. (I define "new bots" as bots that are not shown in the integrations tab due to the visible integration limit; they are defined as "old bots" otherwise.) All of the bots have the applications.commands scope enabled. Invites of some of the old bots and none of the new bots used the permissions query parameter.

I was able to see slash commands from ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Very strange that your markdown parser doesn't support the HTML br tag for native md files (renders just fine in GH for example), but way happier to hear that it actually supports mdx. Gonna have to plug https://github.com/IanMitchell/hackweek-discord-api-docs again which did indeed do this md=>mdx conversion which allowed us to make a lot of usability changes.

Does support for mdx mean that we can contribute our own components in this repo? I.e. the first thing I'd do is copy the Snowflak...

chilly siloBOT
#

The internal API validation for setting this feature is a bit incorrect, and I've just created 6 public update webhooks when setting BOTH community and invites_disabled features in the same api request. The backend creates the public update webhook but errors with a 403 on the invites_disabled feature as the community feature wasn't initally set. This in turn doesn't remove the public_updates webhook but doesn't save it as the webhook, either. Then another webhook is created on the next reque...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I encountered this bug today. I set the auto_archive_duration to 1 hour. After 1 hour, the thread is hidden in the client, but it is not archived. I can still react and press buttons in it. And for what it's worth, discord.js does not emit a threadUpdate event after this hour is up, which indicates to me that the API is still broken around this.

chilly siloBOT
#

Hello, since its beginning, discord has been the target of a lot of exploits and botting software.

Having improved its security with custom captcha and hcaptcha bot detection, discords API calls still remain unprotected and easily compromised.

Most apps/sites use signing of HTTP requests to fight more efficiently against botting/exploiting API's and networks, such a security measure is also quite easy to implement.

This is just a suggestion and would outdate/block 100% of today's p...

chilly siloBOT
#

You have a point, but I don't understand why they shouldn't implement this, took me months to get that level and a lot of trouble, a lot of people have quit trying to use TikTok API's.

( they also have a big default which is leaving they api compatible with lower versions, yes first tiktok versions still works, which means that they api still remain vulnerable but still less exploited, I think that discord would take care of this problem )

#

Description

Setting INVITES_DISABLED and COMMUNITY features in the same API request causes an unsuitable state.

The backend creates the public update channel follower webhook but errors with a 403 on the INVITES_DISABLED feature as the guild didn't have the COMMUNITY feature at the beginning of the request. However, this doesn't remove the public_updates webhook, but doesn't save it as the public update channel follower webhook either, creating a phantom webhook that cannot be delete...

chilly siloBOT
#

+1 to adding support for long and/or short day formatting options. A bot I am developing features a reminder system, of which users can set daily and weekly reminders for whatever they may need. When users create said daily or weekly reminder, the bot will reinforce the time (and day of the week) that they'll be reminded, mostly for confirmation reasons.

While I am able to use the t (short time) formatting option to display the correct time-of-day for the user for daily reminders, the s...

chilly siloBOT
chilly siloBOT
#

If you want to see every time AutoMod has put someone in timeout, there isn't any way apart from manually storing each event for when AutoMod triggered. Can we either have more data in the audit log which allows us to query the audit log and built this ourselves, or alternatively give us an endpoint (similar to /{guild_id}/bans) which allows us to directly query AutoMod logs. It's also not possible to just use "channel.history" or any kind as the message objects don't reveal any information r...

chilly siloBOT
#

Good point, although if discord implements signing, it should be more than just 1 header (most companies just use a hmac sha1 hash with a "secret" key) better would be an own hashing Algorithm for example (2 different algos that hash 2 different strings for example current time+request body the other algo hashes request url + fingerprint) now the Algorithms need to be obfuscated ofcourse so ollvm or vmprotect may be a good choice + anti debugging stuff.

chilly siloBOT
#

yh thats why discord had to revoke all promos on the last collab with https://www.toweroffantasy-global.com/ because it got clearly spammed to hell

{{Citation needed}}

people could gen them almost out of "thin air"

One cannot simply get free Nitro or Server Boosts just by calling/spamming some API endpoints. If they really can, {{CN}} as well. If you meant something different ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

For over the past 24-25 hours, my bot has had the Interaction Followup endpoint ratelimited with a cloudflare 1015 error.

These ratelimits are continous with a retry after of 1 hour after which I get 2-5 minutes without a ratelimit before immediately being hit with another 1015 ratelimit

Only the v10 API is affected (at least for me)

Steps to Reproduce

curl -vvv "https://discord.com/api/v10/webhooks/ID/TOKEN"

Expected Behavior

A proper discord response (200)...

chilly siloBOT
chilly siloBOT
#

@IllagerCaptain & @advaith1 You guys are wrong. Your references are referring to speech and citation, this is an emphatic quote and is correct for the period to be outside to keep the term intact.

However, following your assertion that the paragraph is just description text... not a "User Type string" or anything technical; one could argue for the removal of all of the quotations marks in this snippet which would probably be cleaner.

chilly siloBOT
chilly siloBOT
#

Since Modals are a thing in the Discord API, shouldn't Popups be introduced as well?

The base functionality would just be showing messages. For example you have a popup saying why a certain command failed with a button dismiss it.

I think it would be a good way to keep modals consistent and neat. 👍

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Perhaps this would be better fitted as a feature request? I'm unsure, so I'll just go on ahead and flag this as an issue:

Using POST /guilds/guild.id/stickers with the type of the file set to image/apng yields a 400 with the error code 50046 - Invalid Asset.

For clarity, I do not mean the actual Content-Type header in the request - that is correctly set to multipart/form-data.

image/png works, so I'd generally not bother opening such an issue, but in th...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When using the 'created thread' event it dispatches it twice rather than once.
As such when using a moderation bot that logs thread creation, it posts it twice.

Steps to Reproduce

Use any moderation bot to log thread creation, set up a channel and have it log/post it

Expected Behavior

For bot using the thread creation event to dispatch it once

Current Behavior

bot using the thread creation event dispatches it twice, thus posting thread creation messages t...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

In #5391, the available_tags feature has been documented which introduces a new Forum Tag Object. Unlike reactions and guild custom emoji, this does not use the standard emoji object layout of name, id, animated. Instead it has an emoji_name and emoji_id field, which are mutually exlusive.

I'd prefer if this was more standardised and always provided a partial emoji, similar to reactions:

Custom:

"emoji": {
  "id": 123,
  "name": "chillin",
  "animated": tr...
chilly siloBOT
chilly siloBOT
#

Description

When replying to a normal message sent by the bot, it is considered a "mention" and the bot is able to see the message content of the message replying to the bot.

When the message you are replying to was sent by a slash command, this no longer works. Replying to the message never counts as a ping unless the bot is mentioned separately in the message, and the bot cannot read this message content.

I have a bot that was relying on being able to "ping-reply" to messages sen...

#

I'm aware of letter variations. On my phone (Android) and computer (Arch Linux), they both display similar to an apostrophe.

image

Although, as you mentioned, the system default font can potentially vary and display differently for other users.

There are other issues with the Hebrew as mentioned, but the Latin Saltillo option still seems like it shouldn't be a problem unless some...

chilly siloBOT
#

Did some edits to the emoji fields

looks like:

  • the emoji id and name fields are not optional
  • emoji_id is 0 if a custom emoji or no emoji is set
  • emoji_name is null (not an empty string) if a unicode emoji or no emoji is set

also emoji_name is not the name of a standard emoji, it is the actual emoji like emoji_name: "🅰️"

and in other emoji fields, for custom emojis, name is the name of the custom emoji; why is that not the case here?

fyi, i...

chilly siloBOT
#

In my server, I might use more than 50 integrations/bots because of multiple reasons:

  • Most of the invited bots that I find useful are built for specific purposes (e.g. server lists, games) or have premium/unlockable features (e.g. 24/7 music).
  • I want to have backup bots available in case a particular bot goes offline or does not respond to interactions for some reason.
  • I would prefer not to kick some bots because of the bots' popularity or the impact on the overall member count (an...
chilly siloBOT
#

Intents must be requested through the dev portal, not through support.

Apps that qualify for verification must be approved for the privileged intent(s) [during verification](https://support.discord.com/hc/en-us/articles/360040720412-Bot-Verification-and-Data-Whitelisting) before they can use them. If your app is already verified, you can request additional privileged intents in the Developer Portal.

Also I think the verification team now wants intents to be requested...

#

typo

To specify privileged intents in your `IDENTIFY` payload, you must enable the privileged intents your app needs. To toggle privileged intents, navigate to your app's settings in the Developer Portal. Click on the **Bot** page, and under the "Privileged Gateway Intents" section you can enable the toggle for each intent your app needs. Verified apps can only use privileged intents once they've been approved for them.
#

including (but not limited to) the content, embeds, attachments, and components fields

according to everything else this is an exhaustive list; if it isn't then the full list should be published, instead of a partial list.

`MESSAGE_CONTENT (1 << 15)` is a unique privileged intent that isn't directly associated with any Gateway events. Instead, access to `MESSAGE_CONTENT` permits your app to receive message content data across the APIs, specifically the `content`...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The POST /channels/{channel_id}/tags, DELETE /channels/{channel_id}/tags/{tag_id}, and PUT /channels/{channel_id}/tags/{tag_id} routes are undocumented. Is this because we're not supposed to use them or because of an oversight?

Don't use them, we'll get rid of them in the future.
We added support for editing them via the patch channel endpoint, which in hindsight is a much better way to do it because it also allows for reordering tags, which the current APIs don't allow

#

Ah yes, another "may change soon" after a merge.

There's no need for the attitude.
This is a case of us listening and responding to y'alls feedback!

Before merging this PR a change was merged that switched it from emoji_id=0 to emoji_id=null.
It was just waiting on a deploy, which is why I said "soon", so that you knew it wasn't live right now.
I checked just now and it looks like it was deployed last night, so the docs match the API behavior now, crisis averted!

chilly siloBOT
chilly siloBOT
#

Description

The POST /guilds/{guild.id}/channels endpoint doesn't support setting default_thread_rate_limit by default when creating a new forum channel.

Steps to Reproduce

fetch("https://canary.discord.com/api/v10/guilds//channels", {
  "headers": {
    "authorization": "Bot ",
    "content-type": "application/json",
  },
  "body": JSON.stringify({ type: 15, name: "example-forum", default_thread_rate_limit: 10 }),
  "method": "POST"
});

Expected Behavior

...

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

maybe something like this?

`MESSAGE_CONTENT (1 << 15)` is a unique privileged intent that isn't directly associated with any Gateway events. Instead, access to `MESSAGE_CONTENT` permits your app to receive message content data across the APIs. For the message object, this applies to the `content`, `embeds`, `attachments`, and `components` fields; for other objects, the affected fields (if any) are listed in that object's documentation.
chilly siloBOT
#

Description

In a bot's profile, the commands in the "try my commands" section (highlighted with a red box) are not showing localized strings.

Currently, my Discord client's language is set to Traditional Chinese (Taiwan)
When I hover over the command, it shows its description:

As you can see, it is in English.
However, the bot supports Traditional Chinese (Taiwan), as shown below, the bot shows the localized command description for the same command.

This issue currently exis...

chilly siloBOT
#

Currently, only 2.5.6 is linked due to bugs on newer versions (https://github.com/discord/discord-api-docs/commit/436481f433091c1df3812e646ad09166350c6caf), but there have been updates since then, including adding Apple silicon support (https://github.com/discord/discord-api-docs/discussions/3229#discussioncomment-2999282), so I added a link to the latest version (3.2.1) while keeping the 2.5.6 link in case people still need it.

chilly siloBOT
chilly siloBOT
#

Description

If you @ mention a bot, it is expected that you receive message content even without needing the message content intent. This is documented on https://support-dev.discord.com/hc/en-us/articles/4404772028055-Message-Content-Privileged-Intent-FAQ

If an embed for a website is uncached, Discord will fire MESSAGE_CREATE with en empty embeds array, and will fire a MESSAGE_UPDATE containing the new embeds array if such an update is necessary. If Discord already cached th...

chilly siloBOT
#

Description

Unlike the client, the API doesn't seem to deduplicate tag IDs; PATCHing a forum thread with "applied_tags": [123, 123] applies that same tag twice.
The client displays repeated tags fine, editing that thread's tags results in them being deduplicated on the client side.

Steps to Reproduce

curl -X PATCH -H "$AUTH" -H "Content-Type: application/json" \
  -d '{"applied_tags": ["977184348098920458", "977184348098920458"]}' \
  https://discord.com/api/v10/chann...
chilly siloBOT
#

Description

Bot-owned webhooks do not provide their content when fetching the messages over the rest API using the bot token as authorisation.

Steps to Reproduce

  • Have an application that doesn't have the message content intent

  • Create a webhook with that bot

  • Execute the webhook with some message content.

  • Attempt to fetch the created message with the bot token as authorisation.

Expected Behavior

The message had content returned by the api.

Current Behavior

Th...

chilly siloBOT
chilly siloBOT
#

Description

So I have a command /rename command with two options:

  • player which has autocomplete options and is required
  • name which is also required, and has to be between 8 and 32 characters

Turns out, the second option needs to be filled in before autocomplete options can be shown to the user if that second option has length requirements. Without doing this, any autocomplete request will 400 for the user (showing "Loading options failed") and won't even be requested from ...

chilly siloBOT
#

Bots can already view pfp and banner image/color-- with the new beta profile theme option, bots should be able to access those colors too. From what I've gathered by looking at the network requests that the discord app sends when opening a profile, it sends a request to "https://canary.discord.com/api/v9/users/484170415720235009/profile?with_mutual_guilds=false" which includes "theme_colors" item in "user_profile". Now, it's already established that bots won't be getting access to all of the ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The event gets sent per-action taken on the message that gets filtered by AutoMod, which is annoying way of doing it and just wastes resources on both ends, for Discord and the bot developer.

(currently it can be up to 3, so if they add more actions to choose from then it will result in more events being sent for a single message that gets filtered)

Maybe this could be changed to an array of the actions taken on the message vs sending it up to 3 times for a single message blocked.

chilly siloBOT
chilly siloBOT
#

Description

Opening an uncached user profile from a replied, context interaction will crash the client.

Steps to Reproduce

  1. Find a context interaction that was called just anywhere from a user that you don't have cached.
  2. Click on the user's pfp that's next to the " used " text.

Expected Behavior

loads up the uncached user's profile

Current Behavior

crashes the instant you try to open the profile

Screenshots/Videos

https://user-images.githubusercontent.com/...

chilly siloBOT
chilly siloBOT
#

Description

If you send an Imgur gif link as standard message content, either as a gallery link like this https://imgur.com/gallery/PiLU8VQ or as a direct link like this: https://i.imgur.com/UrxwiQr.mp4 or this https://i.imgur.com/UrxwiQr.gif. It will correctly embed as a gif.

However, if you send this link as the image field of an embed, it only embeds the thumbnail, not the actual gif/video.

Steps to Reproduce

Send a message with this data:
`{
"content": "https://i.i...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I know there's a solution for nsfw slash commands in the works, this would serve as a intermediary fix

It would be very useful if interaction data would also include a nsfw boolean. This way bots could easily check if nsfw content should be permitted or not. While it's normally possible to get this data with an additional API request, this isn't the case when using a HTTP interactions bot. If the bot scope isn't used, the application won't have permissions to GET the channel, meaning t...

chilly siloBOT
#

Description

When a user sends a message with an link, and the link embeds. The message returns an empty list of embeds.

My guess would be that this link is embedded on the client side, but if an users edits the message the embed list is not empty anymore?

Same would be if an user/bot adds an reaction then the embed would appear.

Steps to Reproduce

  1. Message + Link which embeds, log the message
  2. Edit message or add reaction, log the message again

Expected Behavior

Li...

#

Description

if you try using a slash command with attachment options, and you upload a file over the 8mb limit then it will basically freeze and stop the app from sending messages and possibly doing other requests.
The app does seem to make other request liek for avatars, attachments or message history.

Steps to Reproduce

  1. use a slash command with attachment options
  2. upload an attachment over 8mb (or the guild size limit probably)

Expected Behavior

Show an error message...

chilly siloBOT
#

Description

Including the STREAM permission (512) in a bot-add oauth URL results in "Invalid permissions(s) provided." being shown to the user.

Even if bots can't stream video, it's necessary to have the permission in order to set it in roles and channel overwrites.

Steps to Reproduce

Open an OAuth2 authorize URL that includes bot scope and 512 in permissions, for example:

https://discord.com/oauth2/authorize?client_id=1015396580699942972&permissions=512&scope=bot

...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I followed the default tutorial on adding web-hooks with the following settings:

Steps to Reproduce

Copy webhook from discord channel, enter in github webhook payload url.

Expected Behavior

Delivery of message to channel

Current Behavior

Response-Body:

{"message": "Cannot send an empty message", "code": 50006}

Screenshots/Videos

No response

Client and System Information

Safari, MacOS.

#

Here's the example payload that github sends, I'm wondering whether the issue is due to there not being any content field.

{
  "action": "started",
  "repository": {
    "id": 519462674,
    "node_id": "R_kgDOHvZfEg",
    "name": "*HIDDEN_REPO*",
    "full_name": "Bersaelor/*HIDDEN_REPO*",
    "private": true,
    "owner": {
      "login": "Bersaelor",
      "id": 4517582,
      "node_id": "MDQ6VXNlcjQ1MTc1ODI=",
      "avatar_url": "https://avatars.githubusercontent...
chilly siloBOT
#

Currently (v3.2.1) the GSDK returns only one of the activities instead of an array when accessing Discord.Relationship.Presence.Activity.
If the user has a custom status, it will always show the custom status, so I can't check if a user is playing my game or not.

My idea is basically to either

  • return an array of activities (for example: listening, playing and custom status all at once if the user has all of those)
    or
  • return a dictionary where the keys are the type of activit...
chilly siloBOT
chilly siloBOT
#

The Copy ID button in right-click menus can be enabled through the developer mode. It is often copying an unexpected id, for instance when trying to copy the id of a custom emoji or channel from a message.

Instead of just saying Copy ID, it should say something like Copy Message ID or Copy Channel ID to make this clear. Copying the wrong ID is an extremely common mistake that should not happen and can be easily fixed by this change.

![image](https://user-images.githubuserconte...

chilly siloBOT
chilly siloBOT
#

I've had a similar terrible experience the other day, when Slash Commands were forced on every bot: on the existing bot interaction, I couldn't save any modification of roles or channels that can receive slash commands - the popup Save button wouldn't do anything, I could modify but not save.

In other integrations I could save instead; in others I could only toggle the role off, save, but it wouldn't let me save when I toggled the permission back on. I had to delete the bot integration, re...

chilly siloBOT
#

Description

I've been testing the new slash command control in the integrations area. A couple of observations. All bots are still listed even when there are no permitted commands available. Ideally bots with no permitted commands should not be listed in the slash command menus.

_Originally posted by @bouncingmolar in https://github.com/discord/discord-api-docs/issues/2315#issuecomment-1173098198_

I could live with bots being listed on the side of the suggestion box on Desktop, b...

#

I agree with @bouncingmolar on https://github.com/discord/discord-api-docs/issues/2315#issuecomment-1173098198 but, even though I could live with that on Desktop, I opened Issue https://github.com/discord/discord-api-docs/issues/5427 because on mobile all bot slash commands are still suggested to you even though they're denied in the channel (by means of channel permissions in Server Settings Integration page).

chilly siloBOT
chilly siloBOT
#

Description

The X-RateLimit-Reset header is not consistent when doing multiple requests

Steps to Reproduce

  1. Do a few request to a route that is rate limited
  2. Observe the X-RateLimit-Reset header not being consistent every time.

Expected Behavior

The header should be the same every time.

Current Behavior

Observing the X-RateLimit-Reset header it is different on almost every request

  1. Reset at: 1661784139.727
  2. Reset at: 1661784139.732
  3. Reset at: 1661784...
chilly siloBOT
#

+1 This should be considered critical

I have the same issue and it's just killing my dice roller bot (see mentioned issue above) that now we are forced to use Slash commands (it was not a problem with prefixed commands and editing message contents).

you can send your message with interaction.channel.send this action send your message like "normal message" and you can get message for update after

#

+1 This should be considered critical
I have the same issue and it's just killing my dice roller bot (see mentioned issue above) that now we are forced to use Slash commands (it was not a problem with prefixed commands and editing message contents).

you can send your message with interaction.channel.send this action send your message like "normal message" and you can get message for update after

In my situation, I would like to edit the original message. I can delete the or...

chilly siloBOT
#

I would guess this is because API requests are balanced across a bunch of servers, which would all have slightly different clocks. Within the constraints of ntp it is unlikely greater synchronization could be achieved, and with the time it takes your client to get a response back from our server being a non-zero amount of time anyway, its unlikely the greater synchronization would really help that much in practice.

chilly siloBOT
chilly siloBOT
#

Description

Add intents.members = True to code it breaks on_ready and anything that intents members uses returns nothing. On my non verified bot enabling it the same ways works.

Steps to Reproduce

The only way I can reproduce it is putting message intent in my verified bot and it doesn't work, non verified bot works fine.

Expected Behavior

Member intent returns discord ids instead of nothing / on_ready not breaking.

Current Behavior

When using member intent it retur...

chilly siloBOT
chilly siloBOT
#

Description

I have made #5425 but figured this is more of an issue than something that should be suggested.

Since custom statuses were introduced back in 2019, users could have multiple activities, and to accommodate that, the API started returning an array of activities instead of just one. (kind of assuming the backstory but the last part is true)
But the GameSDK is still returning one activity, which means it is not possible to check if a user's friend is playing the same game as ...

chilly siloBOT
#

Description

I can't click on the 'Enable Discovery' button in the app discovery section of the developer portal, even though my app fulfils all criteria.

Steps to Reproduce

  1. Create app/bot
  2. Have it verified
  3. Fulfil all criteria
  4. Try to apply for app discovery

Expected Behavior

The button should be enabled.

Current Behavior

The button is disabled.

Screenshots/Videos

No response

Client and System Information

Firefox 104.0.1 (64-bit) on macOS

chilly siloBOT
#

I would guess this is because API requests are balanced across a bunch of servers, which would all have slightly different clocks. Within the constraints of ntp it is unlikely greater synchronization could be achieved, and with the time it takes your client to get a response back from our server being a non-zero amount of time anyway, its unlikely the greater synchronization would really help that much in practice.

Hey! My issue is that I'm trying to group up requests with the same reset...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

After some recent Android update, there seems to be a bug with autocomplete client-side validation.

When using autocomplete option with type 4 (integer) validation seems to be
done against the name property instead of the value property.

These as autocomplete choices are fine:

choices [
  { name: '7', value: 7 },
  { name: '3', value: 3 },
]

But these are not:

choices [
  { name: 'Option 7', value: 7 },
  { name: 'Option 3', value: 3 },
]
``...