7 Habits of Highly Effective APIs

34

Transcript of 7 Habits of Highly Effective APIs

Page 1: 7 Habits of Highly Effective APIs
Page 2: 7 Habits of Highly Effective APIs

Ole LensmarChief Architect at SmartBear

@Olensmar

Page 3: 7 Habits of Highly Effective APIs

APIs are moving to center-stage for many businesses and technology teams today

Page 4: 7 Habits of Highly Effective APIs

This makes it increasingly important to know what really matters when implementing

your API strategy.

Page 5: 7 Habits of Highly Effective APIs

There are some obvious aspects of your APIs that appeal to both technology and business needs of your API customers

Page 6: 7 Habits of Highly Effective APIs

Choice of Technology

Page 7: 7 Habits of Highly Effective APIs

Choice of Technology

Security

Page 8: 7 Habits of Highly Effective APIs

Choice of Technology

Security

Authorization

Page 9: 7 Habits of Highly Effective APIs

Choice of Technology

Security

Authorization

Naming/Vocabulary

Page 10: 7 Habits of Highly Effective APIs

And then there are some not-so-obvious aspects that, if utilized, could give your

API a head-up on the competition

Page 11: 7 Habits of Highly Effective APIs

Your API can become highly effective if…

Page 12: 7 Habits of Highly Effective APIs

It has a @twitter account

Page 13: 7 Habits of Highly Effective APIs

Communicates feature updates, new versions, etc.

Exposes itself in API directories

Provides health / uptime / downtime info

It has a @twitter account

Page 14: 7 Habits of Highly Effective APIs

It’s beautifully described

Page 15: 7 Habits of Highly Effective APIs

Generous and easily navigable documentation

Code examples for “relevant” languages

Metadata for code generation and testing

It’s beautifully described

Page 16: 7 Habits of Highly Effective APIs

It’s instantly accessible

Page 17: 7 Habits of Highly Effective APIs

Fully automated API key / account creation

Generous developer quota

“Getting Started” tutorials and examples

It’s instantly accessible

Page 18: 7 Habits of Highly Effective APIs

It has a sandbox for experiments

Page 19: 7 Habits of Highly Effective APIs

Limited functionality or content

Simulations of errors and out-of-bounds situations

No limits on usages – doesn’t consume quota

It has a sandbox for experiments

Page 20: 7 Habits of Highly Effective APIs

It has out-of-the-box clients

Page 21: 7 Habits of Highly Effective APIs

Lowers barrier of entry

Adapts API to client paradigms

Hides complexity related to authentication, parsing, etc.

It has out-of-the-box clients

Page 22: 7 Habits of Highly Effective APIs

It knows and serves its user

Page 23: 7 Habits of Highly Effective APIs

Uses the right technologies for the domain

Respects security and authentication requirements

Adopts common nomenclature and naming

It knows and serves its user

Page 24: 7 Habits of Highly Effective APIs

It’s aware of its own constraints

Page 25: 7 Habits of Highly Effective APIs

Continuously evaluates its own performance

Monitors third-party APIs and dependencies

Handles unexpected events gracefully

It’s aware of its own constraints

Page 26: 7 Habits of Highly Effective APIs

It’s prepared for (r)evolution

Page 27: 7 Habits of Highly Effective APIs

Versioned from day one in line with best practices

Communicates and implements a versioning strategy

Handles “old” clients gracefully

It’s prepared for (r)evolution

Page 28: 7 Habits of Highly Effective APIs

It follows the 3:30:3 rule

Page 29: 7 Habits of Highly Effective APIs

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!

It follows the 3:30:3 rule

Page 30: 7 Habits of Highly Effective APIs

I hope you’ve enjoyed this presentation and that you are able to apply some of

these habits to your own APIs.

Page 31: 7 Habits of Highly Effective APIs

And now that you know how to make your own APIs effective…

Page 32: 7 Habits of Highly Effective APIs

Take a few minutes to learn how to use other people’s APIs safely…

Page 34: 7 Habits of Highly Effective APIs

Thank you!

#APIStrat