Save a canned reply
Saves a canned reply under a name, with the status and tags it applies whenever it is sent.
$0.001 a call
From your agent’s balance. A call that fails costs nothing.
An example
Save our standard answer about repair times, and set tickets to waiting on the customer when we send it.
Your agent callsticket_save_template$0.001 a call
The example business is Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon. The reply is the one the tool really gives.
{
"name": "repair-times",
"status": "pending",
"tags": [
"repairs"
],
"body": "Hello {requester_name},\n\na tune-up takes 2 to 3 working days, and a repair that needs parts 5 to 7. We text you as soon as your bike is ready to pick up.\n\n{business_name}"
}Use it when
The same answer goes out again and again: repair times, returns, care tips.
What it does
Save a canned reply (a macro) under a name, replacing the one with that name. body may use {requester_name}, {requester_email}, {ticket_number}, {ticket_subject} and {business_name}. status and tags, if given, are applied each time it is sent with ticket_reply (e.g. status "resolved").
What comes back
The saved reply (name, body, status, tags), and created: true when the name is new. Every reply also carries cost_usd and balance_usd.
Inputs
| Name | Type | What it is |
|---|---|---|
nameRequired | string | 1 to 80 characters. |
bodyRequired | string | 1 to 8,000 characters. |
status | string | One of: open,pending,resolved. |
tags | array of strings | Short labels like "refund" or "vip" (kept lower-case, spaces become dashes). Up to 20 items. |
The call
Over MCP, call ticket_save_template on https://api.conecto.chat/mcp/helpdesk. Over REST:
curl -X POST https://api.conecto.chat/v1/tools/ticket_save_template \
-H "Authorization: Bearer $CONECTO_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"repair-times","status":"pending","tags":["repairs"],"body":"Hello {requester_name},\n\na tune-up takes 2 to 3 working days, and a repair that needs parts 5 to 7. We text you as soon as your bike is ready to pick up.\n\n{business_name}"}'When it refuses
A refused call costs nothing and says what to do next.
| Code | When | What to do |
|---|---|---|
invalid_input400 | The body uses a placeholder that does not exist, or a tag is not valid. | Use only the placeholders the message lists, like {requester_name}. |
conflict409 | A reply with that name was saved at the same moment. | Call again. |
More Help desk tools
All 13 tools- List tickets
ticket_listTickets, newest activity first, filtered by status, priority, requester, tag, field or contact, or as a work queue.Free* - Read a ticket
ticket_getOne ticket with its request, every reply, customer message and note, its fields, SLA state and rating.Free* - Open a ticket
ticket_createOpens a support ticket for a customer request; the customer is emailed only if you ask.$0.01 a call - Reply to a ticket
ticket_replyEmails the requester a reply in the ticket's thread, with files if needed, or adds a private note, and can set the status.$0.05 a call - Update a ticket
ticket_updateChanges a ticket's status, priority, category, subject, tags, fields, assignee, or the CRM records it is about.$0.01 a call - Merge tickets
ticket_mergeMerges a duplicate ticket into another: its messages, notes, email threads, tags and fields move over.$0.01 a call - Connect a support inbox
ticket_connect_inboxMakes an inbox a support inbox: every new email to it opens a ticket, and replies stay in its thread.$0.001 a call - List canned replies
ticket_list_templatesEvery saved reply with its text, status and tags.Free*
Give this to your agent.
Set up Conecto from https://conecto.chat/SKILL.md