There are so many acronyms when it comes to computers (HTML, CSS, PHP, API, SDK, JSON, blah blah blah blah) that it can sometimes (always) be confusing.  Often times people are told that in order to do thing X with system Y – they’ll need to use the API.  For example – my sister in law uses Mindbody Online for scheduling classes for her gym.  Mindbody’s user experience is horrible. So we want to build our own to replace it.  In order to do that, we’ll have to build our own calendar / date picker thingy and connect it to Mindbody.  (Side note – we’re actually going to ditch Mindbody because it’s terrible – seriously the worst thing I’ve ever used.  We’ll be using AppointmentCore and Infusionsoft instead – I’ll do a separate post about that later)

A while back I did a presentation to help give a super simple intro to what APIs are and how they work – and I did it without having to explain one line of code.  That’s what this post is all about.  It’s super basic.  If you’re familiar with programming or have used APIs in the past – this is going to be a waste of time.  If you’ve never built something out (or had it built out) and want to have a general understanding of APIs – read on my friend…

What is an API?

This is what a nerd will tell you:

nerdy api definition

 

In not so nerdy speak – an API is what lets one system talk to another system.  APIs usually give access to data and existing features available in the app you are connecting to.  For example – with GoToWebinar’s API, I can write a program that will take contact data from Infusionsoft and register that person for a given webinar.  The program would send the person’s contact information and the webinar info to GoToWebinar and tell GoToWebinar to register the person.  When GoToWebinar is done registering the person, they send back that person’s registration information.  That’s a real life programming example – let’s take it out of the nerdery and see what an API would look like in real life.

simple api example

Let’s say that Jordão (on the left) only speaks Portuguese and Monique (on the right) only speaks French.  Jordão really wants to talk to Monique, but she can’t understand him because she doesn’t speak Portuguese – and he can’t understand her because he doesn’t speak French.  They need a translator in order to communicate.  The translator can understand what Jordão says in Portuguese and can tell Monique the same thing in French.

simple api example

Extra points if you know what they are saying…

 

In this case the translator would be like the program from the GoToWebinar example.  That program speaks both Infusionsoft and GoToWebinar and can facilitate the translation between the two programs.

So – there you have it.  A very basic explanation of what an API is.  I’ll be doing a couple more posts about how to use APIs (mostly Infusionsoft’s API) and I’ll even give some real life examples (and code) that anyone can use to extend the power of Infusionsoft.

What questions didn’t I answer?  Let me know in the comments below…