Regarding the backend we're essentially adding events into a queue and polling the queue for messages that are ready. Since this is an MVP we don't have any scaling or delivery guarantees but from our testing all of our events were delivered within 2 seconds of the desired time. We have many retries if something fails on our end while attempting to send the event to you, but if your server returns an error to us we will mark it as failed with a timestamp.
We are literally adding retries & some more customizability options right now, as well as better docs for usage and other endpoints!
Comments
Nice! I always wanted to build the same thing. A system like that is also my favorite question for systems design interview.
Care to share some of the technical details?
How far does it scale, what are the delivery guarantees, recovery strategy for missed webhooks, time accuracy?
Sure!
Regarding the backend we're essentially adding events into a queue and polling the queue for messages that are ready. Since this is an MVP we don't have any scaling or delivery guarantees but from our testing all of our events were delivered within 2 seconds of the desired time. We have many retries if something fails on our end while attempting to send the event to you, but if your server returns an error to us we will mark it as failed with a timestamp.
We are literally adding retries & some more customizability options right now, as well as better docs for usage and other endpoints!