#github-notifications

1 messages ยท Page 15 of 1

chilly siloBOT
chilly siloBOT
#

It would be helpful to have an api endpoint that can be queried to check whether or not a given user has passed verification level on a given Guild. The use case here is we would like to have a bot that automatically adds a role to everyone that joins the server, however, if we do this at join, it bypasses the verification level set on the server. Instead we'd like to be able to add a role to a user only once they have passed the verification level.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Attempts to send a message to a specific user's DMs will result in a 50001 Missing Access even when retried. Restarting the bot resolves the issue, the exact same message will correctly send to the exact same user. This happens to seemingly random users, but does happen consistently. It's rather annoying that I need to restart my bot constantly to allow it to function correctly.

Steps to Reproduce

I can consistently reproduce this with my bot, and am more than happy...

chilly siloBOT
#

Description

Hello I have few suggestion for forwarding:
Sry if wrong place

  • Let us see emojis after typing : in text bar (when forwarding)
  • Change the actual system to let us send a comment with the forwarding message in a channel with coooldown

Steps to Reproduce

  • Type : in comment field on forwarding cf pic1
  • Try sending a forward msg into a channel cd cf pic2

Expected Behavior

Seeing the emojis
And send in one msg the forwarded content and the ยซย comment/explicat...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The channel ID is already in my logs that I included in the original post. What would cause the channel ID to be different in those cases?

Your logs show only the channel ID that errors out. What Darker-Ink likely wanted to check if does successful requests are using the same channel ID.

The API has no notion of "the bot has restarted", so the only way that what you explained makes sense is that a bad channel ID got cached (which may be a bug of discord.js, or something in your code that ...

chilly siloBOT
#

Your logs show only the channel ID that errors out. What Darker-Ink likely wanted to check if does successful requests are using the same channel ID.

Ahhh my bad, I wasn't aware that the channel ID could change in the first place. It seems like discord.js caches the first channel ID and never checks for a change. I never mutate the cached object (be it user or chan...

chilly siloBOT
#

Description

When trying to debug site embed metadata for certain domains, an internal error occurs.
This only started happening recently (last ~2 weeks) from what I noticed.

Steps to Reproduce

Go to https://discord.com/developers/embeds and enter any .team domain. An internal error is shown.
Embeds are not displayed in the Discord app either.

Monitoring HTTP requests shows a 200 OK response:
{"context_errors":[],"error":"Internal error"}

Expected Behavior

Embeds ar...

chilly siloBOT
#

Description

The embed debugger at https://discord.com/developers/embeds does not clearly express what went wrong.
Most errors returned are internal errors without any clarification.

Steps to Reproduce

Debug https://discord.com/developers/embeds with any invalid domain and sometimes valid ones (quite random).
Most of the times internal errors are shown with no description.

Expected Behavior

Network errors, non-existent websites, etc. display clear messages.

Current Behavi...

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

The flip side of which is - if I'm a developer still using the deprecated API, I still want to know what's going on. I may not migrate to the new API for a while.

We might want two sentence though - it should still be clear that color is deprecated.

Maybe something like:

Roles without colors (`colors.primary_color == 0`) do not count towards the final computed color in the user list. If you are using the deprecated `color` property, it also acts in the same way.

Or som...

chilly siloBOT
#
[discord-api-docs] Branch afgiel/no-persistent-instances was force-pushed to `7b8479b`
chilly siloBOT
#

Exactly. The workaround is limited in its applicability to linking to a site where you can provide the content yourself. It doesn't help with linking to third-party sites that provide audio clip previews with OpenGraph tags. This support request is still relevant to our own Discord community as well as many with adjacent interests. Furthermore, if such support were present in Discord today, it could encourage more use of those OpenGraph tags just so they'll be previewed on Discord, driving up...

#

This support request is still relevant to our own Discord community as well as many with adjacent interests. I propose that if such support were present in Discord today, it could very well encourage more use of those OpenGraph tags by sites providing audio content just so they'll be previewed on Discord. That, in turn, would drive up the value of the feature after delivery.

chilly siloBOT
chilly siloBOT
#

I've just stumbled across this issue. I can't feasibly see why Discord out of all social platforms applies this method. I actually have a OG proxy because my website is a SPA and I don't want to do SSG or SSR. So have a Cloudflare worker which detects bots and redirects them to an express server which in returns just calls my database and returns basic html with og tags. Discord is the only one not working due to the user agent not being "correct". How annoying...

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

I agree that in isolation it shouldn't be used to ban. No doubt that's why they're called "signals" in the UI.

But when used in combination with other metrics such as:

  • activity in the server
  • join date on discord + server
  • username + display name
  • bio/status/pronouns (blank, certain keywords, impersonation. Alas, also unavailable to bots.)

Then there's high confidence in removing someone, or at least flagging them to the mods for manual removal.

Could we get this data by jus...

chilly siloBOT
chilly siloBOT
#

Yeah this is super disappointing. I can slightly understand the PoV of Workers being used a lot for bot attacks, etc and Discord wanting to mitigate that. But outright just banning all Workers egress IP's so Workers cannot be used all is overkill. Surely there is a middle ground of working with Cloudflare on this?

Please @lmle can this be discussed more? It's been 2 years and is this is still really necessary?

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Yeah this is super disappointing. I can slightly understand the PoV of Workers being used a lot for bot attacks, etc and Discord wanting to mitigate that. But outright just banning all Workers egress IP's so Workers cannot be used all is overkill. Surely there is a middle ground of working with Cloudflare on this?

Please @lmle can this be discussed more? It's been 2 years and is this is still really necessary?

What I saw in other discussions elsewhere (I don't remember where) is that ...

chilly siloBOT
#

@apacheli Apologies for the ping, but I know that messages on closed issues tend to get lost.

Two notes:

  1. Does it make sense to keep closing these issues and locking them when there is obviously community interest in the functionality and the request is being made again in new tickets once the prior is closed/locked? Leaving one thread open might be helpful in limiting discussion on the subject to one place.
  2. There is a real business case to be made for Discord supporting IPv6.
    A n...
chilly siloBOT
#

Description

Putting an emoji in the text of a masked link causes the entire link to not be parsed, but only in Components V2 components.

Steps to Reproduce

  • Put an emoji in a masked link in a Components V2 component (either unicode or custom)
  • Observe

Expected Behavior

The link works and the emoji is rendered

Current Behavior

The link shows in its raw markdown form, unicode emojis fallback to system rendering, custom emojis are shown in their raw markdown form

Sc...

chilly siloBOT
chilly siloBOT
#

as part of a change that just went out today, we now support new fields for rich presence activities:

  • status_display_type - controls which field is displayed in the user's status text (0 = name, 1 = state, 2 = details)
  • state_url - URL that is linked to when clicking on the state text in the activity card
  • details_url - URL that is linked to when clicking on the details text in the activity card
  • assets.large_url - URL that is linked to when clicking on the large image in ...
#

Description

I'm trying to solve an ongoing issue for some time where OG and Twitter meta tags don't seem to be recognized by Discord for my website (https://anonymousgca.eu/) and so embeds aren't rendered.
The debugger does indeed show an empty embeds array, but checking the response shows that the body of the website is correctly detected and rendered.

The website is written with Svelte 5 + Runes and Sveltekit 2.

These are the main meta tags:





...
chilly siloBOT
#
| large_url?   | string | URL that is opened when clicking on the large image                                          |
| small_image? | string | See [Activity Asset Image](/docs/events/gateway-events#activity-object-activity-asset-image) |
| small_text?  | string | Text displayed when hovering over the small image of the activity                            |
| small_url?   | string | URL that is opened when clicking on the small image                                          |...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When pressing the cancel button on a modal prompt, it will submit it on the newest version of Discord. This does not happen when clicking off the menu, pressing escape, clicking the X in the top right, etc.

Steps to Reproduce

Use an interaction which opens a modal interaction.
Type some text into all fields.
Press cancel.

Expected Behavior

The modal should just close, with no event being sent to the bots.

Current Behavior

The modal submits, and the bot will ...

chilly siloBOT
#

I came across a parsing error in zigcord (https://codeberg.org/lipfang/zigcord) which had incorrectly assumed that the member field within mentions array of the Message Create gateway event was required.

Not quite sure if this falls under "subjective wording changes" in the contributing guidelines, but I feel that the statement is incorrect since it seems to assert that the member field is required.

The following message is an example of a message which contains a mentions pro...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Back in 2022, a new ratelimit implementation was rolled out to use sliding windows (aka, leaky bucket) instead of fixed windows [^1]. Back then it was requested if the recovery rate could be exposed, but it was suggested that we could just calculate it.

I have tried implementing it that way, and managed to find a way to reliably calculate it with the information provided (with a margin of error, but it is fixed over time as more requests go to that endpoint, only when `remai...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I encountered a user with Discord ID: 633654270658478087 whose PRESENCE_UPDATE payloads were never received by my bot.

Here are details with my and the aforementioned user's debugging efforts:

  • The user and the bot are in the same server which has about 1.4M members (got a suggestion from the DDev server that being in a large server might be a cause for this issue).
  • The bot can query for this user's presences through [Request Guild Members](https://discord.com/devel...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hi there,
I'm wondering if ActivityType.custom is (or will be) officially supported for bots in the Discord client.
Currently, it seems that while the activity can be set via the API without errors, it is not displayed in the official Discord desktop/web clients. Some users report that it is visible on mobile or with custom clients.

  • Is this behavior intentional?
  • Will ActivityType.custom be supported for bots in the future?
  • Or should bot developers avoid using this activity type...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hey @GABRYCA , thanks for flagging.
Looks like the issue has to do with the <meta name="theme-color" content="#1E0000F9"/> bit -- the logic on our end expected a hex code without the alpha value, and we failed out when it was provided.

We're going to fix this on our end (likely just ingesting + dropping the alpha value), but if you want to try again before we get that fixed up, removing that should solve your problem here.

chilly siloBOT
chilly siloBOT
#

Description

When retrieving a Provisional account using /partner-sdk/token API endpoint, passing an malformed (incorrect, invalid, or not a JWT token) value to external_auth_token will result in an Internal Server Error with an HTTP 500 response, but expected to get HTTP client error range (e.g. 400 Bad Request). This should not happen unless there is a critical issue on the server side.

Steps to Reproduce

curl -X POST \
-H "Content-Type: application/json" \
-d '{"clie...
chilly siloBOT
#

Application( name)s that have a game modal attached make it impossible to click state and detail URLs. When type is playing and state and party are defined, it gets rendered specially; this is also not clickable when there is a state URL.

@Cynosphere thanks for calling this out -- i also noticed this while testing my updates to the social sdk. i just shipped a fix about an hour ago that is live on canary now!
<img width="284" height="121" alt="image" src="https://github.com/user-attachm...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Right now, bots can only send ephemeral messages as part of interaction responses (like slash commands or buttons). It would be extremely helpful if bots could send ephemeral messages independently.. for example, in response to events like new messages or automatic detections (e.g., language translation, moderation warnings, tips, etc.).

This would allow bots to provide useful, non-intrusive feedback directly to users without cluttering public channels. It could work similarly to normal me...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Totally fair points, and I get where youโ€™re coming from - but I still think thereโ€™s room for this feature if itโ€™s implemented with the right guardrails.
โ€ข Abuse concern is valid, but honestly, any message system can be abused (DMs, pings, embeds, etc.). Discord already rate-limits bots and could easily restrict how often ephemeral messages can be sent, or require them to be tied to some user-triggered context.
โ€ข On the โ€œalready possible via interactionsโ€ point โ€” yeah, that works great for s...

#

Yeah, I totally agree that automatic translation visible only to the author could be super useful โ€” and yeah, like anything, it could be abused if left unchecked. But I think with smart limits (like per-user cooldowns or requiring message context), it could be made safe while still improving the user experience. Especially in large servers, itโ€™d keep things cleaner without sacrificing functionality.

As for quiet command responses โ€” youโ€™re right, ephemeral slash commands do already work that ...

chilly siloBOT
#

Right now, bots can only send ephemeral messages as part of interaction responses (like slash commands or buttons). It would be extremely helpful if bots could send ephemeral messages independently.. for example, in response to events like new messages or automatic detections (e.g., language translation, moderation warnings, tips, etc.).

This would allow bots to provide useful, non-intrusive feedback directly to users without cluttering public channels. It could work similarly to normal me...

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

Again, clan should be removed, just because it is present in the payload does not mean it should be documented and usable because there is no concept as "clans" at this point.

I disagree, If something is in the return data it should be documented to avoid ambiguity / confusion, and if it is a deprecated field it should point developers to the new field or endpoint, if one is available (Which is what I have included).

I this case, even though clans are no longer a thing, it still gets...

chilly siloBOT
#

Description

According to the attachment_size_limit property for interactions, when a user with Nitro invokes a slash command, the bot should be able to send attachments up to the user's upload limit (500MB for Nitro users). However, when sending files over ~200MB (So far, from testing that is failure hard cap), the result is inconsistent (sometimes it sends, sometimes it doesn't) or it straight up throws an error

This happens with both "regular" file uploads (resulting in a `504 Gatew...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Editing and attempting to save a SKU item description that includes new lines causes the "Save Changes" button to not work, stating that you have unsaved changes. The changes have actually been saved, but with all new lines removed.

Steps to Reproduce

  • Go to an Application on https://discord.com/developers/applications
  • Go to Manage SKUs in Monetization
  • Select a SKU
  • Edit Item Description to include any new lines
  • Click "Save Changes"
  • Changes appear to not save ...
chilly siloBOT
chilly siloBOT
#

Description

When testing consumable SKU purchases using TEST_MODE_PURCHASE, it's possible to make multiple purchases of the same consumable SKU without consuming the previous entitlement. However, when switching to live mode (PURCHASE), a second purchase attempt is correctly blocked until the prior entitlement is consumed.

Steps to Reproduce

Set up a consumable SKU.

Use test mode to simulate a purchase (TEST_MODE_PURCHASE) without consuming the entitlement.

Attempt to purchase th...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Server owners are currently able to restrict certain command usage to specific channels/roles, which removes them from the command list for that bot, unless the specific criteria are met. Even then, sometimes admins may not wish to have their UI cluttered up with commands that they do not use either. I think it would be quite a decent quality of life improvement if it were possible for either users with User Installed apps, or for bot developers, to be able to toggle off/on the display of cer...

chilly siloBOT
chilly siloBOT
#

Description

If I try using app commands on mobile browser, it just shows built in commands, they don't work too. It says I would have legacy chat enabled, but I don't. If I try selecting an command mention, it shows on top of the text bar, but when I am sending the command, it just sends the message as "/ping" for example.

Steps to Reproduce

Open mobile browser, open discord via https://discord.com/channels/@me
Then go in any channel where commands should work and try using a comma...

chilly siloBOT
chilly siloBOT
#

Hi, I wanted to share some thoughts regarding this issue.
I've found values for most of the enums in the Discord API documentation and created a corresponding JSON schema for
them.
To generate a complete schema of the API, I use a merge tool to combine individual schema definitionsโ€”perhaps that
could be useful for you as well.

One enum I couldn't find any official information on is ThreadSearchTagSetting.
It appears to be unused in the current Discord API.
I looked for an endpoint us...

#

There are several schemas in the API specification that do not have any properties defined.
Here is the full list as of July 22, 2025:

  • ConfettiPotionCreateRequest
  • EntityMetadataStageInstance
  • EntityMetadataStageInstanceResponse
  • EntityMetadataVoice
  • EntityMetadataVoiceResponse
  • IconEmojiResponse
  • MLSpamTriggerMetadata
  • MLSpamTriggerMetadataResponse
  • MessageActivityResponse
  • QuarantineUserActionMetadata
  • QuarantineUserActionMetadataResponse
  • `SpamLinkTrigge...
chilly siloBOT
#

Split the large core-concepts.mdx file into focused subpages for better navigation and maintainability:

  • Created core-concepts/core-features.mdx covering account linking, provisional accounts, friend systems, and presence
  • Created core-concepts/communication-features.mdx for messaging, lobbies, and linked channels
  • Created core-concepts/integration-overview.mdx with implementation steps and workflow
  • Created core-concepts/platform-compatibility.mdx with supported platforms and SDK a...
#

This is a bit of a hefty on. Probably requires testing this in full, but here are a few screenshots to get you a sense.

Sidebar:
<img width="251" height="414" alt="image" src="https://github.com/user-attachments/assets/bc87fb7a-f369-42ab-a4da-cce34ec2ceb3" />

Core Concepts landing page:

<img width="1123" height="1017" alt="image" src="https://github.com/user-attachments/assets/bdf0d689-29d6-44e1-8bc4-73c92da208c5" />

Communication Features:

<img width="1121" height="1681" alt=...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Apologies - thought this was just a comma change. Got approval happy.

This rarely returns false.

Unfortunately this doesn't explain anything better, just that's it's rarely false -- which I'm not sure why it's relevant, or makes things clearer. At the very least it's should be a "This rarely returns false because...." or what I think is likely better is deeper explanation of why a user wouldn't be displaying primary guild's server tag.

chilly siloBOT
#

Description

When a context menu interaction from a locked thread is responded to Forbidden: 403 Forbidden (error code: 50083): Thread is archived is returned. This only happens when the executing user does not have the "use external apps" permission.

Steps to Reproduce

  1. Create a context menu command on a user installed app that is installed to your account
  2. Find a locked thread or make a thread and lock it with another account (so that you do not have permission to reope...
chilly siloBOT
#

Issue was not resolved, I can not install the app due to the play store not allowing it because I am under 18 years old

I guess you're out of luck then, since officially mobile browsers are an unsupported platform by Discord. (Source 1, [Source 2](https://support.discord.com/hc/en-us/articles/213491697-What-are-the-OS-system-requirements-for-Discord#h_01JCP4A30YP25B3WPNVWWZJ9...

chilly siloBOT
chilly siloBOT
#

Description

on computer i select ui i only see the 56 first characters instead of 100

Steps to Reproduce

create a select with 100 characters and compare in mobile and computer

Expected Behavior

full description displayed

Current Behavior

only see 56 characters on computer instead of 100

Screenshots/Videos

No response

Client and System Information

this is the full description seen on mobile

the description seen on computer
as we can see only 56 charact...

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

Description

Hello!
I believe this is a bug. My bot can rename everyone except those who have a guild tag blocked by the guild's AutoMod.

For example, the admin of a guild blocks the tag "OF" with AutoMod for understandable reasons. Therefore, for every user with this server tag, my bot is unable to rename them.

Since the renaming part have no links with the guild tag part, I report it to you

Steps to Reproduce

Having a tag/string block by the Automod
Having a bot who can rename ...

chilly siloBOT
chilly siloBOT
#

Hey, Iโ€™d like to add a bit: If there's no user in the voice channel except ourselves, and we move ourselves to another channel, the status code that appears will always be 4022. But if the voice channel has at least 1 other user in it when we move ourselves, then it will first trigger a 4014, and when we return to the previous channel, the code that appears will be 4022.

Example: self move to other channels

๐ŸŸข (VC has at least 1 person) Channel A โ†’ Channel B (4014) Channel B โ†’ ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When a message containing a Text Display component has a role mention inside the content, and the role is colored, the color does not display on the iOS and Android client version of Discord -- instead it is displayed with the default colors of a mention (like the @everyone and @here mention colors).

Steps to Reproduce

  • Send a message containing the following inside the components field of the message body using a webhook (user-owned or app-owned does not matte...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hi, just adding some clarification from my side.

As mentioned earlier and supported by my own findings, the current Discord API documentation doesn't account for a valid scenario where an onboarding prompt option's emoji field can have both id and name set to null.
While the emoji object docs state that name can be null only for reactions, this behavior also occurs in onboarding prompts.

Here's a response from the API I received on my testing guild:

{"guild_id":"851956220570370099","p...
#

Description

When posting messages to Discord using embeds, there's an inconsistency in how markdown links are rendered in embed descriptions when the link text (mask) contains a URL pattern. Specifically, if the mask portion contains https:// followed by two or more letters (resembling a URL), the markdown formatting fails and renders as plain text instead of a proper clickable link. This may be by design, to avoid masking links, but discord warns you when you go to an external domain,...

chilly siloBOT
chilly siloBOT
#

Description

When a message is deleted at the exact same time it's being pinned, Discord shows "Message pinned", but the message does not appear in the pinned messages list.

Steps to Reproduce

  1. Send a message in any text channel.
  2. Attempt to pin that message.
  3. Delete the message at the same moment (either with another account or very quickly).
  4. Discord displays "Message pinned".
  5. Click "View pinned message" โ†’ nothing appears.

Expected Behavior

The message should no...

#

Description

When I type the name of an emoji from a server I am not in anymore, and I don't have Nitro, the emoji still appears in the input field (text box) as if I had access to it. It is not usable in the actual message, but Discord shows it in the preview.

Steps to Reproduce

  1. Have an emoji name memorized from a server (e.g., :emoji_name:).
  2. Leave that server or ensure you're not a member of it.
  3. Make sure you donโ€™t have Nitro.
  4. In any server or DM, type `:emoji_...
chilly siloBOT
chilly siloBOT
#

Description

There seems to be an issue where all events are returned with the status of scheduled, even though the discord client shows otherwise.

Steps to Reproduce

Using the following python script

import requests

BOT_TOKEN = "TOKEN_HERE"
GUILD_ID = "747542543750660178"

url = f"https://discord.com/api/v10/guilds/{GUILD_ID}/scheduled-events"
headers = {
    "Authorization": f"Bot {BOT_TOKEN}",
    "Content-Type": "application/json"
}

response = requests.get(url, head...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I cannot connect at all with IPv6. This would be easily handled by any larger company so it is baffling that I cannot connect. Something is either broken or someone forgot about it.

Steps to Reproduce

  1. Try to use IPv6 and then it cannot connect.

Expected Behavior

IPv6 should connect

Current Behavior

IPv6 does not connect

Screenshots/Videos

No response

Client and System Information

Most current windows 10 version. I am using the discord progra...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hi there, I'm very sorry for the delay. I believe this is specific to entitlements created in test mode and am working on a fix.

Hello! Thanks for the update, and no worries about the delay.

Just to clarify, are you certain this issue only affects test mode entitlements? When I first encountered this (a few months ago), it happened with a real, purchasable durable entitlementโ€”one that a user actually bought. I remember receiving the entitlement update event and my database reflected the c...

chilly siloBOT
#

Just to clarify, are you certain this issue only affects test mode entitlements? When I first encountered this (a few months ago), it happened with a real, purchasable durable entitlementโ€”one that a user actually bought. I remember receiving the entitlement update event and my database reflected the change correctly. However, when I later checked the user's entitlements during a command request, it incorrectly showed that the user did not have the entitlement.

I am certain that application...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Sure I got time (we can also talk in ddevs lib-devs about it)

I think the main way devs would want to get the info are the interaction events.

Manually fetching requires more api calls (potentially every interaction) or building a permanent store for it, requiring more data stored.

The webhook events are nice, but not any library supports it.

Polling is another way but that'd be cronjob'ed then.

The most convenient way is if we have the data, as promised in the docs, directly in the event.

#

Sure I got time (we can also talk in ddevs lib-devs about it)

I think the main way devs would want to get the info are the interaction events.

Manually fetching requires more api calls (potentially every interaction) or building a permanent store for it, requiring more data stored.

The webhook events are nice, but not any library supports it.

Polling is another way but that'd be cronjob'ed then.

The most convenient way is if we have the data, as promised in the docs, directly in the event.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I feel this is worth mentioning, as I don't think anyone else in this discussion has requested this feature specifically. Having a time picker without the date portion would be extremely useful. I maintain a bot that makes it easy for streamers to update their weekly schedule. Having the ability to configure the time (and presumably send the timezone along with the interaction) without needing to input a time string would make this far more intuitive.

chilly siloBOT
#

๐Ÿ› ๏ธ Proposed change

Added documentation to cover the case of an undocumented embedded field in the Client Status object.

๐Ÿงช Justification

Observed in payloads for some customers, although not mentioned in official documentation. This field may appear alongside desktop / mobile / web.

๐Ÿ“Ž Links

#

๐Ÿ› ๏ธ Proposed change

Added documentation to cover the case of an undocumented embedded field in the Client Status object.

๐Ÿงช Justification

Observed in payloads for some customers, although not mentioned in official documentation. This field may appear alongside desktop / mobile / web.

๐Ÿ“Ž Links

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

  • Discord Server Insights only go back to April 2025 (March 28th if shown in Daily view) - about 5-6 months.

Steps to Reproduce

  • I go to the Growth & Activation tab and select a date more than 6 months ago. Note that the screenshot below shows back until 01/09/2025.

Expected Behavior

  • The Discord server is almost 10 years old with over 14,000 members. The expected behavior is to show data going back years and not only 5 months.

Current Behavior

  • It shows...
chilly siloBOT
#

Description

Currently, in media gallery components, you can provide alt text for images and video. This is sent along to the client fine, however for specifically videos it is not displayed in any way to users on desktop. On mobile however, the alt text is perfectly useable on videos.

Steps to Reproduce

Send a message with something like the following:

{
    "flags": 32768,
    "components": [
        {
            "type": 12,
            "items": [
                {
      ...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Heyo @ykogan-discord!

Many thanks, I can confirm that the fix works and that this issue is fixed therefor โค๏ธ

I can see every entitlement I'm expecting now in INTERACTION_CREATE gateway events. Both subscriptions and OTP.

    "entitlements": [
      {
        "user_id": "856780995629154305",
        "type": 4,
        "starts_at": null,
        "sku_id": "1277884813961072681",
        "promotion_id": null,
        "id": "1277886153604730934",
        "gift_code_flags": 0,
        "...
chilly siloBOT
chilly siloBOT
#

Description

When sending a cv2 message with a thumbnail or media gallery item, my avif files do not render.

Steps to Reproduce

Send a cv2 message with a thumbnail or media gallery item with an avif file as the media.

Expected Behavior

Media should load as it does if it's a normal Discord message.

Current Behavior

No loaded image, only a poop emoji.

Screenshots/Videos

Images uploaded to Discord via user message

Images sent in cv2 with a URL

Client and Syste...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

There should be automod support to check this kind of info, the amount of scams or worse (don't even want to mention it) is insane, no way to prevent that or to be notified in time before anything bad is shared by them, I'm tired of moderating and reporting profiles that should not be allowed to exist in the first place, starting as a new dev who wants to create a safe community is impossible, even more when we see how other devs who try to keep the communities safe are treatedโ€ฆ

chilly siloBOT
#

Description

While testing the performance of a Discord bot written using DPP (Discord++), I attempted to see how fast the bot was able to create 500 channel limit. However, upon doing so I noticed that it seemingly exceeds this limit.

To verify this, I tested it on 2 separate guilds.

Guild 1 (ID: 1401681709430341704).

After creating the channels, I ran the following curl command to verify:

`curl -H "Authorization: Bot TOKEN" https://discord.com/api/v10/guilds/1401681709430341704/...

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

Description

Webhook avatars exhibit strange behavior in two cases:

  1. 100% of the time when the webhook has the default avatar with no override
  2. Very rarely when the webhook is executed with a custom avatar_url override

Specifically, the bug causes affected messages to change avatars to whatever the last avatar loaded for that webhook is (see below for visual example).

Steps to Reproduce

  1. Create a new webhook (leave the avatar unset)
  2. Execute it with a payload like this
    ...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Restructure the Game Invites guide to emphasize that invites are not a standalone feature but are entirely powered by Rich Presence configuration. Add clear explanations of the prerequisite Rich Presence setup including party information, join secrets, and/or supported platforms needed to enable invite functionality.

This was a point of friction I ran into when onboarding with the Social SDK and creating invites.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

The given example user under "Users" is invalid. Specifically, the API docs state that global_name is not omittable, however it is omitted from the shown example.

Steps to Reproduce

User Structure where global_name is shown to be required: https://discord.com/developers/docs/resources/user#user-object-user-structure

example directly below where global_name is omitted: https://discord.com/developers/docs/resources/user#user-object-example-user

Expected Behavi...

chilly siloBOT
chilly siloBOT
#

i need a 85k messge for this messge

ืชืกื“ืจ ืืช ื”ืกื™ืคื•ืจ ื•ืชืžืฉื™ืš ืื•ืชื• ื”ื•ื ืœืคื™ ื˜ืจื” ืฉื”ืžืฆืืชื™

<!DOCTYPE html>
<html dir="rtl" lang="he">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ื˜ืจื: ืื“ื•ืŸ ื”ื›ืื•ืก - ืคืจืงื™ื 1-7</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

    body {
        font-family: 'Arial', sans-serif;
   ...
chilly siloBOT
#

Description

There's a discrepancy between the max width used by normal message content and max width used by Text Display components. Components seem to have an hardcoded limit that wastes a ton of screen space and make large texts look bulkier than they really are.

Steps to Reproduce

  • Send a Text Display component with a fairly large text
  • Notice how the line wraps early, regardless of whether there's room left

Expected Behavior

Similar to regular messages, the text should...

chilly siloBOT
chilly siloBOT
#

You can still use message.content for messages that are overwhelmingly and primarily text content.

However, when you want to start using more complex visuals than a wall of text, having an upper limit on width to ensure things are visually consistency is important. In particular, this allows sibling components like Sections, MediaGallery, Containers, etc to have a shared width that they can vertically align at. This same vertical alignment desire is present for TextDisplay, so it has the ...

chilly siloBOT
chilly siloBOT
#

Description

Currently, filenames from files uploaded to discord are cleansed similarly to flask's secure_filename() function here . This breaks using attachment://filename in components/embeds sometimes since the filename there won't be cleansed the same way and won't be found.

Steps to Reproduce

Upload a file to Discord named _VnitHEEnz2LbpDa.mp4 then set a component or embed to use attachment://_VnitHEEnz2LbpDa.mp4.

Expected Behavior

Expected `attachment://_VnitHEEn...

chilly siloBOT
#

Bumps actions/checkout from 4 to 5.

Release notes
Sourced from actions/checkout's releases.

v5.0.0
What's Changed

Update actions checkout to use node 24 by @โ€‹salmanmkc in actions/checkout#2226
Prepare v5.0.0 release by @โ€‹salmanmkc in actions/checkout#2238

โš ๏ธ Minimum Compatible Runner Version
v2.327.1
Release Notes
Make sure your runner is updated to this version or newer to use this release.
Full Changelog: https://github.com/actions/checkout/compare...

chilly siloBOT
chilly siloBOT
#

Our large server has several channels with excessively long slowmode (1 or 6 hours), each with their own posting guidelines. Some of these guidelines involve content vetting that goes beyond what Discord's native AutoMod provides. To name a few:

  • Validating a mix of message length, line breaks, attachment count, and link wrapping to see if a message takes up too much space (ad/promotion channel)
  • Validating a combination of tags in a forum channel to make sure that a user has selected a ...
chilly siloBOT
#

As a workaround you could make the bot a middleman, so the user sends the message and combination of tags/title/etc through a modal, it validates, and only sends it if it passes. Can use a webhook if you want to preserve pfp and username. Another alternative could be to offer a way to pre-validate if your bot will let them pass or not, before actually creating the post.

chilly siloBOT
#

This commit transitions Discord Social SDK Communication Features from closed beta to general availability (GA):

  • Add GA launch changelog entry for August 13, 2025
  • Update communication features documentation with GA status and requirements
  • Update rate limiting documentation and callouts
  • Remove limited access warnings from core documentation
  • Update development guides to reflect GA availability
  • Add minimum required feature set documentation for GA compliance
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This feels like a very aggressive change for personal bots in large-ish servers
For the past couple years I've had a personal bot for a server I admin with 40k members. Currently it only takes 5 seconds to start and fill the member cache; with this change, unless I'm mistaken about something it would take 20 minutes to achieve the same result, and having quick access to the cache on startup is pretty important for its operation...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Currently the docs says about the new field for role colors, but that data are not included in templates using a deprecated field

Steps to Reproduce

  • Create a template
  • get using API

Expected Behavior

Return the role with the data based in docs https://discord.com/developers/docs/topics/permissions#role-object

Current Behavior

Return the role but not include the colors field only the deprecated color

Screenshots/Videos

No response

Client and S...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

We are designing a user-created private VC solution for our server, which includes the ability to invite (add) and kick (remove) users from the VC as the owner desires. If for any reason, the owner needs to invite the same user a second time (such as accidentally kicking the wrong user), they are unable to do so because the selection will not/does not re-send an interaction for the same selected user on repeated selections.

I assume this might be due to selected value cachin...

chilly siloBOT
chilly siloBOT
#

As a workaround, you can change the custom_id value whenever someone does a selection, to clear the state.

Thanks for the proposed workaround, but it doesn't seem to fix the issue unfortunately...
We reworked this system to add an incrementing number like so:

  • "custom_id": "VC:Invite:1:1406001979196706911"
  • User interactions with selection menu, the interaction callback edits the message, switching to VC:Invite:2:1406001979196706911

This still causes the erroneous behavior and does...

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

Hello,

I would like to suggest a feature for bot profiles. Currently, bot profiles display a list of their most popular commands, but only commands without subcommands are shown.
(This isnโ€™t correct at the moment, as commands with subcommands are technically displayed, but thereโ€™s a bug: when you click on them, the subcommands are turned into options and become unusable.)

It would be great if all commands could be displayed. Clicking on a command with subcommands could simply open th...

chilly siloBOT
chilly siloBOT
#

Description

In a (group) direct message channel, utilising the user option always returns no results when accessed through the apps keyboard. It works as expected through using an application command through regular means (just typing it out).

Steps to Reproduce

  1. Go to a (group) direct message channel
  2. Open the apps keyboard
  3. Find a command that uses a user option
  4. Open the user option
  5. Search for a user

Expected Behavior

You find the user you searched for.

Cur...

chilly siloBOT
chilly siloBOT
#

Description

My use case is that I have a bot that parses a message, sends a message, and suppresses any embeds the original message had. It logically is something like:

await sendMessage(...);
await originalMessage.suppressEmbeds(true);

However, I noticed that sometimes the embed on the original message was not working. Thinking it through logically, it is perhaps possible that the asynchronous unfurling of a URL to embed was not finished in time when I called `suppressEmbeds...

chilly siloBOT
chilly siloBOT
#

You can create a message with the embeds already suppressed using the suppress embeds flag, avoiding this issue entirely.
Per the use case, this is a bot responding to a message and then suppressing the original embed. No control of the flag.

Alternatively you should watch for the message edit event since that event is called when an embed comes through when the unfurler gets to it. The message create event is triggered with embeds when the unfurler has the embed for it already cached so...

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

Description

If you respond to a message command with a modal, and respond to that modal with an UPDATE_MESSAGE callback, a 404 Unknown Message error will occur.

Steps to Reproduce

Respond to a message command with a MODAL, and respond to that modal with an UPDATE_MESSAGE.

Expected Behavior

The original message the command was attached to is updated.

Current Behavior

A 404 Unknown Message error occurs.

Screenshots/Videos

No response

Client and Syst...

chilly siloBOT
#

Description

When user replies to some message with embed, embed data in MESSAGE_CREATE event contains unexpected id property which isn't documented.
If get message not from event, this field is excluded.

Steps to Reproduce

  1. Send message with embed to some channel
  2. Reply to it
  3. Check data from MESSAGE_CREATE event and see id field

Expected Behavior

Remove this field from data or document it

Current Behavior

Undocumented field in data

Screenshots/Videos

_N...

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

Ah. This got moved, so it isn't specific to modals right now.
Technically having something that was specific would be nice in the future, but frankly, I think this is fine.
So the above comments can perhaps be overlooked for now.

Hopefully people won't make assumptions about the data in modal_submit.components based on just this table, but take into consideration what can actually be put into a modal first.

#

Continuing the stream of consciousness...
This table actually is modal specific because Message Component Data Structure doesn't actually reference it, and it makes sense why, because Message Component Data Structure is itself actually already the data that you'd find from one of the structures referenced in this table

interaction.data vs interaction.data.components[0] and what not.

As such, we should remove the user/role/channel/mentionable selects from this table as those ...

chilly siloBOT
#

Thanks to this thread I've finally realised what was going wrong with my new Discord bot on Cloudflare Workers!!

Surely this is something that individual small developers like me shouldn't have to resolve, the solution to use cf-worker as a rate limit key instead seems like a good one.

At the very least we should have better error reporting, I couldn't understand why my small bot was being rate limited!!

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

My number 1 most wanted component for modals: a rich text/markdown input. Basically, an embeddable version of the Discord message interface.

My use case? My bot (in a hundred-ish servers) has a "mod statement" feature so that mods can issue statements anonymously, entering a custom message and having it displayed in a big, eye-catching embed so people can't miss it. And for the slash command variant, everything's fine. But I also have a report system for users to flag messages for mod atte...

chilly siloBOT
chilly siloBOT
#

Feature Request: Allow Servers to Send Messages as the Guild (Anonymous System Messages)

Description

Currently, all messages in Discord must be attributed to a specific user or bot account. While this ensures accountability, there are use cases where it would be beneficial for a guild/server itself to send a message without exposing the identity of the sender.

This would function similarly to how Telegram channels allow messages to appear as if they were sent by the channel itself...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Improved Components

  • I'd love the ability to validate a text input using simple regex (like ^\d+(?:\.\d+)?$ for a decimal number)

New Components

  • If we get a dedicated number input, I'd love to be able to tune its precision, step, min, max, and all those goodies
  • Having custom text displayed in a modal would be heavenly. I would be worried about whether it looks too much like something official from Discord, though.
  • Building off of the above, I'd love to display images, ...
chilly siloBOT
#

Description

When fetching

Hey, I am receiving a couple of reports for created_at field not being present when fetching invites for some guilds, even if it specifically states in the docs they should always be present:

A couple of guild ids I got a report for:

Steps to Reproduce

Try to get fetch the guild invites for any of the following servers:

  • 1397383846475071508
  • 1308388315686375505

Expected Behavior

The returned payload is a complete invites with metadata payload,...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

A normal Discord user using the app, when trying to edit a message without content, receives the message "Do you want to delete your message?", which, upon confirmation, simply deletes the message, while the bot (and the bot API) can edit the message to an empty one.

Steps to Reproduce

Here example for JDA library: https://github.com/discord-jda/JDA/issues/2901

Expected Behavior

A Discord bot cannot edit an empty message. In the JDA library, if you try to create a...

chilly siloBOT
#

A normal Discord user using the app, when trying to edit a message without content, receives the message "Do you want to delete your message?", which, upon confirmation, simply deletes the message

The behavior of the Discord app is irrelevant, a client tries to provide a convenient way to interact with the service, it will differ from the API, here, editing with an empty message in the API doesn't cause a message to be deleted, it's the client which has special behavior for that case.

j...

#

if you try to create a message editing object from such an empty message, you receive an error from the library

Yes, this is the expected behavior, you cannot send messages that are empty (speaking from a data perspective, not visually), you can send ones that appear empty, but sending empty messages is not something that realistically happens and it unlikely to be supported by JDA.

Yes i know that i cant send empty message, but if this message is not empty but only appear empty t...

#

The message does appear to be actually empty, I can also reproduce by:

  1. POSTing a message with {"components":[],"tts":false,"flags":0,"allowed_mentions":{"parse":["users","roles","everyone"],"replied_user":true},"poll":null,"embeds":[],"enforce_nonce":true,"nonce":"9613084622199374140","content":"content"}
  2. PATCHing with {"components":[],"attachments":[],"flags":0,"allowed_mentions":{"parse":["users","roles","everyone"],"replied_user":true},"embeds":[],"content":""}

The issue here is...

#

Attempting to PATCH with {"content":""} does return an error.

But I get an exception before sending the message, I get it when I create the Builder class for later editing

You have to check isValid before calling build() on your MessageEditBuilder, if you really get it before building, please share your actual code.

I get an error before the edited message is built. I'll post my code when I get back to my computer. You can also check if you can set content to "" when ...

#

Description

In public threads, webhooks are able to add users as members of the thread by way of pinging that user in a message.
However, in private threads, pinging a user via a webhook does not add them as a member of the thread.

I discussed the problem in the discord developer server, and others were able to reproduce the problem. Conversation link: #api-chat message

Steps to Reproduce

import { ...
#

Description

According to the docs you should be able set the IS_COMPONENTS_V2 flag on an old message. It states that the embeds, content, etc, need to be set to null.

This seems to only work with content. Setting this to null does allow the message to be edited while using the new flag. However, embeds, sticker_ids and files don't seem to work when being set to null. It does work when they are set to [].

Steps to Reproduce

### Create a message
POST htt...
chilly siloBOT
chilly siloBOT
#

Description

I use position to determine whether a message is in a thread. It seems that some forum thread messages are missing this attribute, leaving no way to correctly infer the parent channel type (insofar as necessary for webhook operation) outside of making another request.

Steps to Reproduce

  1. Fetch a known problem message - this one was shared by one of my users
curl --request GET \
  --url https://discord.com/api/v10/channels/1405969771303801004/messages/14059697801...
chilly siloBOT
chilly siloBOT
#
[discord-api-docs] Branch lew/add-url-and-status-display-rich-presence-fields-social-sdk was force-pushed to `3ea989f`
chilly siloBOT
#

I think both of these sections would be better just below ## Setting Assets since it flows naturally from there.

I am wondering though if that section should be ## Setting Predefined Assets and this should be something like ## Setting Rich Presence Clickable Links or something like that - that describes what you are doing.

What do you think of that?

Down here we're in ## Rich Presence Without Authentication which feels like the wrong section.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

#7576 again.

Steps to Reproduce

  1. Create an application
  2. Upload an emoji

Expected Behavior

Formatted table.

Current Behavior

Everything is misaligned and needlessly truncated or wrapped onto a new line.

Screenshots/Videos

Client and System Information

  • Arc Version 1.109.0 (67185) Chromium Engine Version 139.0.7258.139
  • Safari Version 18.6 (20621.3.11.11.3)
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hello everyone,

I am sharing a practical example of a new model for developer-centric security.

I am the creator of "Protocol 8," a unique, multi-agent bot system that was designed to solve the problem of API rate limits and coordinated attacks. Unlike standard monolithic bots, my system uses a distributed architecture with specialized agents to handle mass events.

I believe this approach demonstrates a more resilient and effective model for server protection. You can see a resume of...

chilly siloBOT
chilly siloBOT
#

Description

Discord is using the deprecated GitHub logo in their webhook events.

Following the steps to reproduce riht now, this is the URL Discord is using as an avatar icon:

https://cdn.discordapp.com/avatars/1411345929616887839/df91181b3f1cf0ef1592fbe18e0962d7.webp?size=4096

Looking at GitHub's Brand Toolkit, it says:

The invertocat with suction cup dots has been retired, and should not be used.

Steps to Reproduce...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Forum Channels from a Guild Template's serialized_source_guild include Forum Tag objects without an ID field.

Steps to Reproduce

  1. Fetch a guild template for any guild that has a forum channel containing tags.
  2. Observe data.

Expected Behavior

Payload contains a placegolder ID field with sequential IDs denoting sorting order.

Current Behavior

Payload does not. For example: `'available_tags': [{'name': 'XXXX', 'emoji_id': None, 'emoji_name': None, 'modera...

chilly siloBOT
chilly siloBOT
#

I'm proposing a new PUT /channels/{channel.id}/permissions endpoint that accepts an array of overwrites to set for the channel, similar to permission_overwrites in Modify Channel. This is a change to make bulk management of permission overwrites more practical for bots that want to limit the permissions they request from users. The current options are:

  • Modify overwrites individually, can grow to a lot of requests...
chilly siloBOT
chilly siloBOT
#

Description

When sending a string select menu in a message with required: true, the API response is an error. The docs say:

The required field is only available for String Selects in modals. It is ignored in messages.

Since it is ignored in messages, I would not expect an error when setting it. This seems like either a documentation or API bug.

Steps to Reproduce

Send a message like this:

{
  "components" : [ {
    "components" : [ {
      "custom_id" : "test.men...
chilly siloBOT
#

tldr: having a less serve permission for detecting when automod are triggered such as view audit logs

I've noticed that detecting when an automod rule is triggered (for example, in discord.py using on_automod_action) forces the bot to have the Manage Server permission.

This is a dangerous permission which causes servers to not want to add the bot. IMO, a bot having Audit Log permissions should be sufficient to detect automod actions being triggered. A few weeks ago, there was a server that ...

chilly siloBOT
#

im good with moving them! i think that makes sense

i'm like 70% sure that you can set more than just predefined assets so i dont think renaming that section is necessary. as for renaming the field URLs section, i think it's redundant to say Rich Presence when we're on the rich presence page but i'm open to maybe doing "Setting Clickable Links" if that feels more intuitive to you than "Setting Field URLs"

so in the meantime ive moved the section, but left the headers the same. lmk your thoug...

chilly siloBOT
chilly siloBOT
#

Description

I and a few other developers in the Discord Devs server noticed that at around 21:17 UTC last night (13:17 PST), the Discord API started returning 50269 - Missing access to age-gated content in response to some interaction responses. We've so far noticed it when responding to normal slash commands, button interactions, and even responding to autocomplete interactions. We're having a hard time finding a pattern in this, except that the bots are hosted in the UK. It seems to ...

chilly siloBOT
#

Description

Iโ€™m encountering an issue with the "Request approval for Privileged Intents" system.
When I attempt to request approval, I receive the following error:

"This application is not currently in the minimum number of servers required for intent verification, please try again once in 75 servers."

Error Screenshot

The issue is not the error itself, but rather the inconsistency in how server ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hello,

As an interaction command developer, Iโ€™ve noticed a limitation: the default member permission property currently only applies to top-level commands, not to subcommands or subcommand groups.

This creates unnecessary friction for common use cases. For example:

  • /tag command with subcommands:
    • /tag create โ†’ should be restricted to server managers
    • /tag use โ†’ should be available to everyone

Currently, developers must manually handl...

chilly siloBOT
#

Description

The documentation for message snapshots, state that the subset of message fields serialised is a bunch of stuff, but when you have this structure: message["referenced_message"]["message_snapshots"][0]["message"], the only fields that are serialised are ['attachments', 'content', 'edited_timestamp', 'embeds', 'flags', 'timestamp'].

Steps to Reproduce

  1. Forward a message
  2. Reply to ...
chilly siloBOT
#

Description

Apps on profile does not show if thereโ€™s more than one app has connected to memberโ€™s account.

Steps to Reproduce

Assuming there is two apps with linked roles:

  1. Go to linked roles
  2. Connect to roles for the apps
  3. Go to member profile
  4. Only 1 app displayed on member profile

Expected Behavior

Showing two app metadata in the section.

Current Behavior

Displayed only 1 app even though thereโ€™s two app connections.

Screenshots/Videos

https://github.com/...

chilly siloBOT
#

Description

The Discord API is returning an incorrect retryAfter value for rate limits on the thread creation endpoint (POST /channels/{channel.id}/threads). The API reported a wait time of 219,050 ms (~3min 39s), but the rate limit was actually lifted after approximately 145 seconds (~2min 25s), making bots wait ~74 seconds longer than necessary.

Steps to Reproduce

Make multiple rapid requests to POST /channels/{channel_id}/threads endpoint
Trigger a rate limit (receive 429 respon...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Previously, if you used a command that your client had cached shortly after that command was updated, the client would error once, then fix the local cache for your next use. This behaviour no longer works and requires a client restart every time.

Steps to Reproduce

  • Have your client cache a command
  • Update that command
  • Try to use the now-outdated cached version twice

Expected Behavior

Read-repair functionality should kick in and sync the local cache with the...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Hi, I understand this feature is in preview right now but seeing as this also happens for users in-app (using the from: parameter) I thought it was worth reporting. My aim is to use the message search endpoint to get a count of all messages that a specific webhook has sent in a server. When providing author_id as a webhook ID, no results are returned, despite the message being indexed with that webhook's ID as the message.author.id.

Steps to Reproduce

  1. Call the ...
chilly siloBOT
chilly siloBOT
#

Bumps actions/setup-node from 4 to 5.

Release notes
Sourced from actions/setup-node's releases.

v5.0.0
What's Changed
Breaking Changes

Enhance caching in setup-node with automatic package manager detection by @โ€‹priya-kinthali in actions/setup-node#1348

This update, introduces automatic caching when a valid packageManager field is present in your package.json. This aims to improve workflow performance and make dependency management more seamless.
To...

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

This is perhaps two different issues in one.

The info in openapi.json is identical to the info in openapi_preview.json, providing no way to programmatically distinguish specs by anything other than filename. More specifically, the two current specs are both titled and described as "Preview" while only one has a _preview suffix in its filename.

Additionally, the version field may be used incorrectly.

From :

REQUIRED. The version of the OpenAPI document (which is distinct from ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#
We've added more components to modals! All select menus (User, Role, Mentionable, Channel) are now fully supported in modals. In order to use a select menu in a modal, it must be placed inside a [Label](/docs/components/reference#label) component. We've also added the [Text Display](/docs/components/reference#text-display) component with markdown support as a top-level component in modals.
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Thanks for the report! I'll let our traffic team know this can be tightened up, but I can't promise we'll make changes to address this soon. We don't guarantee that the Retry-After time is the earliest possible time a request can be made. Sometimes it's a conservative projection. (It would be worse to err in the other direction.) We still recommend that you rely on Retry-After when setting your backoff to avo...

chilly siloBOT
chilly siloBOT
#

Description

With #7807, I cannot reproduce seeing a banner or a bio on applications per-server despite the API request seemingly working.

Steps to Reproduce

  1. Create a new application
  2. Add it to a server
  3. Create a test.json file with the following:
    {
    	"bio": "bio",
    	"avatar": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAF4AAABWCAYAAABGgSEDAAANOklEQVR42u1dobLbSBZ9JCw0JCzUJDQ4MDhMv5BPCB4U0GzA1IIFS/IHZgu2mk/QhgVMVdBOYMACjY+kI50+ui3L7+W915Oyq7oky7JsnXv73HNvd9s3Nw...
chilly siloBOT
#

I cannot reproduce seeing a banner or a bio on applications per-server despite the API request seemingly working.

The avatar isn't working correctly either from my testing

Currently it:

  • [x] Shows up in the members list
  • [x] Shows up in normal-chat messages
  • [ ] Shows up in interaction responses (uses global avatar, needs to be fixed)
  • [ ] Shows up in the / picker (uses global avatar, needs to be fixed)
chilly siloBOT
chilly siloBOT
#

Description

When replying to an interaction with a modal, setting the custom_id key to "" is valid and will show a modal. This messes with the handling of a modal, because an empty identifier may break systems.

Steps to Reproduce

Respond to an interaction with a modal. Set the modal's custom_id to "".

Expected Behavior

Like components it should throw a _CUSTOM_ID_REQUIRED error.

Current Behavior

It shows the modal

Screenshots/Videos

No response

Cl...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Hi I noticce that the new divider bar from components v2 isn't display on all discord pc app

But its show on IOS mobile app version (297.0 (84480)
I sent the bar via contextmenu

Sry if Im the wrong place to report it

Steps to Reproduce

Sent a divider alone with application

Expected Behavior

Seeing the divider bar like on mobile

Current Behavior

We can't see the bar

Screenshots/Videos

On PC apps :
On reply :
Send alone as a msg :

On mobile app :
...

chilly siloBOT
chilly siloBOT
#

@Soulivan71 they are called "Separator components" for a reason. If it has nothing to separate then why would it be visible?

imo it is more of a bug that in mobile it displays a line.

Edit: you should add all app versions of all devices/clients used for reference, you haven't included the mobile app version for now.
Hello !
I think its nice to have a possibility to ad a separator alone. But in both sense its a bug (if its not intended (shouldn't be...

#

@Soulivan71 they are called "Separator components" for a reason. If it has nothing to separate then why would it be visible?
imo it is more of a bug that in mobile it displays a line.
Edit: you should add all app versions of all devices/clients used for reference, you haven't included the mobile app version for now.

Hello ! I think its nice to have a possibility to ad a separator alone. But in both sense its a bug (if its not intended (shouldn...

chilly siloBOT
#

@Soulivan71 they are called "Separator components" for a reason. If it has nothing to separate then why would it be visible?
imo it is more of a bug that in mobile it displays a line.
Edit: you should add all app versions of all devices/clients used for reference, you haven't included the mobile app version for now.

Hello ! I think its nice to have a possibility to ad a separator alone. But in both sense its a bug (if its not in...

chilly siloBOT
#

Thanks for the PR. Two things:

One

I was testing this out, because I wanted to see how it works. message_reference can't be sent on it's own if it's a FORWARD (1) request, but not a DEFAULT (0). If it's a DEFAULT (reply), it has to have some of the other values.

I'm wondering if we should make this something like:

When creating a message, apps must provide a value for **at least one of** `content`, `embeds`, `sticker_ids`, `components`, `files[n]`, forwarding `message...
#

๐Ÿค” that seems confusing to me, since a message_reference is the way to create forwarded message, this reads like a forwarded message is something else.

Also, a forwarded message through the message_reference is (afaik) the only way to only have a message_reference as the only specified value in that list, so saying you can have it as the only value is not always correct.

i.e. this works:

curl -X POST "https://discord.com/api/v10/channels/$CHANNEL_ID/messages" \
  ...
#

Hi there! This feature is working-as-designed today.

  • On desktop, the Separator is sized to match its sibling components. In the edge case where there are no siblings, as in this report, it effectively collapses to zero-width.
  • On mobile, components are always full-width so the divider is visible.

We'll consider nicer handling of the separator component sent by itself for a future update, but for now we recommend you always use the Separator with other components. Thanks!

#

Hi there! This feature is working-as-designed today.

  • On desktop, the Separator is sized to match its sibling components. In the edge case where there are no siblings, as in this report, it effectively collapses to zero-width.
  • On mobile, components are always full-width so the divider is visible.

We'll consider nicer handling of the separator component sent by itself for a future update, but for now we recommend you always use the Separator with other components. Thanks!

Thx...

chilly siloBOT
#

This reads like you need to implement both https://discord.com/api/v10/partner-sdk/token/bot and https://discord.com/api/v10/partner-sdk/token if you are doing server side authentication (which I'm pretty sure isn't true - correct me if wrong?)

My thought to split this up would be to have two ### Provisional Account Authentication for Servers headings, maybe something like:

### Server Authentication with Account Systems

:::info
This is the recommended approach as it provides the ...
#
To merge provisional accounts, include `external_auth_type` and `external_auth_token` values with a request to `/oauth2/token`. Discord will look up the Provisional User associated with the provided identity and attempt to merge it in to the full Discord account that generated the provided `code`.

Nit: saying words like "easy" and "simple" on things can be frustrating for the end user, in case they actually aren't easy or simple for them. I shy away from subjective adjectiv...

#
```python
# filepath: your_game/server/auth.py
import requests
from models import GameAccount

def get_provisional_token(game_account: GameAccount):
  response = requests.post(
    'https://discord.com/api/v10/partner-sdk/token/bot',
    json={
      'external_user_id': game_account.id,       # your account system's unique id
      'preferred_global_name': game_account.display_name, # your account system's display name for the user
    }
  )
  return response.json()
chilly siloBOT
#

Hello, thank you for the report! I think this is all working as intended. Will you please provide more detail on the specific app connections involved?

In the repro video I see that the user has claimed two linked roles, and both of these roles show up on their server profile as intended (quickly scrolled past at 0:09).

To my knowledge, App connections themselves do not show up in the Connections section of the profile - only our older connections do, and their visibility is controlled ...

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

Was just directed here by a friend. Surprised that this isn't properly handled on a platform with as much traffic as Discord sees.

please consult this documentation discord.com/developers/docs/topics/rate-limits#invalid-request-limit-aka-cloudflare-bans

Large applications, especially those that can potentially make 10,000 requests per 10 minutes (a sustained 16 to 17 requests per second)...

chilly siloBOT
#
chilly siloBOT
chilly siloBOT
#

Was just directed here by a friend. Surprised that this isn't properly handled on a platform with as much traffic as Discord sees.

please consult this documentation discord.com/developers/docs/topics/rate-limits#invalid-request-limit-aka-cloudflare-bans

Large applications, especially those that can potentially make 10,000 requests per 10 minutes (a sustained 16 to 17 requests per...

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

Currently, the Discord API only allows permissions to be redefined at the parent command level.
Subcommands automatically inherit the permission set of their parent command, and there is currently no mechanism to define individual permissions for each subcommand separately.

This limitation makes it difficult to implement fine-grained access control in applications where different subcommands of the same parent command require different levels of permissions.

For example: ...

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