SlideShare a Scribd company logo
1 of 27
Download to read offline
DOCUMENT AND MANAGE
YOUR JAVA-BASED WEB API WITH APISPARK
Full stack PaaS for web APIs
http://apispark.com
May 27, 2014
Web API framework for Java
http://restlet.com
PRESENTER
ENTREPRENEUR AND WEB API EXPERT
Jérôme LOUVEL
 CEO of Restlet
 12 years of experience in software (EU and US)
 Restlet Framework creator (2005)
 JAX-RS 1.0 expert in JCP (JSR-311)
 Contributor to “RESTful Web Services” (O’Reilly)
 Co-author of “Restlet in Action” (Manning)
Contact
 jlouvel@restlet.com
 Twitter : @jlouvel
 Blog : blog.restlet.com
AGENDA
 1) Overview of Restlet Platform (10’)
 2) Documenting and managing your Java-based
web API (20’)
 3) Hands-on lab (20’)
– Sign in to APISpark
– Craft a custom web API
– Generate « API Commons » manifest
– Display Swagger UI for your web API
1) OVERVIEW OF RESTLET PLATFORM
WEB API PROJECT
TYPICAL LIFE CYCLE
Create Host Manage Use Promote
1) Do It Yourself (DIY)
2) Platform as a Service (PaaS)
WEB API FRAMEWORK FOR JAVA
OPEN SOURCE SINCE 2005
6 editions
44 extensions
1,5 M downloads
100 000 developers
Version 2.2.0 launched
in March 2014
Covers our ROA/D
API guidelines
Consistent client & server API
Powerful routing & filtering
Comprehensive web security
Aligned with REST & HTTP
Fast & scalable
RESTLET FRAMEWORK
SIX CONSISTENT EDITIONS, CLIENT & SERVER JAVA API
APISPARK
FULL STACK PAAS FOR WEB APIS
Send us your feed-back
and help us making it the
best PaaS for Web APIs !
FEATURES 1/2
All-in-one platform for Web APIs
 Create your Web API quickly
– 5 minutes scenario based on existing API template (e.g. blog API)
– Few hours scenario from scratch or by customizing an existing API template
(from the APIs catalog)
– Open source foundation (Restlet Framework) , the full code can be exported
 Integrated hosting
– Scalable and reactive backend (low latency, integrated management)
– Permanent availability 24/24h et 7/7d (no maintenance window) and
secured (SSL confidentiality, precise management of authorizations)
 Automatic versioning
– Manage several versions of your APIs at the same time at the same cost
– Free to update your APIs with no impact on current users
– Simple and clear lifecycle (draft, published, deprecated, archived, removed)
All-in-one platform for Web APIs
 Automatic documentation
– Always up-to-date
– Test your API live on the Net
– Easy export in PDF and HTML
 Clients kits generation
– Ease the use of your API
– Support of most popular platforms (iPhone/iPad, Android, Java, .NET, PHP,
Python)
 Community management
– Manage the users and their signins
– Private or public communities
– Send publics announcements or private messages
– Integration with social networks
FEATURES 2/2
COMPOSING APISPARK CELLS
Entity Store File Store
Custom API
Java iOS JS
HTTP HTTP
STRUCTURE OF WEB APIS
API Contract
Implementation
Runtime
Web API
template
Complete
web API
HTTP HTTPS
2) DOCUMENTING & MANAGING
Your Java-based web API
CODE YOUR WEB API
IN JAVA LANGUAGE
JAX-RS API
Restlet API
Spring REST
Swagger
annotations
Bean Validation
annotations
Google Cloud
Endpoints API
1. Select
a main
Java API
Java
source
code
3. Write your
Java code
JAXB
annotations
2. Add extra
annotation
APIs
Jackson
annotations
RESTful
Web API
4. Get your
web API
DOCUMENT YOUR WEB API
IN JAVA LANGUAGE
RESTful
Web API
Web API
definition
1. Code your
web API
(iterate)
2. Introspect
source code
3. Complete
API definition
manually
Intro-
spector
4. Select
target API
specs
RAML
API
Blueprint
Swagger
Google API
Discovery
WADL
DON’T GET LOCKED-IN
API DEFINITION PORTABILITY & COPYRIGHT
– No clear winner at this stage
 translate your API definition between various languages
 use the best of each language ecosystem (tooling,
directory)
– Take API copyright seriously (now)
 play nice in the API economy: open your API definition
– select a Creative Commons or Open Source license
– publish to the « API Commons »
 verify the legal terms of the APIs you depend on
DEMONSTRATION
YOUR DASHBOARD
LAUNCH INTROSPECTOR TOOL
SUPPORTS RESTLET API, NEW JAVA APIS COMING
1) Launch from
your IDE or the
command line
2) Web API
definition pushed
to APISpark
DISPLAY YOUR WEB API DOC
RELAUNCH INTROSPECTOR TO KEEP IN SYNC
CHECK OUT API COMMONS TAB
WEB API MANIFEST BASED ON SWAGGER
CHECK OUT THE HOSTED SWAGGER UI
EMBEDDED IN YOUR WEB SITE
WHAT WE ARE WORKING ON!
 Restlet Framework (open source)
– introspect all main Java APIs (JAX-RS, Spring REST, etc.)
– import & export main API languages
– generate Client SDKs, Server skeletons & HTML
 command line, based on APISpark capabilities
 APISpark (full stack PaaS)
– complete integration of Swagger tool chain (optimize)
– embed additional tool chains
– GitHub synchronization
3) HANDS-ON LAB
YOUR STEPS
1. Sign in to APISpark
2. Craft a custom web API
3. Generate « API Commons » manifest
4. Display Swagger UI for your web API
 Follow this tutorial if you have a Restlet API
– http://restlet.com/learn/guide/2.3/extensions/apispark
– explains how to run the Restlet Introspector
KEEP IN TOUCH!
http://restlet.com
Twitter: @jlouvel
jlouvel@restlet.com
Restlet Platform
PaaS and Web API integration
Interview with Daniel Jacobson (Netflix)

More Related Content

What's hot

Product Release Webinar- WSO2 Developer Studio 3.5
Product Release Webinar- WSO2 Developer Studio 3.5Product Release Webinar- WSO2 Developer Studio 3.5
Product Release Webinar- WSO2 Developer Studio 3.5
WSO2
 
Instruments ruby on rails
Instruments ruby on railsInstruments ruby on rails
Instruments ruby on rails
pmashchak
 

What's hot (20)

What's New in Mulesoft Anypoint 7.4
What's New in Mulesoft Anypoint 7.4What's New in Mulesoft Anypoint 7.4
What's New in Mulesoft Anypoint 7.4
 
MesosCon 2017 - OpenWhisk as an Apache Mesos Framework
MesosCon 2017 - OpenWhisk as an Apache Mesos FrameworkMesosCon 2017 - OpenWhisk as an Apache Mesos Framework
MesosCon 2017 - OpenWhisk as an Apache Mesos Framework
 
Sync is hard: building offline-first Android apps from the ground up
Sync is hard: building offline-first Android apps from the ground up	Sync is hard: building offline-first Android apps from the ground up
Sync is hard: building offline-first Android apps from the ground up
 
OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)
 
Product Release Webinar- WSO2 Developer Studio 3.5
Product Release Webinar- WSO2 Developer Studio 3.5Product Release Webinar- WSO2 Developer Studio 3.5
Product Release Webinar- WSO2 Developer Studio 3.5
 
Introduction to OWIN
Introduction to OWINIntroduction to OWIN
Introduction to OWIN
 
Tales from the OSGi trenches
Tales from the OSGi trenchesTales from the OSGi trenches
Tales from the OSGi trenches
 
OWIN and Katana Project - Not Only IIS - NoIIS
OWIN and Katana Project - Not Only IIS - NoIISOWIN and Katana Project - Not Only IIS - NoIIS
OWIN and Katana Project - Not Only IIS - NoIIS
 
OWIN
OWINOWIN
OWIN
 
Laravel 5.4
Laravel 5.4 Laravel 5.4
Laravel 5.4
 
Owin and katana
Owin and katanaOwin and katana
Owin and katana
 
Workshop/Tutorial WSO2 Micro Services Server
Workshop/Tutorial WSO2 Micro Services ServerWorkshop/Tutorial WSO2 Micro Services Server
Workshop/Tutorial WSO2 Micro Services Server
 
Ahmedabad MuleSoft Meetup #1
Ahmedabad MuleSoft Meetup #1Ahmedabad MuleSoft Meetup #1
Ahmedabad MuleSoft Meetup #1
 
Owin and Katana
Owin and KatanaOwin and Katana
Owin and Katana
 
Building reusable components as micro frontends with glimmer js and webcompo...
Building reusable components as micro frontends  with glimmer js and webcompo...Building reusable components as micro frontends  with glimmer js and webcompo...
Building reusable components as micro frontends with glimmer js and webcompo...
 
Chef - Administration for programmers
Chef - Administration for programmersChef - Administration for programmers
Chef - Administration for programmers
 
Owin from spec to application
Owin from spec to applicationOwin from spec to application
Owin from spec to application
 
Laravel 5 New Features
Laravel 5 New FeaturesLaravel 5 New Features
Laravel 5 New Features
 
Instruments ruby on rails
Instruments ruby on railsInstruments ruby on rails
Instruments ruby on rails
 
Apache Sling Scripting Reloaded
Apache Sling Scripting ReloadedApache Sling Scripting Reloaded
Apache Sling Scripting Reloaded
 

Viewers also liked

LWB486 Week 4 Copyright
LWB486 Week 4 CopyrightLWB486 Week 4 Copyright
LWB486 Week 4 Copyright
Peter Black
 
Ignite Paris 2009 - Is World of Warcraft the best leadership training solution?
Ignite Paris 2009 - Is World of Warcraft the best leadership training solution?Ignite Paris 2009 - Is World of Warcraft the best leadership training solution?
Ignite Paris 2009 - Is World of Warcraft the best leadership training solution?
Charles Nouyrit
 
Industrialization Powerpoint
Industrialization PowerpointIndustrialization Powerpoint
Industrialization Powerpoint
acrumlish
 
Industrialization Powerpoint
Industrialization PowerpointIndustrialization Powerpoint
Industrialization Powerpoint
acrumlish
 
TARANCUEÑA 08
TARANCUEÑA 08TARANCUEÑA 08
TARANCUEÑA 08
fiep
 

Viewers also liked (20)

Build, host and manage your custom API in less than an hour
Build, host and manage your custom API in less than an hourBuild, host and manage your custom API in less than an hour
Build, host and manage your custom API in less than an hour
 
Apostila massa folhada_v3_aprovado
Apostila massa folhada_v3_aprovadoApostila massa folhada_v3_aprovado
Apostila massa folhada_v3_aprovado
 
LWB486 Week 4 Copyright
LWB486 Week 4 CopyrightLWB486 Week 4 Copyright
LWB486 Week 4 Copyright
 
Science is like a child looking at a butterfly
Science is like a child looking at a butterflyScience is like a child looking at a butterfly
Science is like a child looking at a butterfly
 
Ignite Paris 2009 - Is World of Warcraft the best leadership training solution?
Ignite Paris 2009 - Is World of Warcraft the best leadership training solution?Ignite Paris 2009 - Is World of Warcraft the best leadership training solution?
Ignite Paris 2009 - Is World of Warcraft the best leadership training solution?
 
Modern Times
Modern TimesModern Times
Modern Times
 
Industrialization Powerpoint
Industrialization PowerpointIndustrialization Powerpoint
Industrialization Powerpoint
 
Industrialization Powerpoint
Industrialization PowerpointIndustrialization Powerpoint
Industrialization Powerpoint
 
NTRA Ideas
NTRA IdeasNTRA Ideas
NTRA Ideas
 
Pinned Sites in Internet Explorer 9
Pinned Sites in Internet Explorer 9Pinned Sites in Internet Explorer 9
Pinned Sites in Internet Explorer 9
 
Бит.суперагнет мобильное приложение для автоматизации выездных сотрудников
Бит.суперагнет   мобильное приложение для автоматизации выездных сотрудниковБит.суперагнет   мобильное приложение для автоматизации выездных сотрудников
Бит.суперагнет мобильное приложение для автоматизации выездных сотрудников
 
Mídias Sociais: uma visão 360º da comunicação online
Mídias Sociais: uma visão 360º da comunicação onlineMídias Sociais: uma visão 360º da comunicação online
Mídias Sociais: uma visão 360º da comunicação online
 
Facebook and Twitter in libraries
Facebook and Twitter in librariesFacebook and Twitter in libraries
Facebook and Twitter in libraries
 
Kenang2an jamaah haji malika 2016
Kenang2an jamaah haji malika 2016Kenang2an jamaah haji malika 2016
Kenang2an jamaah haji malika 2016
 
Vertsol Theses3 Powerpoint Slides
Vertsol Theses3   Powerpoint SlidesVertsol Theses3   Powerpoint Slides
Vertsol Theses3 Powerpoint Slides
 
TARANCUEÑA 08
TARANCUEÑA 08TARANCUEÑA 08
TARANCUEÑA 08
 
Sidds Slideshow
Sidds SlideshowSidds Slideshow
Sidds Slideshow
 
Compa 2009 Giurus
Compa 2009 GiurusCompa 2009 Giurus
Compa 2009 Giurus
 
Libanywhere
LibanywhereLibanywhere
Libanywhere
 
22 28
22 2822 28
22 28
 

Similar to 20140527 - APIcon SF - Workshop #2 - Document and manage Java-based web APIs

WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected BusinessWSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2
 
full-stack web developer (6).pdf
full-stack web developer (6).pdffull-stack web developer (6).pdf
full-stack web developer (6).pdf
ShubhamSaini950258
 
내꺼내꺼
내꺼내꺼내꺼내꺼
내꺼내꺼
misty915
 

Similar to 20140527 - APIcon SF - Workshop #2 - Document and manage Java-based web APIs (20)

RESTful web APIs (build, document, manage)
RESTful web APIs (build, document, manage)RESTful web APIs (build, document, manage)
RESTful web APIs (build, document, manage)
 
LAJUG Napster REST API
LAJUG Napster REST APILAJUG Napster REST API
LAJUG Napster REST API
 
Oracle API Gateway
Oracle API GatewayOracle API Gateway
Oracle API Gateway
 
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
 
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
 
Building RIA Apps with Silverlight
Building RIA Apps with SilverlightBuilding RIA Apps with Silverlight
Building RIA Apps with Silverlight
 
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected BusinessWSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
 
WSO2 AppDev platform
WSO2 AppDev platformWSO2 AppDev platform
WSO2 AppDev platform
 
The next step from Microsoft - Vnext (Srdjan Poznic)
The next step from Microsoft - Vnext (Srdjan Poznic)The next step from Microsoft - Vnext (Srdjan Poznic)
The next step from Microsoft - Vnext (Srdjan Poznic)
 
2016 06 - design your api management strategy - axway - Api Management
2016 06 - design your api management strategy - axway - Api Management2016 06 - design your api management strategy - axway - Api Management
2016 06 - design your api management strategy - axway - Api Management
 
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
 
IPMI is dead, Long live Redfish
IPMI is dead, Long live RedfishIPMI is dead, Long live Redfish
IPMI is dead, Long live Redfish
 
Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6
 
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
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devs
 
full-stack web developer (6).pdf
full-stack web developer (6).pdffull-stack web developer (6).pdf
full-stack web developer (6).pdf
 
Past, Present and Future of APIs of Mobile and Web Apps
Past, Present and Future of APIs of Mobile and Web AppsPast, Present and Future of APIs of Mobile and Web Apps
Past, Present and Future of APIs of Mobile and Web Apps
 
내꺼내꺼
내꺼내꺼내꺼내꺼
내꺼내꺼
 
Deploy and Access WebSphere Liberty and StrongLoop REST Endpoints on IBM Bluemix
Deploy and Access WebSphere Liberty and StrongLoop REST Endpoints on IBM BluemixDeploy and Access WebSphere Liberty and StrongLoop REST Endpoints on IBM Bluemix
Deploy and Access WebSphere Liberty and StrongLoop REST Endpoints on IBM Bluemix
 
Apache Flex: Overview
Apache Flex: OverviewApache Flex: Overview
Apache Flex: Overview
 

More from Jerome Louvel

More from Jerome Louvel (8)

DevOps D-Day - Streamline DevOps workflows with APIs
DevOps D-Day - Streamline DevOps workflows with APIsDevOps D-Day - Streamline DevOps workflows with APIs
DevOps D-Day - Streamline DevOps workflows with APIs
 
Restlet Framework NG
Restlet Framework NGRestlet Framework NG
Restlet Framework NG
 
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
 
API Strategy & Practice - API Discovery, Hubs and IDEs
API Strategy & Practice - API Discovery, Hubs and IDEsAPI Strategy & Practice - API Discovery, Hubs and IDEs
API Strategy & Practice - API Discovery, Hubs and IDEs
 
Web APIs, the New Language Frontier
Web APIs, the New Language FrontierWeb APIs, the New Language Frontier
Web APIs, the New Language Frontier
 
APIdays San Francisco, 06/22/2013
APIdays San Francisco, 06/22/2013APIdays San Francisco, 06/22/2013
APIdays San Francisco, 06/22/2013
 
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
 
Restlet et le multi-plateforme
Restlet et le multi-plateformeRestlet et le multi-plateforme
Restlet et le multi-plateforme
 

Recently uploaded

Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
Abortion Pill Prices Boksburg [(+27832195400*)] 🏥 Women's Abortion Clinic in ...
Abortion Pill Prices Boksburg [(+27832195400*)] 🏥 Women's Abortion Clinic in ...Abortion Pill Prices Boksburg [(+27832195400*)] 🏥 Women's Abortion Clinic in ...
Abortion Pill Prices Boksburg [(+27832195400*)] 🏥 Women's Abortion Clinic in ...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 

Recently uploaded (20)

Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
Abortion Pill Prices Boksburg [(+27832195400*)] 🏥 Women's Abortion Clinic in ...
Abortion Pill Prices Boksburg [(+27832195400*)] 🏥 Women's Abortion Clinic in ...Abortion Pill Prices Boksburg [(+27832195400*)] 🏥 Women's Abortion Clinic in ...
Abortion Pill Prices Boksburg [(+27832195400*)] 🏥 Women's Abortion Clinic in ...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 

20140527 - APIcon SF - Workshop #2 - Document and manage Java-based web APIs

  • 1. DOCUMENT AND MANAGE YOUR JAVA-BASED WEB API WITH APISPARK Full stack PaaS for web APIs http://apispark.com May 27, 2014 Web API framework for Java http://restlet.com
  • 2. PRESENTER ENTREPRENEUR AND WEB API EXPERT Jérôme LOUVEL  CEO of Restlet  12 years of experience in software (EU and US)  Restlet Framework creator (2005)  JAX-RS 1.0 expert in JCP (JSR-311)  Contributor to “RESTful Web Services” (O’Reilly)  Co-author of “Restlet in Action” (Manning) Contact  jlouvel@restlet.com  Twitter : @jlouvel  Blog : blog.restlet.com
  • 3. AGENDA  1) Overview of Restlet Platform (10’)  2) Documenting and managing your Java-based web API (20’)  3) Hands-on lab (20’) – Sign in to APISpark – Craft a custom web API – Generate « API Commons » manifest – Display Swagger UI for your web API
  • 4. 1) OVERVIEW OF RESTLET PLATFORM
  • 5. WEB API PROJECT TYPICAL LIFE CYCLE Create Host Manage Use Promote 1) Do It Yourself (DIY) 2) Platform as a Service (PaaS)
  • 6. WEB API FRAMEWORK FOR JAVA OPEN SOURCE SINCE 2005 6 editions 44 extensions 1,5 M downloads 100 000 developers Version 2.2.0 launched in March 2014 Covers our ROA/D API guidelines Consistent client & server API Powerful routing & filtering Comprehensive web security Aligned with REST & HTTP Fast & scalable
  • 7. RESTLET FRAMEWORK SIX CONSISTENT EDITIONS, CLIENT & SERVER JAVA API
  • 8. APISPARK FULL STACK PAAS FOR WEB APIS Send us your feed-back and help us making it the best PaaS for Web APIs !
  • 9. FEATURES 1/2 All-in-one platform for Web APIs  Create your Web API quickly – 5 minutes scenario based on existing API template (e.g. blog API) – Few hours scenario from scratch or by customizing an existing API template (from the APIs catalog) – Open source foundation (Restlet Framework) , the full code can be exported  Integrated hosting – Scalable and reactive backend (low latency, integrated management) – Permanent availability 24/24h et 7/7d (no maintenance window) and secured (SSL confidentiality, precise management of authorizations)  Automatic versioning – Manage several versions of your APIs at the same time at the same cost – Free to update your APIs with no impact on current users – Simple and clear lifecycle (draft, published, deprecated, archived, removed)
  • 10. All-in-one platform for Web APIs  Automatic documentation – Always up-to-date – Test your API live on the Net – Easy export in PDF and HTML  Clients kits generation – Ease the use of your API – Support of most popular platforms (iPhone/iPad, Android, Java, .NET, PHP, Python)  Community management – Manage the users and their signins – Private or public communities – Send publics announcements or private messages – Integration with social networks FEATURES 2/2
  • 11. COMPOSING APISPARK CELLS Entity Store File Store Custom API Java iOS JS HTTP HTTP
  • 12. STRUCTURE OF WEB APIS API Contract Implementation Runtime Web API template Complete web API HTTP HTTPS
  • 13. 2) DOCUMENTING & MANAGING Your Java-based web API
  • 14. CODE YOUR WEB API IN JAVA LANGUAGE JAX-RS API Restlet API Spring REST Swagger annotations Bean Validation annotations Google Cloud Endpoints API 1. Select a main Java API Java source code 3. Write your Java code JAXB annotations 2. Add extra annotation APIs Jackson annotations RESTful Web API 4. Get your web API
  • 15. DOCUMENT YOUR WEB API IN JAVA LANGUAGE RESTful Web API Web API definition 1. Code your web API (iterate) 2. Introspect source code 3. Complete API definition manually Intro- spector 4. Select target API specs RAML API Blueprint Swagger Google API Discovery WADL
  • 16. DON’T GET LOCKED-IN API DEFINITION PORTABILITY & COPYRIGHT – No clear winner at this stage  translate your API definition between various languages  use the best of each language ecosystem (tooling, directory) – Take API copyright seriously (now)  play nice in the API economy: open your API definition – select a Creative Commons or Open Source license – publish to the « API Commons »  verify the legal terms of the APIs you depend on
  • 19. LAUNCH INTROSPECTOR TOOL SUPPORTS RESTLET API, NEW JAVA APIS COMING 1) Launch from your IDE or the command line 2) Web API definition pushed to APISpark
  • 20. DISPLAY YOUR WEB API DOC RELAUNCH INTROSPECTOR TO KEEP IN SYNC
  • 21. CHECK OUT API COMMONS TAB WEB API MANIFEST BASED ON SWAGGER
  • 22.
  • 23. CHECK OUT THE HOSTED SWAGGER UI EMBEDDED IN YOUR WEB SITE
  • 24. WHAT WE ARE WORKING ON!  Restlet Framework (open source) – introspect all main Java APIs (JAX-RS, Spring REST, etc.) – import & export main API languages – generate Client SDKs, Server skeletons & HTML  command line, based on APISpark capabilities  APISpark (full stack PaaS) – complete integration of Swagger tool chain (optimize) – embed additional tool chains – GitHub synchronization
  • 26. YOUR STEPS 1. Sign in to APISpark 2. Craft a custom web API 3. Generate « API Commons » manifest 4. Display Swagger UI for your web API  Follow this tutorial if you have a Restlet API – http://restlet.com/learn/guide/2.3/extensions/apispark – explains how to run the Restlet Introspector
  • 27. KEEP IN TOUCH! http://restlet.com Twitter: @jlouvel jlouvel@restlet.com Restlet Platform PaaS and Web API integration Interview with Daniel Jacobson (Netflix)