n8n-nodes-discord-signature-validator
v1.0.2
Published
n8n community node to validate Discord ED25519 signatures
Downloads
10
Maintainers
Readme
Discord Signature Validator for n8n
This is a community node for n8n that validates Discord ED25519 request signatures.
It is designed to work with Discord Webhooks and allows you to verify that incoming requests are authentic.
Features
- Validates Discord webhook signatures using
x-signature-ed25519andx-signature-timestamp. - Simple Node interface: provide Public Key, Signature, Timestamp, and Raw Body.
- Returns
{ valid: true/false }in the output JSON.
How to Use
Install the node via npm:
Access your Docker shell (if running with Docker):
docker exec -it n8n shCreate the custom nodes folder if it doesn’t exist and navigate into it:
mkdir -p ~/.n8n/nodes cd ~/.n8n/nodesInstall the node:
npm install n8n-nodes-discord-signature-validator🔁 Reinicia n8n después de instalar para que detecte el nuevo nodo.
Alternatively, if you are self-hosting without Docker, you can copy this repository into
~/.n8n/custom/.Add a Webhook Node in your workflow to receive Discord events.
- Make sure you have Raw Body enabled to pass the exact payload.
Add the Discord Signature Validator Node:
Public Key (hex): Your Discord application's public key.Signature (hex):{{$json["headers"]["x-signature-ed25519"]}}Timestamp:{{$json["headers"]["x-signature-timestamp"]}}Raw Body:{{$binary["data"].data.toString()}}(or{{ JSON.stringify($json) }}if using JSON)
Use an IF Node to check
{{$json["valid"]}}and route your workflow accordingly.
Example Output
{
"valid": true,
"signature": "60f1df1975c5771dcdc5bf55f9351f91c720f061541727c7bc8ebb058638f01eb261767d98259564a28f5699ebc3cfd0ad7d269825f01a012da20ebf21deaf0c",
"timestamp": "1758306667",
"messageSample": "{\"type\":1,...}"
}Dependencies
License
MIT
