Skip to main content

AWS SES (Send Email)

Empower your agents to send transactional and marketing emails at scale using AWS Simple Email Service (SES).

This guide will help you configure the AWS SES tool, manage credentials, and send both plain text and HTML emails.

💡 Core Concepts

To use this tool effectively, you need to understand the AWS prerequisites.

1. What is AWS SES?

Amazon Simple Email Service (SES) is a cloud-based email sending service. Your agent uses this to send notifications, reports, or transactional emails programmatically.

2. The "Sandbox" Limitation

By default, new AWS accounts are in the SES Sandbox.

  • You can only send email from verified addresses.
  • You can only send email to verified addresses.
  • You must request a production access limit increase from AWS to email unverified recipients.

⚙️ Configuration Steps

Follow these steps to authorize and configure the email capability.

Prepare AWS Credentials

  1. Log in to your AWS Console and navigate to IAM.
  2. Create a User with AmazonSESFullAccess (or a custom policy allowing ses:SendEmail).
  3. Generate an Access Key ID and Secret Access Key.
  4. Navigate to the SES Console and verify the "Identity" (email address) you plan to send from (e.g., notifications@yourcompany.com).

Configure Tool in YAML

You need to provide your sender details and AWS credentials in the tool configuration.

  • sender_email: The verified email address the agent will send from.
  • sender_name: (Optional) The "Friendly Name" that appears in the inbox (e.g., "Support Team").
  • AWS_REGION: The region where your SES identity is verified (e.g., us-east-1).
Security Note

For production environments, ensure your AWS Access Keys are managed securely according to your deployment standards (e.g., SVAHNAR Key Vault), rather than hardcoded in plain text if possible.

Agent Instructions

Once configured, you simply tell the agent what to send. The agent will dynamically generate:

  • recipients: Who to email.
  • subject: The subject line.
  • body_text & body_html: The content of the email.

📚 Practical Recipes

Recipe 1: Basic Notification Agent

Use Case: An agent that sends a simple text alert to a user.

create_vertical_agent_network:
agent-1:
agent_name: alert_bot
LLM_config:
params:
model: gpt-5-nano
tools:
tool_assigned:
- name: AWS_SES_send_email
config:
sender_email: "alerts@svahnar.com"
sender_name: "SVAHNAR Alerts"
AWS_REGION: "us-east-1"
AWS_ACCESS_KEY_ID: "YOUR_ACCESS_KEY"
AWS_SECRET_ACCESS_KEY: "YOUR_SECRET_KEY"
agent_function:
- You are a monitoring assistant.
- If the user asks to send an alert, extract the email address and send a summary.
- Ensure you send the email to the specific recipient provided.
incoming_edge:
- Start
outgoing_edge: []