can an api be too simple?

23
46elks CONTACT Johannes Lundberg [email protected] +46704508449 ”Can an API be too simple?” 2014-05-05, at @APIDaysBerlin

Upload: johannes-lundberg

Post on 14-Jan-2015

424 views

Category:

Internet


2 download

DESCRIPTION

Can an API be too simple? Where is the balance between simplicity and complexity? What's the essence of an API? Are there some good samples of simplicity from 46elks' API?

TRANSCRIPT

Page 1: Can an API be too simple?

46elks

CONTACT Johannes Lundberg [email protected] +46704508449

”Can an API be too simple?”!2014-05-05, at @APIDaysBerlin

Page 2: Can an API be too simple?

@johannesl !

jojo

Johannes Lundberg

Page 3: Can an API be too simple?

46elks

Page 4: Can an API be too simple?

,;MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM;,./MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM.MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM` `^´ `Q/^^\MMMpcqMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM;, `^´ `VP YP´ `MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMDomm;,._ /MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMP` _.,,=rRMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMP^^^^MMMM´ MMMMMMMMMMMMMMMMMMMMMMMMMMP` '^^oMMMPP` ``´ \MMMMMMMMMMMMMMMMMMMMMMM´ ``\MMMMMMMMMMMMMMMMMM' 'QMMMMMMMMM/` \MMMMMMM/_=o, ,/ \_ `MMMMMMMMMMM, /MM pMM\,._ MMMMMMMMMMMM, ,MMMM, pMMMMMMMX /MMMMMMMMMMMMP AMMMMMMMMMMMMMMMM\m____.pMMMMMMMMMMMMMP MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM| ,.mPDMMMMMMMMpo., \MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM| ,mPMMMMMMMMMMMMMMMMMDo \MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM| /MMMMMMMMMMMMMMMMMMMMMMMM\ \MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM| MMMMMMMMMMMMMMMMMMMMMMMMMMDp,. `MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMP MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMP \MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM| `MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM| \MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMPPDmmMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMBYMMJOHANNESLMMOFMM46ELKSMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM\MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMP `\MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM`

Page 5: Can an API be too simple?

Phone calls, SMS and MMS for developers

in one easy API

Page 6: Can an API be too simple?

Can an API be too simple?

Page 7: Can an API be too simple?

APIAn API business

An actual API

purpose + provider

Page 8: Can an API be too simple?

Courtesy of @andreaskrohn

Business relationship Fullfillment Potential

business impactRealistic

business impact

PRIVATE (CUSTOM)

Manual (internal) Manual None None

PRIVATE (SELF-SERVE)

Automatic (internal) Automatic High

(for big companies) Medium

PARTNER Manual Automatic High High

PUBLIC Automatic Automatic Very high Medium

Page 9: Can an API be too simple?

Can an API be too simple?

Page 10: Can an API be too simple?

Simple means: !

easy to understand, deal with; not complicated;

modest;

Page 11: Can an API be too simple?

SIMPLE

..to integrate..to learn

..to grow with

Page 12: Can an API be too simple?

Simple for who?

Page 13: Can an API be too simple?

Don’t

Page 14: Can an API be too simple?

!JSON vs XML …

Do this !

Page 15: Can an API be too simple?

Too simple?

Page 16: Can an API be too simple?

If in doubt, leave it out !!

Page 17: Can an API be too simple?

SIMPLE

..to maintain..to monetize

..to replace

Page 18: Can an API be too simple?

The essence of an API

Turning traditional complexity into programatic simplicity.

!

For common use cases.

Page 19: Can an API be too simple?

TELECOMTHE WEB

HTTP

Telia Sweden

Sonera FI

TDC Denmark

Telekom DE

Telenor NO

Tele2 Estonia

46elksYour!software

46elks

SIMPLICITY COMPLEXITY

Page 20: Can an API be too simple?

<?php!if ($_GET[’message’] == ’ping’) echo ’Server is up at ’. date(’Y-m-d H:i:s’);!?>

Receiving an SMS and replying

HTTP POST

HTTP REPLY

Page 21: Can an API be too simple?

{ "ivr": ”http://myserver.se/menu.mp3",!

"1": { "connect": "+461890510" },!

"2": { "connect": "+461890511", "recordcall": "http://myserver.se/save" } }

Sample IVR

Page 22: Can an API be too simple?

Telia 0.049 € Telenor 0.042 € Telavox 0.070 € Tele2 0.029 € Tre 0.037 €

0.038 €

Sweden

9 %11 %

12 %

31 %

38 %

Telia

Tele2

Tre

Tre

Per SMS to Sweden

Page 23: Can an API be too simple?

Thank you!@johannesl

@46elks