Python SDK
Integrate test scripts faster with enhanced SDK features and better developer experience.
Python SDK
Our open-source Python client wraps our REST API, so you don't have to. It includes direct storage uploads for better performance, OpenHTF one-line integration, and offline upload helpers. It works well, but we want to make it even simpler to integrate into any test script, evolving from a basic client to a full SDK.
What we want to do:
- Upload queue to handle cases where the test environment is offline
- Review API parameter consistency, simplifying where possible (e.g., using native Python types for durations)
- Improve console logging with clearer messages, links to the TofuPilot app, and direct error references in documentation
- Smoother onboarding with a CLI-like experience to prompt for missing API keys and proactively resolve issues
- Auto-generate the Python client structure from our OpenAPI spec, enabling future SDKs (C#, Rust, etc.)
- Local config file support to offload parameters such as procedure ID from test scripts
- Higher-level functions for structured logging of phases and measurements instead of requiring users to build a final upload structure manually
- Real-time streaming of test phases and measurements in non-OpenHTF Python scripts
- Review dependencies to keep the package as lightweight as possible
What we're not sure about yet:
- Asynchronous test run uploads after execution
- Anonymous usage analytics collection in Python to better understand usage patterns, needs, and issues
Status
Status: in_progress
Target: March