Skip to main content
Variables let you inject live context into your script templates — the name of the user who opened a ticket, the guild’s icon URL, the current channel mention, and more. Every variable resolves at render time, so the output always reflects the actual values from the Discord context in which the script runs.
Variables use a dot to separate parts and no colon — write {user.name}, not {user: name}. A colon turns something into a layout tag, which is a different system entirely. To print a literal brace without triggering variable resolution, escape it with a backslash: \{not_a_var\}.

Available Roots

Each root maps to a source object that haze resolves from the current context. Aliases: author and member both resolve to user. server resolves to guild. You can use whichever reads most naturally in your template.

User Variables

Guild Variables

Channel Variables

Ticket & Button Variables

These variables are only available when a script is rendered inside a ticket context.

Inspect Live Variables

To see every variable key that is available in your current Discord context, run:
This prints a live list of all resolvable paths — useful when you want to confirm a variable exists before writing your script.