SlackとGmailを使った予約手配承認ワークフロー
中級
これはTicket Management, Multimodal AI分野の自動化ワークフローで、13個のノードを含みます。主にIf, Set, Gmail, Slack, FormTriggerなどのノードを使用。 Slack と Gmail フォームで設置予約承認を自動化
前提条件
- •Googleアカウント + Gmail API認証情報
- •Slack Bot Token または Webhook URL
使用ノード (13)
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "F3ZBYce4AMuybZcF",
"meta": {
"instanceId": "efe08e2da7cae43f565dfacaafdb0e67025886141ccd3ddbe001880f7b5ecf5b"
},
"name": "Installation Booking Approval Workflow with Slack and Gmail",
"tags": [],
"nodes": [
{
"id": "57b8a226-402b-42cf-b6bb-090195a862d9",
"name": "フォームトリガー: 設置予約",
"type": "n8n-nodes-base.formTrigger",
"position": [
-16,
496
],
"webhookId": "711021d0-5405-4e16-a638-16e32c093f39",
"parameters": {
"options": {},
"formTitle": "Installation Schedule Booking Form",
"formFields": {
"values": [
{
"fieldLabel": "Full Name",
"requiredField": true
},
{
"fieldType": "email",
"fieldLabel": "Email Address",
"requiredField": true
},
{
"fieldLabel": "Phone Number",
"requiredField": true
},
{
"fieldType": "=date",
"fieldLabel": "Booking Date",
"fieldOptions": {
"values": [
{}
]
},
"requiredField": true
},
{
"fieldType": "dropdown",
"fieldLabel": "Preferred Time (PST)",
"fieldOptions": {
"values": [
{
"option": "09:00"
},
{
"option": "11:00"
},
{
"option": "14:00"
},
{
"option": "16:00"
}
]
},
"requiredField": true
}
]
},
"formDescription": "Installation Schedule Booking Form"
},
"typeVersion": 2.2
},
{
"id": "9f165f71-d038-49d0-8277-41c42a8ab0af",
"name": "フィールド設定: 設定変数",
"type": "n8n-nodes-base.set",
"position": [
240,
496
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "1c5bdf30-d39c-42ac-a780-dc5c35a6aa17",
"name": "CUSTOMER_NAME",
"type": "string",
"value": "={{ $('Form Trigger: Installation Booking').item.json['Full Name'] }}"
},
{
"id": "3b70d00a-c884-4721-b9cb-018ed47e4818",
"name": "CUSTOMER_EMAIL",
"type": "string",
"value": "={{ $('Form Trigger: Installation Booking').item.json['Email Address'] }}"
},
{
"id": "4c70d00a-c884-4721-b9cb-018ed47e4819",
"name": "CUSTOMER_PHONE",
"type": "string",
"value": "={{ $('Form Trigger: Installation Booking').item.json['Phone Number'] }}"
},
{
"id": "5c70d00a-c884-4721-b9cb-018ed47e4820",
"name": "BOOKING_DATE",
"type": "string",
"value": "={{ $('Form Trigger: Installation Booking').item.json['Booking Date'] }}"
},
{
"id": "6c70d00a-c884-4721-b9cb-018ed47e4821",
"name": "BOOKING_TIME",
"type": "string",
"value": "={{ $('Form Trigger: Installation Booking').item.json['Preferred Time (PST)'] }}"
},
{
"id": "7c70d00a-c884-4721-b9cb-018ed47e4822",
"name": "SLACK_CHANNEL_ID",
"type": "string",
"value": "#installations"
},
{
"id": "8c70d00a-c884-4721-b9cb-018ed47e4823",
"name": "COMPANY_NAME",
"type": "string",
"value": "Your Company Name"
},
{
"id": "9c70d00a-c884-4721-b9cb-018ed47e4824",
"name": "CONTACT_PERSON",
"type": "string",
"value": "Your Name"
},
{
"id": "10c70d00a-c884-4721-b9cb-018ed47e4825",
"name": "RESCHEDULE_LINK",
"type": "string",
"value": "https://your-booking-form-url.com"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "9242d614-bc41-4dd9-9b68-ff2938d128d4",
"name": "Slack: 承認リクエスト",
"type": "n8n-nodes-base.slack",
"position": [
496,
496
],
"webhookId": "99741701-02dc-46e6-b578-d492b7de6983",
"parameters": {
"select": "channel",
"message": "=🔧 **New Installation Request**\n\n👤 **Customer:** {{ $json.CUSTOMER_NAME }}\n📧 **Email:** {{ $json.CUSTOMER_EMAIL }}\n📞 **Phone:** {{ $json.CUSTOMER_PHONE }}\n\n📅 **Requested Date/Time:** {{ $json.BOOKING_DATE }} at {{ $json.BOOKING_TIME }} PST\n\n❓ **Do we have an available installer for this slot?**",
"options": {},
"channelId": {
"__rl": true,
"mode": "list",
"value": ""
},
"operation": "sendAndWait",
"approvalOptions": {
"values": {
"approvalType": "double",
"disapproveLabel": "No installer available"
}
}
},
"typeVersion": 2.3
},
{
"id": "7331465f-d0d0-47a2-8451-5aab04607305",
"name": "条件分岐: 承認ステータスの確認",
"type": "n8n-nodes-base.if",
"position": [
736,
496
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "d0117e5a-8b9a-407a-8412-1c7decbdd759",
"operator": {
"type": "boolean",
"operation": "true",
"singleValue": true
},
"leftValue": "={{ $json.data.approved }}",
"rightValue": "Approve"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "a751b5f3-ed2e-4a93-b061-539688520478",
"name": "Gmail: 確認メール送信",
"type": "n8n-nodes-base.gmail",
"position": [
992,
384
],
"webhookId": "3052ddc4-ba25-47ca-bb42-c7a55652901a",
"parameters": {
"sendTo": "={{ $('Set Fields: Configuration Variables').item.json.CUSTOMER_EMAIL }}",
"message": "=Hi {{ $('Set Fields: Configuration Variables').item.json.CUSTOMER_NAME }},\n\nGreat news! We've confirmed your installation appointment.\n\n📅 **Date:** {{ $('Set Fields: Configuration Variables').item.json.BOOKING_DATE }}\n⏰ **Time:** {{ $('Set Fields: Configuration Variables').item.json.BOOKING_TIME }} PST\n\nOur installer will contact you shortly to confirm final details and provide any preparation instructions.\n\nIf you need to make any changes, please contact us as soon as possible.\n\nBest regards,\n{{ $('Set Fields: Configuration Variables').item.json.CONTACT_PERSON }}\n{{ $('Set Fields: Configuration Variables').item.json.COMPANY_NAME }}",
"options": {},
"subject": "=✅ Installation Confirmed - {{ $('Set Fields: Configuration Variables').item.json.BOOKING_DATE }}",
"emailType": "text"
},
"typeVersion": 2.1
},
{
"id": "852c2a56-3558-44ac-9af9-1cd28bedb52b",
"name": "Gmail: 再調整メール送信",
"type": "n8n-nodes-base.gmail",
"position": [
992,
592
],
"webhookId": "13839f70-e63f-4ec3-b526-00aa455fd899",
"parameters": {
"sendTo": "={{ $('Set Fields: Configuration Variables').item.json.CUSTOMER_EMAIL }}",
"message": "=Hi {{ $('Set Fields: Configuration Variables').item.json.CUSTOMER_NAME }},\n\nThank you for your interest in our installation services.\n\nUnfortunately, we don't have an installer available for your requested time slot:\n📅 **Date:** {{ $('Set Fields: Configuration Variables').item.json.BOOKING_DATE }}\n⏰ **Time:** {{ $('Set Fields: Configuration Variables').item.json.BOOKING_TIME }} PST\n\nPlease reschedule your appointment using this link:\n🔗 {{ $('Set Fields: Configuration Variables').item.json.RESCHEDULE_LINK }}\n\nWe apologize for any inconvenience and look forward to serving you at a different time.\n\nBest regards,\n{{ $('Set Fields: Configuration Variables').item.json.CONTACT_PERSON }}\n{{ $('Set Fields: Configuration Variables').item.json.COMPANY_NAME }}",
"options": {},
"subject": "=⏰ Please Reschedule Your Installation",
"emailType": "text"
},
"typeVersion": 2.1
},
{
"id": "665cac83-98f4-4789-ab7a-11754f9bc0fa",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-48,
-208
],
"parameters": {
"width": 736,
"height": 672,
"content": "## 🔧 Installation Booking Approval Workflow\n\n**What this workflow does:**\nAutomates the approval process for installation bookings by collecting form submissions, requesting team approval via Slack, and sending automated email responses.\n\n**Who's it for:**\nService businesses that need to:\n- Collect installation booking requests\n- Get team approval before confirming appointments\n- Send automated email confirmations or reschedule requests\n\n**How it works:**\n1. Customer fills out installation booking form\n2. Team gets notified via Slack with approval buttons\n3. Based on approval/rejection, customer receives confirmation or reschedule email\n\n**Setup Requirements:**\n- Slack workspace with channel for notifications\n- Gmail account for sending emails\n- Form trigger URL to embed on your website\n\n**Configuration:**\nUpdate the variables in the \"Set Fields\" node:\n- SLACK_CHANNEL_ID: Your Slack channel\n- COMPANY_NAME: Your business name\n- CONTACT_PERSON: Your name\n- RESCHEDULE_LINK: Link to your booking form\n\n**Security Note:**\nNo API keys are hardcoded - all credentials are managed through n8n's secure connection system."
},
"typeVersion": 1
},
{
"id": "0abbb78d-aaac-41ca-aab5-ca1653b43b2c",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-32,
672
],
"parameters": {
"width": 200,
"height": 140,
"content": "**Step 1**\nCustomer submits installation booking form with contact details and preferred date/time"
},
"typeVersion": 1
},
{
"id": "faf5a165-9a69-42c9-be57-abb67e209269",
"name": "付箋2",
"type": "n8n-nodes-base.stickyNote",
"position": [
224,
672
],
"parameters": {
"width": 200,
"height": 140,
"content": "**Step 2**\nSet up configuration variables that can be easily customized for your business"
},
"typeVersion": 1
},
{
"id": "a89a9974-8b5a-4c5c-b79f-88df7961493a",
"name": "付箋3",
"type": "n8n-nodes-base.stickyNote",
"position": [
464,
672
],
"parameters": {
"width": 200,
"height": 140,
"content": "**Step 3**\nSend formatted message to Slack channel with approval buttons for the team"
},
"typeVersion": 1
},
{
"id": "5cf683dc-bbdc-4f59-ac2b-aacb72efe823",
"name": "付箋4",
"type": "n8n-nodes-base.stickyNote",
"position": [
720,
672
],
"parameters": {
"width": 200,
"height": 140,
"content": "**Step 4**\nCheck if the team approved or rejected the booking request"
},
"typeVersion": 1
},
{
"id": "4d48f4a4-d01b-4e39-b3f5-23e6d101bd06",
"name": "付箋5",
"type": "n8n-nodes-base.stickyNote",
"position": [
976,
272
],
"parameters": {
"width": 200,
"height": 140,
"content": "**Step 5A**\nSend confirmation email if approved with appointment details"
},
"typeVersion": 1
},
{
"id": "c8f5c8fc-9fb0-481a-9070-5b4f285aa97e",
"name": "付箋6",
"type": "n8n-nodes-base.stickyNote",
"position": [
976,
768
],
"parameters": {
"width": 200,
"height": 140,
"content": "**Step 5B**\nSend reschedule email if rejected with link to book new time"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "bb882f11-e83f-4520-ae9a-c62690c0abf2",
"connections": {
"9242d614-bc41-4dd9-9b68-ff2938d128d4": {
"main": [
[
{
"node": "7331465f-d0d0-47a2-8451-5aab04607305",
"type": "main",
"index": 0
}
]
]
},
"7331465f-d0d0-47a2-8451-5aab04607305": {
"main": [
[
{
"node": "a751b5f3-ed2e-4a93-b061-539688520478",
"type": "main",
"index": 0
}
],
[
{
"node": "852c2a56-3558-44ac-9af9-1cd28bedb52b",
"type": "main",
"index": 0
}
]
]
},
"57b8a226-402b-42cf-b6bb-090195a862d9": {
"main": [
[
{
"node": "9f165f71-d038-49d0-8277-41c42a8ab0af",
"type": "main",
"index": 0
}
]
]
},
"9f165f71-d038-49d0-8277-41c42a8ab0af": {
"main": [
[
{
"node": "9242d614-bc41-4dd9-9b68-ff2938d128d4",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - チケット管理, マルチモーダルAI
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
承認プロセス付き AI広告文案ジェネレーター
OpenAI と Slack approval プロセスを使用して Meta と TikTok の広告文案を生成
If
Set
Slack
+
If
Set
Slack
20 ノードChris Rudy
コンテンツ作成
市場調査 + AI を活用したマーケティングアジェンシーの顧客入手業務の自動化:Typeform から GDrive まで
マーケティングアジェンシーの顧客紹介:TypeformからGDrive+OpenAIリサーチへ自動化
If
Gmail
Slack
+
If
Gmail
Slack
45 ノードChris Rudy
マルチモーダルAI
Meta広告一括起動器(Google DriveとSlack通知を統合)V1.2
Google DriveとSlack通知を統合したMeta広告バッチ起動ツール
If
Set
Code
+
If
Set
Code
40 ノードChris Rudy
ソーシャルメディア
GmailとGPTに基づくAI駆動メール分類および自動返信システム
GPT-4.1-miniを使用して分類し、Gmailで自動返信を行うことでメールセグメントを自動化
If
Set
Gmail
+
If
Set
Gmail
24 ノードGiovanni Beggiato
チケット管理
AI搭載の自動返信メール(人間による検証付き)
GPTと人工検証ループを使ったGmail返信の自動化
If
Set
Code
+
If
Set
Code
20 ノードNick Canfield
チケット管理
Claude AI と自動アップグレードを使用して共感のある顧客応答を生成
共感を持つ顧客返信を生成するために、Claude AIとオートアップグレードを使用する
If
Set
Code
+
If
Set
Code
21 ノードYusuke
チケット管理
ワークフロー情報
難易度
中級
ノード数13
カテゴリー2
ノードタイプ6
作成者
Chris Rudy
@chrisrudyDTC Marketing consultant with over 6 years of experience and over $25m in ad spend managed
外部リンク
n8n.ioで表示 →
このワークフローを共有