API Integration

What is this API Integration?

Application Programming Interfaces (APIs) are a set of rules provided to a Computer Programmer which allows integration with a technology.

When I refer to API’s I am generally talking about third party software systems which allow you to programmatically hook into them in order to leverage the features and functions they have developed.

Who provides APIs?

Google offers API’s to connect to almost all of their products.  Facebook, Twitter, Instagram and most social media platforms have a wide range of API’s which allow game integration, login integration, app development etc.

E-commerce platforms like Shopify, CRM’s like Salesforce, Payment Processors like Stripe, and even hosting providers like AWS and Google Cloud have API’s.

Anybody that has developed a system can create an API which would allow you to talk to that system.  This API would use some form of authentication to ensure access is granted in a controlled manner.

What is a good API example?

Google Maps is a great example of an API.  Google has worked very hard and done an excellent job of building a robust mapping system.  Google could have kept their mapping system to themselves, but by providing an API, their work can be used and benefit more than just themselves.

I won’t go into in-depth detail right here as to all of what Google Maps API can do.  Instead, I will look at a couple problems they solve and how they let you solve it.

First of all, Google doesn’t want their systems to be bombarded with requests.  So to prevent this from happening, they force everybody to get an API key.  Google will allow a certain number of requests to their API for free, and generally a very reasonable amount.

Here you can see their  Geocoding Usage Limits.  At the time of this writing, they allow 2,500 requests per day for free.  If your API key goes beyond that, they will charge you accordingly.

Their Geocoding API converts some address into latitude/longitude coordinates.  These coordinates can then be used for many things such as stored in a database, plotted on a map, or used as a waypoint for a route.

Google’s Geocoding API is easily accessed through a URL which then returns information in some standard format such as JSON.

The programmer’s job is to understand the limitations of the API, how to talk to it and how to decipher the response into something usable.

Why should somebody use APIs?

The reason is pretty simple.  You can either build Google Maps yourself so that you can do what you want programmatically, or you could just use Google Maps API.  The former will cost you billions of dollars and several years, while the latter will cost you very little and can be done quite rapidly.

Sometimes you have to depend on third-party systems.  Businesses can’t possibly build everything for themselves.  Whether you want to integrate your calendar,  task list,  accounting system,  inventory synchronization, or any of thousands of other reasons you may need to have two systems to talk together.  APIs are the solution.

What makes a good API?

  • Excellent Documentation
  • Practical Examples
  • Widely Used – Lots of questions and answers asked and answered.
  • Intuitive
  • Supported Common Standards, Restful HTTP request & JSON or XML responses

What make a poor API?

  • Rigid request limits
  • Documentation spelling mistakes, especially in crucial areas like functions or API endpoints
  • Incomplete features
  • Bugs
  • Tedious process of gaining API access

Areas of Expertise:

Google Cloud
Google Docs
Google Maps
Google Sheets