> For the complete documentation index, see [llms.txt](https://threadly.gitbook.io/threadly/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://threadly.gitbook.io/threadly/settings/workspace-variables.md).

# Workspace Variables

Workspace Variables are custom placeholders you define once and reference in any Threadly message. When your message is sent, Threadly replaces each placeholder with its stored value automatically.

**Example:** Define `{{company_name}}` as `Acme Corp`. Any message containing `{{company_name}}` will render as "Acme Corp" when delivered to recipients.

***

## Why Use Workspace Variables?

* **Consistency** — the same value appears correctly in every message without retyping
* **Easy updates** — change a value once in Settings and it applies everywhere going forward
* **Team-wide reuse** — variables are shared across your workspace, so any team member can use them
* **Dynamic messaging** — combine workspace variables with system variables like `{{user}}` and `{{channel}}` for fully personalized messages

***

## Adding a Variable

1. In Threadly, go to **Settings → Workspace Variables**.
2. Click **Add Variable**.
3. Enter the **variable name** (without braces). Use snake\_case for multi-word names, e.g. `support_email`.
4. Enter the **variable value** — the text that will replace the placeholder when the message is sent.
5. Click **Save**.

***

## Using Variables in Messages

In any Threadly message or workflow, type your variable name surrounded by double curly braces:

```
Hi {{user}},

Q4 planning is underway at {{company_name}}. Please complete your goals survey by {{survey_deadline}}.

Questions? Reach us at {{support_email}}.
```

When sent, Threadly substitutes each `{{variable}}` with its stored value.

***

## Variable Types Compared

| Type                     | Source                            | Example                            |
| ------------------------ | --------------------------------- | ---------------------------------- |
| **Workspace Variables**  | Defined by your team in Settings  | `{{company_name}}`, `{{ceo_name}}` |
| **System Variables**     | Automatic — provided by Threadly  | `{{user}}`, `{{channel}}`          |
| **Form Field Variables** | Form submissions (workflows only) | `{{priority}}`, `{{comments}}`     |

***

## Managing Variables

* **Edit** — click any variable in Settings → Workspace Variables to update its value. Future messages will use the new value; previously sent messages are unaffected.
* **Delete** — removes the variable from Settings. Any messages or templates that still reference it will render the literal placeholder text (e.g. `{{company_name}}`) rather than a value.

{% hint style="warning" %}
Deleting a workspace variable breaks any message template or workflow that references it. Check for usage before deleting.
{% endhint %}

***

## See Also

* [Leveraging Message Variables](/threadly/sending-messages/how-to-send-a-message-with-threadly/leveraging-message-variables.md) — full guide to all variable types
* [Advanced Workflow Settings](/threadly/workflows/advanced-workflow-settings.md) — using variables in workflow messages


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://threadly.gitbook.io/threadly/settings/workspace-variables.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
