API Integrations

1. API Authorization

2. Understanding API provider’s documentation

3. Maintenance

  • Authentication type changing
  • Endpoints being added, modified, or removed
  • Changing the data returned by endpoints

Building a Single integration

Building multiple API integrations

Goal

  • Xero
  • Quickbooks
  • Facebook
  • Stripe
  • Google Analytics
  • Salesforce

Past decisions made

1. Authorization

Poindexter’s Token Refresh Workflow

  1. If the access token is set to expire soon, Poindexter sends a requests to Xero’s authorization server with a refresh token for a new access token.
  2. With the new access token, Poindexter makes a request to Xero’s resource server for a protected resource

2. Documentation

3. Maintenance

Lessons learned

Solution

Integrating with APIs using Paragon Connect

  1. The user requests a Paragon user token from the server, and the Paragon user token is needed to access Paragon’s ConnectAPI.
    (API is built in Ruby on Rails)

Challenge faced with Paragon

Summary

  • Integrating APIs allows applications to share data and communicate with each other freely
  • The most common challenges of integrating APIs are API authorization, understanding documentation, and maintaining API integrations
  • Understanding the API provider’s documentation
  • Authorization to access APIs
  • Maintaining API Integrations
  • Engineering teams will have to face the same challenges every time they integrate a new API
  • Integration as a Platform tools such as Paragon abstract away all of the challenges of integrating APIs, so that engineers can focus on other tasks
  • The advantage to integrating directly with APIs is that data trust and technical trust can be ensured

Resources

  1. https://www.krit.com/blog/custom-integrations-are-a-total-headache-heres-why-theyre-worth-it
  2. https://www.saastr.com/the-top-saas-companies-have-an-average-of-350-integrations/
  3. https://www.digitalocean.com/community/tutorials/an-introduction-to-oauth-2
  4. https://www.quora.com/What-are-the-difficulties-in-API-integration
  5. https://www.quora.com/How-difficult-is-it-to-integrate-a-web-API-and-whats-the-process-you-take-when-you-integrate-an-API-What-challenges-do-you-face
  6. https://www.useparagon.com/blog/6-things-you-should-never-build-in-your-saas#integrations
  7. https://api2cart.medium.com/what-does-it-take-to-build-an-api-integration-c73f5ec88d45
  8. https://developers.google.com/identity/protocols/oauth2/web-server#uri-validation
  9. https://blog.cloudrail.com/bad-api-documentation-why-and-what-you-can-do-about-it/
  10. https://www.pandium.com/blogs/3-best-practices-for-api-documentation

--

--

--

Software Engineer

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

An overview of ZigZag.exchange on the zkSync mainnet.

Hi, everyone

Get Rid of Object-Oriented Programming For Good (Part 1)

Get Rid of Object-Oriented Programming For Good

Build a connected food dispenser with Raspberry Pi

A note about Python .super() and Class Inheritance

Create a Simple Microservices Kubernetes, Docker— (Part 1)

Architecting a Highly Available and Scalable Wordpress Using Docker Swarm, Traefik & GlusterFS…

mgo 库中各种mode

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Abhi Reddy

Abhi Reddy

Software Engineer

More from Medium

Let’s Code A Simple Subscription Service!

API Interface Specification Approval Checklist

For Your Eyes Only: Authentication using OAuth 2.0

Deploy your Nodejs + Auth0 REST API to Cyclic.sh under 4 minutes