Something I have personally never worked on as a developer is REST API. AWS is a piloting force in the sphere of web development so there was no better place to read up on this subject than there. Going through you can really see why REST API is so vital to the modern web.

What is an API?
API stands for Application Programming Interface, this defines the rules you must follow to communicate with other software systems.
API is a gateway betweek:
- Clients: Users who want to access information from the web
- Resources: The information that different applications provide to their clients.
What is REST?
REST stands for Representational State Transfer, this is a software architecture that imposes conditions on how an API should work. It was originally created as a guideline to manage communication on complex networks. As a result one architecture developers can use is RESTful API.
Here are some of the principles of the REST architectural style:
- Uniform interface
- Indicates the server transfers information in a standard format
- 4 architectural contraints:
- Requests should identify resources
- Clients have enough info in the resource representation to modify or delete the resource if wanted
- Clients receive info about how to process the representation further
- Clients receive info about all other related resources they need to complete a task.
- Statelessness
- A communication method in which the server completes every client request independently of all previous requests
- Layered System
- Client can connect to other authorized intermediaries between the client & server, and it will still receive responses between the server
- Cache-ability
- Able to store some responses on the client or on an intermediary to improve response time
- Code on demand
- Servers can temporarily extend or customize client functionality by transferring programming code to the client.
Benefits to REST API:
Here are the few of the benefits AWS includes:
- Scalability
- Flexibility
- Independence
How it works:
The basic functions are similar to browsing the internet, here are the general steps towards any REST API call:
- The client sends a request to the server
- The server authenticates the client and confirms permissions to make request
- The server receives request and processes it
- The server returns a response to the client.
The client request contains these main components:
- Unique resource identifier
- Method
- GET
- Access resources at URL
- POST
- Send data to server
- PUT
- Update existing resources on the server
- DELETE
- Request to remove resource
- GET
- HTTP headers
- Data
- Parameters
- Path: Specifies URL details
- Query: Requests more info about resource
- Cookie: Provides authentication
Final Thoughts:
My understanding of REST APIs was very limited but leave it to the best in the business to have all the information necessary to learn. I definitely think it would take time to implement nonetheless but having this basic understanding is important in the end. If you want to learn more yourself visit this page on AWS.
From the blog Petraq Mele blog posts by Petraq Mele and used with permission of the author. All other rights reserved by the author.




