Technical Documentation: Postman (API Tester)
Architecture


The Postman screen is a self-contained "HTTP Workbench" built into the Flutter app. It uses the Dio or Http packages to perform authenticated network operations.
Technical Details
- File Path: lib/screens/postman_screen.dart
- Component Core: Relies on the PostmanProvider for managing the active request state and history.
Functional Components
- Request Builder:
- Method Selector: Dropdown for HTTP Verbs.
- Headers Editor: Key-Value pair list for authentication and metadata.
- Body Editor: A syntax-highlighted editor for JSON payloads.
- History Engine: Persists the last 50 requests in local storage, allowing for quick recovery and re-execution.
- JSON Renderer: Uses the same deep-viewing engine as the "ROS Topics" explorer to prettify and search through API responses.
Security Controls
- Admin Only: This screen is automatically hidden for non-admin users to prevent unauthorized API manipulation.
- Auth Proxy: Automatically injects the active user's JWT token into requests targeting the local robot_host to ensure developers don't have to manually manage authentication headers.
Developer Utilities
- CURL Export: One-click button to convert the current UI request into a standard curl command for use in external scripts or terminals.
- Status Highlighting: Color-coded markers for response statuses (e.g., 200 OK = Green, 500 Error = Red).