Freshchat automation · runs daily
Answer waiting Freshchat chats from your canned responses
The chats that wait longest for a first reply are the simple ones, and an agent finds them by scrolling the Inbox and typing the same shortcodes all day.
Cotlet does it in your own Freshchat account with list_conversations, get_conversation, list_canned_responses and send_reply, called by your AI agent, an n8n workflow or a script.
Hosted · nothing to install or maintain
Can Freshchat do this on its own?
Freshchat offers Priority Inbox and canned responses that an agent picks by hand (checked 22 Oct 2026). Its REST API can post a message to a conversation, and the endpoints we checked list no canned responses. Nothing matches a saved reply to the question in a chat.
How you do it in Freshchat today
- An agent opens the Inbox and switches to Priority Inbox, which sorts conversations by who has waited longest and marks each one First Response Due, Response Due or No Response Due.
- The agent opens a First Response Due chat, reads the question, then types "/" and the shortcode, or clicks the canned response icon below the reply box to search and preview a saved reply.
- An Account Owner or Admin keeps the library under Admin > Canned Responses > New Canned Response: a title, a reply body with emojis or images, a shortcode and a folder.
- Freshchat's own tip is to add a personal note at the start or end of a saved reply so it does not read as a template.
- Choosing the right reply and adding the note is the slow part, and it repeats for every chat in the queue.
How to answer waiting Freshchat chats from your canned responses
Find Freshchat conversations still waiting for a first reply. Where one of our canned responses answers the question, send it with a short personal line, and list the rest for me. - 01
Collect the first-reply queue
list_conversations runs with waiting set to first_response_due, the "First Response Due" state, and follows next_cursor to the end, oldest wait first, so the longest-waiting customers are answered before the rest.
- 02
Read the whole chat
get_conversation brings the messages. A chat where an agent already replied since the list was read is skipped, and a chat about a refund, a complaint or an account problem is listed for you instead of answered.
- 03
Match a saved reply
list_canned_responses returns title, shortcode, folder and body for the personal and shared folders your account can see. The agent picks a response only when its body answers the question, and a chat with no fit is listed with the closest title.
- 04
Add the personal line
The agent adds the customer's first name and one sentence tied to their question, following the tip from Freshchat's own canned responses guide, so the reply does not read as a template.
- 05
Send after a fresh read
send_reply posts the text to the customer. It sends text only, so a canned response that relies on an image goes on your list. Each send reaches a customer and waits for your OK by default.
What you get back
Chats waiting for a first reply: 9
Replied 6 (shortcodes: pswd 3, invoice 2, hours 1)
Left for you 3:
- "I was charged twice" (billing)
- "The app crashes on login" (needs support)
- "Do you have a partner program?" (no saved reply) Other ways to ask
- Only reply to chats from the pricing page and use the pricing folder.
- Draft the replies in this chat, with the canned response each one comes from, and send nothing.
- Every hour in business hours, answer first-reply chats and tell me how many are left.
What Freshchat allows, and what to know first
- Freshchat's three Priority Inbox states are First Response Due, Response Due and No Response Due.
- Freshchat canned responses live in personal folders, visible to their creator only, or shared folders that other agents also use.
- Freshchat's canned response guide names Admin and Account Owner as the roles that create canned responses for themselves and for their agents.
- Freshchat canned response bodies can hold emojis and images, and agents insert them with "/" and the shortcode or from the icon below the reply box.
send_reply asks for your OK by default. To run it daily without you, switch confirmation off for that tool in your dashboard.
Sources: Freshchat Help: Priority Inbox · Freshchat Help: Canned Responses · Freshchat API reference
Call send_reply from a script
curl -X POST https://cotlet.dev/api/v1/freshchat/conversations/e2a7c4b1-8d3f-4e59-b6a0-1f9c3d5e7a82/replies \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"body":"Hi Priya, to change your password open Settings, choose Security and click Reset password. Tell me if the email does not arrive."}' {
"message_id": "3f6a8c1d-7e2b-4d95-a0c4-6b1e9d2f5a78",
"conversation_id": "e2a7c4b1-8d3f-4e59-b6a0-1f9c3d5e7a82",
"status": "sent",
"sent_at": "2026-10-22T07:31:00Z"
} MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is freshchat_write → send_reply. Example data.
Schedule it in n8n, Make, Zapier or cronFreshchat tools this automation uses
| Tool | Parameters |
|---|---|
| list_conversations | status, waiting, group_id, agent_id, limit, cursor |
| get_conversation | conversation_id |
| list_canned_responses | query |
| send_reply | conversation_id, body |
Frequently asked questions
Is it safe to connect Freshchat to Cotlet?
Yes. You sign in to Freshchat yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Freshchat once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.
Give your agent access to Freshchat.
Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Freshchat.