10 Reasons Developers Hate Your API
(and what to do about it)
John ¡Musser ¡@johnmusser ¡ ¡/ ¡ ¡API ¡Science ¡@apiscience ¡ QCon ¡NYC, ¡2014 ¡
10 Reasons Developers Hate Your API (and what to do about it) John - - PowerPoint PPT Presentation
10 Reasons Developers Hate Your API (and what to do about it) John Musser @johnmusser / API Science @apiscience QCon NYC, 2014 (private beta) 1 # N O S A E R Your documentation
John ¡Musser ¡@johnmusser ¡ ¡/ ¡ ¡API ¡Science ¡@apiscience ¡ QCon ¡NYC, ¡2014 ¡
(private ¡beta) ¡
R E A S O N # 1
I S S U E S
https://www.twilio.com/docs
F I X # 1
https://stripe.com/docs/api
F I X # 2
https://stripe.com/docs/
F I X # 3
F I X # 4
https://github.com/wordnik/swagger-core
https://github.com/mashery/iodocs
RESTful API Modeling Language raml.org
R E A S O N # 2
R E A S O N # 2 B
I S S U E S
http://developer.github.com/changes/
F I X # 1
https://developers.facebook.com/roadmap/
F I X # 2
http://techblog.constantcontact.com/api/release-updates
F I X # 3
http://aws.typepad.com/
F I X # 4
http://stackoverflow.com/questions/tagged/soundcloud
F I X # 5
F I X # 6
R E A S O N # 3
I S S U E S
https://www.twilio.com/voice/api
F I X # 1
https://manage.stripe.com/register
F I X # 2
(so fast, you can even skip this step till you’re convinced…)
http://developer.constantcontact.com/get-started.html
F I X # 3
https://www.twilio.com/docs/quickstart
F I X # 4
https://parse.com/plans
F I X # 5
F I X # 6
https://github.com/OneNoteDev
F I X # 7
R E A S O N # 4
I S S U E S
F I X # 1
http://500px.com/terms
F I X # 2
https://www.etsy.com/developers/terms-of-use
F I X # 3
http://googledevelopers.blogspot.com
“Beginning ¡today, ¡most ¡of ¡our ¡APIs ¡use ¡a ¡single ¡Terms ¡of ¡
up ¡with ¡the ¡goals ¡of ¡making ¡them ¡concise ¡and ¡easier ¡to ¡
…. ¡ In ¡this ¡rewrite, ¡we ¡have ¡removed ¡over ¡125,000 ¡words ¡ from ¡the ¡combined ¡previous ¡terms ¡ …” ¡
Page ¡23 ¡
F I X # 4
https://developers.google.com/youtube/terms
http://slideshare.net/jmusser
F I X # 5
R E A S O N # 5
R E A S O N # 5
I S S U E S
Change (planned) Bug Outage
Rate limit ToS violation Change (undocumented) Provider biz change Network
GET http://api.yourcompany.com/resource/142
GET http://api.yourcompany.com/resource/142
http://status.aws.amazon.com/
F I X # 1
F I X # 2
http://www.apiscience.com
http://blog.akismet.com
F I X # 3
R E A S O N # 6
I S S U E S
https://manage.stripe.com/test/dashboard
F I X # 1
www.twilio.com/user/account/developer-tools/app-monitor
F I X # 2
https://www.twilio.com/user/account
F I X # 3
https://developers.google.com/oauthplayground
F I X # 4
https://apigee.com/providers
F I X # 5
R E A S O N # 7
I S S U E S
http://sendgrid.com/developers
F I X # 1
F I X # 2
https://www.twilio.com/conference
F I X # 3
R E A S O N # 8
R E A S O N # 8 B
I S S U E S
F I X # 1 API protocols and styles
Based on directory of 5,100 web APIs listed at ProgrammableWeb, February 2012
F I X # 2 Percentage of APIs supporting JSON vs XML
Based on directory 11,000 web APIs listed at ProgrammableWeb, Dec 2013
XML vs. JSON in new APIs
Based on new APIs listed at ProgrammableWeb in 2013
F I X # 3
http://apigee.com/about/content/web-api-design
Web API Design, Brian Mulloy
R E A S O N # 9
Time To First “Hello World” aka: how long from zero to 60?
F I X # 1
http://developerexperience.org
F I X # 2
R E A S O N # 1
R E A S O N # 1
F I X # 1
F I X # 2
apidays.io ¡ apistrategyconference.com ¡ www.gluecon.com ¡ apicon.programmableweb.com ¡ iloveapis2013.com ¡ apiconference.com ¡ www.qconferences.com ¡
F I X # 3
QuesNons, ¡ideas, ¡comments? john@apiscience.com ¡ @johnmusser ¡ ¡
Photo ¡credits ¡
Race ¡car: ¡hRp://www.flickr.com/photos/lim_lik_wei/3270522646/ ¡ Winding ¡road: ¡hRp://www.flickr.com/photos/maRhewthecoolguy/7518274258/ ¡ ¡ ¡