SlideShare a Scribd company logo
1 of 22
Download to read offline
About me
● Created Restlet Framework, first REST framework in 2004
● Contributor to “RESTful Web Services” (O’Reilly, 2007)
● Member of the JAX-RS 1.0 expert group (2007 - 2009)
● Co-author of “Restlet in Action” (Manning, 2012)
● InfoQ editor covering Web APIs since 2014
● CEO & Founder of Restlet, Web API platform vendor
The present of APIs
Glue more and more devices
Figuring out API development workflows
One REST API to glue them all?
Data Services
REST
API
1 | Code-first & Back-end Driven
Back-end team
Front-end teams
API
Impl
SDK
Client
A
SDK
Client
B
...
...
3
1
2
2 | API-first & Back-end Driven
Back-end team
Front-end teams
Impl
SDK
Client
A
SDK
Client
B
...
...
2
1
Mock
2
API
3 | Collaborative API-first
Back-end team
Front-end teams
Impl
SDK
Client
A
SDK
Client
B
...
...
2
1
Mock
2
API
Why this won’t work?
● #1: Different technical capabilities
○ small screen, big screen, no screen
○ input and output schemes
○ sensors collecting contextual info
○ internet connectivity
● #2: Users expect unique experiences
○ care-fully use device capabilities
○ apps aware of usage context
○ consistent with device UX style
● #3: Different release cycles
○ support new devices
○ upgrade existing one
○ prototype, beta phase, GA
○ varying SLAs
→ Learn from the Netflix API experience
http://techblog.netflix.com/search/label/api
An API for each type of device
UX
API
UX
API
UX
API
UX
API
UX
API
UX
API
UX
API
ServicesData
● Reduce page latency
○ group several API calls together based on UI structure
○ adapt formats for faster parsing (JSON, PList, binary, etc.)
○ use fastest protocols (HTTP 1.1 / 2.0, MQTT, etc.)
● Improve security
○ support unique authentication schemes (Apple TouchID)
● Facilitate development process
○ with separate front-end teams
○ more flexible release cycles
● Adjust Service Level Agreements (SLAs)
○ based on the customer value and business model
● Make sense for all channels, not only devices → Edge APIs
○ Internal IT, key partners, open community
Benefits of UX APIs
4 | API-first & Front-end Driven
Back-end team
Front-end teams
Impl
SDK
Client
A
SDK
Client
B
...
...
2
1
Mock
2
API
Mock
API
Impl
Mock
API
Impl
ServicesData
5 | API-first & Front-end Owned
Back-end team
Front-end teams
Impl
SDK
Client
A
SDK
Client
B
...
...
2
1
Mock
2
API
Mock
API
Impl
Mock
API
Impl
Data Services
Scratching Edge APIs surface
API Platform
Micro APIs
(domain data & logic)
Composite APIs
(domain services)
Experience APIs
(backends)
User Interfaces
(frontends)
Open APIs
(public)
End-users
Micro APIs
(external SaaS)
Partner devs
● You will find ... other APIs!
● Exposing data and services
○ micro-services
○ micro-data sets
○ internal & external
● How to create, deploy & manage
so many APIs?
→ API platforms to the rescue
1 | Homegrown API platforms
● Viable for high-tech companies only
● Netflix API platform
○ Runs on top of AWS and Cassandra
○ “In some ways, the API is now like an internal PaaS system”
● Netflix open source components
○ Nicobar - Dynamic Scripting and Module Loader Framework for Java
○ Asgard - Web UI for application deployments and cloud mgt in AWS
○ Zuul - Edge service for dynamic routing, monitoring, resiliency, security
○ Ribbon - Interprocess comm. lib. with built in software load balancers.
○ Archaius - Library for configuration management API
○ Turbine - SSE Stream Aggregator
2 | Enterprise API Platforms
● Mature solutions from the first wave of API vendors
○ Apigee is the leader with recent IPO
○ Mashery now at Intel has been the pioneer
○ WS02, StrongLoop and a few others have an open
source angle
○ Axway, Boomi, Mulesoft, Tibco and others come from
the integration space
● Often act as gateways or proxies
○ between internal IT and connected devices
○ on-premise deployment mostly with hybrid cloud
capabilities depending on actors
○ often limited API lifecycle support to API management
● Tend to be complex and expensive
○ esp. for smaller organizations
3 | API PaaS
● More recent solutions aimed at
○ the long tail of API providers and consumers
○ small and medium businesses
○ citizen integrators within larger organization
● Unique challenges & benefits
○ solutions covering more of API lifecycle than just API management
○ self service products requiring great UX
○ cost-effective pricing based on actual API usage
○ complex architectures for high-density multi-tenancy
○ includes API hosting and operations capabilities
The Future of APIs
From Web Pages to Mobile Apps and IoT
● Application of hypermedia for direct consumption by end-users
○ based on HTML, CSS, Images, Videos, JavaScript
○ on top of Web infrastructure: HTTP, URI and REST
○ 1 web API for all web sites → 1 client needed (browser)
1 | Web of Documents → Hypertext
HTML
HTML
HTML
HTML
HTML
HTML
Web Site #1 Web Site #2
● Application of hypermedia for consumption by machines
○ based on RDF, JSON-LD, OData, Hypermedia APIs (HAL, ALPS)
○ on top of Web infrastructure: HTTP, URI and REST
○ few different web APIs, allowing reuse of clients (data browsers)
2 | Web of Data → Hyperdata
Web Site #1 Web Site #2
RDF
RDF
RDF
RDF
RDF
RDF
● Application of hypermedia for developers at design-time
○ based on APIs.json, RAML, Swagger, API Blueprint, API Commons
○ on top of Web infrastructure: HTTP, URI and REST
○ exponential growth of APIs x versions factor
3 | Web of APIs → HyperAPI
API
API
API
API
API
API
Mobile App #1 Mobile App #2
● 1 | API discoverability
○ curation, selection
○ technical consumption
○ promotion
● 2 | API crafting
○ web IDEs
○ hyperAPI assembly
○ semantic data mapping
● 3 | API delivery
○ low latency
○ high availability
○ elastic scalability
○ pervasive security
→ A whole new API Stack
Our API challenges
GlueCon 2015 - How REST APIs can glue all types of devices together

More Related Content

What's hot

How to GraphQL
How to GraphQLHow to GraphQL
How to GraphQLTomasz Bak
 
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
 
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...apidays
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQLKnoldus Inc.
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQLRodrigo Prates
 
Axway Appcelerator - Titanium SDK 6.1.0 - Status, Releases & Roadmap
Axway Appcelerator - Titanium SDK 6.1.0 - Status, Releases & RoadmapAxway Appcelerator - Titanium SDK 6.1.0 - Status, Releases & Roadmap
Axway Appcelerator - Titanium SDK 6.1.0 - Status, Releases & RoadmapHans Knoechel
 
apidays LIVE Australia - Productising your Microservices as API Products by P...
apidays LIVE Australia - Productising your Microservices as API Products by P...apidays LIVE Australia - Productising your Microservices as API Products by P...
apidays LIVE Australia - Productising your Microservices as API Products by P...apidays
 
Exposing GraphQLs as Managed APIs
Exposing GraphQLs as Managed APIsExposing GraphQLs as Managed APIs
Exposing GraphQLs as Managed APIsWSO2
 
Taking Control of your Data with GraphQL
Taking Control of your Data with GraphQLTaking Control of your Data with GraphQL
Taking Control of your Data with GraphQLVinci Rufus
 
Product Camp Silicon Valley 2018 - PM Technical Skills
Product Camp Silicon Valley 2018 - PM Technical SkillsProduct Camp Silicon Valley 2018 - PM Technical Skills
Product Camp Silicon Valley 2018 - PM Technical SkillsSandeep Adwankar
 
Introduction to graphQL
Introduction to graphQLIntroduction to graphQL
Introduction to graphQLMuhilvarnan V
 
Into to GraphQL
Into to GraphQLInto to GraphQL
Into to GraphQLshobot
 
Modular GraphQL with Schema Stitching
Modular GraphQL with Schema StitchingModular GraphQL with Schema Stitching
Modular GraphQL with Schema StitchingSashko Stubailo
 
Vizag mulesoft-meetup-6-anypoint-datagraph--v2
Vizag mulesoft-meetup-6-anypoint-datagraph--v2Vizag mulesoft-meetup-6-anypoint-datagraph--v2
Vizag mulesoft-meetup-6-anypoint-datagraph--v2Ravi Tamada
 
REST vs GraphQL
REST vs GraphQLREST vs GraphQL
REST vs GraphQLSquareboat
 
apidays LIVE Paris 2021 - OpenAPI Generator - The Babel Fish of the API World...
apidays LIVE Paris 2021 - OpenAPI Generator - The Babel Fish of the API World...apidays LIVE Paris 2021 - OpenAPI Generator - The Babel Fish of the API World...
apidays LIVE Paris 2021 - OpenAPI Generator - The Babel Fish of the API World...apidays
 
Adding GraphQL to your existing architecture
Adding GraphQL to your existing architectureAdding GraphQL to your existing architecture
Adding GraphQL to your existing architectureSashko Stubailo
 
Front-end for Java developers Devoxx France 2018
Front-end for Java developers Devoxx France 2018Front-end for Java developers Devoxx France 2018
Front-end for Java developers Devoxx France 2018Deepu K Sasidharan
 
Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)Rafael Wilber Kerr
 

What's hot (20)

How to GraphQL
How to GraphQLHow to GraphQL
How to GraphQL
 
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...
 
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
apidays LIVE Australia - Have your cake and eat it too: GraphQL? REST? Why no...
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQL
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQL
 
Axway Appcelerator - Titanium SDK 6.1.0 - Status, Releases & Roadmap
Axway Appcelerator - Titanium SDK 6.1.0 - Status, Releases & RoadmapAxway Appcelerator - Titanium SDK 6.1.0 - Status, Releases & Roadmap
Axway Appcelerator - Titanium SDK 6.1.0 - Status, Releases & Roadmap
 
apidays LIVE Australia - Productising your Microservices as API Products by P...
apidays LIVE Australia - Productising your Microservices as API Products by P...apidays LIVE Australia - Productising your Microservices as API Products by P...
apidays LIVE Australia - Productising your Microservices as API Products by P...
 
Exposing GraphQLs as Managed APIs
Exposing GraphQLs as Managed APIsExposing GraphQLs as Managed APIs
Exposing GraphQLs as Managed APIs
 
Taking Control of your Data with GraphQL
Taking Control of your Data with GraphQLTaking Control of your Data with GraphQL
Taking Control of your Data with GraphQL
 
Product Camp Silicon Valley 2018 - PM Technical Skills
Product Camp Silicon Valley 2018 - PM Technical SkillsProduct Camp Silicon Valley 2018 - PM Technical Skills
Product Camp Silicon Valley 2018 - PM Technical Skills
 
Introduction to graphQL
Introduction to graphQLIntroduction to graphQL
Introduction to graphQL
 
Into to GraphQL
Into to GraphQLInto to GraphQL
Into to GraphQL
 
Modular GraphQL with Schema Stitching
Modular GraphQL with Schema StitchingModular GraphQL with Schema Stitching
Modular GraphQL with Schema Stitching
 
Vizag mulesoft-meetup-6-anypoint-datagraph--v2
Vizag mulesoft-meetup-6-anypoint-datagraph--v2Vizag mulesoft-meetup-6-anypoint-datagraph--v2
Vizag mulesoft-meetup-6-anypoint-datagraph--v2
 
REST vs GraphQL
REST vs GraphQLREST vs GraphQL
REST vs GraphQL
 
Intro to GraphQL
 Intro to GraphQL Intro to GraphQL
Intro to GraphQL
 
apidays LIVE Paris 2021 - OpenAPI Generator - The Babel Fish of the API World...
apidays LIVE Paris 2021 - OpenAPI Generator - The Babel Fish of the API World...apidays LIVE Paris 2021 - OpenAPI Generator - The Babel Fish of the API World...
apidays LIVE Paris 2021 - OpenAPI Generator - The Babel Fish of the API World...
 
Adding GraphQL to your existing architecture
Adding GraphQL to your existing architectureAdding GraphQL to your existing architecture
Adding GraphQL to your existing architecture
 
Front-end for Java developers Devoxx France 2018
Front-end for Java developers Devoxx France 2018Front-end for Java developers Devoxx France 2018
Front-end for Java developers Devoxx France 2018
 
Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)
 

Similar to GlueCon 2015 - How REST APIs can glue all types of devices together

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 LanguagesRestlet
 
Design & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hoursDesign & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hoursRestlet
 
Top 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementationTop 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementationOCTO Technology
 
SumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststemSumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststemSumit Kataria
 
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
 
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 APIsRestlet
 
Bridging Microservices, APIs and Integration
Bridging Microservices, APIs and IntegrationBridging Microservices, APIs and Integration
Bridging Microservices, APIs and IntegrationKasun Indrasiri
 
Integration Microservices
Integration MicroservicesIntegration Microservices
Integration MicroservicesKasun Indrasiri
 
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 LanguagesRestlet
 
Building Cloud Native Applications with Oracle Autonomous Database.
Building Cloud Native Applications with Oracle Autonomous Database.Building Cloud Native Applications with Oracle Autonomous Database.
Building Cloud Native Applications with Oracle Autonomous Database.Oracle Developers
 
Oracle APEX 18.1 New Features
Oracle APEX 18.1 New FeaturesOracle APEX 18.1 New Features
Oracle APEX 18.1 New Featuresmsewtz
 
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...apidays
 
MySQL day Dublin - OCI & Application Development
MySQL day Dublin - OCI & Application DevelopmentMySQL day Dublin - OCI & Application Development
MySQL day Dublin - OCI & Application DevelopmentHenry J. Kröger
 
WSO2 Workshop Sydney 2016 - APIs
WSO2 Workshop Sydney 2016 - APIsWSO2 Workshop Sydney 2016 - APIs
WSO2 Workshop Sydney 2016 - APIsDassana Wijesekara
 
A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019Bill Doerrfeld
 
Cloudsolutionday 2016: Getting Started with Severless Architecture
Cloudsolutionday 2016: Getting Started with Severless ArchitectureCloudsolutionday 2016: Getting Started with Severless Architecture
Cloudsolutionday 2016: Getting Started with Severless ArchitectureAWS Vietnam Community
 

Similar to GlueCon 2015 - How REST APIs can glue all types of devices together (20)

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 Decoupled CMS in Financial Services
The Decoupled CMS in Financial ServicesThe Decoupled CMS in Financial Services
The Decoupled CMS in Financial Services
 
Design & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hoursDesign & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hours
 
Top 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementationTop 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementation
 
Octo API-days 2015
Octo API-days 2015Octo API-days 2015
Octo API-days 2015
 
SumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststemSumitK's mobile app dev using drupal as base ststem
SumitK's mobile app dev using drupal as base ststem
 
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 ...
 
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
 
Bridging Microservices, APIs and Integration
Bridging Microservices, APIs and IntegrationBridging Microservices, APIs and Integration
Bridging Microservices, APIs and Integration
 
FICO Open Shift presentation
FICO Open Shift presentationFICO Open Shift presentation
FICO Open Shift presentation
 
Integration Microservices
Integration MicroservicesIntegration Microservices
Integration Microservices
 
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
 
Building Cloud Native Applications with Oracle Autonomous Database.
Building Cloud Native Applications with Oracle Autonomous Database.Building Cloud Native Applications with Oracle Autonomous Database.
Building Cloud Native Applications with Oracle Autonomous Database.
 
Architecture for the API-enterprise
Architecture for the API-enterpriseArchitecture for the API-enterprise
Architecture for the API-enterprise
 
Oracle APEX 18.1 New Features
Oracle APEX 18.1 New FeaturesOracle APEX 18.1 New Features
Oracle APEX 18.1 New Features
 
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
 
MySQL day Dublin - OCI & Application Development
MySQL day Dublin - OCI & Application DevelopmentMySQL day Dublin - OCI & Application Development
MySQL day Dublin - OCI & Application Development
 
WSO2 Workshop Sydney 2016 - APIs
WSO2 Workshop Sydney 2016 - APIsWSO2 Workshop Sydney 2016 - APIs
WSO2 Workshop Sydney 2016 - APIs
 
A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019
 
Cloudsolutionday 2016: Getting Started with Severless Architecture
Cloudsolutionday 2016: Getting Started with Severless ArchitectureCloudsolutionday 2016: Getting Started with Severless Architecture
Cloudsolutionday 2016: Getting Started with Severless Architecture
 

More from Restlet

APIDays - API Design Workshop
APIDays - API Design WorkshopAPIDays - API Design Workshop
APIDays - API Design WorkshopRestlet
 
APIStrat Open API Workshop
APIStrat Open API WorkshopAPIStrat Open API Workshop
APIStrat Open API WorkshopRestlet
 
Restlet Framework NG
Restlet Framework NGRestlet Framework NG
Restlet Framework NGRestlet
 
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 developmentRestlet
 
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 2016Restlet
 
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 challengesRestlet
 
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 debateRestlet
 
Take a Groovy REST
Take a Groovy RESTTake a Groovy REST
Take a Groovy RESTRestlet
 
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
 
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 2014Restlet
 
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 - How to Build Your Web API
APIdays Paris - How to Build Your Web APIAPIdays Paris - How to Build Your Web API
APIdays Paris - How to Build Your Web APIRestlet
 
Web APIs, the New Language Frontier
Web APIs, the New Language FrontierWeb APIs, the New Language Frontier
Web APIs, the New Language FrontierRestlet
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)Restlet
 
Deploy a web API in 15'
Deploy a web API in 15'Deploy a web API in 15'
Deploy a web API in 15'Restlet
 
From Open Source to Open API with Restlet
From Open Source to Open API with RestletFrom Open Source to Open API with Restlet
From Open Source to Open API with RestletRestlet
 
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 APIs in Action (in French)
Web APIs in Action (in French)Web APIs in Action (in French)
Web APIs in Action (in French)Restlet
 
From Web APIs to Cross-Device Web Sites
From Web APIs to Cross-Device Web SitesFrom Web APIs to Cross-Device Web Sites
From Web APIs to Cross-Device Web SitesRestlet
 

More from Restlet (19)

APIDays - API Design Workshop
APIDays - API Design WorkshopAPIDays - API Design Workshop
APIDays - API Design Workshop
 
APIStrat Open API Workshop
APIStrat Open API WorkshopAPIStrat Open API Workshop
APIStrat Open API Workshop
 
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
 
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
 
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...
 
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 - How to Build Your Web API
APIdays Paris - How to Build Your Web APIAPIdays Paris - How to Build Your Web API
APIdays Paris - How to Build Your Web API
 
Web APIs, the New Language Frontier
Web APIs, the New Language FrontierWeb APIs, the New Language Frontier
Web APIs, the New Language Frontier
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)
 
Deploy a web API in 15'
Deploy a web API in 15'Deploy a web API in 15'
Deploy a web API in 15'
 
From Open Source to Open API with Restlet
From Open Source to Open API with RestletFrom Open Source to Open API with Restlet
From Open Source to Open API with Restlet
 
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 APIs in Action (in French)
Web APIs in Action (in French)Web APIs in Action (in French)
Web APIs in Action (in French)
 
From Web APIs to Cross-Device Web Sites
From Web APIs to Cross-Device Web SitesFrom Web APIs to Cross-Device Web Sites
From Web APIs to Cross-Device Web Sites
 

Recently uploaded

Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 

Recently uploaded (20)

Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 

GlueCon 2015 - How REST APIs can glue all types of devices together

  • 1.
  • 2. About me ● Created Restlet Framework, first REST framework in 2004 ● Contributor to “RESTful Web Services” (O’Reilly, 2007) ● Member of the JAX-RS 1.0 expert group (2007 - 2009) ● Co-author of “Restlet in Action” (Manning, 2012) ● InfoQ editor covering Web APIs since 2014 ● CEO & Founder of Restlet, Web API platform vendor
  • 3. The present of APIs Glue more and more devices Figuring out API development workflows
  • 4. One REST API to glue them all? Data Services REST API
  • 5. 1 | Code-first & Back-end Driven Back-end team Front-end teams API Impl SDK Client A SDK Client B ... ... 3 1 2
  • 6. 2 | API-first & Back-end Driven Back-end team Front-end teams Impl SDK Client A SDK Client B ... ... 2 1 Mock 2 API
  • 7. 3 | Collaborative API-first Back-end team Front-end teams Impl SDK Client A SDK Client B ... ... 2 1 Mock 2 API
  • 8. Why this won’t work? ● #1: Different technical capabilities ○ small screen, big screen, no screen ○ input and output schemes ○ sensors collecting contextual info ○ internet connectivity ● #2: Users expect unique experiences ○ care-fully use device capabilities ○ apps aware of usage context ○ consistent with device UX style ● #3: Different release cycles ○ support new devices ○ upgrade existing one ○ prototype, beta phase, GA ○ varying SLAs → Learn from the Netflix API experience http://techblog.netflix.com/search/label/api
  • 9. An API for each type of device UX API UX API UX API UX API UX API UX API UX API ServicesData
  • 10. ● Reduce page latency ○ group several API calls together based on UI structure ○ adapt formats for faster parsing (JSON, PList, binary, etc.) ○ use fastest protocols (HTTP 1.1 / 2.0, MQTT, etc.) ● Improve security ○ support unique authentication schemes (Apple TouchID) ● Facilitate development process ○ with separate front-end teams ○ more flexible release cycles ● Adjust Service Level Agreements (SLAs) ○ based on the customer value and business model ● Make sense for all channels, not only devices → Edge APIs ○ Internal IT, key partners, open community Benefits of UX APIs
  • 11. 4 | API-first & Front-end Driven Back-end team Front-end teams Impl SDK Client A SDK Client B ... ... 2 1 Mock 2 API Mock API Impl Mock API Impl ServicesData
  • 12. 5 | API-first & Front-end Owned Back-end team Front-end teams Impl SDK Client A SDK Client B ... ... 2 1 Mock 2 API Mock API Impl Mock API Impl Data Services
  • 13. Scratching Edge APIs surface API Platform Micro APIs (domain data & logic) Composite APIs (domain services) Experience APIs (backends) User Interfaces (frontends) Open APIs (public) End-users Micro APIs (external SaaS) Partner devs ● You will find ... other APIs! ● Exposing data and services ○ micro-services ○ micro-data sets ○ internal & external ● How to create, deploy & manage so many APIs? → API platforms to the rescue
  • 14. 1 | Homegrown API platforms ● Viable for high-tech companies only ● Netflix API platform ○ Runs on top of AWS and Cassandra ○ “In some ways, the API is now like an internal PaaS system” ● Netflix open source components ○ Nicobar - Dynamic Scripting and Module Loader Framework for Java ○ Asgard - Web UI for application deployments and cloud mgt in AWS ○ Zuul - Edge service for dynamic routing, monitoring, resiliency, security ○ Ribbon - Interprocess comm. lib. with built in software load balancers. ○ Archaius - Library for configuration management API ○ Turbine - SSE Stream Aggregator
  • 15. 2 | Enterprise API Platforms ● Mature solutions from the first wave of API vendors ○ Apigee is the leader with recent IPO ○ Mashery now at Intel has been the pioneer ○ WS02, StrongLoop and a few others have an open source angle ○ Axway, Boomi, Mulesoft, Tibco and others come from the integration space ● Often act as gateways or proxies ○ between internal IT and connected devices ○ on-premise deployment mostly with hybrid cloud capabilities depending on actors ○ often limited API lifecycle support to API management ● Tend to be complex and expensive ○ esp. for smaller organizations
  • 16. 3 | API PaaS ● More recent solutions aimed at ○ the long tail of API providers and consumers ○ small and medium businesses ○ citizen integrators within larger organization ● Unique challenges & benefits ○ solutions covering more of API lifecycle than just API management ○ self service products requiring great UX ○ cost-effective pricing based on actual API usage ○ complex architectures for high-density multi-tenancy ○ includes API hosting and operations capabilities
  • 17. The Future of APIs From Web Pages to Mobile Apps and IoT
  • 18. ● Application of hypermedia for direct consumption by end-users ○ based on HTML, CSS, Images, Videos, JavaScript ○ on top of Web infrastructure: HTTP, URI and REST ○ 1 web API for all web sites → 1 client needed (browser) 1 | Web of Documents → Hypertext HTML HTML HTML HTML HTML HTML Web Site #1 Web Site #2
  • 19. ● Application of hypermedia for consumption by machines ○ based on RDF, JSON-LD, OData, Hypermedia APIs (HAL, ALPS) ○ on top of Web infrastructure: HTTP, URI and REST ○ few different web APIs, allowing reuse of clients (data browsers) 2 | Web of Data → Hyperdata Web Site #1 Web Site #2 RDF RDF RDF RDF RDF RDF
  • 20. ● Application of hypermedia for developers at design-time ○ based on APIs.json, RAML, Swagger, API Blueprint, API Commons ○ on top of Web infrastructure: HTTP, URI and REST ○ exponential growth of APIs x versions factor 3 | Web of APIs → HyperAPI API API API API API API Mobile App #1 Mobile App #2
  • 21. ● 1 | API discoverability ○ curation, selection ○ technical consumption ○ promotion ● 2 | API crafting ○ web IDEs ○ hyperAPI assembly ○ semantic data mapping ● 3 | API delivery ○ low latency ○ high availability ○ elastic scalability ○ pervasive security → A whole new API Stack Our API challenges