Эффективные методы получения ссылочного кода электронной почты в случаях Salesforce

В Salesforce ссылочный код электронной почты — это уникальный идентификатор, связанный с каждым входящим электронным письмом, создающим обращение. Получение ссылочного кода электронной почты может быть полезно для различных целей, например для отслеживания и интеграции с внешними системами. В этой статье мы рассмотрим несколько методов получения ссылочного кода электронной почты в случаях Salesforce, а также примеры кода для каждого метода.

Метод 1: триггер Apex
Вы можете использовать триггер Apex для захвата ссылочного кода электронной почты при создании обращения. Вот пример того, как получить ссылочный код электронной почты с помощью триггера Apex:

trigger CaseTrigger on Case (before insert) {
    for (Case newCase : Trigger.new) {
        if (newCase.SuppliedEmail != null) {
            String emailReferenceCode = newCase.SuppliedEmail.split('Ref:')[1].trim();
            // Use the emailReferenceCode as needed
        }
    }
}

Метод 2: SOQL-запрос
Другой метод получения ссылочного кода электронной почты — запрос объекта EmailMessage, связанного с обращением. Вот пример того, как получить ссылочный код электронной почты с помощью SOQL:

String caseId = 'yourCaseId';
List<EmailMessage> emailMessages = [SELECT Subject, MessageIdentifier FROM EmailMessage WHERE ParentId = :caseId];
if (!emailMessages.isEmpty()) {
    String emailReferenceCode = emailMessages[0].MessageIdentifier;
    // Use the emailReferenceCode as needed
}

Метод 3: REST API
Вы также можете получить ссылочный код электронной почты с помощью REST API Salesforce. Вот пример того, как получить ссылочный код электронной почты с помощью REST API в Python:

import requests
case_id = 'yourCaseId'
access_token = 'yourAccessToken'
instance_url = 'yourInstanceUrl'
headers = {
    'Authorization': 'Bearer ' + access_token,
    'Content-Type': 'application/json'
}
url = instance_url + '/services/data/v52.0/sobjects/Case/' + case_id
response = requests.get(url, headers=headers)
if response.status_code == 200:
    case_data = response.json()
    email_reference_code = case_data['SuppliedEmail'].split('Ref:')[1].strip()
    # Use the email_reference_code as needed

Получение ссылочного кода электронной почты в случаях Salesforce имеет важное значение для различных бизнес-требований. В этой статье мы рассмотрели три различных метода: использование триггера Apex, запрос объекта EmailMessage с помощью SOQL и использование REST API Salesforce. В зависимости от вашего конкретного варианта использования и контекста разработки вы можете выбрать наиболее подходящий метод для получения ссылочного кода электронной почты.