Upload
isamauny
View
199
Download
0
Embed Size (px)
DESCRIPTION
Presentation from OpenSource Expo - Why APIs ? - Impl recommendations - Analytics
Citation preview
Sub$tle text
Last Updated: June 2014
VP, Product Management Isabelle Mauny
APIs Design and Development
Thursday, June 26, 14
2
About the speaker...
๏ French na)ve
๏ Living in Spain
๏ Works mostly with Sri Lanka
๏ 18 years of IBM, 4 years in startups
๏ Managing the overall WSO2 porDolio
๏ Linux command line user
Thursday, June 26, 14
Many APIs !
3Thursday, June 26, 14
4Thursday, June 26, 14
Why APIs ?
5
Mobile Apps Development
Marke)ng channel
Find new customers
Drive Innova)on
Drive Internal Projects
Integra)on with Partners
Sales Channel
New Product
Thursday, June 26, 14
Ok, I am convinced... Now what ?
6Thursday, June 26, 14
7
๏ Service deals with implementa)on
๏ API deals with subscrip)on (consumer)
๏ Two very dis)nct life cycles !
๏ You don’t need the service to create the API...
Services and APIs
Thursday, June 26, 14
8
Building a Managed API
๏ Crea)ng APIs (interface, docs, samples,etc.)
๏ Adver)sing APIs
๏ Making APIs subscribe-‐able by consumers
๏ Associa)ng SLAs
๏ Securing APIs
๏ Mone)za)on and Analy)cs
Thursday, June 26, 14
Magic API triangle
9
RESTful
JSONOAuth
Thursday, June 26, 14
SOAP vs. REST
10Thursday, June 26, 14
11Thursday, June 26, 14
12Thursday, June 26, 14
JSON vs. XML
13Thursday, June 26, 14
OAuth2๏ Standard used by most API billionaires ( TwiWer, Facebook, Google for example)
๏ Covers authoriza)on to access selected informa)on/data (scopes)
๏ Authen)ca)on is covered using OpenID Connect protocol
๏ Mul)ple grant types: Authoriza)on code (below), client_creden)als, password, SAML , Kerberos)
14Thursday, June 26, 14
15
Need for API Versioning
๏ Need to support API evolu)on
๏ While Maintaining๏ Backward compa)bility -‐> Func)onality
๏ Rates/ThroWling agreements
๏ Different versioning mechanisms
Thursday, June 26, 14
16
API Versioning Strategies
๏ Version as a query parameter๏ NeUlix -‐ hWp://api.neDlix.com/catalog/)tles/series/70023522?v=1.5
๏ Google Data API -‐ “GData-‐Version: X.0″₺ or “v=X.0″₺
๏ Version as part of URI๏ Salesforce -‐ hWps://na1.salesforce.com/services/data/v20.0/sobjects/Account/
๏ TwiYer -‐ hWps://api.twiWer.com/1.1/statuses/men)ons_)meline.json
๏ Version as a date in URI๏ Twilio -‐ /2010-‐04-‐01/Accounts/{AccountSid}/Calls
๏ hWp://www.twilio.com/docs/api/rest/making-‐calls
๏ Version as a ๏ Custom HTTP Header
๏ Accept Header
Thursday, June 26, 14
17
You can’t manage what you can’t measure.
Thursday, June 26, 14
18
Why AnalyZcs and API Management are important together?
๏ Build confidence in the API model
๏ Understand your customer
๏ Help manage services and versions๏ e.g. understand when deprecated services can be re)red
๏ Plan beWer๏ Monitor the growth of aggregated API traffic
๏ Monitor the growth of specific apps
๏ Make sure you capture all events right from beginning of project.
Thursday, June 26, 14
Monitoring
19Thursday, June 26, 14
Deployment
20
API Management Layer
Services LayerApplications
Cloud Services
MediationLayer
Services Composition
Services Orchestration
Thursday, June 26, 14
Who is WSO2 ?
๏ Open Source Middleware PlaDorm Provider
๏ All products are released under Apache 2.0 License
๏ No community vs. Enterprise edi)ons
๏ Provides Integra)on, API Management and Mobile management products
๏ 350+ people in Sri Lanka, USA and Europe
21Thursday, June 26, 14
References๏ OAuth
๏ hWp://blog.facilelogin.com/2013/02/why-‐oauth-‐it-‐self-‐is-‐not-‐authen)ca)on.html
๏ hWp://openid.net/specs/openid-‐connect-‐basic-‐1_0.html
๏ WSO2 API Manager
๏ wso2.com/products/api-‐manager/
22Thursday, June 26, 14
Contact us !
Thursday, June 26, 14