Skip to content
Browse the docs

Changelog

New features and changes, newest first, grouped by the day they shipped. Fixes ship as they are ready and are not listed one by one. To report a security issue, see Security. Subscribe to the changelog feed.

  • The Free plan now includes 5,000 emails a month, up to 170 a dayProduct · 57201d40

  • The Free plan now includes 3,000 emails a month, up to 100 a dayProduct · ec5df5fc

  • Connecting an MCP client takes about 15 ms, down from about 2 secondsMCP · faaa3c53
  • Received mail has its own permission, inbound:read: full-access keys hold it, sending keys do not, and a sending key can still reply to a message it was handed (receiving is not open yet)Agents · 3b2ea00e
  • Delete a template from the console, and a preview names any variable a row is missingTemplates · 40137f62
  • Choose Free, Starter, Pro or Scale when you sign up, and see what each plan gives in Settings → BillingPlans · 9b5f4af0

  • Opt-in overage on paid plans: keep sending past your monthly inclusion up to a ceiling you set, billed per 1,000 emails, with notices at 80% and 100%Plans · f93b0501
  • Choose a TLS mode per domain: try TLS and fall back to plain, or deliver only over TLSDomains · 250197af
  • Each domain shows a timeline of its checks: when a required record was found, and when one went missingDomains · 4c80b093
  • Free is a plan: 1,000 emails a month, up to 100 a day, 1 sending domain, no card and no expiryPlans · c0947214
  • Audience, Broadcasts and Automations in the console: contacts, segments and topics, sending or cancelling a broadcast, and each automation’s runsBroadcasts · 6547d761

  • Guides for Next.js, Supabase, Better Auth, Auth.js, Hono, Express and SvelteKit, and the Node SDK installs with pnpm add agentisendGuides · 0f1ce141
  • Volume options on Pro up to 1 million emails a month and on Scale up to 2.5 millionPlans · 373a3040

  • Send a test email to yourself before your domain’s DNS is set upGetting started · eaef0fcd

  • A two-screen add-domain wizard that separates the records a domain needs from the ones it only recommendsDomains · 28ef60d4

  • A pending domain is rechecked for you, and an agent can wait for verification with wait_for_domainDomains · 3ccd5afe
  • Request bodies written for Resend’s API are accepted as they areMigration · 220703e0
  • MCP tools for metrics, request logs, broadcasts and automationsMCP · d51b2dd8
  • Agent inboxes: read received mail, group it into threads and reply, over the API and MCP (receiving is not open yet)Agents · fe1fcd27
  • The console works on screens narrower than 1,024 pxConsole · 77ec2add

  • Yearly billing, at 20% off the monthly pricePlans · 16b80801
  • Runnable examples for Next.js, Supabase, Better Auth, Auth.js, Hono, Express and SvelteKit, each run by the test suite against a local AgentiSend serverGuides · 998a01f5

  • Open a support request from the console and follow the conversation thereSupport · 6fde43cf

  • The Resend-compatible client returns { data, error } instead of throwing, as Resend’s SDK doesMigration · 36d3cb3f
  • Per-key request rate limits, with the remaining allowance in each response’s headersBudgets and limits · 9153c4c6
  • Choose a US or EU region for each domain, and a tracking hostname per domainDomains · 1f1a563c
  • Sign out your other sessions from Settings → SecurityConsole · a03b924b
  • A spam complaint reported by a mailbox provider suppresses the address and sends an email.complained eventDeliverability · 9503ab74

  • An AgentiSend skill that teaches coding agents the APIAgents · bac10ebe
  • The CLI adds webhooks listen, doctor, profiles and shell completionsSDKs and CLI · e7ed731c
  • Two-step sign-in with an authenticator app and recovery codes, and an account setting that requires it for everyoneConsole · cca24d92
  • A local MCP server you start with npx, for clients that run tools on your machineMCP · 5dec62cf
  • An agent can ask a person to approve a send with a tool, and list what is waitingApprovals · d096f598
  • explain_email tells an agent why a message was not delivered and which calls fix itMCP · 369fda40
  • preflight_email checks a send against every rule without sending itMCP · 3055624c
  • whoami: an agent reads its account, scopes, budget and stop state in one callMCP · ed498efd
  • An audit log of the changes made on your account, in SettingsConsole · 25a1ed42
  • Team members with Owner, Admin and Viewer roles, invited by emailConsole · 7d8a6f9d
  • A public status page with 90 days of availability historyStatus · 27220ca3
  • Notifications in the console, with a bell and preferences per typeConsole · 6dd155ab
  • A log of your API requests, filtered by date and status, at GET /logsAPI · 31f9a650
  • Read the mail that arrives at your domains over the API: the message, its source and its attachmentsAgents · 89ba1127
  • Declare what a custom event looks like, and a payload that does not match is refused with the field namedAutomations · e6c3c5fa
  • Automation runs keep the outcome of every stepAutomations · 9a049211
  • The endpoints a Resend integration already calls, so moving over is a base URL and a keyMigration · dee9c319
  • Subscription topics: a contact opts in or out per topic, and a send to a topic carries its own one-click unsubscribeAudience · b39b38a8
  • Docs generated from the API itself: reference, errors, events, guides and searchDocs · 2989a1a0
  • One pagination format on every list endpointAPI · cea71ef3
  • A template editor with versions, a diff between any two and rollbackTemplates · 7d64f7b8
  • Metrics broken down by domain and by API key, with an event filterConsole · ce576614
  • The Trust screen: your standing, the thresholds it is measured against, sample messages and how to appealTrust · 94666eba
  • Rotate an API key with a 0, 1 or 24 hour grace period, and see each key’s requests over 30 daysAPI keys · 6162db12
  • Webhook delivery history, replay over a time range, and signing-secret rotationWebhooks · 6ccdf94a
  • A deliverability screen: the thresholds, each bounce class and what to do about itDeliverability · bbc8f333
  • The Agents screen: every key’s budget and state, the approval queue and an account-wide kill switchBudgets and limits · 15ecd705
  • Simulated sends do not use your budgetBudgets and limits · 724fc66e

  • Marketing and transactional mail are separate streams, so an unsubscribe from a campaign never stops a password resetDeliverability · 5afe264d

  • Domain connect: the API detects your DNS provider from its nameservers and returns the records to addDomains · 157c5cbc
  • GET /usage: each key’s budget, and the account’s sends, bounces and complaints over 24 hours and 30 daysAPI · 5b5fe90e
  • POST /emails/lint scores a message’s content before you send itDeliverability · eb011d10
  • GET /emails/{id}/explain: what happened to a message and how to fix itAPI · c76d2284
  • POST /emails/preflight runs every check on a send without sending itAPI · 52f8427e

  • The agentisend CLI, with output an agent can parseSDKs and CLI · 29082a30
  • A Resend compatibility client, so existing code moves over without a rewriteMigration · dc02196a

  • Every new API key has a budget from the startBudgets and limits · 58e4b7a0
  • Loop detection, spend ceilings and a kill switch for agentsBudgets and limits · 51b605b6
  • Templates with versions, rendered by the APITemplates · dd954702

  • Every error says whether a retry can succeedAPI · fe68ba13
  • A typed Node client, with a quickstart run by the test suite against a local AgentiSend serverSDKs and CLI · 86446a85
  • Sign in with a one-time code sent by email, no passwordConsole · 1cbca286
  • Signed webhooks, retried when your endpoint fails, with failed deliveries kept for replayWebhooks · a6740030
  • Connect an AI client to MCP with OAuth, approving exactly what it may doMCP · 5178cd4a
  • Bounces are classified, and a hard bounce suppresses the addressDeliverability · 9b8c8269