What-Is-API-Developer-Experience

What Is API Developer Experience?

Posted in

API developer experience (DX) refers to the experience a developer has using an application programming interface (API). In this context, DX encompasses all a developer’s actions using an API, from the initial onboarding phase to integrating and testing calls and maintaining the integration for the long term.

Like user experience (UX) design, the goal of DX design is to streamline the user’s process and reduce friction within the user journey. However, unlike traditional user interfaces, API developer experience is unique because developers engage with many touchpoints to learn and use APIs, including visual and code-centric means.

A quality developer experience was once considered a competitive advantage in the tech industry. Now, it is an expectation. As such, improving an API’s developer experience can enhance user engagement, increase signups, and lead to a better overall API product. Below, we’ll explore API developer experience and how to optimize it.

What Makes A Quality API Developer Experience?

Many factors work in tandem to make an excellent developer experience for APIs. First off, great APIs have great documentation! You don’t want to send your developers a PDF over email — instead, a developer portal should be well-documented and easy to get going with. For examples of quality REST API documentation, check out the docs from industry leaders like Stripe, Twilio, GitHub, Shutterstock, and others. Although it’s not a requirement, a growing expectation is to share a public OpenAPI Specification, too.

Next is self-service capabilities. Most developers want to see how it works in action. Therefore, APIs with an easy onboarding process that help you rapidly get to ‘Hello World’ offer a better experience. Unless you’re locking access down for select partners, gatekeeping API key generation behind a ‘Contact us’ button is a surefire way to keep potential users at bay. Instead, APIs should be as self-service as possible with a getting started guide, a playground to test calls, sample code, and so on.

No one likes changes that break integrations. Especially if these changes happen unexpectedly without forewarning. Therefore, a solid API developer experience is stable and responds as expected. Production performance matches what’s documented, and when versioning occurs or features are added, these changes are communicated and logged in a changelog. If possible, a good API design and change management posture retains backward compatibility.

These tidbits only scratch the surface of what it means to craft great developer experiences for APIs. Helpful error messages with actionable advice can improve usability as they help debugging. The design of the API itself is also a determining factor in the developer experience. (Are paths, methods, and parameters clearly named and use consistent styling?) Lastly, developers are unique snowflakes, each with their own coding habits and preferred languages. A quality developer experience typically understands this and offers code generation for various languages or software developer kits (SDKs).

Common Hangups Around API Developer Experience

A great developer experience can tremendously enhance API usability when things go well. But what are some developer experience anti-patterns? There are several common hangups around integrating with APIs that negatively affect developer experience.

The first and most apparent detractor from developer experience is missing documentation. The 2023 State of the API Report found a lack of documentation to be the top obstacle to consuming APIs. If documentation isn’t visible or missing elements, it’s an instant blocker for developer onboarding. Programmers shouldn’t have to reverse-engineer or make guesses about how to construct queries.

Next is discoverability. Simply finding APIs isn’t as easy as it sounds, and this challenge ranks as the second-highest obstacle in the report mentioned above. Often, APIs and their references are scattered throughout an organization without a consolidated portal. Even public API products aren’t always organized in a way that aids the consumption experience. As such, investing in better organization and inventory management will help more consumers get started. A streamlined API catalog with metadata could also benefit AI consumption, arming models with more context to aid their training.

Other top barriers to API usability include a lack of time and knowledge. Scouring through intricate references can take time, let alone knowledge, to know what you’re looking at. As such, tracking and key optimizing metrics like ‘Time to First Call,’ churn rate, error rates, and other indicators can help understand what is troubling an API’s user base. Another option is to create pathways and sample code for specific user types to ease the implementation of common workflows.

On the whole, working with APIs is complex, and many other factors can inhibit a developer’s experience. For instance, naming inconsistencies, opaque error responses, specification drift, sudden breaking changes, long response times, challenges around authentication, and more can all cause frustration. As such, it’s a good idea to continually audit the experience developers have to see what needs improving.

Why Developer Experience Matters

A focus on developer experience is important to improve developer agility, productivity, and overall satisfaction. For SaaS products, a better DX can boost SaaS sales since developers are often decision-makers when it comes to purchasing new tech, and first impressions matter.

But the benefits extend beyond just selling to external devs — it’s important to note that developer experience matters, regardless of whether your API is an external product or an internal-facing service. Quality developer experience has the added effect of reducing cost since cycle times are shorter, there’s less overhead, and there’s less re-engineering. “Removing friction in the developer workflow can help launch projects faster, “creating longer revenue-generating timelines and opportunities,” he said,” says Isaac Nassimi, SVP of product, Nylas on DevOps.com.

In the wake of generative AI, engineering leadership is doubling down on developer experience for a number of reasons. For where APIs are concerned, developer experience is one of the critical components that determine the usability and overall success of an API strategy. So, next time you’re designing APIs, put yourself in the developer’s shoes!