REST API Design Resources
I want to share with you a small some useful resources on REST API design.
Designing a Beautiful REST+JSON API – In this presentation, Les Hazlewood (@lhazlewood) - Former Stormpath founder and CTO - will share all of the golden nuggets learned while designing, implementing and supporting JSON-based REST APIs, using examples from a clean real-world REST+JSON API built with Java technologies.
He covers:- JSON-based data formats in a RESTful API
- References to other JSON-based resources (aka ’linking')
- Resource collections and pagination
- How to map (and how not to map) HTTP methods to Resource CRUD
- Resource partial updates
- Supporting HTTP Method Overloading for clients that don’t support HTTP PUT and DELETE
- API versioning strategies
- Meaningful Error responses
- Many-to-many resource relationships
- HTTP Caching and Optimistic concurrency control
- Authentication and Security
Zalando RESTful API and Event Scheme Guidelines – I highly recommend reading this one
http://stackoverflow.com/questions/319530/restful-authentication
http://en.wikipedia.org/wiki/Hash-based_message_authentication_code – keyed-hash message authentication code (HMAC)
https://developers.coinbase.com/docs/wallet/api-key-authentication
http://broadcast.oreilly.com/2009/12/principles-for-standardized-rest-authentication.html – Query Authentication consists in signing each RESTful request via some additional parameters on the URI.
http://blog.synopse.info/post/2011/05/24/How-to-implement-RESTful-authentication
https://jsonapi.org/ - A specification for building APIs in JSON