Page 1
Your API Consumers Aren’t Who You Think They Are
Page 2
Hello.
- I’m Bryan Helmig- Co-founder @ Zapier- CWO (chief whiskey officer)
Page 3
automation platform
Page 4
Zapier ♥ APIs. A lot.
- h’s of m’s API calls/mo
- 300k+ unique integrations across 200+ APIs
Page 5
We’ve noticed a bitof a shift....
Page 6
A shift in API consumption.
Page 7
Who you might think consumes
your API...
Page 8
"Is this really RESTful?"
"Can you do bulk multipart uploads?"
Page 9
Who actually consumes your
API...
Page 10
"Where can I buy the API* tokens?"
* pronounced "appy"
"How do I hook my MS Access into the REST?"
Page 11
Non-coders are increasingly
consuming APIs.
Page 13
A•P•I n. enable missing features
(some assembly required)
Page 14
But will they feel empowered or overwhelmed?
Page 15
What sort of crazy features are they
dreaming up?
Page 17
What can we do to help these users consume APIs?
What can we do to improve APIs for CRUD automation?
Page 18
Easier Documentation
Better introduction.
Provide a wedge.
Live data.
Page 19
Multiple Auth Mechanisms
OAuth for platforms...
...API keys or basic auth for OMWP.
Live code.
Page 20
Useful Error Messages
401: Not authenticated.
404: Not found.
Serialize failures the same way.
Page 21
Do What I Mean
A sufficiently intelligent error...
...why not just do what they meant?
Within reason, of course.
Page 22
What can we do to help these users consume APIs?
What can we do to improve APIs for CRUD automation?
Page 23
Flexible Endpoints
Automation is long tail.
Order, filter, paginate, hydrate...
Complexity.
Page 24
Get Real (Time)
Naive cRud means polling.
Webhooks are great!
Skip long-polling or websockets.
Page 25
PATCH & Upsert
PATCH fixes unintentional nulls.
Upsert handles uniqueness.
Less complexity!
Page 26
What can we do to help these users consume APIs?
What can we do to improve APIs for CRUD automation?
Page 27
Who is really at the end of your API requests?