The client needed a solution to integrate public data from third-party service into their information system. The data may change multiple times a day and all changes must be detected as soon as possible. Also, the program must run on a low-end server that runs other services at the same time.
To achieve this, I reverse-engineered a website and mobile app of the service. Using its undocumented API, I implemented a fast and memory-efficient parser module with simple API.
Under the hood, the module receives credentials for connecting to a server and manages connections. When data arrives or an error occurs, it generates an event. All data from the server is processed taking into account the specified parameters and data received earlier. There are methods for sending session control commands to the server.
With this solution, the client got a competitive advantage. If you also need to collect more data to your information system, let me know.