Inbound email actions allow defining actions an instance takes when receiving an email. They allow to process inbound email as either an automatic reply or as a record in the system. The processing takes the type of incoming mail and other attributes into account.
They are similar to business-rules in the usage of scripts and conditions that perform actions on the target table. Emails are checked by inbound email actions for defined conditions and some watermark that associates the email with a task. If the conditions are met, then the inbound email action performs the pre-configured activities. They may be of two types:
Record Action: runs a specified script.
Reply Email: when triggered, sends a reply email.
For inbound email processing, the default email account must be configured preliminary. See Email processing to learn more about email accounts configuring.
Inbound email actions are most commonly used to process emails (for example, create a new incident when a received incoming email contains "Incident" in the subject line).
Configuring inbound email action
Navigate to System Notification → Inbound Email Actions.
Click New and fill in the fields.
Click Save or Save and Exit to apply changes.
Role required: admin.
Use case
We need to configure an inbound action implementing the following logic:
When the system receives an email with topic containing keyword "access", a new incident is created and assigned to the group responsible for security and access to the system and data.
We create an inbound action as below:
Field
Value
Name
Create incident (access issue)
Action Type
Record Action
Type
New
Active
True
Script
Script exampleExpand source
ss.importIncludeScript('EmailHelper');
const helper = new EmailHelper();
(function runAction( /*SimpleRecord*/ event, /*SimpleRecord*/ email) {
const letter = email.subject.match('aсcess'); //Keywords checking
if (letter) {
const incident = new SimpleRecord('itsm_incident');
incident.subject = email.subject;
incident.caller = helper.userIDbyEmail(helper.parseSender(email.from)); // If the sender's address is registered in the system,
// the Caller field will contain reference to an existing User record. If the address is unknown, the caller will be defined as Guest
incident.description = email.body_text;
incident.state = '-2'; // State is Registered
incident.contact_type = '20'; // Type is Email
incident.assignment_group='162920380313692887'; // ID of the group responsible for security and access
incident.impact = '2'; // Moderate
incident.urgency = '2'; // Moderate
incident.insert();
}
})(event, email);
Inbound actions logging
Every inbound action triggering is logged in theScript Logtable. These logs can be filtered using the criteria below:
Source IS Inbound Action
Essence Document CONTAINS 0229fa8a-bcbe-1f11.
The Essence Document field is responsible for email processed by inbound action. You can enter full address or a part of it, and you can use precision or imprecisioncondition operators, respectively.