SlideShare une entreprise Scribd logo
2013.11.08 DevFest @ Nantes
INVESTIR SUR SON API WEB
POURQUOI ET COMMENT ?

La plate-forme tout-en-un
pour APIs Web
http://apispark.com

Silver Sponsor
En collaboration avec l’équipe Restlet
8 novembre 2013
BIO
Stève SFARTZ
 VP of Engineering @ Restlet
 En charge de la R&D et des Opérations
 Architectures Web et Mobiles, distribuées,
scalables et interopérables

Me contacter
 ssfartz@restlet.com
 Twitter : @SteveSfartz
 Think big mais pas trop !
AGENDA






Pourquoi une API Web ?
Construire son API Web : les approches
Approche DIY avec Restlet Framework
Approche PaaS avec APISpark
En pratique
CodeLab de 16h20 à 18h20
POURQUOI UNE API WEB ?
LE WEB AUJOURD’HUI
MOBILE + CROSS-MACHINE
Utilisateurs d’Internet : 2,3 milliards
Objets connectés : 10 milliards
Besoin d’échange d’informations

Ordinateur

TV connectée

Smartphone
API

Nouvelle génération de sites web
accessibles par tous moyens
 Web APIs

API

Tablette

Partenaires

Applis sociales
L’API WEB
ÇA PERMET D’EXPOSER
Backend Mobile
(connectées, natives ou HTML 5)
Backend SaaS
(HTML 5/AJAX, API développeur/partenaire)
Backend Open Data
(multi-formats, API développeur, big data)
Backend Internet des Objets
(M2M, RFID, géolocalisation)
7
L’API WEB
ÇA SE CONSOMME
Enrichir un site web
(mashups, flux blog/tweets, Google Maps)
Import/Export SaaS
(libérer ses données, changer de fournisseur)
Intégration SaaS
(notifier / web hooks, automatiser / workflow)
APIs composites
(combiner plusieurs APIs en une autre, SIRI)
8
EMERGENCE DES APIS WEB

E-Commerce

Social web

Cloud Computing

Pionniers des APIs

Milliardaires des APIs

APIs as a Product

Mapping

Mobile Apps

Open Data

APIs pour mieux voir

APIs pour rester connectés

APIs pour partager
NOMBRE D’APIS PUBLIQUES
EN PLEINE CROISSANCE !

Plus de 10 000 APIs
publiques !

Source: ProgrammableWeb

1 million d’APIs en 2017 !
LE PLUS IMPRESSIONNANT EST CACHÉ
L’ICEBERG DES APIS PRIVÉES!

Public

APIs

Source: ProgrammableWeb
NOMBRE DE SITES WEB
UN PARALLÈLE QUI LAISSE RÊVEUR !

APIs Web
publiques

Source: NetCraft / Jacob Nielsen
CONSTRUIRE SON API WEB
APPROCHE EN SILO
Sites Web

APIs Web

Framework MVC

REST Framework
Apache Tomcat
Java Runtime
Debian Linux
Hardware

Filières de développement différenciées
Enjeu de partage de données voir de conteneurs
APPROCHE UNIFIÉE
Sites Web

APIs Web

REST Framework
Apache Tomcat
Java Runtime
Debian Linux
Hardware

Unification REST et simplification des échanges de données
Plus besoin de framework MVC !
L’IMPACT DU CLOUD COMPUTING

REST Framework
Generic PaaS
IaaS
Hardware

Retour des technologies propriétaires
Incontournable par leurs apports (temps, argent, évolutivité)
ETAPE ULTIME : UNE PAAS SPÉCIALISÉE API

PaaS API
IaaS
Hardware

Simple et optimisée car spécialisée
Dans une stratégie BaaS, no Backend ou via intégration (Wrappers)
PROJET D’API WEB
CYCLE DE VIE TYPIQUE

Do It Yourself (DIY)
long, risqué, cher mais très flexible

Create

Host

Manage

Use

Platform as a Service (PaaS)
Intégré, rapide, économique

Promote
Approche DO IT YOURSELF

DIY AVEC RESTLET FMK
RESTLET FRAMEWORK
PROJET OPEN SOURCE CRÉÉ EN 2005

Framework pour exposer et consommer

des APIs web de style REST

Langage Java

Editions multiples
Génération semi-auto.
ANDROID

GAE

GWT

JAVA

SE

JAVA

EE

OSGI
FRAMEWORK DE RÉFÉRENCE
MULTI-PROTOCOLES
FORT INVESTISSEMENT SUR HTTP

Protocoles
Caching

Authentication

Conditional
requests

Ranged
requests

Restlet
API

Payload

Semantics

Messaging

Restlet
Engine

•
•
•
•
•
•
•
•
•
•

HTTP
AJP
FTP
RIAP
CLAP
FILE
POP3
SMTP
JDBC
SIP
MULTI-CLOUD
AUGMENTEZ LA PORTABILITÉ DE VOS APIS ET APPLIS WEB
UNE API JAVA COMPLÈTE
USAGE EN BIBLIOTHÈQUE OU EN FRAMEWORK
FILTRAGE ET ROUTAGE
MULTI-THREAD ET DYNAMIQUE

A
B
C
Next Restlet
Filter

Route 1

A

A

B

B

Route 2

C

C
Router
Route 3
INTERFACES ANNOTÉES
APPROCHE UNIFORME, CLIENT & SERVEUR

REST API

Client
proxy

Server
subclass

Annotated
Java interface

Client
resource

HTTP

Server
resource
SERVICE DE CONVERSION
EXTENSIBLE, SCORING, BEANS DE REPRÉSENTATION

Atom

Form Data

Resource

HTML

XML

JSON

RDF

…

Converter
service

Representation
bean

State
PACKAGES DE L’API RESTLET
UN CŒUR COMPLET ET COMPACT

org.restlet.data

org.restlet.representation

org.restlet.resource

org.restlet

org.restlet.routing

org.restlet.security

org.restlet.service

org.restlet.util
RESTLET API 2.1 VS JAX-RS 2.0
Approche PaaS

APISPARK : PLATEFORME INTEGREE
PLATEFORME APISPARK

Send us your feed-back
and help us making it
the best PaaS for Web
APIs !
LA PLATEFORME TOUT EN UN
POUR VOS API WEB
 Créer votre API web rapidement
– En 5 minutes à partir d’un modèle existant (API blog)
– En quelques heures à partir de rien ou par personnalisation d’un modèle
existant (annuaire d’APIs web disponible)
– Pas de verrou grâce à une fondation open source (Restlet Framework) et un
export du code de votre API web possible

 Hébergement intégré
– Backend scalable et réactif (faible latence, gestion intégrée)
– Disponibilité permanente 24/24h et 7/7j (pas de fenêtre de maintenance) et
sécurisé (confidentialité par SSL, gestion précise des autorisations)

 Versions automatiques
– Gérez plusieurs versions de la même API web en parallèle, sans aucun surcoût
– Pas de risque d’aliéner vos utilisateurs actuels tout en vous laissant libre de
faire évoluer votre API web
– Cycle de vie clair (états: brouillon, publié, déprécié, archivé, supprimé)
LA PLATEFORME TOUT EN UN
POUR VOS API WEB
 Documentation automatisée
– Toujours à jour grâce à une saisie optimisée
– Accès web avec tests en live intégré
– Export en PDF et HTML facile

 Génération de kits clients
– Facilitez l’utilisation de votre API par différents types d’utilisateurs
– Support des plate-formes les plus populaires (iPhone/iPad, Android,
Java, .NET, PHP, Python)

 Gestion de la communauté
–
–
–
–

Gestion des utilisateurs et de leur demande d’adhésion intégrée
Communautés publiques ou privées
Envoi de messages d’annonces publics ou de messages privés
Intégration avec les réseaux sociaux
LA PLATEFORME TOUT EN UN
POUR VOS API WEB
Step 1

BUILD YOUR DATA SOURCE
DEFINE YOUR DOMAIN MODEL
 Nothing new under the API sun !
 How is your domain model structured?
 Which information do you want expose?

 Common practices
 Domain entities and properties
 Reuse your data modeling experience
 Use OOA/D methodology or similar

→ Then implement it
DIY APPROACH
 Select a database technology
 that scales

 Specify the schema
 tables / sets, keys / queries, indexes

 Setup the database
 On premise or in the Cloud
 Ensure security, high availability and
performances

 From days to weeks
PAAS WAY
DATABASE AS A SERVICE
Step 2

CREATE YOUR WEB API
SPECIFY YOUR WEB API
 What do you want to expose ?
 Which resources ?
 How to structure them ?

 Common practices
 REST / Resource Oriented approach
 Resources, representations, variants
 Use ROA/D methodology and similar

→ Then implement it
APPROCHE DIY
 Select an API framework that
 Lets you be productive and gets you on the way
 Leverages your skills
 Ensures your web API will scale and be secure

 Write the code
 Code, debug, unit tests
 Read, write, update your data

 Package the code
 From days to weeks
PAAS WAY
FULLY AUTOMATED
Step 3

DÉPLOYER VOTRE API WEB
SPECIFY HOSTING NEEDS
 Who will access your API ?
 Public or Private ?
 Users, administrators, guests, support teams …

 Which SLA ?
 How much traffic do you expect ?
 How will you manage your API?
 Don’t forget about global security stakes

→ Then implement it
APPROCHE DIY
 Choose a deployment target
 Private hosting with firewall / DMZ
 Public hosting : Cloud / Dedicated

 Select an API management solution
 Build your own from Open source, third
party products
 Leverage an API management service :
plug it in tasks and side effects

 Guaranty your SLA
 Test, QA, iterate, benchmark…

 From days to weeks to get started
APPROCHE PAAS
DÉPLOIEMENT ET SCALABILITÉ INSTANTANÉS
Step 4

PROMOTE YOUR API
GIVING ACCESS TO YOUR API
 Think about API documentation
 Which client SDKs to provide ?
 How to measure your API success ?
 Monitor access to your API
 Usage statistics, analytics, trends

 Promote your API online
 Attract new API users
APPROCHE DIY
 Write your API documentation
 Annotated your API code and generate ?
 Use HTML tooling ?
 Maintenance costs (versions sync)

 Provide client SDKs
 Write first SDKs
 Pray for community contributions for others ?

 Test, QA, iterate, etc.
 From days to weeks to get started
APPROCHE PAAS
GÉNÈRATION DES SDKS CLIENT
APPROCHE PAAS
ANALYTICS INTÉGRÉS
DIY VERSUS PAAS
En semaines ou mois

Current practices
• Team of engineers
• Heterogeneous stack
• Complex & expensive
to develop and
to operate

En minutes ou heures

Web API manager

Web API definition

Custom code
Web API framework
Hosting
Generic PaaS

API Spark
• creation
• hosting
• management
• usage
All-in-one PaaS
COMBIEN D’APIS ?
A CONSTRUIRE ET À MAINTENIR

Browser

HTTP

Connected
devices

Pages + API

Smart
environment

Web Site

Business
Partners

Internal IT
POUR CONCLURE
 Comment construire 1 million d’APIs en 2017 ?
– avec un PaaS pour Web APIs radicalement simplifié
– démocratiser réellement les APIs Web!

Source: Wired / June 2013
POUR VOS PREMIERS PAS
CodeLab : 16h20 à 18h20






Phase de beta restreinte
Beta publique en décembre 2013
Commercialisation début 2014
Inscrivez-vous ! http://apispark.com
NOUS RECRUTONS !
 DevOps Engineer
 R&D Engineer
 Stages : R&D, devops
 Localisation : Nantes
 http://restlet.com/about/hiring
KEEP IN TOUCH!

http://apispark.com
http://blog.restlet.com
Twitter: @apispark

Contenu connexe

Tendances

Keynote #Tech - API Management, comment orchestrer vos API ? par Philippe DE ...
Keynote #Tech - API Management, comment orchestrer vos API ? par Philippe DE ...Keynote #Tech - API Management, comment orchestrer vos API ? par Philippe DE ...
Keynote #Tech - API Management, comment orchestrer vos API ? par Philippe DE ...
Paris Open Source Summit
 
Présentation RIA avec Adobe Flex / RIA with Adobe Flex
Présentation RIA avec Adobe Flex / RIA with Adobe FlexPrésentation RIA avec Adobe Flex / RIA with Adobe Flex
Présentation RIA avec Adobe Flex / RIA with Adobe Flex
Cynapsys It Hotspot
 
Swagger, language pour décrire des API REST
Swagger, language pour décrire des API RESTSwagger, language pour décrire des API REST
Swagger, language pour décrire des API REST
Pierre-André Vullioud
 
Presentation clean architecture
Presentation clean architecturePresentation clean architecture
Presentation clean architecture
Thomas LOMBARD
 
Decouverte wakanda-2012-01-24
Decouverte wakanda-2012-01-24Decouverte wakanda-2012-01-24
Decouverte wakanda-2012-01-24
Thibaud Arguillere
 
Alphorm.com Formation Microsoft Azure (AZ-500) : Sécurité
Alphorm.com Formation Microsoft Azure (AZ-500) : SécuritéAlphorm.com Formation Microsoft Azure (AZ-500) : Sécurité
Alphorm.com Formation Microsoft Azure (AZ-500) : Sécurité
Alphorm
 
Api gateway
Api gatewayApi gateway
Api gateway
MSDEVMTL
 
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
GSoft
 
TechDays 2014 - Retours d'expériences et meilleures pratiques pour la migrati...
TechDays 2014 - Retours d'expériences et meilleures pratiques pour la migrati...TechDays 2014 - Retours d'expériences et meilleures pratiques pour la migrati...
TechDays 2014 - Retours d'expériences et meilleures pratiques pour la migrati...
Patrick Guimonet
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
AZUG FR
 
Global Azure Bootcamp GAB Paris 2017
Global Azure Bootcamp GAB Paris 2017Global Azure Bootcamp GAB Paris 2017
Global Azure Bootcamp GAB Paris 2017
Alex Danvy
 

Tendances (12)

JavaFx overview
JavaFx overviewJavaFx overview
JavaFx overview
 
Keynote #Tech - API Management, comment orchestrer vos API ? par Philippe DE ...
Keynote #Tech - API Management, comment orchestrer vos API ? par Philippe DE ...Keynote #Tech - API Management, comment orchestrer vos API ? par Philippe DE ...
Keynote #Tech - API Management, comment orchestrer vos API ? par Philippe DE ...
 
Présentation RIA avec Adobe Flex / RIA with Adobe Flex
Présentation RIA avec Adobe Flex / RIA with Adobe FlexPrésentation RIA avec Adobe Flex / RIA with Adobe Flex
Présentation RIA avec Adobe Flex / RIA with Adobe Flex
 
Swagger, language pour décrire des API REST
Swagger, language pour décrire des API RESTSwagger, language pour décrire des API REST
Swagger, language pour décrire des API REST
 
Presentation clean architecture
Presentation clean architecturePresentation clean architecture
Presentation clean architecture
 
Decouverte wakanda-2012-01-24
Decouverte wakanda-2012-01-24Decouverte wakanda-2012-01-24
Decouverte wakanda-2012-01-24
 
Alphorm.com Formation Microsoft Azure (AZ-500) : Sécurité
Alphorm.com Formation Microsoft Azure (AZ-500) : SécuritéAlphorm.com Formation Microsoft Azure (AZ-500) : Sécurité
Alphorm.com Formation Microsoft Azure (AZ-500) : Sécurité
 
Api gateway
Api gatewayApi gateway
Api gateway
 
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
 
TechDays 2014 - Retours d'expériences et meilleures pratiques pour la migrati...
TechDays 2014 - Retours d'expériences et meilleures pratiques pour la migrati...TechDays 2014 - Retours d'expériences et meilleures pratiques pour la migrati...
TechDays 2014 - Retours d'expériences et meilleures pratiques pour la migrati...
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
 
Global Azure Bootcamp GAB Paris 2017
Global Azure Bootcamp GAB Paris 2017Global Azure Bootcamp GAB Paris 2017
Global Azure Bootcamp GAB Paris 2017
 

Similaire à Investir sur son API web (in French)

La plateforme Web Microsoft
La plateforme Web MicrosoftLa plateforme Web Microsoft
La plateforme Web MicrosoftChristophe Lauer
 
De l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletDe l'open source à l'open API avec Restlet
De l'open source à l'open API avec Restlet
Jerome Louvel
 
BreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureBreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec Azure
Nicolas Georgeault
 
Aspectize meetup
Aspectize meetupAspectize meetup
Aspectize meetup
Aspectize
 
Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4
Microsoft
 
Architecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinArchitecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et Xamarin
Thierry Buisson
 
CloudUnit le PaaS par TreeptiK
CloudUnit le PaaS par TreeptiKCloudUnit le PaaS par TreeptiK
CloudUnit le PaaS par TreeptiKAmico Fabien
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'artTugdual Grall
 
Presentation CMIS Acquia + Alfresco - Confoo2010
Presentation CMIS Acquia + Alfresco - Confoo2010Presentation CMIS Acquia + Alfresco - Confoo2010
Presentation CMIS Acquia + Alfresco - Confoo2010
Gestion-Ressources Inc.
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
Restlet
 
Web services SOAP et REST
Web services  SOAP et RESTWeb services  SOAP et REST
Web services SOAP et REST
RadhoueneRouached
 
Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !
Cédric Leblond
 
HTML5 W3C Conference Euratechnologie
HTML5 W3C Conference EuratechnologieHTML5 W3C Conference Euratechnologie
HTML5 W3C Conference Euratechnologie
wyggio
 
Faire des applications web avec Delphi
Faire des applications web avec DelphiFaire des applications web avec Delphi
Faire des applications web avec Delphi
pprem
 
Journée Agences Web - Scénario Présence en ligne
Journée Agences Web - Scénario Présence en ligneJournée Agences Web - Scénario Présence en ligne
Journée Agences Web - Scénario Présence en ligne
Christophe Lauer
 
Webinar offre entreprise
Webinar offre entrepriseWebinar offre entreprise
Webinar offre entreprise
Michael Harlaut
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
ENSIBS
 

Similaire à Investir sur son API web (in French) (20)

La plateforme Web Microsoft
La plateforme Web MicrosoftLa plateforme Web Microsoft
La plateforme Web Microsoft
 
CV REBAI Hamida
CV REBAI HamidaCV REBAI Hamida
CV REBAI Hamida
 
De l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletDe l'open source à l'open API avec Restlet
De l'open source à l'open API avec Restlet
 
BreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureBreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec Azure
 
Nouveaux apis
Nouveaux apisNouveaux apis
Nouveaux apis
 
Aspectize meetup
Aspectize meetupAspectize meetup
Aspectize meetup
 
Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4Quoi de neuf dans ASP.NET MVC 4
Quoi de neuf dans ASP.NET MVC 4
 
Architecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinArchitecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et Xamarin
 
CloudUnit le PaaS par TreeptiK
CloudUnit le PaaS par TreeptiKCloudUnit le PaaS par TreeptiK
CloudUnit le PaaS par TreeptiK
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'art
 
Presentation CMIS Acquia + Alfresco - Confoo2010
Presentation CMIS Acquia + Alfresco - Confoo2010Presentation CMIS Acquia + Alfresco - Confoo2010
Presentation CMIS Acquia + Alfresco - Confoo2010
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
 
Web services SOAP et REST
Web services  SOAP et RESTWeb services  SOAP et REST
Web services SOAP et REST
 
Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !
 
HTML5 W3C Conference Euratechnologie
HTML5 W3C Conference EuratechnologieHTML5 W3C Conference Euratechnologie
HTML5 W3C Conference Euratechnologie
 
Faire des applications web avec Delphi
Faire des applications web avec DelphiFaire des applications web avec Delphi
Faire des applications web avec Delphi
 
Journée Agences Web - Scénario Présence en ligne
Journée Agences Web - Scénario Présence en ligneJournée Agences Web - Scénario Présence en ligne
Journée Agences Web - Scénario Présence en ligne
 
Webinar offre entreprise
Webinar offre entrepriseWebinar offre entreprise
Webinar offre entreprise
 
vNext
vNextvNext
vNext
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
 

Plus de Restlet

APIDays - API Design Workshop
APIDays - API Design WorkshopAPIDays - API Design Workshop
APIDays - API Design Workshop
Restlet
 
APIdays 2016 - The State of Web API Languages
APIdays 2016  - The State of Web API LanguagesAPIdays 2016  - The State of Web API Languages
APIdays 2016 - The State of Web API Languages
Restlet
 
APIStrat Open API Workshop
APIStrat Open API WorkshopAPIStrat Open API Workshop
APIStrat Open API Workshop
Restlet
 
DevOps DDay - Streamline DevOps Workflows With APIs
DevOps DDay - Streamline DevOps Workflows With APIsDevOps DDay - Streamline DevOps Workflows With APIs
DevOps DDay - Streamline DevOps Workflows With APIs
Restlet
 
Restlet Framework NG
Restlet Framework NGRestlet Framework NG
Restlet Framework NG
Restlet
 
API World 2016 - A five-sided prism polarizing Web API development
API World 2016 - A five-sided prism polarizing Web API developmentAPI World 2016 - A five-sided prism polarizing Web API development
API World 2016 - A five-sided prism polarizing Web API development
Restlet
 
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
Restlet
 
The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016
Restlet
 
Public and private APIs: differences and challenges
Public and private APIs: differences and challengesPublic and private APIs: differences and challenges
Public and private APIs: differences and challenges
Restlet
 
APIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesAPIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API Languages
Restlet
 
The never-ending REST API design debate
The never-ending REST API design debateThe never-ending REST API design debate
The never-ending REST API design debate
Restlet
 
Take a Groovy REST
Take a Groovy RESTTake a Groovy REST
Take a Groovy REST
Restlet
 
Cassandra Summit 2015 - Building a multi-tenant API PaaS with DataStax Enterp...
Cassandra Summit 2015 - Building a multi-tenant API PaaS with DataStax Enterp...Cassandra Summit 2015 - Building a multi-tenant API PaaS with DataStax Enterp...
Cassandra Summit 2015 - Building a multi-tenant API PaaS with DataStax Enterp...
Restlet
 
GlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIsGlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIs
Restlet
 
GlueCon 2015 - How REST APIs can glue all types of devices together
GlueCon 2015 - How REST APIs can glue all types of devices togetherGlueCon 2015 - How REST APIs can glue all types of devices together
GlueCon 2015 - How REST APIs can glue all types of devices together
Restlet
 
Transformez vos Google Spreadsheets en API web - DevFest 2014
Transformez vos Google Spreadsheets en API web - DevFest 2014Transformez vos Google Spreadsheets en API web - DevFest 2014
Transformez vos Google Spreadsheets en API web - DevFest 2014
Restlet
 
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
Restlet
 
APIdays Paris 2014 - The State of Web API Languages
APIdays Paris 2014 - The State of Web API LanguagesAPIdays Paris 2014 - The State of Web API Languages
APIdays Paris 2014 - The State of Web API Languages
Restlet
 
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIsDefrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
Restlet
 
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
Restlet
 

Plus de Restlet (20)

APIDays - API Design Workshop
APIDays - API Design WorkshopAPIDays - API Design Workshop
APIDays - API Design Workshop
 
APIdays 2016 - The State of Web API Languages
APIdays 2016  - The State of Web API LanguagesAPIdays 2016  - The State of Web API Languages
APIdays 2016 - The State of Web API Languages
 
APIStrat Open API Workshop
APIStrat Open API WorkshopAPIStrat Open API Workshop
APIStrat Open API Workshop
 
DevOps DDay - Streamline DevOps Workflows With APIs
DevOps DDay - Streamline DevOps Workflows With APIsDevOps DDay - Streamline DevOps Workflows With APIs
DevOps DDay - Streamline DevOps Workflows With APIs
 
Restlet Framework NG
Restlet Framework NGRestlet Framework NG
Restlet Framework NG
 
API World 2016 - A five-sided prism polarizing Web API development
API World 2016 - A five-sided prism polarizing Web API developmentAPI World 2016 - A five-sided prism polarizing Web API development
API World 2016 - A five-sided prism polarizing Web API development
 
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
MuleSoft Connect 2016 - Getting started with RAML using Restlet’s visual desi...
 
The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016
 
Public and private APIs: differences and challenges
Public and private APIs: differences and challengesPublic and private APIs: differences and challenges
Public and private APIs: differences and challenges
 
APIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API LanguagesAPIdays 2015 - The State of Web API Languages
APIdays 2015 - The State of Web API Languages
 
The never-ending REST API design debate
The never-ending REST API design debateThe never-ending REST API design debate
The never-ending REST API design debate
 
Take a Groovy REST
Take a Groovy RESTTake a Groovy REST
Take a Groovy REST
 
Cassandra Summit 2015 - Building a multi-tenant API PaaS with DataStax Enterp...
Cassandra Summit 2015 - Building a multi-tenant API PaaS with DataStax Enterp...Cassandra Summit 2015 - Building a multi-tenant API PaaS with DataStax Enterp...
Cassandra Summit 2015 - Building a multi-tenant API PaaS with DataStax Enterp...
 
GlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIsGlueCon 2015 - Publish your SQL data as web APIs
GlueCon 2015 - Publish your SQL data as web APIs
 
GlueCon 2015 - How REST APIs can glue all types of devices together
GlueCon 2015 - How REST APIs can glue all types of devices togetherGlueCon 2015 - How REST APIs can glue all types of devices together
GlueCon 2015 - How REST APIs can glue all types of devices together
 
Transformez vos Google Spreadsheets en API web - DevFest 2014
Transformez vos Google Spreadsheets en API web - DevFest 2014Transformez vos Google Spreadsheets en API web - DevFest 2014
Transformez vos Google Spreadsheets en API web - DevFest 2014
 
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
APIdays Paris 2014 - Workshop - Craft and Deploy Your API in a Few Clicks Wit...
 
APIdays Paris 2014 - The State of Web API Languages
APIdays Paris 2014 - The State of Web API LanguagesAPIdays Paris 2014 - The State of Web API Languages
APIdays Paris 2014 - The State of Web API Languages
 
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIsDefrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
Defrag 2014 - Blend Web IDEs, Open Source and PaaS to Create and Deploy APIs
 
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
QCon SF 2014 - Create and Deploy APIs using Web IDEs, Open Source Frameworks ...
 

Investir sur son API web (in French)

  • 2. INVESTIR SUR SON API WEB POURQUOI ET COMMENT ? La plate-forme tout-en-un pour APIs Web http://apispark.com Silver Sponsor En collaboration avec l’équipe Restlet 8 novembre 2013
  • 3. BIO Stève SFARTZ  VP of Engineering @ Restlet  En charge de la R&D et des Opérations  Architectures Web et Mobiles, distribuées, scalables et interopérables Me contacter  ssfartz@restlet.com  Twitter : @SteveSfartz  Think big mais pas trop !
  • 4. AGENDA      Pourquoi une API Web ? Construire son API Web : les approches Approche DIY avec Restlet Framework Approche PaaS avec APISpark En pratique CodeLab de 16h20 à 18h20
  • 6. LE WEB AUJOURD’HUI MOBILE + CROSS-MACHINE Utilisateurs d’Internet : 2,3 milliards Objets connectés : 10 milliards Besoin d’échange d’informations Ordinateur TV connectée Smartphone API Nouvelle génération de sites web accessibles par tous moyens  Web APIs API Tablette Partenaires Applis sociales
  • 7. L’API WEB ÇA PERMET D’EXPOSER Backend Mobile (connectées, natives ou HTML 5) Backend SaaS (HTML 5/AJAX, API développeur/partenaire) Backend Open Data (multi-formats, API développeur, big data) Backend Internet des Objets (M2M, RFID, géolocalisation) 7
  • 8. L’API WEB ÇA SE CONSOMME Enrichir un site web (mashups, flux blog/tweets, Google Maps) Import/Export SaaS (libérer ses données, changer de fournisseur) Intégration SaaS (notifier / web hooks, automatiser / workflow) APIs composites (combiner plusieurs APIs en une autre, SIRI) 8
  • 9. EMERGENCE DES APIS WEB E-Commerce Social web Cloud Computing Pionniers des APIs Milliardaires des APIs APIs as a Product Mapping Mobile Apps Open Data APIs pour mieux voir APIs pour rester connectés APIs pour partager
  • 10. NOMBRE D’APIS PUBLIQUES EN PLEINE CROISSANCE ! Plus de 10 000 APIs publiques ! Source: ProgrammableWeb 1 million d’APIs en 2017 !
  • 11. LE PLUS IMPRESSIONNANT EST CACHÉ L’ICEBERG DES APIS PRIVÉES! Public APIs Source: ProgrammableWeb
  • 12. NOMBRE DE SITES WEB UN PARALLÈLE QUI LAISSE RÊVEUR ! APIs Web publiques Source: NetCraft / Jacob Nielsen
  • 14. APPROCHE EN SILO Sites Web APIs Web Framework MVC REST Framework Apache Tomcat Java Runtime Debian Linux Hardware Filières de développement différenciées Enjeu de partage de données voir de conteneurs
  • 15. APPROCHE UNIFIÉE Sites Web APIs Web REST Framework Apache Tomcat Java Runtime Debian Linux Hardware Unification REST et simplification des échanges de données Plus besoin de framework MVC !
  • 16. L’IMPACT DU CLOUD COMPUTING REST Framework Generic PaaS IaaS Hardware Retour des technologies propriétaires Incontournable par leurs apports (temps, argent, évolutivité)
  • 17. ETAPE ULTIME : UNE PAAS SPÉCIALISÉE API PaaS API IaaS Hardware Simple et optimisée car spécialisée Dans une stratégie BaaS, no Backend ou via intégration (Wrappers)
  • 18. PROJET D’API WEB CYCLE DE VIE TYPIQUE Do It Yourself (DIY) long, risqué, cher mais très flexible Create Host Manage Use Platform as a Service (PaaS) Intégré, rapide, économique Promote
  • 19. Approche DO IT YOURSELF DIY AVEC RESTLET FMK
  • 20. RESTLET FRAMEWORK PROJET OPEN SOURCE CRÉÉ EN 2005 Framework pour exposer et consommer des APIs web de style REST Langage Java Editions multiples Génération semi-auto. ANDROID GAE GWT JAVA SE JAVA EE OSGI
  • 22. MULTI-PROTOCOLES FORT INVESTISSEMENT SUR HTTP Protocoles Caching Authentication Conditional requests Ranged requests Restlet API Payload Semantics Messaging Restlet Engine • • • • • • • • • • HTTP AJP FTP RIAP CLAP FILE POP3 SMTP JDBC SIP
  • 23. MULTI-CLOUD AUGMENTEZ LA PORTABILITÉ DE VOS APIS ET APPLIS WEB
  • 24. UNE API JAVA COMPLÈTE USAGE EN BIBLIOTHÈQUE OU EN FRAMEWORK
  • 25. FILTRAGE ET ROUTAGE MULTI-THREAD ET DYNAMIQUE A B C Next Restlet Filter Route 1 A A B B Route 2 C C Router Route 3
  • 26. INTERFACES ANNOTÉES APPROCHE UNIFORME, CLIENT & SERVEUR REST API Client proxy Server subclass Annotated Java interface Client resource HTTP Server resource
  • 27. SERVICE DE CONVERSION EXTENSIBLE, SCORING, BEANS DE REPRÉSENTATION Atom Form Data Resource HTML XML JSON RDF … Converter service Representation bean State
  • 28. PACKAGES DE L’API RESTLET UN CŒUR COMPLET ET COMPACT org.restlet.data org.restlet.representation org.restlet.resource org.restlet org.restlet.routing org.restlet.security org.restlet.service org.restlet.util
  • 29. RESTLET API 2.1 VS JAX-RS 2.0
  • 30. Approche PaaS APISPARK : PLATEFORME INTEGREE
  • 31. PLATEFORME APISPARK Send us your feed-back and help us making it the best PaaS for Web APIs !
  • 32. LA PLATEFORME TOUT EN UN POUR VOS API WEB  Créer votre API web rapidement – En 5 minutes à partir d’un modèle existant (API blog) – En quelques heures à partir de rien ou par personnalisation d’un modèle existant (annuaire d’APIs web disponible) – Pas de verrou grâce à une fondation open source (Restlet Framework) et un export du code de votre API web possible  Hébergement intégré – Backend scalable et réactif (faible latence, gestion intégrée) – Disponibilité permanente 24/24h et 7/7j (pas de fenêtre de maintenance) et sécurisé (confidentialité par SSL, gestion précise des autorisations)  Versions automatiques – Gérez plusieurs versions de la même API web en parallèle, sans aucun surcoût – Pas de risque d’aliéner vos utilisateurs actuels tout en vous laissant libre de faire évoluer votre API web – Cycle de vie clair (états: brouillon, publié, déprécié, archivé, supprimé)
  • 33. LA PLATEFORME TOUT EN UN POUR VOS API WEB  Documentation automatisée – Toujours à jour grâce à une saisie optimisée – Accès web avec tests en live intégré – Export en PDF et HTML facile  Génération de kits clients – Facilitez l’utilisation de votre API par différents types d’utilisateurs – Support des plate-formes les plus populaires (iPhone/iPad, Android, Java, .NET, PHP, Python)  Gestion de la communauté – – – – Gestion des utilisateurs et de leur demande d’adhésion intégrée Communautés publiques ou privées Envoi de messages d’annonces publics ou de messages privés Intégration avec les réseaux sociaux
  • 34. LA PLATEFORME TOUT EN UN POUR VOS API WEB
  • 35. Step 1 BUILD YOUR DATA SOURCE
  • 36. DEFINE YOUR DOMAIN MODEL  Nothing new under the API sun !  How is your domain model structured?  Which information do you want expose?  Common practices  Domain entities and properties  Reuse your data modeling experience  Use OOA/D methodology or similar → Then implement it
  • 37. DIY APPROACH  Select a database technology  that scales  Specify the schema  tables / sets, keys / queries, indexes  Setup the database  On premise or in the Cloud  Ensure security, high availability and performances  From days to weeks
  • 38. PAAS WAY DATABASE AS A SERVICE
  • 40. SPECIFY YOUR WEB API  What do you want to expose ?  Which resources ?  How to structure them ?  Common practices  REST / Resource Oriented approach  Resources, representations, variants  Use ROA/D methodology and similar → Then implement it
  • 41. APPROCHE DIY  Select an API framework that  Lets you be productive and gets you on the way  Leverages your skills  Ensures your web API will scale and be secure  Write the code  Code, debug, unit tests  Read, write, update your data  Package the code  From days to weeks
  • 44. SPECIFY HOSTING NEEDS  Who will access your API ?  Public or Private ?  Users, administrators, guests, support teams …  Which SLA ?  How much traffic do you expect ?  How will you manage your API?  Don’t forget about global security stakes → Then implement it
  • 45. APPROCHE DIY  Choose a deployment target  Private hosting with firewall / DMZ  Public hosting : Cloud / Dedicated  Select an API management solution  Build your own from Open source, third party products  Leverage an API management service : plug it in tasks and side effects  Guaranty your SLA  Test, QA, iterate, benchmark…  From days to weeks to get started
  • 46. APPROCHE PAAS DÉPLOIEMENT ET SCALABILITÉ INSTANTANÉS
  • 48. GIVING ACCESS TO YOUR API  Think about API documentation  Which client SDKs to provide ?  How to measure your API success ?  Monitor access to your API  Usage statistics, analytics, trends  Promote your API online  Attract new API users
  • 49. APPROCHE DIY  Write your API documentation  Annotated your API code and generate ?  Use HTML tooling ?  Maintenance costs (versions sync)  Provide client SDKs  Write first SDKs  Pray for community contributions for others ?  Test, QA, iterate, etc.  From days to weeks to get started
  • 52. DIY VERSUS PAAS En semaines ou mois Current practices • Team of engineers • Heterogeneous stack • Complex & expensive to develop and to operate En minutes ou heures Web API manager Web API definition Custom code Web API framework Hosting Generic PaaS API Spark • creation • hosting • management • usage All-in-one PaaS
  • 53. COMBIEN D’APIS ? A CONSTRUIRE ET À MAINTENIR Browser HTTP Connected devices Pages + API Smart environment Web Site Business Partners Internal IT
  • 54. POUR CONCLURE  Comment construire 1 million d’APIs en 2017 ? – avec un PaaS pour Web APIs radicalement simplifié – démocratiser réellement les APIs Web! Source: Wired / June 2013
  • 55. POUR VOS PREMIERS PAS CodeLab : 16h20 à 18h20     Phase de beta restreinte Beta publique en décembre 2013 Commercialisation début 2014 Inscrivez-vous ! http://apispark.com
  • 56. NOUS RECRUTONS !  DevOps Engineer  R&D Engineer  Stages : R&D, devops  Localisation : Nantes  http://restlet.com/about/hiring