Why do APIs matter? California School Administrator version

For those that have been in California education long enough, the acronym API referred to the Academic Performance Index, a score that rated school and district performance. This post is not about that API, but instead the software version, Application Programming Interface. For all the non-technical folks, this post is for you! I’ll explain what an API is and why it’s more important than ever in our current educational landscape of software applications.

What is an API?

Let’s start with the “I” part, the interface. Before the modern mouse, the way to interact with a computer was through a text based prompt known as a Command Line Interface (CLI) like MS-DOS or the Unix shell. Only the keyboard was necessary, and it was the mechanism for a human to interact with a computer. Along came the Xerox Alto with a new Graphical User Interface (GUI) in 1973, and a decade later brought Microsoft Windows and Macintosh to the mainstream with icons, menus, and windows controlled by a mouse.

Both of these examples are interfaces for humans to interact with computers. What happens when computers need to interact with other computers? This is where the Application Programming Interface (API) comes in. Modern APIs create and define a common language that allows disparate software systems to communicate and pass data between them without needing to know how the other system is built.

Common examples

When software systems work well together, everyone wins and creates an easier to use experience for all involved. Some examples:

  • Sign in with… Many sites allow you to sign in and create an account using your existing Google, Apple, Microsoft, or Facebook account. This simplifies the account creation and login process while offloading the identity management and security components to the login platform.
  • Payment platforms: When you complete a purchase at many web stores, you are redirected to Stripe, Square, PayPal, or Shopify. These payment processors handle the credit card processing and allow the businesses to focus on the product/service, not the details of collecting payments. These are all enabled by APIs that exchange information about the transaction to and from the payment processor.
  • Social media integrations: The set of buttons that enable sharing on Instagram, Facebook, X, or LinkedIn are all powered by APIs to pass data quickly and make it easier to share content and broadcast to a wider audience quickly.

I’m an educator, why should I care?

The adoption of APIs across the EdTech industry is woefully behind our corporate counterparts. Many software evaluation tools have some kind of “does it talk to other systems” rating. Any smart vendor trying to make a sale will say yes to this question, but the devil is in the details. If the mechanism to move the data relies on a file extract (csv, usually), this is what is slowing down progress and the ability for systems to truly talk together.

Let’s use an account creation example for a district with 50,000 students. The traditional, non-API version of this process would download all 50,000 students on a nightly basis, and then step through each line to determine the exact 5 students (daily average changes) that were either newly enrolled or left the district. This results in processing 49,995 extra records every time the automation is run. In moving to an API based process, a trigger could be setup to run only for the 5 students that have changed, saving the rest of the processing steps. With reductions in volume like this, it also allows for more frequent executions, making the process significantly faster, ultimately getting a student setup in the various online platforms faster. So, the new student that started this morning? They no longer need to wait for their logins to work because the nightly batch process has not run yet.

Another educational example we have put into production ties our permanent document storage system that holds cumulative folders together with our student information system. Staff frequently couldn't access the student records they needed, or worse, they could see records they shouldn't. A district’s student information system is usually the system of record for tying staff access to individual students by school, grade, and/or classroom. Getting these permissions copied into other systems doesn’t ever really work well.

Our team was able to solve this problem by leveraging APIs available in the commercial document storage platform. This means that any staff member that has permissions to see the student information in the student information system can be granted on-demand access to appropriate files in the cumulative folder, all logged and preserved automatically as required by law. No additional permissions to manage, access is granted and revoked only in the student information system.

Takeaways

This may all seem boring and irrelevant, but I promise you it’s something every educator should be pushing vendors on.

  • Does your system have a REST API?
  • Can we trigger actions in real-time, not just daily batches?
  • What data can we access programmatically?

What if you didn’t need a report to look at students with failing grades, but could simply ask in a chat window? What if the question you asked that took the data team two weeks to produce an answer before now could be done in a matter of minutes? How would that change a discussion and ability to iterate on solutions? These are the types of solutions that can be created, if and only if APIs are available within the chosen EdTech platforms.

Next month will be part two of this article, APIs and AI: if you can think it, you can do it! We’ll look at few more examples of API use cases and how it has enabled our teams to make better decisions more quickly.