fusionauth-issues
fusionauth-issues copied to clipboard
Add a webhook event log
Add a webhook event log
Problem
Webhook events are not persisted in FusionAuth so you cannot view a historical record of which events were sent and if they webhook responded successfully, if the event was retried, etc.
Solution
We could add an event log for webhooks. Stripe has a similar feature and it allows you to view historical events with the full JSON body, view if an event has not yet been successfully received by a configured webhook etc.
Stripe recommends that a configured webhook only consume the event Id and then make an API request to Stripe to receive the event body. This way the event consumer does not have to trust the body that is sent and can trust the response from the Stripe API. Not sure this is necessary, but if we had an event log for webhook events we could add an API to respond to GET
to support this workflow.
In theory we could re-use our event log for this with a new event type. However this may not be the best solution. Ideally we'd just create a new table add a config to indicate how many records we should persist and then persist even event.
Alternatives/workarounds
N/A
Additional context
N/A
Related
- https://github.com/FusionAuth/fusionauth-issues/issues/391
- https://github.com/FusionAuth/fusionauth-issues/issues/1499
- https://github.com/FusionAuth/fusionauth-issues/issues/1543
Community guidelines
All issues filed in this repository must abide by the FusionAuth community guidelines.
How to vote
Please give us a thumbs up or thumbs down as a reaction to help us prioritize this feature. Feel free to comment if you have a particular need or comment on how this feature should work.
Documentation Tasks
- [ ] Document new Webhook Event Log UI
- [ ] Document new Webhook Event Log retention system configuration
- [ ] Document new API for viewing webhook event logs
- [ ] Document new Webhook event log viewer role.
Internal
- https://github.com/FusionAuth/fusionauth-app/pull/140
- https://github.com/FusionAuth/fusionauth-client-builder/pull/49
Internal
- https://github.com/FusionAuth/fusionauth-app/pull/436
- https://github.com/FusionAuth/fusionauth-client-builder/pull/83