As presented at Heartland Developer Conference, 2015.
HTTP APIs – or as the brave amongst us choose to call them, REST APIs – are everywhere. If you have been programming any time in the past 5 years or so, you have almost certainly used a HTTP API either directly or indirectly. You may even have built an HTTP API or be about to build one.
Over the years, the dust is still settling on best practices for building HTTP APIs. When is appropriate to use a POST vs. a PUT? When should the different 2xx level status codes be used? What is hypermedia and why should I care? Should I use webhooks? In this talk I will answer these questions and suggest several best practices – including rationale and consequences for each – for building HTTP APIs, covering HTTP methods, status codes, headers, representation formats and structures, linking, and much more!