自動化
PR

Discord Botの作り方|Developer Portalでの作成からサーバー招待まで

sanane
記事内に商品プロモーションを含む場合があります

はじめに

Discord Bot は、ユーザーの発言に反応したり、スラッシュコマンドを提供したりできる「アプリ」です。単にメッセージを送るだけなら Webhook で足りますが、双方向のやり取りをさせたいなら Bot が必要になります。

本記事では、2026年7月の実機検証をもとに、Developer Portal でのアプリ作成 → 特権インテントの有効化 → トークン発行 → OAuth2 招待URLの生成 → サーバーへの招待までを、実際の画面付きで解説します。ここまでは応答コードを書かなくてもブラウザ操作だけで完結します。

こんな人にオススメ
  • Discord Bot を初めて作る・作成手順の全体像を知りたい
  • トークンや特権インテント、OAuth2招待URLが何なのか整理したい
  • そもそも Webhook で足りるのか、Bot が必要なのかを判断したい

まず判断|Webhookで足りるか、Botが必要か

作り始める前に、そもそも Bot が必要かを確認しましょう。判断の軸はシンプルです。

  • Webhook で十分:外部サービスからチャンネルへ一方向に通知を流すだけ(CI通知・RSS通知など)。Developer Portal も常駐サーバーも不要
  • Bot が必要:発言に反応する・コマンドを提供するなど双方向のやり取り。実際に応答させるには常時稼働するサーバー/プロセスが要る

通知だけで十分な方は、こちらの記事のほうが手早く目的を達成できます。

あわせて読みたい
Discord Webhookの使い方|作成からcurl送信・レート制限まで
Discord Webhookの使い方|作成からcurl送信・レート制限まで

Developer Portalでアプリを作成する

discord.com/developers/applications にアクセスすると、既存アプリのカード一覧と「新しいアプリケーション」ボタンが並びます。クリックし、名前を入力して利用規約に同意 →「作成」でアプリができます。

Developer Portalのアプリ新規作成ダイアログ

アプリの新規作成時・トークンのリセット時などに、hCaptcha(人間確認)や多要素認証(パスワード入力)が挟まることがあります。これは正規の手作業を前提とした仕組みなので、求められたら画面の指示に従って進めてください。

Bot設定と特権インテント

左メニューの「Bot」タブに、Bot のアイコン・ユーザー名の設定と「トークン」欄、その下に Privileged Gateway Intents(特権インテント)のセクションがあります。ここには次の3つのトグルが並びます。

  • Presence Intent(オンライン状態の取得)
  • Server Members Intent(メンバー情報の取得)
  • Message Content Intent(メッセージ本文の取得)

メッセージ本文を読んで反応させるなら Message Content Intent をONにします。いずれも「Bot が10,000人以上のユーザーにリーチすると審査が必要」という注記付きです。ONにしたら、例によって「保存していない変更があります」バーの「変更を保存する」で確定します。

Bot設定のPrivileged Gateway Intents。Message Content Intentを有効化

トークンを発行する

Bot を動かすコードは、このトークンを使って Discord に接続します。「トークンをリセット」を押すと確認ダイアログが出て、実行時にアカウントのパスワード(多要素認証)を求められます。認証後、一度きりで平文のトークンが表示されます。

トークンリセットの確認ダイアログ

トークンはこの画面でしか表示されません。表示されたらすぐにコピーして安全な場所(環境変数やシークレット管理)に保存してください。トークンは Bot を乗っ取れる鍵なので、コードやスクリーンショット、SNSに絶対に貼らないこと。漏れたら「トークンをリセット」で即座に無効化して作り直せます。

トークン発行後の画面(実際のトークン値はマスク済み)

OAuth2で招待URLを作る

Bot をサーバーに入れるには、招待用のURLが必要です。「OAuth2」タブの OAuth2 URL Generator で、スコープと権限を選ぶと下部にURLが自動生成されます。

今回はスコープに botapplications.commands、権限は「チャンネルを表示」「メッセージを送る」「メッセージ履歴を読む」「リアクションを付ける」という最小構成を選びました。必要な権限だけを選ぶのが安全です。

OAuth2 URLジェネレーター。スコープと権限を選ぶと招待URLが生成される

サーバーに招待する

生成したURLを開くと、Discord の認証ダイアログが出ます。「Botをサーバーに追加」「コマンドを作成」といった許可内容と、追加先サーバーのプルダウンが表示されます。「はい」→権限確認→「認証」の2段階で確定します。

実行後、対象サーバーのメンバーリストに Bot が追加されます。ただし応答コードを動かしていないので、Bot は「オフライン」表示のままです。それでも招待・メンバー一覧への表示まではブラウザ操作だけで完了しました。

サーバーに招待されたBotがメンバーリストにオフラインで表示された画面

Bot をオンラインにして実際に反応させるには、ここで取得したトークンを使う応答プログラムを、常時稼働するサーバーや自分のPCで動かす必要があります。この「実際に喋らせる」段階はコードの領域なので、まずはここまでで招待の仕組みを押さえておけば十分です。

WebhookとBotの使い分け

Developer Portal にも「ウェブフック」タブがありますが、これはアプリの認証イベントなどをHTTPで受け取るアプリレベルの仕組みで、チャンネルにメッセージを一方向に送る Incoming Webhook とは別物です。改めて整理すると次の通りです。

使い分けの早見
  • Webhook:送るだけ。Portal 操作も常駐サーバーも不要。通知用途はこれで完結
  • Bot:反応させる。Portal でのアプリ作成・トークン管理+常時稼働のプロセスが必要
Developer Portalのウェブフックタブ。アプリレベルのWebhookでチャンネルWebhookとは別物

まとめ

  • 作成はDeveloper Portalの「新しいアプリケーション」から。途中でhCaptcha/パスワードを求められることがある
  • メッセージに反応させるならMessage Content Intentを有効化して保存
  • トークンは一度きり表示。すぐ安全に保存し、外部に出さない
  • OAuth2 URL Generatorで必要最小の権限だけを選んで招待URLを生成
  • 招待まではブラウザ操作で完結。実際に喋らせるには常駐プロセスが必要

Discord の基本操作やサーバー作成からおさらいしたい方は、あわせて以下の記事もどうぞ。

あわせて読みたい
Discordの使い方|画面の見方からチャット・通話・通知設定まで
Discordの使い方|画面の見方からチャット・通話・通知設定まで
あわせて読みたい
Discordサーバーの作り方|チャンネル・ロール・招待・削除まで
Discordサーバーの作り方|チャンネル・ロール・招待・削除まで

記事URLをコピーしました