When making requests to POST /channels/{channel.id}/messages and PATCH /channels/{channel.id}/messages/{message.id}, if I were to pass an embed that only contains invalid fields with no other fields being passed to create message or edit message while targeting a message that only contains an embed, the expected behaviour would be for it to return a 400 response with the error message Cannot send an empty message (as would be consistent with how this would handle an embed set to null or {} on create or just null on edit). However, the actual behaviour of these endpoints seems to deviate from this with the following requests being examples of when the API allows the creation of messages that only contain empty embeds (seemingly as an oversight has lead to it checking if the embed object is empty before validating the fields in it).
When making requests to
POST /channels/{channel.id}/messages
andPATCH /channels/{channel.id}/messages/{message.id}
, if I were to pass an embed that only contains invalid fields with no other fields being passed to create message or edit message while targeting a message that only contains an embed, the expected behaviour would be for it to return a400
response with the error messageCannot send an empty message
(as would be consistent with how this would handle an embed set tonull
or{}
on create or justnull
on edit). However, the actual behaviour of these endpoints seems to deviate from this with the following requests being examples of when the API allows the creation of messages that only contain empty embeds (seemingly as an oversight has lead to it checking if the embed object is empty before validating the fields in it).Both of these requests lead to the messages with empty embeds shown below.
Notes: