Notification does not trigger and create emailIssue <!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } When troubleshooting email notifications not being created, the first step should be validating that valid recipients are available. There are two ways to troubleshoot this: The first and easiest way is to use the Notification Preview on the notification. Select the record in question and view the recipients. If they are all crossed out, an email would not be created for the record in question. Hover over the crossed-out recipients to view the reason they were excluded.The second option is to create the property glide.email.notification.save_when_no_recipients and set it to true. Reproduce the issue and check for a sys_email with no recipients. The email logs provide the reasons recipients were excluded. This article will cover three types of notifications: Engine, event, and triggered. Engine: Engine-based notifications trigger when a record is inserted or updated. When these actions occur in the instance, the notification engine runs and evaluates all notifications for the table in question, then evaluates the conditions. If the conditions pass, an event is created (notification_engine.process). This event will have the notification sys_id as parm1 and the record sys_id as instance. The event processor will process these events and create the sys_email record (assuming there are valid recipients). Event: Business rules or other scripts create events. When these events are processed, the event processor will look for notifications triggering off of the registered event; conditions are evaluated and, if they pass, the sys_email is created (assuming there are valid recipients). Triggered: Triggered notifications are solely for use in Flow Designer. Activating the Flow Designer plugin will add a triggered sys_choice to the notification Send When. These notifications have no conditions, as they will fire unconditionally when a flow is executed (provided there are no runtime errors during flow execution). Flow Designer and triggered notifications were added in the Kingston release. Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Cause<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Resolution<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Troubleshooting Engine-Based Check for a notification_engine.process event with the notification sys_id as parm1 and the record sys_id as instance.If this event exists and is processed but no sys_email is created, this means the conditions of the notification passed, likely indicating that there are no valid recipients or that there is an issue with the content of the message. Use the notification preview function on the notification and look for errors in the localhost logs at the time the event was processed to verify.If the event does not exist, this likely points to the conditions not passing. Double-check the conditions against the record at the time of the action.If you are convinced the conditions should have passed, create a Business Rule on insert/update with the same conditions; make it an After BR with an Order greater than 1000. Put a log statement that outputs if the BR was executed and the values of the conditions in question. Alternatively, create a copy of the notification with no conditions. If this copy is working, add conditions one by one.If this BR is skipped, it will show the conditions failing. If this BR does not even try to execute, this points to the engines being stopped at some point. Looking at the execution order of scripts and engines will help determine if this is the case. See documentation topic Execution order of scripts and engines for more information. In simple terms they are: Before business rules (Order < 1000)Before enginesBefore business rules (Order >= 1000)The database operation (insert, update, delete)After business rules (Order < 1000)After engines <-- Notification engine is hereAfter business rules (Order >= 1000) Another way to troubleshoot if the engines are being stopped is to turn on Session debugging for Business Rules (Detailed) and reproduce the issue and making the insert or update on the record. Then, you can see the output on the page on which business rules run. Make sure you are looking at the logs for the specific table in question and you should see output for each of the execution areas listed in the previous step. If you do not see the After engines/notifications running or the After business rules (Order >= 1000) then we must find what is stopping the engines from running. Causes of the after engines being stopped Try disabling the "Run SLAs" business rule and see if the issue persists. If this resolves the issue, then one of the SLAs is stopping the engines.Look at which Business Rules are running and look for setworfkow(false) or setAbortAction(true) in the script. This would be stopping the engines. See documentation topic How business rules work for more information. Known issues causing conditions to erroneously fail KB0623377 - Email Notifications with only comments in the advanced condition do not trigger because the condition is evaluated to falseKB0623384 - Email Notifications containing an Advanced Condition with last statement gs.log call will not executeKB0824467 - Inbound Actions: When using both the 'Field Actions' and the 'Script' to assign values to the newly created record, a double update occurs. Troubleshooting Event-Based Event-based notifications will check the notification conditions at the time the event is processed. First, make sure the event is there and processed with no errors. If the event exists follow these steps, otherwise the issue is with the business rule or whatever else is creating the event. Use the Notification Preview feature and select the specific event. Check to see it is selectable and that at least one of the recipients is included.Double-check the conditions at the time the event was processed. The values may be different from when the event was created and when it was processed if things are changing quickly on the record. Note: Notification Preview gives no indication as to the conditions passing; it's only for recipients and content. Make sure the event is registered in the Event Registry.Make sure the event does not have any leading or trailing spaces in the registry and in the sysevent table. This is not always evident and has found adding the event name to the list view as being the most effective way to validate this case. Note: If this is the case, you shouldn't be able to find the event when using Notification Preview during step 1. Look in the localhost logs at the time the event was processed looking for any errors.Create the same event with the same parameters manually to see if the notification triggers. If it triggers manually but it does not trigger when the event is created normally, check for setworkflow(false) or setAbortAction(true) in scripts. It is most likely that something is stopping the execution when the event is created normally.Create the same event with a different record/recipient to see if the issue is user or record specific. Look at user notification settings or notification conditions or custom business rules accordingly.Apply the steps from Troubleshooting Engine Based regarding conditions. Troubleshooting Triggered-Based Triggered-based notifications will create notification_engine.process events. Once these events are in place, troubleshooting is the same as Troubleshooting engine-based notifications where this event is present. No condition evaluation is done at the time these events are processed. It is only a question of recipients and content. If this event is not present, check for errors in the FlowDesigner Flow Executions tab and syslog entries where Source is AutomationHub.