Discord API

Essential Endpoints

Master the Discord API with these essential endpoints. Clean, modern, and developer-friendly.

User Tokens

Personal automation with user auth

Message Control

Send, edit, and delete your messages

Webhooks

Automated notifications and integrations

6
API Categories
12+
Endpoints
100%
User Focused
v10
API Version
Live API
v10
User Tokens
Scroll to explore
Discover the endpoints below

API Categories

Users API

Manage user profiles and account information

Get Current User

Get your user information

GET

Get information about your Discord account including username, ID, and avatar.

Endpoint

GET /users/@me

Example cURL

curl -X GET "https://discord.com/api/v10/users/@me" \
-H "Authorization: <token>"

Edit Message

Edit your own message content

PATCH

Edit the content of a message you previously sent. Only works on your own messages.

Endpoint

PATCH /channels/{channel_id}/messages/{message_id}

Payload

{
  "content": "Edited message content"
}

Example cURL

curl -X PATCH "https://discord.com/api/v10/channels/123456789/messages/987654321" \
-H "Authorization: <token>" \
-H "Content-Type: application/json" \
-d '{"content": "Edited message content"}'

Delete Message

Delete your own message

DELETE

Delete a message you previously sent. Only works on your own messages.

Endpoint

DELETE /channels/{channel_id}/messages/{message_id}

Example cURL

curl -X DELETE "https://discord.com/api/v10/channels/123456789/messages/987654321" \
-H "Authorization: <token>"

Get Messages

Retrieve messages from a channel

GET

Get a list of messages from a channel. Maximum limit is 100 messages.

Endpoint

GET /channels/{channel_id}/messages?limit=50

Example cURL

curl -X GET "https://discord.com/api/v10/channels/123456789/messages?limit=50" \
-H "Authorization: <token>"

Messages API

Send, edit, delete, and manage Discord messages

Channels API

Create, edit, and manage Discord channels

Create Channel

Create a new channel in a guild

POST

Create a new channel in a guild. Requires MANAGE_CHANNELS permission.

Endpoint

POST /guilds/{guild_id}/channels

Payload

{
  "name": "new-channel",
  "type": 0,
  "topic": "Channel description",
  "nsfw": false
}

Delete Channel

Delete a channel permanently

DELETE

Delete a channel permanently. This action cannot be undone.

Endpoint

DELETE /channels/{channel_id}

Example cURL

curl -X DELETE "https://discord.com/api/v10/channels/123456789" \
-H "Authorization: <token>"

Guilds API

Manage Discord servers and guild information

Get Guild

Retrieve guild information

GET

Get detailed information about a Discord guild including roles, channels, and member count.

Endpoint

GET /guilds/{guild_id}

Example cURL

curl -X GET "https://discord.com/api/v10/guilds/123456789" \
-H "Authorization: <token>"

Get Guild Members

Retrieve guild member list

GET

Get a list of guild members. Maximum limit is 1000 members per request.

Endpoint

GET /guilds/{guild_id}/members?limit=1000

Example cURL

curl -X GET "https://discord.com/api/v10/guilds/123456789/members?limit=1000" \
-H "Authorization: <token>"

Webhooks API

Send automated messages and notifications through Discord webhooks

Execute Webhook

Send a message through webhook

POST

Send a message through a Discord webhook. No authentication required.

Endpoint

POST /webhooks/{webhook_id}/{webhook_token}

Payload

{
  "content": "Hello from webhook!",
  "username": "Webhook Bot",
  "avatar_url": "https://example.com/avatar.png"
}

Example cURL

curl -X POST "https://discord.com/api/v10/webhooks/123456789/abcdef" \
-H "Content-Type: application/json" \
-d '{"content": "Hello from webhook!", "username": "Webhook Bot"}'
Copied to clipboard!