Support teams often handle thousands of tickets each week, ranging from quick questions to complex issues. Solve Email helps reduce this load by automatically replying to customers with the right macro or knowledge base article—saving time and improving response speed.
Forethought takes this a step further by automating email replies with accuracy that can even exceed human performance. To do this, we train a custom model using your historical ticket data. If your team has been using macros consistently and at a high volume, this gives the model enough information to automate responses effectively and reliably.
Technical Overview
This article will walk you through setting up your Zendesk instance to work with Solve Email.
Before You Begin:
If you're a new customer, make sure you've completed the Before You Integrate Forethought with Zendesk.
How It Works
Here’s a high-level overview of the Solve Email flow:
- A ticket is created in Zendesk.
- A Zendesk trigger detects the new ticket and triggers the Notify Forethought webhook.
- The Zendesk webhook sends the ticket details to Forethought.
- Forethought Solve will make a prediction and respond to the end user by adding a new comment to the ticket.
- The Solve Insights in the Forethought dashboard tracks performance by showing how often Solve responded and whether those tickets were reopened—helping you measure response accuracy over time.
Zendesk Configurations:
1. Create Trigger or Automation to Track Reopened Tickets
To track when an automated Solve response is marked as unhelpful and the ticket is reopened, set up either a trigger or automation.
Option 1: Trigger
Conditions
-
Tags
contains at least one ofagatha-automated
-
Tags
contains none ofagatha-reopened
-
Status
changed toOpen
Actions
-
Add tags:
agatha-reopened
Option 2: Automation
Conditions
-
Ticket: Tags
contains at least one ofagatha-automated
-
Ticket: Tags
contains none ofagatha-reopened
-
Ticket: Status
isOpen
-
Ticket: Hours since open
greater than1
(or whatever timeframe you prefer)
Actions
-
Ticket: Add tags
=agatha-reopened
2. Ensure Pending Tickets Are Marked as Solved Automatically
Most Zendesk instances have triggers or automations that ensure a ticket left in Pending status will be changed to Solved status after a certain timeframe or when specific conditions are met. This function is required for Solve Email's analytics to function properly.
If you already have an active trigger or automation in place for this, you're all set! However, if you don't have something similar set up, you'll need to create one. Here are a couple of examples of what that might look like.
Example 1: Automation
Conditions
-
Ticket: Tags
contain at least one ofagatha-automated
-
Ticket: Tags
contain none ofagatha-closed
-
Ticket: Status
isPending
-
Ticket: Hours since pending
greater than1
(or your preferred time)
Actions
-
Ticket: Status
=Solved
-
Ticket: Add tags
=agatha-closed
Example 2: Trigger
Conditions
-
Tags
contain at least one ofagatha-automated
-
Status
isPending
-
Reopens
less than1
Actions
-
Status
=Solved
3. Set Up "Not Solved" Button to Reopen Tickets
If you’re using the Forethought Solve Email button to create tickets, it’s essential to set up a trigger for when a user clicks "No, this was not helpful" in their automated email response. This will automatically reopen the ticket, allowing it to be addressed by an agent.
Trigger
-
Tags
contains at least one ofagatha-automated
-
Tags
contains at least one ofagatha-not-solved
-
Tags
contains none ofagatha-reopened
- Update
Status
toOpen
-
Ticket: Add tags
=agatha-reopened
- Reassign
Group ID
orAssign ID
to blank
4. Notify Forethought
After completing the initial setup, please reach out to your Forethought team to confirm that all required triggers and automations have been successfully configured.
5. Model Training & Observation Phase
Once setup is complete, your Forethought team will begin training a custom AI model using your historical ticket data. After deployment, the model will analyze new incoming tickets. If it’s confident in its prediction, Solve will automatically respond with the most relevant content based on the ticket’s subject and description.
When Solve sends a response, the ticket will be tagged with agatha-automated
. If the customer replies to that message, the trigger you set up in Step 1 will apply the tag agatha-reopened
, signaling that the deflection was unsuccessful.
Your Forethought dashboard will track these interactions and display performance metrics based on how many deflections were successful vs. reopened.
Set Up Zendesk for Solve Email
For setups using Forethought’s email-based Solve product, you’ll need to create a specific set of triggers in Zendesk. These triggers help manage the full deflection lifecycle—moving tickets to the appropriate status based on how users interact with the automated response. This ensures tickets are properly routed, whether the deflection was successful or if additional agent support is needed.
Forethought responds to a ticket with an attempted deflection:
When Forethought sends a deflection response, it adds the tag ft-email-automated
to the ticket. Since the user has already received a reply, it’s important to move these tickets out of the New or Open status. This allows your support team to focus on tickets that haven’t yet received a response.
Trigger:
Conditions
- Evaluates the ticket on ticket update
-
Tags
containft-email-automated
-
Tags
does not containft-email-responded
- Update
Status
toPending
-
Ticket: Add tags
=ft-email-responded
User acknowledges a deflection as being helpful:
After Forethought sends a deflection, users can confirm that their issue has been resolved, allowing the ticket to be marked as Solved.
Trigger
Conditions
- Evaluates the ticket on ticket update
-
Tags
containft-email-positive-feedback
-
Tags
does not containft-email-solved
- Update
Status
toSolved
-
Ticket: Add tags
=ft-email-solved
User acknowledges a deflection as being not helpful:
If the user indicates that the deflection didn’t resolve their issue, the ticket should be reopened and routed back to the support team by setting its status to Open.
Trigger
- Evaluates the ticket on ticket update
-
Tags
containft-email-negative-feedback
-
Tags
does not containft-email-not-solved
- Update
Status
toOpen
-
Ticket: Add tags
=ft-email-not-solved
Optional: Make it so your automated "We received your ticket" message is only sent when Forethought does not respond as to avoid sending users 2 consecutive emails
Many of our customers use an automated message to confirm receipt of a ticket as soon as a user submits one. This message informs the user that their ticket has been received and that a response will be provided shortly. Since Solve Email can act as the first point of contact and may send a deflection aimed at resolving the user's question, it may not be necessary to send both the deflection and the automated message. Therefore, it can be beneficial to configure your automated message to be sent only in cases where Forethought does not send a deflection.
To update this:
-
Locate the Trigger
Find the Zendesk trigger responsible for sending the automated confirmation email. This is typically set to run during ticket creation. -
Change the Trigger to Run on Updates
Forethought processes tickets shortly after they’re created, so the trigger must be modified to run on ticket updates, not on ticket creation. -
Add Conditional Logic
To prevent the confirmation message from being sent when Forethought has already responded, apply the following conditions:
Updated trigger:
- Evaluates the ticket on ticket update
-
Tags
containft-email-not-automated
-
Tags
does not containft-email-automessage-sent
-
Ticket: Add tags
=ft-email-automessage-sent
Setting Up Email Autoflows
To enable Email Autoflows for your organization, you'll need to configure your help desk to notify Forethought when new ticket comments are submitted.
Zendesk Configuration
-
Send Required Fields in Webhook Event
Make sure your webhook includes the following fields:-
latest_ticket_comment
-
latest_ticket_comment_author_email
-
-
Update the Solve Email Webhook Trigger
-
In Zendesk, go to:
Admin Center > Objects and rules > Triggers -
Locate and open the trigger for Forethought Solve Email Webhook.
-
Ensure the webhook payload includes the following fields:
-
{
"ticket_id": {{ticket.id}},
"latest_ticket_comment": "{{ticket.latest_public_comment}}",
"latest_ticket_comment_author_email": "{{current_user.email}}"
}
This setup allows Forethought to process new comments and respond appropriately through Email Autoflows.
Managing Autoflow Tags and Fallback Routing
As part of the Solve Email Autoflows setup, it's important to plan for how your help desk will handle specific tags added by Forethought during the deflection and fallback process. These tags influence how tickets are routed and tracked, especially when the AI can’t resolve a request on its own.
Key Scenarios for Routing to Fallback
Autoflows will send a ticket to the Fallback workflow when:
- The AI cannot generate a relevant response based on its policy
- The user explicitly requests to speak with an agent
- Technical issues prevent normal processing
When this occurs, Forethought will:
-
Mark the conversation as not deflected
-
Add one of the following tags to the ticket:
-
ft-email-fallback-response-sent
– if a fallback message was delivered to the user -
ft-email-fallback-response-not-sent
– if no fallback message was sent
-
Comments
Article is closed for comments.