Weekly
Turn repeated support questions into FAQ drafts
Each week, the questions customers keep asking are grouped and added to your FAQ doc with draft answers ready to edit.
- Runs
- Weekly
- Apps
- Gmail, Google Docs
- AI
- Yes, uses the built-in AI allowance
- Access
- Gmail gmail.readonly; Docs write
Send this to your assistant
Create a ClickRuntime automation: every Monday, read last week's support emails, find the questions that keep coming up and add draft FAQ answers to my FAQ Google Doc.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A two-person software company answers support from a shared inbox. The same questions about billing dates, exports and password resets arrive every week, and each one is answered from scratch because the help page never gets updated.
A weekly list of recurring questions with draft answers turns that inbox into a backlog for the FAQ. Publishing the answers cuts the repeat emails, and the drafts make it a ten-minute edit rather than a writing task.
What you get out of it
Fewer repeat tickets
Questions that are answered on your help page stop landing in the inbox. Support time goes to the problems that need a person.
FAQ based on what customers ask
The list comes from real emails, not guesses. Your help content matches the words customers use.
Drafts, not a blank page
Each question arrives with a suggested answer to edit. Keeping the FAQ current becomes a small weekly habit.
Patterns you might miss
Grouping a week of emails shows trends, such as a confusing setting after a release. You can fix the product, not only the answer.
How it works
What happens, step by step
Every week, ClickRuntime collects the support emails received in the past seven days.
AI groups similar questions together and picks the ones that came up more than once.
For each recurring question it writes a draft answer.
The questions and drafts are added to the end of your FAQ Google Doc under the week's date.
Before it runs live
- Connect Google through your own Google app (a one-time, 10-minute setup), so it works with your own Gmail
- Connect Google Docs
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
- Run it at a different time, more or less often, or only on weekdays
- Change what the AI looks for, or how it writes the result
- Add another app, for example also send it to Slack
- Combine it with other Gmail and Google Docs steps into one automation
Under the hood
The code that runs this automation
from datetime import date
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_trigger, credentials, ai
DOC_ID = "your-faq-doc-id"
@on_trigger
def run(event):
creds = Credentials(credentials.connection("google", "work"))
gmail = build("gmail", "v1", credentials=creds, cache_discovery=False).users().messages()
ids = [m["id"] for m in gmail.list(userId="me", q="to:support@yourdomain.com newer_than:7d", maxResults=150).execute().get("messages", [])]
snippets = [gmail.get(userId="me", id=i, format="metadata").execute()["snippet"] for i in ids]
if not snippets:
return {"questions": 0}
lines = "\n".join(f"{n}. {s[:300]}" for n, s in enumerate(snippets, 1))
drafts = ai.generate(f"These are customer support emails. List questions asked more than once, each with a short draft FAQ answer. Leave out names and order numbers.\n{lines}",
max_output_tokens=1500).text
docs = build("docs", "v1", credentials=creds, cache_discovery=False).documents()
end = docs.get(documentId=DOC_ID).execute()["body"]["content"][-1]["endIndex"] - 1
docs.batchUpdate(documentId=DOC_ID, body={"requests": [{"insertText": {"location": {"index": end},
"text": f"\n\nDrafts for week of {date.today().isoformat()}\n{drafts}"}}]}).execute()
return {"emails": len(snippets)}FAQ
Common questions
Which emails does it read?
Does it publish anything to customers?
Are customer names or details copied into the doc?
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
Write a daily email digest into a Google Doc
Every evening, a short summary of the day's email is added to the top of a running Google Doc.
See how it worksGet a weekly email summary of your edited Google Docs
Every Friday you get one email summarising what changed in your Google Docs this week, with the action items pulled out.
See how it worksDraft RFP answers in a Google Doc when one arrives by email
When an RFP lands in Gmail, every question in it is answered in a draft Google Doc and you get an email with the link.
See how it worksKeep exploring
Set up “Turn repeated support questions into FAQ drafts” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.