Harnessing the Power of APIs

Any sufficiently advanced technology is indistinguishable from magic.

This blog post's phone number is (804) 491-5275

I've recently found myself diving head first into coding and APIs. Martha came across itDuzzit while doing some searches for how to manage bulk import/export with WHMCS, our client management software for Domain of One's Own. It was recommended to interact directly with their APIs using something like itDuzzit. I had never heard of it and she was keen to play with it so we started experimenting. What we quickly found was that, while not as simple as a tool like IFTTT, it was infinitely more powerful because you could setup user-friendly forms that interacted with any API, both public and private. It was also the push I needed to start exploring the world of APIs more, and I have to say it's downright addicting!

There's something magical about realizing that you can interact with almost any piece of software out there and build great things. There have been many instances where we've relied on RSS in our department to handle the bulk of the work of getting information from other systems. It's "old reliable" in that regard, but riddled with its own issues (the future of it notwithstanding). More often than not services are not including RSS as a part of their core offering (and in some cases it probably doesn't even make sense). But public APIs are commonplace and in most cases you can accomplish some really incredible stuff using them!

I recognize I probably sound pretty naive, non of this is exactly new information. But if this post accomplishes anything, let it be a push for you to explore APIs more and consider that maybe it's not outside the realm of someone who's used to working with Wordpress code, tweaking themes and plugins, or digging through HTML. In just 2 short weeks here's what I've managed to do:

  • Grab course rosters from Canvas
  • Feed those users into our client management system for Domain of One's Own, WHMCS
  • Accept CSV imports to WHMCS
  • Create users in Wordpress upon signup in WHMCS

That last one is pretty significant because while Wordpress has some basic API functionality through XML-RPC I found working with the JSON-API plugin much slicker. It comes with a core set of functions but any function you can execute in Wordpress you can wrap in an API hook that you can execute remotely. Think about that for a second. When Martin Hawksey clued me in to the fact that you could bundle it with and work with other plugins using it like FeedWordpress, I quickly realized there's a ton of potential here to build something (a lot of things) we've all been thinking about and in some cases hacking together but doing it the right way.

Now I understand why people like Kin Lane are so excited about the possibilities and why he pushes so hard for more organizations, particularly the federal government, to expose their data to developers. In a world where data ownership and privacy is a growing question, there's a particular satisfaction in understanding that the keys to claiming and manipulating your data are there for the taking.

Oh, and I played with the Twilio API tonight to give this blog post a phone number. Call and get a personal message from me.


comments powered by Disqus
Timmmmyboy Comments