diff --git a/plugins/platforms/teams/adapter.py b/plugins/platforms/teams/adapter.py
index 2729de8f41..cdec7e3f1e 100644
--- a/plugins/platforms/teams/adapter.py
+++ b/plugins/platforms/teams/adapter.py
@@ -512,7 +512,14 @@ class TeamsAdapter(BasePlatformAdapter):
if reply_to and reply_to.isdigit() and reply_to != "0":
try:
result = await self._app.reply(chat_id, reply_to, chunk)
- except Exception:
+ except Exception as reply_err:
+ # Group chats 400 on threaded sends; the Teams SDK
+ # doesn't expose typed HTTP errors, so fall back on
+ # any exception and log for diagnostics.
+ logger.debug(
+ "Teams reply() failed, falling back to flat send: %s",
+ reply_err,
+ )
result = await self._app.send(chat_id, chunk)
else:
result = await self._app.send(chat_id, chunk)
diff --git a/website/docs/user-guide/messaging/index.md b/website/docs/user-guide/messaging/index.md
index c68bdae91c..25e8e4598f 100644
--- a/website/docs/user-guide/messaging/index.md
+++ b/website/docs/user-guide/messaging/index.md
@@ -60,9 +60,9 @@ flowchart TB
bb[BlueBubbles]
qq[QQ]
yb[Yuanbao]
- ms[Microsoft Teams]
- api["API Server
(OpenAI-compatible)"]
- wh[Webhooks]
+ ms[Microsoft Teams]
+ api["API Server
(OpenAI-compatible)"]
+ wh[Webhooks]
end
store["Session store
per chat"]