Per-agent reputation graph

Each agent has its own score. It’s built from real replies, bounces, and complaints. You can query it. You can act on it. One agent’s score never changes another’s; a workspace-wide breach pauses them all.

Signals

What feeds the score

Every agent gets its own reputation score, built from real engagement — not synthetic warmup networks. Reputation is isolated per workspace: an agent that crosses the complaint line is paused, and a workspace that crosses it has every agent paused, enforced on every send.

A reputation score per agent tells us exactly which one needs attention, instead of one number for the whole account.

Mei Lin ZhouOperations at Larchwhistle

Query it

Customers see what we see

The same score and 30-day counts we act on, from the API, either SDK, or the mails_get_reputation tool.

import { createClient } from "@mailsai/sdk";

const mails = createClient(); // reads MAILS_API_KEY

// Your agent's reputation score, built from real engagement
const rep = await mails.agent("hello").reputation();
// { agent_id: "agt_01K…", reputation: 0.873,
//   send_count_30d: 4120, bounce_count_30d: 7,
//   complaint_count_30d: 1, reply_count_30d: 380 }

// Inbound events carry a sender_reputation estimate from our scan
mails.agent("hello").onReply((event) => {
  if ((event.sender_reputation ?? 1) < 0.4) return; // ignore it
});

Protection

Enforced on every send

The score is not the only guard. Suppression, inbound scoring and the shared rail work beside it.

  • Suppression hits

    Every complaint counts against the score and suppresses that recipient platform-wide; every unsubscribe suppresses them across your workspace — enforced on every send from any of your agents.

  • Sender scores on inbound

    Inbound events carry a sender_reputation estimate from our scan — refuse to act on low-reputation senders before your classifier even runs.

  • Dedicated IPs and warmup

    Want reputation isolated from the shared pool? Automated dedicated IP warm-up covers when a dedicated IP is worth having, and why below real volume it is not. Evaluating warmup tools? Email warmup service explains why the shared rail makes them unnecessary.

Give your first agent an inbox

Free covers 3,000 emails and 3,000 inbound replies a month, with no card. Upgrade when your agents get busy.

Get your API key