Syntax
| Type | You write | Result |
|---|---|---|
| Spintax | [[Hi|Hello|Hey]] | Hi, Hello, or Hey (random per message) |
| Explicit spin | [[spin:Hi|Hello]] | Same as above: Hi or Hello |
| Nesting | [[Hi [[there|friend]]|Hello]] | Hi there, Hi friend, or Hello |
| Plain text (no |) | [[plain text]] | Left unchanged |
| With GHL fields | [[Hi|Hello]] {{contact.first_name}} | GHL fills the name first, then InfiniReach picks the greeting |
1
Use it in GoHighLevel
- Open a GHL conversation, or a workflow SMS / WhatsApp action that sends through InfiniReach.
- Type your message with spintax, for example:
[[Hi|Hello|Hey]] {{contact.first_name}}, thanks for reaching out.Sent text (name filled by GHL): Hello Jordan, thanks for reaching out.

2
Use it in InfiniReach and the API
Spintax works everywhere InfiniReach sends: Campaigns, Automations, Conversations replies, and POST /api/v1/messages.
In campaigns, tags are expanded on the template before merge fields like {{firstName}}, so contact data is never treated as a tag.
{
"to": "+1234567890",
"message": "[[Hi|Hello|Hey]] — just checking in.",
"from": "+15559876543",
"channel": "sms"
}Message Logs stores both the sent text and the original template.
Reserved tags (not live yet)
These are removed from the sent text and saved on the message, but not executed:
[[tts]]/[[voice]]: reserved for text-to-voice[[route:sales]]: reserved for routing[[cmd:name args]]: general command form
Rules and edge cases
[[plain text]]with no|and no known command is left as is.- If a message is empty after tags are removed (for example only
[[tts]]) and has no media, it is rejected or marked failed instead of sent blank. - An unclosed
[[stays as text. Later closed tags in the same message still work. - There’s no way to escape a literal
[[a|b]]yet. Avoid that pattern in normal text.
FAQ
Are [[tts]] and [[route:…]] available now?
No. They’re reserved. Today they’re removed from the sent text and stored, not executed.
Will the message log show the template?
Yes. Message Logs keeps both the final text and the original template.