Discord Bot Integration Guide

Add the AskVerdict bot to your Discord server to run AI-powered debates using slash commands in any channel.

4 min read
Share

Add the AskVerdict bot to your Discord server to run structured AI debates from any channel. Team members can use Discord's native slash command interface to ask questions and receive formatted verdicts without leaving the conversation.

Prerequisites

  • An AskVerdict account (any plan)
  • A Discord server where you have Manage Server permission (required to authorise apps)
  • At least one credit or a BYOK subscription (debates cost credits)

How It Works

plaintext
User types: /askverdict question:Should we adopt Kubernetes? mode:balanced

AskVerdict runs a multi-agent debate via the Discord Interactions API

Verdict posted as an embedded message in the same channel

Discord interactions are verified using Ed25519 cryptographic signatures, meaning AskVerdict only responds to genuine requests from Discord's servers.


Step 1: Connect Your Discord Account

First, authorise AskVerdict via OAuth so your Discord account is linked:

  1. Go to Settings → Integrations in the AskVerdict web app
  2. Click Connect Discord
  3. You will be redirected to Discord's OAuth consent screen
  4. Select the server you want to connect (you must have Manage Server permission)
  5. Click Authorise
  6. You will be redirected back to AskVerdict with a success confirmation

The OAuth step links your AskVerdict account to Discord. The bot invite (Step 2) is a separate step that adds the bot to your server with the correct interaction permissions.


Step 2: Invite the Bot to Your Server

After completing OAuth, invite the AskVerdict bot to your server:

  1. Still in Settings → Integrations, find the Discord card
  2. Click Invite Bot to Server
  3. The AskVerdict app will open Discord's bot invite flow
  4. Select the server where you want to add the bot
  5. Review and confirm the requested bot permissions (see below)
  6. Click Authorise

You can also get the bot invite URL programmatically:

bash
GET /api/integrations/discord/bot-invite
Authorization: Bearer vrd_your_api_key
json
{
  "url": "https://discord.com/api/oauth2/authorize?client_id=...&permissions=...&scope=bot+applications.commands"
}

Required Bot Permissions

PermissionWhy it's needed
Send MessagesPost verdict messages in channels
Use Slash CommandsRegister and respond to /askverdict interactions
Embed LinksFormat verdicts as rich embed cards
Read Message HistoryIdentify which channel triggered the command

Do not grant administrator permissions to the bot. The listed permissions above are all that is required.


Step 3: Configure a Default Channel

Set a channel where AskVerdict will post automated notifications (for example, when a debate started elsewhere completes):

  1. In Settings → Integrations, find the Discord card
  2. Click Configure
  3. Enter the channel name or ID
  4. Click Save

API endpoint:

bash
PATCH /api/integrations/discord
Authorization: Bearer vrd_your_api_key
Content-Type: application/json
 
{
  "channelId": "1234567890123456789",
  "channelName": "team-decisions",
  "postOnComplete": true,
  "dmOnOutcome": false
}
FieldTypeDescription
channelIdstringDiscord channel ID (Snowflake, max 32 chars)
channelNamestringHuman-readable channel name for display
postOnCompletebooleanPost to channel when debate completes (default: true)
dmOnOutcomebooleanDM the debate creator when an outcome is recorded (default: false)

Step 4: Use the Slash Command

In any channel where the bot has access, type /askverdict and Discord will show the available options:

plaintext
/askverdict question:<your question> [mode:<quick|balanced|deep>]

Command Parameters

ParameterRequiredValuesDefaultDescription
questionYesAny text (10–2000 chars)The question to debate
modeNoquick, balanced, deepbalancedDebate depth and cost

Examples

plaintext
/askverdict question:Should we move our infrastructure to AWS or stay on bare metal?
/askverdict question:Is it worth building a native iOS app? mode:deep
/askverdict question:Should we offer a free tier? mode:quick

Sample Verdict Embed

plaintext
AskVerdict Bot — Today at 14:32
┌─────────────────────────────────────────────────────────┐
│ Verdict: Should we move infrastructure to AWS?          │
│                                                         │
│ Recommendation                                          │
│ Migrate to AWS in a phased approach, beginning with     │
│ stateless services over 6 months.                       │
│                                                         │
│ Confidence: 74%  |  Mode: Balanced  |  3 rounds        │
│                                                         │
│ Pros                                                    │
│ • Eliminates hardware refresh cycles (~$180k every 3yr) │
│ • Auto-scaling handles traffic spikes without ops work  │
│                                                         │
│ Cons                                                    │
│ • 18-month payback period on migration investment       │
│ • Team upskilling required (estimated 6 weeks)          │
│                                                         │
│ View full debate →                                      │
└─────────────────────────────────────────────────────────┘

Integration Status

Check your current connection:

bash
GET /api/integrations/discord
Authorization: Bearer vrd_your_api_key
json
{
  "connected": true,
  "integration": {
    "id": "int_def456",
    "active": true,
    "config": {
      "guildId": "9876543210987654321",
      "guildName": "Acme Engineering",
      "channelId": "1234567890123456789",
      "channelName": "team-decisions",
      "discordUserId": "111222333444555666",
      "discordUsername": "alice#0001",
      "postOnComplete": true,
      "dmOnOutcome": false
    },
    "createdAt": "2026-02-01T10:00:00Z",
    "updatedAt": "2026-02-10T14:30:00Z"
  }
}

Disconnecting

To remove the Discord integration:

  1. Go to Settings → Integrations
  2. Click Disconnect on the Discord card
  3. Confirm the disconnection

Or via the API:

bash
DELETE /api/integrations/discord
Authorization: Bearer vrd_your_api_key

This removes AskVerdict's access token. To fully remove the bot from your server, go to Server Settings → Integrations in Discord and kick the AskVerdict app. Your debate history in AskVerdict is not affected.


Troubleshooting

IssueSolution
"Invalid request signature"Ed25519 verification failed — ensure DISCORD_PUBLIC_KEY is correct in AskVerdict settings
Bot not responding to commandsCheck the bot has Use Slash Commands permission in that specific channel's settings
"Missing permissions"The bot needs Send Messages and Embed Links in the target channel
OAuth error after authorisingState mismatch or session expired — try the Connect flow again
Commands not showing in DiscordDiscord may take up to 1 hour to propagate new slash commands globally
Bot appears offlineThe bot does not maintain a persistent gateway connection — it responds to interactions only, so the offline indicator is expected

Discord's Interactions API requires a sub-3-second response. AskVerdict immediately acknowledges the interaction and delivers the verdict asynchronously, so you will see a "thinking..." indicator while the debate runs.

Was this page helpful?