Current status
Rendering is part of delivery.
The Studio email screen saves the response policy and its version. When an agent sends an email, GameDesk resolves the permitted values on the server, stores an immutable plain-text and HTML snapshot with that delivery, then sends those snapshots through SES.
Available registry
Only these exact tokens are allowed.
| Variable | Resolved value |
|---|---|
{{player_name}} | The player display name, when GameDesk has one. |
{{player_email}} | The email address on the conversation, when available. |
{{player_id}} | The connected player identifier, when available. |
{{studio_name}} | The company/studio that owns the conversation. |
{{game_name}} | The assigned game name. Empty for a studio-level ticket with no game assignment. |
{{agent_name}} | The authenticated agent sending the reply. |
{{ticket_id}} | The GameDesk conversation ID. |
{{ticket_subject}} | The current conversation subject. |
{{support_address}} | The verified GameDesk-managed address used to send the reply. |
{{agent_reply}} | The agent’s editable reply. Reserved for response formats; it will not be offered in agent draft templates. |
Rules
How rendering will stay safe.
- Values are resolved on the Go server from the authorized ticket, company, game, route, and sending agent—not from browser input.
- An unavailable value becomes an empty string. It never falls back to data from another ticket or company.
- Unknown tokens are rejected when an administrator saves a policy or template.
- Every variable except
{{agent_reply}}can be used in the response format, default signature, or the opt-in resolution notification text.{{agent_reply}}is reserved for the response format, where the final agent reply is inserted once before the signature is appended; it is never available to the signature or resolution notification, since neither has an agent-authored reply. - Each delivery will retain the fully rendered snapshot and policy version used, so later setting changes cannot alter historical messages.
Example
A format around the agent’s answer.
A future Studio format could be:
Hello {{player_name}},
{{agent_reply}}
{{studio_name}} SupportFor a ticket belonging to Astera Studio, where the agent writes “We have reset your progress,” the worker will produce a normal plain-text email with those values substituted. It will not expose tokens, internal IDs beyond the explicitly requested ticket ID, or unapproved data.