Expand description
§CatzConnect SDK (Rust)
A secure, minimal SDK for sending encrypted communication requests (e.g., email OTP, Transactional) to the CatzConnect API.
§Quick start
# Cargo.toml
[dependencies]
catzconnect = "1.0.3"
tokio = { version = "1", features = ["full"] }
dotenvy = "0.15"use catzconnect::{CatzConnect, types::{Channel, MessageType, SendInput, SendPayload, Template}};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
dotenvy::dotenv().ok();
let resp = CatzConnect::send(SendInput {
message_type: MessageType::Verification,
channel: Channel::Email,
template: Template::Otp,
identity: "user@domain.com".to_string(),
payload: SendPayload {
to: Some("user@example.com".into()),
otp: Some("123456".into()),
subject: None,
body: None,
},
}, None)
.await?;
println!("{resp}");
Ok(())
}use catzconnect::{CatzConnect, types::{Channel, MessageType, SendInput, SendPayload, Template}};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
dotenvy::dotenv().ok();
let resp = CatzConnect::send(SendInput {
message_type: MessageType::Transactional,
channel: Channel::Email,
template: Template::Custom,
identity: "user@domain.com".to_string(),
payload: SendPayload {
to: Some("user@example.com".into()),
otp: None,
subject: Some("hello world".into()),
body: Some("welcome to catzconnect".into()),
},
}, None)
.await?;
println!("{resp}");
Ok(())
}Re-exports§
pub use error::CatzError;