General considerations on API design
Introduction to service interfaces
A service therefore consists of an activity, or a series of activities, of a more or less intangible nature, which take place in an exchange between a supplier and a customer, in which the object of the transaction is an intangible asset. |
Paradigms of cooperation
Data sharing, Inter public administration notification, inter public administration composition |
SOAP |
REST |
Message broker |
Comparative considerations (REST vs SOAP vs Message broket) |
Other approches (Distributed data stores, open data) |
Paradigms for the design of service interfaces (RPC-like vs resource oriented) |
Perimeter of service interfaces
So each application server offers service interfaces, however it is still significant to distinguish whether the service interface is offered to interoperate within the domain..., towards other administrations or other subjects with whom a relationship of trust is established ... or externally.... |
Technical recommendations for REST |
Technical recommendations for SOAP |
The european context
The European Interoperability Framework (EIF) provides guidance to European public administrations on how to operate initiatives related to the issue of interoperability; |
General Principles
We choose to adopt three general principles. Here’s a shortcut to remember: RESTful, Hypermedia, Fine-grained |
API and domain modelling |
External-facing APIs |
Mobile-friendly APIs |
Public-friendly APIs |
Resource Oriented Design
This Design Guide explains how to apply REST principles to API designs independent of programming language, operating system, or network protocol. It is NOT a guide solely to creating REST APIs. |
What is a REST API? |
Design flow
The Design Guide suggests taking the following steps when designing resource- oriented APIs |
Design Patterns |