What is REST? - Deepstash
What is REST?

What is REST?

Curated from: en.wikipedia.org

Ideas, facts & insights covering these topics:

9 ideas


336 reads


Explore the World's Best Ideas

Join today and uncover 100+ curated journeys from 50+ topics. Unlock access to our mobile app with extensive features.

Representational state transfer

Representational state transfer (REST) is a software architectural style that was created to guide the design and development of the architecture for the World Wide Web. REST defines a set of constraints for how the architecture of an Internet-scale distributed hypermedia system, such as the Web, should behave.


80 reads

The REST architectural style is designed for client-server applications. The coupling between the client and the server must be as loose as possible to facilitate large-scale adoption. This is achieved by creating a layer of abstraction on the server by defining resources that encapsulate entities (e.g. files) on the server and so hiding the underlying implementation details (file server, database, etc.).


32 reads

Clients can only access resources using URIs. In other words, the client requests a resource using a URI and the server responds with a representation of the resource. A representation of a resource is another important concept in REST - to ensure responses can be interpreted by the widest possible number of client applications a representation of the resource is sent in hypertext format.


19 reads

The REST architectural style defines constraints, which, when applied to the system architecture, it gains desirable non-functional properties, such as performance, scalability, simplicity, modifiability, visibility, portability, and reliability.


110 reads

Client–server architecture

The client-server design pattern enforces the separation of concerns, which helps the client and the server components evolve independently.

By separating the user interface concerns (client) from the data storage concerns (server), we improve the portability of the user interface across multiple platforms and improve scalability by simplifying the server components.


32 reads


Statelessness means that no session information is retained by the server. Relevant session data is sent to the sever by the client in such a way that every packet of information transferred can be understood in isolation.

For example, in a RESTful API, making subsequent requests should be processed and fulfilled by the server without it keeping track of those requests, treating them independently.


17 reads


The cacheable constraint requires that a response should implicitly or explicitly label itself as cacheable or non-cacheable.

If the response is cacheable, the client application gets the right to reuse the response data later for equivalent requests and a specified period.


17 reads

Layered system

The layered system style allows an architecture to be composed of hierarchical layers by constraining component behavior.

For example, in a layered system, each component cannot see beyond the immediate layer they are interacting with.


13 reads

Uniform Interface

By applying the principle of generality to the components interface, we can simplify the overall system architecture and improve the visibility of interactions.

Multiple architectural constraints help in obtaining a uniform interface and guiding the behaviour of components.

The following four constraints can achieve a uniform REST interface:

  • Identification of resources
  • Manipulation of resources through representations
  • Self-descriptive messages
  • Hypermedia as the engine of application state


16 reads


Mircea-Ioan Oprea's ideas are part of this journey:

Machine Learning With Google

Learn more about artificialintelligence with this collection

Understanding machine learning models

Improving data analysis and decision-making

How Google uses logic in machine learning

Related collections

Similar ideas

What are JWTs?

6 ideas

What is WSGI?

5 ideas

What is WSGI?


What is NGINX?

3 ideas

Read & Learn

20x Faster





Personalized microlearning

100+ Learning Journeys

Access to 200,000+ ideas

Access to the mobile app

Unlimited idea saving

Unlimited history

Unlimited listening to ideas

Downloading & offline access

Supercharge your mind with one idea per day

Enter your email and spend 1 minute every day to learn something new.


I agree to receive email updates