Les démarches de conception de type “API First” consistent à mettre les interfaces applicatives au coeur de la stratégie IT en découplant les adhérences client-serveur.
C’est un exercice relativement inédit au sein des DSI, en ce sens que les architectures – même celles qui sont distribuées – ont toujours été conçues en connaissant le fonctionnement des deux machines qui vont dialoguer entre elles via une API.
Avec les démarches API First, et surtout avec les API web publiques, il faut à présent concevoir des APIs sans connaître à l’avance les usages qui en seront faits : cela a des impacts importants tant sur la conception des APIs que sur les modèles d’affaire qu’elles vont porter mais aussi sur la manière dont vous allez les manager : comment et avec quelles solutions ?
26. 26
Une méthode de conception en 7 étapes
ÉTAPE 1 Faire la liste des descripteurs sémantiques
ÉTAPE 2 Faire un diagramme d’état
ÉTAPE 3 Réconcilier les noms
ÉTAPE 4 Choisir un MediaType
ÉTAPE 5 Écrire un profil
ÉTAPE 6 Implémenter
ÉTAPE 7 Publier
30. 30
Réconcilier les noms
Le diagramme d’état avec « flip » a été
remplacé par le « edit » de IANA
(Internet Assigned Numbers Autority)
31. 31
Si votre diagramme d’état ressemble à
C’EST UN PATTERN DE COLLECTION
Choix d’un MediaType
Collection + JSON
AtomPub
OData
C’EST UN PATTERN DE GRAPHE GÉNÉRIQUE
HTML
HAL
SIREN
36. 36
Selon le Gartner
API Management
Community Management
Runtime Management
Lifecycle Governance
SOAGovernance
SOA Governance + API Management
=
Application Services Management
42. 42
API
Proxy &
Gateway
Management technique de la plateforme
(System Monitoring, Clustering, Scalability,
Migration)
Transcodage et enrichissement des
messages (SOAP to REST mediation, data
format transformation, legacy application
integration)
Optimisation des flux pour mobiles
(Pagination, Compression, JSON etc)
43. 43
API
Management
Sécurisation des APIs (SSL, PKI, threat
protection, schema validation, encryption,
signatures, etc)
Gestion des Identités (AuthN & AuthZ, API
key, OAuth, SAML, LDAP, proprietary IAM,
multifactor, token translation & management)
Gestion des volumétrie de trafic ( Rate
limitation, Caching, etc)
Relevés de consommation des APIs et
Facturation
Gestion du cycle de vie des APIs
44. 44
Portail
développeur
(API Store)
Découverte des APIs (Catalog, Search and
Provisioning) & API I/O documentation )
Portail self-service pour les Développeurs
(Client ID/App Key generation, Interactive
API console)
Community Management (Blogs, Forums,
Social features etc)
Analytics & Traffic Monitoring
48. 48
OPEN API ET OPEN DATA
MANAGER LES API
ONE MORE THING
CONCEVOIR DES API
49. 49
Gargl: Create an API for any website, in any programming language,
without writing a line code.
Si vous ne faites pas vos APIs d’autres le feront pour vous
Photo sous licence CC Zigazou