Skip to content

Send email ​

Agents send email from the project's address, under your policy. The project needs its email source: without it, email_send answers EMAIL_SOURCE_REQUIRED.

Send ​

text
email_send({
  to: ["customer@example.com"],
  subject: "Your order has shipped",
  text: "Hi, your order 1042 left our warehouse today."
})

The email goes out from "Acme" <acme@in.brynth.ai>, with your project's name and slug. html adds an HTML version; attachments takes up to 10 files, 10 MB in total: files from the project disk (paths or disk:// references) or attachments of received emails (evt_…/name).

The result has a status:

  • queued: accepted for delivery;
  • pending: your policy asked a person and the answer did not come within wait_seconds; the request_id tells you which request to follow;
  • cancelled: the person denied it or the request expired; comment carries the person's comment, if any.

Policy ​

With no matching rule, email_send is queued at once. A rule can require approval, for example for recipients outside your domain:

json
{ "match": { "tool": "email_send", "to_domain_not_in": ["acme.example"] }, "effect": "require_approval" }

Rules can match to_domain_in, to_domain_not_in, agent and platform. See Requests and policy.

Replies ​

By default (reply_to_inbox: true) replies come back to the project inbox as email.received events with reply_to set. See Receive email.

Limits ​

50 emails per 24 hours and 1,000 per calendar month (UTC) per project, one per recipient, up to 50 recipients per email. If more than 0.1% of the emails of the last 7 days are marked as spam, or more than 5% bounce once the project has sent at least 20 in that window, sending stops for the project and email_send answers SEND_BLOCKED. Only Brynth support can lift the block.

CLI and skill released under the MIT License.