What is RESTful API?

A RESTful API (RESTful web service), is based on Representational State Transfer (REST) technology, which is an architectural style and approach to communications often used in web services development.

RESTful API is mostly used for HTTP web APIs where there is no need for any additional libraries or packages to be installed.

REST itself is very flexible. There are not many limitations, but developers refer to best practices when architecting a REST API. REST has the ability to handle multiple types of requests and return different types of data (such as JSON and XML).

For example, a GET request to the following Facebook Graph API endpoint responds with the user information.

https://graph.facebook.com/v3.0/{user-id}

As another example, Google Geocoding API request takes the following form:

https://maps.googleapis.com/maps/api/geocode/json

It is important to design an intuitive and convenient API. Requests to API URLs are made using one of the HTTP methods, such as GET, POST, PUT or DELETE.