The deliverability loop, closed

Send. Know it landed. See how the world received it.

The only email infrastructure that closes the deliverability loop end-to-end. No bolt-on tools. No vendor sprawl. EU-native.

send_sync

Know in 1 second if your email was delivered. Not 30 seconds via webhook. Not "accepted". Delivered.

Zero-touch DNS

Paste 4 records once. Truncus owns the rest forever — SPF, DKIM, DMARC, MTA-STS, plus weekly drift correction.

DMARC aggregator

Truncus runs its own DMARC ingestion endpoint, parsing aggregate reports from Gmail, Yahoo, and Outlook into your account — no third-party deliverability service required.

Start setup in under a minute.

99.9% uptime
<100ms p50 latency
No silent failures
Powering continuity across Van Moose systems

Why continuity matters

What happens when your email provider has an outage during admissions, during a security alert, during a payment confirmation window?

Without a continuity layer, the answer is: nothing gets delivered.

  • Password resets fail — users locked out, support tickets spike
  • Approval workflows stall — time-sensitive decisions delayed
  • Alert emails blocked — incidents go unnoticed

Critical email should not depend on a single provider. Truncus ensures it doesn't.

Today

Single provider

One dependency. One point of failure.

“If it goes down, we wait.”

During an outage

Disruption

Auth fails. Alerts stop. Users wait.

“When did this start?”

With Truncus

Continuity

Parallel infrastructure. Automatic failover.

“We kept delivering.”

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({ ... });
}

Response contract

Every send returns a terminal state. Failures include a machine-readable reason.

response.json

// call

const { status, message_id } = await truncus.emails.send(...)

// possible responses

1{ "status": "delivered", "message_id": "msg_8f21" }
2{ "status": "bounced", "reason": "mailbox_full" }
3{ "status": "rejected", "reason": "suppression_list" }

Delivery events are stored and queryable.

Traditional APITruncus send_sync
Send email
Know if delivered
Set up webhook server, wait, correlate
In the same response
Agent-friendly
No (async callbacks)
Yes (synchronous result)
Lines of code
40+ (send + webhook + correlation)
3 (one fetch call)

Built for agents

AI agents don't set up webhook servers. They call an API and need to know if it worked.

Traditional email APIs

  1. 1Send email
  2. 2Set up webhook endpoint
  3. 3Wait for callback
  4. 4Correlate callback to original send
  5. 5Handle timeouts and retries

Truncus

  1. 1Call send_sync
  2. 2Get the result

That's it.

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.

From zero to sending in under a minute

1Add your domain → ~5 seconds
21-click setup → ~10 seconds
3Verification → automatic
4Send test email → instant

Your first send

curl
curl -X POST https://truncus.co/api/v1/emails/send \
  -H "Authorization: Bearer tr_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "you@yourdomain.com",
    "to": "test@example.com",
    "subject": "Hello from Truncus",
    "html": "<p>It works.</p>"
  }'

Response includes terminal delivery status — delivered, bounced, or rejected. No polling. Full quickstart guide

Check your domain readiness

See if your domain is ready to send email — SPF, DMARC, and MX in seconds.

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

Beyond email APIs

Most email services stop at sending. Truncus provides continuity, observability, and provable delivery.

CapabilityTruncusTypical APIEnterprise API
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

Built for AI agents and autonomous systems

$ curl -X POST https://api.truncus.co/v1/emails/send \ -H "Authorization: Bearer tr_live_..."

What will it cost?

Starts free. No credit card required.

1050010K
1210

Estimated monthly volume

30K emails

Recommended plan

Pro($19/mo)

Start with Pro

Typical AI agent workloads

Agent typeEmails/dayMonthlyPlan
SaaS notifications2006KFree
Customer support bot50015KPro
AI outreach agent2,00060KPro
Monitoring & alerting5,000150KScale
Multi-tenant platform8,000240KScale

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

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