Successful API programs balance tooling and platform capabilities with people power, like creativity and problem solving, to efficiently shape the design of the API while maintaining order and consistency.
With the right platform in place, developers can focus their creativity and be more productive without wasting time and keystrokes on design elements that are out of spec. Likewise, when API program managers review the progress, they can shift their focus from minor syntax inconsistencies to looking at the big picture.
With a balance of technology and people power in place, organizations are ready to pursue excellence in API design. There’s only one prerequisite, but it’s a big one: to be successful, the approach should be design-first.
When an organization takes a design-first approach, API teams describe the design so that it can be understood by both people and computers before they begin writing any code. Design-first approaches ensure that every design team uses the same terminology and follows the same overall API design scheme, leading to more consistency, predictability, and scalability.
Without that level of intense coordination and consistency, API programs can struggle. Stoplight advocates for design-first approaches because our experience in helping hundreds of companies launch API programs has proven that implementing a world-class API program has shown success at some of the top API organizations in the world.
Once your company has established a strong, design-first foundation, taking the next three steps will move you closer to excellence in API design:
Identify your API specification
The first step is to select the API specification you will be using, which is basically choosing the API language your teams will be working in. The goal is to align all your API teams with a common language to eliminate any confusion around terminology and build synergies around the shared specification. There are several options that fall into two categories: OpenAPI (open-source) and proprietary (not open-source).
Stoplight defines the OpenAPI Specification as “a standard format to define structure and syntax REST APIs. OpenAPI documents are both machine and human-readable, which enables anyone to easily determine how each API works.”
We recommend OpenAPI because it is a stable, well-defined specification that enables engineers and developers to streamline their work while allowing for increased collaboration across multiple API teams. OpenAPI is also open-source software, so companies that design APIs using it will truly own the IP generated — which is not necessarily the case for proprietary specifications.
Within the realm of OpenAPI, the two most prominent languages are REST and Simple Object Access Protocol (SOAP). Each approach has several impressive champions, including Amazon, Google, and eBay for REST and Oracle, PayPal, and Sun for SOAP. While REST and SOAP are similar, they excel at handling different levels of complexity in coding and data.
In general, we utilize REST here at Stoplight and we believe it is best for most applications and use cases due to its lighter architecture and faster performance, while SOAP is a more strict and standardized protocol that may be best for larger organizations that already have software and tools that support it (C+ and Java have SOAP libraries, for example).
Select a tool to create your API design
The next step is to choose the right tool to help your organization efficiently create your API design. There are many options, and one great way to sort through them is based on simplicity from the user’s perspective. You want to make it easy on your design team, and the best way to do that is to choose a tool that doesn’t require them to be an API expert to get started. With the right tool, they should be able to create a solid API design without knowing much about coding.
Stoplight Studio is a great choice because it allows even novice API developers to start creating APIs using the OpenAPI Specification within a matter of minutes. The user interface features a guided form editor and intuitive dropdown menus, so new users can create and model complex APIs without writing a single line of code.
There are a few other excellent API design tools on the market and also plenty in the open-source space. This article lists other top tools to consider when building our your API design workflow.
Ultimately, the tool you select should be easy to use and capable of leveraging your team’s ability to generate the business outcomes you need.
Collaborate to review the specification
There’s no better example of the synergy created by people power and platform power than Step 3: Collaboration and Review.
The human-driven aspect of this step is both collaborative and introspective. The best practice is to share the API design with your API team, and then make sure they approach the review from a critical perspective. Ideally, the API team will consider the design with questions such as these in mind:
- Will the design suit the APIs we’re trying to create?
- Are we making the right choices for our end-users?
- Does the design conform to the design specification?
It’s important that your API team doesn’t solely rely on people power, so the API platform you use should also play an important role in this step. The platform or tool should check your design against the established specifications and also automate checks against all other API designs to identify errors and inconsistencies. Stoplight Studio makes it easy on developers and reviewers.
Design Excellence Is Closer than You Think
With the right combination of people power and platform power, your new API program will grow and flourish — and the process will be so much easier if you take a design-first approach and follow the steps outlined above. And there’s no reason to fret if your established API program isn’t delivering.
Many API programs out there are, rife with inefficiencies and inconsistencies and falling short of the expected business outcomes. If your program currently falls into this category, better days can be right around the corner. By taking a step back and implementing the steps above, you can start to right the ship and quickly realize improvements.
If you’re just getting started building your API program, or need help righting the ship, feel free to reach out to us or tweet us @stoplightio. We've helped hundreds of companies stand up world-class API programs, and we can help your company, too.