> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usefini.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Ticket macros

> Create workspace-wide saved replies, fill conversation variables, and review messages before sending.

In a native-ticketing workspace, open **Macros** from the sidebar to manage saved replies shared across your workspace. Macros are workspace-scoped: a second workspace needs its own set. They are not personal templates: teammates can edit or delete them. Existing saved replies from another helpdesk can be imported with help from your Fini contact.

**1. Create a macro**

Click **New macro**, enter a unique **Title** and a **Message**, then click **Create macro**. Titles can contain up to 150 characters and messages up to 10,000. Titles are unique within the workspace regardless of capitalization or surrounding spaces.

**2. Add variables and preview**

Write the message in Markdown. Use **Insert variable** to choose **Conversation ID** under **Conversation**, or an attribute under **User attributes**, such as `{{attributes.firstName}}`. **Conversation ID** inserts `{{metadata.conversationId}}`, which fills with the current Fini conversation ID, not its ticket number. It does not depend on a user-attribute lookup. **Preview** shows formatting but leaves variables as placeholders; values are filled from the conversation when you insert the macro.

**3. Insert into a conversation**

In the ticket composer, click **Macros**, search by title, and select a saved reply. It fills an empty composer or appends below your existing draft. Inserting a macro sends nothing and does not change the current Reply or Internal note mode.

**4. Review and send**

Edit the inserted text, check the mode, and send when ready. Missing variables remain visible with a **Not filled in** warning. Replace or remove them yourself: the warning does not block sending.

Open a saved macro to edit it with **Save changes**, or use **Delete** and confirm with **Delete permanently**. Search matches titles, not message text. For programmatic management, see the [Macros API](https://docs.usefini.com/en/api-reference/macros.md).

## Troubleshooting

> **A variable was not filled in**
>
> The current conversation does not provide a value for that placeholder. Replace or remove the unresolved text before sending. The warning is informational and does not prevent sending.

> **I cannot find a macro**
>
> Search by its title, not its message text. Macros belong to the current workspace, so check that you are in the intended workspace.

> **Inserting a macro did not send the reply**
>
> This is intentional. Insertion only edits your draft. Check the text and whether **Reply** or **Internal note** is selected, then send it yourself.


## Related topics

- [Inbox](https://docs.usefini.com/en/testing/inbox.md)
- [Work a ticket](https://docs.usefini.com/en/ticketing/working-tickets.md)
- [Delete macro](https://docs.usefini.com/en/api-reference/delete-macro.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.