This document provides an introductory guide to a simple travel agency demo. The demo showcases a web frontend interacting with a backend service. The backend service exposes three primary APIs: `/book`, `/checkin`, and `/cancel`. For data persistence, the backend stores information in an SQL database. Additionally, it communicates with external airline APIs via HTTP to facilitate booking and other related operations.
Use our demo site as a real customer to experience the entire process.
[Image: /images/blogs/a-simple-tutorial/1.png]
Recordings can be replayed by navigating to dashboard site. Select the play button on the sidebar to display a list of recorded sessions. The table and search attributes can be customized to meet customer requirements.
[Image: /images/blogs/a-simple-tutorial/2.png]
[Image: /images/blogs/a-simple-tutorial/3.png]
[Image: /images/blogs/a-simple-tutorial/4.png]
Backend recordings for demo-agency can be accessed at webclient site. To view them, select "App", then "demo-agency". Click on the "demo-agency" title, which has a red label indicating the number of recordings.
[Image: /images/blogs/a-simple-tutorial/5.png]
The table displays API endpoints. To access booking API recordings, expand the "/book" endpoint. Locate the most recent recording and click its green ID (e.g., "SP-192-168-1-165-2360001833") to view its details. This page presents the API's input and output, as well as the input and output of its dependency calls. For instance, the booking API interacts with an external airline booking API and stores the booking details in a database by inserting a new row using an SQL insert statement.
[Image: /images/blogs/a-simple-tutorial/6.png]
[Image: /images/blogs/a-simple-tutorial/7.png]
[Image: /images/blogs/a-simple-tutorial/8.png]
[Image: /images/blogs/a-simple-tutorial/9.png]
Clicking run test allows you to replay backend API recordings on the same instance (e.g., demo site). This reproduces the exact same states, including all data from the airline's API and database, ensuring precise problem reproduction and serving as convenient regression tests.
[Image: /images/blogs/a-simple-tutorial/10.png]
This section delves into the more advanced capabilities of the Softprobe demo and outlines various use cases beyond the basic tutorial.
As mentioned, the table and search attributes on the dashboard site can be customized. This allows users to tailor the display of recorded sessions to their specific needs, making it easier to find and analyze relevant data. Softprobe's recording capabilities offer significant benefits for customer support and auditing:
The ability to view the input and output of API calls, along with their dependency calls (like external airline APIs and SQL database interactions), provides powerful debugging and analysis capabilities. This granular level of detail is crucial for identifying issues within complex distributed systems.
The "run test" feature, which replays backend API recordings, is a cornerstone of this platform's advanced utility.
Recorded sessions can be analyzed for potential security vulnerabilities, such as improper input validation or unauthorized data access. Replaying these sessions with modified inputs can help in discovering and patching security flaws.
For new team members or during complex troubleshooting, the detailed recordings provide an invaluable way to understand the flow of data and interactions within the application and its dependencies. This serves as a living documentation of the system's behavior.