← All platforms

Messaging

Discord

target_app: "discord" · endpoint /v1/messaging/execute · Bring your own credentials

Setup

Create an application at discord.com/developers/applications, add a Bot, copy its token, and invite the bot to your server with "Send Messages" permission.

Credentials needed on your Connections page

bot_tokenBot Token. Find it: Discord Developer Portal → Bot → Reset Token

Actions

send_text

Send a plain text message to a channel.

Request body:

{
  "user_id": "...",
  "action": "send_text",
  "payload": { "text": "Hello!" },
  "target_app": "discord"
}

provider_response.result shape:

{ "id": "...", "content": "Hello!", "channel_id": "..." }

send_embed

Send a rich embed (title, description, color, fields).

Request body:

{
  "user_id": "...",
  "action": "send_embed",
  "payload": { "embed": { "title": "Status", "description": "All good", "color": 3066993 } },
  "target_app": "discord"
}

provider_response.result shape:

{ "id": "...", "embeds": [{...}] }

edit_message

Edit a message you sent.

Request body:

{
  "user_id": "...",
  "action": "edit_message",
  "payload": { "messageId": "1234567890", "text": "Updated" },
  "target_app": "discord"
}

provider_response.result shape:

{ "id": "...", "content": "Updated" }

delete_message

Delete a message.

Request body:

{
  "user_id": "...",
  "action": "delete_message",
  "payload": { "messageId": "1234567890" },
  "target_app": "discord"
}

provider_response.result shape:

{}

add_reaction

React to a message with an emoji.

Request body:

{
  "user_id": "...",
  "action": "add_reaction",
  "payload": { "messageId": "1234567890", "emoji": "👍" },
  "target_app": "discord"
}

provider_response.result shape:

{}

get_history

Fetch recent messages in a channel.

Request body:

{
  "user_id": "...",
  "action": "get_history",
  "payload": {},
  "target_app": "discord"
}

provider_response.result shape:

[ {"id":"...","content":"..."} ]

Anticipated errors & fixes

"Missing Access" or 403

Cause: The bot hasn't been invited to the server, or lacks permission for that channel.

Fix: Re-invite the bot via OAuth2 URL Generator with "Send Messages" + "Embed Links" scopes, and check channel-specific permission overrides.

"Unknown Channel"

Cause: user_id (channel ID) is wrong or the bot cannot see that channel.

Fix: Right-click the channel in Discord (Developer Mode on) → Copy Channel ID, and confirm the bot has access to it.

401 "Unauthorized: Invalid API key."

Cause: Your eConnect Authorization header is missing, malformed, or the key was regenerated/revoked.

Fix: Copy your api_key fresh from the eConnect dashboard and confirm the header reads exactly "Authorization: Bearer <key>".

429 "Too many requests"

Cause: You've exceeded your plan's per-minute rate limit.

Fix: Wait a minute and retry, or upgrade your plan for a higher per-minute limit.

429 "Monthly API limit exceeded"

Cause: You've used your plan's full monthly request allowance.

Fix: Wait for your next billing cycle reset, or upgrade to a plan with a higher monthly limit.

← Back to all platforms