MESSAGE_REACTION_REMOVE and MESSAGE_REACTION_REMOVE_EMOJI has the field emoji.animated now.
Ref: #api message
1 messages · Page 6 of 1
MESSAGE_REACTION_REMOVE and MESSAGE_REACTION_REMOVE_EMOJI has the field emoji.animated now.
Ref: #api message
you can get everything back from https://play.google.com/store/apps/details?id=com.discord
No. All data from a user profile should be accessible by bots for review and moderation concerns.
The server I moderate, which is a support server for a software service managed by the company I work for, CONSTANTLY has an influx of scam account pretending to be tech support.
As it stands, right now there is NO WAY for me to detect this user account unless I monitor literally EVERY SINGLE JOIN EVENT which is simply not acceptable.
 that has and being able to add a much higher number of emojis but only available for the...
I have a webhook that sends embeds with links in them. Inside the link I usually use escaped brackets like so: [user \[id\]](https://example.com)
The new markdown changes have broken new messages and also previous messages, so that the text shown results in user \[id\] instead of the correct user [id]
[foo \[bar\]](https://example.com)The link should show like this: [foo [bar]...
that's a good idea but it shouldn't have anything to do with badges
Right, no badge needed, just make a subsection in the Bot tab of the current Dashboard.
This is a great idea.
My bot has a feature that runs a game and I would love a slash command button to add to the final winning message to prompt the user to start another game.
Using a regular button interaction can't replace this because the game command may require args as mentioned above, but also because Discord collects slash command usage statistics to display the most popular ones on your bot's Discord profile on desktop, and on your bot's App Directory page if you have one.
Using ...
This endpoint does not use json_payload form key.
The docs indicate the 4 required keys to use in the formdata.
Also, all images have thier type included. Not a big thing to pass the type.
form.append('name', `${params.data.options[1]?.value}`);
form.append('desc', `${params.data.options[3]?.value}`);
form.append('tags', `${params.data.options[2]?.value}`);
form.append('file', new Blob([newBuffer], { type: `${type}` }), `${sticker.filename}`);
Would be awesome if locale node was present in reactions events, mainly in the event Message Reaction Add.
Why? (My use case)
I have a bot that heavily uses Discord's locazation features (and before that it had its own implementation to handle it) and has support for several languages...
In addition to a default server language setting (used when the user's language is not supported).
My bot wat...
This should help:
toBase64 gets an image from url, in this case the url from the attachment I used.
Returns a string simliar to: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH4AAACACAYAAADN
I split off the content and create a buffer. <Buffer 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 00 7e 00 00 00 80 0
This buffer matches what you would get from reading a file using FS. (file contents)
The buffer then gets put to the blob with its type. ( type = sticker.con...
Hey, just so you know this discussion is for a feature request to the API. It is not a question on how to do something.
It seemed as if the request was an understanding on how to achieve results.
Not sure if this is the right place to put it, but sometime in the last few hours these changes also broke hover previews, where links of the format [Hello](https://example.com "This is an example") no longer work or embed at all, just displaying the unprocessed text.
I would like to add a request to also allow mentions in string select menu options.
The Modal Submit Data Structure docs link to the regular components docs, which say that InputText has a required style field. But there is no style field in the data sent by Di...
Hey @sportshead! You actually don't need to escape the characters in your example. You should be able to send [foo[bar]](https://example.com) (instead of [foo \[bar\]](https://example.com)), which would get displayed as foo [bar].
Hey @mrvillage! What you're describing doesn't seem related to this issue. Please open a new GitHub issue and we can look into it. Thanks!
When saving the following regex to an automod rule:
([^A-z~!#$%&*()+@0-9-={}|;':\u{22},./<>?\n ‘’“”§×•÷√△£¢€¥°✓\[\]][\s\S]*){3}
The API returns the following:
{"message": "Regex validation service unavailable. Please try again later.", "code": 200002}
Save the regex pattern to an automod rule, can be done through either the API or the client
The rule to save correctly
503 Service Unavai...
can you actually edit this? pretty sure you can't.
After a bit of discussion in DDevs, it would appear there are new validation requirements for markdown links within embeds that will not be rolled back. I'm requesting documentation for this new behavior. Markdown is generally agnostic to the content (title) and link in
[content](link)so it's necessary for Discord to communicate what restrictions it places on these and where in order to prevent confusion.
Gotten any news as too what the restrictions are?
or else those notes about the value trigger_type wouldn't make sense
This is a PATCH request. trigger_type already exists. The note is telling you that if you intend to change the metadata, you should check the associated link to see what value you may edit to.
Hey @sportshead! You actually don't need to escape the characters in your example. You should be able to send
[foo [bar]](https://example.com)(instead of[foo \[bar\]](https://example.com)), which would get displayed asfoo [bar].
Yeah, I can tell that's how this new behavior works. My issue is that this isn't backwards compatible - I'd like the embeds already sent to still display as they did before.
The change in escape functionality was modify for security purposes. We haven entirely disabled escaping markdown inside of masked link display titles.
I understand your plight, but the reality is that security takes precedence over backwards compat.
The new markdown changes appear to have broken existing link previews for bots that use the existing (bot-only) link format [Click me](https://example.com "I am a link preview").
I was told to make a new issue in #6138 and personally I think this belongs here as its bot-only functionality instead of general client functionality for the user.
Send any embed with a link using format [Click me](https://example.com "I am a link preview")
Thank you for the response @DV8FromTheWorld, and sorry about #6144, my browser didn't load your comment when I made it, then I came back to this issue in a new tab and it loaded :(.
I completely understand that, security was actually what I was using the previews for (to display the URL they would link to). Is it at all possible to just have the previews be ignored and links rendered as if they didn't exist? As it stands all previously sent embeds (going back months or years) now just disp...
When I try to open a WebSocket connection to wss://gateway.discord.gg (the URL I get from the Gateway Bot REST endpoint) via the standard new WebSocket() client, I immediately get an error event that says:
Failed to establish the WebSocket connection: expected server to reply with HTTP status code 101 (switching protocols), but received 401 instead.
401 is of course UNAUTHORIZED, but IIUC, opening the Gateway WS connection doesn't require any authorization. The bo...
I think it would be very nice if we could make embeds with custom html or xml as well as functioning css and js, this would make the embeds a lot more customizable.
Yoo, thanks for reporting this. What strings would trigger this regex?
We have no plans to add any more functionality to embeds. We have other projects for application UI in the works though, so stay tuned.
Yoo, thanks for reporting this. What strings would trigger this regex?
The regex should match strings with 3 characters that aren't included in the following:
A-z~!#$%&*()+@0-9-={}|;':",./<>?\n ‘’“”§×•÷√△£¢€¥°✓[]
Also, with further testing, it seems that it's a combination of two regexes,
(<a?:[a-z_]+:[0-9]+>[\s\S]*){3} (3 emojis) or the aforementioned regex
Here's a full payload:
{
"id": "1105649123039907970",
"name": "Block Custom Words 5",
"guild_id": "605...
The change in escape functionality was modify for security purposes. We haven entirely disabled escaping markdown inside of masked link display titles. I understand your plight, but the reality is that security takes precedence over backwards compat.
Don't really understand how escaped brackets in a link title could cause a security issue. Would you care to elaborate more?
Might I add: not allowing bots to access the endpoint fails to stop malicious users from accessing it, because, not being afraid of breaking the ToS, they will just create a bunch of alts and selfbot the endpoint.
Also, if you are someone that actually uses discord privately, and only ever joins private servers with their IRL friends, then chances are that message history is far more sensitive than the about me section.
If the discord team doesn't want to let bots access the endpoint ...
From testing, this endpoint only seems to require the id field, while the other three (position, lock_permissions and parent_id) are optional.
However, those are not documented as such, which has led some libraries to implement it incorrectly and thus produce 400's when updating channels (e.g. the API disallows setting parent_id for multiple channels at once).[^1]
[^1]: See k...
Did you see the info block? Only the id is required.
Which info block? This one?
That says you only need to pass the channels you want to move, not which fields you can or cannot pass.
Unless I'm misreading it.
Not better to just add info: All parameters to this endpoint are optional and nullable excluding \id``
Links with hovertext where the hovertext value is the same as the hyperlink value are not being rendered on mobile.
This is a change in behavior from how these links used to work.
NOTE: This may be related to #6088, but am calling it out separately due to the difference in rendering of links between mobile and desktop.
{
"title": "Reproduce markdown bug (hyper link hovertext)",
...
That's been already reported and commented quite a few times. Look at open/closed issues with the title "Markdown".
I see a few that are similar, one that I referenced. But none speak to the same issue I'm calling out, and none speak to the behavior discrepancy between Mobile and Desktop
It simply goes under the same category of markdown completely failing.
Makes more sense to add comments to existing already opened issues rather than opening a new one just because it's a tiny variation.
Makes more sense to add comments to existing already opened issues rather than opening a new one just because it's a tiny variation.
Not if those issues are already closed as non-issue/won't fix.
In this case there is a behavior difference between Mobile and Desktop, so something is clearly broken.
The team can make the determination about whether it should be rolled in or not.
I suspect it's because they're now escaping the link title, so it's no longer necessary to do it on the client side. That seems like the right decision, BUT I think it should have been done in a backwards-compatible way to not break existing messages.
Can also be. I find it better to be consistent and use the notation defined in the reference page, you're typically more mindful of those ? rather than info banners, or at least I am :P
Well the whole page uses the info blocks so I more likely would use them
yea this seems to follow existing pattern of at least one other channel field where the way to set it to null is by passing in the guild id. I'll look into changing it so that passing null is enough.
Also something in the discord developers discord server or in changelog would have been nice. Unless I missed the announcement, in which case feel free to ignore this comment
@lmle Any update on this?
Its been months and mentions with localized names are not working at all....
@lmle Any update on this?
Its been months (almost half year) and mentions with localized names are not working at all....
For localized commands you must use the command's original name, not the localized name. The client will see the command mention in the correct language.
I am testing this url and not working any ideas?
https://img.shields.io/discord/772774097734074388?label=Discord&logo=discord
my server : https://discord.com/servers/software-engineering-courses-secourses-772774097734074388
.
.
.
.
.
That's the wrong place to report such issues.
For your case you have to enable the widget in your server settings.
Agree, I didn't see anything come out about these changes ahead of time, and I still can't find a definitive reference on what changed, what is now supported, etc.
That's the wrong place to report such issues. Shields.io is doing the background work, so you would report issues to them and not in API Documentation repository of Discord.
For your case you have to enable the widget in your server settings.
thank you
I'm guessing the reason the Markdown renderer no longer allows using a hyperlink as the "hover text" value is for security, as you could trick users into thinking the link points to one thing when it really points to another.
If this is the case, it would be preferable during on-hover that Discord would display the underlying hyperlink, where currently it just uses the same value as the display text.
Showing the same value as the display text is not helpful to the user; showing the UR...
you can lock threads without closing them now; that was not possible earlier
I have a server with 26 integrations and I'm unable to use slash commands for some of the bots because not all of them show up due to the sheer number of them. Many bots share commands, like "help" and having everything forced to the same prefix of / is causing problems and it's honestly frustrating. Having custom prefixes prevented this. Could more types of commands be available to resolve this? So commands that start with ! and ? or whatever else, but still work without message intent like ...
Hey Mai! Thank you for responding. Could you clarify? It doesn't seem like responding immediately to a Gateway WS negotiation with a 401 could possibly be expected behavior.
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!
updated so you can pass null, will go live either later today or Monday
Description
While playing around with the raw websocket API, we noticed that if we followed the example in the documentation for the identify command that it leads to a request that doesn't work. The connection is silently terminated with no error explanation.
What we found is that if we follow the example and use
intents: 7, this fails. We triedintents: 512and it works.// This intent...
While I understand the change it is an unnecessary "fix". The #'s is what was unique and kept people from getting added by people they don't know and aren't in servers with which is allowing more cyberbullying, predators and hackers to find more people easier and it limits many people's abilities to have freedom and be able to create a username that they want. People are able to now get a username they want even if other people have it because of the discriminators which allow more people to ...
This is now possible with the addition of locked active threads.
i found new feature named "discoverable_disabled"
check paypal vanity url code with API
"features": [
"MEMBER_PROFILES",
"ANIMATED_BANNER",
"THREE_DAY_THREAD_ARCHIVE",
"ROLE_ICONS",
"PRIVATE_THREADS",
"SEVEN_DAY_THREAD_ARCHIVE",
"BANNER",
"ANIMATED_ICON",
"INVITE_SPLASH",
"VANITY_URL"
],
##...
It's not new and guild features are added all the time, if it's not documented you can ignore it
It's not new and guild features are added all the time, if it's not documented you can ignore it
if it's not documented, my mission is report it
Would be very useful if I could use the api auto kick people like this guy before they cause harm. Earlier today this guy stream porn in one of my channels. Would've been very preventable incident if we had api access to the about me.
<img width="345" alt="Screenshot 2023-05-13 at 7 55 58 PM" src="https://github.com/discord/discord-api-docs/assets/44308312/30445d0a-e679-4e07-8ef3-736d8b4e1369">
I have been facing a problem that has been makiing me annoyed this problem is that there are no servers that i can add in support server therefore i would like to ask you to check it out if there are any problems or is it just me whose bot is bad or im doing doing something wrong please kindly respond
I got a message that says that says claim...
looks like you are not an admin in any community servers
looks like you are not an admin in any community servers
bro i legit own a server which is a community
Hi! i code bots using discord.js v14.11.0. My bot works well after starting, however, after 5-7 hours it is slow as hell. Nothing works well, it answers after 20seconds. i have to restart it to work well again. I asked in the djs server but got ignored, and idk what to do anymore.
I'm not sure what can i put here, there are no errors in console whatsoever so idk what causes it.
The bot to work fast and well.
Unfortunately nothing that has to do with the API. It may very well be the hosting provider you have that provides underpowered servers, or your code that may cause unnecessary resources usage.
Either way, this is not the place for such things, you can try asking in Discord servers related to programming e.g. The Programmer's Hangout
no, plenty of guild features aren't documented on purpose
When unpublishing a Guild Webpage, the "GUILD_WEB_PAGE_VANITY_URL" is not removed from the guild. This issue, linked with #6085 can cause you to lose the vanity for a server, as the grace period is not active when webpage is enabled.
On a guild with webpage enabled:
/api/v9/guilds/:guildId/discovery-metadata with {..., "is_published": false}Does it have the community feature enabled?
Currently, the only way to validate the value of a modal text input is by setting minimum and maximum character limits. This limited validation capability has discouraged me from using modals. However, I suggest that additional validation options, similar to those used in slash commands, be added. This would allow for fields to be restricted to certain data types, such as numbers, booleans, integers, and more. For instance, boolean inputs could be represented using checkboxes, while choice in...
An event for if the User dismisses/closes a Modal without submitting has already been rejected by Discord due to how unreliable it would be to detect that. EG: User power outages, user internet outages, Discord outages, forcibly closing the Discord client, etc.
But couldn't it at least just be dispatched for the explicit cancelling of a modal, better than nothing.
Does it really matter how the modal was closed? In all the use cases where I have seen this event being used, it doesn't matter if the user only pressed the "x" in the top right corner. What matters is that the bot knows that the modal is no longer being used, and therefore it should "give up" on it.
This boils down to replicate the tenor & giphy in-built command behavior.
You type in a query and the application can dynamically return a list of attachments the user can pick from.
I assume the current implementation of the tenor / giphy commands are pretty stiff, considering the way they work is to display the list of attachments and once you choose a picture, it immediately submits the command and you cannot use them at all on mobile..
which might mean that it's quite hard / impossib...
I've found that custom protocols are not supported in discord urls. On the attached image you can see that discord doesn't recognize custom protocols (besides http really) such as steam://, tg:// (for telegram), ftp:// (FTP is missing, really??) in usual messages.
And discord also ignores them in embeds description where markdown seems to be supported.
Could be r...
This issue still affects masked protocol links. For example,
[Authorized Apps](discord://app/authorized-apps)previously worked but does not anymore, even in interaction responses and embeds.
If they aren't going to fix protocol link hyperlinks in bot embeds, they should at least make them render as plain text so existing messages don't continue to be broken, instead of failing altogether.
Basically im from my phone device on call and when he uses soundboard i get kicked from call and i join automatically again call, look at the video i got
i dont understand
i dont understand
i dont understand
Stable 198192 (4b4afd8) Host 1...
This is not an issue related to the Discord API. Please report client bugs at https://dis.gd/bugreport
When using the iOS discord application with browser set to "In App Browser", clicking a oauth2 link correctly shows a dialogue that asks me to authorize, but on confirming authorization, the redirect uri opens the browser for about 1 second before the browser closes itself and appears to crash. Visiting a plain link without a redirect_uri works, but it seems that when the redirect_uri is invoked that the in app browser crashes.
For example, opening context menu by right-clicking message author in channel would include message_id

But opening menu from member list or mention would not include it (current behavior)

End users often don't really know the difference between the two, so it would be helpful for example, for reporting bots to be able to know the source message that user has been reported ...
You should make both a user and a message context menu command and simply handle them the same way.
You should make both a user and a message context menu command and simply handle them the same way.
looks like they add a new field called display_name not?
AutoMod will have a way to block people from chatting based on their bio, but it hasn't been rolled out to everyone yet. Kinda sucks that you're forced to use proprietary methods to moderator your server, but oh well, it's something.
display_name is deprecated, it was replaced with global_name
They even removed the steam browser protocol support now as well... with no explanation to why.
They even removed the steam browser protocol support now as well... with no explanation to why.
This might be an oversight that they might not currently recognize. Only "http:", "https:" and "discord:" are whitelisted at the current moment as of Canary 198855
I also noticed this is an issue with GC's too, I often like to add people to a GC but when someone I add spams stuff we don't like or isn't acceptable, I have to delete the GC so we aren't associated with it. When I leave a GC and I am the last member to leave. Why aren't the attachments deleted? It also makes me concerned that the messages aren't deleted too, when obviously it makes sense to think that they should be when noone is left in there.
I was initially confused on if the before query param was with regards to the creation or archival time of the thread so thought this would be a worthwhile tweak.
why?
The tl;dr is security patches because now users can use masked links. Though I think it's more a matter of whitelisting as opposed to blacklisting, so steam:// may be something Discord is willing to allow.
Discord's probably not going to share any deets at all about what their validation is, particularly since it's been in flux since the change first occurred. There was an issue about it here: https://github.com/discord/discord-api-docs/issues/6088 with some back-and-forth, but...
Even if a bot have the READ_MESSAGE_HISTORY permission disabled, it can still read the message history on channels unless the READ_MESSAGE_HISTORY is explicitly specified in each channel.
If the channels doesn't overwrite the READ_MESSAGE_HISTORY permission and instead defaults to each user permissions, a bot can read the message history of a server, even the messages that were sent before the bot joined.
By default, @everyone has Read Message History server-wide, so everyone can read message history. Did you disable that permission for @everyone? If not, then this sounds like expected behavior
Hello everyone, I'm currently experiencing an issue while trying to update my bot's status through the API by sending an HTTP request directly to the API. Unfortunately, whenever I send the request, I receive a response with a status code of 403. I want to clarify that I have provided the correct token, and I'm certain that it is accurate. Additionally, the bot has all the necessary permissions required for this operation. Despite this, I'm still facing the 403 error
Bot status can only be set through the websocket gateway, not through the http api. The settings endpoint is not for bots or any public use.
https://discord.com/developers/docs/topics/gateway-events#update-presence
Bot status can only be set through the websocket gateway, not through the http api. The settings endpoint is not for bots or any public use.
https://discord.com/developers/docs/topics/gateway-events#update-presence
can you provide me with an example of how to do such a thing?
Only the bot has this permission disabled.
The permission for the channel is set to the following:
So you have to disable it for @everyone and enable the permission for the users you want to have access to it? In that case we can close this.
| username | string | the user's username, unique across the platform | identify |
It should now be unique?
i'd just call it index, and then have instructions below for how to calculate it.
sticker object for a guild sticker is returning guild ID in pack_id field in sticker object rather than in guild_id field. This is absurd breaking change.
Endpoint: GET /stickers/:id
Try fetching GET /stickers/:id with a guild sticker ID and check the payload object and match the guild_id with what API returns for pack_id field value.
The payload object has guild_id field with the ID of the guild sticker is from.
...
If you have an Embed with some Fields and the Title of that Field is Formatted as an CodeBlock with an Language Tag it isn´t formatted with Colors as it should. In the Attached Image it is the first Field with
Name
Just send a Embed like this one: (I was using JDA) it has to send a Field with a code block f...
They told me this would belong here
If you send a message with a leading minus sign on a new line, it turns into a bullet point.
I assume it's done on purpose, to make some nice formatted lists, but it breaks old behavior. You can mitigate it by adding a backslash to the minus "-", but that requires a code change.
Send a message starting with a minus sign, e.g. "- test".
Output: "- test"
Output: "• test"
_No res...
This is how markdown works you know? this is not a bug lol
Has this been fixed yet? Like brussel98 said the text is cut off and even hovering over it does not display it. This is kinda breaking for my needs when the text in mine are search results so i never know what the length will be. Since this is years old im going to assume it is broken by design?
lmao, so md in messages never materialized after initial disaster of a rollout, and now the embeds are broken again if you use emojis
on saturday
so we'll have unusable bots all weekend
fantastic job 👏
what will happen to old version of Discord apps which was released before API v8 was released which supports Android 4.1+. will they stop working? and also I prefer old version of Discord PC client used in 2019 (it doesn't mean client modification, official old version) it uses API v6 and if I make a proxy server which forwards API v6 requests to v8 the client crashes when viewing guild member profile and inline replies don't show at all because API v8 has a message type 19 while v6 has type 0
When it suddenly starts to do so, and hasn't done so the three years before, I consider it a bug.
The decommission was getting rid of a lot of selfbots
self-bots are possible in API v8/v9 (I didn't try tho) & also the last version of Discord app that supports Android 4.1-4.4 is 9.x.x which uses API v6
stopping to support outdated and unmaintained applications
Discord app that supports Android 4.1-4.4 is 9.x.x which uses API v6 & there is no problem in basic usages of Discord like sending/receiving messages and doing voice calls. I do know that it doesn't support new features tho
MESSAGE_REACTION_ADD also has updates, which aren't in this PR. Is this usable yet or still subject to changes?
<details>
<summary>Screenshots</summary>
</details>
api surface is still unstable. hopefulyl soon:tm:
When it suddenly starts to do so, and hasn't done so the three years before, I consider it a bug.
This is what we call an "update" it improves things. Updates will make it so things happening one way in the past change and happen a different way.
It breaks old functionality. And I haven't seen it announced anywhere.
It breaks old functionality. And I haven't seen it announced anywhere.
It was announced [here](#api-announcements message) in the Discord Developers server.
Also the Support article was updated to reflect the new Markdown support (tho Masked Links support got pulled it seems)
We are in middle 2023, but API 6 and 7 deprecation schedule still says "early 2023" with an unspecified date.
Markdown is rolling out in all servers now and this still an issue. Is there any update on this?
Ah, I know that article, but didn't notice it was updated. It's kind of annoying - compared to other projects - that Discord has no proper changelog and you need to search for stuff all over the place.
It is currently possible to send select menus with options that have no label set. The UI for this seems rather unintended and this also affects screen-readers negatively.
Send a select menu with options that have an emoji set and an empty label.
This should be an API error or the client should handle this more gracefully.
Strange UI padding and oddly empty options.
Here are s...
I'm currently working on a Discord bot which mainly uses role connections to function. Many people don't know how to properly set it up (or use it) and I'd like to add a /setup command.
Issue is, bots can't read/write to role links, which makes it harded to smooth out the setup process.
My suggestion is: include a links array for each role
GET /guilds/123/roles
[
{
"id": "456",
"name": "example role",
"color": 11537257,
"hoist": fa...
Discord has no proper changelog and you need to search for stuff all over the place
There is no need to look all over the place to get updates. As mentioned before, Discord Developers' #api-announcements and #developer-news channels have updates posted regularly.
Furthermore, Discord does post a changelog within the applicatio...
As of some time between 5:17 PM EST and 8:29 PM EST on Friday, May 19th, slash command image embeds seem to have stopped working. The
Send a slash command response with an Embed object containing an image URL or thumbnail URL.
Discord will display the image or thumbnail for the provided embed URL
No image is displayed, despite the image URL being returned in the API response for the slash command respons...
It's replicable on interactions.py >= 5.0.0, Windows 11 and Ubuntu 22.04
But for some odd reason, interactions.py == 4.3.4 able to send the embed with images. Asked the contributor of package, it seem they also confused 🫤
Reproduced on DSharpPlus (C#) latest stable (4.4.1) and latest nightly (5.0.0-nightly-01574)
Asked the contributor of package
Could be a API version thing
This is happening with JS too. I'm HTTP interactions with discord.js builders + discord api types
High chances to be API problem
But for some odd reason, interactions.py == 4.3.4 able to send the embed with images. Asked the contributor of package, it seem they also confused
To note: I honestly don't think this has to do with the specific version, just some weird stuff going on in general. I was able to confirm 4.3.4 also has this issue. Note that followup posts do not have this issue - in 4.3.4, sending after a defer did a followup, while in v5+, it does an edit instead.
In fact, once the image is successf...
Asked the contributor of package, it seem they also confused
Could be a API version thing
Ok i checked both interactions.py versions use V10 api. I thought that it might be possible to narrow down the error more if the versions are different.
The issue here is that width and height are set to 0 by the API, making the client not show the image due to invalid dimensions.
I've had carl bot do an embed and then the image could be uploaded with other bots 80% of the time.
Moving from defer -> modify to defer -> followup seems to fix this as a workaround for my bot as well (Discord.NET)
Seems to be an issue specifically around the modify original message call when adding an embed with images.
I can confirm doing a Defer and then a FollowUp seems to be a valid workaround (as discovered by @AstreaTSS above)
DSharpPlus:
await ctx.DeferAsync();
// My epic code
await ctx.FollowUpAsync(embedWithImage);
Happens here too. Must be Discord's image proxy.
When using the Bulk Delete Messages endpoint I get a 204 response but the messages still persist. The messages are less than 2 weeks old.
curl https://discord.com/api/v10/channels/CHANNEL_ID/messages/bulk-delete -i -H 'Content-Type: application/json' -H 'User-Agent: DiscordBot' -H 'Authorization: Bot BOT_TOKEN' -d '{"messages":["MESSAGE_ID_1","MESSAGE_ID_2", "MESSAGE_ID...
Hi, is the default avatar changing for all users or just those with this new username system? This PR seems to contradict itself on this and I didn't get a response in DDevs :(
Hi, is the default avatar changing for all users or just those with this new username system? This PR seems to contradict itself on this and I didn't get a response in DDevs :(
for the ones with the new username.
if you try the way for ones with discrim, the generated avatar differs from the one in the client.
I would like to suggest an idea, namely to enable server administrators to edit messages on the discord forum. Example: Participant (A) created a post with links to some interesting site, but the site changed its domain name and the link that was specified stopped working. Administrator/The moderator also wanted to change the link to a new one, but he did not succeed because there is no way to edit someone else's message (the main post) on the forum, there are functions to delete / close the ...
This seems like more of a feature request to Discord itself than an APi request. Feature requests should go to the feedback page at https://feedback.discord.com
Does not work for Stable 199933 (db1e138)
Sample:
[link](https://www.google.com/)
Rendered as normal text:
<img width="296" alt="image" src="https://github.com/discord/discord-api-docs/assets/21104/475f9f4c-b720-4452-8b4f-552141d80502">
is that in a webhook message or interaction response? link markdown can't be used in normal messages
Happening to me too, using DiscordGo on latest version.
One of the images does go through, but any of the other images/thumbnails do not.
that's clearly a link embed (part of the link is visible at the top), not a bot embed
Yes, but how he incorporated the video in the embed body?
that's clearly a link embed (part of the link is visible at the top), not a bot embed
Yes, but how he incorporated the video in the embed body?
That is an embedded link. The website supports embeds via the <meta> tag I believe.
Hi,
Thank you for the report. The Discord app is no longer available in the Samsung store.
Moving from defer -> modify to defer -> followup seems to fix this as a workaround for my bot as well (Discord.NET)
Seems to be an issue specifically around the modify original message call when adding an embed with images.
This fix did not initially work for me with image url in content and a text-only embed underneath it. After removing the embed and switching to a followup, images appear again.
There are several issues:
404: Not found.The documentation for the guild member add endpoint (with oauth) says
For guilds with Membership Screening enabled, assigning a role using the roles parameter will add the user to the guild as a full member (pending is false in the member object).
but when I run the endpoint with a role, the member's object still has ``pendi...
is that in a webhook message or interaction response? link markdown can't be used in normal messages
According the documentation Markdown Text 101 (Chat Formatting: Bold, Italic, Underline) it could be used for normal messages.
I see message This is currently an experiment and is not available on all servers at this time. under "Organizatio...
Since onboarding rolled out roles don't change pending state.
As suggested above I would look at whether the problem lies with your host. Since this isn't an issue with the API itself I'm going to close this.
Hi, as mentioned this is an intentional product change and so I'm going to give this a close. You can escape lists with the usual markdown escape mechanism, e.g. \- test.
This is a problem for me as well. Using interactions v5.5
Additionally would like to add that this seems far more logical (reasoning in #2479) and that documentation was likely added as a caveat.
Member verification being bypassed makes some sense, but you'd think that the member should still see important general server information.
As part of the new username system, standard Discord users can define a non-unique display name. This value will be a new
global_namefield with a max length of 32 characters. If the user has not set a display name,global_namewill be null.
Happening here too. Truly a Discord moment
Its truley a discord moment just after the latest update, even before even using the slash commands or prefixes, when putting the website image url in the chat, i get , poor image, even though i open it in website loads fine, shows that the issue is due to discord api not the server i am loading the image from though
so the issue is not just slash commands, its even the websites attachment does not display after update even before using prefix or interaction
example used
https://ap...
I have a bot that responds to an interaction with { content: imageUrl }, but it shows the URL instead of the image in the Discord chat. However, if I manually copy and paste the same URL in the chat, Discord will display the image. Interestingly, if my bot tries again now, the image will also be displayed correctly.
It is almost the same with embeds, except that initially it shows an empty embed without the url
What's the solution? I'm facing a similar issue.
Seems to be happening on Discord user clients as well, I tried masking a link in a normal message and it did not work. Gah
I have also noticed that when a bot is used to delete messages, none of those are ever in the audit logs either.
I am here for this, why is it that when bot deletes messages that is not theirs, it won't show up in the audit logs?
This is really bad if let say the admin invited malicious bot and has been deleting messages randomly and there is no way to trace back unless having a bot to watch for MessageDelete which is really counter-intuitive and not all admins on the platform are aware o...
Hello,
eSound developers here (https://esound.app/).
We kindly ask Discord for the possibility of having access to the same APIs Spotify is leveraging for the Discord Rich presence and other features so that we can satisfy our user's request of having the same features which Spotify currently has and we cannot due to a special treatment for Spotify only.
In particular for the Rich Presence and other features we want to build something identical on what only Spotify currently has. Is ...
We look forward to this too!
Hi,
I'm using the Game SDK 3.2.1 on Linux in Unreal Engine 4.27 with the Toolchain v19 (clang-11.0.1-based). When compiling the game I'm getting the following linker errors:
discord_game_sdk.so: undefined reference to powf@GLIBC_2.27 [--no-allow-shlib-undefined]
discord_game_sdk.so: undefined reference to exp2f@GLIBC_2.27 [--no-allow-shlib-undefined]
Is there any way to fix this ...
Same issue here, I send an embed and the image shows just fine, but when I modify the embed to show a new image it just doesn't show it.
I am seeing that discord changes the authorization from channels sometimes. check if it still the same.
It should be clarified that this won't be present on webhook messages
This fixed yet? Discord's Markdown 101 page shows exactly how to do this, but it just doesn't work.
This fixed yet? Discord's Markdown 101 page shows exactly how to do this, but it just doesn't
work.
They rolled it back due to security issues, and when they rolled it back out, it came without hyperlinks. So unknown when hyperlinks come back, but interactions and webhooks can still use them as they always couls.
Same problem is happening to me too. And, I haven't found a solution.
eSound es una plataforma en crecimiento y necesita meritos en discord para muchos de los usuarios que disfrutan del "Rich Presence" 😃
Doesn't work for me either:
f45e970 Document Use External Sounds permission (#6039) - advaith1
ec98669 document error code 50178 (#6091) - hackermondev
625a0c2 Update invite gateway event docs (#6131) - hampuskraft
Modifies the onboarding configuration of the guild. Returns a 200 with the [Onboarding](#DOCS_RESOURCES_GUILD/guild-onboarding-object) object for the guild. Requires the `MANAGE_GUILD` and `MANAGE_ROLES` permissions.
😬 it's past Q1, and since it didn't follow the expected end of life date, I don't think it's a good idea to document this information for now. I understand why this should be documented, so once there is more confidence around the end of life dates, I'm open to revisiting it.
Sorry for the delay here.
I don't know if these updates add much clarification—I'm happy to address certain points of feedback around these docs if you have them, but most of the wording updates make it a bit harder to understand when reading or add unnecessary context. If you still want these changes added, it may be helpful to break it up into separate PRs that are focused on specific improvements.
API v6 will be around for several more years at this rate...
| resolved? | [resolved data](#DOCS_INTERACTIONS_RECEIVING_AND_RESPONDING/interaction-object-resolved-data-structure) | additional details about selected options |
not super picky here, but we should abstract away "users + roles + channels + attachments" and save that for the details in the resolved docs section.
89eb816 Add Voice and Forum to rate_limit_per_user (#... - Puncher1
what is the reason for this change?
Added application command option limit and improved the tables for both application command and application command option objects.
In addition, I was wondering whether it's intended for the Bulk Overwrite Guild Application Commands endpoint to have JSON params while the [Bulk Overwrite Global Application Commands](https://discord.com/developers/docs/interactions/application-com...
| message_author_id | snowflake | ID of the user who authored the message that was reacted to |
I'd say, that way the description sounds better...
## Unique usernames on Discord
#### May 3, 2023
Fix formatting in accordance with https://github.com/discord/discord-api-docs/pull/6162.
I think both "that" and "who" are clear enough so I don't care which one to use, but a bot could also be a message author, and "who" isn't exactly correct for bots AFAIK.
I think it's more about having 2 "that" in the same sentence. correct but maybe a bit weird?
Alternatively, you could replace the second "that" with "which"...
How is this STILL not fixed?????
Any ETA on the fix for this?
Old sintax is better, you don't have to look below the table to see which property is used in this command type
For which table exactly?
The first
In my opinion, having one exception doesn't really justify having an additional column given how little information it actually conveys. To me it felt rather over the top, I can see your point too, however, so I'd be open to further modifications (like putting the limitation in the description) / a revert there, depending on the consensus of a few additional opinions.
This wasn't the main point of my PR anyway but rather something that felt odd to me, when comparing the applic...
having same issue with interactions.py, using defer is probably a good temporary fix for now
Hello. I am facing a fairly unpleasant problem.
Starting the session and specifying intents via identify packet of the gateway. All is ok initially and intents work as intended.
The gateway periodically asks for reconnect and the client resumes the session successfully. Nothing special here too.
But after some unidentified period of time (usually a long time, it may be months of uptime), the session suddenly breaks.
It seems like after eventual resume, the ini...
It has been mentioned many times that global hyperlinks have been temporarily removed.
The current state of these extended markdown features is effectively as follows:
Figured I'd check to see if anyone knows if progress has been made on this feature in the year+ since the last activity. I would love to use it for my /input_mined_resources command so I can have a user input many pairs of <resource> <quantity> .
With a menu to choose the date and everything
 is that you have an overview of all bots with their description and especially direct links to their ToS and PP to reduce the massive workload that is currently needed to gather this information.
Prior to these recent API changes, you could escape asterisks in a masked link. It seems that is no longer the case.
You can reproduce this by attempting to escape asterisks from a masked link like so:
[\*Test\*](https://www.google.come)
It is expected that asterisks can be wrapped in a link.
You cannot wrap asterisks in a link.
MacOS Ve...
Apps installed in a server are available in the "Integrations" tab in server settings.
Apps installed in a server are available in the "Integrations" tab in server settings.
Do note that this is limited to the soft cap of 50 integrations and may not give you all the bots in your server.
Maybe I wasn't specific enough. Me as a user who joins a server does generally not have the permissions to view the integrations tab in the server settings. And the limit as @Rapptz said is also limiting in gathering the information what all the bots on a server do.
Furthermore, the integrations tab does not show the bots ToS and PP
Currently, it is very hard to get an overview of all bots in a server. Sometimes they are grouped in a role to display in the members list, but more often this is not the case.
What I imagine of a new entry in the server dropdown (where you can leave a server) is that you have an overview of all bots with their description and especially direct links to their ToS and PP to reduce the massive workload that is currently needed to gather this information.
Could we at least get an ETA for this instead of leaving us in the dark?
We're actively working on this fix. There is no ETA
Members who haven't passed the membership screening are able to interact with message components on the mobile version of Discord, while they are correctly disabled on desktop and web versions.
everyone can seeOn all devices and versions, pending membe...
This is the same for emotes from other servers btw. defer -> followup seems to fix this for now. Will this also be fixed?
This is the same for emotes from other servers btw. defer -> followup seems to fix this for now. Will this also be fixed?
No >:(
Embeds belonging to interactions such as slash commands frequently do not have their contents indexed for search. This does not effect embeds produced by sending a message in a channel, only embeds in interaction responses.
Most likely related to, or even duplicate of, #6171
thank you.
Myself and many other developers are running into with a common issue with existing bots and brand new bots on new accounts.
Everyone is being rate limited and cannot deploy new commands.
DiscordAPIError[30034]: Max number of daily application command creates has been reached (200)
at SequentialHandler.runRequest (C:\Users\lost_\Documents\discord_bot\CaeChron\node_modules\@discordjs\rest\dist\index.js:933:15)
at process.processTicksAndRejections (node:int...
This is affecting us at FreshTok, every new server adding the bot is failing to add guild commands.
We've tested with a dev bot that isn't used often and hasn't been used in a week. Just making a single request to create a simple guild command causes the error to return instantly even though 0 application commands were created for that bot or in that guild all day.
I use discord.net library in c# and I am also running into this issue. My previously working code has stopped working completely because of this error. And when I tried creating new discord bots with literally just one command I still got this error.
+ The response also has incorrect retry_after headers!
My bot automatically handles retry_after, so it goes into a loop, trying to follow what is parsed in the headers.
Try to create, rate-limited response with ~3s in retry_after, wait... Repeat
My first log of this error was at 2023-05-31 00:37:37 UTC.
I think the rate-limit arg got collided with the syncing somehow..
same issue. but only for one application 🤷
I am experiencing the same issue in the midst of a major update to my bot. The bot is months old, with only a few dozen commands.
Happening to me on my already existing bots.
I thought using a VPS in hosting my bot can fix it. But it seems no workaround to this issue at the moment.
can reproduce with my discord.js bot hosted on replit
Got the same problem with discord.py bot with only one command!
It happens in all applications in my account.
All applications will respond in the same way, even with a new build.
Same issue here. All my bots do not work because of this.
I myself am also experiencing the same issue
same here, haven't even registered any commands
For any form of discussion, please join the Discord Developers official server and then Follow this Forum post. Updates may be posted there.
Tested it with 3 bots, all are limited of which 2 are about a year old.
The issue is still live, started experiencing it last night around midnight (EST), and currently still experiencing it @ 7:30AM (EST).
Seems to be an ongoing issue with Discord's API.
The issue was reported ~9 hours ago, currently it's 5am in SF - so it has been reported at around 8pm SF time, do you seriously believe they will fix it in the middle of the night? Give them like 4-7 more hours or something...
Surely it's annoying but not a crisis emergency that needs to be fixed within the coming minutes/hour...
This will be fixed shortly, in the next API deploy
Me and some developer friends are experiencing the same error, we went to test a new command in our bot and this error returned, the strange thing is that we tried to add 1 commands only to the bot and the bot only has 12 commands in total, there is no way to get to the limit of 200 commands added in the day because not even the bot has that much.
oh thank god is not just me 🤣
what tha, everybody experiencing this issue at the same time? hmm, this is weird. because i had the same issue
I have a suggestion about activities
discord could add a new activity, it can be space mafia game like the famous game among us.
The game probably will attract a lot of people for buying nitro. The Game could have many maps and skins. The game can have different modes (ex: Hide and seek, zombie apocalypse).
It means the guild has been disqualified from entering the discovery directory.
Sending numbered lists in embed descriptions with numbers greater than 50 are not being rendered correctly in both Mobile Android Client and PC Client.
Attached below, I have a screenshot of an instance where I send a list of numbers in the format #. Text\n, and I have confirmed that this bug exists for any number > 50. The first 50 will list correctly, however any number greater than 50 will always be rendered starting at 50. However, bolding the numbers will prevent t...
So I just finished a attempt to make an OpenAPI spec for discord, you can check it here: https://github.com/hugoattal/discord-openapi
YAML file: https://raw.githubusercontent.com/hugoattal/discord-openapi/main/src/output/openapi.yaml
JSON file: https://raw.githubusercontent.com/hugoattal/discord-openapi/main/src/output/openapi.json
You can check it out with the swagger UI: https://petstore.swagger.io/
As of recently, unverified bots now have the "Apply for Privileged Intents" box. This did not occur. Unverified bots can still flip the switches freely.
The apply box would not be displayed.
The apply box would is displayed.

Thank you @ooliver1 for update. Do you have worth estimate, when it could be fixed?
Example of problem: https://github.com/discord/discord-api-docs/issues/6088#issuecomment-1565633035
I am not a discord staff member, I was simply repeating the information further above so people would stop sending the same "happens for me too" comments.
I am having the same issue, the worst part is that image links i am posting are discord links.
You should look out for opened issue - the issue you're looking for is #6171
The current application command format is (in my opinion), annoying to use and excessively verbose.
`` is not a great format for the following reasons:
color for en-US, yet switching to `Englis...There may be two commands with the same name (global and per-guild), so the first proposed format is not ideal either.
Having that be possible in the first place seems like a complete flaw in the system too. For the end user, seeing two commands with the same name from the same application is confusing and completely unnecessary.
haven't been able to repro this unfortunately. There are some roles that are managed and can't be deleted, like the role that is assigned to users that boost the server. But attempting to remove these is supposed to return a 403 and not 200's like you mentioned. Is there any additional info or maybe a test server with example roles setup that I could look at where I can repro the issue?
I'd love to see this implemented. Would be extremely useful!
I have been testing a few things with discord webhooks. Would it be possible to support base64 encoded images in multipart/form-data? This would really help speed up some of the development goals I have. Thanks for considering.
If this is already possible I would love to know more. In my testing this didn't work and I couldn't find this in the documentation.
--boundary
Content-Disposition: form-data; name="files[0]"; filename="myfilename.png"
Content-Type: image/png
[base64 string]
FormData is a web standard, and doesn’t (exactly) relate to the Discord API. Every website/server you send FormData to expects you to send the raw bytes of your file, that’s just how FormData works.
You can omit the base64 encoding step (or if the data is already coming in as base64, you can decode it).
Unfortunately the post function I currently use doesn’t allow me to create a raw byte as part of the payload.
Imgur has this option of uploading base64 so thought I’d ask here as well. If it’s not possible I will either need to use something like curllib or upload through Imgur and use that image link in the discord webhook. Either way it’s a bit more complicated than base64 support in discord webhooks.
This changes the word lurkable to Discoverable on the Get Guild Preview route.
If the user is not in the guild, then the guild must have the "DISCOVERABLE" [feature](#DOCS_RESOURCES_GUILD/guild-object-guild-features).
An alternative in my mind would be
[..], then the guild needs to have the
Hey there=)
I would like to send little video clips with discord...
While in chat:
-Press the + Button
-Goto Camera tab
-Click on Video (currently missing)
-Record
Result:
-Discord records up to 8mb video and posts it
(video is automatically compressed within discord in an internal handbrake style process taking place between the recording and posting of said freshly recorded video via discord chat)
Thanks for your consideration and feedback=)
(And everything else;) )
W...
I got it working. reading rfc 2046
--boundary
Content-Disposition: form-data; name="files[0]"; filename="myfilename.png"
Content-Type: image/png
Content-transfer-encoding: base64
[base64 string]
I got it working. reading rfc 2046
--boundary
Content-Disposition: form-data; name="files[0]"; filename="myfilename.png"
Content-Type: image/png
Content-transfer-encoding: base64
[base64 string]
This looks like a thing for https://feedback.discord.com
This repo is more for development stuff
This looks like a thing for https://feedback.discord.com
This repo is more for development stuff
While using webhook api for a project I noticed that the styling was not lining up with the same post of what a bot/user would post. The title field on the embed was wrapping well before the end of the embed due to a styling added of min-width: 0; I would like to see embeds for webhooks match the output of what a bot/user is able to output as this styling for the embed using a webhook is not pretty at all.
Original Webhook Output: https://media.discordapp.net/attachments/76137108893191374...
When posting an embed through a webhook, the title field is wrapping well before the edge of the container where it meets the thumbnail. This is being caused by a styling of "min-width: 0; " on the embedTitle-2n1pEb class.
`{
"content":"@everyone HyFlicker is now live! https://twitch.tv/hyflicker",
"embeds" : [
{
"color": 5793266,
"author":{
"name" : "HyFlicker",
"url" : "...
It is not possible to set someone's nickname to their username. With display names, if a user has no nickname on the server, the display name is shown as if it were a nickname.
This leads to an interesting issue where if nickname perms can effectively be bypassed.
@everyoneUserThis impacts one of the servers I manage, a partnered server who utilizes a bot to synchronize member's names with their in game name for the game the community is based around.
If a user's Discord username matches their IGN, their display name is now shown, allowing them to effectively override the IGN as display name enforcement. As the synchronization is automatic, creative solutions aren't able to work. We are exploring updating the bot to workaround this by adding extra content to mak...
Requesting dm_channels.read as a scope results in invalid_scope error
Use the oauth2 auth code with the dm_channels.read scope (with or without other scopes) results in an error 100% of the time.
The authorize flow completes correctly or the API is updated to inform the user that this is not a valid scope (the url builder produced the url that is failing)
Instead of a token, an error is returned cla...
This is intended behavior, dm_channels.read is a private scope (only for Xbox) so you can't use it. In the docs these private scopes are labeled as "requires Discord approval".
Feels ambiguous, and wasted time thinking this was possible... I tried searching the docs for requires approval and couldn't find any messaging suggesting HOW to get that approval or what exactly that meant.
If anyone is using express with discord-interactions, instead of PATCH, you have to POST the followup message
you can try contacting dev support to request a private scope but it is probably unlikely
Voice messages are not being able to be recieved in dms, and it's a recurring issue even after clearing cache or data.. rather than showing the voice message it shows a "something went wrong here" message on android discord app, but works fine in the desktop app.
Record a voice message and send it in dms, on receiving the voice message on android discord app, an error is shown and voice message can not be accessed
The voice me...
i suggest of discord add 'validators' for chat-input interactions string options and text input modals
this validators check if the input follow the wanted pattern
this would be awesome and very helpful for developers
and only accept the input if its matches one of the specified validators
I think like:
name: "option_name",
validators: [/regex/gi, "str"],
it would be awesome
This sounds like a duplicate of
My discord channel not receiving a worflow events sent by github webhook. These events are sucessfully sent with response status code 204, but my channel don't received it.
Here is one of requests send by github for worflow_run.completed event:
Request URL: https://discord.com/api/webhooks/1114528013481169008/jv_XKVg0d5vcQ58sZ6AbUNAqGKwPEPSccPGn9ytCKiET1Fj7e3xq1RDCv4Vt0SWzempA/github
Request method: POST
Accept: */*
content-type:...
When receiving an interaction via a gateway event, you respond to it using an HTTP request to Create Interaction Response, which allows you to upload files.
However, when responding to interactions received via an HTTP request by Discord, it is apparently not possible, currently, to upload files in response. In contrast to Create Interaction Response, you cannot respond with `multip...
I have invalidated the webhook url you posted, kindly avoid posting webhook urls with their token or any other sensitive data
the permissions calculator under the "Bot" section is missing 2 labels:
MANAGE_GUILD_EXPRESSIONS (documented)CREATE_GUILD_EXPRESSIONS (PR open #6120)visit the dev portal > open any application > visit the bot section...
As the title say, make a "game asset" or "bot asset" that allows bots that have custom emojis (and alot of them, not just 50, not emojis for fun but emojis for actual items icons etc for the game bot), even if only those bots can use them.
I am making a creature-taming bot game on Discord and I am having custom emotes issues, as I try to make each creatures icons and item icons as emotes, I am forced to create useless servers, make my bot join them, just so that the bot (and I emphasize th...
Kind of, I searched for duplicate with "bot" "custom emote" "custom emojies" and didn't find any.
I've read #6137 and he didn't went into details like I did (basically allowing huge-number of custom emotes for only a bot), althought the main issue is indeed the same, so I upvoted it.
Thanks for the heads up by the way,
Having similar issue ( #6206 ) agreeing with the suggestion.
Please make emotes for bots so that I don't have to create dozens of private servers only for a "game" bot to have its custom emotes for items icons, etc.
The API v9 of today is different from APIv9 from 1 year ago
Connect to discord.com with your piece of code, and see the API responses
No changes to behaviour
Backwards incompatible changes to behaviour
No response
Any
What changes to behavior are incompatible?
Will the display_name property also be documented? Seems to do the same as global_name, idk why it's there
display_name was renamed to global_name, ignore the old one
Proposed solution: Versions should be numbered by snowflakes, with the snowflake identifying the timestamp of deployment to the staging server.
Discord,
We've switched our site hosting service to Hostinger's VPS and since then, our site, https://arclightbase.com/, has lost it's message embeds. We've ran down the list of issues that might cause this issue, including...
I looked into this briefly, it looks like your server (or hosting provider perhaps) may be blocking traffic from us.
I cannot even curl your website from one of our unfurler pods. Since we have no specific blocking of websites here, I think the issue must be upstream of us.
Good luck with figuring this out!
The X-Signature-Timestamp header seems to be a handy way to discourage replay attacks and make old signatures worthless after enough time has passed. I'd love to verify that the timestamp is within an acceptably recent duration to prevent an old signature from passing verification again now. However, there doesn't seem to be any description of how to use it. What's a good duration after which to declare a timestamp too old? What format should I expect to receive the timestamp...
@jhgg Is there any way we could get a verbose output of the curl you tried? We've contacted the Hostinger support but they deny having any form of traffic blocking or anything like that. We also don't have a pivot point to test anything, since other crawlers we tried (Facebook and Twitter) seem to get through just fine.
I was trying to do something funny with the Discord Gateway and I received this weird event
{"t":"SESSIONS_REPLACE","s":2,"op":0,"d":[{"status":"invisible","session_id":"session id here","client_info":{"version":0,"os":"other","client":"web"},"activities":[]}]}
It is not documented on the official Discord API
There wasn't much output. It hangs trying to connect to the hostingrer's IP that your domain resolves to, until I kill the process.
Pretty sure that’s when you connect to the gateway using a user token, which you shouldn’t be doing as it’s against ToS afaik
I was trying to do something funny with the Discord Gateway and I received this weird event
{"t":"SESSIONS_REPLACE","s":2,"op":0,"d":[{"status":"invisible","session_id":"session id here","client_info":{"version":0,"os":"other","client":"web"},"activities":[]}]}It is not documented on the official Discord API. I have been searching for this event and I have found nothing. I think I might be the first person to notice about it?
No
Hello, person who made this event many years ago here.
As others have mentioned, this is a user specific dispatch event, and not received by bots, and only user accounts (which means you are probably using a user token to connect to the gateway I assume via unofficial means.) I would avoid doing that as it could lead to our systems flagging, and potentially disabling the account.
For those who are however curious, SESSIONS_REPLACE essentially sends an update to your client of your other...
didn't know that was against tos :(
I didn't know user tokens were against ToS or anything, but still, that's good to know, thank you
We're actively working on this fix. There is no ETA
Any update on this?
Seems to be pretty much the same thing as #5679? I'd love if this were implemented.
Starting last week I noticed deferred interactions would do this strange jumping movement before editing.
It might be hard to see by the gif, but if you run a command yourself, you should see the movement I am referring to. It seemed to have happened last week around the time the slash commands broke and be reverted.
Use a deferred...
has this PR been abandoned?
I kind of understand that Discord wouldn't want this for cross-platform bridging? But what about bridging guilds on platform though? Like we've already seen various "phone" or guild-to-guild features provided by some bots. Like there's a lot of creative use cases for it. Like even cross-channel bridging or using this in "starboard" channels would be kind of nice.
**Description: **
when writing in short type of text input inside the modal it gives some events to the bot like normal auto complete and gives us the auto complete choices.
(normal autoComplete but inside Interaction Modal Components not Slash Command Interaction)
**Why? **
this is very helpful
for example:
searching when writing in the short text input and show some suggestions when writing and grammar fixes.
or
writing and search for some data and select one of the choices f...
Unfortunately we dont have very tight control over this TLS behavior, and it would be a lot of work to change, so we're not going to change this for now.
Update and rework intro content and adds a lovely lil image to the docs homepage. Removed most Game SDK references since they're deprecated.
Converted to MDX to add a button to the getting started guide.
- Use our [Github](https://github.com/discord/discord-api-docs) to report API bugs, start a discussion about a developer feature request, or suggest an edit to our open source developer documentation.
Would report sound better here?
- Use our [GitHub](https://github.com/discord/discord-api-docs) to report API bugs, start a discussion about a developer feature request, or suggest an edit to our open source developer documentation.
No activity in 3 weeks, so closing this
This is almost definitely a bug with your code or your bot. Make sure your bots username does not contain "discord" and that you are not setting a username anywhere like that, such as when sending a webhook
What advaith said. This issue tracker is for API issues or app issues related to bot development
Please set wait=true in the webhook URL to see if our API is returning an error response.
See https://discord.com/developers/docs/resources/webhook#execute-githubcompatible-webhook
Are you using a particular library for these connections? Can you show us some sample code? No one else has reported this, and the behavior youre describing does not seem possible, so any information you can give us might help debug.
Testing on the latest canary client shows this is still based on the discriminator which means that every pomelo user has the same default pfp of https://cdn.discordapp.com/embed/avatars/0.png
Are you using a particular library for these connections? Can you show us some sample code?
It is a custom implementation, example can be seen here.
No one else has reported this, and the behavior youre describing does not seem possible, so any information you can give us might help debug.
I know, such behavior may seem very strange. And considering that particular conditions are unknown, it is impossible...
Now that I notice it, seems strange to have an absolute url here.
Not sure that it matters too much since none of the links on the site seem to prefetch, it just seems unnecessarily verbose (and a big departure from the established link syntax)
We're actively working on this fix. There is no ETA
Any updates?
An alternative in my mind would be "then the guild needs to have the" or "then the guild needs the"
They're all kind of the same thing though
I have a bot in Discord.js V14. Since I turned it on about 3 weeks ago it worked perfectly but since about 3 or 4 days ago it takes a long time to respond to messages.
The bot receives the interaction/message/reaction almost instantly and processes and responds in just a couple of ms, but from the time the bot sends the reply/deferReply until it is displayed in the discord app it takes almost 2 seconds. I have more bots on the server (not mine) and they all work normally e...
They fixed it!
it's been 84 years
This should be fixed as of this morning.
Thank you for your collective patience.
The component only takes absolute links since it doesn't go through the same link parser as the rest of the markdown, so not much to do here for now. Would definitely like to update the behavior of the component to be consistent with the rest of the links at some point though.
e568170 Update Intro page for docs (#6213) - shaydewael
bbf135d Fix formatting of recent changelog fields (#6162) - advaith1
If the user is not in the guild, then the guild must be [discoverable](#DOCS_RESOURCES_GUILD/guild-object-guild-features).
Understand where your edit is coming from, but want to stick with saying a guild is discoverable, rather than has the "DISCOVERABLE" feature.
nice lil addition, thank you :)
61ffa12 clarify GET archived thread before query para... - mr-tech
dd48c48 Update channel create message request size limi... - MineBartekSA
Adds missing with_counts query parameter into Get Current User Guilds
Kinda what I thought, thanks for clarifying
While the original URL using the "twitter" organisation does redirect to the intended destination (at "twitter-archive"), the "twitter" org exists for other purposes currently and this would make the link not rely on GitHub's redirection.
Thanks,
pointy
Is that an example or the actual code youre using? An example probably isnt useful if it differs from the actual code in any way more than like.. print statements
Yes, it is the actual code that is used.
that is the standard code for a ping command
ah sry didnt look very carefully, i thought what was being measured was the fetchReply execution time
Im not able to reproduce this. My command handling code is copy/pasted straight from https://discordjs.guide/creating-your-bot/command-handling.html#command-categories and my command handler looks like this:
module.exports = {
data: new SlashCommandBuilder()
.setName('ping')
.setDescription('Replies with Pong!'),
async execute(interaction) {
await interaction.deferReply();
const reply = await interaction.fetchReply();
const ping =...
await interaction.deferReply();
const reply = await interaction.fetchReply();
const ping = reply.createdTimestamp - interaction.createdTimestamp;
interaction.editReply(`Pong! Client ${ping}ms | Websocket: ${client.ws.ping}ms`);
It's in the problem description ^^
That is not the full code. As I said, I cannot reproduce this with my own code, so I will need to see all of your code, or a smaller complete example, that can reproduce the issue
https://github.com/XurxoMF/ModeretaV14
That is the bot repository, but there are all the commands and other code that the video didn't have
Just the code in the video might help. I noticed your repository uses this "cooldowns" concept, which I included in my test bot, but it was not enough to reproduce the issue
I think it is not a problem of the code since I have removed everything and left only the basics and it fails anyway
I have edited the problem and put the full bot code so you can reproduce it ^^ is just an index.js and a config.json
Have there been any changes regarding this (in the past 1.5 years?)
I think there are many strong arguments for implementing this:
The bots team supposedly wants this to happen already (per this comment on #3269)
To avoid performance issues on the /member-ids endpoint, it could simply be paginated with a small limit (i.e. 50 or 100 members per page.)
As an alternative to exposing the ...
I have been trying to create a unique private channel for each guild in our game through the API. However, I encountered an issue where a server can only have a maximum of 500 private channels. Is it possible to increase this channel limit?
ok this is just updated #6130 but the branch wasn't syncing correctly so I'm just creating new PR oop.
this no longer includes info specific to bots
moved to #6218 because of some weird syncing issues
wasn't able to replicate this. if you continue seeing it, please open an issue as this is documented intended behavior.
Is % 6 is a typo or was this just changed randomly?
this was changed. pink avatars now wowwwww yay fun 🌸
Do users with discriminators still use discriminator % 5?
yeah, for non-migrated users it's still % 5. i can add a note about that until all users are migrated.
the branch wasn't syncing correctly
For users with migrated accounts, default avatar URLs will be based on the user ID instead of the discriminator. The URL can now be calculated using `(user_id >> 22) % 6`. Users on the legacy username system will continue using `discriminator % 5`.
\*\* In the case of the Default User Avatar endpoint, the value for `index` depends on whether the user is [migrated to the new username system](#DOCS_CHANGELOG/unique-usernames-on-discord). For users on the new username system, `index` will be `(user_id >> 22) % 6`. For users on the *legacy* username system, `index` will be `discriminator % 5`.
Tested with a migrated user and their profile picture was not the pink one. Was this change intentional?
https://github.com/discord/discord-api-docs/blob/main/docs/resources/User.md
Line 30:
| username | string | the user's username, not unique across the platform | identify |
This is outdated now, right? the username with its new rules should be unique now.
The example below that is also missing the global_user attribute.
This is outdated now, right? the username with its new rules should be unique now.
The username won't be unique until all users are migrated. Since bots aren't even getting migrated yet, it's definitely still accurate.
Escaping markdown formatting inside of links still works. The issue is however that the backslashes are always visible.
This comment from a dev specifies that you can no longer send masked links through normal messages.
The GitHub avatar in embeds is no longer present. Even previous messages no longer have them render.
The user's GitHub avatar would be present in the embed "author" icon.
That is somehow missing.
 % 5
Now it is (id >> 22) % 6 because of the new pink default profile picture
@hemu
I think you can do the following to reproduce:
I'm not sure if this happens every time, but a coworker was able to replicate like this within a few minutes of trying. Good luck!
A solution is to split the Modal into multiple parts, by calling another modal as the response to one, but it would be much better to just allow more components in the first place. Also, please bring back Select options in Modals.
Now that the default upload size is 25 MB, I assume this has been given to bots too?
Lets you have a multi-purpose bot with a ton of features/categories, but a certain guild only needs one feature. It would be useful for them to be able to hide the remaining commands they don't need to avoid clutter in the slash menu. This was recommended by one of my bot users, and I agree this would be helpful. As of right now, you can hide them from other members, but there's no option for server admins to hide them from themselves.
yes, the docs were updated in #6078
Any chance we could get links in Events descriptions/etc? It would be monumentally useful for servers who hold events online (like on VRChat).
Seriously, any kind of dev feedback on this would be greatly appreciated.
Even just Buttons and Selectors (but preferably also Pagination) would solve making forms viable.
Alternatively, making InputText allowed in messages would also solve this, even if in a kind of ugly way.
The current state of things is incredibly frustrating as a new dev.
I'm sorry, I'm very new here. Are you saying this is something that is already viable for forms? Because my current workaround sucks, and I'd love something better.
I would like to be able to set like a default selected channel in my config menu (this channel has been set earlier and I would like to be able to show the user that that was the channel selected).
This should not only be added for the channel select, but also to the user and role select menus
Github can view STL files, it would be cool if discord could too.
Please let STL file have a preview in the future (I don't really care about the other file types, just stl)
For 3d printing of course, not for furry erp.
thank you,
GameIsRigged
Bu şimdi daha sık oluyor. Günde yaklaşık 20+ kez. Botum, toplam 127k Kullanıcı ile 41 Sunucuda . Esas olarak benim için showModal'da ve bazen de ApplicationCommand'da oluyor . showModal durumunda, hata atılsa bile, modal yine de son kullanıcıya gönderilir. Ancak, ApplicationCommand durumunda, tüm yanıtta doğrudan hata yapar.************
Yea I try fix it I change my host service but it doesnt care...
This is still an issue and it's rolled out to my server. People are using the # markdowns as a spam tool. I've used to block it, but newlines still allow it past the filter.
This is more relevant now that display names exist. I think the behavior should change so that setting a nick equal to the global display name unsets it, to keep the behavior similar to what it was before the username change
This is how this is intended to work. Will update the docs and link it here.
a1227fb Removes stale documentation about adding roles ... - hammerdr
34e2358 Update docs/resources/Guild.md - hammerdr
0961b25 add error codes for onboarding - hammerdr
Has it changed for all servers, including non-community servers? On desktop, the Verify Member button seems to only show in servers with onboarding setup (it shows in all servers on mobile though)
In the slash command documentation, an example POST request is provided, in which the JSON has invalid boolean syntax.
use example JSON block with the boolean examples
Valid JSON with lowercase booleans, as outlined in the JSON schema
...
That is not json, it is a dict in python. The json is serialized by the requests library with json=json.
Ah, ok. I'm not working in Python, and assumed that was supposed to be an example of appropriate JSON
Currently, there is no way for a bot to reliably identify the guild an emoji came from. The best way to do so currently is to list the emojis for every guild the client is in, cache the results, and then perform a lookup by ID when an event involving an emoji is received (e.g Message Reaction Add).
It seems strange for something to be po...
This is a pretty major issue that's making the experience on Discord mobile app pretty buggy.
You cannot setup member verification unless you have community
This would be quite helpful.
@seailz mind commenting with why you added a thumbs down? If you have something that goes against the information in this PR, it'd be better to tell us about it.
If you think this field isn't present on all Guild Audit Log Entry Create events (in my experience, it is), then please let me know and I'll close the PR.
@seailz mind commenting with why you added a thumbs down? If you have something that goes against the information in this PR, it'd be better to tell us about it.
If you think this field isn't present on all Guild Audit Log Entry Create events (in my experience, it is), then please let me know and I'll close the PR.
iirc, there was a line in the gateway events doc that said all guild-related events have a guild_id param
And the comments on that PR show that having per-event documentation is better, so I think this is valid. If #5865 updates with all events having a documented guild_id field then this PR will be irrelevant and I'll close it.
The official Getting Started guide appears to be out of date and completely non-functional. Following the steps to the letter gets the user stuck at the token generation step, since it's never explicitly stated that the user needs to reset their token to actually get one.
But even worse, the Glitch site is extremely unreliable. I've tried 2 browsers, a cache clear, and a restart, but it refuses to load the project that should be pulled up from the remix link.
The guide ...
The ETF gateway leaks a Guild.Models.IncidentsData struct under the incidents_data key causing Elixir's built-in enumeration to raise.
This field does not seem to be documented in the API so I believe this is a bug. See https://github.com/Kraigie/nostrum/issues/511
Currently unclear, I assume this field is sent as part of a GUILD_UPDATE or a new undocumented event.
A similar issue can be found at #4196.
No `:_struct...
Unfortunately, Nextcord (Discord.PY) does not currently provide a built-in method to retrieve this universal display name directly. The available display_name property of the nextcord.User object returns the user's display name based on the current server context, which can be problematic, especially if the display name contains emojis. This affects images, for example.
So it would be very nice if you could add this permanently to make the universal display names usable!
The Discord API does return both the unique username and display_nameglobal_name in the user object
This looks more like an issue from the lib's side, contact them at their repo
Thank you for the information, I’ve already sent it to the library’s side, wich is currently in progress!
They have a PR opened for that (https://github.com/nextcord/nextcord/pull/1061), until that's merged in their repository, it's nothing related to this repository.
That's just libraries not supporting the change yet so the issue/discussion should be opened in their repository, not here.
Thank you as well, I’ve already wrote them!
@Sleight do you have the logs from the Glitch project when you are getting errors, or a video of what's happening? I just tried going through the guide and could not reproduce the errors around issues with Glitch or the node-fetch dependency, but if that's a problem devs are facing would definitely like to update the guide.
GUILD_MEDIA (16) channel type.A GUILD_MEDIA is a channel that is very similar (from an API perspective) to a GUILD_FORUM channel, where only threads can be created in that channel and messages cannot be sent directly in that channel
Note: This feature is still in active development. Many aspects are subject to change
Isn't this outdated anyway? I believe you can use lists and heading anywhere now.
This is probably more accurate:
In thread-only channels, the channel topic can contain markdown for bulleted lists and headings (unlike text channels).
| GUILD_MEDIA | 16 | Channel that can only contain threads, similar to `GUILD_FORUM` channels |
@shaydewael Thanks for the reply! Where would I find Glitch logs?
And I could make a video, but it would literally just be me clicking the "To start, [remix (or clone) the Glitch project 🎏]" link, then the Glitch loading screen that has the remix button in the top right, and a message in a purple pop-up that says "Importing discord/discord-example-app from github.com"
Documenting recent behavior change with the update to invites based on their server type. Still finalizing the date in which the deprecation will occur, but it won't be for at least 30 days from the day we announce the date.
This also introduces a new guild partial in interaction replies to make finding the guild's features easier in cases like this.
You should be able to look at any log output by clicking on "Logs" at the bottom of the Glitch project
And does the Glitch project come up with an error with the purple pop-up? For mine, it stays there until the project is created in my account and it shows me this confirmation state
 and then do Map.from_struct(data) and log a warning. That way you can still see and report issues to us, but it will not crash your library.
612eadc Update docs/resources/Channel.md - shaydewael
Read the [media channel topic](#DOCS_TOPICS_THREADS/media-channels) for more information on the relevant APIs and technical details, or the [media channel Help Center Article](https://creator-support.discord.com/hc/en-us/articles/14346342766743) for more about the feature.
## New `GUILD_MEDIA` channel type
A `GUILD_MEDIA` (type `16`) channel is similar to a `GUILD_FORUM` channel in that only threads can be created in them. Unless otherwise noted, threads in media channels behave in the same way as in forum channel - meaning they use the same endpoints and receive the same Gateway events. More information about media channels and how they appear in Discord can be found in the [media channels Help Center Article](https://creator-support.discord.com/hc/en-us/articles/14346342766743)...
- Add a [`GUILD_MEDIA` (16) channel type](#DOCS_RESOURCES_CHANNEL/channel-object-channel-types). `GUILD_MEDIA` channels only support threads, similar to `GUILD_FORUM` channels.
> warn
> `GUILD_MEDIA` channels are in beta and still being actively developed. The API and other technical details are subject to change.
Threads in thread-only channels have the same permissions behavior as threads in a text channel, inheriting all permissions from the parent channel, with one exception: creating a thread in a threads-only channel only requires the `SEND_MESSAGES` permission.
If it utilises the property, then it should be here, as it is part of its channel.
@lmle Hi, I don't see this in your documentation yet. I am also trying to use Cloudflare Durable Objects with Discord and am being blocked by this.
When creating a new tag/release on a GitHub repository and sending the event to a Discord Webhook, if the version includes dots it will have a backslash in front.
It may occur with some other characters, haven't tested. It also wasn't the case before, it may be coming with those backslashes from GitHub - haven't checked.
/github at the end and set in your repositor...Thank you for the tip, will do that 🙂
The GitHub webhook system escapes (, ), - and many more symbols, which then display the prefixed \ in the ending output.
- in the name\- in the resulting embedIt to display (, ), -, ... as normal, without backslashes
Backslashes display in many places.
.
It is interesting to note that changed usernames also have the same properties of being available only to the original account and no others. So an account that has changed its username 3 times will have 3 different usernames "reserved" for it.
Im not really sure if this is a bug though, cause some usernames might have to be reserved to discord partners and staff, etc.
The reservation only lasts 24 hours so this seems clearly intended, at least for the migration period.
This tracker is for bugs in the API. If you believe you've found a bug in the product you can use https://support.discord.com/hc/en-us/requests/new?ticket_form_id=360006586013. This particular behavior is not a bug though, usernames are held for a short period.
Fwiw, I think this is an unreasonable claim to say that this is by design. If position is not unique then it's poor api design. Why can't the api resolve relative position and perform necessary sorting required to send back unique positions? This feels like it's leaking some implementation detail out to clients and having them deal with some weird nuance. I vote for this being considered a bug that should be fixed.
Emojis in large headers within an embed are displayed small (which should be large), while emojis in large headers in a normal post are displayed large (which is normal).
Put an emoji in a large header that is in an embed # :emoji: This is an emoji in a embed
The emoji should be displayed large like the text of the header
The emoji is displayed small

Self-botting is against the TOS, is there anything else you’d like to tell us?
3.141592653589793238
Any further updates on this?
This implies support for webhooks but they are not visible to edit in the client.
As of the most recent API patch, Animated emoji's used as button emojis no longer play their animations. Instead the first frame of the animation is shown on the button. Before this latest API patch, animated emojis worked properly on buttons.
The button should play the animation of the emoji
The first frame of the gif is d...
This seems to affect decimals as well. For example, if you type "5.50", it's displayed as "5.5".
Discord also announced an upcoming OpenAPI Specification a few months ago.
We are facing that issue. While in some discord servers with less permission tweaking every user can see the slash commands, in others I'm on the "can't use slash" team.
I find the activities.read scope to be completely unclear as well,
"activities.read | allows your app to fetch data from a user's "Now Playing/Recently Played" list — not currently available for apps"
does not imply to me any kind of whitelisting need, or that it is not a valid scope for me to configure in my app. Why does the portal even let me do that?
When does Discord expect to allow others to use the activities.read scope?
This change is worse than the original, by the way. It's completely confusing to anyone who doesn't know what "apps" means in this context, and while this says it's not available, I can still configure my scopes to request it, and it just doesn't work. Worse, the error just says it's unknown or malformed, of which it is neither, instead of saying something like "you may not use this scope."
"invalid_scope&error_description=The+requested+scope+is+invalid%2C+unknown%2C+or+malformed."
It's completely confusing to anyone who doesn't know what "apps"
Imo, if you don't know what an "app" is (in terms of Discord), it's unlikely that you're gonna be working with OAuth2.
Yet you let me configure and request the scope in the portal, so it's not clear to someone like me why it's invalid.
The thing in the portal is just a URL generator. It doesn't do anything, other than give you an ouath url so you don't have to do through the hassle of making one yourself. It doesn't "requ...
Sadly it is not really enough we would like to know when they boost, how many times they boosted overall.
it would be useful to have texts that were connected to an external api, which would keep the text updated with special information.
this text would work like timestamps for example, receiving two pieces of information, label and description.
I think of two ways to make this work.
1 - next to the message object that we send the api, we add the "highlight text" parameter, which is an object containing 3 pieces of information: the initial label, the initial description and the link for...
Thank you @yonilerner. But the documentation said wait=true is the default value. however i manually set wait=true like you asked but i got no change, i still don't receive the notification.
For no reason i also tried to set wait=false but no change.
As workarround, i'm using the github action th0th/notify-discord
Introduce the internet-standard CBOR as an alternative format for both the REST API and for the real time gateway.
Erlang Term Format is a proprietary format, and is derived from the same MessagePack that CBOR also is.
i love propietary standards that have a public spec and are openly licensed
Porting this guide to the documentation—it'll appear in a new Best Practices section beneath Tutorials.
d9dfc5d Add product page best practices (#6245) - shaydewael
Following up on https://github.com/discord/discord-api-docs/issues/6145.
Adds a warning to the docs: you can't connect to the Gateway from a Cloudflare Worker.
Website looks cool, especially the "Export as..." feature.
The reflected XSS vulnerability however shouldn't be a feature and in my opinion not listed as a community resource until fixed by the owner.
The XSS vulnerability has been fixed.
Thanks for the help during that process @kkrypt0nn ❤️
Adding a new field seems to delete the previous inputs for the fields.
Currently only
REQUIRE_TAG(1 << 4) is supported.
What about HIDE_MEDIA_DOWNLOAD_OPTIONS which was introduced in this pull request?
Media channels seem to have a 4096 limit too. Is this an oversight?
The description should probably match the channel type.
GUILD_FORUMor channel
Were media channels supposed to be added here?
The description should probably match the channel type.
@ooliver1 The issue rised up, because I had to change the code structure for the XSS protection. However, this issue is fixed now as well and was only related to missing variable bindings. Thank you for bringing it to my attention.
The table alignment would need to be updated here.
| default_reaction_emoji | [default reaction](#DOCS_RESOURCES_CHANNEL/default-reaction-object) object | emoji to show in the add reaction button on a thread in a `GUILD_FORUM` or `GUILD_MEDIA` channel | Forum, Media |
| available_tags | array of [tag](#DOCS_RESOURCES_CHANNEL/forum-tag-object) objects | set of tags that can be used in a `GUILD_FORUM` or `GUILD_MEDIA` channel | Forum, Media |
The Unban API does not seem to be unbanning the user ID i provide in my user option. However the Ban API does work.
Just use a user option - insert a user ID - run the unban API and the user ID who was inserted is still banned
The user with the inserted ID to be unbanned
The user with the inserted ID stays banned
None
Windows 11
Still the case.
This seems to be because they remove newlines from the text before applying regex - like a makeshift singleline flag.
You can simply put regex \n and it can't match.
So it has no idea where newlines are.
The author icon icons are not showing in embeds, sometimes they will show, and then disappear again.
Use a command that has an embed with an author icon. It may initially show, but if you switch guilds and come back at a later point, it will be disappeared again.
Author icon should always show.
Author icon doesn't show
 displays url as either missing or string.
It can lead to an error while deserializing a message with a non-null aware language as Kotlin (https://github.com/kordlib/kord/issues/838).
new audit log entries at this point should no longer have channel_id set to empty string, going to close this out. can re-open this issue if we still notice this happening
@shaydewael
Sorry for the late reply. I wasn't able to view the logs because the project never fully loaded. I was only able to see a blank white screen with the site options at the top, an animated loading graphic in the middle, and the purple pop up in the top right.
There was no error message, it just looked like it froze while loading.
In the docs https://discord.com/developers/docs/reference#locales it lists Indonesian as a supported language however Indonesian is not a language in the language settings.
Your language should be set to indonesian
You should be able to set your clients language to ind...
when getting a message with channelId and message.id the message cannot be edited if ephemeral. this only seems to be the case when using an message component interaction to get the old message and then edit it. but if you create a message from the initial interaction then use a messageComponenetCollector to respond to the component interactions you can edit and delete the Message
from command interaction I send a message containing buttons and an...
For interaction responses you need to use the dedicated endpoints for editing interaction responses. The standard edit message endpoint is not supported for interaction responses, and it does not work for ephemeral messages.
was the discord creation date mint cryptographic encryption algorithm changed? . since the only documentation , was suggesting a way to decrypt available items to by decrypted which is the first and second section. it does work for the first section (before the first dot) of the token which is the user id decrypted in base64.
...
It's not the case anymore.
For your information, base64 is not encryption it's encoding.
The current state of these extended markdown features is effectively as follows:
We have rolled out support for Headers and Lists to all servers as part of an experiment. We are letting that rest and are patching issues as we see them.
We have not rolled out masked links for general messages to users. It is unclear if/when we will do this.
We have made changes to masked links across the entire ecosystem based on security vulnerabilities found
- This i...
Having the same issue with only 1 of my bots, the emoji shows but its not animated
I'm observing exactly the same problem. The events appeared as correctly sent with a 204 status code seen on Github, they never make it to the slack channel though. As @Tadjaur noted, wait is documented as true by default, I anyway tried wait=true and got no improvement.
Certain github events don't have a custom embed and get discarded by that endpoint. Have you seen an embed for this before? I believe only the most common events have embed behavior defined (since there is an absurd number of possible events).
Have you seen an embed for this before?
No, it's the first time I was trying it.
I believe only the most common events have embed behavior defined
Maybe the list of supported events should be documented? workflow_run seems common enough to me :)
Having the same issue on Ubuntu 20.04. Happens both in Chrome browser and in the Discord app itself. Haven't tried other browsers
Sadly it is not really enough we would like to know when they boost, how many times they boosted overall.
You can't see how many times they boosted overall yet, that's part of #3259, but you can look at the timestamp on premium_since to see when they boosted.
The current state of these extended markdown features is effectively as follows:
- We have rolled out support for Headers and Lists to all servers as part of an experiment. We are letting that rest and are patching issues as we see them.
- We have not rolled out masked links for general messages to users. It is unclear if/when we will do this.
- We have made changes to masked links across the entire ecosystem based on security vulnerabilities found
...
Ownership of such guilds should automatically be transferred to the coalesced ghost user (#456226577798135808) 30 days after the offending user's deletion. And, if not claimed during those 30 days, further 30 days later, the guild should automatically be deleted from Discord's database altogether.
Bump! I would like this to be a feature.
Another factor here is that mobile notifications only include the first line of the embed making for relatively unhelpful distractions to users.
Thanks for pointing that out ckohen. I just looked into this more, the events we support are:
Ill add a TODO for us to document that
@Sleight hmmm ok, well sorry you're hitting issues. If others have the same issues I'd be interested to hear about it since I'm not able to reproduce. For now, I'd suggest following the instructions in the README for running the app locally to avoid this.
There is also a link to a Replit in the README as well which you're welcome to use.
Not sure if this was the right place to create the issue, or if it should be an issue.
Posting this here to see traction and relevance before submitting a Pull Request with the features below.
With the recent popularity boom in Community enabled Guilds, the features introduced are a well welcomed change. There has been a lot of confusion though on how to reference these resources in everyday channels. Adding the rel...
- #6105
Ah sweet! Searched based off what I could think to call it, didn’t think of those terms. I’ll try to see how I can close the issue.
Can you please provide more information on what the security reasons are?
Thanks for providing the list of supported events. I guess then that this issue is a feature request for adding support to workflow_x events (e.g. workflow_dispatch, workflow_run).
I'm guessing the reason the Markdown renderer no longer allows using a hyperlink as the "hover text" value is for security, as you could trick users into thinking the link points to one thing when it really points to another.
If this is the case, it would be preferable during on-hover that Discord would display the underlying hyperlink, where currently it just uses the same value as the display text.
Showing the same value as the display text is not helpful to the user; show...
Issue NOT Fixed! Please REOPEN!
Related: https://github.com/discord/discord-api-docs/issues/5524
I have noticed that when using monitors/GPUs that support HDR or have those settings enabled, the image appears oversaturated in Discord streams, while it looks normal on the monitor itself. To test this, I streamed with two different accounts and checked how the stream appeared. (When viewing your own stream, everything is displayed correctly without compression, etc.) I encounter a similar problem with screenshots in Chrome, but there is an option to switch the color profile to sRGB, which ...
Can you link this announcement?
Although it's not a language you can set your client to, the API does indeed recognize the Indonesian locale code. In the future we may update this list to indicate languages that are recognized by the API but not available on the client.
A fix is in the works for this!
My server had access to this experiment early on, so it has some pretty old media channels. This doesn't apply to any new media channels I create, but older ones appear with type GUILD_FORUM with the flags field set with the 1 << 10 bitwise operator. Additionally, webhooks are fully functional in these older ones, and appear on the client, regardless if any are created. This is not true for recently created media channels.
The active threads resource used to list applied_tags because it returns a list of channel objects. Instead of performing a single call to list all active threads with a certain tag applied we now have to perform N requests, where N is the amount of active threads.
list active threads https://discord.com/api/v6/guilds//threads/active
Expecting the body to contain applied_tags
body does not contain appli...
Removed invalid comment from the code
Been writing a bot for a server that requires new member verification and one of the key elements to allowing a user to pass into the rest of the server is bio contents.
Malicious bots and scammers seem to have a way of letting us know what they are by putting certain phrases in the about me section (ie "crypto" this and "porn" that) and idealy it would be nice if a bot could access that and give a moderator a heads up about that user. We do this for the usernames/nicknames already.
Time to update the API version to something non-deprecated
whoops. Edited the original post to reflect the api version I actually tried. Copied the wrong version from my terminal after trying a bunch of versions
The Ukranian modifying letter apostrophe is now supported in command names. It should now be available when registering new commands using the API.
The Ukranian modifying letter apostrophe is now supported in command names. It should now be available when registering new commands using the API.
the future we may update this list to indicate languages that are recognized by the API but not available on the client.
If this is the case then how can we implement command localisation for Indonesian?
since soundboard has been released, I've added the soundboard effect fields to this PR. The shared canvas fields are still omitted
soundboard sound details and management will be in another pr
A fix is in the works for this!
We talked on the Discord Developer server. Thanks again for your feedback :)
Documents soundboard sounds and management. When a soundboard sound is used, Voice Channel Effect Send is emitted, which is documented in #6025
some notes:
GUILD_SOUNDBOARD_SOUND_CREATE, GUILD_SOUNDBOARD_SOUND_UPDATE, and GUILD_SOUNDBOARD_SOUND_DELETE are not tied to any intent currently, so they are sent to all bots
What's the difference between this and the sound_id?
| guild_id? | snowflake | the id of the guild this sound belongs to |
Soundboard sounds in a set of guilds can be retrieved over the Gateway using [Request Soundboard Sounds](#DOCS_TOPICS_GATEWAY_EVENTS/request-soundboard-sounds).
There is a set of [default sounds](#DOCS_RESOURCES_SOUNDBOARD/list-soundboard-default-sounds) available to all users. Soundboard sounds can also be [created in a guild](#DOCS_RESOURCES_SOUNDBOARD/create-guild-soundboard-sound); users will be able to use the sounds in this guild, and Nitro subscribers can use them in any guild.
| Soundboard Sound | soundboard-sounds/[sound_id](#DOCS_RESOURCES_SOUNDBOARD/soundboard-sound-object) |
| Soundboard Default Sound | soundboard-default-sounds/[sound_override_path](#DOCS_RESOURCES_SOUNDBOARD/soundboard-sound-object) |
Users can play soundboard sounds in voice channels, triggering a [Voice Channel Effect Send](#DOCS_TOPICS_GATEWAY_EVENTS/voice-channel-effect-send) Gateway event for users connected to the voice channel. Bots cannot play soundboard sounds. Soundboard use is controlled by the `USE_SOUNDBOARD` and `USE_EXTERNAL_SOUNDS` [permissions](#DOCS_TOPICS_PERMISSIONS).
this will make the ci fail until #6025 gets merged
Looks like
idandsound_idare always the same, butidis optional
Oh sorry mb, missed that part...
I have the same issue, but only after editing the components on said message. When sending the message, everything works fine, but as soon as I edit the components, it is not working anymore.
Even when setting the buttons to their original state after an edit, the animations won't show anymore.
For anyone coming here to find the supported locales, they're here now: https://discord.com/developers/docs/reference#locales
When a modal is created with 5 large paragraph components, it is incorrectly rendered, components overflow the modal boundaries. This is only the case on the desktop client.
When the components are taking more space than the modal’s boundaries, it should either have a scroll wheel and the compon...
My application uses private threads for a ticket/mod-mail system that doesn't require users to open their DMs.
Currently, this forces my bot to use the privileged message content intent to allow users to download a transcript of their ticket.
My idea is to allow applications to receive messages in threads they created themselves without requiring privileged intents. The thread could then display a warning similar to the "Clyde can read all messages in this thread" mentioned in threads Cly...
I feel like it kinda defeats the point, it exists as an obtainable intent so legitimate usecases aren’t affected by the restriction around message content. Requiring privileged intents to work isn’t a bad thing on its own, or something to try to go around unless Discord doesn’t consider the usecase valid, but then they wouldn’t want to make the data non privileged anyway..
As for the argument that says it’s similar to DMs and mentions, as far as I know the reason those were exempted is bec...
Thanks for the feedback!
I feel like it kinda defeats the point, it exists as an obtainable intent so legitimate usecases aren’t affected by the restriction around message content. Requiring privileged intents to work isn’t a bad thing on its own, or something to try to go around unless Discord doesn’t consider the usecase valid, but then they wouldn’t want to make the data non privileged anyway..
This proposal doesn't want to work around privileged intents. Its focus is to prevent ha...
The Least Privilege is a good point, but I’m not fully sure if giving more data to everyone is better (okay this isn’t really everyone since not all bots create threads) then giving even more data to a smaller number of bots… i guess Discord can figure that out with their analytics
Also side note but slash commands don’t need the intent, and receiving attachments via modals can be done with a link, or an attachment option in a slash command, so these wouldn’t impact the number of bots nee...
I suppose something like the Clyde can read all messages in this thread. would be ideal if that was done.
https://top.gg/bot/1110706043744432128... no reversing reply chane... A simple list.reverse is easy enough of a fix for this
+1 it can not actually happen.. but it can be simulated
Ok, so Discord has announced the roll-out of links in messages on Thursday on their discord server and asked for feedback.
They broke masked links in embeds for mobile clients again (which is still not fixed, and we're going on weekends once again, like the last time). I pinged @jkcailteux as there seemed to be no reports of this. And today I'm no longer in the server, and can't join (aka. banned). No warning or explanation.
👏 👏 👏 Fantastic work from discord developers once again.
Excu...
I think its time this gets supported the ability to embed like a youtube video within an embed.
This repository is for API related issues, what you are experiencing seems to be a simple frontend bug
this report is supposed to be here - bot/interaction client side issues are valid
this is a breaking change that will cause issues for bots, shouldn't this be part of a new api version?
> Member objects retrieved from `VOICE_STATE_UPDATE` events will have `joined_at` set as `null` if the member was invited as a guest.
Post a typing indicator for the specified channel. Generally bots should **not** implement this route. However, if a bot is responding to a command and expects the computation to take a few seconds, this endpoint may be called to let the user know that the bot is processing their message. The typing indicator expires after 10 seconds, you might call this endpoint again to maintain the typing indicator, a 5 seconds interval should be reasonable. Returns a 204 empty response on s...
Updates docs to reflect that sticker packs are no longer Nitro locked.
Bots can use standard stickers if they send a recent x-super-properties header.
In a well-known open source reimplementation of Discord API, I have actually implemented cross-channel replies, just one step short of moving messages across channels, and could confidently say this would cause no client-side problems towards most implementations, except a few Java and C# implementations which have too strict typing in the precondition.
I propose that instead of transferred to 456226577798135808 the guild be transferred to the bot account with the first name in alphabetical order.
456226577798135808 is the "Deleted User#0000".
Seems like that would cause a hell of a lot of issues.
@advaith1 Can we please make it possible for them to be still usable when the thread is locked? Think for example of a support ticket system made with private threads, we want to make it so that when the ticket is over and it's locked and closed by the bot, the bot shows a button to the user that allows them to send a modal with rating/feedback about the support agent.
no actions can happen in archived/closed threads by design, but now you can lock threads without archiving them
If the user has a deleted existence can it even own a guild?
Merging threads, channels and guilds would also be useful so the contents of the merged would appear in chronological order, even if only done on the clientside
The webhook oauth flow currently doesn't show forum channels. The extra thread name parameter could break some existing apps, so making it opt-in could make sense, but as far as I know adding a webhook to a forum channel via oauth is not possible.
Discord has made many intents privileged over the past few weeks. While some of them are obscure, the vast majority of them are for good reason.
While message content, the last largely controversial now-privileged intent, provided a minor degradation of the usability of the Discord API, it was made privileged to protect the privacy of users.
VOICE_STATE_UPDATE is a similar intent. It provides even more sensitive information. From my calculations, making it privileged would have an even sma...
Voice state updates are the only source for a user's status in a voice channel. Bots rely on these to know whether a user is muted or deafened or connected to a channel. What about that is sensitive or used illegitimately?
Hey, is there a workaround for this or something?
Hey, is there a workaround for this or something?
Doing a request per thread to get its applied tags
How do I do this?
And is this temporary or is this the new way to get the tags?
How do I do this?
With this
And is this temporary or is this the new way to get the tags?
Until an employee responds, we don't know. Considering there's a synced label to the issue they are /will be looking into it.
Discord has made many intents privileged over the past few weeks
where did you get that from? there are only three privileged intents, and that's been the case for several months/years already
This would be better for the user-experience because users won't have to provide an URL but can just upload an image.
The recently introduced channel emoji experiment has introduced a new CHANNEL_UPDATE event, which fires directly after the channel is created. This causes problems when another update happens before that emoji is created.
This invalid state is cached persistently. You can fix this by editing the channel manually:
https://github.com/discord/discord-api-docs/assets/18090140/971cbfd5-40cd-4812-ac13-163953dcb91c
This could be abused to send excessively large files but could also improve security for the bot as they are no longer sending a request to an arbitrary URL
I'd imagine that files get uploaded to the Discord CDN like usual so the bot only receives the meta data in the interaction and can decide to download it or not.
Currently, the only flag is IN_PROMPT
also, should icon and unicode_emoji be changed to non-optional? they seem to always be present
sounds like the same issue people encounter when various bots try to assign roles at guild_member_add? (only that this one cannot really be avoided now due to the emoji update). afaik that's because those updates are not properly handled in sequence but fiddled together rather... unfortunately.
Then it can (can) be updated at that point. There is no reason to cautiously make intents priviledged, when voice states are only about as sensitive as any other non-priviledged intent. Voice states make up 3/4 of my events, and are the only ones (apart from guild events for cache) that my bot cares about.
I don't think that's relevant
I think the OP may desire a custom implementation of the standard
I don't think that's relevant
It is quite relevant, that is a quote from your post but it is incorrect. Your wording is like Discord has made many more intents priviledged recently
@seailz Why would it? "Deleted User#0000" is a purpose-built ghost user.
@seailz Why would it? "Deleted User#0000" is a purpose-built ghost user.
Was replying to the thread, not you.
At some point we are creating non-solutions to problems that don't exist
To be fair this entire discussion post is a non-solution to a problem that doesn’t exist
The system as is works fine and we have no current nor future plans to change it.
The system as is works fine and we have no current nor future plans to change it.
Do webhooks even support forum channels? This might be the underlying issue!
Why not just paginate the modal? its more secure.
I believe the limit was also enforced to reduce data harvesting. With fewer inputs, less sensitive data can be collected.
I believe the limit was also enforced to reduce data harvesting. With fewer inputs, less sensitive data can be collected.
I think the 5-input limit was less because of data security and more because of a lack of space on Mobile devices. 🤔
if a developer adds 5 paragraph-style fields to a modal, the modal overflows and shows a vertical scrollbar.
@TwilightZebby modals on mobile open in full screen and are scrollable (just like how it should be on desktop), not sure how lack of UI space on mobile is related to the limit 🤔
maybe the limit is there due to how modal interactions work, as after 15 minutes the interaction tokens expire, so maybe having many components to fill could take a while?
either way this expiration (for modals specifically), whether its related to the limit or not, is pretty stupid and should be removed
Making events privileged before they release will reduce community backlash. For example, if message content was privileged before messages existed, there wouldn't have been any backlash.
But there is nothing that will be changing with voice states that we know of, so there is no reason for you to pick that specific intent. All current (3) privileged intents were accessible without privileges before they were introduced.
nothing that will be changing with voice states that we know of
speak for yourself
No plans to do so. If ETF does not work for you, please consider using JSON. Note that our gateway speaking ETF is an optimization, as it's faster to serialize due to being the native format that Erlang uses to communicate within its distribution. CBOR, like JSON would not have that benefit, and would add additional complexity to the system for little to no gain.
No plans to do so. If ETF does not work for you, please consider using JSON. Note that our gateway speaking ETF is an optimization, as it's faster to serialize due to being the native format that Erlang uses to communicate within its distribution. CBOR, like JSON would not have that benefit, and would add additional complexity to the system for little to no gain.
Why are you assuming that voice state may “include sensitive information in the future” as a justification to restrict it right now? Discord is perfectly capable of making these decisions on their own without your expertise
As the interactions model is meant to be used in both ways, with and without gateway, it is very uncomfortable that we only get a partial channel object in the interaction object.
Especially for pure HTTP interactions it would be useful to get this full object instead of only a partial one where you don't even know
...
I think you would be more likely to get what you need if you request the specific fields you need, with use cases, instead of the whole object
Well that would take a bit to collect all the fields with their use case... That's why I wrote that (also, because it would be the only solution that would not require additional models in most libs):
X-Audit-Log-Reason header to delete request https://discord.com/api/channels/{channel.id} does not work
send API-request to https://discord.com/api/channels/{channel.id} with X-Audit-Log-Reason or try to delete channel with reason using library e.x. discord.py
reason by header in audit
no additional fields in audit
No response
wind...
https://discord.dev/resources/webhook#execute-webhook see the thread_name and thread_id parameters
Documents the new attachment flags field and the flag 1 << 2 for the remix feature. I am not aware of any other flags on attachments.
| flags? | integer | [attachment flags](#DOCS_RESOURCES_CHANNEL/attachment-object-attachment-flags) combined as a [bitfield](https://en.wikipedia.org/wiki/Bit_field) |
Arr
@Lulalaby thanks for catching that typo!
This is not a bug with the API as the provided reason is correctly stored in the audit log entry.
looks like it’s just not displayed in the UI
try submitting to the bug report form
1 << 0: IS_CLIP
1 << 1: IS_THUMBNAIL
1 << 2: IS_REMIX
| Flag | Value | Description |
| -------- | ------ | ----------------------------------------------------------------- |
| IS_REMIX | 1 << 2 | this attachment has been edited using the remix feature on mobile |
fixed name and formatting
Please answer which one it is using the language defined https://github.com/discord/discord-api-docs/pull/5844#issuecomment-1409840094
can you try delete channel with reason and send audit log here?
@Emil4570 the reason is just not displayed in the audit log page
try GETing the guild's audit log (/guilds/:guild_id/audit-logs), you will find the reason set
this issue should be reported in the form as its not related to the API rather the client itself
The temporary workaround for me is to allow external emoji for @everyone, not really what I want but I guess it works for now
AHHHH @Tiffceet Thx a ton! I dealt with this prob for ages. Even started fresh on the new server but issue stayed. Setting @everyone's perms for external emojis did the trick. Not a big deal though since @everyone has no rights. Newbies get Members role, so it's all good.
@Emil4570 the reason is just not displayed in the audit log page try
GETing the guild's audit log (/guilds/:guild_id/audit-logs), you will find thereasonset this issue should be reported in the form as its not related to the API rather the client itself
Ok. thanks <3
HTTP only bots display in the online list without an indicator.
However, an issue arises when said bot POSTs to /channels/{channel.id}/typing. In the member list, the bot displays the offline typing status, and when it finishes typing, has the offline indicator, but remains in the online list.
The status will return to normal when switching channels.
When the placeholder text for a modal is too long for the short input type it becomes unreadable. The current limit in the API is 100 characters. Only about the first 58 characters are visible.
Shown in the 3rd field of the image.
you would think we'd have more than just a text input by now, even something as simple as text labels would be great
The Gateway Rate Limiting documentation states the following information.
Apps can send 120 gateway events per connection every 60 seconds, meaning an average of 2 commands per second. Apps that surpass the limit are immediately disconnected from the Gateway. Similar to other rat...
i have some fix
msg.edit({ embeds: [exampleEmbed], attachments: [] });
after editing you can delete attached image
(\n(.*)){11,}
same issue here, im trying to limit the amount of newlines allowed in a chat
👍 hoping this will be fixed soon
I noticed something isn't working properly.
When you update a message via the interaction you need to provide the attachments or they get deleted however if you edit the message directly via the interaction message you don't need to provide the attachments (attachments don't get deleted).
I'm using the latest version of discord.py
await interaction.response.edit_message() # Need to provide the attachments
await interaction.message....
This is standard behavior in v10. Contact discord.py support for help with their own library.
As stated in the docs [1] [2]:
Starting with API v10, the
attachmentsarray must contain all attachments that should be present after edit, including retained and new attachments provided in the request body.
This is standard behavior in v10 of the Discord API. Contact discord.py support for help with their own library. As stated in the docs [1] [2]:
Starting with API v10, the
attachmentsarray must contain all attachments that should be present after edit, including retained and new attachments provided in the request body.
I don't bel...
This is standard behavior in v10 of the Discord API. Contact discord.py support for help with their own library. As stated in the docs [1] [2]:
Starting with API v10, the
attachmentsarray must contain all attachments that should be present after edit, including retained and new attachments provided in the request body.I don't...
The endpoint being called on the edit is POST /interactions/{interaction.id}/{interaction.token}/callback. Discord.JS is sending this payload for the edit which is removing the previous image: ```json
{
"body": {
"type": 7,
"data": {
"content": "Edited",
"tts": false
}
},
"files": [],
"auth": false
}
I also tried omitting the `files` array, but the same issue occurs.
I seem to be having the issue again. It was working fine for a while.
We are working on a fix for this. Thank you for bringing it to our attention.
| nsfw | ?boolean | whether the channel is nsfw | Text, Voice, Announcement, Stage, Forum, Media |
the nsfw can be set in media channels too.
@DV8FromTheWorld Has the team considered a potential solution like @vicenterendo mentioned here? Create a channel type that's essentially "bot/commands/applications-only" which would allow using these features but wouldn't send a message to a channel.
https://github.com/discord/discord-api-docs/discussions/5097#discussioncomment-4771863
I can't repro that, its working fine for me.
When more than 50 50+1 requests are sent with the same Authorization Header (Same Token), the user is given a ratelimit, that is, the Authorization token, and the user receives a ratelimit. vanity-url endpoint ratelimit = Self-Authorization (User) Please switch to rate limit based on guild ID arrogant bastards curse discord api here Malicious people are creating multiple accounts and spamming using different tokens and sending too many requests to the API. As before, when 50 ...
Respectfully what are you talking about?
Closing as this issue is not actionable, feel free to follow up with more repro information
Discord currently fails to embed additional text/media data for masked links which include any non-white-space character right after the closing ). This is because it's looking for a white-space character to mark the end of a URL which results into sending an incorrect URL. I first observed this on one of my own websites but this also affects others, e.g. Twitter. Interestingly it does not affect YouTube links because they are smart enough to know how long their video IDs a...
Bot users are now automatically attached to newly created applications. This part of the docs is outdated.
I, too, would love to be able to use markdown links in embed field headers. I don't understand why a use-case must be justified in the first place, but in my case I am writing a new Jenkins CI bot to post build statuses of build jobs. I'd like to be able to use the commit hash as a field header with a markdown link to the github page of that commit. there can be multiple commits per build, so it makes sense to use the embed fields for this exact purpose. I find it rather disappointing that it...
The application can send as many events per second as it wants (on the same Discord Session) without being immediately disconnected from the Gateway, provided that the WebSocket Connection is connected and disconnected.
Please explain if using this behavior is considered abuse.
Do you mean by disconnecting and resuming on-purpose when being close to the rate limit to continue to send commands?
This is definitely against both the [Developer Terms of Service (2.b.c.iv)](https://dis...
I'm trying to timeout user via the public Discord API
Im using this url /guilds/{guild.id}/members/{user.id}
Expected behavior:
Sending a request with communication_disabled_until parameter returns 200* code and user got timeout
Actual behavior
Sending a request with communication...
re: @Zoddo
Using the API in this manner doesn't access the APIs in any way that exceeds any API rate, call, or other usage limits Discord has set.
As you have stated, the rate limit is documented at "per connection": This language indicates that creating a new connection and adhering to its rate limit is valid.
Disconnecting and resuming to a WebSocket Connection while sending less than 120 events is adhering to the specified rate limits. So disconnecting and resuming to send m...
It'd be better if you use the Discord Developers server for help with the API
As for your issue, the bot does not have the sufficient permissions to timeout the member you're trying to timeout, if your bot does have admin perms, then probably the member is either:
re: @Zoddo
I believe that the reason why this is documented as being "per connection" instead of "per session" is to clarify that commands sent out of a session (before a READY or a RESUME, like heartbeats) are still counted against the limit. They didn't document it that way to say "if this rate-limit bothers you, just disconnect and resume when hitting it lol".
We can personally speculate why certain language is included in the documentation, but that doesn't change what is actually...
@horodynskyi I think the discussions section and the category you set are used for feature requests and suggestions.
It'll be easier (at least for me) if you join the Discord server (that server is official btw) and continue there.
Update: Stop looking at closed issues and do your work.
@switchupcb I watch this repository, so I see every update from here. This is not affecting my productivity.
name-calling (rude)
There is no name-calling here?
It would be best to wait for a response from a Discord employee if any, instead of giving replies like these.
There is no name-calling here?
—@ooliver1
https://github.com/discord/discord-api-docs/issues/5557#issuecomment-1281335933
https://github.com/discord/discord-api-docs/discussions/5605#discussioncomment-4055516
The irony of @SuperSajuuk coming in here and downvoting all my posts.
This is what I'm talking about.
Not really sure why I've been mentioned here... I reacted because you closed the issue stating 'No one cares' when only 2 days have passed without an answer. People here wait for months sometimes to get [official] answers lol.
I am not a Discord employee, not sure what work I haven't done
Like I literally close the issue and then everyone starts replying to it.
I don't care about the answer anymore and don't want the employees to "feel bad" (like in #5557) just because I asked for clarification about something.
So I closed the issue.
No one cared about this issue before the issue closed.
Why do you care now?
Do your development work. Stop looking at closed issues!!!

I want, please update set to Guild Based Rate limit:= (The resource is being ratelimited.) Server ID Based , Not bypassable
Current vanity-url rate limit rule:= You are being ratelimited (Authorization User Based)
I want, please update set to Guild Based Rate limit:= (The resource is being ratelimited.) Server ID Based , Not bypassable
Current vanity-url rate limit rule:= You are being ratelimited (Authorization User Based)
I want, please update set to Guild Based Rate limit:= (The resource is being ratelimited.) Server ID Based , Not bypassable
Current vanity-url rate limit rule:= You are being ratelimited
(Authorization User Based)
I want, please update set to Guild Based Rate limit:= (The resource is
being ratelimited.) Server ID Based , Not bypassable
8 Temmuz 2023 Cumartesi tarihinde Ryan Broman @.***>
yazdı:
Respectfully what are you talking about?
—
Reply to this email directly, view it on GitHub
https://github.com/discord/discord-api-docs/issues/6278#issuecomment-1626376856,
or unsubscribe...
The interaction events for message commands provide a message object in data.resolved. This message object only includes the author but not the member in the context of guilds.
It would be nice if the message member could also be provided in these interactions, this is useful for checking roles and permissions of the message author.
Spotted these while checking my transcription of the docs :D
I'm not too sure of the "instead of" wording and there may be other exceptions like these. Nonetheless, I've spotted these so I documented them!
Using a user token to access the API is against tos
I had this same issue this morning. Here is my client and system information
Discord Stable 211644 (7772b14)
Mac OS Ventura 13.4.1 (ARM)
Safari Version 16.5.1
When I switch my browser to Firefox (114.0.1) it worked.
he's been spamming this for a while now, not sure why its not being removed
I agree with everything people are saying. I built an integrated dashboard for my bot with modals buttons and selects because the tools are so powerful. BUT, I was really restricted with modals. Everything else is great! I really feel like Discord should prioritize this. Bots are what make Discord a one-size-fits-all in my opinion, but in their current state, they're bulky to use. I think this would be a major step forward.
ian said in ddevs they have no plans for modals
What I have done:
I hope these changes are good for you! The old imagery has been bothering me for a good while!
I think they'd prefer if neutral assets were used instead, stripped of anyone's name except their brand characters
😕
There are a lot of ideas here: https://github.com/discord/discord-api-docs/discussions
The client is rendering these correctly and navigate to the correct urls.
Are you suggesting this is a problem in regards to the requests made to the website to get embed information?
The Create Guild Emoji endpoint currently has a ratelimit of 50 requests per hour. This is (in my opinion) unnecessarily restrictive, especially for Nitro Boosted servers with more than 50 emoji slots. I have an application which bulk manages emojis, and this ratelimit is very prohibitive, especially in these boosted servers. Could the ratelimit on this endpoint be updated to 250 requests/hour to reflect the current maximum of 250 slots?
I found a [similar discussion](https://github.com/d...
Can you provide a reproduction script or some other proof of issue?
This is not a bug, it is intentional.
This is called URL Canonicalization and it is part of our efforts to improve security of urls.
https://url.spec.whatwg.org/#example-5434421b
https://chromium.googlesource.com/chromium/src/+/master/docs/security/url_display_guidelines/url_display_guidelines.md#display-urls-in-canonical-form
Closing due to lack of additional conversation
I have a current (sub-optimal, but in theory correct) implementation, that quickly removes a role (DELETE https://discord.com/api/v10/guilds/$server/members/$member/roles/$roleAId) before adding a new role to a member (PUT https://discord.com/api/v10/guilds/$server/members/$member/roles/$roleBId). The request to add a new role is started immediately after the one to remove has been started, so its save to assume that they run in parallel.
The requests also return at relativ...
Yes, but he also said in [Discord](#interaction-modals message),
I think it's been longer than that (I don't mean this to be tongue in cheek - just that we do listen and hear it, and are aware of it). The short of it is we have two teams working on a lot of different projects, responsible for many different things. Features and requests get prioritized against other projects. Regrettably we just don't have time to do everything -...
Ok, so Discord has announced the roll-out of links in messages on Thursday on their discord server and asked for feedback. They broke masked links in embeds for mobile clients again (which is still not fixed, and we're going on weekends once again, like the last time). I pinged @jkcailteux as there seemed to be no reports of this. And today I'm no longer in the server, and can't join (aka. banned). No warning or explanation.
👏 👏 👏 Fantastic work from discord developers once again.
...
They fixed it last week. It's not an app issue, just like previous times it's a server-side change (unless they can push in-app updates idk). With zero communication you might as well ask an oracle ¯_(ツ)_/¯
My original report is still in the server with screenshots if you care.
Correct. I'm pointing out that there is a problem with the requests to get embed information. Clients are indeed rendering masked links correctly but the embed information is missing because of this bug.
I guess there are no news about this feature.
I was currently working on something similar, specially for forum post, to automatically add all users with permissions so the can see new post easily. otherwise they are hidden.
but this "added X to the thread" is really unnecesary.
I do care, and it was not a server-side change. I have fixed a number of issues related to this and they're all front-end, so more likely than not I fixed the issue you're talking about weeks ago but your app wasn't updated yet.
For some things, we can and do push in-app updates, but not all are possible.
Yup, I understand now. I've logged the bug internally. Thanks for bringing this up.
there's been at least two ios client updates when this was reproducible, I manually check daily, so I'm confident I checked on the latest version available (both phone and ipad).
android version I only have on windows subsystem for android, and that one was freshly installed to confirm the issue on mobile clients, but I didn't check on android after the initial report, so I can't say if the client was updated since.
183 and 184 are pretty "old" from a "development" perspective unfortunately. The changes I made were native code changes and as such are on a minimum of a 2 week release cycle because of how native storefronts (Android PlayStore / Apple AppStore) allow updates to be released to the apps on their stores.
In general, many of our resources do not have explicit locks to prevent races. This is currently working as expected.
I would suggest that you await the completion of one request before sending the second request, thus preventing the race-condition from your own code.
Optionally, you could instead use the https://discord.com/developers/docs/resources/guild#modify-guild-member endpoint. In JDA, that would be Guild#modifyMemberRoles
All I want is masked links in event locations. Being able to add instance links for VRChat in a way that doesn't look ugly would be a dream.
I just tested using your example case and a real token. After 50 attempts receiving a 403 + "Missing Permission", the 51st attempt received a ratelimit.
However, when using a different account that did have permissions to modify the vanity-url, I was able to modify the url. The bad actor account was unable to restrict a good-actor account from using the endpoint.
The endpoint already takes into account both user and guild for ratelimiting, so I think everything here is working as inte...
Do not hold me to this, but I think once we roll out to 100% of users and clean up, then it will work here @polyjitter.
I would like to see these make it into an update, it would be really useful. Also, I thought a color picker could be helpful as well so I made a concept for that one as well.
Problem and you didn't understand what I asked. Yes, RateLimit works, but (You are being ratelimited), so as you said, there is a user-based ratelimit, a transaction can be made to the same server with another account without being affected by the ratelimit (vanity-url)
What I want is (The resource is being ratelimited) to limit the yanj ratelimit directly to the server, not to the user, because if that's the case, malicious people (vanity snipers vanity f*ckers) use the same server with oth...
I just tested using your example case and a real token. After 50 attempts receiving a 403 + "Missing Permission", the 51st attempt received a ratelimit.
However, when using a different account that did have permissions to modify the vanity-url, I was able to modify the url. The bad actor account was unable to restrict a good-actor account from using the endpoint.
The endpoint already takes into account both user and guild for ratelimiting, so I think everything here is worki...
Problem and you didn't understand what I asked. Yes, RateLimit works, but (You are being ratelimited), so as you said, there is a user-based ratelimit, a transaction can be made to the same server with another account without being affected by the ratelimit (vanity-url)
What I want is (The resource is being ratelimited) to limit the yanj ratelimit directly to the server, not to the user, because if that's the case, malicious people (vanity snipers vanity f*ckers) use the same server with oth...
Is there a way to customize the user's rpc using websocket? Yes how?
Will that let users embed links in their bio? It'd be really nice to be able to write
Programmer. Yes, my pfp is my puppy. Learn to program Ruby! Join us at [the Ruby discord](https://discord.com/invite/ad2acQFtkh)
in my bio
RPC is only for desktop apps connecting to a Discord desktop client locally
4. In the case of webhooks/embeds, masked links should continue to work and should also continue to support allowing emojis in the
title([title](url))
Tried checking if this issue has been mentioned already but it didn't seem like it so I'm asking, this doesn't seem to be the case anymore, I tried to simply do [google](https://google.com/) in the embed title and it doesn't work but works in description
The JSON I tried: `{ title: "google", description: "[...
Links in the title never worked, same as in footer. You have explicit link property for a reason there.
Links in the title never worked, same as in footer
So what was this supposed to mean?
4. In the case of webhooks/embeds, masked links should continue to work and should also continue to support allowing emojis in the
title([title](url))
Please do not confuse links in embed title with the title of the masked link.
I see, I was confused by that, thanks for pointing it out.
And my other question still stands:
Only the behavior about emojis has been mentioned, but what about user, role mentions etc.? They also don't work, they become [text <@id>](url), is there a list of what else doesn't work?
I see, I was confused by that, thanks for pointing it out.
And my other question still stands:
Only the behavior about emojis has been mentioned, but what about user, role mentions etc.? They also don't work, they become
[text <@id>](url), is there a list of what else doesn't work?
Please see the following from the Employee's Comment:
This also includes preventing a number of hidden mention, u...
When you go to https://discord.com/developers/teams/(TeamNumber)/information and go to add members onto the team, it requires the #number of the user, however with discord switching over to twitter/instagram style usernames we no longer have our discriminators.
Since some users still have discriminators, allow it to add users without them until all have been switched over.
Adding team members.
Failure...
This sadly wasn't an issue on my end but my one of my developer team members. Their information above ^ for client and system info.
Do you have a screenshot of the issue? Bing and the Discord app have nothing to do with the dev portal
Whenever the bot tries to fetch the members status, it always returns offline
Make it so the member shows actual status
The correct status to return
Always returning offline
No response
I am using discord.py above version 2
This is not a Discord API issue, you need to enable the presence intent (guide)
This is not a Discord API issue, you need to enable the presence intent (guide)
Works for normal prefix command just not slash
Quando eu tou usando sportify lá aprece ué? Então não é só para deskt
Today, bots receive the local language configured on the Discord client when the user uses a command slash or interacts with a button. This is great, but it's only useful for ephemeral messages.
Having the ability to set message internationalization for non-ephemeral messages would be desirable in many use cases and especially for international servers. Added to the ability to internationalize roles and channnels it would be perfect.
Do not hold me to this, but I think once we roll out to 100% of users and clean up, then it will work here @polyjitter.
any idea on when, or whether it will roll out or not? (why was it removed after the initial release? it worked one single time with me and within the same hour, it stopped working lol)
I cannot repro this
<img width="1081" alt="image" src="https://github.com/discord/discord-api-docs/assets/1479909/878d28cd-1abb-4d21-8ef4-921fe8816890">
Please make sure that for users that have discriminators you are doing the proper format, which would be
name#1234. Make sure there is no space between name and #.
ie:
CoolPerson#1234CoolPerson #1234There is not enough information here to explain what the issue is. Please provide more information.
- In the case of webhooks/embeds, masked links should continue to work and should also continue to support allowing emojis in the
title([title](url))Tried checking if this issue has been mentioned already but it didn't seem like it so I'm asking, this doesn't seem to be the case anymore, I tried to simply do
[google](https://google.com/)in the embed title and it doesn't work but works in descriptionThe JSON I tried: `{ title: "google", descri...
Do not hold me to this, but I think once we roll out to 100% of users and clean up, then it will work here @polyjitter.
any idea on when, or whether it will roll out or not? (why was it removed after the initial release? it worked one single time with me and within the same hour, it stopped working lol)
In general we don't give strong deadlines for deploy/rollout. For this in particular, even once we hit 100% this wouldn't be enabled immediately.
My suggestion would be to o...
There are multiple ratelimits on this endpoint. One of them is user specific. The other is a shared ratelimit that takes into account the guild being used. The changes you're requesting already exist.
Spotify does not use RPC, the Spotify integration is built into the Discord app. Other apps cannot do that
8530715 Document attachment flags (#6272) - panley01
3410a97 Adds docs for Onboarding updates and new mode f... - hammerdr
095e858 add message_author_id to 'Message Reaction Ad... - MahdiBM
1f293bf Removes stale documentation about adding roles ... - hammerdr
dcabcef docs: add missing audit log events (#6071) - LordOfPolls
There are apps that yes, and just put the token
| browse | _Browse Channels_ tab |
| customize | _Customize_ tab with the server's [onboarding prompts](#DOCS_RESOURCES_GUILD/guild-onboarding-object) |
| guide | [Server Guide](https://support.discord.com/hc/en-us/articles/13497665141655) |
###### Guild Navigation Types
Guild navigation types link to the corresponding resource in the current server.
| Type | Description |
Returns a list of available sticker packs.
In many cases, you may still need a bot user. If you need to receive gateway events, or need to interact with other parts of our API (like fetching a guild, or a channel, or updating permissions on a user), those actions are all still tied to having a bot token.
Interactions bring something entirely new to the table: the ability to interact with an application _without relying on a bot token_. As you read through this documentation, you'll see that bot tokens are only referenced as a helpful alternative to doing a client credentials auth flow. Responding to interactions does not require a bot token.
removed the not released label since this was released this week, but there's a conflict in AutoMod file 😓
e2f6d89 Add missing field default_forum_layout to Cre... - Puncher1
| guild_id? | snowflake | guild associated with the app. For example, a developer support server. |
Returns the [application](#DOCS_RESOURCES_APPLICATION/application-object) object associated with the requesting bot user.
| approximate_guild_count? | integer | an approximate count of the app's guild membership. |
## Get Current Application % GET /applications/@me
b9af82a fix(typo): Github -> GitHub (#6273) - WilliamDavidHarrison
0817246 Adds approx guild count and get self applicatio... - Jupith
I think they'd prefer if neutral assets were used instead, stripped of anyone's name except their brand characters
It is probably also better if the Screenshots are made on default browser settings (Color Scheme, no extensions) without being signed in to google as well. The screenshots should look the same as well and have no differences in the navigation bar for example.
474792f Ordered table and wording consistency (#6100) - kkrypt0nn
Yea, sorry but we'll need to have these be test teams that we have. We can replace these images at some point to make them up to date if you open an issue (I can assign it to myself).
but the other sentences in this table aren't capitalized 😭 at some point we'll go through and make this consistent across docs, but going to leave this for now.
Made a mistake in merging #6102 without making message_author_id optional
26b9548 make message_author_id optional (#6296) - shaydewael
3074b5f Document avatar decorations (#5723) - advaith1
guild count is finally exposed, in the new /applications/@me endpoint (#5971)
In many cases, you may still need to use a bot token. If you need to receive gateway events, or need to interact with other parts of our API (like fetching a guild, or a channel, or updating permissions on a user), those actions are all still tied to having a bot token.
- Endpoints to [retrieve](#DOCS_RESOURCES_USER/get-user-application-role-connection) (`GET /users/@me/applications/{application.id}/role-connection`) and [update](#DOCS_RESOURCES_USER/update-user-application-role-connection) (`PUT /users/@me/applications/{application.id}/role-connection`) a user's role connections, both of which return an [application role connection](#DOCS_RESOURCES_USER/application-role-connection-object) object.
- New [`role_connections.write`](#DOCS_TOPICS_OAUTH2/shared-resources-oauth2-scopes) OAuth2 scope required to authenticate the below requests.
- New endpoints to [retrieve](#DOCS_RESOURCES_APPLICATION_ROLE_CONNECTION_METADATA/get-application-role-connection-metadata-records) (`GET /applications/<application.id>/role-connections/metadata`) and [update](#DOCS_RESOURCES_APPLICATION_ROLE_CONNECTION_METADATA/update-application-role-connection-metadata-records) (`PUT /applications/<application.id>/role-connections/metadata`) application connection metadata.
- New endpoints to [retrieve](#DOCS_RESOURCES_USER/get-user-application-role-connection) (`GET /users/@me/applications/{application.id}/role-connection`) and [update](#DOCS_RESOURCES_USER/update-user-application-role-connection) (`PUT /users/@me/applications/{application.id}/role-connection`) an user's role connections, both of which return an [application role connection](#DOCS_RESOURCES_USER/application-role-connection-object) object.
78fb89d Add changelog entry for application connection ... - Valle-infinitare
the current bot's guild count is finally exposed, in the new /applications/@me endpoint (#5971)
PATCH method for current applications, which allows you to update a partial set of properties via the APIinteractions_endpoint_url, bot, and redirect_uris to Application structure| summary *(deprecated)* | string | **Deprecated and will be removed in v11.** An empty string. |
"if exists" sounds weird, like the sentence didn't ended
| bot_public | boolean | When `false`, only the app owner can add the app to guilds |
| bot_require_code_grant | boolean | When `true`, the app's bot will only join upon completion of the full OAuth2 code grant flow |
T...
| approximate_guild_count? | integer | Approximate count of guilds the app has been added to |
"0—it" couldn't / shouldn't that be "0, it"
A bit confused with the wording, might be my german tho :p
i think OAuth2 isn't clear here, so removing it
| approximate_member_count? | integer | approximate number of members in this guild, returned from the `GET /guilds/<id>` and `/users/@me/guilds` endpoints when `with_counts` is `true` |
| approximate_presence_count? | integer | approximate number of non-offline membe...
ee1de00 Document with_counts param for GET /users/@me/g... - JohnyTheCarrot
Closing this out due to inactivity. Feel free to open a PR with the changes that make sense based on the above comments if desired~
The reaction count details object contains a breakdown of normal and super reaction counts for the associated emoji.