Discord · Schema
Discord Webhook
A webhook in Discord provides a way to post messages to channels without requiring a bot user or authentication, supporting incoming, channel follower, and application webhook types.
ChatCommunicationsGamingMessagingSocialVideoVoice
Properties
| Name | Type | Description |
|---|---|---|
| id | string | Webhook ID (Snowflake) |
| type | integer | Type of webhook: 1=Incoming, 2=Channel Follower, 3=Application |
| guild_id | stringnull | Guild ID this webhook is for |
| channel_id | stringnull | Channel ID this webhook is for |
| user | object | User that created this webhook |
| name | stringnull | Default name of the webhook |
| avatar | stringnull | Default user avatar hash of the webhook |
| token | string | Secure token of the webhook (Incoming type only) |
| application_id | stringnull | Bot/OAuth2 application that created this webhook |
| source_guild | object | Guild of the channel that this webhook is following (Channel Follower only) |
| source_channel | object | Channel that this webhook is following (Channel Follower only) |
| url | string | URL used for executing the webhook |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://discord.com/developers/schemas/discord/webhook.json",
"title": "Discord Webhook",
"description": "A webhook in Discord provides a way to post messages to channels without requiring a bot user or authentication, supporting incoming, channel follower, and application webhook types.",
"type": "object",
"required": ["id", "type"],
"properties": {
"id": {
"type": "string",
"description": "Webhook ID (Snowflake)",
"pattern": "^[0-9]+$"
},
"type": {
"type": "integer",
"description": "Type of webhook: 1=Incoming, 2=Channel Follower, 3=Application",
"enum": [1, 2, 3]
},
"guild_id": {
"type": ["string", "null"],
"description": "Guild ID this webhook is for"
},
"channel_id": {
"type": ["string", "null"],
"description": "Channel ID this webhook is for"
},
"user": {
"$ref": "discord-user-schema.json",
"description": "User that created this webhook"
},
"name": {
"type": ["string", "null"],
"description": "Default name of the webhook"
},
"avatar": {
"type": ["string", "null"],
"description": "Default user avatar hash of the webhook"
},
"token": {
"type": "string",
"description": "Secure token of the webhook (Incoming type only)"
},
"application_id": {
"type": ["string", "null"],
"description": "Bot/OAuth2 application that created this webhook"
},
"source_guild": {
"type": "object",
"description": "Guild of the channel that this webhook is following (Channel Follower only)",
"properties": {
"id": { "type": "string" },
"name": { "type": "string" },
"icon": { "type": ["string", "null"] }
}
},
"source_channel": {
"type": "object",
"description": "Channel that this webhook is following (Channel Follower only)",
"properties": {
"id": { "type": "string" },
"name": { "type": "string" }
}
},
"url": {
"type": "string",
"format": "uri",
"description": "URL used for executing the webhook"
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/discord-webhook"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.