TABLE OF CONTENTS
- Email threading and ticket handling
- Agent inbox safeguards
- Feedback deactivation rules
- Activity log and audit trail
- Session and limit guardrails
- Spam and non-actionable email guardrails
- Things to keep in mind
The Email AI Agent includes built-in safeguards that protect customers, agents, and your data throughout the ticket lifecycle. These safeguards govern how the AI handles email threads, when human agents can intervene, how handovers are logged, and what happens when system limits are reached.
None of the behaviors described in this article requires configuration — they are enforced automatically whenever the Email AI Agent is active.
For configuration of handover routing, spam handling, and feedback settings, see Configure Email AI Agent trigger rules.
Email threading and ticket handling
The Email AI Agent operates within Freshdesk's ticket model. Understanding how it threads conversations and creates records is essential for admins setting up workflows and support teams interpreting ticket state.
Ticket creation and AI assignment
- When a customer sends an email to a configured mailbox, Freshdesk creates a ticket as usual. If the mailbox is mapped to an active Email AI Agent, the ticket is immediately assigned to the AI agent.
- The Assigned To field shows a dedicated virtual AI agent construct — a system-level assignee type distinct from human agent names. This appears in the agent inbox, in the portal, and in any automation rules that evaluate ticket assignment.
- The ticket Status reflects an AI-specific state (for example, Assigned to AI Agent) that is visually distinct from statuses used when a human agent is assigned.
- Customers who log in to the support portal can see the ticket assigned to the AI agent and close it themselves by updating the status field — exactly as they would with any human-assigned ticket.
Reply threading and participant handling
All AI replies are sent as standard email replies within the existing ticket thread. They are not sent as new emails or from a separate mailbox address.
Threading scenario | Behavior |
Single-participant thread | AI replies directly to the original sender. All subsequent AI and customer messages are part of the same email thread and the same Freshdesk ticket. |
Multi-participant thread (To and CC recipients) | AI replies to all participants in the thread — not just the original sender. All participants see the AI response in their email inbox and can reply, which continues the thread within the same ticket. |
Customer replies from a different email address | Treated as a new inbound email. A new ticket is created for the new address. The original ticket continues with its own thread. |
Customer resends the same email | Admins should monitor for duplicate patterns and configure spam rules to reduce noise. |
Ticket reopened after closure (customer replies post-resolution) | The ticket is reopened. The AI agent processes the new message and begins a new conversation sequence within the same ticket. The contextual snippet system treats this as a first response. |
Multi-participant feedback rules
Feedback buttons in AI emails are actionable only by the original ticket requester. The system enforces this regardless of how many participants are on the thread.
Participant action | Behavior |
Original requester clicks Helpful | Ticket is closed. Feedback is recorded as positive. All other participants see the ticket move to closed status. |
Original requester clicks Not helpful | Ticket is escalated to a human agent per Handover settings. Feedback is recorded as negative. |
CC'd participant clicks Helpful or Not helpful | Redirected to a branded page: 'Only the requestor can submit feedback for this ticket.' No feedback is recorded. No state change to the ticket. |
Forward recipient clicks a feedback link | Same behavior as CC'd participant — feedback-not-actionable page shown. No state change. |
Requestor submits feedback via portal after submitting via email | Portal reflects 'Feedback already shared' state and blocks resubmission. The two channels are synced. |
Requestor submits feedback via email after submitting via the portal | Email feedback link shows 'Feedback already shared' — same cross-channel sync applies. |
Restricting feedback to the original requester prevents a CC'd colleague, manager, or external stakeholder from inadvertently closing or escalating a ticket that the customer has not yet reviewed.
Sender identity in outbound emails
- The From address in all AI-generated emails is the email address of the mailbox the original ticket arrived at — not a shared AI address. If a customer emails support@acme.com, all AI replies come from support@acme.com.
- The display name and avatar reflect the portal or product brand configured for that mailbox. Different portals can display different sender identities — for example, UrbanCart Support versus AcmeB2B Support — based on mailbox configuration.
- Configure the agent display name under Build > Configurations > Agent identity. This name appears as the From display name in customer emails, not in the agent inbox.
Agent inbox safeguards
When the Email AI Agent holds a ticket, the Freshdesk agent inbox enforces a set of safeguards that prevent human agents from interfering with an active AI conversation — while preserving their ability to take control when needed.
Controls blocked while AI holds the ticket
Control | State while AI is active | Why |
Reply box | Disabled — input is blocked | Prevents an agent from sending a reply that conflicts with the in-progress AI response |
Add public note | Disabled | Keeps the public thread under AI control until handover is complete |
All ticket metadata fields (priority, tags, custom fields, group) | Visible but read-only | Prevents state changes that could corrupt the AI's routing or response logic |
Status field | Editable — agent can close or change status | Allows agents to intervene by closing a ticket or changing its state without full takeover |
Assigned To field | Editable — agent can reassign to themselves or another agent | Primary mechanism for taking control of a ticket |
Typing indicator
- A typing indicator appears in the agent inbox whenever the Email AI Agent is actively drafting a response. It reads: 'AI Agent is drafting a reply...' with an elapsed time counter.
- The indicator is visible only to agents in the Freshdesk inbox — not to customers in their email client or in the support portal.
- The indicator disappears when the AI sends its reply, when an agent takes control, or when the draft times out due to an error.
Agent takeover
An agent can take control of any AI-held ticket at any time using one of two methods:
- Takeover banner: Select Stop responding & assign to me from the banner that appears at the top of the ticket view when AI is active. This is the fastest path.
- Assignee field: Change the Assigned To field from the AI agent to a human agent or group.
When takeover occurs:
- The AI agent immediately stops — any response it was drafting at that moment is discarded and not sent to the customer.
- All blocked controls (reply box, public note, metadata fields) become fully editable.
- The ticket timeline logs a 'Handover initiated — agent took control' activity entry with a timestamp.
- The AI agent does not re-engage automatically. To return the ticket to AI handling, an admin must reassign it to the AI agent.
Note: There is no undo for a takeover. Once an agent takes control, the AI draft is discarded permanently. Agents should take control only when they intend to respond. If the AI were midway through composing a detailed response, that work would be lost. Agents should not use takeover to 'preview' the AI's draft.Feedback deactivation rules
Feedback buttons in AI-generated emails are not static — they deactivate in specific conditions to prevent conflicting actions on a ticket that has already moved to a terminal state.
Condition | Feedback button state | Explanation |
Ticket is actively handled by the AI agent | Active — feedback can be submitted | The AI is still responsible for the conversation. |
Ticket is escalated to a human agent | Deactivated in all previous AI messages | Once a human agent holds the ticket, all AI-message feedback links become inactive. Customers see a 'This conversation has been escalated' message if they click. |
Ticket is closed (positive feedback closure) | Deactivated | The ticket outcome is final. Feedback has been recorded. |
Ticket is closed (inactivity timer) | Deactivated | No feedback to collect on a timeout-resolved ticket. |
Ticket is reopened after closure | Fresh feedback buttons in the new AI response only | Old feedback links remain inactive. New replies generate new feedback buttons. |
Customer already submitted feedback | All feedback links for that ticket deactivated | 'Feedback already shared' page shown on any subsequent click. |
CC'd participant clicks any feedback link | Feedback-not-actionable page shown — no deactivation | The ticket state is unchanged; only the requestor triggers deactivation. |
Activity log and audit trail
Every AI agent state transition — from first response through resolution or handover — is logged as an activity entry in the Freshdesk ticket timeline. This log is immutable, visible to all agents with ticket access, and serves as the audit record of everything the AI did on that ticket.
Logged events and sub-reasons
Event | Logged in timeline as | Sub-reason (where applicable) |
AI first reply sent | AI agent responded — [timestamp] | — |
AI follow-up reply sent | AI agent responded — [timestamp] | — |
AI agent handover initiated | AI Agent Handover Initiated — [timestamp] | Did not find an answer / End user gave negative feedback / Ticket marked as non-actionable / System issue / Max turns exceeded |
AI agent timeout occurred | AI Agent Timeout Occurred — [timestamp] | — |
AI agent resolved ticket | AI Agent Resolved — [timestamp] | Ticket marked as Spam or Non-actionable / End user gave positive feedback / Inactivity timer triggered |
Agent took control | Handover initiated — agent took control — [timestamp] | — |
Knowledge sources referenced | Referred N Knowledge sources — visible inline in each AI reply | — |
Workflow triggered | Triggered workflow [name] / Workflow completed — visible inline | — |
Customer feedback received | Visual indicator on the corresponding AI message | Positive (thumbs up) or Negative (thumbs down) |
All activity log entries are attributed to the AI agent (not a human agent) and are visible to every agent who has access to that ticket — including agents in a different group. Log entries cannot be edited or deleted by any user.
Handover summary private note
When the AI agent hands over a ticket to a human agent, it automatically adds a private note to the ticket summarizing the conversation context. This note is visible to the receiving human agent but not to the customer.
The handover summary includes:
- A brief description of what the customer was asking about, based on the conversation so far.
- The reason for handover — for example, 'Customer gave negative feedback' or 'Max conversation turns reached'.
- Any key details the customer provided during the AI conversation, such as an order ID or account number.
Tip: Train your agents to read the handover summary private note before composing their first reply. It eliminates the need to ask the customer to repeat context they have already provided, which is one of the most common causes of negative CSAT scores on escalated tickets.
Session and limit guardrails
AI session exhaustion
- When the account's AI session limit is exhausted, all deployed AI agents stop processing new queries immediately.
- Conversations already in progress at the point of exhaustion are allowed to run to completion — they are not interrupted mid-reply.
- A prominent banner appears at the top of the AI Agent Studio UI informing administrators that sessions are exhausted and directing them to upgrade or contact support.
- New tickets continue to arrive and are visible in the inbox. Human agents handle them as normal until sessions are replenished.
Agent count limit
- A combined maximum of 50 agents (chat and email) is enforced per account. The Create new agent button is disabled when this limit is reached.
- Archiving or deleting an agent frees one slot. The Create new agent button re-enables automatically.
- The 50-agent limit is checked in real time — concurrent attempts by multiple admins to create an agent near the limit are handled safely.
Portal and source exclusivity
- Each ticket source — support portal, email mailbox, or web form — can have only one active AI agent at a time. Assigning a second agent requires deactivating the first.
- When you attempt to deploy to a source that already has an active agent, the Manage drawer marks that source as unavailable and displays the name of the currently active agent with a View link.
- Deactivating an agent unmaps it from all sources immediately. The sources become available for reassignment.
Spam and non-actionable email guardrails
The Email AI Agent includes built-in guardrails that prevent it from auto-closing emails it is not confident about. These guardrails operate transparently — they do not require additional configuration — and work in conjunction with the Spam Settings you configure.
- The AI auto-closes an email only when it detects a high-confidence match to a configured non-actionable pattern (such as out-of-office replies or delivery failure notifications).
- When confidence is below the threshold for auto-close — meaning the email looks partially like a non-actionable pattern but also contains signals of a genuine customer query — the AI routes to the review path configured in Spam Settings instead of auto-closing.
- The AI never auto-closes an email that contains any signal suggesting a genuine customer question, even if it also matches a spam pattern. The conservative rule is always applied.
- When the AI auto-closes an email, it adds a private note to the ticket explaining the reason before closing. This note is visible to agents but not to customers.
Overlapping patterns: If an email matches both a predefined non-actionable type and a custom non-actionable rule, the more conservative outcome applies — the email is routed to review rather than auto-closed.
Things to keep in mind
- AI takeover discards the draft permanently: There is no draft recovery after an agent takes control. The AI's in-progress response is discarded immediately and cannot be retrieved.
- Typing indicator is not a delivery guarantee: The indicator means the AI is drafting — it does not guarantee the reply will be sent. An error or timeout can occur after the indicator appears.
- Activity log entries are immutable: No user — including administrators — can edit, delete, or hide AI activity log entries.
- Feedback deactivation is immediate: As soon as a ticket is handed over to a human agent, all feedback buttons in all previous AI messages in that thread deactivate simultaneously.
- Multi-participant threads handled as one: The AI handles the ticket as a single entity and replies to all participants as a group. It does not send individual replies to each participant.
- Session exhaustion does not interrupt in-flight conversations: Conversations already being handled when sessions are exhausted run to completion. New tickets are not picked up by the AI until sessions are replenished.