#![forbid(unsafe_code)]). It provides request builders, typed response models, secret masking and resources for sending, domains, mailboxes, templates, tracking and deliverability.
crates.io
wazobiamail — version 0.1.0Source
WazobiaMail/wazobiamail-rust
At a glance
Install
Cargo.toml:
Configure
Send your first email
send_with_idempotency(request, "order-1042") for safe retries.
What you can do
messages()— send, multipart attachments, tracking, spam checks, email logs.domains()— list/create/update/delete, DNS records and verification.domains().cloudflare()— account-level status, connect, sync and disconnect.mailboxes()— provisioning, credentials, storage and headless inbox.templates(),support(),billing(),units(),plans(),api_keys(),smtp_relays(),smtp_access(),status().
Errors
WazobiaError covers authentication, forbidden/upgrade, not found, conflict, validation, rate limit, server, timeout and transport errors. Match on the variant rather than string-matching messages:
src/errors.rs before matching optional fields; the crate keeps typed error data where the API supplies it.
Tokio and concurrency
The client is cheap to clone and holds anArc around configuration and the reqwest client. Reuse one instance across tasks. All operations are async, so run them inside a tokio runtime or an async framework.
