7 habits of highly effective apis

21
7 Habits of highly effective APIs Ole Lensmar, API aficionado @olensmar

Upload: smartbear

Post on 11-May-2015

476 views

Category:

Technology


2 download

DESCRIPTION

SoapUI creator Ole Lensmar's presentation from the 2013 API Strategy Conference

TRANSCRIPT

Page 1: 7 Habits of Highly Effective APIs

7 Habits of highly effective APIs

Ole Lensmar, API aficionado

@olensmar

Page 2: 7 Habits of Highly Effective APIs

your API is highly effective because…

Page 3: 7 Habits of Highly Effective APIs

it has a @twitter account

Page 4: 7 Habits of Highly Effective APIs

it has a @twitter account

• communicates feature updates, new versions, etc

• exposes itself in API directories

• provides health / uptime / downtime info

Page 5: 7 Habits of Highly Effective APIs

it’s beautifully described

Page 6: 7 Habits of Highly Effective APIs

it’s beautifully described

• generous and easily navigated documentation

• code examples for “relevant” languages

• metadata for code generation and testing

Page 7: 7 Habits of Highly Effective APIs

it’s instantly accessible

Page 8: 7 Habits of Highly Effective APIs

it’s instantly accessible

• fully automated API key / account creation

• generous developer quota

• getting started tutorials and examples

Page 9: 7 Habits of Highly Effective APIs

it has a sandbox for experiments

Page 10: 7 Habits of Highly Effective APIs

it has a sandbox for experiments

• limited functionality or content

• simulations of errors and out-of-bounds situations

• no limits on usages – doesn’t consume quota

Page 11: 7 Habits of Highly Effective APIs

it has out-of-the-box clients

Page 12: 7 Habits of Highly Effective APIs

it has out-of-the-box clients

• lowers barrier of entry

• hides complexity related to authentication, parsing, etc

• adapts API to client paradigms

Page 13: 7 Habits of Highly Effective APIs

it knows and serves its user

Page 14: 7 Habits of Highly Effective APIs

it knows and serves its user

• uses the right technologies for the domain

• respects security and authentication requirements

• adopts common nomenclature and naming

Page 15: 7 Habits of Highly Effective APIs

it’s aware of its constraints

Page 16: 7 Habits of Highly Effective APIs

it’s aware of its constraints

• continuously evaluates its performance and availability

• monitors 3rd party APIs and dependencies

• handles unexpected events gracefully with the user in mind

Page 17: 7 Habits of Highly Effective APIs

it’s prepared for (r)evolution

Page 18: 7 Habits of Highly Effective APIs

it’s prepared for (r)evolution

• versioned from day 1 in line with best practices

• communicates and implements a versioning strategy

• handles “old” clients gracefully

Page 19: 7 Habits of Highly Effective APIs

3:30:3

Page 20: 7 Habits of Highly Effective APIs

3:30:3

• 3 seconds to understand what the API does

• 30 seconds to find the endpoint

• 3 minutes to be up and running

Thanks to Ori Pekelman!

Page 21: 7 Habits of Highly Effective APIs

Thank you!

Ole Lensmar

@olensmar