Notification par e-mail API : ServiceNow Fluent

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 14 minutes de lecture
  • L’API de notification par e-mail définit les notifications [sysevent_email_action] qui envoient des e-mails automatisés en fonction des opérations de base de données, des événements personnalisés ou des déclencheurs manuels.

    Remarque :
    Pour obtenir la documentation et des exemples d’API les plus récents ServiceNow Fluent , consultez les ServiceNow Fluent Référence API et référentiel d’exemples de SDK ServiceNow sur GitHub.

    Pour en savoir plus sur les notifications par e-mail, reportez-vous à la section Email and SMS notifications.

    Objet EmailNotification

    Créez une notification par e-mail [sysevent_email_action] spécifiant quand l’envoyer, qui la reçoit, ce qu’elle contient et si elle peut être remise dans une synthèse d’e-mail.

    Pour en savoir plus sur la création de notifications par e-mail, reportez-vous à la section Create an email notification.

    Tableau 1. Propriétés
    Nom Type Description
    Table Référence ou chaîne Requis. Identificateur de variable ou nom d’une table à laquelle la notification s’applique. Pour définir une table, utilisez l’option API de table : ServiceNow Fluent.
    Remarque :
    Ne sélectionnez pas la table Tâche [task], qui est destinée à étendre d’autres tables. Les notifications qui s’exécutent directement sur la table de tâches ne sont pas prises en charge.
    triggerConditions Objet Requis. Conditions qui déclenchent la notification. Pour plus d'informations, consultez Objet triggerConditions.
    nom Chaîne Nom unique pour la notification par e-mail.
    description Chaîne Description de l’objectif de la notification par e-mail.
    catégorie Référence ou chaîne Identificateur de variable ou nom d’une catégorie de notification pour le regroupement de notifications. Pour définir une catégorie de notification, utilisez le fichier API d’enregistrement : ServiceNow Fluent.

    Par défaut : catégorie d’e-mail par défaut (c97d83137f4432005f58108c3ffa917a)

    notificationType Chaîne Type de notification.
    Valeurs valides :
    • email : e-mail standard.
    • vcalendar : invitation à une réunion. Les invitations à des réunions ne sont pas prises en charge avec les synthèses d’e-mail.

    Par défaut : e-mail

    actif Booléen Marqueur indiquant si la notification est active.

    Par défaut : true

    obligatoire Booléen Marqueur indiquant si la notification est requise.

    Valeur par défaut : false

    enableDynamicTranslation Booléen Marqueur indiquant s’il faut activer la traduction dynamique pour la notification.

    Valeur par défaut : false

    contenu d’e-mail Objet Le contenu et la mise en forme de l’e-mail. Pour plus d'informations, consultez Objet emailContent.
    recipientDetails Objet Les destinataires de l’e-mail. Pour plus d'informations, consultez Objet recipientDetails.
    Synthèse Objet Le contenu et le format du résumé de l’e-mail. Pour plus d'informations, consultez Objet de synthèse.
    $meta Objet Métadonnées pour les métadonnées de l’application.
    Avec la propriété installMethod , vous pouvez mapper les métadonnées d’application à un répertoire de sortie qui ne se charge que dans des circonstances spécifiques.
    $meta: {
          installMethod: 'String'
    }
    Valeurs valides pour installMethod :
    • demo : génère les métadonnées de l’application dans le répertoire metadata/unload.demo à installer avec l’application lorsque l’option Charger les données de démonstration est sélectionnée.
    • première installation : génère les métadonnées de l’application dans le répertoire metadata/unload à installer uniquement la première fois qu’une application est installée sur une instance.
    import { EmailNotification } from '@servicenow/sdk/core'
    
    EmailNotification({
        table: 'incident',
        name: 'Custom Event Notification',
        description: 'Triggered by custom event',
        category: 'c97d83137f4432005f58108c3ffa917a',  // Default email category sys_id
        triggerConditions: {
            generationType: 'event',
            eventName: 'custom.incident.escalated',
            order: 100
        },
        recipientDetails: {
            recipientUsers: ['6816f79cc0a8016401c5a33be04be441'],  // Admin user sys_id
            eventParm1WithRecipient: true,  // Event param 1 contains recipient
            isSubscribableByAllUsers: true
        },
        emailContent: {
            contentType: 'text/html',
            subject: 'Incident Escalated',
            messageHtml: '<p>An incident has been escalated.</p>'
        }
    })

    Objet triggerConditions

    Configurez les conditions qui doivent être remplies pour que la notification soit envoyée.

    Remarque :
    Si le même déclencheur génère plusieurs notifications, le système n’envoie qu’une seule notification. Le système considère toutes les autres notifications, même si elles ont un objet et un corps différents, comme des doublons. La règle métier Ignorer les doublons contrôle cette fonctionnalité.
    Tableau 2. Propriétés
    Nom Type Description
    generationType Chaîne Requis. Méthode de déclenchement de la notification par e-mail.
    Valeurs valides :
    • moteur : envoie la notification lorsqu’un enregistrement est inséré ou mis à jour.
    • événement : envoie la notification lorsque des événements personnalisés se produisent.
    • déclenché : notifications déclenchées manuellement. Les propriétés suivantes ne s’appliquent pas si cette propriété est définie sur déclenché.
    onRecordInsert Booléen Marqueur indiquant s’il faut envoyer la notification lorsqu’un enregistrement est inséré.
    Remarque :
    Cette propriété ou la propriété onRecordUpdate doit avoir la valeur vrai.

    Valeur par défaut : false

    onRecordUpdate Booléen Marqueur indiquant s’il faut envoyer la notification lorsqu’un enregistrement est mis à jour.
    Remarque :
    Cette propriété ou la propriété onRecordInsert doit être vraie.

    Valeur par défaut : false

    eventName Chaîne Nom d’un événement personnalisé déclenchant l’envoi de la notification.

    Cette propriété est requise si la valeur de la propriété generationType est événement.

    affectedFieldOnEvent Chaîne Paramètre d’événement qui contient le champ affecté.

    Cette propriété s’applique uniquement si la propriété generationType est définie sur événement.

    Valeurs valides :
    • parm1
    • parm2
    poids Numéro Priorité de notification par rapport aux notifications en double.

    Les notifications qui ont la même table cible et les mêmes destinataires sont considérées comme des doublons si les pondérations sont différentes. Si les poids sont identiques, une évaluation supplémentaire est effectuée pour vérifier si le sujet et le corps (à l’exclusion du filigrane) sont identiques pour être considérés comme une notification en double. Lorsqu’il existe des notifications en double, le système envoie uniquement la notification ayant le poids le plus élevé. Toutes les autres notifications sont déplacées de la boîte d’envoi vers la boîte aux lettres ignorée. La valeur par défaut de 0 entraîne l’envoi de la notification par le système (en supposant que les conditions sont remplies).

    Valeur maximale : 1000

    Par défaut : 0

    condition Chaîne Requête de filtre qui spécifie les champs et les valeurs qui doivent être vrais pour que les utilisateurs puissent accéder à l’objet. Pour en savoir plus, consultez Operators available for filters and queries.
    advancedCondition Chaîne Une instruction conditionnelle JavaScript qui doit renvoyer vrai ou définir une variable de réponse globale sur vrai pour envoyer la notification. Pour plus d'informations, consultez Advanced conditions for email notifications.
    Remarque :
    Cette propriété est évaluée en plus des autres conditions que vous définissez sur la notification. La condition et la condition avancée doivent être évaluées comme vraies pour envoyer la notification.
    itemTable Référence ou chaîne Identificateur de variable ou nom de la table à laquelle l’élément de notification se réfère. Pour définir une table, utilisez l’option API de table : ServiceNow Fluent.
    Élément Chaîne Élément à utiliser pour le contexte de notification.
    order Numéro L’ordre d’exécution de la notification.

    Valeur maximale : 9999

    Par défaut : 100

    triggerConditions: {
        generationType: "engine",
        onRecordInsert: false,
        onRecordUpdate: true,
        weight: 100,
        condition: "priority=1^ORpriority=2^state!=6^state!=7", // High/Critical priority, not resolved/closed
        order: 100
    }

    Objet emailContent

    Configurez le contenu d’une notification par e-mail.

    Tableau 3. Propriétés
    Nom Type Description
    contentType Chaîne Le type de contenu d’e-mail.
    Valeurs valides :
    • texte/html
    • texte/brut
    • Plusieurs parties/mixtes

    Par défaut : text/html

    modèle Référence ou chaîne Identificateur ou sys_id variable d’un modèle d’e-mail [sysevent_email_template]. Pour définir un modèle d’e-mail, utilisez le fichier API d’enregistrement : ServiceNow Fluent.
    Vous pouvez uniquement spécifier un modèle d’e-mail qui répond à l’une des conditions suivantes :
    • Le modèle a le même champ d’application et la même table que la notification.
    • Le modèle a la même portée, mais n’a pas de table spécifiée.
    • Le modèle a la même table et se trouve dans le champ d’application global.
    Le style Référence ou chaîne Identificateur ou sys_id variable d’un style d’e-mail [sys_email_style]. Pour définir un style d’e-mail, utilisez l’option API d’enregistrement : ServiceNow Fluent.
    objet Chaîne Ligne d’objet de l’e-mail. Si ce champ est vide, le système utilise la valeur Objet du modèle d’e-mail.

    Vous pouvez utiliser le format \${variable} pour les références de variables. Les variables sont mappées aux noms de colonnes disponibles dans la table de notification, ses tables parentes et les tables de référence. Utilisez des variables pour inclure des valeurs à partir d’un enregistrement dans la table, telles que la brève description ou les commentaires et notes de travail.

    smsAlternate Chaîne Message de notification à envoyer spécifiquement aux appareils SMS. Le message alternatif du SMS est limité à 140 caractères. Si vide, le système utilise l’autre valeur SMS du modèle d’e-mail.

    Vous pouvez utiliser le format \${variable} pour les références de variables. Les variables sont mappées aux noms de colonnes disponibles dans la table de notification, ses tables parentes et les tables de référence. Utilisez des variables pour inclure des valeurs à partir d’un enregistrement dans la table, telles que la brève description ou les commentaires et notes de travail.

    importance Chaîne Niveau d’importance du message.
    Valeurs valides :
    • faible
    • élevé
    includePièces jointes Booléen Marqueur indiquant s’il faut inclure des pièces jointes de l’enregistrement de déclenchement de notification avec l’e-mail.

    Valeur par défaut : false

    omettre le filigrane Booléen Marqueur indiquant s’il faut omettre le filigrane joint à chaque e-mail. Pour plus d’informations, voir Filigranes sur les e-mails de notification.

    Valeur par défaut : false

    de Chaîne Adresse e-mail à partir de laquelle envoyer la notification.
    replyTo Chaîne Adresse e-mail à laquelle les destinataires peuvent répondre.
    pushMessageOnly Booléen Marqueur indiquant s’il faut envoyer la notification uniquement sous forme de notification push à un appareil mobile.

    Valeur par défaut : false

    pushMessageList Tableau Une liste d’identificateurs de variables ou sys_ids de messages push [sys_push_notif_msg] à associer à la notification. Pour définir une notification push, utilisez le fichier API d’enregistrement : ServiceNow Fluent.
    Remarque :
    Le message push et la notification doivent être destinés à la même table.
    forceDelivery Booléen Marqueur indiquant s’il faut contourner les préférences de notification de l’utilisateur qui empêcheraient une notification et envoyer quand même la notification.

    Valeur par défaut : false

    messageHtml Chaîne Contenu HTML du message de notification. Si ce champ est vide, le système utilise le code HTML du message issu du modèle d’e-mail.

    Vous pouvez utiliser le format \${variable} pour les références de variables. Les variables sont mappées aux noms de colonnes disponibles dans la table de notification, ses tables parentes et les tables de référence. Utilisez des variables pour inclure des valeurs à partir d’un enregistrement dans la table, telles que la brève description ou les commentaires et notes de travail.

    Cette propriété est requise si la valeur de la propriété contentType est text/html ou multipart/mixed.

    messageText Chaîne Le contenu en texte brut du message de notification. Si ce champ est vide, le système utilise le texte du message issu du modèle d’e-mail.

    Vous pouvez utiliser le format \${variable} pour les références de variables. Les variables sont mappées aux noms de colonnes disponibles dans la table de notification, ses tables parentes et les tables de référence. Utilisez des variables pour inclure des valeurs à partir d’un enregistrement dans la table, telles que la brève description ou les commentaires et notes de travail.

    Cette propriété est requise si la valeur de la propriété contentType est text/plain ou multipart/mixed.

    message Chaîne Déconseillé. Contenu du message.
    emailContent: {
        contentType: "text/html",
        subject: "CRITICAL: Incident \${number} - \${short_description}",
        messageHtml: `
                <div style="background-color: #ff4444; color: white; padding: 10px; border-radius: 5px;">
                    <h2>CRITICAL INCIDENT ALERT</h2>
                    <p><strong>Incident:</strong> \${number}</p>
                    <p><strong>Priority:</strong> \${priority}</p>
                    <p><strong>Description:</strong> \${short_description}</p>
                    <p><strong>Assigned To:</strong> \${assigned_to.name}</p>
                    <p><strong>Created:</strong> \${sys_created_on}</p>
                    <p><a href="\${instance_url}/incident.do?sys_id=\${sys_id}" style="color: #ffffff; text-decoration: underline;">View Incident</a></p>
                </div>
            `,
        smsAlternate:
          "CRITICAL: Incident \${number} - \${short_description}. Priority: \${priority}. Assigned: \${assigned_to.name}",
        pushMessageList: ["mobile_push_notification_sys_id"], 
        forceDelivery: true, 
        importance: "high"
    }

    Objet de synthèse

    Configurez le contenu d’une synthèse d’e-mail qui résume l’activité d’une notification sélectionnée et de ses enregistrements cibles pendant un intervalle de temps spécifié.

    Pour obtenir des informations générales sur les synthèses d’e-mail, reportez-vous à la section Email digests.

    Tableau 4. Propriétés
    Nom Type Description
    Autoriser Booléen Marqueur indiquant si les utilisateurs doivent recevoir cette notification sous forme de synthèse. Si la valeur est faux, toutes les autres propriétés de l’objet de synthèse sont ignorées.

    Valeur par défaut : false

    par défaut Booléen Marqueur indiquant si le mode synthèse est activé par défaut pour cette notification.

    Valeur par défaut : false

    type Chaîne Le type de synthèse.
    Valeurs valides :
    • unique : envoie la notification dans une synthèse d’e-mail lorsqu’elle est déclenchée plusieurs fois pendant l’intervalle sélectionné pour un seul enregistrement cible, par exemple INC001 uniquement.
    • multiple : envoie la notification dans une synthèse d’e-mail lorsqu’elle est déclenchée plusieurs fois pendant l’intervalle sélectionné pour un enregistrement à cibles multiples, par exemple INC001, INC002, et autres.
    intervalle par défaut Référence ou chaîne Identificateur de variable ou sys_id d’intervalle de synthèse [sys_email_digest_interval] à utiliser comme intervalle de temps par défaut pour la remise de la synthèse. Pour définir un intervalle de synthèse, utilisez le fichier API d’enregistrement : ServiceNow Fluent.
    objet Chaîne Ligne d’objet de la synthèse d’e-mail. Si ce champ est vide, le système utilise la valeur Objet du modèle d’e-mail.

    Vous pouvez utiliser le format \${variable} pour les références de variables. Les variables sont mappées aux noms de colonnes disponibles dans la table de notification, ses tables parentes et les tables de référence. Utilisez des variables pour inclure des valeurs à partir d’un enregistrement dans la table, telles que la brève description ou les commentaires et notes de travail.

    HTML Chaîne Le contenu HTML du résumé de l’e-mail.

    Vous pouvez utiliser le format \${variable} pour les références de variables. Les variables sont mappées aux noms de colonnes disponibles dans la table de notification, ses tables parentes et les tables de référence. Utilisez des variables pour inclure des valeurs à partir d’un enregistrement dans la table, telles que la brève description ou les commentaires et notes de travail.

    Texte Chaîne Le contenu en texte brut du résumé de l’e-mail.

    Vous pouvez utiliser le format \${variable} pour les références de variables. Les variables sont mappées aux noms de colonnes disponibles dans la table de notification, ses tables parentes et les tables de référence. Utilisez des variables pour inclure des valeurs à partir d’un enregistrement dans la table, telles que la brève description ou les commentaires et notes de travail.

    modèle Chaîne Identificateur ou sys_id variable d’un modèle d’e-mail [sysevent_email_template]. Pour définir un modèle d’e-mail, utilisez le fichier API d’enregistrement : ServiceNow Fluent.
    séparateurHtml Chaîne Séparateur HTML qui apparaît entre chaque élément résumé dans la synthèse.

    Vous pouvez utiliser le format \${variable} pour les références de variables. Les variables sont mappées aux noms de colonnes disponibles dans la table de notification, ses tables parentes et les tables de référence. Utilisez des variables pour inclure des valeurs à partir d’un enregistrement dans la table, telles que la brève description ou les commentaires et notes de travail.

    Par défaut : <p> </p>\n<hr>\n<p> </p>

    separatorText Chaîne Séparateur de texte brut qui s’affiche entre chaque élément résumé dans la synthèse.

    Vous pouvez utiliser le format \${variable} pour les références de variables. Les variables sont mappées aux noms de colonnes disponibles dans la table de notification, ses tables parentes et les tables de référence. Utilisez des variables pour inclure des valeurs à partir d’un enregistrement dans la table, telles que la brève description ou les commentaires et notes de travail.

    Par défaut : --------------------------------------------------------------------------------\n

    de Chaîne Adresse e-mail à partir de laquelle envoyer la notification.
    replyTo Chaîne Adresse e-mail à laquelle les destinataires peuvent répondre.
    digest: {
        allow: true,
        defaultInterval: hourlyDigest,
        template: escalationTemplate,
        subject: "Incident Escalation Digest - \${digest_count} incidents require attention",
        html: `<div>
               <div>Incident Escalation Digest</div>
               </div>`,
        separatorHtml: '<hr style="margin: 15px 0;">',
        from: "noreply@company.com",
        replyTo: "itsupport@company.com"
    }

    Objet recipientDetails

    Configurez la personne qui reçoit une notification par e-mail.

    Les destinataires des notifications doivent être des utilisateurs actifs définis en tant qu’utilisateurs actifs dans la table Utilisateur [sys_user]. Ils doivent également disposer d’une adresse e-mail valide définie pour leur canal principal (appareil) dans la table Récepteur de notification [cmn_notif_device]. Les destinataires des notifications doivent également avoir les préférences de notification appropriées activées.

    Tableau 5. Propriétés
    Nom Type Description
    recipientUsers Tableau Une liste des identificateurs de variables ou des sys_ids d’utilisateurs [sys_user] ou une liste des adresses e-mail pour recevoir la notification. Pour définir un utilisateur, utilisez l’option API d’enregistrement : ServiceNow Fluent.
    champs de destinataire Tableau Liste des champs qui font référence aux utilisateurs ou groupes d’utilisateurs qui recevront la notification. Les champs doivent être des champs de référence.

    Par exemple, si une notification utilise la table Incident [incident], vous pouvez spécifier le champ opened_by pour envoyer la notification aux utilisateurs ou aux groupes qui ont ouvert l’incident. Cette liste d’utilisateurs ou de groupes est variable et dépend des valeurs de l’enregistrement de tâche associé. Vous pouvez également sélectionner un champ qui inclut une chaîne d’adresse e-mail pour envoyer une notification à cette adresse.

    groupes de destinataires Tableau Une liste des identificateurs de variables ou des sys_ids de groupes d’utilisateurs [sys_user_group] pour recevoir la notification. Pour définir un groupe d’utilisateurs, utilisez le fichier API d’enregistrement : ServiceNow Fluent.
    Remarque :
    Les membres du groupe reçoivent des notifications individuelles uniquement si l’option Inclure les membres est sélectionnée dans l’enregistrement du groupe.
    excludeDelegates Booléen Marqueur indiquant s’il faut exclure les utilisateurs délégués. Définissez cette propriété sur vrai pour empêcher l’instance d’envoyer des notifications par e-mail aux délégués des utilisateurs et des membres des groupes que vous avez sélectionnés.

    Valeur par défaut : false

    isSubscribableByAllUsers Booléen Marqueur indiquant s’il faut autoriser tous les utilisateurs à s’abonner à la notification. Pour plus d'informations, consultez Subscription-based notifications.
    Remarque :
    Si l’enregistrement contient des données sensibles ou protégées, envisagez de restreindre la liste des destinataires aux seuls utilisateurs et groupes qui y ont normalement accès, en laissant la valeur de cette propriété sur faux. Vous pouvez également configurer le contenu de votre notification afin que les données privées ou sensibles ne soient pas exposées. Par exemple, vous pouvez insérer un lien vers l’enregistrement associé, afin que les détails ne soient pas révélés dans la notification.

    Valeur par défaut : false

    sendToCreator Booléen Marqueur indiquant s’il faut envoyer la notification à la personne qui a effectué l’action qui a démarré le processus de notification, si la personne est également un destinataire. Si le créateur de l’événement n’est pas spécifié dans l’un des champs de destinataire, il ne reçoit pas de notification, quel que soit le paramètre de ce champ.

    Valeur par défaut : false

    eventParm1WithRecipient Booléen Marqueur indiquant si le paramètre d’événement 1 contient un ou plusieurs destinataires de notifications.

    Cette propriété s’applique uniquement aux notifications basées sur les événements.

    eventParm2WithRecipient Booléen Marqueur indiquant si le paramètre d’événement 2 contient un ou plusieurs destinataires de notifications.

    Cette propriété s’applique uniquement aux notifications basées sur les événements.

    recipientDetails: {
        recipientGroups: ["d625dccec0a8016700a222a0f7900d06"], // IT Support group sys_id
        recipientFields: ["assigned_to", "caller_id"],
        sendToCreator: false,
        isSubscribableByAllUsers: false
    }