How to Set Salesforce Case Priority based on Email Importance / Priority

Customers sometimes use the email priority flag within their email service when sending an email to support, expecting it to be noticed within a support case.

Salesforce doesn’t flag cases by default, but it can be achieved by examining email headers with Flow and then using a field update on Salesforce Case Priority. Email headers are not captured by default; before enabling them, consider the data storage implications.

In Salesforce, most records consume a “flat rate” of 2KB, or in some cases 4KB of storage. The Email Message object is the only object for which the true byte count is measured against your data storage limit. The problem with capturing email headers using Email-to-Case (standard salesforce) is that it is all or nothing, and “all” consumes a ton of data storage, which can quickly put you up against your data storage limit. For more details, see the “Doing the Math” section of the related Solving the Spam Problem post.

The email header varies by the sending email client, but Importance is most widely used today. Microsoft has a good write-up of the variations.

Importance (High, Normal, Low)
Priority (Urgent, Normal, Non-Urgent)
X-Priority (1 = High, 3 = Medium, 5 = Low)
X-MSMail-Priority (1 = High, 3 = Medium, 5 = Low)

Email to Case Premium makes it easy to define which headers to capture, thereby conserving data storage and allowing Salesforce Workflow to evaluate the email headers.

Configure Salesforce to capture email headers. In Email to Case Premium, navigate to the Inbound Configuration page. Email-to-Case (standard) instructions can be found here.

2. Set up a Flow on the Email Message Salesforce Object. Don't forget to set the filter logic to OR if you are configuring for more than one header. 

  • Configure Start on Email Message Salesforce Object
  • Trigger Flow > When a record is Created 
  • Set Entry Conditions with OR some text
    • Headers CONTAINS Importance: high
    • Headers CONTAINS X-Priority: 1
  • Add an Update Record element
  • Select > Specify conditions to identify records, and set fields individually 
  • Object > Case
  • Filter Case Records > Id EQUALS $Record > Case ID 
  • Set Field > Priority <- High (edit to your use case and what field you would like to update)

Save and activate your Flow to properly set Salesforce case priority based on email importance!

FAQs

What is the impact on my Salesforce storage if I enable email header capture?

Email headers can consume significant storage space since the Email Message Salesforce object counts the actual byte size against your storage limit, unlike most Salesforce objects that use a flat rate of 2KB or 4KB. Enabling full header capture without selectivity could quickly use up your storage limits.

Which email priority headers should I configure my Flow to check for?

The most common priority headers to check are:

  • Importance (High, Normal, Low)
  • Priority (Urgent, Normal, Non-Urgent)
  • X-Priority (1 = High, 3 = Medium, 5 = Low)
  • X-MSMail-Priority (1 = High, 3 = Medium, 5 = Low)

Can I configure email header capture selectively to save storage space?

Yes, but the method depends on your Email-to-Case version:

  • With Email to Case Premium, you can specify which headers to capture through the Inbound Configuration page
  • With standard Email-to-Case, it's all-or-nothing, meaning you must capture all headers or none

April 10, 2015