Send the link below via email or IMCopy
Present to your audienceStart remote presentation
- Invited audience members will follow you as you navigate and present
- People invited to a presentation do not need a Prezi account
- This link expires 10 minutes after you close the presentation
- A maximum of 30 users can follow your presentation
- Learn more about this feature in our knowledge base article
Do you really want to delete this prezi?
Neither you, nor the coeditors you shared it with will be able to recover it again.
Make your likes visible on Facebook?
You can change this under Settings & Account at any time.
Practical Tips for RESTful APIs
Transcript of Practical Tips for RESTful APIs
is going to use your API?
are they going to use your API?
do you need to provide to meet the needs of your consumers?
will you design and implement your API?
RESTful API Design
What's Useful to the Developer?
- pictures, specs, and everything needed to sell the products
- everything to tell customers what they will be charged
Close the Deal
- a simple way to sign the customer up for X-Mobile's service and purchase a device
Easy to Consume Format
- JSON, maybe XML
Easy to Use Authentication
- API Key, Message Digests
Sketch your Resources
- Sketch your endpoints and data structures
- Mock up an example app and validate your API
- Until you can write an app using your API
- On low level approaches to things like versioning & security
- Red, Green, Refactor until you have a working API!
Better Get Started
External Application Developers
Product information, business process logic
That's a good question
"author": "Chris Latimer",
"goal": "Create Useful APIs",
I want the whole world to be our sales team. Let anyone sell our phones!
We aren't really set up for that, sir.
Just make it happen. You have 2 weeks.
Start with the most probable resources you'll need:
Note other possible resources, but don't get paralyzed:
Sketch Your Endpoints
"name": "Samsung Galaxy S4"
"name": "HTC One"
Could you build an app with just this?
Mockup an App
Refine Your Data
"name": "Samsung Galaxy S4",
"name": "HTC One"
Are You Ready to Build?
Not so fast, what about?
Let's Build It!
Ruby on Rails Implementation
All Code Provided on GitHub
Look for Blog Posts on http://groovyc.net
Retrieve the data they need to sell phones?
Execute the business process steps to convert a customer to X-Mobile?
Get credit for their sales?
These answers ensure your API is
How Will Developers:
Gain access to the API?
Learn how the API works?
Consume the API?
How Will You:
These answers ensure your API has a clear
Secure your API?
Version your API?
Expose different data formats?
Implement error handling?
Test your API?
Scale your API?
These answers ensure your API is built on a
Transport Layer Security
Keep Iterating Until Things Stabilize
What Makes an API Useful?
How Do You Design a Useful API?
How Do You Build a Useful API
Practical Tips for Creating a Useful API