2 releases

Uses new Rust 2024

0.1.1 Jan 2, 2026
0.1.0 Aug 31, 2024

#2173 in Network programming


Used in aqara-cli

MIT license

220KB
5.5K SLoC

Table of Contents↗️

aqara-sdk-rust

Aqara SDK for Rust.


Features

  • Auth interface
  • Location management interface
  • Equipment distribution network interface
  • Device management interface
  • Device resource interface
  • Infrared device management interface
  • Device firmware management interface
  • Linkage configuration query interface
  • Automation management interface
  • Scene management interface
  • Condition set management interface
  • Voice control interface
  • Push subscription interface

Usage

[dependencies]
aqara = "0.1.0"
use aqara::types::{Credentials, Endpoint};
use aqara::Client;

#[tokio::main]
async fn main() -> Result<(), aqara::Error> {
    let client = Client::builder(Credentials::new("APP_ID", "KEY_ID", "APP_KEY"))
        .endpoint(Endpoint::Singapore)
        .access_token("ACCESS_TOKEN")
        .build()?;

    let resp = client.positions().list(Default::default()).await?;
    println!("requestId={} message={}", resp.request_id(), resp.message());
    println!("result={:?}", resp.result());

    Ok(())
}

Dependencies

~11–31MB
~504K SLoC