An architectural style that can be used to build software in which clients make requests of services. A resource is addressed via a unique URI, and a resource request is accomplished using the HTTP standard verbs, GET, POST, PUT, and DELETE. All the information necessary to process a resource request is contained inside the request itself.