DiscordIncomingWebhook
DiscordIncomingWebhook
yaml
type: "io.kestra.plugin.notifications.discord.DiscordIncomingWebhook"
Send a Discord message using an Incoming Webhook
Add this task to a list of errors
tasks to implement custom flow-level failure notifications. Check the Discord documentation for more details..
Examples
Send a Discord notification on a failed flow execution
yaml
id: unreliable_flow
namespace: company.team
tasks:
- id: fail
type: io.kestra.plugin.scripts.shell.Commands
runner: PROCESS
commands:
- exit 1
errors:
- id: alert_on_failure
type: io.kestra.plugin.notifications.discord.DiscordIncomingWebhook
url: "{{ secret('DISCORD_WEBHOOK') }}" # https://discord.com/api/webhooks/000000/xxxxxxxxxxx
payload: |
{
"username": "MyUsername",
"content": "Failure alert for flow {{ flow.namespace }}.{{ flow.id }} with ID {{ execution.id }}"
"embedList": [{
"title": "Discord Notification"
}]
}
Send a Discord message via incoming webhook
yaml
id: discord_incoming_webhook
namespace: company.team
tasks:
- id: send_discord_message
type: io.kestra.plugin.notifications.discord.DiscordIncomingWebhook
url: "{{ secret('DISCORD_WEBHOOK') }}"
payload: |
{
"username": "MyUsername",
"tts": false,
"content": "Hello from the workflow {{ flow.id }}",
"embeds": [
{
"title": "Discord Hello",
"color": 16777215
"description": "Namespace: dev
Flow ID: discord
Execution ID: 1p0JVFz24ZVLSK8iJN6hfs
Execution Status: SUCCESS
[Link to the Execution page](http://localhost:8080/ui/executions/dev/discord/1p0JVFz24ZVLSK8iJN6hfs)",
"footer": {
"text": "Succeeded after 00:00:00.385"
}
}
]
}
Properties
url
- Type: string
- Dynamic: ✔️
- Required: ✔️
- Min length:
1
Webhook URL which should be taken from discord integrations tab
options
- Type: AbstractHttpOptionsTask-RequestOptions
- Dynamic: ✔️
- Required: ❌
Options
The options to set to customize the HTTP client
payload
- Type: string
- Dynamic: ✔️
- Required: ❌
Discord message payload
Outputs
Definitions
java.nio.charset.Charset
Properties
io.kestra.plugin.notifications.AbstractHttpOptionsTask-RequestOptions
Properties
connectTimeout
- Type:
- string
- string
- Dynamic: ✔️
- Required: ❌
connectionPoolIdleTimeout
- Type:
- string
- string
- Dynamic: ✔️
- Required: ❌
defaultCharset
- Type:
- Charset
- string
- Dynamic: ✔️
- Required: ❌
maxContentLength
- Type:
- integer
- string
- Dynamic: ✔️
- Required: ❌
readIdleTimeout
- Type:
- string
- string
- Dynamic: ✔️
- Required: ❌
readTimeout
- Type:
- string
- string
- Dynamic: ✔️
- Required: ❌
Was this page helpful?