Creating adaptive interaction APIs
No one can argue against the success of the internet. Websites and the network protocol of the internet (HTTP) has been fantastically successful. Yet there is still a significant amount of research and education required to be able to offer interaction APIs at the scale of web pages.
What is an interaction API? If we boil it down, it is one that shares just the data and the allowed actions. We are very used to this concept of allowed action on a webpage, but often seem to miss the requirement completely when the consumer is not a web browser.
Since 2013, we have been working on a language to define resources and the allowed interactions between those resources. This language is not an API definition format, we have swagger, wadl, and many other formats for that already. This is a language to allow us to spend more time thinking about when the links / actions should be available and less time learning / thinking about how to implement REST.
We communicate these allowed actions as links within a RESTful architecture and allow user-agents / clients to ask for the data in their preferred format with content negotiation headers (Accept / Content-Type). These API details and many others can be subtle, but make a huge difference to the loose coupling and ease of use for your API.
The following videos walk through many of the fundamentals of API design and the language we've defined for describing the resource interactions. We are using the tooling available from Temenos for building these APIs, but the language and the hypermedia server implementation are available as open source.
Video 1 - Creating the service
& Media Types
(https://www.youtube.com/watch?v=eTmftTEpzSQ)
The series of videos explores the process of creating an API with the Temenos Interaction Framework Design Studio tooling. This first episode focuses on the basic service creation, the available media types (response formats) and the API browsers available out of the box.
The series of videos explores the process of creating an API with the Temenos Interaction Framework Design Studio tooling. This first episode focuses on the basic service creation, the available media types (response formats) and the API browsers available out of the box.
Video 2 - API Design
The series of
videos explores the process of creating an API with the Temenos Interaction
Framework Design Studio tooling. This second episode focuses on the API Design
for data services, browsable API docs and interaction services.
Video 3 - API Management
The series of
videos explores the process of creating an API with the Temenos Interaction
Framework Design Studio tooling. This third episode focuses on the API
Management for publication to internal or external developers through API
management products such as the Azure API Manager.
Video 4 – API Errors, Tests and
Orchestration
The series of
videos explores the process of creating an API with the Temenos Interaction
Framework Design Studio tooling. This fourth episode focuses on the API status
codes, errors, integration tests, and API Orchestration for validation and a
high level of automation.
Video 5 – API Flow control and
screen control
The series of videos
explores the process of creating an API with the Temenos Interaction Framework
Design Studio tooling. This fifth episode focuses on the APIs ability to
control the flow and state of the client and the control of the screen.