The Power of APIs

Dombeya acutangula Apis mellifera3
Image via Wikipedia

Applications Programming Interfaces, or APIs, enable applications to talk to other applications in an automated and structured fashion. They are powerful. Extremely powerful. Thinking through the advent of technological development we’re now entering a phase where robust, generally available APIs allow for significant new opportunities. It is much easier to mash up disparate data sources to provide new products that deliver results better, faster, and cheaper.

In the same way cloud computing has changed the equation for scaling web apps, APIs are changing the speed with which apps can be developed. There are off-the-shelf APIs for a number of things like sending emails, looking up WHOIS info, connecting to Google AdWords, connecting to Amazon Web Services (that’s right – use APIs to scale up or down your cloud computing tools), validating a postal address, processing a credit card, finding your friends on Facebook, and many more. What we’re seeing is a proliferation of specialized services that interact with existing apps or provide niche data and tools.

Traditionally, a developer would have to build something internally, most often coupled in a monolithic fashion, and then maintain it over time. Now, with APIs, specialists can do what they do best and other apps can focus on adding value as opposed to writing more code for something that is now readily available. APIs are extremely powerful and need to be understood by tech entrepreneurs.

What else? What are some other powerful aspects of APIs?

Comments

5 responses to “The Power of APIs”

  1. Erik N. Avatar

    David, great post and I agree with you that API’s add power and scale to an application.

    With the advent of web services and service oriented architectures, my prior company, Visiprise, was able to develop powerful new interfaces to its core modules. Many of our customers were SAP users and found the new, real-time integration capabilities incredibly useful.

    What was even more powerful was the direction this led once we started interacting with our customers in a new dialogue on interfaces… They wanted more of them and quickly, which forced us to refactor the core app and it’s modules into smaller, more manageable objects that had more “exposure” for API’s. This then led to a more robust discussion on our SDK toolkit, so customers and partners could develop their own small objects and modules and integrate them to the core apps via real-time
    web services that functioned both directions seamlessly.

    The key take-aways from this comment are that in order to deploy API’s successfully your product managers MUST:
    1. Insure the code base architecture is designed to support the API’s.
    2. Really think through which API’s are needed and which are not. This is harder than you think and customers will challenge your PM’s here.
    3. Think through the scalability of your technology stack to insure the growth in messages across the API’s is manageable.
    4. Consider the SDK as the next step in giving your customers the flexibility to extend your app in ways that are not part of your core roadmap.

    Good luck.

    1. Mike Schinkel Avatar

      @Erik N. – Very insightful comments; I appreciate your posting them.

  2. Mike Schinkel Avatar

    Regarding the proliferation of specialized API-based services is “About damn time!”

    But to those who are considering offering public APIs, do yourself a HUGE favor and do a properly RESTful API before you offer a SOAP API (if you ever do offer a SOAP API that is. I’ve vote for not.) Adoption for RESTful APIs is many times higher than for SOAP because they are so much easier for most developers to consume.

  3. […] for startups. These projects are almost always complementary to the main product and interface via APIs or some other mechanism. Here are some example projects that are readily […]

  4. […] worth the time to build a billing module or write logic to integrate with a billing system’s API. Avoid the temptation to write a billing module too […]

Leave a reply to Automated Billing for Startups « 10,000 Startup Hours – David Cummings Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.