Skip to content

SMS_NLT_UNRESOLVED_EXPRESSION

Category: sms  ·  Severity: warning  ·  Channel: SMS

After rendering against the sample contact, one or more NLT expressions in the SMS body could not be resolved. Unresolved expressions surface raw tokens (for example «first_name») to the recipient in the delivered text.


What it means

Synapse Inspect renders your template's body_nlt against a sample contact. If an expression can't be resolved — usually a typo in a property name, or a property the sample contact doesn't have — the raw token is left in place rather than substituted.

Unlike a required miss, an unresolved expression does not suppress the message. The SMS still sends — but with the literal token text visible to the recipient.


Why it matters

Sending Hi «first_name», your order shipped! to a real customer looks broken and erodes trust. Because the message still delivers (it isn't suppressed), an unresolved expression is easy to miss until a recipient reports it.


How to fix it

  1. Check the expression syntax — confirm the property name is spelled correctly and matches a real contact property.
  2. Confirm the property exists on the contacts this template targets. If some contacts legitimately lack it, consider an NLT fallback value so the message reads naturally.
Tip

One finding is emitted per distinct unresolved expression, so if you see several, fix them together — the context.expression field on each finding names the exact token.


Finding context

json
{
"expression": "first_name"
}