Don't developers need to handle deliverability and retries to Diahook?
Don't developers need to handle deliverability and retries to Diahook?
User endpoints on the other hand, fail all the time, and often require a few retries.
With that being said, we plan on having client side (in our libraries) redundancy (try another endpoint if one fails), and ways for you to gracefully handle errors locally for users who need this.
Edit: I realise this comment was a bit sloppy, added some context in another comment https://news.ycombinator.com/item?id=26400970
My suggestion would be not only a library, but a local queue that can be managed with the library. Also, having some experience with working at a no code provider previously, ensure that it's trivial to query your service for what webhooks you can confirm were received by your infra and then delivered, perhaps by UUID.
Last, make sure it's dreadfully difficult to make changes to your systems where data loss could occur (messages dropped while returning 200 to counterparty systems, for example).
I agree about all the issues you outlined though. One thing we plan on doing in terms of internet being down and cloud provider not having routes: have a lot of endpoints spread geographically in every region, and maybe in the same/nearby data centers.
Thanks again for the feedback!
We just send the same requests over and over until they're successful. It's relatively simple to use.
Edit: ahh, I already mentioned it, it's buried in my comment.
That doesn't sound realistic to me. Sendgrid, Twilio, and all other APIs have downtimes and other problems, just check their status page: https://status.sendgrid.com/history.
I always had to implement some retry logic in API clients at some point or another. That doesn't mean your service doesn't bring value but it's not enough to just expect it to work because it is focused on uptime. When implementing a service that requires external dependencies I would always expect them to fail and try to design with that fact in mind.
We already have users that have their own queue system for sending us messages because that's how they deal with similar APIs too.
So I definitely see the problem, what I meant in my comment is that it's similar to other API companies, and it's not unique to us!