Can someone please tell me what an API is?
Labor Day weekend usually marks the end of summer, but it’s also the start of tailgating season! Light up the BBQ, crack open your favorite beverages, get ready to watch some football, and learn about APIs. Wait. One of these things doesn’t belong. Before you go and throw out the APIs like expired cheese, let’s take a closer look at what you can do with them — APIs that is. Please throw away the moldy cheese.
If you’re running a business in 2021 you are likely using a variety of software to support your operations. Is that software operating independently like kids on a Pop Warner football team? Do you want to upgrade so the software can take direction, communicate, and work together like an NFL team? Did you know you could make different pieces of software work together? That’s the power of APIs.
First things first, wtf is an API and how does it work?
A quick search on Google will tell you that API stands for “Application Programming Interface” and show you at least 441,208,172 blog posts explaining what that even means. For our purposes we’ll stick to the most popular type of API, the web-based API.
Web-based APIs are sets of commands that the software provider (the company offering the API) allows their customer to send to the service. Saying they are “web-based” means that they use the common infrastructure of the internet, specifically HTTP. APIs use the same HTTP methods that web browsers do, but instead of showing you a website, a program is using it to transmit instructions behind the scenes. Apps like Uber and Lyft collect payment for rides every single day. Both of them use an API from Stripe in order to charge rider’s credit cards for the rides they take.
Ok, thanks, but you still didn’t answer what an API is.
Let’s say that like me, you’re a big fan of Google Maps. So much so that in addition to listing your office address on your website, you want your customers to be able to visualize it and maybe even plan their route to your office, all while they are on your website. That seems totally fair. You have two options. Build a maps product or use the Google Maps API.
Let’s say you want to build it. Ok. At the very least you need to hire a team of software engineers, buy a bunch of servers, rent a warehouse to store all the servers, buy US map data from the US Geological Survey, and then you can start writing software and build out a map service that looks like Google Maps to put on your website. In 3-6 months you might have a working prototype.
Or you can use the Google Maps API to create a map view of your office. Copy and paste the code that the Google Maps API writes for you into the code for your website and congratulations. In less than 30 minutes, not only have you used an API, but now, you’re a web developer.
That code looks something like this. And if you saw it in the browser, it would show you a map of the address you asked Google to show. But that’s just the beginning.
Why does that work?
Most software companies have moved to offering web-based APIs for everything because their business model is to sell software. If they only sold packaged software, their sales process would be more difficult. Customers would have to be convinced to adapt to a new workflow. Offering an API lets the software company offer their core service as broadly as possible, for anyone to use in any way the customer sees fit.
Let’s take a company like Salesforce. You might use their website to put in a new customer record. You do this by signing in with your user name and password to www.salesforce.com. Then you go through the product to add a new customer.
Salesforce also has an API. Just like the Google Maps API has specific links to show a predetermined map area, the Salesforce API has specific web addresses that are designed to let programs do predetermined things. For example, if you’re using MailChimp to send emails to prospects and someone responds. You could either login to Salesforce and tag that marketing lead as a prospect. Or, since MailChimp built a Salesforce application using the Salesforce API, you can set that up automatically in MailChimp.
Salesforce offers an API because they want their customers to keep using Salesforce, no matter what other tools they are using. If customers of Salesforce had to ask Salesforce to integrate with all of their tools, Salesforce would never be able to keep up with that demand. Instead by offering an API to let other companies, or customers, integrate with Salesforce, they enable a level of unprecedented flexibility.
Another example, Uber and Lyft both have APIs to let anyone build an app to “call” for a ride. Airlines and hotel apps (like United or Hilton) use this API so that if you’re checking in to your flight or checking out of your hotel you can schedule a ride to your next destination based on when you’re landing at the airport, or checking out of the hotel. Saving you the hassle of switching apps, typing addresses etc.
In this case your airline app is like the quarterback and the ride share app is a wide receiver. An API lets the QB and WR talk to each other directly. You as the coach give one command. That command gets sent through to the different coaches and players (your business applications) and each layer translates the message for the next person on. The play is started and executed, and all you had to do was say what needed to happen.
Most software companies have their APIs available for free so that anyone building software products can integrate other APIs, or, of course, business owners can build their own integrations.
Just like football coaches draw up plays, you have probably made process workflows or playbooks for how your employees, business services, and software systems interact. Any of those interactions that can be structured and defined should be done via an API.
APIs are all around us. In 2018 a web hosting company reported that 83% of web traffic was API calls. APIs are so prevalent that there are API-first, or API-only, companies writing software to solve either very specific problems or very broad problems. The only way to use their service is through their API. There are a number of companies that have scaled to billions of dollars in revenue by providing APIs to customers to simplify an otherwise complex process.
Here are a few examples:
Stripe: An API for processing payments online or within a smartphone app
What makes it great: Write a few lines of code in your app and you get the power to process payments on a global basis. No need to go through complex and expensive compliance procedures nor build integrations with the various banks and payment gateways.
Twilio: A communications API for text, voice, and video within your app or website
What makes it great: With a few lines of code you have global communications capability to better serve and engage your customers
Plaid: An API to allow you to conduct bank transactions
What makes it great: A simple API allows you to connect with just about any bank or financial institution in the US.
We know that APIs sound intimidating, but one thing Silicon Valley has done lately is make building these API integrations even easier. If you can draw arrows between your various software systems, you can link them up without writing any code. These types of applications are called no-code platforms, such as Zapier. More recently low-code solutions have been growing as well. Low code solutions, such as EBH favorite Pipedream, take care of the hard part of managing API integrations and let you create the logic with minimal amounts of code.
Zapier: A “no-code” API platform
What makes it great: Zapier writes the required lines of code for you. If you’re using one of the 3,000+ apps that Zapier has integrated you can point and click to create your own, custom API integration.
Pipedream: A “low-code” API platform that enables you to write much more powerful, flexible API integrations without needing to be a full time developer.
What makes it great: Pipedream solves the API and data infrastructure problem. Like Zapier, they have a number of built-in integrations so you can create your own custom API integrations. But you can also write code to integrate products that Pipedream hasn’t done themselves. More interestingly, you can write your own logic for those integrations.
Integrating your various business applications through a low-code tool like PipeDream is just the beginning of your tech enablement journey. These platforms are going to be core to allowing your business to offer new services and features. Almost any future technology enablement in your business will use at least one API. You need to have the Run Pass Option in your playbook if you want to win.