The moment it happens
Turn Telegram notes into a proposal in Google Docs
Send /proposal and your rough notes to your Telegram bot and get back a link to a formatted proposal in Google Docs.
- Runs
- The moment it happens
- Apps
- Google Docs, Telegram
- AI
- Yes, uses the built-in AI allowance
- Access
- service account with Drive folder access; bot token
Send this to your assistant
Create a ClickRuntime automation: when I send /proposal plus my notes to my Telegram bot, write a proposal with AI, create a Google Doc with it in my Proposals folder and reply with the link.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
The owner of a small web agency often leaves a client meeting with a clear idea of the project but no time to write it up. By the evening the details have faded, and the proposal goes out two days later than it should. Most of the effort is turning scattered notes into a document with the right sections.
Typing the key points into Telegram on the way out of the meeting, and getting a structured draft back as a Google Doc, means the proposal is half done before the next meeting starts. Agency owners, consultants and freelancers use it for proposals, project plans and meeting write-ups.
What you get out of it
Capture the details while they are fresh
You write the notes straight after the meeting, from your phone. Nothing important is lost waiting for a free hour at a desk.
A first draft in the right shape
The notes come back as a document with a summary, scope, timeline and next steps. You spend your time correcting and pricing instead of formatting.
Proposals go out sooner
A same-day proposal shows the client you were listening and keeps the momentum from the meeting. Speed is often what wins small projects.
Everything lands in one folder
Each draft is saved to your Proposals folder in Drive, named after the client. Finding last month's proposal to reuse a section is quick.
How it works
What happens, step by step
When you send a message starting with /proposal to your Telegram bot, ClickRuntime picks it up straight away.
AI turns your notes into a proposal with a summary, scope, timeline and next steps.
A new Google Doc is created in your Proposals folder with that text.
The bot replies in Telegram with the link to the new doc.
Before it runs live
- Connect Google Docs
- Connect Telegram
- 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
- 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 Google Docs and Telegram steps into one automation
Under the hood
The code that runs this automation
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_event, credentials, http, ai
FOLDER_ID = "your-proposals-folder-id"
@on_event
def handle(event):
msg = (event.json or {}).get("message") or {}
text = msg.get("text", "")
if not text.startswith("/proposal"):
return {"skipped": True}
notes = text[len("/proposal"):].strip()
draft = ai.generate(f"Write a client proposal from these meeting notes. First line: a short title naming the client. "
f"Then sections Summary, Scope, Timeline, Investment, Next steps.\n\n{notes}", max_output_tokens=1800).text
title = draft.split("\n", 1)[0].strip("# ")[:100]
creds = Credentials(credentials.connection("google", "work"))
file = build("drive", "v3", credentials=creds, cache_discovery=False).files().create(
body={"name": title, "mimeType": "application/vnd.google-apps.document", "parents": [FOLDER_ID]}, fields="id").execute()
build("docs", "v1", credentials=creds, cache_discovery=False).documents().batchUpdate(documentId=file["id"], body={
"requests": [{"insertText": {"location": {"index": 1}, "text": draft}}]}).execute()
http.post(f"https://api.telegram.org/bot{credentials.secret('TELEGRAM_BOT_TOKEN')}/sendMessage", json={
"chat_id": msg["chat"]["id"], "text": f"Draft ready: https://docs.google.com/document/d/{file['id']}/edit"})
return {"doc_id": file["id"]}
FAQ
Common questions
What should I include in my notes?
Can I use it for documents other than proposals?
Can my team edit the draft?
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
Chat with a Telegram assistant that remembers you
Your Telegram bot answers using the notes in your Memory Google Doc, and adds anything new you tell it to that doc.
See how it worksAnswer Telegram questions from your Google Docs
People ask your Telegram bot a question and get an answer based only on your FAQ or policy Google Doc.
See how it worksSummarise YouTube videos from Telegram into a Google Doc
Send a YouTube link to your Telegram bot and get a summary back, saved in your Video notes doc as well.
See how it worksKeep exploring
Set up “Turn Telegram notes into a proposal in Google Docs” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.