The moment it happens
Create a Drive folder and Notion page for each new client
When your onboarding form is submitted, the client gets a Drive folder copied from your template and a Notion client page linking to it.
- Runs
- The moment it happens
- Apps
- Google Drive, Notion
- AI
- Not needed
- Access
- drive.file; Notion insert content
Send this to your assistant
Create a ClickRuntime automation: when my onboarding form is submitted, create a client folder in Google Drive from my template, create a Notion client page that links to it, and post a note in #clients.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A bookkeeping practice signs a few new clients each month. Each one needs a Drive folder with the same subfolders and starter documents, and a page in the Notion client list. Doing it by hand takes twenty minutes, and the folder names and layouts drift from client to client.
Having the folder and the Notion page appear the moment the onboarding form is submitted means every client starts with the same structure. Accountants, agencies, consultants and studios use it to make the first day with a new client look organised.
What you get out of it
Every client set up the same way
Folders, subfolders and starter documents are copied from one template. Anyone on the team knows where to find a client's contracts or reports, whichever client it is.
Ready before the kickoff call
The workspace exists the moment the form is submitted. You can share the folder link in your welcome email instead of promising to send it later.
Notion and Drive linked from the start
The Notion client page holds a link to the Drive folder. Your team moves between the client record and the documents in one click.
The team hears about new clients
A message in #clients announces each new client with both links. People who will work on the account know straight away.
How it works
What happens, step by step
When your onboarding form is submitted, the answers are sent to ClickRuntime straight away.
A new folder named after the client is created in Google Drive, and the documents from your template folder are copied into it.
A client page is created in your Notion database with the client's details and a link to the folder.
A message with both links is posted in your #clients Slack channel.
Before it runs live
- Connect Google Drive
- Connect Notion and share the database you want it to use
- 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 Google Drive and Notion 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, notify
TEMPLATE_FOLDER, CLIENTS_FOLDER, DATABASE_ID = "your-template-folder-id", "your-clients-folder-id", "your-database-id"
@on_event
def handle(event):
form = event.json or {}
name, email = form.get("client_name", "").strip(), form.get("email", "")
if not name:
return {"skipped": "no client name"}
drive = build("drive", "v3", credentials=Credentials(credentials.connection("google", "work")), cache_discovery=False).files()
folder = drive.create(body={"name": name, "mimeType": "application/vnd.google-apps.folder", "parents": [CLIENTS_FOLDER]},
fields="id,webViewLink").execute()
for f in drive.list(q=f"'{TEMPLATE_FOLDER}' in parents and trashed=false", fields="files(id,name)").execute()["files"]:
drive.copy(fileId=f["id"], body={"name": f"{name} - {f['name']}", "parents": [folder["id"]]}).execute()
page = http.post("https://api.notion.com/v1/pages", headers={"Authorization": f"Bearer {credentials.connection('notion', 'work')}",
"Notion-Version": "2022-06-28"}, json={"parent": {"database_id": DATABASE_ID}, "properties": {
"Name": {"title": [{"text": {"content": name}}]}, "Email": {"email": email or None},
"Drive folder": {"url": folder["webViewLink"]}}}).json()
notify.slack(f"New client: {name}\nNotion: {page.get('url')}\nDrive: {folder['webViewLink']}", channel="#clients")
return {"folder": folder["id"], "page": page.get("id")}
FAQ
Common questions
Which form tools can start it?
What is copied from the template folder?
Can the client see the folder?
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
Save files to Drive and log them in Notion from Telegram
Files you send to your Telegram bot are saved in your Drive folder and listed in Notion with a link and your note.
See how it worksImport contacts from a CSV in Google Drive into Notion
Drop a contacts CSV into your Drive folder and each contact is added to your Notion database, with duplicates skipped.
See how it worksBack up your Notion databases to Google Drive every night
Each night your Notion databases are saved as files in a dated Drive folder, and you get an email if the backup fails.
See how it worksKeep exploring
Set up “Create a Drive folder and Notion page for each new client” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.