Talk presented at [TDC Florianópolis 2016](http://www.thedevelopersconference.com.br/tdc/2016/florianopolis/trilha-ruby)
Related links:
#### Gems
https://github.com/rails-api/rails-api
https://github.com/bploetz/versionist
https://github.com/rails-api/active_model_serializers
#### Railscasts
http://railscasts.com/episodes/348-the-rails-api-gem
http://railscasts.com/episodes/352-securing-an-api
http://railscasts.com/episodes/350-rest-api-versioning
#### Guides
https://www.airpair.com/ruby-on-rails/posts/building-a-restful-api-in-a-rails-application
http://www.emilsoman.com/blog/2013/05/18/building-a-tested
http://matthewlehner.net/rails-api-testing-guidelines
https://labs.kollegorna.se/blog/2015/04/build-an-api-now
http://www.gotealeaf.com/blog/authentication-methods-in-rails
#### HTTP response code confusions
http://stackoverflow.com/questions/3297048/403-forbidden-vs-401-unauthorized-http-responses/6937030#6937030
#### Rails 5 api
http://wyeworks.com/blog/2015/6/30/how-to-build-a-rails-5-api-only-and-ember-application
http://wyeworks.com/blog/2015/6/11/how-to-build-a-rails-5-api-only-and-backbone-application
#### Discussions
http://joshsymonds.com/blog/2013/02/22/existing-rails-api-solutions-suck/