API360 Around the World

Get a holistic overview of API strategy, architecture, design and implementation best practices Every day, I’m reading more and more stories about how APIs are being used to disrupt industriesand change the way business is done around the globe. This certainly matches my experience of dealing directly with companies on a daily basis. But, as the API becomes ubiquitous, many of these…

API Design 203: The USE Paradigm

Prioritize usability, scalability and evolvability in API design To work effectively, a Web API must display a range of specific software qualities. In this lesson, we outline what we call the “USE Paradigm” – a principle of API design, which states that interface designers should prioritize three particularly important software qualities: usability, scalability and evolvability….

TechTalk: Common OAuth Security Mistakes and Threat Mitigations

With vulnerabilities recently surfacing in the OAuth implementations of popular service providers like Yammer, Instagram and Facebook, it’s hard to blame anyone for getting the impression that there are fundamental security flaws in the OAuth protocol. Francois Lascelles, Chief Architect at Layer7, answered OAuth questions live, discussed the common security mistakes made in OAuth implementations…

API Design 303: Pagination

Minimize response times for requests and improve the app-user experience Pagination is a ubiquitous method for handling large datasets and responses in the browser-based Web but developers of API-based apps also turn to pagination in order to minimize response times for requests and generally improve the end-user experience. In this lesson, we will explore some…

API Design 202: Architectural Layers

No matter what API design style you choose, there are certain key qualities you will want your interface to have. Designing API architecture able to encompass all these qualities can be challenging. In this lesson, we outline a layered architectural style that simplifies the process of implementing a full-functioned Web API design. For a Web…

API Design 101: API Design Basics

The term “API design” or “API architecture” refers to the process of developing a software interface that exposes backend data and application functionality for use in new applications. In this lesson, we provide an overview of the API architecture process, as a starting point for a deeper exploration of design and implementation best practices in…

API Design 201: Web API Architectural Styles

Generally speaking, the term “Web API” describes any software interface that is exposed over the Web using the HTTP protocol in order to facilitate application development (but not limited to any particular message format, pattern or implementation). In this lesson, we provide a detailed overview of the main Web API design styles: Tunneling (aka Web Service);…

Client-Optimized Resource Representations in APIs

Create tiered representations of responses to optimize your API for mobile clients One of the most important design principles for an API program is to embrace that APIs are products. It follows that successful APIs, much like products, must provide user-optimized experiences. Case in point: it is clearly inappropriate to send large response payloads to a…