I always dislike doing integration with 3rd party APIs. Other than Stripe, the documentation is almost always terrible. It's not tailored to my language, there's too many links to other things I don't need to know in the beginning, and asks me to make choices on things I don't know anything about yet.
Then, I have to pick from a variety of client libraries, some of questionable quality, because the service couldn't be bothered to maintain an official lib (I'm not using esoteric langs), and then authentication is always a pain.
That's all before I get to the good stuff of just getting to play the data. And that's when I actually care about getting to use the API.
Other times, I just want it over and done with, because it's not the core of the product, and I feel like integration is just this long slog and chore.
Does anyone else feel this way? How do you deal with getting through integration quickly or painlessly?
I think that's a common pain point, I can definitely relate. These days building software feels more like assembling a puzzle than programming. The term "open source" is often synonym for low quality, amateur products made with good intentions (e.g. Amplify 🤮).
Picking the right tool for the job is half the battle, the other half is research, and a ton of googling, trial and error. But in the end you should arrive at a stable, reliable, automatable solution.
Not sure what you're building but you can probably get some pointers in here if you share what you're stuck with.
I recently had to do a sendgrid integration, and it reminded me of when I did a paypal/braintree integration a while back. What in my mind should be relatively simple and straightforward ends up taking more time that I really care to put into it. Just wondering if there were other tools or shortcuts, or if I was the only one doing things in a dumb way.
I wouldn't mind even just more straightforward documentation for my given stack and platform.
I was also going to use Sendgrid but I'm actually going to try out AWS SES first. Not sure that's an option for you but pricing looks cheaper and being an AWS service you can bet it's a solid product. I already have my AWS serverless backend in place so it's pretty much ideal for me.
I recommend taking a look at this post by @jcuk that outlines his choice of stack.
API's are often not well documented, authentication standards are not well respected, you need to handle rate limiting, pagination, manage data mapping and especially typecast, translate your business logic... And more integrations you build, harder is to maintain all of them.
We experienced such a pain with our previous product. We looked for a good platform to help on this, but didn't find it. So we built one (https://www.simplifier.eu)