Rust

Send emails via Reloop SMTP using Lettre in Rust.

Rust SMTP Integration

Send emails in Rust using the high-performance Lettre crate.

Installation

Add lettre to your Cargo.toml:

[dependencies]
lettre = "0.11"

Code Example

use lettre::transport::smtp::authentication::Credentials;
use lettre::{Message, SmtpTransport, Transport};
use std::env;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let api_key = env::var("RELOOP_API_KEY")?;

    let email = Message::builder()
        .from("onboarding@reloop.dev".parse()?)
        .to("delivered@resend.dev".parse()?)
        .subject("Hello from Lettre")
        .header(lettre::message::header::ContentType::TEXT_HTML)
        .body(String::from("<p>Congrats on sending your first email via Reloop SMTP using Lettre!</p>"))?;

    let creds = Credentials::new(api_key.clone(), api_key);

    // Open a local connection on port 587
    let mailer = SmtpTransport::starttls_relay("smtp.reloop.dev")?
        .credentials(creds)
        .build();

    // Send the email
    match mailer.send(&email) {
        Ok(_) => println!("Email sent successfully!"),
        Err(e) => panic!("Could not send email: {:?}", e),
    }

    Ok(())
}

Was this page helpful?

Edit this page