View the archive of API Design Matters articles here.
Today’s software landscape demands software systems that can talk to each other. Interoperability and open access to data and services is key to (sometimes phenomenal) success. Application Programming Interfaces-APIs-are at the heart of this revolution, from enabling all the apps on your phone to reinventing companies and entire industries. Forbes explained Why The API Economy Is The Web’s Next Phase and Nordic APIs described the role of Open APIs across six diverse industry and government sectors. But it’s clear APIs are not just the “next wave”-they have been the wave for years. The most successful technology companies rely on APIs. Knowing how to design build APIs can reboot your career.
Published: February 8, 2023
To kick off The Language of API Design series, we will take a brief but important diversion from the OpenAPI Specification and it’s unique but powerful language of API design. Our detour will focus on a different sort of language: the ubiquitous language of Domain-Driven Design.
Published: February 15, 2023
In my last article, API Design First is not API Design First, I presented a vastly over-simplified introduction of a domain modeling process and its desired outcomes. Our goal is to build a shared understanding of the problem for our team, focusing on the domain’s ubiquitous language. In this next foray into the prerequisite for good API design process, we’re going to get down and dirty and apply some of this to our fictional software start up scenario to build a working domain model.
Published: February 21, 2023
I present here a possible Domain Model for the Chain Links application that accompanies The Language of API Design series in API Design Matters. Below are several key elements of a Domain Model, with a brief description of each,
Published: March 7, 2023
We’ve built quite a bit of knowledge of the Chain Links API now: you know what the API needs to do, and what the resources are, and some of the constraints and bounds for the resources and behaviors. You can view my more complete Chain Links Domain Model below—this will be the foundation for the Chain Links API design.
Published: March 9, 2023
In the last article of The Language of API Design series, you saw how to express a few HTTP API operations to list resources in the Chain Links domain model, focusing on the design for calling the getChainLinks operation. (If you are just jumping into API Design Matters, I recommend going back and skimming the previous articles in the The Language of API Design series to get caught up.)
Published: March 16, 2023
A collection of memes that matter to API Design
Published: March 25, 2023
Learn how RESTful APIs can respond to run-time problems
Published: March 26, 2023
Techniques for keeping your OpenAPI definitions DRY
Published: April 9, 2023
Today, we take a short diversion from our normal journey through The Language of API Design—though we’re not deviating very far off our path.
Published: April 18, 2023
On the road to becoming fluent with JSON Schema
Published: May 18, 2023
Use JSON Schema effectively to build real API request and response bodies
Published: June 5, 2023
Join the discussion