見出し画像

【備忘録】discord.py エラー Missing Accessについて

タイトルのままです。

意外と単純な話なのですが、気づかないと一生直せないので。


まずはエラーコードなのですが、

raise Forbidden(response, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50001): Missing Access

と出ます。


普通この手のエラー解決では、バージョンなのを示すのが習わしですが、


先に結論から話すと、

何かしらDiscord サーバーにおいて権限がない場合です。


権限関係は、Discord サーバーにbotを招待する際に、Developer Portal
において、OAuth2にて


権限を設定するかと思いますが、これで漏れているとエラーが発生します。

そのため、再度こちらのPortalにてサーバーでの権限を増やす必要があります。
エラーコードでは何の権限が足りていないかまでは表示されないため、自分で調べる必要があります。


そして、もう一つが、プライベートのテキストチャンネルなどに対して、
bot自体が許可されていないのにも関わらず、書き込みなどをしようとすると同じくエラーが出ます。

プライベートチャンネルは、設定したロールやメンバー以外に、”管理者権限”をもつロール・メンバーも自動的にアクセスできます。
これは、botを招待する際に”管理者権限”を付与しなかった、つまり権限がなかったからと置き換えることができます。


そのため、Missing Accessが出た際は

botに権限が付与されているか

または

操作しようとしているチャンネルにbotが招待されているか

を確認するようにしましょう。



Shiftkeyについて


noteの内容に共感していただければ、ぜひともサポートを宜しくお願いします。今後の記事投稿の励みになります。