SlideShare a Scribd company logo

What Makes a Great Open API?

What is it that turns an ordinary API into a great API? This talk from OSCON 2012 outlines the 5 "keys" to having a great API. Lots of examples from successful real-world APIs are used to highlight what matters. Also, this talk reveals 7 lesser known but very important "API secrets".

1 of 72
Download to read offline
What Makes a
Great Open API?
  John	
  Musser,	
  ProgrammableWeb	
  
             @johnmusser	
  
              OSCON	
  2012	
  
                       	
  
yea  rs	
  
7	
                  Is	
  
      ,000 	
  AP                 tor ies	
  
 6
               	
  new      s	
  s
   3   ,000
Why does having
  a great API
    matter?
API growth rate
Based on directory of 6,000 web APIs listed at ProgrammableWeb, May 2012
3	
  Months	
  


                                                                         4	
  Months	
  


                                                                     6	
  Months	
  


                                                              9	
  Months	
  


                                                  18	
  Months	
  


                      8	
  Years	
  




               API growth rate
Based on directory of 6,000 web APIs listed at ProgrammableWeb, May 2012
API Billionaires Club
  13 billion API calls / day (May 2011)
  5 billion API calls / day     (April 2010)



  5 billion API calls / day (October 2009)

  1.4 billion API calls / day (May 2012)

  1.1 billion API calls / day (April 2011)

  1 billion API calls / day (May 2012)
  1 billion API calls / day     (Q1 2012)


  1 billion API calls / day     (January 2012)
Apps & devices everywhere
5 Keys to a Great API
       Valuable
       Planned
       Flexible
       Managed
      Supported
5 Keys to a Great API
A valuable service (data, function, audience, )
                                             …




  A plan and a business model
Simple, flexible, easily adopted
    Managed and measured
    Great developer support
Each “key” has
      two sides:
business & technology
   (each supports the other)
Each “key” has
      two sides:
business & technology
       (today’s talk)
ET #1
      I SECR
A   P

       These are really,
       really hard to do
             right
5 Keys to a Great API
       Valuable
       Planned
       Flexible
       Managed
      Supported
Valuable Service
Valuable Data
Valuable Audience
Valuable Function
Valuable Marketplace
Valuable Access
ET #2
      I SECR
A   P

A very valuable service
 hides many API sins
the API Value Corollary
        The API value corollary



               A great API on a bad service
               is lipstick on a pig
5 Keys to a Great API
       Valuable
       Planned
       Flexible
       Managed
      Supported
5 Keys to a Great API
       Valuable
  Planned (designed)
       Flexible
       Managed
      Supported
Your first two design questions
  What is the goal of this API?
           (purpose)
   Who will be using this API?
          (audience)
You’ll make many design choices
What protocol(s) will I support?
                       What data format(s) to provide?
     How will I manage security?
                  Should I use an open source framework?
Which design patterns to use? Hmm, are there any?
                Oh, right, I need to do versioning too…
What’s the price of IBM?
POST	
  /GetStock	
  HTTP/1.1	
                      GET	
  h@p://example.org/stock/IBM	
  
Host:	
  www.example.org	
  
Content-­‐Type:	
  applicaRon/soap+xml	
  
	
  
<?xml	
  version="1.0"?>	
  
<soap:Envelope	
  
xmlns:soap="h@p://www.w3.org/2001/12/soap-­‐
envelope"	
  
soap:encodingStyle="h@p://www.w3.org/
2001/12/soap-­‐encoding">	
  
	
  
<soap:Body	
  xmlns:m="h@p://www.example.org/
stock">	
  
	
  	
  <m:GetStockPrice>	
  
	
  	
  	
  	
  <m:StockName>IBM</m:StockName>	
  
	
  	
  </m:GetStockPrice>	
  
</soap:Body>	
  
</soap:Envelope>	
  
SOAP                                             REST
POST	
  /GetStock	
  HTTP/1.1	
                      GET	
  h@p://example.org/stock/IBM	
  
Host:	
  www.example.org	
  
Content-­‐Type:	
  applicaRon/soap+xml	
  
	
  
<?xml	
  version="1.0"?>	
  
<soap:Envelope	
  
xmlns:soap="h@p://www.w3.org/2001/12/soap-­‐
envelope"	
  
soap:encodingStyle="h@p://www.w3.org/
2001/12/soap-­‐encoding">	
  
	
  
<soap:Body	
  xmlns:m="h@p://www.example.org/
stock">	
  
	
  	
  <m:GetStockPrice>	
  
	
  	
  	
  	
  <m:StockName>IBM</m:StockName>	
  
	
  	
  </m:GetStockPrice>	
  
</soap:Body>	
  
</soap:Envelope>	
  
API protocols and styles
Based on directory of 5,100 web APIs listed at ProgrammableWeb, February 2012
ET #3
      I SECR
A   P

  A great API doesn’t
        just ask
“am I RESTful enough? ”
Daniel Jacobson, Netflix Engineering Blog, July 9, 2012
Daniel Jacobson, Netflix Engineering Blog, July 9, 2012
another moral of that story is…



            A great API
          understands its
             audience
Your audience may <3 SOAP, really




  50+ finance APIs, 5 billion+ calls/month
Data format? It depends…
     XML, JSON, RSS, Atom, YAML,
 iCalendar, CSV, Serialized PHP, HTML,
 PNG, GeoRSS, vCard, Text, RDF, OPML,
     MediaRSS, VML, TV-Anytime,
 hCalendar, FOAF, XSPF, SQL, GML, CDF

       Data formats supported by APIs on ProgrammableWeb, May 2012
What’s the price of IBM?
{	
                                       <?xml	
  version="1.0"?>	
  
	
  	
  	
  	
  "symbol":	
  ”IBM",	
     <soap:Envelope	
  
	
  	
  	
  	
  "price":	
  94.72,	
      xmlns:soap="h@p://www.w3.org/2001/12/soap-­‐
                                          envelope"	
  
}	
  
                                          soap:encodingStyle="h@p://www.w3.org/
                                          2001/12/soap-­‐encoding">	
  
                                          	
  
                                          <soap:Body	
  xmlns:m="h@p://www.example.org/
                                          stock">	
  
                                          	
  	
  <m:GetStockPriceResponse>	
  
                                          	
  	
  	
  	
  <m:Price>34.5</m:Price>	
  
                                          	
  	
  </m:GetStockPriceResponse>	
  
                                          </soap:Body>	
  
                                          	
  
                                          </soap:Envelope>	
  
JSON                                             XML
{	
                                       <?xml	
  version="1.0"?>	
  
	
  	
  	
  	
  "symbol":	
  ”IBM",	
     <soap:Envelope	
  
	
  	
  	
  	
  "price":	
  94.72,	
      xmlns:soap="h@p://www.w3.org/2001/12/soap-­‐
                                          envelope"	
  
}	
  
                                          soap:encodingStyle="h@p://www.w3.org/
                                          2001/12/soap-­‐encoding">	
  
                                          	
  
                                          <soap:Body	
  xmlns:m="h@p://www.example.org/
                                          stock">	
  
                                          	
  	
  <m:GetStockPriceResponse>	
  
                                          	
  	
  	
  	
  <m:Price>34.5</m:Price>	
  
                                          	
  	
  </m:GetStockPriceResponse>	
  
                                          </soap:Body>	
  
                                          	
  
                                          </soap:Envelope>	
  
Percentage of REST APIs supporting JSON
      Based on directory of 5,800 web APIs listed at ProgrammableWeb, May 2012
Want to discuss API design?
       Check out API Craft
  http://groups.google.com/group/api-craft
5 Keys to a Great API
           Valuable
           Planned
   (simple) Flexible (easily adopted)

          Managed
         Supported
API simplicity continuum


Simple                               Complex



  “As simple as possible, but no simpler”
What makes an API flexible?
             Provides choices
        data format, protocol, version

         Gives developer control
   partial queries & updates, batch operations

         Offers advanced options
         webhooks, streaming, caching
What’s your TTFHW?
    Time To First “Hello World”
    aka: how long from zero to 60?
6 ways to accelerate TTFHW
#1) Make it clear what you do
#2) Offer “Free” or “Trial” API access
(or, even both free & trial)
#3) Fast, automated signup



             (so fast, you can even skip this
             step till you’re convinced…)
#4) Clear, accurate documentation
#5) Copious code samples
Stripe’s dashboard
                                     #6) Provide tools
                                              Google’s
                                              OAuth
                                              Playground
     Wordnik’s Swagger & Mashery’s I/O Docs



                                              Apigee’s API console

Twilio’s debugger
5 Keys to a Great API
       Valuable
       Planned
       Flexible
       Managed (and measured)
      Supported
What to manage & measure?
  Manage           Measure
  Security         Performance
  Key management   Developers and apps
  Monitoring       Quality
  Reporting        Marketing
  Scaling          Revenue
  Rate limiting    Volume
  Versioning       Trends
API versioning in REST
Where	
                        What	
               Who	
            Example	
  
Path	
  segment	
              Date	
               Twilio	
         /2010-­‐04-­‐01/…	
  
Path	
  segment	
              Number	
             Twi@er	
         /1/…	
  
Path	
  segment	
              ‘v’	
  +	
  Number	
   LinkedIn	
     /v1/…	
  
Query	
  string	
              Number	
             Google	
         ?v=2	
  
Custom	
  HTTP	
  header	
   Number	
               Google	
         GData-­‐Version:	
  2	
  
HTTP	
  Accept	
  header	
     Number	
             Github	
         applicaRon/vnd.github[.version]	
  
ET #4
      I SECR
A   P

It matters less how you
   version than you do
         version
API security baseline
Today:
SSL as option
OAuth 2.0 (one of the few API standards with traction)
Future:
SSL required (many major APIs moving to SSL only)
OpenID Connect (it’s very early today)
Great APIs get measured
       Great APIs get measured
Metrics that matter
 Traffic            Developers          Service
                     Total developers    Performance
  Total calls
                    Active developers     Availability
 Top methods
                      Top developers      Error rates
  Call chains
                       Trending apps     Code defects
 Quota faults
                         Retention


Marketing            Support            Business
Dev registrations                        Direct revenue
                      Support tickets   Indirect revenue
Dev portal funnel
                      Response times      Market share
 Traffic sources
                    Community metrics         Costs
 Event metrics
ET #5
      I SECR
A   P

    Great APIs prioritize
     what they want to
          measure
“The absence of
limitations is the
  enemy of art”
             Orson Welles
5 Keys to a Great API
       Valuable
       Planned
       Flexible
      Managed
      Supported
What makes an API supported?
      Great developer experience (DX)
  signup, guides, reference, SDKs, pricing, clear ToS

         Communication & community
     forum, blog, social media, email, app gallery

      Great support / evangelism teams
   active, engaged, listening, responding, at events
What makes an API supported?
    Great developer experience (DX)
              	
  
        A   nd reference, SDKs, pricing, legal
                               g	
  
   Signup, guides,
                      ythin
                er & communityr	
  
          ev
        Communication d	
  un        de
           c        ereemail, events, clear ToS
  forum, blog,ov media,
               social

                       /W
                           	
   teams
     Great supportHevangelism
                TF
             T listening, responding
       active, engaged,
developerexperience.org

                see also
developer-support-handbook.appspot.com
ET #6
      I SECR
A   P

     Great DX separates
     the best APIs from
          the rest
Covering your DX checklist
Does API design impact support?
         Let me count the ways…
 For example, look at Twilio’s error response
Community: a core tenet of great
open APIs and open source
5 Keys to a Great API
       Valuable e	
  
              e	
  m or
 A nd     on
      	
  Planned
    ing     …	
  
          Flexible
 th
      Managed
     Supported
Top 10 API worst practices
  10. Poor error handing
  9. REST APIs that ignore HTTP rules
  8. Exposing your raw underlying data model
  7. Security complexity
  6. Unexpected & undocumented releases
  5. Poor developer experience
  4. Expect an MVC framework ‘gives’ you a great API
  3. Assume if you build it they will come
  2. Inadequate support
  1. Poor documentation
#7
    P I SECR   ET     A great API
A
                     is a journey,
                   not a destination
Thank You

 QuesRons,	
  ideas,	
  comments?
john@programmableweb.com	
  
       @johnmusser	
  
                 	
  
Photo	
  credits	
  
Pig:	
  h@p://www.flickr.com/photos/babasteve/7341687640/	
  
Race	
  car:	
  h@p://www.flickr.com/photos/lim_lik_wei/3270522646/	
  
Stopwatch:	
  h@p://www.flickr.com/photos/purplemapish/3020016417/	
  
Hackers:	
  h@p://www.flickr.com/photos/hackny/5684846071/	
  
Winding	
  road:	
  h@p://www.flickr.com/photos/ma@hewthecoolguy/7518274258/	
  
	
  
	
  

Recommended

Introducing OpenAPI Version 3.1
Introducing OpenAPI Version 3.1Introducing OpenAPI Version 3.1
Introducing OpenAPI Version 3.1SmartBear
 
Building APIs with the OpenApi Spec
Building APIs with the OpenApi SpecBuilding APIs with the OpenApi Spec
Building APIs with the OpenApi SpecPedro J. Molina
 
How Netflix Is Solving Authorization Across Their Cloud
How Netflix Is Solving Authorization Across Their CloudHow Netflix Is Solving Authorization Across Their Cloud
How Netflix Is Solving Authorization Across Their CloudTorin Sandall
 
Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?John Musser
 
Apache Camel interview Questions and Answers
Apache Camel interview Questions and AnswersApache Camel interview Questions and Answers
Apache Camel interview Questions and Answersjeetendra mandal
 
API Management architect presentation
API Management architect presentationAPI Management architect presentation
API Management architect presentationsflynn073
 

More Related Content

What's hot

Top Trends in Application Architecture That Enable.pdf
Top Trends in Application Architecture That Enable.pdfTop Trends in Application Architecture That Enable.pdf
Top Trends in Application Architecture That Enable.pdfMantoshKumarSingh7
 
Web services and SOA
Web services and SOAWeb services and SOA
Web services and SOASubin Sugunan
 
[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf
[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf
[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdfOpen Source Consulting
 
The Rise Of Low-Code And No-Code Platforms And Its Future | SynergyTop
The Rise Of Low-Code And No-Code Platforms And Its Future | SynergyTopThe Rise Of Low-Code And No-Code Platforms And Its Future | SynergyTop
The Rise Of Low-Code And No-Code Platforms And Its Future | SynergyTopSynergyTop Inc
 
Rest and the hypermedia constraint
Rest and the hypermedia constraintRest and the hypermedia constraint
Rest and the hypermedia constraintInviqa
 
Microservices Architecture for e-Commerce
Microservices Architecture for e-CommerceMicroservices Architecture for e-Commerce
Microservices Architecture for e-CommerceDivante
 
An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST Ram Awadh Prasad, PMP
 
What is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | EdurekaWhat is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | EdurekaEdureka!
 
Micronaut: A new way to build microservices
Micronaut: A new way to build microservicesMicronaut: A new way to build microservices
Micronaut: A new way to build microservicesLuram Archanjo
 
Understanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple StepsUnderstanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple StepsTessa Mero
 
The WordPress Performance Team
The WordPress Performance TeamThe WordPress Performance Team
The WordPress Performance TeamFelix Arntz
 
Introduction to API
Introduction to APIIntroduction to API
Introduction to APIrajnishjha29
 
API Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation SlidesAPI Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation SlidesSlideTeam
 
9 reasons why low code no-code platform is the best choice for increasing ado...
9 reasons why low code no-code platform is the best choice for increasing ado...9 reasons why low code no-code platform is the best choice for increasing ado...
9 reasons why low code no-code platform is the best choice for increasing ado...Enterprise Bot
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web APIhabib_786
 

What's hot (20)

Top Trends in Application Architecture That Enable.pdf
Top Trends in Application Architecture That Enable.pdfTop Trends in Application Architecture That Enable.pdf
Top Trends in Application Architecture That Enable.pdf
 
API
APIAPI
API
 
Web services and SOA
Web services and SOAWeb services and SOA
Web services and SOA
 
[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf
[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf
[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf
 
Apigee Products Overview
Apigee Products OverviewApigee Products Overview
Apigee Products Overview
 
The Rise Of Low-Code And No-Code Platforms And Its Future | SynergyTop
The Rise Of Low-Code And No-Code Platforms And Its Future | SynergyTopThe Rise Of Low-Code And No-Code Platforms And Its Future | SynergyTop
The Rise Of Low-Code And No-Code Platforms And Its Future | SynergyTop
 
Rest and the hypermedia constraint
Rest and the hypermedia constraintRest and the hypermedia constraint
Rest and the hypermedia constraint
 
Web api
Web apiWeb api
Web api
 
Microservices Architecture for e-Commerce
Microservices Architecture for e-CommerceMicroservices Architecture for e-Commerce
Microservices Architecture for e-Commerce
 
An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST
 
What is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | EdurekaWhat is REST API? REST API Concepts and Examples | Edureka
What is REST API? REST API Concepts and Examples | Edureka
 
GRPC.pptx
GRPC.pptxGRPC.pptx
GRPC.pptx
 
Rest API
Rest APIRest API
Rest API
 
Micronaut: A new way to build microservices
Micronaut: A new way to build microservicesMicronaut: A new way to build microservices
Micronaut: A new way to build microservices
 
Understanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple StepsUnderstanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple Steps
 
The WordPress Performance Team
The WordPress Performance TeamThe WordPress Performance Team
The WordPress Performance Team
 
Introduction to API
Introduction to APIIntroduction to API
Introduction to API
 
API Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation SlidesAPI Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation Slides
 
9 reasons why low code no-code platform is the best choice for increasing ado...
9 reasons why low code no-code platform is the best choice for increasing ado...9 reasons why low code no-code platform is the best choice for increasing ado...
9 reasons why low code no-code platform is the best choice for increasing ado...
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web API
 

Similar to What Makes a Great Open API?

Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011John Musser
 
API Management Workshop (at Startupbootcamp Berlin)
API Management Workshop (at Startupbootcamp Berlin)API Management Workshop (at Startupbootcamp Berlin)
API Management Workshop (at Startupbootcamp Berlin)3scale
 
Open API Ecosystem Overview: December 2010
Open API Ecosystem Overview: December 2010Open API Ecosystem Overview: December 2010
Open API Ecosystem Overview: December 2010John Musser
 
APIdays Paris 2019 Backend is the new frontend by Antoine Cheron
APIdays Paris 2019 Backend is the new frontend by Antoine CheronAPIdays Paris 2019 Backend is the new frontend by Antoine Cheron
APIdays Paris 2019 Backend is the new frontend by Antoine Cheronapidays
 
LAJUG Napster REST API
LAJUG Napster REST APILAJUG Napster REST API
LAJUG Napster REST APIstephenbhadran
 
Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?John Musser
 
Building a Great Web API - Evan Cooke - QCON 2011
Building a Great Web API - Evan Cooke - QCON 2011Building a Great Web API - Evan Cooke - QCON 2011
Building a Great Web API - Evan Cooke - QCON 2011Twilio Inc
 
Building A Great API - Evan Cooke, Cloudstock, December 2010
Building A Great API - Evan Cooke, Cloudstock, December 2010Building A Great API - Evan Cooke, Cloudstock, December 2010
Building A Great API - Evan Cooke, Cloudstock, December 2010Twilio Inc
 
Open Ap Is State Of The Market
Open Ap Is State Of The MarketOpen Ap Is State Of The Market
Open Ap Is State Of The MarketConSanFrancisco123
 
Frequently asked MuleSoft Interview Questions and Answers from Techlightning
Frequently asked MuleSoft Interview Questions and Answers from TechlightningFrequently asked MuleSoft Interview Questions and Answers from Techlightning
Frequently asked MuleSoft Interview Questions and Answers from TechlightningArul ChristhuRaj Alphonse
 
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...Indus Khaitan
 
RESTful API-centric Universe
RESTful API-centric UniverseRESTful API-centric Universe
RESTful API-centric UniverseTihomir Opačić
 
Generating Insights from WSO2 API Manager Statistics
Generating Insights from WSO2 API Manager StatisticsGenerating Insights from WSO2 API Manager Statistics
Generating Insights from WSO2 API Manager StatisticsWSO2
 
Lambda@Edge를통한멀티리전기반글로벌트래픽길들이기::이상현::AWS Summit Seoul 2018
Lambda@Edge를통한멀티리전기반글로벌트래픽길들이기::이상현::AWS Summit Seoul 2018Lambda@Edge를통한멀티리전기반글로벌트래픽길들이기::이상현::AWS Summit Seoul 2018
Lambda@Edge를통한멀티리전기반글로벌트래픽길들이기::이상현::AWS Summit Seoul 2018Amazon Web Services Korea
 
Building Awesome APIs in Grails
Building Awesome APIs in GrailsBuilding Awesome APIs in Grails
Building Awesome APIs in Grailsclatimer
 
OpenAPI v.Next - Events, Alternative Schemas & the Road Ahead
OpenAPI v.Next - Events, Alternative Schemas & the Road AheadOpenAPI v.Next - Events, Alternative Schemas & the Road Ahead
OpenAPI v.Next - Events, Alternative Schemas & the Road AheadTed Epstein
 
API Athens Meetup - API standards 25-6-2014
API Athens Meetup - API standards   25-6-2014API Athens Meetup - API standards   25-6-2014
API Athens Meetup - API standards 25-6-2014Michael Petychakis
 

Similar to What Makes a Great Open API? (20)

What Makes a Great Open API?
What Makes a Great Open API?What Makes a Great Open API?
What Makes a Great Open API?
 
Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011
 
API Management Workshop (at Startupbootcamp Berlin)
API Management Workshop (at Startupbootcamp Berlin)API Management Workshop (at Startupbootcamp Berlin)
API Management Workshop (at Startupbootcamp Berlin)
 
Open API Ecosystem Overview: December 2010
Open API Ecosystem Overview: December 2010Open API Ecosystem Overview: December 2010
Open API Ecosystem Overview: December 2010
 
APIdays Paris 2019 Backend is the new frontend by Antoine Cheron
APIdays Paris 2019 Backend is the new frontend by Antoine CheronAPIdays Paris 2019 Backend is the new frontend by Antoine Cheron
APIdays Paris 2019 Backend is the new frontend by Antoine Cheron
 
LAJUG Napster REST API
LAJUG Napster REST APILAJUG Napster REST API
LAJUG Napster REST API
 
Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?
 
Building a Great Web API - Evan Cooke - QCON 2011
Building a Great Web API - Evan Cooke - QCON 2011Building a Great Web API - Evan Cooke - QCON 2011
Building a Great Web API - Evan Cooke - QCON 2011
 
Building A Great API - Evan Cooke, Cloudstock, December 2010
Building A Great API - Evan Cooke, Cloudstock, December 2010Building A Great API - Evan Cooke, Cloudstock, December 2010
Building A Great API - Evan Cooke, Cloudstock, December 2010
 
Open Ap Is State Of The Market
Open Ap Is State Of The MarketOpen Ap Is State Of The Market
Open Ap Is State Of The Market
 
Frequently asked MuleSoft Interview Questions and Answers from Techlightning
Frequently asked MuleSoft Interview Questions and Answers from TechlightningFrequently asked MuleSoft Interview Questions and Answers from Techlightning
Frequently asked MuleSoft Interview Questions and Answers from Techlightning
 
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
 
RESTful API-centric Universe
RESTful API-centric UniverseRESTful API-centric Universe
RESTful API-centric Universe
 
Generating Insights from WSO2 API Manager Statistics
Generating Insights from WSO2 API Manager StatisticsGenerating Insights from WSO2 API Manager Statistics
Generating Insights from WSO2 API Manager Statistics
 
Lambda@Edge를통한멀티리전기반글로벌트래픽길들이기::이상현::AWS Summit Seoul 2018
Lambda@Edge를통한멀티리전기반글로벌트래픽길들이기::이상현::AWS Summit Seoul 2018Lambda@Edge를통한멀티리전기반글로벌트래픽길들이기::이상현::AWS Summit Seoul 2018
Lambda@Edge를통한멀티리전기반글로벌트래픽길들이기::이상현::AWS Summit Seoul 2018
 
Building Awesome APIs in Grails
Building Awesome APIs in GrailsBuilding Awesome APIs in Grails
Building Awesome APIs in Grails
 
Api manager preconference
Api manager preconferenceApi manager preconference
Api manager preconference
 
OpenAPI v.Next - Events, Alternative Schemas & the Road Ahead
OpenAPI v.Next - Events, Alternative Schemas & the Road AheadOpenAPI v.Next - Events, Alternative Schemas & the Road Ahead
OpenAPI v.Next - Events, Alternative Schemas & the Road Ahead
 
CSG 2012
CSG 2012CSG 2012
CSG 2012
 
API Athens Meetup - API standards 25-6-2014
API Athens Meetup - API standards   25-6-2014API Athens Meetup - API standards   25-6-2014
API Athens Meetup - API standards 25-6-2014
 

More from John Musser

Why API Ops is the Next Wave of DevOps
Why API Ops is the Next Wave of DevOpsWhy API Ops is the Next Wave of DevOps
Why API Ops is the Next Wave of DevOpsJohn Musser
 
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...John Musser
 
Ten Reasons Developers Hate Your API
Ten Reasons Developers Hate Your APITen Reasons Developers Hate Your API
Ten Reasons Developers Hate Your APIJohn Musser
 
API Business Models
API Business ModelsAPI Business Models
API Business ModelsJohn Musser
 
Open APIs - State of the Market 2011
Open APIs - State of the Market 2011Open APIs - State of the Market 2011
Open APIs - State of the Market 2011John Musser
 
Open APIs: State of the Market, May 2010
Open APIs: State of the Market, May 2010Open APIs: State of the Market, May 2010
Open APIs: State of the Market, May 2010John Musser
 

More from John Musser (6)

Why API Ops is the Next Wave of DevOps
Why API Ops is the Next Wave of DevOpsWhy API Ops is the Next Wave of DevOps
Why API Ops is the Next Wave of DevOps
 
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
 
Ten Reasons Developers Hate Your API
Ten Reasons Developers Hate Your APITen Reasons Developers Hate Your API
Ten Reasons Developers Hate Your API
 
API Business Models
API Business ModelsAPI Business Models
API Business Models
 
Open APIs - State of the Market 2011
Open APIs - State of the Market 2011Open APIs - State of the Market 2011
Open APIs - State of the Market 2011
 
Open APIs: State of the Market, May 2010
Open APIs: State of the Market, May 2010Open APIs: State of the Market, May 2010
Open APIs: State of the Market, May 2010
 

Recently uploaded

What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...ShapeBlue
 
Transcript: Trending now: Book subjects on the move in the Canadian market - ...
Transcript: Trending now: Book subjects on the move in the Canadian market - ...Transcript: Trending now: Book subjects on the move in the Canadian market - ...
Transcript: Trending now: Book subjects on the move in the Canadian market - ...BookNet Canada
 
iOncologi_Pitch Deck_2024 slide show for hostinger
iOncologi_Pitch Deck_2024 slide show for hostingeriOncologi_Pitch Deck_2024 slide show for hostinger
iOncologi_Pitch Deck_2024 slide show for hostingerssuser9354ce
 
Building Bridges: Merging RPA Processes, UiPath Apps, and Data Service to bu...
Building Bridges:  Merging RPA Processes, UiPath Apps, and Data Service to bu...Building Bridges:  Merging RPA Processes, UiPath Apps, and Data Service to bu...
Building Bridges: Merging RPA Processes, UiPath Apps, and Data Service to bu...DianaGray10
 
AI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientAI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientKari Kakkonen
 
Low Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsLow Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsScyllaDB
 
Enterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewEnterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewAshraf Fouad
 
Trading Software Development_ Trends to Watch in 2024.pdf
Trading Software Development_ Trends to Watch in 2024.pdfTrading Software Development_ Trends to Watch in 2024.pdf
Trading Software Development_ Trends to Watch in 2024.pdfLucas Lagone
 
Communities, networking and developer culture
Communities, networking and developer cultureCommunities, networking and developer culture
Communities, networking and developer cultureRavi Sanghani
 
National Institute of Standards and Technology (NIST) Cybersecurity Framework...
National Institute of Standards and Technology (NIST) Cybersecurity Framework...National Institute of Standards and Technology (NIST) Cybersecurity Framework...
National Institute of Standards and Technology (NIST) Cybersecurity Framework...MichaelBenis1
 
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHubHow We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHubShapeBlue
 
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...ShapeBlue
 
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueCloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueShapeBlue
 
software-quality-assurance question paper 2023
software-quality-assurance question paper 2023software-quality-assurance question paper 2023
software-quality-assurance question paper 2023RohanMistry15
 
Artificial Intelligence - AI For Everyone
Artificial Intelligence - AI For EveryoneArtificial Intelligence - AI For Everyone
Artificial Intelligence - AI For EveryoneSridhar Seshadri
 
Q4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdfQ4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdfTejal81
 
My Journey towards Artificial Intelligence
My Journey towards Artificial IntelligenceMy Journey towards Artificial Intelligence
My Journey towards Artificial IntelligenceVijayananda Mohire
 
GDG Cloud Southlake 30 Brian Demers Breeding 10x Developers with Developer Pr...
GDG Cloud Southlake 30 Brian Demers Breeding 10x Developers with Developer Pr...GDG Cloud Southlake 30 Brian Demers Breeding 10x Developers with Developer Pr...
GDG Cloud Southlake 30 Brian Demers Breeding 10x Developers with Developer Pr...James Anderson
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriSafe Software
 
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
 
Transcript: Trending now: Book subjects on the move in the Canadian market - ...
Transcript: Trending now: Book subjects on the move in the Canadian market - ...Transcript: Trending now: Book subjects on the move in the Canadian market - ...
Transcript: Trending now: Book subjects on the move in the Canadian market - ...
 
iOncologi_Pitch Deck_2024 slide show for hostinger
iOncologi_Pitch Deck_2024 slide show for hostingeriOncologi_Pitch Deck_2024 slide show for hostinger
iOncologi_Pitch Deck_2024 slide show for hostinger
 
Building Bridges: Merging RPA Processes, UiPath Apps, and Data Service to bu...
Building Bridges:  Merging RPA Processes, UiPath Apps, and Data Service to bu...Building Bridges:  Merging RPA Processes, UiPath Apps, and Data Service to bu...
Building Bridges: Merging RPA Processes, UiPath Apps, and Data Service to bu...
 
AI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficientAI improves software testing to be more fault tolerant, focused and efficient
AI improves software testing to be more fault tolerant, focused and efficient
 
Low Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & PitfallsLow Latency at Extreme Scale: Proven Practices & Pitfalls
Low Latency at Extreme Scale: Proven Practices & Pitfalls
 
Enterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book ReviewEnterprise Architecture As Strategy - Book Review
Enterprise Architecture As Strategy - Book Review
 
Trading Software Development_ Trends to Watch in 2024.pdf
Trading Software Development_ Trends to Watch in 2024.pdfTrading Software Development_ Trends to Watch in 2024.pdf
Trading Software Development_ Trends to Watch in 2024.pdf
 
Communities, networking and developer culture
Communities, networking and developer cultureCommunities, networking and developer culture
Communities, networking and developer culture
 
National Institute of Standards and Technology (NIST) Cybersecurity Framework...
National Institute of Standards and Technology (NIST) Cybersecurity Framework...National Institute of Standards and Technology (NIST) Cybersecurity Framework...
National Institute of Standards and Technology (NIST) Cybersecurity Framework...
 
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHubHow We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
 
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
 
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueCloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
 
software-quality-assurance question paper 2023
software-quality-assurance question paper 2023software-quality-assurance question paper 2023
software-quality-assurance question paper 2023
 
Artificial Intelligence - AI For Everyone
Artificial Intelligence - AI For EveryoneArtificial Intelligence - AI For Everyone
Artificial Intelligence - AI For Everyone
 
Q4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdfQ4 2023 Quarterly Investor Presentation - FINAL.pdf
Q4 2023 Quarterly Investor Presentation - FINAL.pdf
 
My Journey towards Artificial Intelligence
My Journey towards Artificial IntelligenceMy Journey towards Artificial Intelligence
My Journey towards Artificial Intelligence
 
GDG Cloud Southlake 30 Brian Demers Breeding 10x Developers with Developer Pr...
GDG Cloud Southlake 30 Brian Demers Breeding 10x Developers with Developer Pr...GDG Cloud Southlake 30 Brian Demers Breeding 10x Developers with Developer Pr...
GDG Cloud Southlake 30 Brian Demers Breeding 10x Developers with Developer Pr...
 
Geospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & EsriGeospatial Synergy: Amplifying Efficiency with FME & Esri
Geospatial Synergy: Amplifying Efficiency with FME & Esri
 
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
Trending now: Book subjects on the move in the Canadian market - Tech Forum 2024
 

What Makes a Great Open API?

  • 1. What Makes a Great Open API? John  Musser,  ProgrammableWeb   @johnmusser   OSCON  2012    
  • 2. yea rs   7   Is   ,000  AP tor ies   6  new s  s 3 ,000
  • 3. Why does having a great API matter?
  • 4. API growth rate Based on directory of 6,000 web APIs listed at ProgrammableWeb, May 2012
  • 5. 3  Months   4  Months   6  Months   9  Months   18  Months   8  Years   API growth rate Based on directory of 6,000 web APIs listed at ProgrammableWeb, May 2012
  • 6. API Billionaires Club 13 billion API calls / day (May 2011) 5 billion API calls / day (April 2010) 5 billion API calls / day (October 2009) 1.4 billion API calls / day (May 2012) 1.1 billion API calls / day (April 2011) 1 billion API calls / day (May 2012) 1 billion API calls / day (Q1 2012) 1 billion API calls / day (January 2012)
  • 7. Apps & devices everywhere
  • 8. 5 Keys to a Great API Valuable Planned Flexible Managed Supported
  • 9. 5 Keys to a Great API A valuable service (data, function, audience, ) … A plan and a business model Simple, flexible, easily adopted Managed and measured Great developer support
  • 10. Each “key” has two sides: business & technology (each supports the other)
  • 11. Each “key” has two sides: business & technology (today’s talk)
  • 12. ET #1 I SECR A P These are really, really hard to do right
  • 13. 5 Keys to a Great API Valuable Planned Flexible Managed Supported
  • 20. ET #2 I SECR A P A very valuable service hides many API sins
  • 21. the API Value Corollary The API value corollary A great API on a bad service is lipstick on a pig
  • 22. 5 Keys to a Great API Valuable Planned Flexible Managed Supported
  • 23. 5 Keys to a Great API Valuable Planned (designed) Flexible Managed Supported
  • 24. Your first two design questions What is the goal of this API? (purpose) Who will be using this API? (audience)
  • 25. You’ll make many design choices What protocol(s) will I support? What data format(s) to provide? How will I manage security? Should I use an open source framework? Which design patterns to use? Hmm, are there any? Oh, right, I need to do versioning too…
  • 26. What’s the price of IBM? POST  /GetStock  HTTP/1.1   GET  h@p://example.org/stock/IBM   Host:  www.example.org   Content-­‐Type:  applicaRon/soap+xml     <?xml  version="1.0"?>   <soap:Envelope   xmlns:soap="h@p://www.w3.org/2001/12/soap-­‐ envelope"   soap:encodingStyle="h@p://www.w3.org/ 2001/12/soap-­‐encoding">     <soap:Body  xmlns:m="h@p://www.example.org/ stock">      <m:GetStockPrice>          <m:StockName>IBM</m:StockName>      </m:GetStockPrice>   </soap:Body>   </soap:Envelope>  
  • 27. SOAP REST POST  /GetStock  HTTP/1.1   GET  h@p://example.org/stock/IBM   Host:  www.example.org   Content-­‐Type:  applicaRon/soap+xml     <?xml  version="1.0"?>   <soap:Envelope   xmlns:soap="h@p://www.w3.org/2001/12/soap-­‐ envelope"   soap:encodingStyle="h@p://www.w3.org/ 2001/12/soap-­‐encoding">     <soap:Body  xmlns:m="h@p://www.example.org/ stock">      <m:GetStockPrice>          <m:StockName>IBM</m:StockName>      </m:GetStockPrice>   </soap:Body>   </soap:Envelope>  
  • 28. API protocols and styles Based on directory of 5,100 web APIs listed at ProgrammableWeb, February 2012
  • 29. ET #3 I SECR A P A great API doesn’t just ask “am I RESTful enough? ”
  • 30. Daniel Jacobson, Netflix Engineering Blog, July 9, 2012
  • 31. Daniel Jacobson, Netflix Engineering Blog, July 9, 2012
  • 32. another moral of that story is… A great API understands its audience
  • 33. Your audience may <3 SOAP, really 50+ finance APIs, 5 billion+ calls/month
  • 34. Data format? It depends… XML, JSON, RSS, Atom, YAML, iCalendar, CSV, Serialized PHP, HTML, PNG, GeoRSS, vCard, Text, RDF, OPML, MediaRSS, VML, TV-Anytime, hCalendar, FOAF, XSPF, SQL, GML, CDF Data formats supported by APIs on ProgrammableWeb, May 2012
  • 35. What’s the price of IBM? {   <?xml  version="1.0"?>          "symbol":  ”IBM",   <soap:Envelope          "price":  94.72,   xmlns:soap="h@p://www.w3.org/2001/12/soap-­‐ envelope"   }   soap:encodingStyle="h@p://www.w3.org/ 2001/12/soap-­‐encoding">     <soap:Body  xmlns:m="h@p://www.example.org/ stock">      <m:GetStockPriceResponse>          <m:Price>34.5</m:Price>      </m:GetStockPriceResponse>   </soap:Body>     </soap:Envelope>  
  • 36. JSON XML {   <?xml  version="1.0"?>          "symbol":  ”IBM",   <soap:Envelope          "price":  94.72,   xmlns:soap="h@p://www.w3.org/2001/12/soap-­‐ envelope"   }   soap:encodingStyle="h@p://www.w3.org/ 2001/12/soap-­‐encoding">     <soap:Body  xmlns:m="h@p://www.example.org/ stock">      <m:GetStockPriceResponse>          <m:Price>34.5</m:Price>      </m:GetStockPriceResponse>   </soap:Body>     </soap:Envelope>  
  • 37. Percentage of REST APIs supporting JSON Based on directory of 5,800 web APIs listed at ProgrammableWeb, May 2012
  • 38. Want to discuss API design? Check out API Craft http://groups.google.com/group/api-craft
  • 39. 5 Keys to a Great API Valuable Planned (simple) Flexible (easily adopted) Managed Supported
  • 40. API simplicity continuum Simple Complex “As simple as possible, but no simpler”
  • 41. What makes an API flexible? Provides choices data format, protocol, version Gives developer control partial queries & updates, batch operations Offers advanced options webhooks, streaming, caching
  • 42. What’s your TTFHW? Time To First “Hello World” aka: how long from zero to 60?
  • 43. 6 ways to accelerate TTFHW
  • 44. #1) Make it clear what you do
  • 45. #2) Offer “Free” or “Trial” API access
  • 46. (or, even both free & trial)
  • 47. #3) Fast, automated signup (so fast, you can even skip this step till you’re convinced…)
  • 48. #4) Clear, accurate documentation
  • 49. #5) Copious code samples
  • 50. Stripe’s dashboard #6) Provide tools Google’s OAuth Playground Wordnik’s Swagger & Mashery’s I/O Docs Apigee’s API console Twilio’s debugger
  • 51. 5 Keys to a Great API Valuable Planned Flexible Managed (and measured) Supported
  • 52. What to manage & measure? Manage Measure Security Performance Key management Developers and apps Monitoring Quality Reporting Marketing Scaling Revenue Rate limiting Volume Versioning Trends
  • 53. API versioning in REST Where   What   Who   Example   Path  segment   Date   Twilio   /2010-­‐04-­‐01/…   Path  segment   Number   Twi@er   /1/…   Path  segment   ‘v’  +  Number   LinkedIn   /v1/…   Query  string   Number   Google   ?v=2   Custom  HTTP  header   Number   Google   GData-­‐Version:  2   HTTP  Accept  header   Number   Github   applicaRon/vnd.github[.version]  
  • 54. ET #4 I SECR A P It matters less how you version than you do version
  • 55. API security baseline Today: SSL as option OAuth 2.0 (one of the few API standards with traction) Future: SSL required (many major APIs moving to SSL only) OpenID Connect (it’s very early today)
  • 56. Great APIs get measured Great APIs get measured
  • 57. Metrics that matter Traffic Developers Service Total developers Performance Total calls Active developers Availability Top methods Top developers Error rates Call chains Trending apps Code defects Quota faults Retention Marketing Support Business Dev registrations Direct revenue Support tickets Indirect revenue Dev portal funnel Response times Market share Traffic sources Community metrics Costs Event metrics
  • 58. ET #5 I SECR A P Great APIs prioritize what they want to measure
  • 59. “The absence of limitations is the enemy of art” Orson Welles
  • 60. 5 Keys to a Great API Valuable Planned Flexible Managed Supported
  • 61. What makes an API supported? Great developer experience (DX) signup, guides, reference, SDKs, pricing, clear ToS Communication & community forum, blog, social media, email, app gallery Great support / evangelism teams active, engaged, listening, responding, at events
  • 62. What makes an API supported? Great developer experience (DX)   A nd reference, SDKs, pricing, legal g   Signup, guides, ythin er & communityr   ev Communication d  un de c ereemail, events, clear ToS forum, blog,ov media, social /W   teams Great supportHevangelism TF T listening, responding active, engaged,
  • 63. developerexperience.org see also developer-support-handbook.appspot.com
  • 64. ET #6 I SECR A P Great DX separates the best APIs from the rest
  • 65. Covering your DX checklist
  • 66. Does API design impact support? Let me count the ways… For example, look at Twilio’s error response
  • 67. Community: a core tenet of great open APIs and open source
  • 68. 5 Keys to a Great API Valuable e   e  m or A nd on  Planned ing …   Flexible th Managed Supported
  • 69. Top 10 API worst practices 10. Poor error handing 9. REST APIs that ignore HTTP rules 8. Exposing your raw underlying data model 7. Security complexity 6. Unexpected & undocumented releases 5. Poor developer experience 4. Expect an MVC framework ‘gives’ you a great API 3. Assume if you build it they will come 2. Inadequate support 1. Poor documentation
  • 70. #7 P I SECR ET A great API A is a journey, not a destination
  • 71. Thank You QuesRons,  ideas,  comments? john@programmableweb.com   @johnmusser    
  • 72. Photo  credits   Pig:  h@p://www.flickr.com/photos/babasteve/7341687640/   Race  car:  h@p://www.flickr.com/photos/lim_lik_wei/3270522646/   Stopwatch:  h@p://www.flickr.com/photos/purplemapish/3020016417/   Hackers:  h@p://www.flickr.com/photos/hackny/5684846071/   Winding  road:  h@p://www.flickr.com/photos/ma@hewthecoolguy/7518274258/