defer.client icon indicating copy to clipboard operation
defer.client copied to clipboard

Implement Webhooks functionality to watch for execution status changes

Open piotrkulpinski opened this issue 2 years ago • 2 comments
trafficstars

Hi, Wouldn't it be cool if Defer.run would provide a way to set up webhooks (like Stripe does) to listen to the execution status changes via some endpoint.

This endpoint could return the usual stuff: id, state, result plus the metadata provided when invoking the function. This would allow to set a custom data like userEmail and send an email automatically once webhook is called.

Currently, I have to store the execution ID in the database, and check the getExecution method periodically in a cron job to check if the status is changed (unless there's a better way to do it).

Let me know what you think. Thanks

piotrkulpinski avatar Aug 07 '23 07:08 piotrkulpinski

That sounds like a great idea! I've added it to our ticket system. We need to write a specification defining the type of event, how to handle retries, which mechanism to use to secure the webhook, and how to display it on the console, etc. I'll let you know when we have more information about this feature.

gearnode avatar Aug 17 '23 14:08 gearnode

I agree it's not a trivial feature, but definitely worth the effort as it would improve the DX of getting execution results by a lot.

Thank you for considering it!

piotrkulpinski avatar Aug 18 '23 08:08 piotrkulpinski