Skip to content

The moment it happens

Draft RFP answers in a Google Doc and share them in Slack

Send an RFP questionnaire to a link and get a Google Doc with a draft answer to every question, based on your company profile, posted to #sales for review.

Runs
The moment it happens
Apps
Google Docs, Slack
AI
Yes, uses the built-in AI allowance
Access
service account with shared folder; chat:write

Send this to your assistant

Create a ClickRuntime automation: when an RFP questionnaire is posted to this link, answer each question with AI using our company profile, write the answers into a new Google Doc and post the link to #sales.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

A small IT services firm answers several security and vendor questionnaires a month. Each one has fifty to two hundred questions, most of which have been answered before in slightly different words. Someone senior spends days copying old answers and adjusting them, and smaller bids get skipped because there is no time.

This automation produces a first draft. You post the questions, AI answers each one from your company profile, and the whole set lands in a Google Doc. The team gets the link in Slack and spends its time checking and sharpening answers rather than writing from scratch.

What you get out of it

  • Days of drafting cut to hours of review

    Most questions already have a good answer in your profile. Starting from a full draft means senior people only spend time where judgement is needed.

  • Bid on more opportunities

    When a questionnaire no longer costs a week, smaller or less certain bids become worth answering. More bids means more chances to win.

  • Consistent answers across bids

    Every draft draws on the same company profile, so your security, insurance and staffing answers do not drift between submissions.

  • Gaps are flagged, not invented

    Questions the profile cannot answer are marked for a person to fill in. Nobody has to wonder which answers were guessed.

  • Review happens where the team already works

    The Doc link arrives in #sales, and comments and edits happen in Google Docs. No new tool for the bid team to learn.

How it works

What happens, step by step

  1. When a questionnaire is sent to the trigger link, ClickRuntime splits it into individual questions.

  2. AI drafts an answer to each one using only your company profile, and marks any it cannot answer.

  3. A new Google Doc is created with every question followed by its draft answer.

  4. A message with the Doc link is posted in your #sales Slack channel for review.

Before it runs live

  • Connect Google Docs
  • Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)
  • Paste your automation's link into the other app's webhook settings

What you get

RunsThe moment it happens
Draft RFP answers in a Google Doc and share them in Slackjust nowSucceeded
Slack · #salesRFP draft ready for Northwind Health (118 questions, 9 need input): docs.google.com/document/d/...

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • 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 Google Sheets
  • Combine it with other Google Docs and Slack steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
answer_rfps_into_a_google_doc_notify_slack.pyexample
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_event, credentials, ai, notify

PROFILE = "Contoso IT: 40 staff, ISO 27001 certified, managed services and cloud migration, UK and EU clients."

@on_event
def handle(event):
    body = event.json or {}
    questions = [q.strip() for q in (body.get("questions") or event.body).splitlines() if q.strip()]
    if not questions:
        return {"skipped": "no questions"}
    parts = []
    for i in range(0, len(questions), 20):
        batch = questions[i:i + 20]
        try:
            text = ai.generate("\n".join(f"Q: {q}" for q in batch), max_output_tokens=2000,
                               system=f"Answer each question from this profile only, as 'Q: ... A: ...'. Write NEEDS INPUT when unknown.\n{PROFILE}").text
        except ai.AIError:
            text = "\n".join(f"Q: {q}\nA: NEEDS INPUT" for q in batch)
        parts.append(text)
    docs = build("docs", "v1", credentials=Credentials(credentials.connection("google", "work")), cache_discovery=False)
    doc = docs.documents().create(body={"title": f"RFP draft - {body.get('name', 'questionnaire')}"}).execute()
    docs.documents().batchUpdate(documentId=doc["documentId"], body={"requests": [{"insertText": {"location": {"index": 1}, "text": "\n\n".join(parts)}}]}).execute()
    notify.slack(f"RFP draft ready ({len(questions)} questions): https://docs.google.com/document/d/{doc['documentId']}/edit", channel="#sales")
    return {"questions": len(questions), "doc": doc["documentId"]}

FAQ

Common questions

What should go into the company profile?
Your standard facts: services, team size, certifications, security practices, insurance, references and common policy answers. The fuller it is, the fewer questions are marked for manual answers.
How do I send the questions?
Post the questions as a list or a block of text to the link, for example from a small form or by forwarding a parsed spreadsheet. One question per line works best.
Can it handle very long questionnaires?
Yes. Questions are answered in batches, so questionnaires with a few hundred questions still finish in one run.
What permissions does it need?
service account with shared folder; chat:write. Nothing else in your accounts is used.
Does it need AI?
Yes. It uses ClickRuntime's built-in AI, so you don't need an OpenAI or Anthropic key. Every plan includes a monthly AI allowance.
How many runs does it use?
One run for each event the app sends.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Draft RFP answers in a Google Doc and share them in Slack” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.