Whenever you create a new Webhook to your external system we strongly recommend that you:Documentation Index
Fetch the complete documentation index at: https://docs.mention-me.com/llms.txt
Use this file to discover all available pages before exploring further.
- Choose a Secret
- Use the Secret in your external system to validate any incoming data and ensure it’s authenticity.
How It Works
Whenever a new Webhook is setup with a Secret, all events which are delivered to the external system will be accompanied by a HTTP Header with the keyX-MentionMe-Signature, and a value which will look something like sha256=<signature here> (note that it will always begin with sha256= followed by the signature value).
This signature can be used to:
- Validate that the Sender (i.e. Mention Me) knows the Secret which was entered when setting up the Webhook.
- Validate that the body of the Webhook (examples) have not been intercepted by a bad actor, and tampered with, after they have left the Mention Me platform.
Validation
We strongly advise using a secure comparison function rather than a standard string comparison (e.g.
==), and to fully test the implementation before deploying to production.Extract the request body
Extract the request body from the HTTP POST request.
Retrieve the Secret
Retrieve the Secret value in your external system (which must be the same value as was provided when setting up the Webhook). We recommend that the Secret be stored securely as an Environment Variable.
Generate the SHA256 hash
Generate the SHA256 hash, where the data is the request body, and the key is the Secret.
Compare the hashes
Securely compare the resulting SHA256 hash against the one provided in the request headers.
Next steps
Events
See which webhook events are available and their payload formats.