A REST API is a common method for interacting with a computer program over the internet. REST (short for representational state transfer) is a set of guidelines and principles for creating Web services.

This is the clearest guide to building good REST APIs that I have found. It provides a set of practical guidelines that are easy to follow.

RESTful principles provide strategies to handle CRUD actions using HTTP methods mapped as follows:

  • GET /tickets - Retrieves a list of tickets
  • GET /tickets/12 - Retrieves a specific ticket
  • POST /tickets - Creates a new ticket
  • PUT /tickets/12 - Updates ticket #12
  • PATCH /tickets/12 - Partially updates ticket #12
  • DELETE /tickets/12 - Deletes ticket #12

The great thing about REST is that you’re leveraging existing HTTP methods to implement significant functionality on just a single /tickets endpoint. There are no method naming conventions to follow and the URL structure is clean & clear. REST FTW!

Increasingly, the output of a data science or AI project is a cloud based API. A user will enter some data and a model will return a prediction or label. I have been building various machine learning APIs for years and calling them REST APIs. It turns out they weren’t! After reading this, they will be.

📖 Read more here 📖