Skip to content

Latest commit

 

History

History
324 lines (182 loc) · 17.5 KB

Change_Log.md

File metadata and controls

324 lines (182 loc) · 17.5 KB

Change Log

Slash Commands and Interactions

December 15, 2020

Slash Commands are here! There's a lot to cover, so go check out specific documentation under Slash Commands.

Slash Commands include some new features for webhooks as well:

This PR also documents the application field on the READY gateway event, which is a partial application object containing id and flags.

Inline Replies

November 16, 2020

Inline Replies have been added to our documentation. They behave differently in v6 and v8, so be cautious in your implementation:

  • Inline replies are type 19 in v8, but remain type 0 in v6
  • You can now add a message_reference on message create to create a reply
  • A new field referenced_message has been added to the Message Object
  • A new field replied_user has been added to the Allowed Mentions Object
  • Message Create gateway event is guaranteed to have a referenced_message if the message created is a reply. Otherwise, that field is not guaranteed.

Stickers

November 13, 2020

Stickers are now documented as part of the message object.

API and Gateway V8

October 27, 2020

The v6 gateway now applies the restrictions for gateway intents. This means the new chunking limitations are now in effect, regardless of intents being used. See Request Guild Members for further details. Additionally, if privileged intents are not enabled in the application dashboard the bot will not receive the events for those intents.

All other intents are always enabled by default unless specified otherwise by the identify payload. We have made a support article to explain some of the changes and resulting issues with more details: Gateway Update FAQ

September 24, 2020

We've introduced API and Gateway v8! Changes are noted throughout the documentation, and you can also read this commit in our docs repo for a full diff.

The changes are:

  • API and Gateway v8 are now available. v6 is still the default for the time being.
  • Gateway Intents are now required
  • All permissions have been converted to strings-serialized numbers. As such, permissions_new, allow_new, and deny_new have been removed
  • The game field has been removed. If you need a direct replacement, you can instead reference the first element of activities
  • Channel Permission Overwrite types are now numbers (0 and 1) instead of strings ("role" and "member"). However due to a current technical constraint, they are string-serialized numbers in audit log options.
  • embed_enabled and embed_channel_id have been removed. Use widget_enabled and widget_channel_id instead.
  • Form body errors have been improved to include more helpful messaging on validation. See more here
  • The Retry-After header is now based in seconds instead of milliseconds (e.g. 123 means 123 seconds)
  • The X-RateLimit-Precision header is no longer respected. X-RateLimit-Reset and X-RateLimit-Reset-After are always returned at millisecond precision (e.g. 123.456 instead of 124)
  • Bots no longer receive Channel Create Gateway Event for DMs
  • delete-message-days is no longer available. Use delete_message_days.
  • Removed roles, premium_since, and nick from Presence Update Gateway Event
  • Removed some integration object fields for Discord application integrations
  • Removed include_applications from Get Guild Integrations. Application integrations are always included.
  • The following deprecated routes have been removed for better naming conventions:

Removed in favor of /guilds/<guild_id>/widget:

  • /guilds/<guild_id>/embed

Removed in favor of /guilds/<guild_id>/widget.json:

  • /servers/<guild_id>/embed.json
  • /servers/<guild_id>/widget.json
  • /guilds/<guild_id>/embed.json

Removed in favor of /guilds/<guild_id>/widget.png:

  • /guilds/<guild_id>/embed.png

Removed in favor of /channels/<channel_id>/messages/bulk-delete:

  • /channels/<channel_id>/messages/bulk_delete/

Removed in favor of /invites/<code>/:

  • /invite/<code>/

New Permission Fields

July 28, 2020

Documented permissions_new, allow_new, and deny_new as string-serialized permission bitfields.

Legacy Mention Behavior Deprecation

May 11, 2020

The legacy mention behavior for bots is now removed, and granular control of mentions should use the Allowed Mentions API moving forwards.

New Properties on Guild Members Chunk Event

April 24, 2020

The Guild Members Chunk gateway event now contains two properties: chunk_index and chunk_count. These values can be used to keep track of how many events you have left to receive in response to a Request Guild Members command.

New Allowed Mentions Object

March 3, 2020

We've added a way to specify mentions in a more granular form. This change also begins the start of a 60 day deprecation cycle on legacy mention behavior. Read more:

New Invite Events and Reactions Endpoint

We've added a new endpoint for deleting all reactions of a specific emoji from a message, as well as some new invite and reaction gateway events. Read more:

Rich Presence Spectate Approval

February 26, 2020

The Spectate functionality of Rich Presence no longer requires whitelisting or approval.

Gateway Intents

February 14, 2020

We've added documentation around a brand new feature: Gateway Intents! Gateway Intents are a great way to specify which events you want to receive from our gateway. Go on, save yourself some bandwidth and CPU usage.

Using Intents will change the behavior of some existing events and commands, so please refer to:

IP Discovery Updates

December 6, 2019

Updated our IP discovery message. The old message is deprecated and will be removed in the future.

GameSDK Version 2.5.6

November 27, 2019

Fixed a bug from the 2.5.5 release that caused network handshakes to fail, resulting in no networking data being sent. The networking manager and integrated lobby networking should be full operational again after updating.

GameSDK Version 2.5.5

November 14, 2019

We've shipped some updates to the GameSDK, including support for Linux as well as the IL2CPP backend system for Unity. These changes also fixed a bug in the SetUserAchievement() method.

Get the latest at the top of the Getting Started documentation. If you're looking for help interacting with the GameSDK or want to report a bug, join us on the official Discord.

Changes to Special Channels

August 22, 2019

News Channels are now changed to Announcement Channels. Developer License owners will continue to get access to them (both existing and new). Underlying channel type (GUILD_NEWS = 5) remains the same.

More Precise Rate Limits

August 12, 2019

You can now get more precise rate limit reset times, via a new request header. Check out the rate limits documentation for more information.

Bot Tokens for Achievements

July 18, 2019

You can now use Bot tokens for authorization headers against the HTTP API for Achievements.

Additional Team Information

June 19, 2019

Additional information around Teams has been added to both the API and the documentation. The Teams page now includes information about the team and team member objects. Additionally, the Get Current Application Information endpoint now returns a team object if that application belongs to a team. That documentation has also been updated to includes fields that were missing for applications that are games sold on Discord.

Added Info Around Nitro Boosting Experiment

May 29, 2019

Additional information has been documented to support Server Nitro Boosting. This includes the addition of a few message types, as well as some new fields on guilds. Please note that this feature is currently under experimentation, and these fields may be subject to change.

Deprecation of Discord-RPC Rich Presence SDK

April 29, 2019

The Discord-RPC implementation of Rich Presence has been deprecated in favor of Discord's new GameSDK. If you're interested in using Rich Presence, please read our SDK Starter Guide and check out the relevant functions in the Activity Manager.

New Invite Object Fields

April 18, 2019

The Invite Object now includes two additional fields, target_user and target_user_type.

Ask to Join & Rich Presence SDK

January 14, 2019

Ask to Join no longer requires approval or whitelisting to use. You are welcome to create in-game UI, but all Ask to Join requests are also now handled by the Discord overlay.

There have also been some small additions to the Rich Presence SDK. The previously undocumented UpdateHandlers() function is now documented.

Documentation: Dispatch Store Listings

December 11, 2018

Dispatch documentation around store listings has been removed. Store pages for the Discord Store are now managed entirely within the Developer Portal.

Enhancement: User Object

November 30, 2018

The User object now includes two new additional fields, premium_type and flags. These can be used to know the Nitro status of a user, or determine which HypeSquad house a user is in.

Documentation Fix: List of Open DMS in Certain Payloads

June 19, 2018

The documentation has been updated to correctly note that the private_channels field in the Ready should be an empty array, as well as the response from /users/@me/channels for a bot user. This change has been in effect for a long time, but the documentation was not updated.

Deprecation: RPC online member count and members list

June 11, 2018

We released server changes that allow guilds to represent an incomplete state of the member list in our clients, which results in inaccurate member lists and online counts over RPC. These fields are now deprecated and will now return an empty members array and an online count of 0 moving forward.

Enhancement: New Message Properties

February 5, 2018

Additional activity and application fields—as well as corresponding object documentation—have been added to the Message object in support of our newly-released Spotify integration and previous Rich Presence enhancements.

Enhancement: Get Guild Emoji Endpoint

January 30, 2018

The Get Guild Emoji response now also includes a user object if the emoji was added by a user.

Deprecation: Accept Invite Endpoint

January 23, 2018

The Accept Invite endpoint is deprecated starting today, and will be discontinued on March 23, 2018. The Add Guild Member endpoint should be used in its place.

Semi-Breaking Change: Very Large Bot Sharding

January 3, 2018

Additional sharding requirements and information for bots in over 100,000 guilds has been added. This requires a small change in numbers of shards for affected bots. See the documentation for more information.

New Feature: Rich Presence

November 9, 2017

Rich Presence is now live and available for all developers! Rich Presence allows developers to closely integrate with Discord in a number of new, cool ways like:

  • Showing more information about a user's current game in their profile
  • Allowing users to post invitations to join their party or spectate their game in chat
  • Displaying "Spectate" and "Ask to Join" buttons on users' profiles

For more information, check out our Rich Presence site. To get started on development, read the docs!

Breaking Change: API & Gateway Below v6 Discontinued

October 16, 2017

API and Gateway versions below v6 are now discontinued after being previously deprecated. Version 6 is now the default API and Gateway version. Attempting to use a version below 6 will result in an error.

New Feature: Channel Categories

September 20, 2017

Changes have been made throughout the documentation to reflect the addition of channel categories to Discord. These includes an additional field—parent_id—to the base channel object and a new channel category example.

New Feature: Emoji Endpoints

September 10, 2017

Emoji endpoints have been added to the API. Bots can now manage guild emojis to their robo-hearts' content!

Breaking Change: Presence Activity Objects

August 16, 2017

The type field in the activity object for Gateway Status Update and Presence Update payloads is no longer optional when the activity object is not null.

Breaking Change: Default Channels

August 3, 2017

After today, we are changing how default channels function. The "default" channel for a given user is now the channel with the highest position that their permissions allow them to see. New guilds will no longer have a default channel with the same id as the guild. Existing guilds will not have their #general channel id changed. It is possible, if permissions are set in such a way, that a user will not have a default channel in a guild.

We saw a use case in many servers where the previously-default #general channel was being repurposed as an announcement-only, non-writable channel for new members by using bots to clear the entire message history. Now, that channel can simply be deleted and re-created with the desired permissions. This change also allows dynamic default channels for users based on permissions.

We are also rolling out a change in conjunction that will allow Discord to remember your last-visited channel in a guild across sessions. Newly-joined users will be directed to the guild's default channel on first join; existing members will return to whichever channel they last visited.

New Feature: Audit Logs

July 24, 2017

Audit logs are here! Well, they've been here all along, but now we've got documentation about them. Check it out, but remember: with great power comes great responsibility.

Breaking Change: Version 6

July 19, 2017

  • Channel Object
    • is_private removed
    • type is now an integer
    • recipient is now recipients, an array of user objects
  • Message Object
    • type added to support system messages
  • Status Update Object
    • idle_since renamed to since