REST API is becoming more concrete as the internet world progresses. It comes up with a big list of benefits for the market industries.
Since RESTful web services do not follow any prescribed standard except HTTP, it becomes essential to build API with best practices to enhance client adoption and ease development.
In this blog, we will discuss the top 30 Rest Api Interview Questions and Answers for experienced that are often asked by interviewers.
1. What do you know about REST Web Services?
Representation State Transfer (REST) is defined as stateless client-server architecture used for the development of applications. It leverages the benefit of the HTTP method and Protocols for defining actions. Though there is no particular protocol to be used, we use HTTP/HTTPS in most cases.
In comparison with SOAP web services, REST API web services are light-weighted and do not follow any specific standard. We can make use of JSON, text, XML, or other data for responses or requests.
2. Tell us some key characteristics of REST?
Well, the key characteristics of REST are –
- Since REST is stateless, hence there is no state or session for the Server
- The server could restart between the two calls whenever the data is passed over it with a Well-applied REST API
- POST methods are mostly used by Web services to make operations, however, REST makes use of GET for accessing resources.
3. What are the benefits of using REST web services?
Some of the big advantages of using REST API are-
- The learning curve is quite simple and easy as it works on HTTP/HTTPS protocol
- Supporting several technologies for transferring data including JSON, XML, text, images, etc
- REST can be easily tested on any browsers
- There is no contract defined between the client and the server, so their installation could be loosely coupled.
- REST – lightweight protocol
4. What do you mean by “Resource” in REST?
REST architecture considers every content part as its resource. Now, resources could be HTML pages, text files, videos, images, or business data.
Access to resources is provided by REST Server and its REST Client that accesses & makes modifications to these resources. Each resource in REST is identified by global IDs /URIs.
5. What is the most popular way of representing resources in REST?
Different representations are used by REST to define resources like XML, JSON, and text. The most popular representation of resources is – JSON and XML.
6. Name the most commonly used HTTP methods that are supported by REST?
GET, PUT, POST, DELETE, OPTIONS, HEAD.
7. What is the function of GET and POST?
Well, GET requests to resource at the request URL. The request body shouldn’t contain as it will be discarded. Maybe it is cached on the server or locally.
Whereas, POST submits information to services for processing as it must return new or modified resources.
8. Is there any disadvantage of REST web services?
In each request, web services require extra information and then to be interpreted to get the client’s state. This happens when client interactions needed to be taken care of. This is included in the cons of staleness in RESTful web services.
9. How you will define idempotent operation?
Idempotent operations state that results will always remain the same. It doesn’t matter how many times operations are involved.
10. Which type of web services are counted amongst the idempotent operation?
PUT and DELETE
11. What Web services methods are read-only?
GET operations are safe and read-only
12. How you will tell the difference between PUT and POST operations?
Generally, both are the same but the difference lies in their result. While PUT operation is idempotent and shows no change; POST operations come up with different results.
13. What is the purpose of the OPTIONS method?
OPTIONS lists down all the supported operations in RESTful web services. Plus, it must be in a read-only format.
14. Which HTTP response header shows the date & time of resources when it was modified last?
15. Which HTTP response header gives you control over caching?
Cache-Control gives you control over caching.
16. Tell us about the Cache-control header?
A cache control header helps you to attain cache ability. There is a brief description of several cache-control headers like –
- Public – Those resources marked public are cached by any intermediate component between the server and the client.
- Private – These resources are cached only by the client
- No cache– This explains a specific resource cannot be cached and that’s why the whole process is stopped.
17. Name the header of the HTTP response that sets expiration time and date of caching?
18. We can set a time limit for caching. Right? So, which directives of Cache-control will use in the HTTP response?
The max-age directive, we would be used. This says caching is valid up to max-age (in seconds). After this, the client has to provide another request.
19. What are some best practices for caching that are good to be followed?
20. What do you understand by JAX-RS?
JAX-RS is a Java API for RESTful web services. Undoubtedly, the most popular Java programming language that is widely supporting web Restful web services. Here are some implementations of JAX-RS –
- Apache CFX
Jersey is the most popular amongst these mentioned.
21. Tell us something about JAX-WS?
JAX-WS again are libraries just like JAX-RS which are used for communicating with Java in several ways. JAX-WS is a library that we can use for SOAP communication in JAVA.
22. What is the purpose of showing the HTTP Status Code?
HTTP status codes are set predefined codes that describe the task done at the server. For instance, HTTP Status 404 states – your requested resources are not available on the server.
23. What about the 200 status code?
Whenever this code appears on the screen, it means OK showing success.
24. We often see code Error 400. What does it mean?
400 say BAD REQUEST. It means you have added invalid inputs that are not present on the server. It could be missing data or a validation error.
25. Can we make use of GET request despite PUT for creating a resource?
Well, PUT as well as POST methods are only used for creating the resource. However, GET is just used for requesting the resource. So, the answer is No.
26. What are the major challenges that are often faced while doing API Testing?
There are major challenges like – Call sequencing, parameter selection, Output verification & validation, and Parameter combination. Plus, the major challenge is to provide input values since the GUI is not available.
27. How SOAP is different from REST API? Among the most frequently asked rest api interview questions.
SOAP (simple object access protocol) works with XML format only whereas REST API is possessed with varied options like HTML, XML, JSON, plain text, etc. The most refereed format that is used for data transferring is JSON in REST API.
28. What kind of bug you can find during API Testing?
API testing helps us to get many types of bugs that are-
- Missing or duplicate functionality
- Multi-thread issue
- Incompatible error handling
- Unused flags
- Improper errors
- Reliability issues
29. Name the core components of the HTTP response?
HTTP Version, Status/Response Code, Response Header & Response Body.
30. Can you tell me about the three main tools that are available for testing web services?
Yes, the three tools that help test SOAP and RESTful web services are –
We hope you are clear with the most important questions that are often asked in the interviews. Learn these thoroughly and answer confidently. You will certainly get your job. All the best, do well!