Skip to main content
For product overview and use cases, see SMTP email.

Send email programmatically

Use the same hostname, ports, TLS mode, and credentials as in SMTP connection parameters below. Replace placeholders with values from the Ruach Control Panel and your approved sender domain. Transactional credentials must be used only for transactional messages. Routing newsletters, cold outreach, or other promotional mail through transactional credentials undermines engagement and reputation and can reduce deliverability. Keep promotional sends on the credentials or accounts your team provisions for that purpose.
// npm install nodemailer
import nodemailer from "nodemailer";

const transporter = nodemailer.createTransport({
  host: "delivery.emailpnl.com",
  port: 587,
  secure: false,
  auth: {
    user: "SMTP_USERNAME",
    pass: "SMTP_PASSWORD",
  },
});

await transporter.sendMail({
  from: "Sender Name <sender@yourdomain.com>",
  to: "recipient@example.com",
  subject: "Test message",
  text: "Hello from Ruach SMTP.",
});
Alternative: use port 465 with implicit TLS (SSL/TLS) in your client or library instead of STARTTLS on port 587. Match the security mode to the port as in the table below.

SMTP connection parameters

ParameterValue
DescriptionWe recommend the description you chose when your account was created.
Hostname or server namedelivery.emailpnl.com
Port587 or 25 with STARTTLS encryption, or 465 with SSL/TLS encryption.
Connection securitySTARTTLS (with port 587 or 25) or SSL/TLS (with port 465).
Authentication methodNormal password
User nameThe username provided by us.
PasswordThe password provided by us

Configure your email client

Use the following host and ports:
  • Host: delivery.emailpnl.com
  • Ports: 587 or 25 with STARTTLS, or 465 with SSL/TLS
In most email clients, open Account Settings, then Outgoing Server (SMTP). In other applications, find the section for email sending or SMTP server configuration. Add an outgoing server and set the fields using the table above.