This is the second post in a two‑part series about API Connectivity Manager:
- 5 Ways to Fight API Sprawl (And Why You Should Care)
- Why the API Developer Experience Matters – this post
APIs are at the center of modern business. While APIs have always played an important role in software development, the growing demand for data integration is leading to the wider adoption of APIs across every line of business. But APIs do more than just connect data and applications – they’re critical for collaborating with external business partners, delivering services to customers, and generating revenue as products in their own right.
Developers play a critical role at the center of the API economy. Responsible for building, integrating, and maintaining APIs, they’re both the creators and technical adopters of APIs. Their experience, commonly called API developer experience, is one of the most important factors in determining the overall success of an API. This post explores the key concepts of API developer experience and what IT leaders need to consider when planning the API experience.
- What is the API developer experience?
- Why is the API developer experience important?
- How do you build great API developer experiences?
What Is the API Developer Experience?
API developer experience describes the overall perceptions and emotions a developer has while interacting with an API. It encompasses the infrastructure, tools, processes, support, and other touchpoints that contribute to an enjoyable and frictionless experience for developers integrating APIs into their applications. API developer experience is a sub‑practice of the overall developer experience.
Why Is the API Developer Experience Important?
If a relentless focus on user experience drove the first generation of technology innovation, then the next generation of successful companies will win with a focus on the developer experience.
As the API economy continues to expand, developers are gaining greater influence over which APIs are adopted. When an API is difficult to discover, lacks adequate documentation, or is poorly maintained, developers will drop it in favor of a simpler, faster alternative. This applies equally to internal API programs as well as external APIs for partners and customers.
In the case of external APIs, there are tangible business consequences when developers abandon your API. You are not only losing revenue from direct customers – you are losing access to the broader ecosystem of products and solutions used by your customers. Even internal API programs face consequences from a poor developer experience, including slower time to market, reduced developer productivity, and increased rework, which potentially jeopardize the success of your business.
To win in the developer‑centric world, you need an API strategy that provides the right tools and resources for developers working at every stage of the API lifecycle. The best way to do this is by creating a thoughtful, end-to-end API experience for developers that encompasses three types of API usage:
- Deploying and managing APIs
- Discovering and testing APIs
- Monitoring and securing APIs
How Do You Build Great API Developer Experiences?
Creating a positive experience is about understanding how developers use your API, what they need to complete their tasks, and ultimately how they feel while using your API. Once you have defined the personas who will interact with your APIs, you can start planning the overall API experience.
There are four principles to consider when designing the API developer experience:
- Identify users – Who is interacting with the API?
- Define functionality – What does the API do?
- Optimize usability – How easy is the API to use?
- Enhance experience – How does it feel to use the API?
Let’s look at each principle and what you need to provide to create an optimal API experience for developers.
Step 1: Identify Users
Just as you design products for specific customer problems, you need to design the API experience across your infrastructure and products to address developer concerns. Developers are more than the end consumer – they are also the builders and maintainers of the overall infrastructure.
There are three primary personas to consider when designing an API developer experience:
- API consumers – Discover, implement, and maintain API integrations for their applications
- API owners – Plan, build, document, test, deploy, and manage APIs for their services
- Infrastructure managers – Set global policies and monitor APIs for security and compliance
You may have additional users and stakeholders to consider. For example, the category of API consumers might include subcategories of internal developers, partners, and customers, each with different personas and requirements.
Step 2: Define Functionality
Function is the foundation of successful APIs. A good API enables developers to integrate with valuable data or services, complete tasks faster, and reduce the overall time spent developing new features. Key considerations include:
- What value does the API deliver by integrating with data or services?
- How well does the API solve the problem by reducing calls and structuring the data?
- How dependable is the API in terms of availability, reliability, and scalability?
The functionality of an API is closely intertwined with the API‑first approach to development. In contrast to “code first”, with “API first” the API specification is written before code development begins, with emphasis on the structure of API requests and the data returned. This emphasis ensures that the API consistently delivers the value and functionality developers need.
Step 3: Optimize Usability
The third principle, usability, addresses how developers use your APIs, rather than what they can do with them. It covers the resources around your API that support discovery, learning, testing, and onboarding. Without a supportive ecosystem of infrastructure, tools, and documentation, developers will have trouble using your APIs. Important considerations include:
- Simple sign‑up with integrated single sign‑on (SSO) and easy management of API keys
- Clear and thorough documentation with up-to-date references and code examples
- Fast setup time with creation of a basic API request ideally taking less than five minutes
In Postman’s 2022 State of the API Report, survey respondents said the primary obstacles to consuming APIs are:
- Lack of documentation (55%)
- Trouble discovering APIs (38%)
- Lack of fundamental API knowledge (30%)
You can overcome these issues by leveraging central developer portals with thorough documentation, code examples, and tools for trying out APIs.
Step 4: Enhance Experience
The API developer experience is the sum of the interactions between the API consumer and the API owner. The foundation is built on the functionality and usability of the API, but there are additional interactions that contribute to the overall pleasure of working with an API. These can include:
- Active community available on channels like Stack Overflow, Slack, Discord, Twitter, etc.
- Accessible support with timely responses from the development teams
- Frictionless experience when interacting with the API, documentation, and community
Developers who enjoy working with your APIs are more likely to recommend them to their colleagues, build new capabilities around them, and integrate them into their apps.
The API Developer Experience Matters
The key to great API developer experience includes your API as well as the ecosystem of tools, processes, documentation, and support around it. When all the pieces of your API ecosystem operate seamlessly, they reduce friction and complexity so developers can focus on building applications.
The steps discussed above are part of a continuous process of designing, implementing, testing, and evaluating the API developer experience. If you focus on each of the main steps – identifying users, defining functionality, optimizing usability, and enhancing the experience – you can build APIs that are enjoyable, and even fun, to use.
How Does NGINX Improve the API Developer Experience?
API Connectivity Manager, part of F5 NGINX Management Suite, was designed with the API developer experience at its core. With API Connectivity Manager, infrastructure teams can deploy high‑performance API gateways and developer portals. And developers can rapidly publish and manage APIs and documentation or discover and onboard APIs into applications.
Benefits of API Connectivity Manager include:
- Fast onboarding – Integrate with your favorite identity provider to streamline authorization and authentication on the developer portal
- Simple documentation – Use the OpenAPI Specification to automatically generate documentation for the developer portal when API owners publish APIs to the API gateway
- Interactive learning – Enable developers to discover, test, and learn your APIs with an integrated API explorer on the developer portal
- Workflow automation – Integrate API publishing and management into your CI/CD pipelines using a fully declarative REST API