Skip to main content

Create Autotask Ticket

The Create Autotask Ticket action automatically creates a new Autotask ticket from an incoming email and associates it with the correct Account and Contact based on the sender's email address.

Workflow Action

This is a workflow action. It accepts an email sender address and uses MSPintegrations business logic to look up the correct account and contact before creating the ticket. If you already know all the required IDs, use API: Create an Object with the Ticket entity instead. Learn more about the difference between workflow actions and single API call actions.

When to Use This Action

Use this action when:

  • You want to convert incoming human-generated emails into Autotask tickets automatically
  • You need tickets associated with the correct Account and Contact based on the sender's email address
  • You want the system to handle the logic of finding or creating Contacts and Accounts

Don't use this action for:

  • Automated alert emails: System-generated emails from monitoring tools, backup software, or other automated systems are better handled with different actions that don't rely on sender-based Contact/Account matching.
  • Known Account/Contact: If you already know the exact Account and Contact IDs, use the lower-level API: Create an Object action with the Ticket entity for more direct control.

Getting Started

For a walkthrough of setting up your first mailbox with ticket creation, see Create Your First Mailbox.

How It Works

When this action runs, it performs the following steps:

autotask-create-ticket-flow autotask-create-ticket-flow

  1. Search for a matching Contact: Find an existing Autotask Contact whose email address matches the sender
  2. Search for a matching Account: If no Contact is found, search for an Account whose web domain matches the sender's domain
  3. Handle unmatched senders: If no match is found, either assign to a default Account or create a new Account
  4. Optionally create a Contact: If enabled, create a new Contact for the sender
  5. Create the ticket: Create the Autotask ticket with the determined Account and Contact

Step 1: Search for a Matching Contact

The action searches for an existing, active Contact with an email address matching the sender.

The following Contact fields are searched:

  • Email Address (primary)
  • Email Address 2
  • Email Address 3
  • Email2AT Addresses UDF
  • Email2Ticket Addresses UDF (legacy)

If an Account Filter is configured, only Contacts belonging to matching Accounts are considered.

When a matching Contact is found, the ticket is created for that Contact and their associated Account.

Step 2: Search for a Matching Account

If no Contact is found, the action searches for an Account whose web domain matches the sender's email domain.

The search checks:

  • Account Web field: Matches the sender's domain with partial matching. For example, if the sender's domain is example.com, these Account Web values would match: http://www.example.com/, www.example.com, example.com
  • Email2AT Domains UDF: Matches domains listed in this field. Domains must include the @ sign and be separated by commas and/or spaces: @domain1.com, @domain2.com, @domain3.com

If an Account Filter is configured, only matching Accounts are considered.

Step 3: Handle Unmatched Senders

If no Contact or Account is found, you have two options:

OptionBehavior
Assign Ticket to Default AccountUses the Account you specify in Default Account if no match. If that Account is inactive or deleted, falls back to your Autotask "zero" Account.
Create a New AccountCreates a new Account using the fields you configure in the Account template.
tip

A common practice is to create an Account called "Unknown Account" as a catch-all for tickets from unrecognized senders. This makes it easy to review and reassign them later.

Step 4: Optionally Create a Contact

If Create new Contact if not found is enabled, a new Contact is created for the sender on whichever Account the ticket is assigned to:

  • The Account matched by domain (Step 2)
  • The newly created Account (if Step 3 used "Create a New Account")
  • The default Account (if Step 3 used "Assign Ticket to Default Account")
  • The Autotask "zero" Account (fallback)

You can also control whether Contacts are created on the default Account using the Create Contact on Default Account option.

Step 5: Create the Ticket

Finally, the action creates the Autotask ticket using your configured ticket properties (Title, Description, Status, Priority, Queue, etc.) and associates it with the determined Account and Contact.

Configuration

Contact & Account Association

FieldDescription
Sender AddressThe email address used to search for matching Contacts and Accounts. Default: {{email.from.address}}. Change this only if parsing the sender from somewhere other than the email's from address (e.g., a contact form submission).
Action if no existing Account exists...Choose whether to assign unmatched tickets to a default Account or create a new Account.
Default Account if no matchThe fallback Account for unmatched senders. Only shown when "Assign Ticket to Default Account" is selected.
New Account FieldsTemplate for creating new Accounts. Only shown when "Create a New Account" is selected.

Account Filter

By default, the action searches all Contacts and Accounts. Use the Account Filter to restrict the search to specific Accounts.

Enable Filter accounts to configure filter criteria.

Example use cases:

  • Filter by Account Type: If you have duplicate Accounts (e.g., one as "Lead" and one as "Customer"), filter by type to ensure tickets go to the correct one.
  • Filter by Account ID: For a priority inbox serving specific customers, filter to only those Account IDs.
warning

The filter returns a maximum of 100 Accounts (oldest first). Ensure your filter criteria are specific enough to stay within this limit.

Contact Matching

FieldDescription
Sender AddressThe email address to match against Autotask Contacts. Default: {{email.from.address}}

New Contact Creation

FieldDescription
Create new Contact if not foundEnable to automatically create a Contact when no match is found.
Create Contact on Default AccountWhen enabled, allows Contact creation even when the ticket is assigned to the default Account. Disable to prevent Contact creation on your catch-all Account.
Contact NameThe name for new Contacts. Default: {{email.from.display}}. The system parses this into First Name and Last Name.

Ticket Properties

Configure the fields for the new ticket. Click Additional Fields to add more fields, including User-Defined Fields.

Common fields:

FieldDescriptionDefault
TitleTicket subject line{{email.subject}} (or "New email from [address]" if empty)
DescriptionTicket body contentEmail headers and body
StatusInitial ticket statusNew
PriorityTicket priority level
QueueService queue assignment
Due DateWhen the ticket is due
note

Field length limits: Title is truncated to 255 characters. Description is truncated to 8,000 characters.

Attachments

FieldDescription
Attach email attachments to ticketCreates an Autotask attachment for each file attached to the email.
Prevent duplicate attachmentsEnsures each file is attached only once per ticket.
Attach original email as .eml fileAttaches the complete original email as an .eml file. Recipients can download and open this in any email client to see the message exactly as sent.
Attach HTML email as imageConverts the HTML email content to an image attachment.

Additional Contacts

FieldDescription
Add email recipients as Additional ContactsSearches for existing Autotask Contacts matching other recipients (To, CC) and adds them to the ticket. Only matches existing Contacts; does not create new ones.

Advanced

FieldDescription
Suppress Autotask API exceptionsIf enabled, the workflow continues even if the Autotask API returns an error. Use sparingly.
Override Autotask ConnectionUse a specific Autotask connection instead of the default. Only shown if you have multiple Autotask connections configured.

Action When Complete

Controls what happens after the ticket is created successfully:

OptionBehavior
Continue processing remaining actionsContinue with remaining actions on this rule and other matching rules.
Stop processing the actions on this ruleStop this rule but allow other matching rules to process.
Stop processing the actions on this rule and all other rulesStop all processing for this message.

Returned Variables

When you configure Store the results in Variable, these variables become available for use in subsequent actions:

Status Flags

VariableTypeDescription
LocatedExistedAutotaskContactbooltrue if an existing Contact matched the sender's email
CreatedNewAutotaskContactbooltrue if a new Contact was created
CreatedNewAutotaskContactCausedErrorbooltrue if Contact creation failed
LocatedExistingAutotaskAccountbooltrue if an existing Account was matched (via Contact or domain)
AssignedTicketToDefaultAccountbooltrue if the ticket was assigned to the default Account
CreatedNewAutotaskTicketbooltrue if the ticket was created successfully
CreatedNewAutotaskTicketCausedErrorbooltrue if ticket creation failed
AttachedEmlToTicketbooltrue if the .eml file was attached
AttachedEmlToTicketCausedErrorbooltrue if .eml attachment failed

Created Objects

VariableTypeDescription
TicketobjectThe created ticket, including id and TicketNumber properties
TicketAccountobjectThe Account associated with the ticket
TicketContactobjectThe Contact associated with the ticket (or null if none)
TicketAdditionalContactsCreatedarrayAdditional Contacts added to the ticket

Example usage: {{custom.myVariable.Ticket.TicketNumber}}

FAQs

What happens if multiple Contacts match the sender's email?

The action selects the Contact using this priority:

  1. The oldest Contact that is not on the "zero" Account or default Account
  2. If no match, the oldest Contact on the "zero" Account
  3. If still no match, the oldest Contact on the default Account

What if my Account Filter returns more than 100 results?

The filter uses the 100 oldest Accounts. To avoid unexpected behavior, ensure your filter criteria are specific enough to return fewer than 100 results. Check the logs to see which Accounts were included.

How do I route all tickets to a specific Account?

  1. Enable Account Filter and filter by the Account's Id
  2. Set Action if no existing Account exists... to "Assign Ticket to Default Account"
  3. Select the same Account in Default Account if no match

What is the Autotask "zero" Account?

The "zero" Account is a special built-in Account that represents your own organization (the MSP). It cannot be billed and serves as a system fallback. Most organizations create a dedicated "Unknown Account" instead of relying on the zero Account for unmatched tickets.

What are the Email2AT and Email2Ticket UDFs?

These are User-Defined Fields in Autotask that provide additional matching capabilities beyond the standard email fields.

Email2AT UDFs

These UDFs are created automatically in your Autotask instance the first time the system performs a search that uses them. Separate multiple values with commas and/or spaces.

  • Email2AT Addresses (on Contacts): Additional email addresses for matching
  • Email2AT Domains (on Accounts): Additional domains for matching, formatted as @domain1.com, @domain2.com

Email2Ticket UDFs (legacy)

These UDFs are not created by MSPintegrations. They are checked for compatibility with customers migrating from Email2Ticket by RapidFire Tools. If you previously used Email2Ticket, MSPintegrations will check these UDFs for data, making your transition easier without needing to migrate data to the new Email2AT fields.

  • Email2Ticket Addresses (on Contacts): Checked for existing data during Contact matching