Discord 開発者プラットフォーム、5 分で理解する
ステータス
Stable· 最終検証 2026-07-11 · APIv10· 出典 Discord getting started
Discord プラットフォームは大きく見えますが、実際は1 つの名前を共有する複数の製品です。 各部品を名指しできるようになれば、あとはすべてが所定の位置に収まります。
2 本の配線
Section titled “2 本の配線”開発者が行うことのほとんどは、次のいずれか(または両方)を介した通信に還元されます。
| 配線 | 何であるか | 方向 | 用途 |
|---|---|---|---|
| REST API | https://discord.com/api/v10 への通常の HTTPS |
あなた → Discord(要求/応答) | メッセージ送信、コマンド作成、ギルド/ロール/チャンネル管理、データ読み取り |
| ゲートウェイ | 永続的な WebSocket 接続 | Discord → あなた(リアルタイムイベント) | イベント(メッセージ、参加、リアクション、ボイス状態)を発生時に受信 |
3 つ目の経路であるインタラクションは、ゲートウェイ経由でも、あなた自身の HTTP エンドポイントへも配信できます(Discord → あなたのサーバー、要求/応答)。 この選択は、コマンドベースのアプリにおける最も重要なアーキテクチャの分岐点です。 連携モデルの選択を参照してください。
連携のためのインターフェース
Section titled “連携のためのインターフェース” Discord ┌──────────────────────────────────────────────────────────────┐ │ Webhooks Apps ───────────────┐ OAuth2 │ │ (投稿専用) (識別情報 + 設定) │ (認可と │ │ │ │ │ インストール) │ │ URL に POST ┌────┴────┐ │ │ │ │ ボットユーザー インタラクション │ ユーザー/ │ │ (トークン、 (コマンド、 │ ギルド │ │ インテント) コンポーネント)│ インストール │ │ │ │ │ │ │ ゲートウェイ ゲートウェイ または │ │ (WebSocket) HTTP エンドポイント (Ed25519) │ │ │ │ Activities (Embedded App SDK) — Discord クライアント内で │ │ 動作する iframe アプリ。RPC/ボイス経由。 │ └──────────────────────────────────────────────────────────────┘- Webhook — JSON を
POSTするチャンネルごとの URL。ボット、ログイン、ゲートウェイ、 インテントは不要。「このチャンネルに通知を送る」用途に最適。投稿専用。 → Webhook - アプリケーション(「アプリ」) — 開発者ポータルで 登録する最上位の識別情報。Application ID、Public Key、任意のボットユーザー + トークン、 OAuth2 認証情報、コマンド/インストール設定を保持します。 → アプリとボット
- ボット — アプリに紐づく自動化されたユーザーで、ボットトークンで認証します。 ゲートウェイに接続し、REST 経由で操作します。 → アプリとボット
- インタラクション — ユーザーがアプリを呼び出す方法:スラッシュコマンド、 ユーザーコマンド、メッセージコマンド、およびボタン、セレクトメニュー、モーダル。 → インタラクションとコマンド
- ゲートウェイ — インテントでフィルタリングされたリアルタイムイベントストリーム。 → ゲートウェイ
- OAuth2 — アプリが認可・インストールされる方法と、ユーザーの代理として操作する方法。 インストールコンテキスト(ユーザーインストール/ギルドインストール)を導入します。 → OAuth2 とインストール
- アクティビティ — Embedded App SDK を介して Discord クライアント内で動作する完全なアプリ。 → プラットフォーム地図で追跡。
遭遇する識別子とシークレット
Section titled “遭遇する識別子とシークレット”| 項目 | シークレット? | 取得元 |
|---|---|---|
| Application ID | いいえ | ポータル → General Information |
| Public Key | いいえ(設計上公開) | General Information — インタラクションの検証に使用 |
| ボットトークン | はい — ボットの完全な制御権 | Bot タブ → Reset Token |
| クライアントシークレット | はい | OAuth2 タブ → Reset Secret |
| Webhook URL | はい — 保持者は誰でも投稿可能 | チャンネル → 連携 → Webhook |
| Snowflake ID | いいえ | すべてのオブジェクトが持つ 64 ビットの時系列ソート可能な ID |
「はい」の行はパスワードのように扱ってください。セキュリティと
リポジトリの SECURITY.mdから
始めましょう。
- 連携モデルを選ぶ — 最も時間を節約できる判断表。
- 最初の 15 分 — 具体的で最小権限の最初のビルドと学習パス。
DISCORD_WEBHOOK_URLを取得する — 今すぐチャンネルに投稿したい場合。