id: mail_sender name: Mail Sender version: 1.0.0 description: "Send email over SMTP — plain-text and rich HTML bodies (with inline data-URI images), file attachments (base64), CC/BCC, Reply-To and custom headers. Supports plain, STARTTLS and SSL/TLS connections with optional authentication. Stdlib-only (smtplib), no extra Python dependencies; run on a remote engine when the SMTP server is only reachable from inside your network." changelog: "1.0.0 — Initial release: send-mail (text/HTML, inline images, base64 attachment, CC/BCC/Reply-To/custom headers) and a connectivity test." category: email # Per-instance configuration. Connects to an SMTP server to send outbound mail. # tls: None (plain, usually port 25), STARTTLS (upgrade a plain connection, # usually port 587), or SSL/TLS (implicit TLS, usually port 465). Username and # password are optional (some relays accept unauthenticated internal senders). config_schema: properties: host: type: string description: "SMTP server hostname or IP" port: type: string description: "SMTP port (25 plain, 587 STARTTLS, 465 SSL/TLS)" default: "25" username: type: string description: "SMTP username (leave empty for unauthenticated relays)" password: type: string description: "SMTP password" x-soar-sensitive: true from_address: type: string description: "Default sender address — 'user@host.com' or 'Full Name '" fqdn: type: string description: "Fully qualified domain name to present in EHLO (optional)" tls: type: string description: "Connection security: None, STARTTLS or SSL/TLS" default: None insecure: type: boolean description: "Trust any TLS certificate (not secure)" default: false required: - host - port - from_address commands: - id: send_mail name: mail-sender-send-mail description: "Send an email. At least one recipient (to/cc/bcc) is required; subject and body may be empty." inputs_schema: properties: to: { type: string, description: "Recipient(s) for the To field, comma-separated" } cc: { type: string, description: "CC recipient(s), comma-separated" } bcc: { type: string, description: "BCC recipient(s), comma-separated" } subject: { type: string, description: "Subject" } body: { type: string, description: "Plain-text body" } html_body: { type: string, description: "HTML body (inline data-URI images are extracted and embedded)" } reply_to: { type: string, description: "Reply-To address" } sender: { type: string, description: "Override the configured From address" } attachment_name: { type: string, description: "Attachment file name (with attachment_base64)" } attachment_base64: { type: string, description: "Attachment content, base64-encoded" } additional_headers: { type: string, description: "Extra headers as name=value;name2=value2" } required: [] outputs_schema: { properties: {} } - id: test_connection name: mail-sender-test-connection description: "Verify the SMTP connection and credentials without sending mail (used by the Test button)." risk: read inputs_schema: properties: {} required: [] outputs_schema: { properties: {} }