#github-notifications

1 messages ยท Page 10 of 1

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Audit logs of some integration changes have wrong sender info on them, namely, it appears as if the affected user added a role unto itself, which violates API preconditions on modifying roles for non-ADMINISTRATOR users.

Steps to Reproduce

fetch the audit log (reproducible on both bot API and web client)

Expected Behavior

Integrations have @discord as the sender and the affected user as the target user

Current Behavior

Audit logs of some integration change...

chilly siloBOT
chilly siloBOT
#

Description

When I put emoji into the name of link which I want to markdown like [text๐Ÿ‘‹](link), it doesn't work. But it works properly in embeds

Steps to Reproduce

  1. Markdown a link with an emodji in text-part โ€” [Best of lofi hip hop 2023 ๐ŸŽ‰ - beats to relax/study to](https://youtu.be/mmKguZohAck), for example
  2. Send it as text-message in discord
  3. It won't work properly
  4. Delete an emodji from text-part โ€” [Best of lofi hip hop 2023 - beats to relax/study to](https://youtu...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Can you elaborate here on what these things mean? For example in the second row, what does "in servers" and "in mutual servers" actually mean?

Also what does "GUILD is present" mean? Is that referring to the interaction having a guild property (meaning it was run in a guild)? Does that mean the interaction's context is GUILD? Either way, it just means the interaction was executed in a guild

#

In the moment that we are registering app commands, we are meant to specify the scope in which they work.

These two are the integration_types and contexts

For this reason, GUILD_INSTALL refers to the integration type and GUILD refers to the context

The inconsistency I notice is, that despite I'm specifying that a command can't be installed in guilds, it does show anyways if the GUILD context is provided. Similarly if I specify that the command can be installed but yet no guild c...

chilly siloBOT
#

The two fields are working exactly as intended. If you want a command to work only if the bot is in the server, or with the bot's DM, then you specify integration_types=[GUILD_INSTALL].

There is no way to specify that you want a command to work in DMs between users specifically when they share a guild with the app installed, because that is simply not how user installed commands work

#

The two fields are working exactly as intended. If you want a command to work only if the bot is in the server, or with the bot's DM, then you specify integration_types=[GUILD_INSTALL].

There is no way to specify that you want a command to work in DMs between users specifically when they share a guild with the app installed, because that is simply not how user installed commands work

#

Yesterday, the SEND_POLLS permission was shipped to the client (last permission within the category "text channel permissions") and added to the documentation (see https://github.com/discord/discord-api-docs/pull/6746#issuecomment-2062393133), so this feature request is solved as well! I am glad that the feedback from you and many other individuals was heard!

![Screenshot of the "Create Polls" permission in the Discord client](https://github.com/discord/discord-api-docs/assets/47282153/2...

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

i see there is still no update on that even though the new permission system has been deployed. i know this is not a big issue but i think this can be done by allowing some overrides to make the command usable. i made an entire system just for this use case and now i need to move it to a slash command, which will require to enter the message id and this is not even user-friendly

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hi @ker0olos @cjm333 and @LordTylus . Joining this thread to help solve the issue. I've been performing some tests since last Friday based on the information provided here, using same hosts and/or images, but I couldn't reproduce the issue on my side.

We've made some changes to media last week, so I want to confirm with you first if the issue is still occurring as of today/last Friday?

If it is, I need to be able to either reproduce the issue or at least get a "fresh" trace from one of ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Good callout. I think I need to be more specific, here. So an activity can make a requests to one of these supported ports, i.e. https://<app_id>.discordsays.com. Separately, the url mapping can route the final request to a specific port, but... due to the known issue listed below, the port will be removed and the original port of the original request will be maintained

#

Gesendet von Outlook fรผr Androidhttps://aka.ms/AAb9ysg


Von: Matt Hova @.>
Gesendet: Montag, April 22, 2024 10:58:12 PM
An: discord/discord-api-docs @.
>
Cc: Subscribed @.***>
Betreff: Re: [discord/discord-api-docs] Add note and reference known issue of requests to external ports being remapped (PR #6814)

@matthova commented on this pull request.


In docs/activities/Development_Guid...

#

Gesendet von Outlook fรผr Androidhttps://aka.ms/AAb9ysg


Von: Matt Hova @.>
Gesendet: Montag, April 22, 2024 11:16:32 PM
An: discord/discord-api-docs @.
>
Cc: Miami87 @.>; Comment @.>
Betreff: Re: [discord/discord-api-docs] Add note and reference known issue of requests to external ports being remapped (PR #6814)

@matthova commented on this pull request.


In docs/activiti...

#

Gesendet von Outlook fรผr Androidhttps://aka.ms/AAb9ysg


From: Matt Hova @.>
Sent: Monday, April 22, 2024 11:16:32 PM
To: discord/discord-api-docs @.
>
Cc: Miami87 @.>; Comment @.>
Subject: Re: [discord/discord-api-docs] Add note and reference known issue of requests to external ports being remapped (PR #6814)

@matthova commented on this pull request.


In docs/activities/Develo...

chilly siloBOT
#

Gesendet von Outlook fรผr Androidhttps://aka.ms/AAb9ysg


Von: Colin Loretz @.>
Gesendet: Dienstag, April 23, 2024 1:10:54 AM
An: discord/discord-api-docs @.
>
Cc: Miami87 @.>; Comment @.>
Betreff: Re: [discord/discord-api-docs] Add note and reference known issue of requests to external ports being remapped (PR #6814)

@colinloretz approved this pull request.

โ€”
Reply to this email directly, view it on GitHu...

chilly siloBOT
chilly siloBOT
#

tax is not as drop in as it claims to be.

  1. It does not type check, so we need to run tsc anyways to validate types, eslint can do some of that for us, but not all. Alternatively we trust that our ides will do a good job of that (which we know wont always happen)

  2. This requires changes to tsconfig to account for the fact that the code is being "bundled"

  3. While we haven't set it up yet, it is possible to cache the build output, which is not possible with tsx

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

type will be included. However there will be a period in which old instance will not have this field set, in which case it should be assumed to have 0 set.

if so, then is it DEFAULT for all messages other than forwards (crossposts, follows, pins, replies, thread creates, and thread starters)?

I think there's some confusion here. type in this case if the MessageReference Type, not the message content type.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

For anyone else who runs into this problem with discord.js, I was able to fix it by setting the client's activity in the client constructor, instead of setting it later.

const activityOptions: ActivityOptions = { ... };
const client = new Client({
	presence: {
		activities: [activityOptions],
	},
	...
};

It's been a couple weeks since I implemented this, and I haven't needed to refresh the activity at all.

This solution was suggested here: https://github.com/disco...

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

Can the data of the last 30 days be retrieved? One context is that we conduct some customer service business through private chat on Discord. If the service crashes for a long time (10 minutes), it may cause all data to be lost. Therefore, we hope to get some historical data for reference.
Want to do some data recovery in the case of reconnection, after all, the server may experience unpredictable crashes.
I've already posted a message in the community, but I'm wondering if there's a way to...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

How does this work privacy wise? Can I prevent users from forwarding messages, especially in DMs?

We have had large internal debates about this, and privacy is a top concern, but I don't think this is the best forum bring up the concerns.
There will be an announcement soon about this feature which should answer some questions.

High level though:

  • if you can view it you can forward it (we limit some content based on UX/technical viability)
    • how I think of it is. If you can see ...
chilly siloBOT
chilly siloBOT
#

author is explicitly removed from snapshot for privacy reasons

does this mean that all forwarded messages from private channels (dms, non public guilds, ...) are anonymous without any author attribution? (if i understood correctly, it would contain the original channel & message id, so you would be able to easily access author info for messages forwarded from public servers)

i feel like that would kinda cripple the usefulness of forwards. maybe it could contain only the author's dis...

chilly siloBOT
#

does this mean that all forwarded messages from private channels (dms, non public guilds, ...) are anonymous without any author attribution? (if i understood correctly, it would contain the original channel & message id, so you would be able to easily access author info for messages forwarded from public servers)

Yes. Bit deep into the weeds here, but having view access to the message means being able to see the author. However in the case where you don't have those perms it would be con...

chilly siloBOT
chilly siloBOT
#

Currently, only the callback gateway events support webhook reception. Why can't other events also be received through webhook? I've seen many other platforms receive through callbacks when accessing APIs, which seems more complete. If there is a retry mechanism, it can ensure that data is not lost. The current use of the websocket access is much more complicated than the callback.

chilly siloBOT
chilly siloBOT
#

Description

Hello,

I try to send file from Buffer, but I have an issue with encoding. My file content is encode in 'utf-8' but Discord message preview is not.
When Discord unfurls the attachment as a preview, it looks like it's content sniffing. In this case, it appears to be text/plain; charset=ISO-8859-1.

bot.ts

import { AttachmentBuilder, Client, Events, GatewayIntentBits, TextChannel } from "discord.js";
import { Buffer } from "node:buffer";

const client...
chilly siloBOT
#

Dear Discord Team,

I'm writing to offer a suggestion for enhancing security measures within the platform, particularly concerning token encryption and authentication protocols. As a user who values privacy and security, I believe it's crucial to prioritize the protection of user data, especially during authentication processes.

Currently, the token used for account validation with the server lacks encryption, posing potential risks to user accounts. To address this, I propose implemen...

chilly siloBOT
#

Dear Discord Team,

I'm writing to offer a suggestion for enhancing security measures within the platform, particularly concerning token encryption and authentication protocols. As a user who values privacy and security, I believe it's crucial to prioritize the protection of user data, especially during authentication processes.

Currently, the token used for account validation with the server lacks encryption, posing potential risks to user accounts. To address this, I propose implemen...

chilly siloBOT
chilly siloBOT
#

I applaud Discord for putting privacy first here, and very much hope there will remain a way to at least opt out of people being able to forward our messages to anyone with undeniable proof of authorship attached to the message. Other things, such as the usefulness of the feature, can be considered, but should not come at the expense of privacy. Otherwise, this feature would be a massive privacy disaster. I would be fine with a display name (and perhaps profile picture, while making sure it d...

#

therwise, this feature would be a massive privacy disaster. I would be fine with a display name (and perhaps profile picture, while making sure it doesn't accidentally serve as undeniable proof of authorship by using the exact same URL as the user's profile picture).

Exactly. We don't view member/display name in a DM/guild as PII since it can be changed to whatever you want as your display. We discussed snapshotting these display names and filling them in via UX to expand the forward fea...

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

The Discord API documentation appear to be incorrect currently. I can not get any of the X-RateLimit-* headers in the API response. Also the documentation says if I exceed the rate limit, I will get a JSON reply with details, but instead I am getting a CloudFlare HTML page. Is the API going to match reality soon or is this an open issue? I would LOVE to throttle my code IF the API actually sent back the headers the documentation says it will, but it doesn't. Help? Thanks! :)

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Would it make more sense to move the fields in message_snapshot to the top level? On a data level, that would make it seem as if the forwarding user was sending the message themselves. That matches my mental model of forwarding, but maybe the design team are going to convey a different mental model when they do UI?

We discussed this approach as well, especially for backwards compat rendering, however abandoned it because of the misunderstandings that could occur. Couple of fields on me...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The Discordbot is not sending an Accept-Encoding header when pulling in external requests. So it would be great if it can do this, to save bandwidth on all sides (API, data center, publisher). Better for performance and climate-friendlier.

Good options to consider:

  • gzip - well-known, implemented by most web servers
  • brotli - better compression rates than gzip, implemented by more and more web server, almost all modern browsers support it
  • zstd - even better compression, not widely...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

@JustinBeckwith hmm should we even have stickers in that CDN table if they aren't at the CDN base URL? if we wanna keep in table i think the callout should move up to the Image Base Url section or within an asterisk callout under the table

All stickers are technically in the CDN so its probably right to keep that there. Although i can see why its confusing since you can't access GIF stickers that way...

What is the reason for them to be served from media.discordapp.net instead of th...

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

This issue is periodically mentioned in the Discord developer discord and each time no one gets any assistance with it. If you search the Discord for "ClearActivity" you'll see tons of results.

For now I'm getting around this by sending up a blanked out activity when I want to clear it, but it would be really good if this issue could get some attention. Even a short sentence explaining the situation would help.

chilly siloBOT
#

We have to do some stuff via cloudflare workers to get our media proxy to work with GIFs in this situation (without it, theres no point in even supporting GIFs for stickers), so we have to route the request through mediaproxy and have the worker look into the CDN.

Apparently, some CDN URL like avatars are already transparently routed through the media proxy despite being accessed on cdn.discordapp.com.
Example: https://cdn.discordapp.com/avatars/643945264868098049/c6a249645d46209f33...

chilly siloBOT
chilly siloBOT
#

Description

Newly sent Published Messages through Announcement Channels are showing the profile picture & display name of the original Author, instead of the Server Icon, Server Name, and Channel Name, of the origin Server & Channel.

This seems to affect newly sent Published Messages, not older ones.

(If this isn't an API bug but instead a client bug, whoops! Seems like API tho so thought to try here first ๐Ÿ˜… )

Steps to Reproduce

  • Follow any Announcement Channel into any ot...
chilly siloBOT
#

I can reproduce this API bug. Crossposted messages now include an author_id and a webhook_id. Discord's serialization logic prioritizes author_id while constructing the author object. This means that the author has ownership of the crossposted message in all follower channels. To repair broken messages after a new API deployment, Discord may need to set the author_id field to null for any messages with both fields set simultaneously.

chilly siloBOT
#

Hello @remiolivier-discord,

I'm facing a similar issue when using a bot to create embeds on a server (the thumbnail image, nor image fields, have their images loading). The URLs also don't load when posted to a channel standalone.

The details you'd requested -

  • API type: bot
  • Framework used: discord.py
  • Image URL used?
https://wavu.wiki/t/Special:Redirect/file/Reina-1,1,2.jpg
https://wavu.wiki/w/images/4/49/Reina-1%2C1%2C2.jpg
https://wa...
#

Users can join Guilds (called clans in documentation) and as part of that
process can adopt the guild's tag as their own. This tag is displayed in
the client next to their name.

This documents the clan tags that might come down on the user object. Clans
are a feature that is not yet released, so this is subject to change.

In addition, the full clan object is not yet documented because it is still
in development. This is just the tag that will be displayed next to the user's
name.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I noticed while creating my own server, that when I create or modify a role, the save button sometimes disappears. This caused me inconvenience while creating ranks because I needed to restart the application to make the button appear again.
Username : 3_bc

Steps to Reproduce

1-Re-review the saving code
2-Verify that the problem is from the saving code
3-Rewrite the code correctly

Expected Behavior

I expected the problem to be closed, but I noticed that it was...

chilly siloBOT
chilly siloBOT
#

Another update. Additionally, my application for relationships.read got denied. It seems like this feature is now inaccessible.

Thank you for your extreme patience while we investigated this internally. Upon review, this change was made as a security fix and unfortunately, the previous functionality of the scope cannot return.

My apologies for the inconvenience as I recognize this must be frustrating, but we greatly appreciate your respect and understanding for the safety and sec...

chilly siloBOT
#

Description

If you create a new thread in a forum channel with a webhook (i.e. send a message and pass the thread_name argument) then sometimes the webhook message is not the original thread message, but simply the first message.

This means that the thread looks as if the first message had been deleted, see the screenshot below.

Steps to Reproduce

  1. Create a webhook that sends a message to a forum channel and provide a thread_name.
  2. Trigger the webhook.
  3. Look.

##...

chilly siloBOT
#

Description

A failed activity message appears whilst sending a command or when a command has failed to send.

Steps to Reproduce

  1. Use a command

Expected Behavior

The command is displayed to the user normally.

Current Behavior

A failed activity message appears

Screenshots/Videos

Client and System Information

  • canary 290661 (216a0e6) Host 0.0.492 arm64 macOS 14 (23.4.0)
  • stable 290453 (a3c6e6a) Host 0.0.303 arm64 macOS 14 (23.4.0)
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Hello! I have a problem.
So I own a bot repository/bot list server and I wanted to add more bots. My server is unaffected by this change (a.k.a integration limit to 50) because I have more than 50 bots. But now when I try to add a bot, I suddenly can't anymore and I get this error message.

image

This change was so sudden that I don't even know if this is intentional. T...

chilly siloBOT
#

This limit is not enforced retroactive as in your server can have more integrations if it had those before the limit was added. However when you try to add another integration the limit is checked

Sure I get it but it only affects to new servers or servers with less than 50+ bots. And I can add more even after change. Yesterday, I was able to add more bots but now I can't.

Please refer to this message from the Discord Developers Server to see what i mean:
![image](https://github.com/...

#
jb3

I think you are misunderstanding the wording here. The change that was implemented means that there is a max limit of 50 integrations, for servers above that limit, your integrations are not going to be removed, but you will not be able to add more (because you are already above that limit).

I would hazard a guess your use case is not going to be supported here.

#

I think you are misunderstanding the wording here. The change that was implemented means that there is a max limit of 50 integrations, for servers above that limit, your integrations are not going to be removed, but you will not be able to add more (because you are already above that limit).

I would hazard a guess your use case is not going to be supported here.

That's strange. If that's the case then, Discord probably would have stopped me and other servers who have already r...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Another updated for the post! Again, thank you for your support!

  • Replaced placeholder component type numbers with 0.
  • Added preview for Text Component (AKA Label Component).
  • Added a new status for features: Development Started. So you will actually know if Discord already started to develop a feature.
  • Added Date Picker Component.
  • A few unnecessary changes for a better readability.

Feel free to share your ideas!

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

As of right now, using the guilds.members.read scope, the guild member object does not return a permissions field. I think this would be useful, as I personally would be quite wary as a user of the workaround using the guilds scope. Granting guilds to applications I don't completely trust can be used for substantial tracking and profiling, and I don't like the thought of even being able to do that. Requiring the application to already know the guild ID could allow for some more principl...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hello again @remiolivier-discord,

I am terribly sorry for the long delay, but today I finally got to performing a thorough test. I have used my bot to post 100 different embeds and all 100 worked flawlessly.

So, I will now change my bots back to embed URLs instead of uploading them to discord whenever needed.

I don't know about all the others that have posted here, but as far as I am concerned, my Issue has been resolved.

#

Hello again @remiolivier-discord,

I am terribly sorry for the long delay, but today I finally got to performing a thorough test. I have used my bot to post 100 different embeds and all 100 worked flawlessly.

So, I will now change my bots back to embed URLs instead of uploading them to discord whenever needed.

I don't know about all the others that have posted here, but as far as I am concerned, my Issue has been resolved.

Great news! Happy it is working normally!

chilly siloBOT
#

Description

I've started receiving odd Missing Permission errors in my bots logs in the past months despite checking for all required channel permissions, finally being able to track them down to the fact that timeouts seem to suddenly affect bots now.

I'm certain this used to not be the case, with bots being exempt from timeouts. More perplexing, this behavior seems to be inconsistent now between regular messages and slash commands.

Steps to Reproduce

  1. Time out a bot in a ser...
chilly siloBOT
chilly siloBOT
#

Description

I added a description for my bot in all 30 supported languages in anticipation of supporting them in my bot.
The elegibility page now tells me i must add a description, but i already have!
Furthermore, it disabled the disable button, telling me i need to make changes, but as far as i can tell my app directory listing is still live as it was made live previously.

see: app id 620654573547159553

Steps to Reproduce

Add descriptions of bot in 30 languages and click save...

#

Description

every time i save my description the CDN masking link is prepended to the image urls.

This happens every time, until the image urls become unmanageable. I am sure at some point, this will reach a limit where the urls won't work.

Steps to Reproduce

add image link to markdown in app directory page. save repeatedly without making changes.

Expected Behavior

should only add the masking cdn once, or better, make this transparent to the user so it doesnt show in th...

chilly siloBOT
#

Description

This has been an issue in my bot for months.

My bot receives command requests through its interactions endpoint url.

I mostly respond to all messages by deferring and updating the message later when the data is ready, since that's a better option UX wise.

Following the docs, editing an initial messages is through:
PATCH /webhooks///messages/@original

This works, most of the time, but sometimes, the tokens discord sends me don't work.
As you can see in ...

chilly siloBOT
chilly siloBOT
#

I and at least one other user in this Forum Channel thread on the Discord Developers server were confused about how sharding worked with different num_shards for different sessions. I have rewritten some of the sharding explanation to hopefully be a bit more clear about how it actually works, based on discussion with @Zoddo in the aforementioned thread. Please correct anything I may have gotten wrong.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This example is meant to calculate the shard id for given guild_id, not to check the equality.

No, the whole section preceding this formula explains which events will be received by a specific shard (and not which shards will receive a specific event). So you should look at the formula in the context of a shard (the shard_id is known in this case). The previous version of this section was causing confusion to devs that aren't proficient with how Discord is working; you should [take a l...

chilly siloBOT
#

Description

Providing an empty interaction response produces an empty message in a broken state. The pseudo-message of "Sending command" is updated to have no content, which causes some interesting behavior in the client. This behavior is exhibited both with HTTP interactions (returning the data as the response) and gateway interactions (POSTing to /callback). For the latter, Discord does return an error to the bot, but not the client.

Steps to Reproduce

Respond to an interacti...

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

Description

Updating an attachment on a message that has been crossposted will not show the new attachment in other servers

Steps to Reproduce

  • Create an Announcement Channel
  • Follow the Announcement Channel in a different channel/server
  • In the Announcement Channel, send a message via the API with a Bot user that contains an attachment
  • Crosspost/Publish the message (manually or via the API, doesn't matter)
  • Send a Message Edit request where you will upload a different at...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

My bot speaks to server members via DM, and then posts their responses in a logging channel that only server moderators can see.
The posts include the tag of the author by using
On PC, moderators can press on the tags to view the author's discord profile and send them a DM.
However, on both Iphone and Android, those tags don't work. Instead, an error incorrectly states that "This link is to a user you don't have access to."
Screenshots included display the exact same pos...

chilly siloBOT
chilly siloBOT
#

Ok just do itโ€ฆ.
Better shutdown all so eazy better only one person use my satellite.. no
need use my internet..good never ever hold world no need use internet fuck

On Mon, May 13, 2024 at 1:35 AM MAKGAMEROFFICIAL @.***>
wrote:

**_**HI I want discord to remove this 50 integration limit or add a Way to
request 50+ integration limit as many servers needed it even me

This isn't good to limit sever apps actually removing this limit would be
good**_**

โ€”
Reply t...

chilly siloBOT
chilly siloBOT
#

probably not, considering that adding these features requires switching to a backtracking based regex engine, which in turn introduces the possibility for regex denial of service.

you can try it yourself locally in nodejs, which does use backtracking. this regex match will take very long to complete:

/(a*)*b/.test("a".repeat(2000))

its not possible to reliably detect such denial of service attacks without heavily restricting the options of the regex

#

probably not, considering that adding these features requires switching to a backtracking based regex engine, which in turn introduces the possibility for regex denial of service.

you can try it yourself locally in nodejs, which does use backtracking. this regex match will take very long to complete. you can craft an even worse regex & input text combination that will take hours or even days to complete

/(a*)*b/.test("a".repeat(2000))

its not possible to reliably detect s...

chilly siloBOT
chilly siloBOT
#

Description

banner and accent_color are returned for the message author when fetching a message. These properties always seem to be null.

Steps to Reproduce

  1. Find a message whose author has either a profile banner or a profile theme set
  2. Run the following replacing channel_id with a channel_idandmessage_id` of a message id:
    curl 'https://discord.com/api/v10/channels/channel_id/messages/message_id' \
    --request GET \
    --header 'Authorization: B...
chilly siloBOT
#

This is a rough edge case where we offer an enum, but getting to it is a bit verbose

  lock_state: Common.OrientationLockStateTypeObject.LANDSCAPE,
  picture_in_picture_lock_state: Common.OrientationLockStateTypeObject.LANDSCAPE,
  grid_lock_state: Common.OrientationLockStateTypeObject.UNLOCKED

Ideally we could also show above this snippet

import {Common} from '@discord/embedded-app-sdk';
chilly siloBOT
#

looks if responder uses api v6, >v7 receivers will get same payload as v6:

from discord import ui

class Setup(ui.View):
    @ui.select(placeholder='Setting', options=[
        discord.SelectOption(label='Foo', value='foo'),
        discord.SelectOption(label='Events', value='bar')
    ])
    async def setting(self, interaction: discord.Interaction, select: ui.Select):
        if select.values[0] == 'bar':
            await interaction.response.edit_message(view=EventsS...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

After further deliberation we've decided to mark these fields as public. the initial reasoning behind why they were private was because apps could not actually ever see this field in the course of normal operations (you couldn't call apps, and apps could not participate in GDMs) where this field would be present.

But now with user apps, and it being available in interactions, apps can indeed see this field as part of their normal operations.

As such we're accepting this PR, and as we...

chilly siloBOT
#

Hey everyone, I'm one of the engineering leads of the team testing this feature out. We understand the confusion around guilds and server terminology. This is just an experiment at this time. If we decide to roll this out more broadly after the experiment concludes, we intend to come up with a better name that will be consistent across our Developer API and how we refer to it in the product. We know this might cause some confusion while the experiment is live and intend to clean things up soo...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Is this affecting anyone in practice? IMO API requests shouldn't be updating stateful models, that's what the gateway events are for

This would be a reasonable way to go about this. If there actually was any gateway event that had the banner and accentColor properties this is about. But there isnโ€™t. So API requests are the only way to update the state of them. It you instead implement a gateway event to send these on change Iโ€˜d be very happy to not change the data based on the API requ...

chilly siloBOT
chilly siloBOT
#

so im all for documenting this behavior more explicitly, but when i was testing it looked like polls was a bit differentโ€”content, embeds, and attachments are empty values, but poll is actually just not sent as a field when you don't have message content intent enabled.

would love for this to be consistent at API layer at some point and have it actually just be an empty object or a partial, but for now we should probably document explicitly that it isn't passed if the app doesn't ha...

#
Any app that does not have the message content intent configured in its app's settings within the Developer Portal will receive empty values in fields that expose message content across Discord's APIs (including the `content`, `embeds`, `attachments`, `components`, and `poll` fields). These restrictions do not apply for messages that a bot or app sends, in DMs that it receives, or in messages in which it is mentioned.

this is probs my doing but i only noticed it now

#

yeah i would like it to be non-partial without MESSAGE_CONTENT, but with empty strings and no emoji:

With intent: ```json
{
"id": "1",
"fields fields fields": "fields",
"poll": {
"question": {"text": "Favorite Discord Clients"},
"answers": [
{"answer_id": 1, "poll_media": {"text": "Stable"}},
{"answer_id": 2, "poll_media": {"text": "PTB"}},
{"answer_id": 3, "poll_media": {"text": "Canary"}}
],
"expiry": "2024....",
"allow_multiselect"...

chilly siloBOT
#

Description

I have a bot once a day post some polls, sleeps until they are expired, checks is_finalized repeatedly (with an increasing delay) until it is true, then uses the results from the poll. The polls that were posted yesterday expired at 11pm Eastern Time and have a grand total of seven votes, but the API is still reporting them as not finalized. Previously they have worked fine.

Steps to Reproduce

The polls were created with a POST to /channels//messages with the duration s...

chilly siloBOT
#

looks like polls still locked under experiment for webhooks but not bots. for temporary fix you can copy paste X-Super-Properties from your client or use mine:

x-super-properties: eyJvcyI6IldpbmRvd3MiLCJicm93c2VyIjoiRGlzY29yZCBDbGllbnQiLCJyZWxlYXNlX2NoYW5uZWwiOiJjYW5hcnkiLCJjbGllbnRfdmVyc2lvbiI6IjEuMC4zNTQiLCJvc192ZXJzaW9uIjoiMTAuMC4yMjAwMCIsIm9zX2FyY2giOiJ4NjQiLCJhcHBfYXJjaCI6Ing2NCIsInN5c3RlbV9sb2NhbGUiOiJlbiIsImJyb3dzZXJfdXNlcl9hZ2VudCI6Ik1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7I...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

oop sorry i didn't see this was in change log before. can we leave this how it was for historical log of changes?

Any app that does not have the message content intent configured in its app's settings within the Developer Portal will receive empty values in fields that expose message content across Discord's APIs (including the `content`, `embeds`, `attachments`, and `components` fields). These restrictions do not apply for messages that a bot or app sends, in DMs that it rec...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Why custom_id is required when using style 6? Just curious, if docs say only "sku_id" is required.

Traceback (most recent call last):
  File "/home/***/venv/lib/python3.10/site-packages/jishaku/features/python.py", line 190, in jsk_python
    async for send, result in AsyncSender(executor):  # type: ignore
  File "/home/***/venv/lib/python3.10/site-packages/jishaku/functools.py", line 124, in _internal
    value = await base.asend(self.send_value)
  File "/home/***/venv/lib/python3.10...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Trying to fetch a user by their id via the /users/:id endpoint fails with a 404 NOT FOUND if you have no mutual guilds with that user

Bots seem unaffected by this, it only applies to normal users

Steps to Reproduce

  1. send a GET request to discord.com/api/v10/users/938607182323273829
  2. Observe that it returns 404 even though this user exists

Expected Behavior

It should return the user object

Current Behavior

It returns 404

Screenshots/Videos

_...

#

Considering that this worked fine before today and you can still fetch bots fine, just not users, it seems like this change might have been intentional. Maybe to improve security / prevent user scraping?

If yes, I ask you to please reconsider. There are many good use cases for a bot needing to fetch arbitrary users and this breaks a ton of apps that do so.

And this achieves really little for actually improving privacy.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

In my server, even with the permission "Use Activities" enabled for the user and the channel it doesn't work.
It only works if the user has Administrator access.

guild: 1076155409481601044

Steps to Reproduce

Give a role permission to "Use Activities"
On desktop, click on (+), Start Activity
Activity list shows up
Pick any activity

Expected Behavior

I expect the activity to start

Current Behavior

Activity list stays open and the click doesn't do anythi...

chilly siloBOT
#
The reconnect event is dispatched when a client should reconnect to the gateway (and resume their existing session, if they have one). This can occur at any point in the gateway connection lifecycle, even before/in place of receiving a [Hello](#DOCS_TOPICS_GATEWAY_EVENTS/hello) event. A few seconds after the reconnect event is dispatched, the connection may be closed by the server.
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

curious, but why some fields in user.clan in interaction.resolved.messages[x] are null? Happens with some users

{
  "type": 0,
  "tts": false,
  "timestamp": "2024-05-19T17:21:27.550000+00:00",
  "pinned": false,
  "mentions": [],
  "mention_roles": [],
  "mention_everyone": false,
  "id": "1241802919326646283",
  "flags": 0,
  "embeds": [],
  "edited_timestamp": null,
  "content": "haven't seen you in a while",
  "components": [],
  "channel_id": "1241787241014104...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

It would be very useful, moderation-wise, for the timestamp of when a user was banned to be returned when fetching bans.

With new Discord features that allow for a better native moderation, without the need of moderation bots; this is a key feature for any moderators dealing with unban requests.

I assume this is a 1-minute change, so if it could be added it would be very appreciated :)

Current Response

![CHIsG](https://github.com/discord/discord-api-docs/assets/30734036/e3c583e1-...

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

Just get the last messages then and search yourself ๐Ÿค”

this doesn't really work in large servers where people may go months without sending a message tbh. even in smaller servers you would need to fetch the last who knows how many messages per channel in order to find which was actually the most recent from a user, and if you can't find anything then it can turn into fetching every message in every channel... this isn't really possible with bots and current rate limits

personally for...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I am not a fan of this. I (and probably many others) have already disabled activities for users but now, User Apps are going to end up being disabled too unintentionally.

The moderator side of me does not want activities but the developer side of me absolutely wants user apps to work, especially since I have a bot that I use a lot myself through user apps

Your user apps will still work, it'll just be forced ephemeral.

#

Your user apps will still work, it'll just be forced ephemeral.

I don't believe this solves the issue I'm having? I want to be able to, for example, enable activities and not have user commands in the server (which is impossible with the permission merge) - or disable activities and maintain the global availability of user commands (which, while yes commands still run ephemerally, removes a lot of usefulness for a lot of bots).

#

I am not a fan of this. I (and probably many others) have already disabled activities for users but now, User Apps are going to end up being disabled too unintentionally.
The moderator side of me does not want activities but the developer side of me absolutely wants user apps to work, especially since I have a bot that I use a lot myself through user apps

Your user apps will still work, it'll just be forced ephemeral.

That doesn't work for commands that rely on having a pub...

#

Does USE_APPLICATION_COMMANDS feel like a better permission to tie forcing ephemeral to? Users with User Apps will be allowed to use their own application commands only in ways that respond to them but not server wide?

I'm worried about the edge case here but I don't agree that activities and apps should be thought of the same where activities has the power to draw a badge on the server icon it just feels a lot more powerful. I just don't want to come without suggestions :)

#

Does USE_APPLICATION_COMMANDS feel like a better permission to tie forcing ephemeral to? Users with User Apps will be allowed to use their own application commands only in ways that respond to them but not server wide?

I'm worried about the edge case here but I don't agree that activities and apps should be thought of the same where activities has the power to draw a badge on the server icon it just feels a lot more powerful. I just don't want to come without suggestions :)

No, m...

chilly siloBOT
#

Description

Running a user app slash command in a thread, then locking the thread before the command can respond (for example via deferred message or followup) will result in an unavoidable error.

If the bot is in the server the

{"message": "Thread is archived", "code": 50083}

error will be returned by the API. If the bot is not in the server, the error will be

{"message": "Missing Access", "code": 50001}

Steps to Reproduce

  1. Run a slash command ...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

As many of you have mentioned this is is a feature request to force guild apps responses to be ephemeral. I've updated the issue to reflect that. This is something we've actually decided against doing because it would be considered a breaking change.

We could potentially look at other ways of doing this in the future so I'm going to leave this open as a feature request.

The inherent usage here is we want to allow individuals to run ephemeral context menu commands in read-only chan...

chilly siloBOT
chilly siloBOT
#

Description

It seems whenever a reoccurring event does end, rather than sending COMPLETED, it sends SCHEDULED.
This works as expected when ending a non-reoccurring event, by sending the COMPLETED status.

This might be intended as normal behavior just thought I'd report it.

Steps to Reproduce

Dont think I can reproduce with cURL.

But I have an event listener that listens for the guild scheduled event update.
When a non-reoccurring event ends it returns COMPLETED as expected....

chilly siloBOT
#

Description

Slash command options do not appear.

Steps to Reproduce

Preview of command JSON:

data: new Discord.SlashCommandBuilder() .setName('new_game') .addNumberOption(option => option.setName('num_teams') .setDescription('Number of teams in the game') .setRequired(true) ) .setDescription('Create a new game in this channel'), async execute(interaction) { console.log('Creating new game') }

Expected Behavior

Options for slash co...

#

Have investigated a little more. I believe this issue is due to "phantom" commands remaining on the Discord server's channel data, but not being recognised by the API.

<img width="531" alt="2024-05-22_14-03-19" src="https://github.com/discord/discord-api-docs/assets/16234792/745a3d70-22c4-4de5-9a51-966bfba21ea4">

I just removed and re-added the bot to a server. Here are 4 commands which were never added in code. When I try to look up or delete them using their command ID, the API return...

chilly siloBOT
chilly siloBOT
#

Hi @gabemeola , it is a text channel... the channel has no permission for Voice Channel Connect. But the role does have it in the main permissions screenm use app commands as well.

@jkcailteux If "USE_EMBEDDED_ACTIVITIES" is called "Use Activities" in the UI yeah I do have all of them. I Just gave myself every single permission in the text channel and it still doesn't start the activity.

Here in the attached video you can see that the Administrator role (that is not a real administrator...

chilly siloBOT
#

Description

Title sums it up. The documentation linked below currently says that all arguments to this endpoint are required when the API seems to accept partial requests similar to other Modify endpoints. https://github.com/discord/discord-api-docs/blob/3b0b05eea18c3c8f4561dc0b9d3bbb84fa5082bc/docs/resources/Guild.md?plain=1#L1333-L1340

This also brings into question why it is using PUT, instead of PATCH, but I may be missing something there.

Steps to Reproduce

For examp...

chilly siloBOT
#

Description

When the Add Guild Member endpoint is called against a user that is a member of the maximum number of permitted servers (200), and the user is already a guild member of the server theyโ€™re attempting to join, a 400 error response is thrown instead of the expected 204 response (No Content - already a member).

Steps to Reproduce

  • Be a member of 200 discord servers, including a server you own.
  • Using the API, attempt to add your user as a guild member to the server you o...
chilly siloBOT
#

Description

We're using Game SDK v.3.2.1 with Unity (only for rich presence functionality) - when the main Discord application is running but there is no user logged in the game crashes when trying to update activity: DiscordInstance.GetActivityManager().UpdateActivity()

We also didn't find a way to reliably check if the user is logged in before calling the UpdateAcitivity(), attempts via userManager methods also resulted in a crash and userManager.OnCurrentUserUpdate += didn't...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I'm trying to send a poll in an interaction response with an ephemeral message which works, but voting on this poll causes an error.

The reason I'm doing this is because I am only trying to get an answer from the person that initiated the interaction.

Steps to Reproduce

  • Respond to an interaction with a poll
  • Vote on the poll

Expected Behavior

Your vote is recorded

Current Behavior

Error: Unknown Message

Screenshots/Videos

Client and Syst...

chilly siloBOT
#

Description

You need to change from "Weekly" to "Daily" twice for the graphs to update to daily

Steps to Reproduce

Go to Developer Portal
Click on Server Insights
Click on your server
Change from Weekly (default) to Daily)
Graphs are not showing as daily

Expected Behavior

I expect to show as daily

Current Behavior

You need to change to daily twice for it to update the graphs

Screenshots/Videos

No response

Client and System Information

N/A
guild: 10761...

chilly siloBOT
chilly siloBOT
#

Description

Recently, the Audit Log event types for Guild Onboarding were documented in #6041. This also includes the ONBOARDING_PROMPT_DELETE Audit Log type.

However, it is seemingly never logged. It isn't returned in the /guilds/:id/audit-logs API response (and therefore not displayed in the client), nor emitted when listening to the Guild Audit Log Entry Create gateway event.

Steps to R...

chilly siloBOT
#

Description

When going to the Canary/PTB developer portals, you get an error message.

Steps to Reproduce

Expected Behavior

You can successfully log in to the Developer Portal on Canary and PTB

Current Behavior

You get an error message that says "Unexpected Application Error!clocalStorage is not defined"

Screenshot...

chilly siloBOT
#

Anybody know if there has been any temporary remedy to this bug? Not having a method to control the visibility of these slash commands can become problematic when there are many, it becomes difficult for users to sort through them. To re-iterate, it isn't about controlling the right to execute a slash command but rather simply preventing users from another channel to see a specific slash command within a guild.

chilly siloBOT
#

The scenarios in the OP of over three years ago are already addressed. I'm not sure what you're after here, if I set a command to be only usable by a certain role, only a user with that role (or server admin perms) can see and use it.

The control bot developers get is basically limited to whether a command is default everyone or default admin only. The latter being useful for administrative commands, allowing the server owner to set permissions without having to worry about a brief window ...

chilly siloBOT
chilly siloBOT
#

Description

A role select menu does not include the guild default role. A slash command role component will show the guild default role.

Steps to Reproduce

create a role select menu and view the roles, @everyone will not display

Expected Behavior

the default role should be selectable

Current Behavior

default role is not included

Screenshots/Videos

No response

Client and System Information

discordpy

chilly siloBOT
#

In the event that somebody in the future falls in the same scenario, I think it's impossible or at least very difficult to have the commands hidden from specific channels for you if you're the server owner, all along the solution was working just not for my account, sorry for wasting your time @advaith1

Same applies to anyone with admin perms unfortunately. Under the roles portion of of the server settings you can "view server as role" and I use that to verify visibility quite often.

chilly siloBOT
chilly siloBOT
#

Description

When using select menus you got 100 chars to provide a description to an option, however in the client only the first 60 chars are shown.

Steps to Reproduce

Create a Selectmenu and add an option with a description longer than 60 chars

Expected Behavior

The client should show the whole description

Current Behavior

The description is getting cut after 60 chars

Screenshots/Videos

![image](https://github.com/discord/discord-api-docs/assets/50530305/85df7aa...

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

Dear sir, discord is fantastic but please I earnestly request you to grant us the access to add more than 10 members in discord group. Because we all have got friends and all of them don't fit in the group. We need the limit at least 15/20 members. Please please grant us this option. Discord would be the best. Please sir.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I modified my code to repeatedly resend the failed deferred request with a 1000ms delay, and I just had 4 404 Unknown Webhook failures logged followed by a success (with no other activity in that time period, nor any other activity that day).

So at least in my case, the webhook and interaction are definitely (eventually) valid; it's not a matter of a URL being incorrect or a timeout (or a reasonable minimum time between requests being required to prevent a race condition, which clients c...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

We don't really have something called a "gateway session" but I understand the intention here.

To elaborate on the terminology, a gateway connection refers to a connection to our websocket gateway at gateway.discord.gg, and a gateway connection then spawns a session. The session outlives the gateway connection, since you can re-connect to the gateway when you're disconnected, and RESUME to re-establish the gateway socket's connection to a given session.

chilly siloBOT
chilly siloBOT
#

Do you mean whether shard_id is first or last, or whether it's an assignment = or comparison ==?

In the first case, it is to less ambiguously show that it is, in fact, intended to be a comparison and not an assignment.

The whole point of this PR is to rewrite the documentation in terms of which of the guilds that a bot is in to which a gateway "session" with a certain shard_array will be subscribed to events, as opposed to deciding which "shard_id a certain event will be sent ...

#

With this PR, the formula is written in the context of - when a shard is connecting to the gateway - iterating through all guilds that a bot is part of and deciding whether the shard should receive events from that guild based on the guilds guild_id and the shard array with shard_id and num_shards that the shard provided.
Sure, if you see it as a mathematical equation, a single = would suffice, but this is documentation that programmers will be reading to understand how sharding be...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Sure, we can keep it as an assignment. It still has to be in the context of a single shard though, as each session has its own (potentially different) value of num_shards. Then we can just write with words afterwards that "The session will receive events from every guild that, using the formula above, evaluates to the sessions shard_id using the corresponding num_shards".
I don't see how adding this level of indirection makes it any clearer though?

#

I believe that session is more accurate yes.
As Jake wrote, a session can be RESUMED in a new connection to the gateway. And, as per the documentation, a connection will be sent all missed events from a session once it resumes it.
Thus, events being sent to a session which "forwards" them over the active connection or stores them if a connection is not currently active is a more accurate way of thinking of it (unless I completel...

chilly siloBOT
#

Description

Message Buttons with Link Style become disabled when the Thread is Locked.

I understand that this is desired with non-link Buttons, because the App is reactive to those.
But on Link-Buttons this doesn't really make sense, as the App cannot update the Message when Link-Buttons are pressed.

Steps to Reproduce

  1. Create a Thread (Any Type)
  2. Make a Bot send a Message that contains Buttons with Link-Style
  3. Lock the Thread

Expected Behavior

While normal Compon...

chilly siloBOT
#

Description

The automatic validation prevents sending a slash command including an attachment option while in splitscreen mode, stating 'Not a valid value'.

Steps to Reproduce

  1. Send a message in any channel the bot has access to and that allows threads.
  2. Create a thread from that message.
  3. Enter splitscreen mode by clicking the '[x] messages >' link that has appeared beneath the message.
  4. Attempt to use a slash command with an attachment option.

Expected Behavior

S...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This is not scrapping, but passive sniffing. You can't stop that.
On the other hand, some information may be hidden.

  • List of channels not visible to the member.
  • List of members who do not share a salon with the current member (or via search).

It's worth noting that Discord has already made some changes to reduce the amount of unnecessary information sent to the client that can be used for sniffing (although the main aim was probably to reduce the bandwidth used).

Unfortunatel...

chilly siloBOT
chilly siloBOT
#

Description

In DM's when you run an interaction that has an embed with an image property with a gif url, then replace that gif url with another url to another gif it breaks the embed and doesn't show the gif at all example: https://pics.firegamer3.net/wzPJjJnPH.gif

Steps to Reproduce

in a Bot's dm run a slash command that responds with the following embed

{
    "description": "\`\`\`\n\"mario\"\`\`\`",
    "image": {
        "url": "https://i.hep.gg/a94jGebEL.gif"
   ...
chilly siloBOT
#

Judging by the video, it might be related to #6694

I just looked over it and yea seems pretty similar, and even to that what I am seeing is close to the exact issue that you posted about in there, but Iโ€™d have to look at my client events to be sure.

anyways if it beat helps that I contribute to that thread then I can close this, but it seems like this is a more focused area (in DMโ€™s only) outside of DMโ€™s I am getting expected behavior

chilly siloBOT
#

This ticket is going to be a bit unusual.

After recent rug pulls of Slack and Guilded, users and developers very well observe that centralised platforms are prone to rug pulls and bad practices. Hence I propose that Discord should reach application developers and ask their opinion for a standardised server-server API, to be able to interoperate across first party and third party (yes, there are four such implementations and two of them are open source) servers.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When adding an option to an onboarding prompt, the resulting id in changes may be an integer in the audit logs. The integer is a timestamp of when the action took place, rather than the id of the option.

Steps to Reproduce

Through the Discord client:

  1. Open onboarding settings in a server
  2. Open questions
  3. Add a question
  4. Enter a question (contents do no matter)
  5. Add an answer (contents do not matter)
  6. Save
  7. Add an answer (contents do not matter...
chilly siloBOT
#

Perhaps consider renaming this permission to DISPLAY_EXTERNAL_APPS or something similar, or make that clear in the final UI? Given that users can still of course use external apps. it seems that the permission that fully disables user apps is USE_APPLICATION_COMMANDS.

The behavior is the same with both permissions. If either USE_APPLICATION_COMMANDS or USE_EXTERNAL_APPS is disabled the app response will be forced ephemeral.

chilly siloBOT
chilly siloBOT
#

Description

Today, I was trying to use slash commands of one of my bot as usually. Same channel, bot and guild permissions as always

But, for some reason, none of the slash commands that I commonly use is been showed on thread channels, even with the proper permissions set on the parent channel

I can only use the commands again if I have "Send Messages" permission on the thread parent channel. Until yesterday, I was using them regularly without any problems

Steps to Reproduce

...

chilly siloBOT
#

I think that simply keeping it as is for the time being is fine. I feel the formula is clear enough and one can grok the relationship.

I've always thought the larger meaning here is: "given a guild, and the number of shards I'm running, which shard does a given guild land on". This answers a practical question, for example if you want to locate the shard that is handling a given guild, so you can look up data from that shard's process. Internally, we do such lookups (albeit with hash ring...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

It also happen for one of my server :

@everyone perms :

  • Send Message : YES
  • Send message in thread : YES
  • Use Application Commands : YES

Per forum channel :

  • Create Posts : NO

I also tested to force the @everyone permission on the command and on all channels.

And for me the users CANNOT use any commands in any channels of the servers (including normal text channels)
It also effect context menu commands since it's also an interaction.

chilly siloBOT
chilly siloBOT
#

Description

It appears there's a large typo in the new developer terms, specifically here

  • (i) support purchase of such features or capabilities through Discordโ€™s Premium Apps products; and,
  • (ii) offer such features or capabilities at prices on Discord that are no higher than the prices at which they are offered through other payment options.

I assume thi...

chilly siloBOT
#

A fix for the issue with not being able to see commands in threads has merged and should be rolling out to canary shortly.

@ibaraki-douji I'm unable to reproduce the issue you're having with users not seeing commands anywhere. If you're still having issues with that in a couple hours, double check that the users have both the SEND_MESSAGES and USE_APPLICATION_COMMANDS permissions in the channel (and double check that you don't have the apps/commands disallowed for those users in the integ...

chilly siloBOT
#

Hello!
I'm implementing slash commands, and I would like to know how to build AND/OR PermissionFlagsBits conjunctions.

I think that doing this:

return Array.from(permissions.defaultMemberPermissions.AND).reduce(
      (mergedBitFlags, currentBitFlagKey) => mergedBitFlags | PermissionFlagsBits[currentBitFlagKey],
      0n
    );

Produces a AND conjunction of all the PermissionFlagsBits.
This is strange because I use the | binary operator, which means "OR"?

So, ma...

chilly siloBOT
chilly siloBOT
#

Description

Both the documentation and the API specification state that one should be able to utilise name_localizations to respond with, well, name localisations.

This was originally brought up via #4721. It's been a long time with no resolution and no visible active issue, so I've decided to make one.

Steps to Reproduce

  1. Respond to an autocomplete interaction with name_localizations populated

Expected Behavior

Responding to an autocomplete interaction should respec...

chilly siloBOT
#

Description

There is a typo on https://discord.com/developers/docs/monetization/one-time-purchases#using-application-test-mode .
It should be called "API" not "IAP".

Steps to Reproduce

Open https://discord.com/developers/docs/monetization/one-time-purchases#using-application-test-mode and there is written "IAP".

Expected Behavior

It should be called "API"

Current Behavior

It's displayed as "IAP".

Screenshots/Videos

![image](https://github.com/discord/discord-api-...

chilly siloBOT
#

Using JDA, with commands that are otherwise instants (a /ping command), I get this error.

The weird part is that it's really random, but once it happens, it just wont go away. The command itself or my code does not seems to be a problem either since when it works, the interaction respond instantly. The device on which the code run is good, and the network is fast.

I was not able to identify a pattern, unfortunately, hope it get fixed soon

chilly siloBOT
#

We expect that autocomplete results should necessarily be locale-aware in order to provide meaningful results and therefore apps should be preferring to return results in the interaction locale anyway. Therefore we'll keep tracking this as a wishlist fix, but generally you should be able to use the workaround to cover this functionality. Is there a specific use-case that you're trying to solve for here?

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

Description

.setLocked on a thread that is currently "Archived" or "Closed" returns an error of "DiscordAPIError[50083]: Thread is archived".

From my understanding of the documentation, .setArchived simply moves the thread into the "Older Posts" section but still allows it to be re-opened when typed in; whereas .setLocked prevents the thread from being re-opened unless they have the "Manage Threads" permission.

It seems odd that I can lock a post that has been archived manually mys...

chilly siloBOT
#

Description

The checkbox to "Agree to Terms of Service" on the "Create an Application" popup is completely hidden. I was able to find it, and searching through previous tickets indicates this is likely an isolated or specific compatibility issue.

Steps to Reproduce

At discord.com/developers/applications , Click New Application

Expected Behavior

You are presented with a popup screen with a form to submit, which reads "By clicking Create, you agree...". Presumably the checkbox...

#

Ok so I installed brave, and I'm still seeing this checkbox outline:
<img width="510" alt="image" src="https://github.com/discord/discord-api-docs/assets/534619/85add01a-0b0e-4167-8c4d-044c6a7a7a85">

Something with the fonts in your screenshot look .... wrong. Is it possible you have a non-standard set of scripts for overriding fonts, accessibility settings ... anything you can think that may cause this?

Also curious - does it look correct in light mode? Click the little moon in th...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

if possible can you please provide the URL that you are using and a
screenshot if possible?

On Tue, Jun 11, 2024, 1:39 PM Bruno Alvalat @.***>
wrote:

@refat2090 https://github.com/refat2090 Working for me. Tested on a
very small server tho. FWIW you can not get codes if member is bot or
creator of server.

โ€”
Reply to this email directly, view it on GitHub
https://github.com/discord/discord-api-docs/discussions/3210#discussioncomment-9735519,
or unsubscr...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

@marcustyphoon I still think there are probably legitimate explanations for the scenarios where this occurs, but I of course won't claim that for sure since everyone's situation is different. Since I had a 100% reliable way to reproduce the problem, I thought it would be useful to provide my explanation and more or less challenge those here, since so much of the info here is anecdotal and difficult to act on from discord's perspective. It does sound like your scenario is simple and somewhat c...

chilly siloBOT
chilly siloBOT
#

Description

poll is not a parameter of interaction.followup.send() but it IS a parameter of interaction.response.send_message().
I would like to do a response.defer() and then create the poll after querying a DB.

Steps to Reproduce

interaction.followup.send(poll=poll) always fails

Expected Behavior

interaction.response.defer() 
interaction.followup.send(poll=poll) 

should be the same as
interaction.response.send_message(poll=poll)

Current Behavio...

chilly siloBOT
chilly siloBOT
#

I don't see an issue here, I'm able to edit a message with a new GIF and it works as expected:

      const embed = new EmbedBuilder()
        .setTitle("Favorite Images")
        .setImage(
          "https://compote.slate.com/images/697b023b-64a5-49a0-8059-27b963453fb1.gif?crop=780%2C520%2Cx0%2Cy0&width=1280"
        );
      await interaction.reply({
        content: withContent ? "Embed!" : undefined,
        embeds: [embed],
      });


    await sleep(5000);
    
   ...
chilly siloBOT
#

@sylveon did you implemented it on apple m cpus? when i want to do that i get 2 errors:

  • โ€œdiscord_game_sdk.dylibโ€ canโ€™t be opened because Apple cannot check it for malicious software.
  • Multiple plugins with the same name 'discord_game_sdk' (found at 'Assets/Plugins/aarch64/discord_game_sdk.bundle' and 'Assets/Plugins/aarch64/discord_game_sdk.dylib'). That means one or more plugins are set to be compatible with Editor. Only one plugin at the time can be used by Editor.
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Removes warn boxes that used to point out changes to the behaviour of locked threads that took effect more than a year ago...
Alternatively, these could be updated to say March 6 2023, but I think removing them altogether and putting the relevant info (taken from the changelog entry) directly on the threads page instead is a more straightforward approach...

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

There are numerous enums in the API documentation, which usually only have the type name and type number (or bit position) in a large table.

To properly make use of these types, we need to know what the purpose and context is.

Enums like Message Types have a lot of different values, with some being very unclear.

For instance, what are the differences between all the boost types or what is REPLY. P...

chilly siloBOT
#

For instance, what are the differences between all the boost types or what is REPLY. Please add more details to the documentation, as a library developer I have to go out of my way to find them in the wild to know what the purpose is. Another recent addition, PURCHASE_NOTIFICATION, is one I don't know the purpose or context of.

that message type exists in openapi spec:
[message.purchase_notification](https://github.com/discord/discord-api-spec/blob/2ea9cb243da96de0a42684adb8aabbf2...

chilly siloBOT
chilly siloBOT
#

Description

source_invite_code is not documented under the proper GET Guild Member Search docs:
https://discord.com/developers/docs/resources/guild#search-guild-members

Steps to Reproduce

Expected Behavior

I expect it to be there and fully documented, as it's been fully released for awhile.

Current Behavior

The type documented.

Screens...

chilly siloBOT
#

Bumps braces from 3.0.2 to 3.0.3.

Commits

74b2db2 3.0.3
88f1429 update eslint. lint, fix unit tests.
415d660 Snyk js braces 6838727 (#40)
190510f fix tests, skip 1 test in test/braces.expand
716eb9f readme bump
a5851e5 Merge pull request #37 from coderaiser/fix/vulnerability
2092bd1 feature: braces: add maxSymbols (https://github.com/micromatch/braces/issues/...
9f5b4cf fix: vulnerability (https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727)
98414f9 ...

chilly siloBOT
#

Description

When using an interaction, the Guild object does not contain the preferred_locale property, but instead has locale.

Originally reported at https://github.com/discord-jda/JDA/pull/2633#issuecomment-2172787976

Steps to Reproduce

  1. Run a slash command
  2. Look at the guild object provided in the interaction
  3. See there is no preferred_locale, but locale instead

Expected B...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hello Team,
I am creating an application that will allow a person to showcase their complete web3 professional profile. In this I have integrated with multiple Dapps.

Now, I am trying to connect with Discord for the below functionality:

  1. User should be able to successfully connect their own Discord account with my react application.
  2. Once the user Authorise, and the my application receive Access Token with scope such as 'guilds.members.read', I should be able to complete below 3 st...
chilly siloBOT
#

Right now, the only way to determine who banned a user from Guild Member Ban events is the audit log. The audit log, however, tends to be rather unreliable in reality leading to bots having to work around the problem with limitations or accept the unreliability.

As such, would it be possible for the Guild Member Ban gateway event to get one more field containing the user id of the moderator who banned the user?

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

@advaith1 The audit log gateway event is not reliable in larger servers and is also not reliable in the case of larger raids/nukes/spam (and in general, can be much slower than the ban event). The Guild Member Ban event however is reliable under these cases. This limitation as such makes it hard to accurately response to these larger raids/nukes/spam without a lot of bruteforcing etc. (or just giving up and accepting the lack of reliability which isn't really great)