diff --git a/discord/abc.py b/discord/abc.py
index 5977fc9ab..eddd7b9f3 100644
--- a/discord/abc.py
+++ b/discord/abc.py
@@ -1183,6 +1183,7 @@ class Messageable:
         reference: Union[Message, MessageReference, PartialMessage] = ...,
         mention_author: bool = ...,
         view: View = ...,
+        suppress_embeds: bool = ...,
     ) -> Message:
         ...
 
@@ -1201,6 +1202,7 @@ class Messageable:
         reference: Union[Message, MessageReference, PartialMessage] = ...,
         mention_author: bool = ...,
         view: View = ...,
+        suppress_embeds: bool = ...,
     ) -> Message:
         ...
 
@@ -1219,6 +1221,7 @@ class Messageable:
         reference: Union[Message, MessageReference, PartialMessage] = ...,
         mention_author: bool = ...,
         view: View = ...,
+        suppress_embeds: bool = ...,
     ) -> Message:
         ...
 
@@ -1237,6 +1240,7 @@ class Messageable:
         reference: Union[Message, MessageReference, PartialMessage] = ...,
         mention_author: bool = ...,
         view: View = ...,
+        suppress_embeds: bool = ...,
     ) -> Message:
         ...
 
@@ -1256,6 +1260,7 @@ class Messageable:
         reference=None,
         mention_author=None,
         view=None,
+        suppress_embeds=False,
     ):
         """|coro|
 
@@ -1329,6 +1334,10 @@ class Messageable:
         stickers: Sequence[Union[:class:`~discord.GuildSticker`, :class:`~discord.StickerItem`]]
             A list of stickers to upload. Must be a maximum of 3.
 
+            .. versionadded:: 2.0
+        suppress_embeds: :class:`bool`
+            Whether to suppress embeds for the message. This sends the message without any embeds if set to ``True``.
+
             .. versionadded:: 2.0
 
         Raises
@@ -1372,6 +1381,12 @@ class Messageable:
         if view and not hasattr(view, '__discord_ui_view__'):
             raise TypeError(f'view parameter must be View not {view.__class__!r}')
 
+        if suppress_embeds:
+            from .message import MessageFlags  # circualr import
+            flags = MessageFlags._from_value(4)
+        else:
+            flags = MISSING
+
         with handle_message_parameters(
             content=content,
             tts=tts,
@@ -1386,6 +1401,7 @@ class Messageable:
             mention_author=mention_author,
             stickers=stickers,
             view=view,
+            flags=flags,
         ) as params:
             data = await state.http.send_message(channel.id, params=params)
 
diff --git a/discord/interactions.py b/discord/interactions.py
index 383c3d2df..08d521cb5 100644
--- a/discord/interactions.py
+++ b/discord/interactions.py
@@ -494,6 +494,7 @@ class InteractionResponse:
         tts: bool = False,
         ephemeral: bool = False,
         allowed_mentions: AllowedMentions = MISSING,
+        suppress_embeds: bool = False,
     ) -> None:
         """|coro|
 
@@ -524,6 +525,10 @@ class InteractionResponse:
         allowed_mentions: :class:`~discord.AllowedMentions`
             Controls the mentions being processed in this message. See :meth:`.abc.Messageable.send` for
             more information.
+        suppress_embeds: :class:`bool`
+            Whether to suppress embeds for the message. This sends the message without any embeds if set to ``True``.
+
+            .. versionadded:: 2.0
 
         Raises
         -------
@@ -539,8 +544,10 @@ class InteractionResponse:
         if self._responded:
             raise InteractionResponded(self._parent)
 
-        if ephemeral:
-            flags = MessageFlags._from_value(64)
+        if ephemeral or suppress_embeds:
+            flags = MessageFlags._from_value(0)
+            flags.ephemeral = ephemeral
+            flags.suppress_embeds = suppress_embeds
         else:
             flags = MISSING
 
diff --git a/discord/webhook/async_.py b/discord/webhook/async_.py
index 62e1867c4..991a5dfa1 100644
--- a/discord/webhook/async_.py
+++ b/discord/webhook/async_.py
@@ -1310,6 +1310,7 @@ class Webhook(BaseWebhook):
         view: View = MISSING,
         thread: Snowflake = MISSING,
         wait: Literal[True],
+        suppress_embeds: bool = MISSING,
     ) -> WebhookMessage:
         ...
 
@@ -1330,6 +1331,7 @@ class Webhook(BaseWebhook):
         view: View = MISSING,
         thread: Snowflake = MISSING,
         wait: Literal[False] = ...,
+        suppress_embeds: bool = MISSING,
     ) -> None:
         ...
 
@@ -1349,6 +1351,7 @@ class Webhook(BaseWebhook):
         view: View = MISSING,
         thread: Snowflake = MISSING,
         wait: bool = False,
+        suppress_embeds: bool = False,
     ) -> Optional[WebhookMessage]:
         """|coro|
 
@@ -1417,6 +1420,10 @@ class Webhook(BaseWebhook):
         thread: :class:`~discord.abc.Snowflake`
             The thread to send this webhook to.
 
+            .. versionadded:: 2.0
+        suppress_embeds: :class:`bool`
+            Whether to suppress embeds for the message. This sends the message without any embeds if set to ``True``.
+
             .. versionadded:: 2.0
 
         Raises
@@ -1447,8 +1454,10 @@ class Webhook(BaseWebhook):
         previous_mentions: Optional[AllowedMentions] = getattr(self._state, 'allowed_mentions', None)
         if content is None:
             content = MISSING
-        if ephemeral:
-            flags = MessageFlags._from_value(64)
+        if ephemeral or suppress_embeds:
+            flags = MessageFlags._from_value(0)
+            flags.ephemeral = ephemeral
+            flags.suppress_embeds = suppress_embeds
         else:
             flags = MISSING
 
diff --git a/discord/webhook/sync.py b/discord/webhook/sync.py
index 7df2fffdb..9a0713a0a 100644
--- a/discord/webhook/sync.py
+++ b/discord/webhook/sync.py
@@ -42,7 +42,7 @@ import weakref
 
 from .. import utils
 from ..errors import HTTPException, Forbidden, NotFound, DiscordServerError
-from ..message import Message
+from ..message import Message, MessageFlags
 from ..http import Route, handle_message_parameters
 from ..channel import PartialMessageable
 
@@ -833,6 +833,7 @@ class SyncWebhook(BaseWebhook):
         embeds: List[Embed] = MISSING,
         allowed_mentions: AllowedMentions = MISSING,
         wait: Literal[True],
+        suppress_embeds: bool = MISSING,
     ) -> SyncWebhookMessage:
         ...
 
@@ -850,6 +851,7 @@ class SyncWebhook(BaseWebhook):
         embeds: List[Embed] = MISSING,
         allowed_mentions: AllowedMentions = MISSING,
         wait: Literal[False] = ...,
+        suppress_embeds: bool = MISSING,
     ) -> None:
         ...
 
@@ -867,6 +869,7 @@ class SyncWebhook(BaseWebhook):
         allowed_mentions: AllowedMentions = MISSING,
         thread: Snowflake = MISSING,
         wait: bool = False,
+        suppress_embeds: bool = False,
     ) -> Optional[SyncWebhookMessage]:
         """Sends a message using the webhook.
 
@@ -914,6 +917,10 @@ class SyncWebhook(BaseWebhook):
         thread: :class:`~discord.abc.Snowflake`
             The thread to send this message to.
 
+            .. versionadded:: 2.0
+        suppress_embeds: :class:`bool`
+            Whether to suppress embeds for the message. This sends the message without any embeds if set to ``True``.
+
             .. versionadded:: 2.0
 
         Raises
@@ -943,6 +950,11 @@ class SyncWebhook(BaseWebhook):
         if content is None:
             content = MISSING
 
+        if suppress_embeds:
+            flags = MessageFlags._from_value(4)
+        else:
+            flags = MISSING
+
         params = handle_message_parameters(
             content=content,
             username=username,
@@ -954,6 +966,7 @@ class SyncWebhook(BaseWebhook):
             embeds=embeds,
             allowed_mentions=allowed_mentions,
             previous_allowed_mentions=previous_mentions,
+            flags=flags,
         )
         adapter: WebhookAdapter = _get_webhook_adapter()
         thread_id: Optional[int] = None