All help articles

Canned replies and macros

Saved replies for the Zappocity help desk, so staff answer common questions the same way, quickly. A canned reply with actions is a macro: using it also sets the ticket's status, priority, queue or assignee, in one click.

Find them in the panel under Help desk → Canned replies.

Writing one

Placeholders

PlaceholderBecomes
{{customer.name}}The requester's name
{{customer.firstName}}The first word of the requester's name
{{customer.email}}The requester's address
{{ticket.number}}The ticket's number, such as 1042
{{ticket.tag}}The ticket's tag: its queue's prefix and number, such as BIL-1042
{{ticket.subject}}The ticket's subject
{{queue.name}}The ticket's queue, such as Billing
{{agent.name}}Whoever sends it, from their address: jane.doe@ is Jane Doe
{{agent.email}}Whoever sends it

Give a fallback after | for when the value is empty: Hi {{customer.firstName|there}}, says "Hi there," to someone who gave no name. A placeholder that is not in the list is refused when you save, so a typo never reaches a customer.

Using one on a ticket

On a ticket, Start from a canned reply... above the message fills in the text for that ticket. Change anything you like, then Send: the edited text goes out, and the reply's actions are taken. Send without it keeps your text but drops the reply's actions.

Macros (replies with actions) are also buttons under Macros at the top of the ticket. One with text asks before sending; one without text just takes its actions, and nobody is emailed.

When a reply is sent without its own status, the ticket waits on the customer, as with any reply; a note leaves the status alone.

The list is sorted by use, the most used first.

Who can use them

Staff with the support permission use, add, change and remove canned replies; staff who can only read see them.

Command line and API

corpsuite support replies queue=billing
corpsuite support reply add name="Refund sent" queue=billing \
  body='Hi {{customer.firstName|there}}, the refund is on its way. {{agent.name}}' \
  setStatus=resolved setAssignee=me
corpsuite support ticket preview-reply TICKET-ID REPLY-ID
corpsuite support ticket use-reply TICKET-ID REPLY-ID [body=EDITED-TEXT]
corpsuite support reply set REPLY-ID name=... (every field; those left out are cleared)
corpsuite support reply remove REPLY-ID

In the platform API: /v1/platform/support/replies (list, add), /v1/platform/support/replies/{replyId} (change, delete) and /v1/platform/support/tickets/{ticketId}/replies/{replyId} (GET fills it in, POST uses it). See api/platform.yaml.