You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

添加dm_channels.messages.write时Discord OAuth提示invalid_scope求助

Discord OAuth添加dm_channels.messages.write出现invalid_scope错误的原因

问题场景

尝试在Discord OAuth授权URL中添加dm_channels.messages.write权限范围后,认证时返回错误:

?error=invalid_scope
&error_description=The requested scope is invalid, unknown, or malformed.

移除该权限后流程可正常运行。

原因分析

dm_channels.messages.write 不属于Discord OAuth2的用户授权范围,它是Bot应用专属的权限,用于允许Bot发送私信消息,不能放在OAuth授权URL的scope参数中。

Discord的权限体系分为两类:

  • OAuth授权范围:用于获取用户授权,获取用户的身份信息、服务器数据等(比如identify、email、guilds这些),需要放在授权URL的scope里。
  • Bot应用权限:用于赋予Bot执行特定操作的能力(比如发送消息、管理服务器等),这类权限需要在开发者门户的Bot配置页面开启,而非通过OAuth流程让用户授权。

解决办法

  1. 打开Discord开发者门户,进入你的应用页面
  2. 切换到「Bot」标签页,找到「Send Messages in DMs」权限(对应dm_channels.messages.write)并开启
  3. 保持OAuth授权URL的scope参数为原有的合法范围:
https://discord.com/oauth2/authorize
  ?client_id=<CLIENT_ID>
  &response_type=code
  &redirect_uri=<REDIRECT_URI>
  &scope=identify+email+guilds.members.read+guilds.join+guilds

内容的提问来源于stack exchange,提问作者Fez Vrasta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 20:36:02