Creating a webhook
1
Add the endpoint
Click Add Webhook, enter the Payload URL that should receive events (an
https:// URL you control), and optionally a Label to identify it later.2
Choose events
Tick the events this endpoint should receive. You can change the selection later.
3
Store the signing secret
On save, Percy shows a signing secret once. Copy it now — it is never shown again. You’ll use it to verify that deliveries genuinely came from Percy.
Events you can subscribe to
The delivery payload
Every delivery is a JSON envelope:idis unique per delivery — use it to de-duplicate retries.guild_idis a string (so it survives JavaScript number limits).datacarries the event-specific fields.
Verifying the signature
Each request carries anX-Percy-Signature header of the form sha256=<hex>. It is the HMAC-SHA256 of the raw request body using your subscription’s secret. Recompute it and compare in constant time before trusting a delivery.
Testing and monitoring
- Test sends a sample
pingpayload to the endpoint and reports the result immediately, so you can confirm your receiver works. - Log shows recent delivery attempts — the event, whether it succeeded, the HTTP status, the number of tries, and any error.
- The enable toggle pauses a subscription without deleting it.
Next steps
Backup & Templates
Export your server’s configuration and share it as a reusable template.
Audit Log
Post rich embeds to a channel whenever moderation or server events happen.