Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.lettr.com/llms.txt

Use this file to discover all available pages before exploring further.

The client.domains service manages your sending domains — useful for multi-tenant apps onboarding customer domains, or for automating DNS verification. For the concepts behind domain setup (SPF, DKIM, DMARC), see Sending Domains.
use lettr::Lettr;

let client = Lettr::new("your-api-key");

List Domains

let domains = client.domains.list().await?;
for domain in &domains {
    println!("{}: {} (can send: {})", domain.domain, domain.status, domain.can_send);
}

API Reference

GET /domains

Create a Domain

let result = client.domains.create("example.com").await?;
println!("DKIM selector: {:?}", result.dkim);

API Reference

POST /domains

Get Domain Details

let detail = client.domains.get("example.com").await?;
println!("DKIM: {:?}, DMARC: {:?}, SPF: {:?}",
    detail.dkim_status, detail.dmarc_status, detail.spf_status);

API Reference

GET /domains/

Verify Domain DNS

After publishing the records, trigger a verification check:
let verification = client.domains.verify("example.com").await?;
println!("DKIM: {}, CNAME: {}, DMARC: {}, SPF: {}",
    verification.dkim_status, verification.cname_status,
    verification.dmarc_status, verification.spf_status);
DNS changes take time to propagate. If verification fails right after publishing, wait a few minutes and retry. See Domain Verification troubleshooting.

API Reference

POST /domains//verify

Delete a Domain

client.domains.delete("example.com").await?;
Deleting a domain stops all sending from it immediately. Emails from a deleted domain fail with a validation error.

API Reference

DELETE /domains/

What’s Next

Sending Domains

DNS setup: SPF, DKIM, DMARC

Webhooks

Receive delivery and engagement events