This project is a Tencent Cloud API SDK written in Rust, designed to help developers integrate Tencent Cloud services easily. The SDK uses asynchronous programming (via Tokio) and encapsulates functionalities such as request signing ( TC3-HMAC-SHA256), unified request handling, and modular service interfaces (e.g., CVM, Billing, Tag, etc.).
Usage
Add the crate
[]
= "0.1"
= { = "1", = ["macros", "rt-multi-thread"] }
Configure credentials and create clients
use ;
async
async
The blocking client mirrors the async API:
use ;
Features
- Asynchronous & Blocking Clients: Tokio-powered async client plus a reqwest blocking client sharing configuration and retry middleware.
- TC3 Signing Utilities: Reusable helpers to construct compliant TC3-HMAC-SHA256 headers.
- Strongly Typed Services: Service modules expose typed request/response models and ergonomic builders for filters, tags, and pagination.
- Actionable Error Taxonomy: Service errors are classified (auth, throttled, forbidden, etc.) via
ServiceErrorKind
for easier recovery logic. - Expanded Test Coverage: Wiremock-backed integration flows and deterministic signing snapshots keep regressions in check.
Implemented Interfaces
-
CVM Module
- DescribeInstances
- ResetInstancesPassword
- DescribeInstanceVncUrl
- StartInstances
- RebootInstances
- StopInstances
- ModifyInstancesProject
-
Tag Module
- DescribeProjects
-
Billing Module
- DescribeAccountBalance