3
1 Comment

Software for making 3rd-party APIs reliable?

Hello!

I'm bouncing around an idea of "productionizing" some tools that I've written for personal projects. The overall theme is "making 3rd-party APIs behave in a reliable way", and I wanted to ask if, as a community, you felt that this would be something useful, or possibly worth paying for, for your own businesses.

Here is the rough feature set:

  • Automatic rate limiting. If an API has a rate limit, the software would automatically adhere to that limit.
  • Retries and backoff. If a call fails, say, due to a network blip, then automatically retry with backoff.
  • Fire-and-forget: Queue API requests, and then allow a client to poll for a return value, or automatically retry, while adhering to rate limits
  • Debugging: take samples of request/response data to be able to see error rates, latency, and sample payloads

It would not be a SaaS, but rather software that one could run via a binary, or a Terraform/AWS Marketplace install. That way, a customer could purchase a license to use as they need, and side-step the hazards of adding another 3rd party dependency.

I've written a lot of these things as individual parts of code for side projects, and am thinking about putting this all together as a single daemon, or proxy server, which would transparently do all of the above.

Is this solving a real problem for you? Would this make it easier to focus on engineering efforts more relevant to your core business?

on April 1, 2020
  1. 1

    Hi Jay, honestly I don't believe that any public API would not have these feature out of the box. The system arch. that I have been working with for last few years already have these features. In some platforms, these features are already available as third party packages like Polly, HangFire etc. But I do not want to discourage you from exploring this more. May be validate this intensively before investing efforts into it. I have been working in dev-tools startups space since 2010. Please add me on linkedin if you need someone to brainstorm with in dev-tools space. https://linkedin.com/in/zeeshanejaz