The moment it happens
Email yourself every finished chat
When a chat ends, you get the visitor's details and the whole transcript in one email.
- Runs
- The moment it happens
- Apps
- LiveChat
- AI
- Not needed
- Access
- chats--all:ro, webhooks.configuration:rw
Send this to your assistant
Create a ClickRuntime automation: when a LiveChat chat ends, email me the visitor's name, email and page URL, followed by the full transcript.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
Some chats are worth keeping: a customer describing a bug in detail, a prospect asking about pricing, a promise made by an agent about a refund. LiveChat stores the conversations, but they live inside the tool, and the people who need them, an account manager, an engineer or the owner, do not have a seat or do not think to look. Important details get lost between the chat window and the people who must act on them.
When a chat ends, LiveChat notifies ClickRuntime, which fetches the whole conversation, formats it as a readable transcript with names and timestamps and emails it to you. The email arrives soon after the customer says goodbye, so follow-up work can start while the conversation is still fresh.
Small businesses that handle chats personally and agencies reporting to clients are common users.
What you get out of it
Promises made in chat are on record
When an agent tells a customer a refund is coming, the transcript shows exactly what was promised. That avoids disputes and gives whoever follows up the right instructions. That clarity prevents arguments later.
Follow-up gets the full context
An engineer who receives the transcript sees the customer's own words about a bug, including steps and error messages. That is more reliable than a summary written from memory. That is more reliable than any paraphrase of the conversation.
People without a LiveChat seat stay informed
Owners, account managers and clients can read conversations by email without a license. It shares knowledge across the company at no extra cost. That knowledge reaches the people who actually need it.
Disputes and complaints are easier to settle
When a customer says they were told something different, the emailed transcript settles it quickly. It protects both the customer and the business from misunderstandings. That is often the end of the discussion.
Searchable archive in your mailbox
Email search finds a customer's name or a phrase from a chat instantly. For many small teams that is quicker than navigating the LiveChat archive. That is often faster than opening another tool.
How it works
What happens, step by step
When a LiveChat chat ends, LiveChat tells ClickRuntime straight away.
The automation fetches the full chat, including the visitor's name, email and the last page they were on.
It lays out every message with who said it.
You get one email with the visitor's details and the whole transcript.
Before it runs live
- Connect LiveChat
- Paste your automation's link into the other app's webhook settings
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other LiveChat steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_event, credentials, http, notify
@on_event
def handle(event):
body = event.json
if body.get("action") != "chat_deactivated":
return {"skipped": True}
p = body["payload"]
chat = http.post("https://api.livechatinc.com/v3.5/agent/action/get_chat",
json={"chat_id": p["chat_id"], "thread_id": p["thread_id"]},
headers={"Authorization": f"Bearer {credentials.connection('livechat', 'work')}"}).json()
names = {u["id"]: u.get("name", u["type"]) for u in chat["users"]}
visitor = next(u for u in chat["users"] if u["type"] == "customer")
page = (visitor.get("last_visit") or {}).get("last_pages", [{}])[-1].get("url", "-")
lines = [f"{names.get(e['author_id'], '?')}: {e['text']}" for e in chat["thread"]["events"] if e["type"] == "message"]
notify.email_me(f"Chat with {visitor.get('name', 'visitor')}",
f"Visitor: {visitor.get('name', '-')} <{visitor.get('email', '-')}>\nPage: {page}\n\n" + "\n".join(lines))
return {"chat_id": p["chat_id"]}FAQ
Common questions
Will it send emails for very short chats or spam?
Does the email show who said what?
Can transcripts go to the customer instead of me?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Catch chats no agent answered
Chats from the past hour without an agent reply reach your inbox so you can follow up.
See how it worksGet yesterday's chat numbers each morning
A morning email with total chats, satisfaction and first response time.
See how it worksGet a Slack alert for chats rated bad
A bad rating shows up in Slack with the visitor's comment and a link to the transcript.
See how it worksKeep exploring
Set up “Email yourself every finished chat” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.