Auto-reply

Let a campaign answer qualifying human replies automatically, in the same thread and mailbox, within approved links and figures. The rest goes to a person.

Auto-reply answers the replies your campaigns get while the lead is still at their desk. When a person replies to a campaign that opted in, and the reply passes every check below, AY Inbox writes an answer from what you told it about your offer and sends it from the mailbox they wrote to, in the same thread. Everything that does not qualify goes to a person, with the written answer attached as a draft when there is one.

It is off by default, at three levels: the instance, the workspace and each campaign.

Learn more: safe automatic replies to prospects explains why each check exists.

Modes

ModeShown asWhat happens on a qualifying reply
off (default)OffNothing changes. The inbox agent drafts if the workspace turned it on
shadowSupervisedEvery check runs and nothing is sent. The answer arrives as a normal pending draft, marked "would have sent automatically" or with the reason it would have asked you
autoAutomaticThe answer is sent after a short delay unless a check stops it

Two switches must both be on for anything to be sent: the workspace switch in Settings, Workspace, which is also the kill switch, and the campaign's mode in its Settings tab.

Start with Supervised. It costs the same as a draft and shows you, reply by reply, what Automatic would have sent and how often you would have changed it. The campaign panel reads it back as a line such as "Last 30 days: 18 would have sent, 15 sent as written, 2 edited, 1 discarded".

Who can turn it on

  • Turning on the workspace switch, and setting a campaign to Automatic, needs the Send campaigns permission and a recent sign-in confirmation. An API key needs SEND_CAMPAIGNS.
  • Changing what an automatic campaign may say (its intents, approved links, approved figures, notes and disclosure line) goes through the same route and the same permission. A member or key with only Manage campaigns (WRITE_CAMPAIGNS) can edit those settings while the campaign is Off or Supervised, and can lower an automatic campaign to Supervised or Off, but cannot shape it while it is on Automatic.
  • Stopping it is always one click for anyone with inbox access: the workspace pause, a campaign's Off, or Cancel on a single answer. None of them asks for a confirmation.

Before Automatic can be chosen

The campaign panel shows a checklist, and Automatic stays unavailable until every line passes:

  • Stop on reply is on. A replied contact stops receiving campaign mail, so an automatic answer never talks over a follow-up.
  • No reply branch leads to an email step. A campaign whose reply branches send further emails keeps them in charge of the conversation.
  • There is something to answer from: the workspace product description, or a campaign brain with public facts.

If a member later breaks one of these, every reply hands off with that reason and the panel shows the broken line.

Warnings do not block, they explain:

  • A mailbox in the campaign's sender pool has a Reply-To. Replies that reach that other inbox are drafted, not answered automatically.
  • The campaign reviews first emails. Review covers first emails; automatic answers are not reviewed.
  • The brain holds links or figures that are not approved yet. The panel offers them for approval.

What automatic mail may carry

Automatic mail goes only to the contact's stored address, in reply to a message of ours, from the mailbox the contact wrote to, in the same thread. The recipient, sender, subject and threading come from AY Inbox's own records, never from the inbound message or the model.

Automatic mail contains only links and figures a member with send permission approved, exactly as written, in the campaign's Approved links and Approved figures. Nothing widens those lists at send time: not the inbound email, not the brain, not your product description. A link or price that appears anywhere else is refused, and the answer becomes a draft for you. Anything shaped like a web address counts as a link, whatever its ending, capitals or alphabet, including a dot written out (acme dot top), spaced or bracketed. A file name such as report.pdf or Node.js does not count, and a word run on after a full stop with no space (note.Looking) does, which hands that answer to you. An automatic answer cannot hold invisible characters, and an approved figure cannot hold a link or an email address. A brain edit can change the wording of the next answer; it cannot add a link, a price or a phone number to it. An approved link goes out with its https://: the same address written with http:// or any other scheme is refused.

The answer is checked again just before it is sent, against the approved lists and the brain's do-not-say list as they are at that moment. An answer written before a link or figure was removed, or before a phrase joined the do-not-say list, becomes a draft for you.

Answers are plain text, at most 1,200 characters and 15 lines, with no tracking pixel and no link wrapping. The campaign's Disclosure line, when set, is appended to every automatic answer. The mailbox signature is added as on any reply.

Which replies qualify

A reply is answered automatically only when all of these hold. Each one that fails has a stable reason code, shown on the run and in the API.

The message. It is in the inbox folder (not spam or archive), arrived within the last hour, has a body of at most 4,000 characters once quoted history is removed (in the languages set for inbox tagging, as is the text check below), and answers one of our sends: a campaign email from this mailbox, or an earlier automatic answer to this contact. It is from the contact's stored address, addressed to our mailbox and nobody else (no Cc), keeps the subject of the send it answers, and every message in the thread is from the contact or from one of the workspace's mailboxes. It is not bulk mail, not from one of the workspace's own mailboxes, and not from an address in a warmup pool.

The classification. Inbox tagging read it as a human reply with confidence of at least 0.70 and no review flag, and its intent is one the campaign allows with confidence of at least 0.80. The intents a campaign may allow are agreed, scheduling, wants_info, question_answered and wants_pricing; the default leaves out wants_pricing. Every blocking signal (asks to be removed, threatens legal action, hostile tone, needs human judgement, names another contact, contains a scheduling link) was answered and is below 0.30. The sentiment is neutral or warmer, and the reply needs more than a one-line acknowledgement.

The text itself. The full body, not the preview, carries no opt-out request (a reply that is only "STOP", "remove me" or "unsubscribe" is one, whatever the classifier read), no legal or complaint language, no negative reaction and no reference to an attachment.

The state. The workspace and campaign switches are on, the campaign is running, stop on reply is on, the contact is not suppressed, unsubscribed, missing consent, rejected in review or on hold, the mailbox is sending and in good standing, the workspace is not restricted, nobody wrote in the thread since, no person has written in the thread, no draft is waiting there, and every cap below has room.

Never answered automatically, whatever a setting says: out-of-office and other automatic replies, ticket receipts, bounces, notifications, cold inbound, internal mail, the intents not_now, not_interested, wrong_person, opt_out, unclear and in_progress, legal or complaint language, a person who asked to stop, and anything the classifier could not read with confidence. No classification, or an unsure one, means no automatic answer.

Timing

These are what the code is built to do; real timing depends on how fast the mailbox provider reports new mail.

  • Delay. An answer is scheduled 60 to 150 seconds after the reply arrived, and never sooner than 30 seconds from when it was written. On a mailbox that sent nothing in the last couple of minutes, that is about two minutes after arrival.
  • Undo. The shortest undo window, 5 seconds, whatever your own setting is: the thread card offers Cancel through the whole delay.
  • A busy mailbox. An automatic answer takes a short claim on the mailbox, a fifth of its gap between sends, between 10 and 120 seconds (120 at the default 600 second gap). It is refused by another send inside that window, and the next cold send yields to it. A mailbox that stays busy, held after a send problem or cooling down after a provider limit is retried every 15 to 45 seconds, for at most 15 minutes. After that the answer becomes a draft and you are notified.
  • Sending windows. A reply outside the campaign's sending window waits for it to open, plus up to 20 minutes of spread. The campaign setting Reply outside the sending window removes that wait. The mailbox's own working days, hours and lunch always hold. An answer waits at most 72 hours, then becomes a draft.

Caps

These are fixed limits, not settings.

LimitValue
Automatic answers per threadThe campaign's setting, 2 by default, at most 5
Per contactThe same setting in total, and at most 2 in 24 hours
Between two answers in one threadAt least 10 minutes
A reply within 2 minutes of our answerNever answered automatically
Per mailbox in 24 hours20, and never above the mailbox's campaign limit
Model calls per thread and per contact in 24 hours3, a call that failed or timed out included
Model calls per workspace in 24 hours200, Supervised and failed calls included

Automatic answers sit outside the shared ceiling AY Inbox derives from the cold and warmup budgets, as replies you send yourself do. An explicit Shared daily limit or Rolling recipient limit on the mailbox does bind them. See sending behavior.

When a person takes over

  • Answering in AY Inbox first cancels the automatic answer. Once a person has written in a thread, the thread is theirs: auto-reply stays out of it for good.
  • Opening the composer on the thread cancels a pending answer, including when the composer was already open.
  • Edit first on the thread card turns the answer into a normal pending draft that you send yourself.
  • Answering from your mail client directly is seen when the Sent copy syncs. Until then a person and an automatic answer can both reply; the delay and the final check narrow that window but cannot close it.

Handoffs and notifications

A reply that is not answered automatically reaches a person. The thread card says why in one sentence, and the draft, when one exists, appears like any agent draft.

OutcomeExamplesDraftNotified
SkippedAutomatic reply, closed intent, one-line acknowledgementNoNo
Needs you, no AI textOpt-out or legal language, suppressed, unsubscribed, no consent, rejected in review, out of creditsNeverYes
Needs you, the inbox agent may draftNot confident, caps, the model asked for a person, auto-reply could not read what it needed for 30 minutesThe inbox agent's own rules applyYes
Needs you, with the written answerA check failed (at writing or just before sending), switched off, outside every window, the mailbox stayed busy, the send was refusedThe written answerYes, except in Supervised
FailedThe provider refused the sendThe written answerYes
UnknownIt cannot be confirmed whether the answer leftNoYes: check Sent before answering

The notification category is Auto-reply needs you, on in-app and by email by default; see notifications. An answer whose outcome is unknown is never sent again.

Credits

Each reply auto-reply answers costs 5 AI credits, charged once, when an answer is delivered: sent, or left as a draft. A reply that did not qualify, a provider error and a model that asked for a person cost nothing. Cancelling a scheduled answer does not refund it, since you received the written answer.

The campaign's Auto-replies tab

A campaign on Supervised or Automatic gets an Auto-replies tab: every reply it handled, its status, the reason, the intent and how long it took to answer, with the time to answer (median and 95th percentile) and today's count against the cap. A row opens the inbound message, the written answer and each check's result. Stop all auto-replies pauses the workspace switch.

What it requires on a self-hosted instance

Auto-reply needs an AI provider (AI_PROVIDER), TypeSafe (TYPESAFE_API_KEY) with inbox tagging on (INBOX_TAGGING_ENABLED=true), and AUTO_REPLY_ENABLED=true on the backend. Without any of them, the settings page says which is missing and every reply is drafted as before. See configuration.

When you upgrade, turn AUTO_REPLY_ENABLED on only after every backend replica runs the new release. Before rolling back, set it to false and wait for live runs to drain, since the previous release does not apply the auto-reply checks at send time.

Workspace export

A campaign's auto-reply settings travel in a workspace export, and arrive with the mode off. The workspace switch does not travel. The record of past runs is exported for your own record and is not imported.

What it does not do

No wording and no check guarantees inbox placement or prevents a provider from acting on your mailbox. A persuasive, wrong answer inside the facts you gave is not caught by any check: Supervised mode, the per-thread cap, the kill switch and the run log are how you watch for it.

Frequently asked questions

Can AY Inbox answer replies automatically?

Yes, for campaigns that opt in. A qualifying human reply is answered in the same thread, from the mailbox it reached, a couple of minutes after it arrives. Anything that does not qualify goes to a person, with a draft when one exists.

How do I try auto-reply without sending anything?

Set the campaign to Supervised. Every check runs and nothing is sent: the answer arrives as a pending draft marked with whether it would have been sent automatically.

Which replies are never answered automatically?

Out-of-office and other automatic replies, bounces, opt-out requests, legal or complaint language, not interested or wrong person replies, and anything the classifier could not read with confidence.

Can an automatic answer include any link or price?

No. It may only carry the links and figures a member with send permission approved for that campaign, exactly as written. Anything else turns the answer into a draft for a person.

How much does auto-reply cost?

Each reply it answers costs 5 AI credits, charged once when the answer is sent or left as a draft. A reply that did not qualify costs nothing.

On this page