Design

API design

Improve your API experience

Paint developer portals with an aesthetic brush. Improve developer experience with usability, hypermedia, pagination, RESTful design, and more.

BLOG POSTS on API Design

Featured

REST vs GraphQL: How Constraints Determine API Style

Much has been said about REST and GraphQL. Unfortunately, these conversations almost always hover around the idea of one being better than the other — often than not, GraphQL is presented as the next step towards a RESTless world. Unfortunately, that is misleading, damaging, and misses the greater industry picture. Today, we’re going to do whatever you want to update

5 Ideas for Building Faster APIs

Back in 2006, Google discovered that an extra 500 milliseconds of latency could drop traffic by as much as 20%. That was twelve years ago; now web users expect faster responses than ever before, and as an API practitioner, it’s your duty to make that happen! Building ultra fast APIs isn’t easy, especially not when do whatever you want to update

The Three Principles of Excellent API Design

We all know that using a well-designed API is extremely rewarding, while using a poorly-designed API can be frustrating enough for us to give up altogether. However, when we ourselves strive to build the best-designed APIs possible, we tend to trip up right away, wondering: what makes an API’s design good or bad? For Arnaud Lauret, do whatever you want to update

Would An Experimental API Strategy Work For You?

API design is a complex topic — what works for some providers does not for others. It seems that with each year, new approaches are developed, and new thoughts on how APIs fit into the overall platform strategy emerge. We’re specifically seeing this occur in banking, as market trends force agile ways of bringing do whatever you want to update

Is REST Still a Relevant API Style?

What kind of API style should you be using? From SOAP, to REST, GraphQL, and new styles like gRPC, there are many competing standards for designing APIs and the way consumers interact with them. We’ve written about each before, but as the industry changes rapidly, there are always new concerns and opportunities for comparison. In do whatever you want to update

Tools to Make HATEOAS Compliance Easier

HATEOAS is, in essence, a value proposition and definition for what an API should do. HATEOAS, or Hypermedia as the Engine of Application State, is a specific constraint upon the REST architecture. For many, however, HATEOAS seems a nit-picky addition to the slew of API design best practices. Part of this comes from the fact do whatever you want to update

Best Practices for Building SDKs for APIs

While it’s extremely important to have quality API developer experience, it does not stop at great API design or at the documentation level. One of the most important elements of great developer experience is the SDK. For app developers, an SDK is often the point of entry to elements within the API. Every forked API, do whatever you want to update

Why You Should Be Designing APIs to Spec

There’s a good reason why building APIs can be extremely tough and time-consuming: they have to cater to both human and machine needs. Inherently, this is pretty difficult. Machines are picky and rely on pure logic; they crave rigid, hierarchical structures and definite instructions. On the other hand, humans prefer things to work on an do whatever you want to update

Serverless GraphQL Architecture With Graphcool

Today, new application development leans towards microservices and serverless approaches. With this paradigm shift, the weaknesses of traditional RESTful API approaches began to show. GraphQL was developed in response to the problems of a typical REST API, but requires a fair amount of configuration to get it running server-side. According to Nikolas Burk, full-stack developer, do whatever you want to update

Using Canary Release To Ease API Versioning

One of the greatest struggles an API provider can face is how to manage versions and builds from instance to instance. The constant need to iterate matched with the constant need to organize has made versioning a controversial and often discussed facet of modern API development. There are some alternatives to traditional versioning, however, that do whatever you want to update

The Benefits of Using JSON API

In the world of API craft, no area is hotly discussed than design. From REST, gRPC, to GraphQL, there are many approaches to designing and standardizing web API interactions. Today we turn our focus to another approach, JSON API, a specification for building APIs detailed at JSONAPI.org. JSON API, described at JSONAPI.org, is great do whatever you want to update

Introduction to API Versioning Best Practices

Change is inevitable and growth is a good thing. When your API has reached the point of expanding beyond it’s original intent and capacity, it’s time to consider the next version. Whether that next iteration is a whole number version bump or just a feature expansion, it’s important to consider the pros and cons of do whatever you want to update

4 APIs Doing Developer Experience Really Well

Developer experience is a vital component of API design. The best developer experience will result in a better, stronger, useful API, and by extension, a better, stronger, useful end user experience. While developer experience is very much a subjective thing that is highly dependent on the developer consumer, there are nonetheless some recurring do whatever you want to update

Top Insights From the 2017 Platform Summit

This week Nordic APIs hosted the Platform Summit, our largest conference to date. 400+ attendees and 60+ speakers arrived to a sold out event, jam-packed with the industry’s leading experts on web APIs. Our attendees represented 26 different countries, making this our most most global event ever. With tremendous growth slated for the API economy, we encouraged our do whatever you want to update

7 Helpful HTTP Tools

  An API provider is akin to a handyman. To fix a specific problem, a specific solution is needed, and a skilled handyman is the only one with the experience, the know-how, and the ability to fix these issues. The same is true in the API space. To continue the allegory, just like a handyman do whatever you want to update

How to Optimize the API Response Package

If there’s anything that has the most “bang for the buck” in the IT world, it’s optimization. Optimization, or the process of simplifying, offloading, or otherwise reducing the processing demand of an entity, can have significant benefits to almost any system, and when done properly, can take even the most monolithic system into the realm do whatever you want to update

The OpenAPI Specification Turns 3

Big news in the world of APIs! Today, the Open API Initiative (OAI) released its 3.0.0 version of the OpenAPI Specification. In case you missed our past coverage of this evolving specification, the OpenAPI Spec (OAS) has quickly become an industry standard method to describe web APIs. The OpenAPI Specification was transmuted from Swagger, and do whatever you want to update

Best Practices for A Healthy GraphQL Implementation

We’ve discussed GraphQL at length previously – and while the discussions on how GraphQL works are obviously very powerful, we’ve yet to dive into some of the best practices that should be adopted when developing a GraphQL-centric API. Today, we’re going to do exactly that. We’re going to discuss the best practices for healthy GraphQL do whatever you want to update

What’s New in OpenAPI 3.0

If you’ve been hiding under a rock for the past 18 months you may not know that the Swagger API specification, arguably the most popular specification format available to the API community, has been donated to the Linux Foundation to become the bedrock of the OpenAPI Specification. The OpenAPI Specification (OAS) is supported by various do whatever you want to update

The End of API Documentation As We Know It

On the one hand, having proper API documentation can be a sign of early success for an API provider, allowing new users to effectively understand the functionalities and caveats behind an API solution. On the other hand, extensive documentation could indicate an overly complex solution with far too many variables to navigate. Even in those do whatever you want to update

4 Design Tweaks to Improve API Operations

We’ve previously discussed best practices when it comes to designing an API with quality developer experience. But what will the long term operational repercussions be for the design moves we make now? For example, if URLs are designed without metadata to describe actions, later on, product owners will have a difficult time staring at unintelligible do whatever you want to update

Is GraphQL The End of REST Style APIs?

The world of APIs is one of innovation and constant iteration. The technologies that once drove the largest and best solutions across the web have been supplanted by new, innovative solutions. That is why it’s surprising, then, that many developers have clung to what they consider the bastions of web API development. Such a do whatever you want to update

How Could Artificial Intelligence Improve API Design?

Until relatively recently, artificial intelligence was firmly planted in the realm of science fiction. However, with the advent of powerful processors and groundbreaking research into deep learning, AI has inched ever closer to reality. The question now is, since we have this tech, how can we use it to improve existing systems? Are there do whatever you want to update

The Benefits of a Serverless API Backend

Imagine if your backend had no infrastructure. No permanent server, nowhere for your API to call home. Sounds a bit bleak, doesn’t it? As it turns out, serverless backends could be the next big thing for implementing truly scalable cloud architecture. How do you make an Application Programming Interface lightweight on the client side, yet do whatever you want to update

Standard API Definitions Demystified

As with any industry, the web API space faces different approaches to standardization. Not least of which are the differences between how API providers choose to define their APIs in a machine readable way with API specifications and description languages. API definitions have emerged as ways to annotate API functionalities, and there are still many do whatever you want to update

Designing a True REST State Machine

There are many misconceptions surrounding what exactly Representational State Transfer (REST) is. The prime of which is the concept of hypermedia, or defined in full context, Hypermedia as the engine of application state (HATEOAS). Jargon aside, hypermedia is actually a valuable idea that many self-touted “RESTful” web APIs do not adhere to. Hypermedia places heightened operational do whatever you want to update

9 Common Errors Made During API Testing

9 Common Errors Made During API Testing

API testing is an important facet of the API development process. Such testing can help disclose important security flaws, data processing errors, and even breaks in basic functionality. With all that said, it’s an unfortunate fact that many API testing processes are fundamentally flawed, and because of this, issues are often kept around and extended do whatever you want to update

Ultimate Guide to 30+ API Documentation Solutions

Say you have developed a web API and now want to show it to the world. Next comes documentation, and guess what — there’s a tool for that. But, in a sea of API documentation generation tools, which one is suitable to your specific environment? This comprehensive list of API documentation solutions has been curated specifically for web do whatever you want to update

3 Methods to Documenting JSON APIs

3 Methods for Documenting JSON API Services

JSON is a very powerful, open standard format that is used by many services and APIs across the internet. Unfortunately, while open standard carries a lot of good, it also creates some pitfalls that developers may not be prepared to handle. One of these pitfalls is that, in combination with being wiy used, the open do whatever you want to update

The Easiest Way to Generate API Documentation

The Easiest Ways to Generate API Documentation

Whether you’re a startup developing your first API or an established player in the API economy, the truth is becoming steadily apparent; providing quality API documentation is vital to the success of an API initiative. API documentation is an important part of the product offering, ivering affordances to the developer community to help them do whatever you want to update

How to Wrap a REST API in GraphQL

How to Wrap a REST API in GraphQL

GraphQL is a powerful tool that we’ve discussed previously at Nordic APIs. As with any emergent tool in the API space, however, there’s some disagreement on exactly how to implement it, and what the best practices for its implementation and use case scenarios are. Have no fear, dear reader — we’re here to sort this do whatever you want to update

Asynchronous APIs in Choreographed Microservices

When building microservices you have to first make a decision: How am I going to manage service-to-service communication? Most developers will answer immediately: API calls. But then, questions come to mind: Am I going to call services directly? Doesn’t it block the caller service? Doesn’t it introduce a dependency between both services? What if do whatever you want to update

5 Potential Benefits of Integrating GraphQL

GraphQL is incredibly powerful — so powerful, in fact, that it is used by corporations such as to drive their large, complex social systems for billions of users. Despite this, the language is still relatively nascent, and its usage has yet to reach the dizzying heights that those languages it replaces and augments occupy. do whatever you want to update

Your API is never fully released

Your API is Never Fully Released

The modern development landscape has changed from when APIs were first being developed. Gone are the days where developers could “develop and forget”, releasing APIs, systems, or applications to the public for consumption and use. Today, there isn’t really such a thing as a release in the common parlance of yesteryear. When a developer releases do whatever you want to update

API design

7 Important API Design Lessons

Now that the Nordic APIs World Tour is finished, let’s circle back to sum up what we learned. During our tour, expert API practitioners d their insights with attendees at 4 cities, touching on API development, security, design, operations, and during intimate conference settings. A recurring theme in many talks was API Design. So, do whatever you want to update

Top Specification Formats for REST APIs

Documentation will set you free. Whether your API is for internal, private use, or for extensive public interaction, proper documentation can make or break an API. It’s not just a tool for developers, either — proper API documentation can drive API adoption than any other tool within the API provider’s grasp. In this piece, do whatever you want to update

How Far Should API Definition Languages Go?

The most common API definition languages we spot in the wild are Swagger / OpenAPI Spec, RAML and API Blue. All three let you define your endpoints, your resources, your query or path parameters, your headers, status codes, security schemes, and . In a nutshell, these definition languages define the structure of your API, and do whatever you want to update

Why API Developer Experience Matters More Than Ever

Whether or not you focus on DX design, your developers are always experiencing your API, and that experience may either be positive or negative. Ronnie Mitra is the director of API design at the API Academy, which has a singular focus on API design and implementation best practices. Mitra is an advocate that an API must be designed with its reader in mind.

Beautiful UI Design for API Developer Portals

When we think of Application Programming Interfaces — APIs — we may not immediately pair them with User Interface design. Implemented as a background tool, APIs are largely in the hands of developers, and technical documentation has a natural reputation of being elusive for laymen. However, this mindset is not sustainable. User Interface (UI) is do whatever you want to update

api-manifesto-design-testing-principles-ensure-apis-work-as-intended

API Design & Testing State of the Art

Ensuring proper APIs functionality raises all the following questions: How do you decide which endpoints you’re going to expose with your API? How do you create all the documentation that developers will use to interact with your API? What is the best way to verify that your API is working as specified by the documentation, do whatever you want to update

Content Negotiation For Web API Longevity

Every so often, a new image file format comes along that does a better job of compressing images than JPEG or PNG. We’ve seen Google pushing its own Webp format, (purportedly 26% smaller in size compared to PNGs), and new formats BPG and FLIF are contenders, packaging images in less and less space and time do whatever you want to update

Sweet API — Syntactic Sugar and You

The internet is bar none the most effective and amazing tool for connecting people. What it’s historically not, however, is an effective and amazing tool for connecting people with systems. While networks form and information is d, the underlying systems have historically been hidden underneath complex code and abstraction. Enter syntactic sugar, a syntax that do whatever you want to update

More posts on API Design

Sessions on API Design

Featured

HTML Hypermedia APIs and Adaptive Web Design
Gustaf Nilsson Kotte - Jayway - March 2013

The many different types of connected devices are increasing dramatically. We already have a large amount of duplicate code between client applications (both native and web), and the increasing number of devices is only making this worse. Also, cheap low-end devices are gaining greater market shares, and users expect a good experience when using our software on them. To solve the problem of code duplication on the clients, we need to pull as much of it as we can back from the clients to the server. A good way to achieve this is to build a Hypermedia API and to use HTML as the media type for the API. 

Microservices Anti-Patterns
Tammer Saleh - Pivotal Software - 21/20/2014

It seems everyone’s talking about microservices, lately, but few appear to have given any real thought to best practices around building and deploying them. In this talk, we’ll highlight many of the mistakes we’ve seen people make when building a microservices architecture

Token-Based Architecture Design
R. Kevin Nelson - 21/10/2014

In the course of designing and using web APIs, you’re bound to encounter tokens. They are everywhere: access tokens for OAuth, CSRF tokens for security, reset tokens for passwords. Because of their ubiquity, they’re easy to overlook, but token design actually plays a huge role in shaping your application architecture. This presentation surveys API architectural archetypes through the lens of tokens, and how they can facilitate (or inhibit) your platform’s scalability.

Developers are People Too! Building a DX based API Strategy
Ronnie Mitra - Layer 7 Technologies - September 2013

When it comes to user experience in consuming APIs, Ronnie Mitra is the one to talk to. Listen to his session to understand what it takes to implement consistent usability standards throughout your API's onboarding process and ongoing usage.

More sessions on API Design

Ebooks on API Design

API Design on the Scale of Decades

Expert Insights from the 2016 Nordic APIs Platform Summit, dedicated to the theme of architecting and designing APIs on the scale of decades.

Winter 2015 Blog Post Collection

We consolidated our 11 favorite blog posts from the winter season into an easy to view eBo, spreading insights founded on hundreds of business representatives that we met with during our 2014 seminars. API architects are realizing that APIs need to be conceived with their target consumer in mind, whether human or machine. This effected do whatever you want to update