#github-notifications

1 messages ยท Page 13 of 1

chilly siloBOT
chilly siloBOT
#

Description

Forwarding a cross-posted message from a followed announcement channel causes a 500.

Steps to Reproduce

  1. Locate a cross-posted message that was published from a followed announcement channel.
  2. Attempt to forward the message by sending a new message, either via the API or the client.
curl -X POST https://discord.com/api/v9/channels//messages \
-H 'Content-Type: application/json' \
-H 'Authorization: ' \
-d '{"message_reference":{"guild_id":"","channel_id"...
chilly siloBOT
chilly siloBOT
#

Re-opening this issue as it persists for specific messages. For example, an engineer can likely reproduce it by attempting to forward a copy of the message with channel_id=617201058502148096 and message_id=1316858857133178981. I have been informed that this is a known internal issue, but keeping this issue open could help prioritize it and prevent duplicate reports. Iโ€™m happy to provide any additional details that may help resolve it.

chilly siloBOT
#

Description

Problem: Creating group dms automatically adds in apps that when they first introduce u are able to add apps into group dms / private dms (Now i want to disable them to be added automatically)

Steps taken:
(going to user settings and deauthorizing them)
I had try adding the apps back into the group dm and deleting them but they still come back like a zombie.
I had try blocking them they still come back
I had try reauthorizing them and then deauthorize them they stil...

chilly siloBOT
#

Description

Discord doesn't localize the slashcommand names in message references created by `` (https://discord.com/developers/docs/reference#message-formatting).

Steps to Reproduce

  1. Grab slashcommand name and its respective id
  2. Create message reference by ``
  3. Send the message in the client

Expected Behavior

It would be expected behaviour that the message reference uses the localized name of the slashcommand according to the set language in the client (if such langu...

chilly siloBOT
chilly siloBOT
#

Description

I've noticed with Thai. When you respond to an interaction with a big payload, Discord fails to respond and gives a seemingly incorrect error codeโ€”unknown interaction. The window to reply is not being exceededโ€”the error is given immediately.

When sending the same payload as a message in a channel, Discord returns an internal server error.

In English, this works fine, and bigger payloads work fine. It sounds like the issue is when the data is sent to Discord, only then...

chilly siloBOT
#

Description

When verifying an endpoint for HTTP interactions, the PING request (Interaction Type 1) must be acknowledged directly via an HTTP response with a status 200 and a PONG payload (Interaction Callback Type 1). Attempting to respond via the callback endpoint (POST /interactions/:id/:token/callback) instead results in a 404 error, causing endpoint verification to fail.

It was recommended by a Discord staff to open an issue so this behavior can be re-evaluated.

Steps to R...

chilly siloBOT
#

Additional context that led to the creation of this ticket:

This is technically true. Given the fact that we opened up to recommending use of the callback endpoint for debuggability / general use, especially given it returns data now, we should re-evaluate if this requirement (response via http response vs callback) is still desired.
My guess is this fell through the cracks.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Sometimes when I use a slash command in DMs with my bot, it says "No scopes were provided", and does not send anything to my bot. The command works perfectly when the data does send to the bot.

I think the problem occurs when I initiate the command through the blue clickable "Commands" button at the bottom right of the DM. If I click this button and then click my command, when I try to send it gives me the error. However if I initiate the command just through typing, it seems to work just ...

chilly siloBOT
#

Description

The Last-Modified header has been used to see when assets such as avatars, guild icons, and banners were initially uploaded.

Sometime in November I noticed that the date would randomly switch back and forth between the real date and the current time. (which would also change if you added or changed the ?size= query parameter (or any query parameter), and seems to be on a cache schedule)

As of December, the current/cached time is always returned.

Steps to Reprod...

chilly siloBOT
chilly siloBOT
#

So like i think a couple years ago, group dms have this "hey you can add an app into group dms now, and i click it and add some random ones". And from that point on thing doesnt go away. It does feel remnants of an old experiment.

I cant reproduce it anymore because there is no longer a notification that just bumps up in group dms and ask u to add apps

Video of error
https://youtu.be/uiSO15IbOvE
The help center links to this:
https://support.discord.com/hc/en-us/articles/151041892801...

chilly siloBOT
#

Currently, the Discord API allows developers to retrieve user avatar decorations through the User object. However, there is no support for retrieving a user's Profile Effect, despite it being a notable visual feature of profiles. Adding this capability would enhance the API's utility for bots and integrations that aim to display or interact with user profiles comprehensively.

Use Cases:

  • User Profile Displays: Bots and ...
chilly siloBOT
#

I just have no idea how to enter a newline on web/native client. None of: Shift+Enter, Ctrl+Enter, Alt+Enter work. Also tried copying a newline to the clipboard and pasting, it just comes out as a space

This is a "hack", but I found out that currently you can pass multiline strings seemingly only if you enter those newlines before the argument box appears.

One way to do this is to prepare your argument value, and then type argument name with ":" in front of it. So if the argument's na...

chilly siloBOT
chilly siloBOT
#

Description

See the thread in discord's dev support server. Else, read below:
https://discord.com/channels/613425648685547541/1318784803289563166

I noticed that my bot has a strange discrepancy in stated values of how many servers have installed the app. The dev portal states around 170 servers:

Screenshot_20241219-144414

However, viewing my app in the public app directory displays a value that ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Context: https://discord.com/developers/docs/topics/permissions#permissions-bitwise-permission-flags

Seems like there are some improvements that could be made to this table. I'm not familiar enough with things to make an exhaustive list but here are some things I noticed that at least to my knowledge could be improved:

  • A legend should be added to define T, V, and S for better clarity (particularly for converting between ChannelType and these)
  • ADD_REACTIONS sho...
chilly siloBOT
#
md5

It would be great if there were guild-specific scopes that an application could request instead of guilds and guilds.members.read. I'm thinking these would be something like guilds(12345) and guilds(12345).members.read, meaning that the scope would only allow reading guild information and membership/roles for guild 12345. The goal would be to allow fetching a user's roles within a specific guild with a known id without having to ask them for permission to see all of the guilds they...

chilly siloBOT
chilly siloBOT
#

I am experiencing this issue for an HTTP interaction-based application as well.

curl "https://discord.com/api/v10/applications/@me" \
  -H "Authorization: Bot $DISCORD_TOKEN" | jq ".approximate_guild_count"

Output: 0

curl "https://discord.com/api/v10/application-directory-static/applications/$APP_ID" | jq .directory_entry.guild_count

Output: 252

chilly siloBOT
chilly siloBOT
#

Description

All JSON Params when calling the route Modify a channel seems optional based on testing and what I see on the developer tools when using Discord Client. However, when we look the documentation, some of them are indicated as required like the name. Is it intended or a real error ?

I've tested while trying to edit a forum post by providing only applied_tags or to edit a channel by providing only `topic...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

In a follow-up from this issue that was temporarily fixed in 2023, https://github.com/discord/discord-api-docs/issues/6180, some invites from discoverable servers once again have the no-index markup applied to them, causing server invites to disappear from Google as search engines are blocked from crawling invite links.

Steps to Reproduce

Discord staff can check X-Robot tags in discord invite links. Here is one example from Google's Rich Results Test: https://search.goo...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When I send a SET_USER_VOICE_SETTINGS command to my RPC application (using pypresence library), the volume value I'm sending is not the one displayed on my discord client.
Valeurs discord.xlsx

Steps to Reproduce

  1. Create a application and connect to it in RPC
  2. Send a SET_USER_VOICE_SETTINGS command with arg : "volume" = [int between 0 and 200]

Expected Behavior

Sending the value "...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Hi, ANSI codeblocks inside an embed appears buggy when the message is edited.
What it exactly does is that for a short time, the ANSI is not formatted and shows the raw text

Steps to Reproduce

Put a codeblock with ANSI language in it inside an embed, edit that embed every x time

Expected Behavior

Like in a normal message, but inside an embed.

https://github.com/user-attachments/assets/1375e953-43b5-4de3-8631-d5549986d5cf

Current Behavior

Buggy when t...

chilly siloBOT
#

Iโ€™d like to suggest two new API endpoints to improve role management and member fetching in large guilds:

Bulk Role Management
A new endpoint for bulk assigning/removing roles to multiple members at once with bots.
Example:
POST /guilds/:guildId/roles/:roleId/members/bulk
DELETE /guilds/:guildId/roles/:roleId/members/bulk

{
   "ids": [ "123", "456" ]
}

Fetch Members by Role
An endpoint to retrieve all members with a specific role.
Example:
`GET /guild...

chilly siloBOT
#

Description

I have an application that I only authorized with the webhook.incoming scope. However, the integrations tab incorrectly states that the app's bot is in the server.

Steps to Reproduce

Authorize an app to a server with only the webhook.incoming scope

Expected Behavior

The integrations tab shows the app's webhooks, but does not claim that it has a bot in the server

Current Behavior

It says the app's bot is in the server and seems to list the @everyone permiss...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

not sure if it makes sense to include the thread types here, since threads don't have permission overwrites (they just inherit from their parent channels).

also should include GUILD_MEDIA under text, its basically the same as a forum

| Channel Type (Abbreviated) | Description | Channel Types                                            |
|----------------------------|-------------|----------------------------------------------------------|
| T                          |...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The documents are a bit ambiguous when it comes to encryption modes and how to generate nonces for these modes: https://discord.com/developers/docs/topics/voice-connections#transport-encryption-and-sending-voice

I have an issue where I am using the gateway and voice gateway, and opening a UDP connection and streaming an audio file that is Opus encoded with a 48khz sample rate on 2 channels. I have confirmed that encryption/decryption works using the format as specified by the docs for AES ...

chilly siloBOT
chilly siloBOT
#

Description

Opus encoded audio packets are not being played back when sent to the UDP connection.

Steps to Reproduce

Use AES-256 GCM encryption on the 2-channel 48khz Opus encoded audio, send the chunks at a 20ms frame time, the UDP connection will remain open and send report packets, and accept your packets but will not play the audio back.

Expected Behavior

The app should be playing back the audio that I am sending to the UDP connection.

Current Behavior

The UDP conne...

chilly siloBOT
chilly siloBOT
#

Hello,

You should be able to get more information on the failure by looking at the webrtc log of one of the receiving clients.
You can find the webrtc log by navigating to Settings > Voice & Video > Debug Logging > Show Folder
The file should be called discord-webrtc_0

There could be multiple reasons the audio is not playing back, are you using an implementation of libdave to negotiate the key and to encrypt the frames?

chilly siloBOT
#

I haven't implemented DAVE at all, I could try to do that and see if it helps. I had thought from reading the documentation that there is still automatic downgrading to regular transport encryption to accommodate clients that don't support DAVE, but perhaps I am either mistaken or I just misunderstood the wording.

I have to admit I've never seen these logs before, so I am not 100% sure what to be looking for, so I will upload them here.
[discord-webrtc_0.txt](https://github.com/user-atta...

chilly siloBOT
#

Yeah, I don't see anything suspicious in that log, there must be an issue with your negotiation code.

Make sure you've followed the documentation at https://discord.com/developers/docs/topics/voice-connections and there are also multiple open source implementations you could validate your code against.

Regarding DAVE, you are correct that we are currently downgrading calls with unsupporting clients, however this is only temporary during the transition phase and DAVE will become required...

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

@Atlante45 I can confirm with the webrtc logs that the call is getting downgraded when the bot joins, and I see these logs:

[2025-01-10 15:09:29.774] [14760] JS console: [RTCConnection(219182306869379072, default)] Preparing DAVE protocol transition: 1, protocol version: 0
[2025-01-10 15:09:29.774] [14992] (connection.cpp:698): Setting decryptor key ratchet for user: 1246669959858225253, protocol version: 0
[2025-01-10 15:09:29.774] [14992] (decryptor.cpp:20): Transitioning to new key...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I noticed when I called /channels//threads/archived/public on a Channel that was recently turned into an Announcement Channel, it did not give me all the Archived Threads, only Archived Threads after it became an Announcement Channel. I tried to turn it into a Regular Channel, and then it did give me the other Threads, but not the ones made while it was an Announcement Channel.

I believe this issue is caused because the API probably only searches for ANNOUNCEMENT_THREAD ...

chilly siloBOT
#

Solution 2: When converting from Text Channel (0) to Announcement Channel (5), convert all PUBLIC_THREAD (11) to ANNOUNCEMENT_THREAD (10), and vice versa. All current PUBLIC_THREAD (11) and ANNOUNCEMENT_THREAD (10) would need to be converted to their appropriate type, this might consume excessive resources, which is why I would recommend Solution 1

I want to add that solution 2 would be a breaking change from the [documented behavior](https://discord.com/developers/docs/resources/channel...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This is by-design. The Discord UI exposes a "perceptual" volume level, which has a non-linear relationship with the actual underlying amplitude. The exact function used for the conversion isn't specified, and may change in the future; RPC clients shouldn't rely on it. The APC API exposes the underlying linear amplitude value, so its behavior is guaranteed to remain stable. If exposing this value to a user in a slider or similar UI element, I'd suggest applying your own perceptual curve (a pow...

chilly siloBOT
#

Hello I am wondering why this feature doesn't exist but to delete someone's message in dms
(imagine someone sends you a NSFW picture yes you can sensor it but if you click the magnifying glass on your phone you can still see it, even if you block the person so the best operation is to delete it so please new feature please I beg of you other platforms have it why can't you)

chilly siloBOT
chilly siloBOT
#

Hi everyone.
I am working on implementing subscription payments on a discord app and I am stuck at the point where I need to test the subscription workflow from the moment when a user subscribes to the moment where the user cancels the subscription or is getting renewed.
As I understand the documentation, there isn't a way to test trigger the events generated by subscription create/update/delete apart from subscribing from a dev account to make it free. With that said and done, you are stuc...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

As a Discord Activity developer, we need more comprehensive analytics to better understand user engagement and improve our games. Currently, the Developer Portal only shows basic install metrics (user count and server installs), which isn't enough for meaningful optimization. Key metrics we're missing such as:

  • Concurrent player count
  • User session data (number of sessions, session length)
  • Retention rates (daily/weekly/monthly)
  • More detailed analytics dashboard with visual data
    -...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When a GitHub user changes their profile picture, the messages displayed in discord through the webhook will still contain the old image.

Here is an example payload:

{
  "ref": "refs/heads/main",
  "before": "53a83cf7b0d9ff9b427462b8b057fb7ba9c9e660",
  "after": "fad4f7a34e89902542fdbdc7207c2c2c1c61363f",
  "repository": {
    "id": 917289629,
    "node_id": "R_kgDONqy6nQ",
    "name": "PSDownloader",
    "full_name": "LordBubblesDev/PSDownloader",
    "private": f...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Summary:
We propose adding a feature to the Discord API that allows bots to identify which invitation link a user used to join a server. This functionality would significantly enhance community management and automation capabilities.

Use Case:
Our NGO, "Children of Regions," actively uses Discord to manage a community of over 500 active users and 35+ team-based sub-servers. Tracking invitation links would allow us to synchronize our databases, automate onboarding processes, and provide t...

chilly siloBOT
#

Description

If you create an application command with an auto-complete option as the first argument, and an argument with set choices as another argument, auto-complete requests for the first argument will fail due to the other argument not having a valid value, despite the user not getting to that option yet.

Please find attached screenshots of the failed auto-complete on the web client, and the auto-complete request body and response.

Steps to Reproduce

  1. Create an application ...
chilly siloBOT
chilly siloBOT
#

I've have had the same issue as well;
Suddenly two days ago, the autocomplete functionality for first argument started to fail loading, and I've been unable to locate any clues to why this is happening;
This command has one autocomplete as first parameter, and one choices as third parameter.
Testing it now by explicitly setting the third option to a valid choice allows the first parameter to properly autocomplete.

chilly siloBOT
chilly siloBOT
#

Soooooooo.. When the user starts typing and auto-completing the first argument, the command system tries to validate all required arguments for the interaction.
Since the second argument is required but has not yet been set to a valid choice, the auto-complete request fails. This happens because the system sees the second argument as "invalid" for the request, even though the user hasn't reached it yet.

auto-complete request fails because all required arguments are validated...
yes, even ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Pretty sure it's intentional?
Activities are now also classed as External Apps if they haven't been added (authorized) to the Server in question. Therefore, they are also affected by the USE_EXTERNAL_APPS Permission just like other types of external Apps (such as User Apps).

I guess if you want to still allow your Server Members to use Activities in your Voice Channels, grant the USE_EXTERNAL_APPS Permission as a Permission override in the Voice Channels (if you don't want to do so globa...

#

Pretty sure it's intentional? Activities are now also classed as External Apps if they haven't been added (authorized) to the Server in question. Therefore, they are also affected by the USE_EXTERNAL_APPS Permission just like other types of external Apps (such as User Apps).

I guess if you want to still allow your Server Members to use Activities in your Voice Channels, grant the USE_EXTERNAL_APPS Permission as a Permission override in the Voice Channels (if you don't want to do so...

#

It is intentional that when Use External Apps is disabled, users cannot use apps (including activities) unless they have not been added to the server. It's recommended to keep Use External Apps enabled, but if you want, you can turn it off and add all the activities you want to the server. For more info on app-related permissions, see https://support-apps.discord.com/hc/en-us/articles/26501864012951-Moderating-Apps-on-Discord

#

It is intentional that when Use External Apps is disabled, users cannot use apps (including activities) unless they have not been added to the server. It's recommended to keep Use External Apps enabled, but if you want, you can turn it off and add all the activities you want to the server. For more info on app-related permissions, see https://support-apps.discord.com/hc/en-us/articles/26501864012951-Moderating-Apps-on-Discord

I can still understand that you can't run third-party activities...

#

It is intentional that when Use External Apps is disabled, users cannot use apps (including activities) unless they have not been added to the server. It's recommended to keep Use External Apps enabled, but if you want, you can turn it off and add all the activities you want to the server. For more info on app-related permissions, see https://support-apps.discord.com/hc/en-us/articles/26501864012951-Moderating-Apps-on-Discord

If the permission "Use Activities" already exists, why not add t...

chilly siloBOT
#

This behavior is intentional as there is no distinction made between first party and third party activities, and there is no distinction between activities and other kinds of user-installable apps, closing this issue out as working as intended.

To clarify the way this works: USE_ACTIVITIES and USE_APPLICATION_COMMANDS are permissions used to control access to specific features of applications of any type. USE_EXTERNAL_APPS is used to control the use of external applications as a whol...

chilly siloBOT
chilly siloBOT
#

Description

When using the guild.filesize_limit attribute as a limit to the filesize uploaded by your discord bot, you're met with a "Payload too large" error instead, despite the file being well under the limit.

This worked only a month ago.

Steps to Reproduce

# Get the channel
channel = bot.get_channel(channel_id)

# Get the limit
limit = channel.guild.filesize_limit

# Upload a file which SHOULD work. I used a 17mb file in a 25mb limit server/channel
discord_file = d...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

and that is, I have a choice between writing custom anti-spam bot, because through User-apps, for which this permission is responsible, some users spamming, or adding all official activities to the server, which is about 20 pieces and adding new ones each time they exit.

You donโ€™t need a custom bot for that. Automod is perfectly capable of moderating spam, even if done through user-apps. You just need to enable and configure it.

chilly siloBOT
chilly siloBOT
#

I don't like it being tied to both user apps and activities because voice channels are also message channels so this means you either get both user apps and activities or you get none.

A lot of servers have been disabling the use external apps permission by default because of how abusive it can be used.
It would be in Discords best interest to clarify these 2 permissions and at least split the up from user apps.

chilly siloBOT
#

This is due to the image being cached on our CDN for efficiency reasons, and because github doesn't create a new url for the newer image, it instead just serves the new image from the same url. It takes some time for the image to leave the cache (up to a couple days), but after that it should update to the newer image when our media proxy re-fetches the image. It's unfortunately not feasible for us to change this behavior on our end, you can try opening an issue with github asking them to add...

chilly siloBOT
#

It actually caches it for one entire year, not "a couple of days".

Image

It caches the image locally, because this Cache-Control directive instructs the Browser to cache it for that duration. This can lead to the avatar being up to an entire year out of date (fixed by using a different device).

Personally, I solved it by making a Webhook Proxy server that sits between GitHub and Discord, fetches 50 bytes of...

chilly siloBOT
#

This is due to the image being cached on our CDN for efficiency reasons, and because github doesn't create a new url for the newer image, it instead just serves the new image from the same url. It takes some time for the image to leave the cache (up to a couple days), but after that it should update to the newer image when our media proxy re-fetches the image.

Yes, I agree that it should be this way, as written in my post under Expected behavior, unfortunately, the current behavior is th...

#

Thanks everyone for this report + comments! This bug popped up as a result of some validation fixes + cleanup, and tests didn't catch this specific scenario -.-

I've pushed a fix to Canary + PTB for the examples in this thread. Please let me know if any of your autocomplete commands are still failing validation but were working last week.

Hey Auralytical, thanks for following up! Just tested in Canary Discord. It still don't work and also stopped working in Mobile Devices as well!

chilly siloBOT
#

I am also struggling with this.

There is no way to sandbox the full process.
I have had issues all the way through the process and wish the documentation was more thorough with more explanation.

Making more temporary guilds to test the full work flow is not very efficient and pulls on discords resources, personally I think more love needs to go into the app subscription (I am looking for guild subscriptions).

If sandboxing to test the full work flow and documentation was better I th...

#

Oh man I am pulling my hair out with this.

Trying to create test entitlements and getting this

ERROR - Failed to create test entitlement: Failed to create test entitlement: {"message": "405: Method Not Allowed", "code": 0}

I am probably overlooking something but been at this for days now.

Here is the script if someone more experienced can help me i would be grateful.

import logging
from nextcord.ext import commands
from nextcord import Guild
import aiohttp
import os
fro...

chilly siloBOT
#

I totally agree with you.
I have asked on many Discord servers where developers chat and had no response.
In documentation you are told that Entitlements are assigned to guilds/users and prove access to an SKU. You also get subscription updates which should NOT be used as a proof of access to that SKU but they do show you some state of the subscription.
It is all over the place in terms of checking subscription access, sku access, end_at: is populated when the subscription has ended in the...

chilly siloBOT
#

Bringing this up again in 2025 because it's more relevant than ever. AutoMod rules are a great tool for intercepting and moderating messages before theyโ€™re sent in the chat. However, there are significant gaps in how they function, or at least how theyโ€™re documented. For example, the execution order of rules is unclear, and itโ€™s not fully explained how "allowlists" interact with wildcards (wildcards seem to consume characters, which can create vulnerabilities).

Thereโ€™s also no built-in "a...

#

The stuff you mention thatโ€˜s missing/not working as expected for keywords can be done through using regex-patterns instead.
The stuff you ask for with having an event sent from the gateway and needing a response from your app before the message actually gets displayed in discord is indeed very latency inducing and puts a lot of strain on the API. Especially since it can already be accomplished by listening to MESSAGE_CREATE event and doing the appropriate actions you want to do based on that.

chilly siloBOT
#

I figured out my issue it refuses to get the application id from the environment variables, its been a pita.

I can not create a bloody test entitlement DEBUG - Response Text: {"message": "An entitlement has already been granted for this resource", "code": 40074}

This is because I have to wait for a month for the test subscription to be deleted when subscribing to see how the workflow works and the json returned, basically with the limited documentation I did not fully understand the pro...

#

Description

AutoMod rules can be bypassed when an allowlist contains wildcards, and users write forbidden words or links without spaces. This allows users to circumvent filtering (e.g., links) while still permitting links from specific domains such as discord.com.

Proposed Solutions

  1. Default Behavior Adjustment:

    • Ensure that the allowlist wildcards only consume the characters explicitly matched by the regex.
  2. Enhanced Wildcard Options:

    • Add a + c...
chilly siloBOT
#

There is an api endpoint for deleting test entitlements.
If you make a purchase through the in-app menu, you do have to wait a monthโ€ฆ.

Sent from Outlook for iOShttps://aka.ms/o0ukef


From: Liam Gibbins @.>
Sent: Thursday, January 23, 2025 10:52:56 AM
To: discord/discord-api-docs @.
>
Cc: ThisIsSparta @.>; Author @.>
Subject: Re: [discord/discord-api-docs] Subscription Workflow Tests (Discussion #7345)

I figure...

#

The issue with MESSAGE_CREATE is, that the message exists.
At the time the bot receives the event, the message is already there. And if there is a big latency to the bot or API could it take a while for it to be processed and subsequently removed, if something like an Anti-ad is triggered.

Additionally could the client also lag behind and not have the message removed. This is an issue that appears very frequently on the client where messages that get deleted the moment they were posted ...

chilly siloBOT
#

I appreciate the points you have raised. However, your response suggests that you didn't take the time to read the operator's message, and my response entirely. I would like to clarify that, while regex patterns can be powerful tools, they would not fully address the specific needs described in the proposal. That is, to prevent the action from being performed, before it is performed. (Authoritative verification)

I don't agree that the proposed solution would make considerable demands on th...

chilly siloBOT
chilly siloBOT
#

And your response suggests you donโ€™t seem to know that automod rules can be based on regex patterns. So your points about regex not helping is void.

Regex has its limits. It's especially bad for when you want to do thinks like link filters where either only specific links are allowed or not allowed.
The resulting regex could be tediously huge, or there could be edge cases it won't catch.

Like I had a regex used for discord invites, but forgot to make http(s):// optional, so people ...

chilly siloBOT
chilly siloBOT
#

And your response suggests you don't seem to know that automod rules can be based on regex patterns. So your points about regex not helping is void.

Dear Qjuh, defender of the regex kingdom,
Your proclamations echo with misplaced wisdom.
You wield regex as if it's Excalibur's might,
But fail to see its dull edge in this fight.

Did you read the issue, or just skim with haste?
For your words reveal much intellectual waste.
Regex, my friend, is but a tool in the chest,
And not ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I agree with custom automod actions to simply send events to bots, but bots will never be able to conditionally block messages from being sent. Message sending has to be fast and waiting for a response from a bot is way too slow for that.

Here's a potential response to the Discord staff:


I understand the concerns about speed and the need for messages to be sent quickly. However, introducing such a feature wouldn't necessarily slow things down more than the existing 1-second min...

#

Introducing such a feature wouldn't necessarily slow things down more than the existing 1-second minimum delay from slow mode. Discord could implement a configurable delay with a fallback system to mitigate the potential for latency.

For example, this functionality could be selectively enabled for specific scenarios, such as when a message contains certain keywords, phrases, or regex patterns that trigger AutoMod rules. In these cases, an event could be sent to the bot to allow for more nu...

#

Trying to mitigate false positive of an automatic solution with another automatic solution only introduces other false positives/negatives. It doesnโ€™t solve anything. You already receive an event when the automod hits and can decide to take action based on that (including alerting someone that it might be a false positive or undoing a timeout automod made or โ€ฆ).

#

Trying to mitigate false positive of an automatic solution with another automatic solution only introduces other false positives/negatives. It doesn't solve anything. You already receive an event when the automod hits and can decide to take action based on that (including alerting someone that it might be a false positive or undoing a timeout automod made or โ€ฆ).

I understand your point, but you're fundamentally mistaken because you're comparing apples to oranges. The metaphor here is tha...

chilly siloBOT
#

Thanks everyone for this report + comments! This bug popped up as a result of some validation fixes + cleanup, and tests didn't catch this specific scenario -.-

I've pushed a fix to Canary + PTB for the examples in this thread. Please let me know if any of your autocomplete commands are still failing validation but were working last week.

Seems to work for me on canary 362011 (125f4be), thanks!!

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Discord's API is designed around predefined actions. Custom premoderation actions would break that pattern and might require a wholesale rearchitecture of API frontend and caches. GitHub, for example, has a GraphQL API, but it doesn't have a premoderation.

You're talking about API caching when we're talking about dynamic action. What's more, any new bot-related functionality intrinsically requires the addition of new routes or behaviors to the API, so your sentence doesn't really make se...

#

Discord's API is designed around predefined actions. Custom premoderation actions would break that pattern and might require a wholesale rearchitecture of API frontend and caches. GitHub, for example, has a GraphQL API, but it doesn't have a premoderation.

You're talking about API caching when we're talking about dynamic action. What's more, any new bot-related functionality intrinsically requires the addition of new routes or behaviors to the API, so your sentence doesn't really make se...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Discord RPC (https://github.com/discord/discord-rpc) and I am pretty sure the Game SDK too seem to randomly not work anymore since last night. Users of my app have been reporting that the status is not appearing under certain conditions, logs show frequent errors with code 1000 and a message "Unknown Error" when attempting to set a status with certain parameters. It appears to sometimes work and sometimes not, see "Steps to Reproduce" for when it doesn't work in my case and w...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

According to the documentation, one time purchase entitlements should be included with the INTERACTION_CREATE payload.

We had at least 3 users report this issue in our lib's support server - real purchases of SKUs were missing from payloads, while the could be successfully fetched via a REST call; I managed to reproduce this by purchasing SKUs in app test mode.

This issue ...

#

Description

Developer team members can't manage app subscriptions, but can manage one-time purchase SKUs. Admin members can manage both.
This is either missing from the documentation or is a bug.

Steps to Reproduce

  • have a Developer role in a team

  • Try to create a one-time purchase SKU (it Just Worksโ„ข๏ธ)

  • try to create a subscruption => results in a 403 error

  • have an Admin role in the team

  • you can create both types of SKUs

Expected Behavior

Developer can crea...

chilly siloBOT
#

Description

I manage a large server with over 30,000 members, where voice activity is highly active. To meet the demand for various activities, we manually added 30 different activities to avoid relying on external applications USE_EXTERNAL_APPS.

However, this has led to three significant issues:

  1. Manual Setup Challenges
    Adding activity integrations manually (non-bot) is cumbersome and time-consuming.

  2. Integration Management Issues

    • The "Integrations" panel in...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

@Rodaviva29 - I'm a little surprised this affects mobile too - some of the recent changes touch shared code, but I believe most of it was specific to web/desktop o.O

Either way, if it's still broken, please post an example command and i'll look into it

@Auralytical , nevermind, when all this happened I started the development build with a different MongoDB collection and forgot about that part. >.<, thank you so much for your help! Keep it up! It wor...

chilly siloBOT
chilly siloBOT
#

Hello Discord API Team,

I have encountered an issue with how autocomplete functionality is handled in slash commands when required fields are left incomplete. The current behavior appears to validate the entire command, including required fields, before triggering the AutocompleteExecuted event. This validation results in an error and prevents the autocomplete handler from being called.

Steps to Reproduce:

  1. Create a slash command with the following structure:
  • A required field (cur...
chilly siloBOT
#

Description

My website has no embeds. It's using open graph for embeds.
The embed debugger just returns an empty embed.

Example links:

https://www.fixfiction.net/story/565869/love-and-a-photo-copier
https://www.fixfiction.net/story/556929/leaning-on-love
https://www.fixfiction.net/story/547972/pink-mended-sparkles

I can curl it just fine, and opening the links in the browser forwards them fine.
I made this to try to fix fimfiction.net embeds on Discord.

Steps to Reproduce

Send t...

chilly siloBOT
#

It appears you do not set the Content-Type header. Set it to text/html and try again. I copy pasted the html from your first link and served it myself with proper content-type and it works just fine

Image

$ curl --head 'https://www.fixfiction.net/story/565869/love-and-a-photo-copier'

HTTP/2 404
server: nginx/1.18.0 (Ubuntu)
date: Tue, 28 Jan 2025 13:39:10 GMT
content-length: 0
vary: Origin, Access-Contr...
chilly siloBOT
chilly siloBOT
#

Description

Choosing a category channel via slash commands channel option with the same name as a text/voice channel will input the text/voice channel.

This issue only happens when you don't restrict the channel type to GUILD_CATEGORY and only on mobile.

I'm unable to test on IOS.

Steps to Reproduce

Create a category channel (e.g testing)
Create a voice or text channel with the same name
Use the slash commands with a channel option without a type restriction
Select the "testing" ...

chilly siloBOT
#

I hate to revive a dead conversation, but I must opposite this as an administrator for a guild.

I don't think we should elaborate too much on what these definitions are.

Just like having a Terms of Service, having transparency on what each level is, provides value as a consumer who wishes to remain complaint and avoid punishment (reduced visibility and access).

just future frustration when they inevitably do change.

Every document is bound to change as the systems it is docume...

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

Description

Unpublishing an SKU (Switching Guild Subscription <> User Subscription) causes an infinite loading state of sku button components.

Affects desktop and web.

Making issue as per request of DV8.
Ref: #1336353036238323763 message

Steps to Reproduce

  • have a user subscription
  • send a button with the user subscription sku
  • u publish the user subscription
  • (optionally switch to a guild subscription)
  • rel...
chilly siloBOT
#

And i thought that i was getting crazy and that something was wrong on my end for the past few days. At this moment, we are facing the same issue that some thumbnails are just not showing. I'm using an RSS bot (monitorss), that fetches my news articles from WordPress whenever a new article is published.

After looking through all these wonderful comments, I can confirm that here, we are also facing the 0 width & height issue.

chilly siloBOT
#

Description

Discord's OpenID implementation supports the userinfo endpoint ( https://discord.com/api/oauth2/userinfo ) but it isn't documented in the OpenID Discovery configuration (at https://discord.com/.well-known/openid-configuration )

Steps to Reproduce

Look at Discord's OpenID Discovery, there is no userinfo endpoint listed. However userinfo can be used just fine with OIDC.

Expected Behavior

OpenID Discovery should advertise userinfo at the URL of `https://discord.co...

chilly siloBOT
#

the oEmbed spec - specifically section 2.3.4 - allows for additional fields, not defined in the spec itself:
Providers may optionally include any parameters not specified in this document (so long as they use the same key-value format) and consumers may choose to ignore these.
it would be nice if Discord supported some additional fields, like for example description or color to extend the usefulness of oEmbed to fields that discord already supports for ope...

#

Hi @DV8FromTheWorld!

We have reason to believe the fix for this caused a regression in forum threads being created via webhooks.

After roughly a year of stability, we began experiencing this issue right around the time the fix was deployed, with nothing changing on our end.

A similar issue can be found here: #6839

Pretty much on a daily basis over the last two weeks, and not ...

chilly siloBOT
chilly siloBOT
#

Description

Activities of type other than Custom don't get set for bots.

Steps to Reproduce

  1. send a Presence Update over the websocket with an activity of type Custom
    • example paylod:
{"op":3,"d":{"status":"online","since":null,"afk":false,"activities":[{"name":"Custom Status","type":4,"state":"Custom wires"}]}}
  1. it works & shows up on the profile
    1. send a Presence Update with type Playing
    • example payload:
{"op":3,"d":{"status":"on...
chilly siloBOT
chilly siloBOT
#

A webhook is attached to a specific channel. Surely the channel association alone would be enough to say "this webhook can reply to messages in this channel"? If that's not enough, what about the (bot) user that created the webhook?

In our particular use case, we use a bot user for reading messages, but a webhook for sending messages. So we would always be able to get message IDs of non-webhook-sent messages. It's just that the webhook specifically allows for added flexibility in...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This PR documents the name and command_type keys that are sent on the interaction_metadata object of a Message. Not sure why these weren't documented as the PR that added the object (#6723) did not have any discussion on it, but these are essential for the client to display the message accurately and they were present in the, now deprecated, interaction object, so I believe they are meant to stay, but would love to know why if otherwise.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hello to you discord staff !
I am writing this message to you to report a significant discord bug....

I'm not going to procrastinate.
When a discord update takes place, the "Enable Reduced Motion" option is activated (where? Settings > Accessibility > Enable Reduced Motion)

How is this disturbing?
To begin with, when we want to view a profile effect or an avatar decoration we do not see it animate.
Additionally, I no longer see gifs and images load slowly.
Finally, in the long run, it b...

chilly siloBOT
#

Description

I recieve messages for other events from GitHub, such as commits, issues, etc, so I'm certain the webhook is working properly. GitHub says that it's recieving back an HTTP 204 response from Discord.

Steps to Reproduce

  • Connect a GitHub webhook to a Discord channel
  • Test it with known working events (e.g. commit)
  • Try adding, editying, etc any Project in GitHub.
  • No message appears.

Expected Behavior

Getting a message about the projects update.

Current Be...

chilly siloBOT
#

This is working as intended because an empty string is not valid for that kind of parameter, which is technically the current value. We can make some smarter improvements to this in the future and I'll track this on our internal board.

So specifying "required": false does not refer to the parameters's value but the field itself?

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Discord gives you all sorts of info about your limits in the response to most requests. You can use this info to create these notifications yourself. See the Rate Limit Docs for more info

Rate limits are usually per "bucket" (groups of routes), and it is possible to be limited in only one bucket while not being limited in other buckets. For example, your bot might be rate limited in a specific channel due to users there spamming com...

chilly siloBOT
#

yeah but if I am rate limited I can't access the discord api to send the webhook. Literally all my bot does is use application commands then create and update/edit the embed, I only have 3 tasks happening, the commands, the roblox api checks, and the embed editing, the limit if 5 edits per 5 seconds i thought yet even if I do this proccess every 7 minutes I still get globally rate limited within 15 minutes (I am the only one using the bot and it is only handling 2 embeds)

chilly siloBOT
#

I am working on a Discord bot for Hades' Star, a popular online space strategy game. In the upcoming Hades' Star 2025.1 update, server admins will be able to configure Discord webhooks that deliver game event data solely via attached data.json files. These webhook messages consist only of the attachment. Once the update is released, my bot will rely on these attachments to process time-sensitive in-game events.

The problem is that bots must enable the MESSAGE_CONTENT intent to download the...

chilly siloBOT
#

Hi, I just completed the tutorial and also ran into some issues. I didn't see all the ones mentioned in the original issue description. Still, I wanted to confirm that without any return in the if ( type === InteractionType.MESSAGE_COMPONENT ) { block, the code falls through to unknown interaction type, and the command fails.

Also, ngrok has changed how you download their app, so the link in the tutorial goes to a 404. The new download URL is https://download.ngrok.com/. Even their 4...

#

Coming from https://github.com/dblock/discord-strava.

My users install a bot via OAuth2 flow. I obtain a Bearer token that I never need to use because the bot auth now allows me to post to the guild that has just installed the bot with Authorization: Bot discord-secret-token.

  1. I cannot seem to find a way a way to find out the user ID that completed the OAuth workflow, it doesn't seem possible.
  2. The obtained bearer token doesn't seem to be useful with any API and everything I trie...
#

A call to oauth2/token with grant_type: refresh_token will invalidate the previous refresh token. If the newly obtained token cannot be saved (say because of an intermittent infrastructure problem) there's no longer a way to obtain a refreshed Bearer token for the caller. The only way is to re-authorize that involves the user.

It should be possible to obtain a new refresh token with any (or at least some) prior valid refresh tokens.

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This was likely a misunderstanding on my part.

I use the oauth flow as a trigger to create a guild record in my database, but was only asking for bot scope and was unnecessarily saving the bearer token.

I've tried adding the identify scope now, which lets me also fetch the user that installed the bot which is what I am after. We can close this unless I'm missing something? Thanks for your help!

chilly siloBOT
#

This was likely a misunderstanding on my part.

I use the oauth flow as a trigger to create a guild record in my database, but was only asking for bot scope and was unnecessarily saving the bearer token.

I've tried adding the identify scope now, which lets me also fetch the user that installed the bot via users/@me with the bearer token, which is what I am after. We can close this unless I'm missing something? Thanks for your help!

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Reading through the documentation associated with intents there is zero mention of the GUILDS intent being a requirement to use DIRECT_MESSAGE_REACTIONS

Steps to Reproduce

Create a tiny repro with these code. Without the GatewayIntentBits.Guilds intent, your handler will never fire

import { Client, Events, GatewayIntentBits, Partials } from "discord.js";
import { ENV } from "./env...
chilly siloBOT
chilly siloBOT
#

I propose to make an opportunity where people can insert their music into their account (the opportunity can be called by a beautiful name, for example: musical mood or something else), other users can listen to an excerpt or an entire song, and understand the โ€œMusical Moodโ€ of another person, or simply understand what kind of music this or that person likes
ะ‘ะตะทั‹ะผัะฝะฝั‹ะน

chilly siloBOT
chilly siloBOT
#

Description

When sending a OPEN_OVERLAY_VOICE_SETTINGS command to the IPC, the client is supposed to return an error or null no matter what the client does, this is not what's happening in this case

Steps to Reproduce

  1. Connect to the GameSDK via IPC
  2. Send a command to open the voice setting overlay
  3. Click outside of the overlay box (do not press X)
  4. Client receives no response for the command

Expected Behavior

The client should receive the command error response as ...

chilly siloBOT
#

Description

https://discord.com/api/v10/users/ returns inaccurate rate limit headers.

The response returns a rate limit bucket with a 2000 request limit, then swaps to the rate limit bucket with an accurate rate limit of 30 requests per period.

You can prove that this second rate limit bucket is the accurate rate limit for this request (i.e. Get User) because there are tests โ€” which have handled this limit for multiple years correctly โ€” which queue over 30 Get User requests to te...

chilly siloBOT
#

Pronouns should be viewable by applications since it might help with specific applications that reference to the users, and it would be easier to use the users pronouns in their bio instead of using they/them by default of requiring the user to change their settings for that specific bot.

I'm agreeing with other people when it comes to not allowing bios to be viewed by bots since it 100% could be used for malicious purposes, but that also goes with bots in general if they can view messag...

chilly siloBOT
chilly siloBOT
#

Description

Using the Get Invite endpoint will always return the expires_at, contrary to the with_expiration query string and documentation.

Steps to Reproduce

  1. curl "https://discord.com/api/v10/invites/m4q4GGss?with_expiration=0" within the next 7 days.
  2. Check the expires_at field.

Expected Behavior

The expires_at field is null or missing.

Current Behavior

The expires_at field is always returned.

Screenshots/Videos

No response

Client and Sy...

chilly siloBOT
#

Description

New applications have both User Install and Guild Install Installation Contexts enabled. Creating a command without defining contexts or integration_types should reflect this per the documentation, but doesn't and requires toggling an Installation Context and saving to fix integration_types for new commands (but not contexts, causing it to only be used in guilds and not DMs when in user context) and manually updating both fields for existing commands.

Steps t...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Large Bots, such as my own (Birthday Bot) often have to give or take a role the same role from a list of users quite often. Typically, this can be handled fine by the existing endpoints, however, as I've noticed with one of my servers (PewDiePie's server with 191k members), at 12am, my bot needs to give the "birthday role" from, on average 38 users, and take the role from another 38 whose birthday was yesterday. This can cause rate limits, and even when handled properly, cause the bot to take...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

So i try to read another servers message history use with Discord API.

this is the API url : https://discord.com/api/v10/channels/{Channel ID}/messages

Steps to Reproduce

I try like this steps :
First of all i Reset the Bot Token and check all the Permissions.
And move to the OAuth2
And set Redirects Url like this : https://discord.com/channels/679875946597056683/679877028991860876
And set the OAuth2 URL Generator "bot"
And set the Bot Permissions is "Read Message...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Proposal

Add a new timestamp format For n time that would act similar to the format R (relative time).

Relative time (already existing in Discord):

  • 2 months ago
  • 15 days ago
  • 48 seconds ago
  • in 2 hours

Proposed format:

  • For 2 months
  • For 15 days
  • For 48 seconds
  • in 2 hours (probably stays the same idk)

Basically instead of present->point, it's point->present.

Why?

It would look nice and probably make more sense in English in the...

chilly siloBOT
#

๐Ÿ‘‹, I'm developing a Discord app where certain interactive buttons/reactions are used to trigger messages OR an ephemeral msg. Ideally, Iโ€™d like to attach a button/reaction to a public message that is only visible to users with a specific role (e.g., โ€œXYZ Roleโ€) so that the UI remains clean and professional for users who donโ€™t need or shouldnโ€™t see that button.

Currently, all message components (such as buttons & reactions) are visible to everyone who can view the message. I understand ephe...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hey folks!

Instead of fixing the existing endpoint. We're wondering if you folks can move over to the newly exposed thread search API. I'll add documentation in the API docs later for it, but for now you can reference the OpenAPI spec for the concrete specification. https://github.com/discord/discord-api-spec/commit/d9fb23dc284c368782384301429569970a4f87e0

The motivation is that our client code has been migrated to use the thread search API for a while now, and we feel that it is best both ...

chilly siloBOT
chilly siloBOT
#

Hey folks!

Instead of fixing the existing endpoint. We're wondering if you folks can move over to the newly exposed thread search API. I'll add documentation in the API docs later for it, but for now you can reference the OpenAPI spec for the concrete specification. discord/discord-api-spec@d9fb23d

The motivation is that our client code has been migrated to use the thread search API for ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I want to confirm this, running into exactly the same issue (except that it's in JS).

Original Post on Discord:

I am writing a discord API library and currently reworking my rate-limit setup. For testing, I ran ```js
while (true) {
await bot.request();
}


For some reason, the reported rate-limit buckets are wrong. I print the current bucket for each request and how many more requests are remaining in there.
If I get rate-limited, then I print some more information.

Weird things:
1. T...
chilly siloBOT
chilly siloBOT
#

Description

I have seen many servers on Discord that have more than 50 bots, reaching up to 190 bots, even though some of these servers are new. I donโ€™t know what mechanism allows adding more than 50 bots.

Image

Steps to Reproduce

This is not a bug report, but rather a question regarding Discord's bot limit per server.
I have seen servers with more than 50 bots (up to 190), and I would like to ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Create message endpoint fails with cloudflare's status code 520 when:

  • only files are supplied
  • the bigger the file size the more often it will fail
  • auth token provided is invalid

Steps to Reproduce


import httpx

size_mb = 7
size = size_mb * 1024 * 1024  # Convert MB to bytes

data = b'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'
with open("random_file.txt", 'wb+') as file:
    while size > 0:
        chunk_size = min(1024 * 1024, size)
        file.write(data ...
#

Description

In various different channels across different servers, channel history is missing.

Steps to Reproduce

Scroll up far enough or go to a pinned message, and messages will suddenly cut off.

Expected Behavior

Messages showing...? Don't know a better way to phrase it.

Current Behavior

Messages before various dates do not show.

Screenshots/Videos

These are channels that have had tons and tons of messages before the shown date in the middle.

![Image](https...

chilly siloBOT
#

An option whereby a temporary grouping is made for players when more than 1 online member is playing a specific game. To allow those playing or those in the channel to see who is playing what and group accordingly.

Currently grouping by Role only group members not mods or admin - but to have a 'group by gaming' option would group all members accordingly. Could also include auto-assigned role options based on the game being played so that Channel become visible when a certain game is dete...

chilly siloBOT
#

#Description

IPv4 address space is exhausted hence it is getting harder and harder to connect to an IPv4 network. IPv6 networks are becoming more and more common, so much so that some ISPs and some data centres are IPv6-only.

#Steps to Reproduce

Connect to discord.com on an IPv6-only network

#Expected Behavior

Discord can be used normally

#Current Behavior

Discord cannot be used at all

#Screenshots/Videos

Not required

#Client and System Information

can be reproduced on any and all ...

chilly siloBOT
#

I would expect this to work for a bot to be able to have an option that is presented to the user (as if required, not in the optional section), but can be submitted empty. The advantage to this is that the text input would automatically be in the field when the command is entered, rather than the user having to manually select the option before beginning to input a value.

I would also expect that an empty string option like this would be presented in the interaction response object as a valu...

chilly siloBOT
#

This would allow applications to use emojis from any application, or any server without being that application or being in the specific server the emoji is from.

Use-Case:

  • For bots who use a large amount of emojis, continuously having to add all development instances and production bot to each server to use the emote can be bothersome.
  • For developers that use application emojis, it's annoying to have to fetch 2 different emoji lists (or more depending on if there are multiple devel...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Hello,

I'm encountering several technical issues with my Discord bot, Angel-CashBag-AI, specifically related to slash commands, API responses, and presence tracking. Here are the key concerns:

=== 1๏ธโƒฃ Slash Command & Chat Response Issues ===

The bot frequently gets stuck on "thinking...", and responses never send.
Instead of completing the command, I get "The application did not respond."
This issue occurs with slash commands and sometimes with normal text commands.
=== 2๏ธ...

chilly siloBOT
#

Please open individual issues for any situations you've found where the API is broken or incorrectly documented, including real code snippets and logs that demonstrate the error. We cannot provide general support here, and as far as I can tell from your description, the API is working as intended. Please familiarize yourself with https://discord.com/developers/docs/events/gateway-events, https://discord.com/developers/docs/events/gateway, and https://discord.com/developers/docs/interactions...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Based on the examples given below the Allowed Mentions structure, it appears all fields are optional, though I don't see any mention of this in the definition or around it (as some do with an alert saying "all fields are optional", notably in endpoint documentation). If this is correct, the table should be updated with question marks on the fields to indicate optionalit...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

The issue described in issue #7296 is still present. Some channels are still considered onboarding channels, preventing the removal of the "view channel" permission for the @everyone role. The response is:

{"message": "Onboarding channels must be readable by everyone", "code": 350003}

### Steps to Reproduce

Turned off Onboarding and issue happened

### Expected Behavior

The channel should become hidden f...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

4 years later! Man time flies. Before the world had ever heard of Covid-19, I was told Discord would be working on this โ€œlater this yearโ€. Since then we had an entire US presidency, a global pandemic, I proposed to my partner, and now weโ€™re planning a wedding. And despite all of this, sadly there has been no progress.

As fun as it is to get led on, itโ€™s been 7 years now. Can we either implement this feature (that was going to be worked on 6 years ago), or admit that this wonโ€™t be happenin...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I have a bunch of slash commands for a big-ish server. I really really need them to sync, but they will not.

Steps to Reproduce

In this code (pretend its indented):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
1...

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

Description

Seems if you are moved the native discord overlay will break

Steps to Reproduce

  • Go to channel
  • Have Discord overlay on
  • Get moved by admin to other channel
  • Overlay breaks

Expected Behavior

Moving should allow the channel list users to not be borked

Current Behavior

Discord overlay breaks ๐Ÿ˜ญ

Screenshots/Videos

https://github.com/overlayeddev/overlayed/issues/232#issuecomment-2645791245

Client and System Information

All platforms i tested, mac...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I'm using the Discord Webhook API to post messages into a channel on my server. The message includes an image and the request succeeds, however, the image is not displayed in the channel.

Steps to Reproduce

$ curl -F 'payload_json={"content":"Test post 9 with webhook","attachments":[{"id":0,"description":"My logo","filename":"logo.png"}],"embeds":[{"description":"My logo","image":{"url":"attachment://logo.png"}}]}' -F "files[0]=@logo.png" https://discord.com/ap...
chilly siloBOT
chilly siloBOT
#

discord.py is a third-party API wrapper around the discord API, you can make calls to the Discord REST api with any http-client of your choice.

You can find documentation about the routes regarding slash command updating here: https://discord.com/developers/docs/interactions/application-commands#bulk-overwrite-global-application-commands

If you aren't sure how to operate that, perhaps a solution can be found by asking the developers or helpers of your api wrapper (discord.py) about this iss...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

When attempting to authorize a service over an OAuth2 URL (https://discord.com/oauth2/authorize), error 50035 is raised if the user's last opened guild on their client had a non-integer ID. To my knowledge, the only "guild" that meets such a condition is the Favorites guild (maybe the DM @me page would count but that doesn't cause the issue, in which case the fix for this should be rather straightforward).

  • The Favorites guild is a long unreleased feature and users sho...
chilly siloBOT
chilly siloBOT
#

Description

When using bulk_ban from d.py, when the bot attempts to ban just itself, no error is raised. Normally, it should raise a discord.HTTPException error but it did not.
Banning the bot itself with other users does raise the error, only when the bot attempts to ban just itself, no error is raised.

Steps to Reproduce

  1. Use bulk_ban to ban the bot itself
  2. Ensure that you only try to ban the bot, no other users
@bot.command()
async def bulkban(ctx, *users:discord.U...
chilly siloBOT
#

No, this is API behavior that is inconsistent with the documentation so either should be change or result in a docs change.
ref states:

If none of the users could be banned, an error response code 500000: Failed to ban users is returned instead.

This is not the case, using the REST api directly.
With 840710376831057920 being the app's ID:
A request to POST /guilds/:id/bulk-ban with the body

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hey again Grady! Yeah - due to a layered security approach, we've intentionally prevented CF workers from connecting to our Gateway sockets. I'll try to see if we can update our documentation to include this information. Thank you for taking the time to report this issue, and sorry for the inconvenience around this!

@lmle Is there any more info / articles about why this decision was made? It's a real shame not being able to connect to the gateway api from workers with durable objects...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Additional info for other people finding this issue:

The egress IP for cloudflare workers is rejected by Discord's Gateway API automatically. You could try proxying all of your worker's outgoing requests with a custom fetch function, but this will introduce unnecessary complexity and latency.

Cloudflare has a first-party product that does exactly this- changing egress IPs- however this is an Enterprise only product: Aegis.

I haven't given up on this just yet but the outlook is bleak.

chilly siloBOT
chilly siloBOT
#

There are several enums across the spec which are missing values, this either results in the specification falsely allowing any integer values, or an enum with no valid value. In the case of me trying to use code generation, it resulted in an invalid Python Literal.

  • ApplicationCommandHandler
  • EntitlementOwnerTypes
  • NameplatePalette
  • PollLayoutTypes
  • ThreadSearchTagSetting

Of course I can special-case this to automatically use the default, but this would be incorrect behaviour.

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Currently, Discord provides a way to access user avatars using the following URL structure:

https://cdn.discordapp.com/avatars//.

While this method works, it requires obtaining the avatar hash beforehand, adding an extra step when all that is needed is the most up-to-date avatar for a user.

Proposed Solution

Introduce an alternative URL format that allows retrieving the latest avatar without requiring the hash:

https://cdn.discordapp.com/avatars/.

This...

chilly siloBOT
#

Description

There appear to be memory leaks in the Discord API when the various functions are called to assign callbacks.
I specifically investigated Client::AddLogCallback() but assume other similar functions like Client::SetStatusChangedCallback() also have the same problem.

In Client::AddLogCallback(), it allocates a struct for user data:
auto callback__userData = new Tcallback__UserData(callback);

This showed up in our memory leak tracker as a leak, I hoped it was a false pos...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#
eiz

Hey, I'm not able to reproduce a memory leak but I am wondering if you are calling discordpp::RunCallbacks() in your test or not. Deletion of userdata owned by callbacks is done asynchronously to avoid running user application code on Discord internal threads, so if you never run callbacks, the memory will not be freed.

See the test below:

    std::shared_ptr<std::string> str = std::make_shared<std::string>("It exists");
    std::weak_ptr<std::string> weakStr = str;

    printf("befor...
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

I tried to catch messages with a lower case letter via (?-i)[a-z], which I understand to mean "disable case insensitivity, and match any letter from lower case 'a' to lower case 'z'".

This doesn't work at the moment, and is catching all messages with any letter a-z in it, ignoring case. Please allow us to perform case sensitive matching with (?-i), especially since it's mentioned we can do this in the FAQ: https://support.discord.com/hc/en-us/articles/10069840290711-Filter-Messages-Us...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Proposal

Make buttons officially become inactive on Discord's side, that is, when a button/select menu is not interacted with for a certain period of time, it becomes inactive and doesn't send an event to the bot. Say or month of whatever I don't really care.

Why?

This is so you don't receive old events from buttons when some idiot decides to look at channel history and randomly press a button. In some API libraries, they'll ignore the event, however you still received the even...

chilly siloBOT
#

You can disable message components on your end. In fact you can even do it retroactively. When a user clicks an "old" button you can respond to the interaction by disabling the message components and no future users will be able to interact. Weather Discord disables it or the bot disables it Discord will have to send out a message_update event. So it really will only "waste" resources for the bot if the message components are not disabled. So the bot should handle it if needed. Additionally...

chilly siloBOT
chilly siloBOT
#

Description

Commands that include premium buttons and are deferred will fail with the following error message.
I first noticed this in the morning of april first.

Bonus: There is a typo in this error message if I'm not mistaken. It should be exist instead of exists, no? I'm not a native speaker so apologies if I'm incorrect.

Steps to Reproduce

  1. Defer an interaction.
  2. Try to send premium buttons as a response to the deferred interaction.

Expected Behavior

Premium butt...

chilly siloBOT
#

Description

I get error 500 when I try to send a deferred update from modal submit. I am attaching the request body below.

When I try to change the message without defer, I get an error with the code 10062.

The error is affected by the number of characters in the embed (including the url icon), components, and their options. Symbols mean emojis, numbers, and letters.

Steps to Reproduce

  1. Reply to user command with some component
  2. Show modal on component interaction
  3. Send upd...
chilly siloBOT
chilly siloBOT
#

Description

Here's an odd one that'll make you scratch your head.
I have 3 options, values in parentheses:

  • pow 32 minus 1 (4294967295)
  • pow 32 (4294967296)
  • 32 (4294967296)

You'd expect all of those to work, but they do not. Here's what happens for each case:

  • pow 32 minus 1 works as expected.
  • pow 32 does not pass client-side validation
  • 32 passes, however the name of the option (32) gets used as the value rather than the value associated (4294967296)

I've confirmed that the o...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Hi @Noctember , what error are you seeing? It's not clear what "does not pass client-side validation" means or where in the UI you see this.

It means I cannot send any commands as the client believes the option is invalid

<img width="528" alt="Image" src="https://github.com/user-attachments/assets/9f3e737f-8d99-40c6-a54d-3eacd528ca90" />

Why are the second and third value a string and not an integer? Is that log from your code?

That screenshot is of discord's dev tools, the `APPLICATI...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#
  • Convert all pngs and jpegs to lossy webp
  • Convert some naughty SVGs to much smaller webps
  • Optimize some gifs

Overall size reduction: 147MB -> 49MB.

The 33MB worth of GIGANTIC gifs in images/social-sdk/design-guidelines/animated will need special treatment, maybe placed on our internal CDN, because they are just huge and displayed in a large format. Any attempt at optimizing them makes them look like crap.

chilly siloBOT
chilly siloBOT
#

@gabemeola Kord does POST with the values as numbers and not strings. I don't think this is related to either Kotlin or my library.

{"type":8,"data":{"choices":[{"name":"pow 32 minus 1","value":4294967295},{"name":"pow 32","value":4294967296},{"name":"32","value":4294967296}]}} 

I've also tried with Rodentman87/slashasaurus and I'm getting the same behavior:

<img width="695" alt="Image" src="https://github.com/user-attachments/assets/8...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Hello, how are you?

I would like to report an issue that has been directly affecting the administration and analysis of our server, Servidor do Igu, an active and growing community within the Discord platform.

When trying to extract data from the "How many members visited and communicated?" section on the Discord Developer Portal (), we noticed that the information returned is limited to March 2, 2025, even when applying filters with later dates. This error has persiste...

chilly siloBOT
#

Hey all,
I've noticed that when you publish a message from an announcement channel, any components, such as link buttons aren't carried over into the published copy in the following channels. I think this limits the functionality of announcements, especially when we're trying to direct people to external resources, websites, or other servers.

Suggestion: Allow certain components, specifically link buttons, to be preserved when messages are published from announcement channels. These d...

chilly siloBOT
#

Description

I'm working with making log system in my Discord bot and I have run into an issue: there are stickers and emojis actions in the auditlog that have ids:

# compressed version of event function
# everything is fine
@commands.Cog.listener()
async def on_guild_stickers_update(
    self,
    guild: disnake.Guild,
    before: Sequence[disnake.GuildSticker],
    after: Sequence[disnake.GuildSticker]
):
    embed = disnake.Embed(title="๐Ÿ–‡๏ธ Stickers Updates", timestamp=disnake...
chilly siloBOT
#

here is my contribution (still working on it ๐Ÿ˜…):

๐Ÿ‘‡๐ŸฝIssue๐Ÿ‘‡๐Ÿฝ

emoji_map = {1}
'A': '๐Ÿ˜€', 'B': '๐Ÿ˜', 'C': '๐Ÿ˜‚', 'D': '๐Ÿ˜ƒ', 'E': '๐Ÿ˜„', 'F': '๐Ÿ˜…',
'G': '๐Ÿ˜†', 'H': '๐Ÿ˜‡', 'I': '๐Ÿ˜ˆ', 'J': '๐Ÿ˜‰', 'K': '๐Ÿ˜Š', 'L': '๐Ÿ˜‹',
'M': '๐Ÿ˜Œ', 'N': '๐Ÿ˜', 'O': '๐Ÿ˜Ž', 'P': '๐Ÿ˜', 'Q': '๐Ÿ˜', 'R': '๐Ÿ˜‘',
'S': '๐Ÿ˜’', 'T': '๐Ÿ˜“', 'U': '๐Ÿ˜”', 'V': '๐Ÿ˜•', 'W': '๐Ÿ˜–', 'X': '๐Ÿ˜—',
'Y': '๐Ÿ˜˜', 'Z': '๐Ÿ˜™', ' ': '๐Ÿ˜š'

reverse_emoji_map = {2}

def encrypt_text(text):
encrypted_text = ''.join(emoji_map.get(char.upper(), char) for char in text)
return base64.b64en...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Are there any updates on this problem?

I've been having it myself. I send a couple of image URLs via webhook to Discord once a day - the image URLs are generated on-the-fly (they are graphs, based on live data) and the URLs themselves are always valid and work fine.

However, Discord only properly displays them around 50% of the time, seemingly for no reason.

Normally:

Image

When it decides to randomly n...

chilly siloBOT
#

๐Ÿ‘‡๐Ÿฝhmm according to my research and what I have been digging up, the sound IDS are seperate from the API reqests under the context that the sounds, tokens and banners are sfx and 'decorative', again this is according to my research and what I found๐Ÿ‘‡๐Ÿฝ

Difference between Sound ID and Sound Effects:
Sound ID:

A unique identifier assigned to a specific sound asset.
Used to reference and manage individual sound files within the API.
For example, a sound ID helps identify a particular sound in ope...

chilly siloBOT
#

Description

When logging into an application through OAuth 2.0/OIDC, the token endpoint returns an access, refresh, and ID token. This OIDC ID token contains only the user ID as the "sub" claim and no actual identity information. All identity information must be requested from the userinfo endpoint, and only if the user requested the "identify" scope.

This in itself is fine. However, an OIDC userinfo endpoint must return the subject ("sub") claim as per the OIDC specification:

https://...

chilly siloBOT
chilly siloBOT
#

Hi, thanks for the prompt response and fix.

Iโ€™ve rechecked the Developer Portal, and analytics data is now loading correctly across the full expected date range โ€” including the previously missing days. Everything seems to be backfilled as intended, and data is updating as expected in real time.

Iโ€™ll continue monitoring the metrics just in case any edge cases or inconsistencies pop up again, but so far everything looks stable.

Appreciate the fix and ongoing maintenance of the analytics infr...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

I have a discord OAuth bot with a callback to my server. When a user follows the URL, but switches their account by following the "not you?" link, the OAuth flow is lost and our callback is never called.

Additionally, one user reported this on an initial login using the QR code, but I have not attempted to reproduce this.

Steps to Reproduce

setup

  • Create a Application & Bot
  • Setup OAuth
  • Generate the OAuth URL with redirect_uri

user

  • Log into discord web app so ...
chilly siloBOT
#

Description

Similar to the issue described in https://github.com/discord/discord-api-docs/issues/7455#issuecomment-2790463346 , the most recent week of data shown for "How many new members retain the next week" is limited to March 24th regardless of the end date of insights.

Steps to Reproduce

  1. Visit the Growth and Activation page of server insights
  2. Set the date range to end 4/11/2025 (I used 3/1/2025 - 4/11/2025)

Expected Behavior

The most recent week of data for How m...

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

Description

IPv4 address space is exhausted hence it is getting harder and harder to connect to an IPv4 network. IPv6 networks are becoming more and more common, so much so that some ISPs and some data centres are IPv6-only.

Steps to Reproduce

Connect to discord.com on an IPv6-only network

Expected Behavior

Discord can be used normally

Current Behavior

Discord cannot be used at all

Screenshots/Videos

No response

Client and System Information

any

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

This is a major regression with primary impact on users that have never logged in Discord in their browser before. i.e.

  1. A user that has never logged into Discord on Web opens a website that allows Discord login
  2. User provides login/password
  3. User is redirected to Discord's Web App (before - user is navigated back to the site that initiated the login)
  4. User is confused and closes the Web App never logging in to the website
  5. And if we are lucky user attempts to do this one more tim...
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Additional Observations from Our End

My team and several users in our group are experiencing the same problem described in this issue. Here are our detailed findings:

  • Multiple Apps Affected:
    We use multiple apps on our site that rely on Discord OAuth2 for authentication. In all cases, after users authenticate, instead of being redirected back to our registered redirect_uri, they are taken to Discordโ€™s main interface (e.g., https://discord.com/channels/@me).

  • **Verified R...

chilly siloBOT
chilly siloBOT
#

This PR includes changelog and related updates to documentation so it can be merged atomically.

Details include:

  • The changelog for the release.
  • Updated mappings for doxygen docs.
  • Updated Provisional Account docs for Unity Services.
  • Added links on Provisional Account docs to all other services.
  • Add PlayStation4 and Xbox One support to supported platforms list.
  • Trailing spaces cleanup.
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

rtc_region is missing multiple regions such as:

  • GRU (Sรฃo Paulo, Brazil)
  • CDG (Paris, France)
  • FRA (Frankfurt, Germany)
  • WAW (Warsaw, Poland)

Steps to Reproduce

  • Try to set region from list while using API
  • Get error

Expected Behavior

List should include missing regions and allow to set region

Current Behavior

Getting this error:
`Error: 400 Bad Request (error code: 50035): Invalid Form Body
In rtc_region: Value must be one of ('brazil', 'hongkong', 'i...

chilly siloBOT
#

We tested the patch referenced shortly after it was marked as merged, and the issue still persisted at that time. However, we just re-tested against two separate apps using Discord OAuth2, and both are now functioning correctly โ€” the redirect after OAuth2 flows is working as expected.

Looks like the fix has fully propagated and resolved the issue. Thanks to the team for quickly addressing it!

chilly siloBOT
chilly siloBOT
#

botใฎๅˆถ้™50ใ‚’100ใซๅค‰ๆ›ดใ—ใŸใ„ใ€‚ๆ—ขใซdiscordใซ็”ณ่ซ‹ใ—ใพใ—ใŸใ€‚ๆ–ญใ‚‰ใ‚Œใฆใ“ใ“ใซ็”ณ่ซ‹ใ™ใ‚‹ๆง˜ใซๆกˆๅ†…ใ•ใ‚Œใพใ—ใŸใ€‚ใฉใ†ใžใ‚ˆใ‚ใ—ใใŠ้ก˜ใ„ใ—ใพใ™ใ€‚

chilly siloBOT
#

Description

I'm using OAuth2 to enable users to log in to Discord through a website I'm developing. Iโ€™ve noticed the following behavior:

If I'm already logged in to Discord in my browser, the OAuth2 login flow works correctly and redirects back to my website as expected.

However, if I'm not logged in to Discord beforehand, and I try to log in via my website using OAuth2, I get stuck on the Discord login page after entering my credentials. I don't get redirected back to my website, and ...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

If i archive a thread and then write a message in this thread, it is automatically unarchived. But the bot does not receive a thread update event. Only if you set it from unarchived to archived.

Steps to Reproduce

I tried it in Python with this event

@commands.Cog.listener()
async def on_thread_update(self, before: discord.Thread, after: discord.Thread):
    if before.archived and not after.archived:
        await after.send("This thread was unarchived....
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

The thread should be cached, because a few seconds before i executed events in the thread which i also received. Only the one event did not.

If the thread got archived it's most likely for it to not be cached anymore (take a look at the note).

And also, just because you've received an event with that thread does not mean it will still be available on cache at the moment you receive the THREAD_UPDATE ...

chilly siloBOT
#

Our servers are getting completely overwhelmed with users doing this type of scam and we're banning hundreds of users every week that are doing this. Not having a bot get access to this is adding hundreds of man hours of manual work for the mod teams that need to manually check thousand of users that join our servers. The sooner we get API access to the profiles the better, it'll be more good than harm at this rate because scams are getting out of hand.

![scam profiles](https://github.com...

chilly siloBOT
#

Our servers are getting completely overwhelmed with users doing this type of scam and we're banning hundreds of users every week that are doing this. Not having a bot get access to this is adding hundreds of man hours of manual work for the mod teams that need to manually check thousand of users that join our servers. The sooner we get API access to the profiles the better, it'll be more good than harm at this rate because scams are getting out of hand.

![scam profiles](https://priva...

chilly siloBOT
#
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Iโ€™d like to propose a feature to enhance slash command usability: support for categorizing slash commands.

The Idea

Currently, slash commands are listed flatly, which can get overwhelming when a bot offers a large number of commands. My proposal is to introduce a way to group commands under categories or sections, similar to how subcommands work, but at a higher organizational level.

For example:

Edit/music play
/music pause
/music queue

/mod ban
/mod kick
/mod...
chilly siloBOT
#

With commit fe1e87af2a4075c5fb14e409bb1ce5eac53dc7cc I should have catched all broken endpoint paths. I replaced them with a placeholder, that could safely be replaced using the regular expression [|]{2}FIXME[|]{2}([^|]+)[|]{2}([^|]+)[|]{2} and an appropriate replacement pattern. I was not able to find any documentation regarding the correct format for a link within the endpoint path and therefore provided the following example workflow:

Previous markdown as reference ([archived resu...

chilly siloBOT
#

Hello,
I recently started a project on making a group of roleplay servers based on my favorite games (Genshin, HSR, WuWa, ZZZ and Project Sekai). These servers are supposed to have AI bots resembling as characters from the games ^^ Now in total I have to make 252 AI bots to achieve this. I am using Shapes.inc to create these bots since it's easy to use and fast to create bots!!! The goal of these bots are to act like the characters from the game and provide an environment for my community me...

chilly siloBOT
#

In commit 65ed3d2bc401d10317a876d285d34a85ca2345af I took a look at the Help Center links and tried to standardize them by setting the locale to English (US) as not all linked articles are available in all languages. Sometimes if an article is not available in your selected language you get redirected to the login without the possibility to change your language without knowing that you need to add it to the URL or change the language in the Help Center before visiting it. Also the developer...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Would doing this give each avatar a personality? Because each bot will have
their own personality and tone of talking.

On Mon, 21 Apr 2025, 04:46 Amgelo563, @.***> wrote:

Through a single Discord webhook, you can send a message with any avatar
and name you'd like, so you wouldn't need a different bot per AI (you
wouldn't even need a single bot). You'd have to check if the service you're
using supports that though.

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

chilly siloBOT
#
**Why is there a VITE_ prefix before our Client ID?**

Prefixing the `CLIENT_ID` environment variable with `VITE_` makes it accessible to our client-side code. This security measure ensures that only the variables you intend to be accessible in the browser are available, and all other environment variables remain private. You can read details in the [Vite documentation](https://vitejs.dev/guide/env-and-mode).
#
You should make sure to include your default value in its proper locale key, otherwise it may use a fallback value unexpectedly. For example, if your default value is `en-US`, but you don't specify the `en-US` value in your localizations, users with `en-US` selected will see the `en-GB` value if it's specified. For example, if you have a command with the default name "color", and your localizations specify only the `en-GB` value as "colour", users in the `en-US` locale will see...
chilly siloBOT
chilly siloBOT
#

The idea was impressive and I really thought this would help until I got to
know that shapes.inc doesn't support webhooks ;-;. They only support fully
made bots. It was a good idea, might implement for some other case but for
this issue, webhooks won't be able to help...

On Mon, 21 Apr 2025, 14:21 Zebby, @.***> wrote:

Yes, via use of both the username and avatar_url fields when sending
Webhook messages (Documentation link here
<https://discord.com/developers/docs/resour...

chilly siloBOT
chilly siloBOT
chilly siloBOT
#

Description

Support always answer with this generic message even tough my bot has features that CANNOT be developed by using slash commands. What are the requirements my bot needs to have to be considered as "unique, compelling, user-facing functionality"?

Unfortunately, I am denying your Message Content Privileged Intent request. This is because we are only providing access to our privileged gateway intents to power unique, compelling, user-facing functionality, and we do not belie...

chilly siloBOT
chilly siloBOT
#

So we're not going to be able to debate this over a github issue (we need to leave that to support) but I am curious - what do you want to do that you can't do with slash commands?

@JustinBeckwith Just as a context, support just doesn't help me, I've tried opening 8 different tickets, it all leads to automatic messages, never managed to actually talk with a human that can understand my use case. My bot is currently blocked from joining more servers due to not having the intent. There is no...

chilly siloBOT
#

In order to resolve my review comments from #7482, I solved them myself within this pull request. As I mentioned over there the contributing guidelines are now outdated, so this is still pending and resolved by this pull request as I'm not sure about the wording in English for :::

This explanation is also worth updating to avoid confusion

_Originally posted by @GeniusTimo in https://github.com/discord/discord-api-docs/pull/7482#discussion_r2052055800_

Also just as a note, I split...

chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
chilly siloBOT
#
| components    | array of components | Up to 10 components of the type [action row](/docs/components/reference#action-row), [text display](/docs/components/reference#text-display), [section](/docs/components/reference#section), [media gallery](/docs/components/reference#media-gallery), [separator](/docs/components/reference#separator), or [file](/docs/components/reference#file) |

(This will break the table)

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

The following changes are introduced by this pull request now:

  • Fixed broken things from pull request #7475 and #7485
    • Endpoint paths that were still broken
    • Wrong link normalization (guild_scheduled_event.id got formatted to guild-scheduled-event.id despite it was not an actual link)
    • Duplicate/trailing hash in URLs (e. g. /docs/interactions/application-commands##get-global-application-commands)
    • Duplicate parentheses (just those I noticed while working my way trough)...
chilly siloBOT
#

@anthonydiscord Sorry for bothering, but wanted to clarify something.

This payload was found in the wild a while ago which has most fields as null, is that something we would expect or behaviour that will no longer be seen:

{
  "media": {
    "url": "<readacted>",
    "proxy_url": "<readacted>",
    "width": null,
    "height": null,
    "placeholder": null,
    "placeholder_version": null,
    "content_type": null,
    "loading_state": 3,
    "flags": 0
  },
  "descr...
chilly siloBOT
#
Before the introduction of the `IS_COMPONENTS_V2` flag ([see changelog](/docs/change-log/2025-04-22-components-v2)), message components were sent in conjunction with message content. This means that you could send a message using a subset of the available components without setting the `IS_COMPONENTS_V2` flag, and the components would be included in the message content along with `content` and `embeds`.
#
    "items": [
      {
        "media": {"url": "livevideofeedconvertedtoimage/webcam1.png"},        
        "description": "An aerial view looking down on older industrial complex buildings. The main building is white with many windows and pipes running up the walls."
      },
      {
        "media": {"url": "livevideofeedconvertedtoimage/webcam2.png"},
        "description": "An aerial view of old broken buildings. Nature has begun to take root in the rooftops. A por...
#

Description

The OAuth2 documentation at https://discord.com/developers/docs/topics/oauth2 is broken and shows a React error.

Steps to Reproduce

  1. Open the OAuth2 documentation
  2. Observe the error

Expected Behavior

Being able to see and read the OAuth2 documentation

Current Behavior

The page shows a React error, saying that guild is not defined.

Screenshots/Videos

![Image](https://github.com/user-attachments/as...