The execution layer for agent communication

Send email. Guarantee execution. Prove the outcome.

Not another email API — the infrastructure that ensures every email actually happens. Multi-provider failover (SES Ireland + Brevo France). EU data residency. Zero email loss. Governance.

send_sync
POST /api/v1/emails/send_sync

{
  "from": "agent@yourapp.com",
  "to": "user@example.com",
  "subject": "Invoice #1247",
  "html": "<h1>Your invoice is ready</h1>"
}
1.04 seconds later
{
  "status": "delivered",
  "message_id": "msg_abc123",
  "global_message_id": "gm_a1b2c3d4...",
  "provider": "ses",
  "latency_ms": 1040
}

Your agent decided to send it. Truncus makes sure it actually happened.

Start free — 3,000 emails/month. No credit card.

Resend

Send

Developer email API

“Send email easily”

AgentMail

Converse

Agent inbox system

“Give agents an inbox”

Truncus

Execute

Execution + reliability layer

“Multi-provider. EU-native. Zero loss.”

Email APIs send. Truncus executes.

Most email APIs return 202 Accepted and call it done. What actually happened? Nobody knows until a webhook fires hours later.

Truncus is different. Every email is a tracked operation:

  • Synchronous delivery confirmation (send_sync)
  • Durable operations with retry + failover
  • Pre-send validation before you risk your reputation

Your agent doesn't fire-and-forget. It executes, confirms, and moves on.

Where Truncus sits

Below your agent logic. Above raw email providers. The execution layer.

Your Agent / App

Truncus Execution Layer

Validate

spam score domain health confidence dedup check

Execute

send / send_sync retry + failover batch / schedule guarantees

Govern

kill switch rate limits reputation cooldowns

Observe

lifecycle latency intelligence statistics

Inbound

receive classify intent correlate sentiment

Prove

global msg ID audit trail sandbox replay

AWS SES

primary (Ireland, eu-west-1)

Brevo

failover (France)

Circuit breaker: 5 failures in 60s triggers automatic failover. Dual MX records for inbound continuity.

99.9% uptime
<100ms p50 latency
No silent failures
100% explicit status responses

The execution stack

Providers: SES Ireland (primary) + Brevo France (automatic failover). Circuit breaker with 5-failure threshold.

Execution layer: Truncus (EU) — validates, routes, retries with exponential backoff, governs, proves. Failed queue with dead-letter recovery.

Complete execution layer

Multi-Provider Failover

SES Ireland primary. Brevo France automatic failover. Durable circuit breaker (5 failures in 60s triggers switch). Every email logs which provider delivered it.

Zero Email Loss

Failed emails enter a durable retry queue with exponential backoff (30s, 2m, 8m, 30m, 2h). Dead-letter recovery for permanent failures. Replay API for manual intervention.

Operations API

Durable email operations. Create, track, retry, cancel. Like Stripe PaymentIntents, but for email. Full attempt history per operation.

Pre-Send Validation

Confidence scoring, spam risk assessment, domain health check, recipient history. Know before you send.

EU Data Residency

Primary provider in Ireland (eu-west-1). Backup in France. Both providers EU-based. GDPR-native by architecture, not by add-on. Your emails never leave Europe.

Governance + Safety

Kill switch API, recipient cooldowns, account reputation engine, anomaly detection, provider health API. Every email logs which provider sent it.

Built for agents, not humans

Three real workflows. Execute, validate, recover.

Agent sends invoice

Durable operation with exactly_once guarantee

agent.ts
// Agent sends invoice — durable operation with guarantee
const op = await truncus.operations.create({
  type: 'email.send',
  delivery_guarantee: 'exactly_once',
  params: {
    from: 'billing@yourapp.com',
    to: customer.email,
    subject: `Invoice #${invoice.id}`,
    html: renderInvoice(invoice),
  },
});

const result = await truncus.operations.get(op.operation_id);
// { status: "completed", provider: "ses", delivered_at: "..." }

Agent handles bounce

Post-send intelligence with actionable recommendations

agent.ts
// Agent handles bounce gracefully
const email = await truncus.emails.get(messageId);

if (email.intelligence.failure_category === 'permanent') {
  // "The recipient email does not exist."
  await removeFromList(email.to);
} else if (email.intelligence.is_retryable) {
  // Already handled — Truncus retried across providers
}

Agent validates first

Pre-send confidence scoring protects reputation

agent.ts
// Agent validates before risking domain reputation
const check = await truncus.emails.validate({
  from: 'agent@yourapp.com',
  to: prospect.email,
  subject: 'Partnership opportunity',
});

if (check.recommendation === 'do_not_send') {
  // Skip — high bounce risk
  console.log(`Skipping: ${check.checks.spam_risk}`);
} else {
  await truncus.emails.sendSync({ ... });
}

Different category

Resend sends email. AgentMail gives agents an inbox. Truncus guarantees execution.

CapabilityTruncusResendSendGrid
Sync delivery confirmation
Yes (send_sync)
No
No
Operations API (durable sends)
Yes
No
No
Delivery guarantees
3 modes
Best effort
Best effort
Multi-provider failover
SES + Brevo (circuit breaker)
Single
Single
Pre-send validation
Yes
No
No
Post-send intelligence
Yes
No
No
Governance (kill switch, reputation)
Yes
No
No

Event log

Delivery events are stored in real time and remain queryable. Terminal state. Stored. Replayable.

Event Log
TimeMessage IDToSubjectStatusReason
09:14:02msg_8f21a3user@acme.comYour invoice is readydelivered
09:14:18msg_9b44c1old@defunct.coPassword resetbouncedmailbox_full
09:14:33msg_a2f7e8blocked@example.orgWelcome aboardrejectedsuppression_list
09:15:01msg_c3d9f2team@startup.ioDeployment succeededdelivered

Pricing

Starts free. No credit card required.

All plans include send_sync, Operations API, delivery guarantees, multi-provider failover (SES + Brevo), EU data residency, and governance. No annual contracts.

Free

$0/month

For testing and development

  • 3,000 emails/month
  • API access
  • Includes send_sync
  • Webhooks
  • EU data residency
  • Shared IP
Start free
Most popular

Pro

$19/month

For shipping products

  • 50,000 emails/month
  • 5 team seats
  • Includes send_sync
  • 5 custom domains
  • 90-day log retention
  • Open & click tracking
  • Email support
Upgrade to Pro

Scale

$99/month

For serious infrastructure

  • 300,000 emails/month
  • 20 team seats
  • Includes send_sync
  • Unlimited domains
  • 1-year log retention
  • Open & click tracking
  • SLA
  • Email support
Go Scale

No credit card required.

Why Truncus exists

J

Every email API tells you they sent it. None of them tell you it arrived. We built Truncus because agents need execution certainty, not optimistic status codes. If your system decided to send an email, you deserve to know what happened.

Jasper Founder, Van Moose

FAQ

No. Transactional only — receipts, notifications, password resets, alerts.
Primary email delivery via AWS SES in Ireland (eu-west-1). Automatic failover to Brevo in France. Account data, orchestration, and logs run in EU infrastructure. Both sending providers are EU-based. Operated by Van Moose (Netherlands).
Optional per email. Delivery tracking is always on.
You receive a 429 response with a retry_after value. No silent drops.
Yes. Per-tenant domain isolation, reputation separation, and warm-up.
New domains start at 500/day. Automatic ramp over 5 days. Progress visible in dashboard.

The execution layer for email.

Send email. Guarantee execution. Prove the outcome. Multi-provider failover, delivery guarantees, and governance on every plan.

Get API key

No credit card required.

Truncus — Email Execution Layer for Agents & SaaS | Truncus