"REST"' or "Representational State Transfer" is an architectural style or set of constraints used in designing web applications. It is usually paired with APIs, or "application programming interface", that helps create these web applications pulling data from a link to display the data in a RESTful manner.
RESTful APIs leverage HTTP methods such as (GET, POST, PATCH, & DELETE). It allows us to Create, Read, Update, and Delete or "CRUD", various data and helps us manipulate elements in software applications, databases, and APIs.
Utilizing these HTTP methods facilitates user communication between the client and server by initiating requests sent to the server. Whenever an action is performed on a website, such as creating a post on Instagram or accessing someone's profile on Facebook, a request is sent to the server to retrieve the desired information.
Image provided by Joseph Benharosh
REST APIs can be used in any programming language and support a variety of data formats. Although this makes it easier for programmers to use APIs, there are some architectural constraints such as Client-server, Statelessness, Uniform Interface, Cacheability, Layered system architecture, and Code on Demand (optional).