This is probably best answered by the team building the application, but here are some considerations that I can think of:
- REST services are pretty easy to build. Lots of frameworks exist in every tech stack that facilitate development, testing, and deployment. They may have started with REST services.
- REST services are also easier to reuse. The HTTP protocol is easier to handle. Besides, web sockets are more geared towards browser-based applications. REST services can be used by browser applications, web APIs, microservices, mobile apps — pretty much anything built with technology that has an HTTP client. Which is basically every tech stack today.
- Web sockets are a different protocol, and a different way of programming. Web sockets might have been offered after the REST services were built. This becomes an economic decision. It would require additional investment to support a two-way socket connection, which might not have been worth the effort.
- Furthermore, web sockets might not have been meant as a fully featured service. The use case might have been purely for notifications, with all business operations going through the REST services. Here again, the motivation is probably to simplify maintenance and development.
It seems to me as a redundant to use both REST and WebSockets, and my instinct tells me to just pass the actual data using only WebSocket both ways.
Am I missing something?
You might be underestimating the effort required to support their business operations from both a REST interface and web sockets. They involve different programming frameworks and different problems. Each interface would need to be fully tested, and that is a significant amount of work for even medium-sized applications.
Because the effort is so high, it is difficult to discuss technical limitations without also discussing time and money. The logic to handle an HTTP request and response is vastly different than for handling messages over a persistent connection. This difference in protocols is a technical limitation, which translates to more development time, which costs more money.
GeeksForGeeks.org has a good write-up about the differences between HTTP and web sockets, including the use cases for each. That might be a good place to start.
Unfortunately, an in-depth comprehensive answer to your question is not possible without knowledge of this company's history, their product priorities, and technology roadmap. Strangers on the Internet won't have this knowledge.