REST

Stands for "Representational State Transfer."

REST is a defined set of standards for transferring resources over the web. The REST method is commonly applied to APIs ("REST APIs"), which allow developers to access data from remote systems over the Internet.

REST defines six architectural constraints:

  1. Client-server model – a server processes client requests, and clients can only access required data from the server
  2. Stateless – requests are transient and no client data is stored on the server
  3. Cachable – requests can be cached to improve performance
  4. Uniform interface – access to data must be consistent for all users and systems
  5. Layered system support – requests can be processed hierarchically and routed across multiple systems
  6. Code on demand (optional) – servers can deliver executable code to client systems

REST vs. SOAP

REST is often contrasted with SOAP, another set of standards for transferring data over the Internet. However, REST is simply a design style, while SOAP is an actual protocol with specific rules and commands. Both REST and SOAP APIs transmit data over HTTP, but SOAP is limited to XML data, while REST is more flexible.

Because SOAP is an official protocol, all messages sent via SOAP must use the same "envelope" format, with a header and body. REST, which came after SOAP, has fewer constraints and is often considered a lightweight alternative to SOAP.

NOTE: APIs that conform to REST guidelines are technically called "RESTful APIs," but many developers refer to them as "REST APIs" instead.

Updated July 15, 2022 by Per C.

quizTest Your Knowledge

Which of the following requires an origin server?

A
NAT
0%
B
NFC
0%
C
CAN
0%
D
CDN
0%
Correct! Incorrect!     View the Origin Server definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of REST on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.