Preface
Nordic APIs has been in operation for about 2 years. Within that short time weve hosted hundreds of API-specific presentations featuring international experts - giving us the opportunity to take a peek into the inner workings of leading web API-driven businesses.
Throughout our work weve discovered a recurring trend: unsuccessful APIs struggle both in fostering interest as well as creating a sustainable service. In contrast, successful APIs are well-attended, treated as a product with a multi-iterative lifecycle. So we thought; what exactly are the key ingredients to their successes?
Our fourth eBook, The API Lifecycle, presents an agile process for managing the life of an API - the secret sauce to help establish quality standards for all API and microservice providers. This handbook depicts a holistic model that treats a web API as a constantly evolving business and product. From conception through deprecation, it outlines instructions on market research, business strategy, development, operations, promotion, and other vital components for successfully creating and maintaining an API.
Inspired by experienced API consultants Andreas Krohn and Travis Spencer, the API Lifecycle diagram is composed of four distinct phases: Analysis, Development, Operations, and Retirement. Our eBook expands theses concepts, grounding theories in knowledge collected during our 2015 World Tour, events which brought API industry experts together to discuss different stages of the API Lifecycle. We also delved deeper into these ideas within our blog, interviewing leading web API figures to perform additional research, and peppered it all with a bit of our own insights to create a comprehensive overview of what to consider during the entire product lifecycle of a profitable web API.
Please enjoy The API Lifecycle, and let us know how we can improve. Be sure to join the Nordic APIs newsletter for updates, and follow us for news on upcoming events.
Thank you for reading!
Bill Doerrfeld, Editor in Chief, Nordic APIs
Connect with Nordic APIs:
Facebook | Twitter | Linkedin | Google+ | YouTube
Envisioning The Entire API Lifecycle
From conception to deprecation, a Software-as-a-service (SaaS) is prone to constant evolution. Check the changelog for a high-volume platform like Dropbox for proof. In such logs, youll find bug fixes and updates, with the latest likely made within the past couple weeks.
The APIs that open these SaaS platforms are changing just as rapidly. So much so that API Changelog was created to notify users of API documentation changes (22 updates in the last 30 days in the case of the Dropbox API at the time of this writing). This ongoing iterative process is not only agile - its evolution is in symbiosis with many business factors that make up the organism that is the entire API lifecycle.
As the main function of web APIs are to be consumed by third party products, the API is a unique type of business offering. Its peculiar condition as both a software and internal asset makes its lifecycle special highly fueled by ongoing feedback and market validation. Compared with standard SaaS products that may have the power to change their UI or underlying construct, an APIs granular state can make it even more elusive.
The State of Modern Software Development
AgileScrumcontemporary software development pushes toward quick releases and fluid responses. Response to change needs to be rapidly executed, leveraging user feedback, data, and statistics. These traits are becoming standard practice throughout the software realm. But is producing and maintaining an API the same or is it a different animal entirely?
The API As a Living, Breathing Organism
Exactly how an API lifecycle looks depends on how the API functions as well as the business strategy at its core. We at Nordic APIs have boiled down the common API lifecycle to four main phases: Analysis, Development, Operations, and Retirement. As seen mapped out above, these elements work together and influence each-other. Once the cycle begins, open and simultaneous exchange between each phase will help a practitioner stabilize the API against internal and external factors. New information that arises within each stage may beckon a team to move forward or backward in the lifecycle, encouraging small revisions or large pivoting to reach end project goals. In this introductory chapter we will introduce the main phases of the cycle, each to be covered in depth in the following chapters to come.
#1: Analysis Stage
This stage involves defining overall API business objectives. Firms should critically ask themselves whether or not an API is right for their particular situation. Some industries, such as social networks, thrive off APIs as a natural extension of their digital ecosystem. On the other hand, traditionally non-digital companies must be creative in handling how APIs extend their business model.
An API should either boost pre-existing operations or work toward overall company goals in some way. In our e-book Developing the API Mindset we defined 3 types of APIs:
- Private APIs streamline internal operations to decrease expenses.
- Partner APIs work specifically with partner organizations to expand a services reach to existing markets to generate revenue.
- Public APIs form new ecosystems by opening up a service to public access. If you intend to have a public release, obtain feedback while you perform analysis to gauge interest and determine access control.
Whatever the chosen API strategy is, its mission statement, usage projections, model for growth, marketing strategy, and estimated financial return should be clearly laid out before production begins. If youve done the necessary preparation, its time to move to the Development Stage.
#2: Development Stage
With business proof and goals laid out, the next step is defining technical requirements and opportunities that are in cooperation with the API strategy. Development plans need to consider the following:
- what operations the API will execute
- management and hosting
- the methods and protocols used
- size and scalability
- access and security control
- usability and experience
- the development team among other factors
An intimate understanding of API processes will help form technical requirements. For example, knowing whether your API will open your firms data, or act as a content distribution channel can impact overall design.
In general, the API development stage should mimic the business objectives set forth within the Analysis phase. A methodical development phase considers design, construction and testing of API processes as well as security. Design your API with both human usability and machine standards in mind. It is a good idea at this point to also implement and evaluate API versioning strategies that will set the API in a good position for future updates.