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