VAPI と n8n を使用したレストラン 🦶🏻 & 🧾 予約 📞
これはSupport Chatbot, AI Chatbot分野の自動化ワークフローで、9個のノードを含みます。主にWebhook, Postgres, RespondToWebhookなどのノードを使用。 VAPI と PostgreSQL を使ったレストラン電話対応とテーブル予約の自動化システム
- •HTTP Webhookエンドポイント(n8nが自動生成)
- •PostgreSQLデータベース接続情報
カテゴリー
{
"id": "s5rkGHiTGnf7F9PT",
"meta": {
"instanceId": "dd69efaf8212c74ad206700d104739d3329588a6f3f8381a46a481f34c9cc281",
"templateCredsSetupCompleted": true
},
"name": "Restaurant Virtual Receptionist & Table Booking with VAPI and n8n",
"tags": [],
"nodes": [
{
"id": "aa3b9f79-7923-47df-87d8-72ceaa3f0127",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-580,
-380
],
"parameters": {
"width": 420,
"height": 200,
"content": "📝 Description\n\nHandles incoming calls for the restaurant using VAPI to collect user details (name, booking time, number of people), checks table availability in a PostgreSQL database via n8n, books the table if available, sends confirmation to VAPI, and provides hotel service details via VAPI.\n"
},
"typeVersion": 1
},
{
"id": "0cc6d135-9098-4be1-8de3-fe027653d3d9",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-100,
20
],
"parameters": {
"color": 3,
"width": 780,
"height": 280,
"content": " 🟢 Availability Check Flow\n"
},
"typeVersion": 1
},
{
"id": "511c9929-3614-4d09-b1b6-27c14ce304a7",
"name": "テーブル空き状況照会 (Postgres)",
"type": "n8n-nodes-base.postgres",
"position": [
220,
100
],
"parameters": {
"table": {
"__rl": true,
"mode": "name",
"value": "table_id"
},
"schema": {
"__rl": true,
"mode": "list",
"value": "public"
},
"options": {},
"operation": "select"
},
"credentials": {
"postgres": {
"id": "4Y4qEFGqF2krfRHZ",
"name": "Postgres-test"
}
},
"typeVersion": 2.6
},
{
"id": "08671a05-f26e-477a-80ab-b6885e10dfd6",
"name": "応答: 空き状況 (VAPI)",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
440,
100
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "={\n \"results\": [\n {\n \"toolCallId\": \"{{ $('Trigger: Booking Request (VAPI)\t').item.json.body.message.toolCalls[0].id }}\",\n \"result\": \"{{ $json.available }}\"\n }\n ]\n}"
},
"typeVersion": 1.2
},
{
"id": "3efaa272-9bdb-4db1-bb63-94ffca5a161e",
"name": "付箋3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-100,
-260
],
"parameters": {
"color": 4,
"width": 780,
"height": 280,
"content": " 🔵 Booking Flow\n\n"
},
"typeVersion": 1
},
{
"id": "0fbfd74a-e2a4-4666-9055-c5d588ad6cff",
"name": "トリガー: 予約リクエスト (VAPI)",
"type": "n8n-nodes-base.webhook",
"position": [
0,
100
],
"webhookId": "027f0f14-93f4-42ff-90a7-715f23316a86",
"parameters": {
"path": "027f0f14-93f4-42ff-90a7-715f23316a86",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "13d32034-198f-4429-9515-f71275ff2333",
"name": "Postgresでの予約更新・登録",
"type": "n8n-nodes-base.postgres",
"position": [
220,
-160
],
"parameters": {
"table": {
"__rl": true,
"mode": "name",
"value": "table_id"
},
"schema": {
"__rl": true,
"mode": "list",
"value": "public"
},
"columns": {
"value": {},
"schema": [],
"mappingMode": "autoMapInputData",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "upsert"
},
"credentials": {
"postgres": {
"id": "4Y4qEFGqF2krfRHZ",
"name": "Postgres-test"
}
},
"typeVersion": 2.6
},
{
"id": "16c88128-1e44-42df-bbd3-2cd7b1c2e6b0",
"name": "応答: 予約確認 (VAPI)",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
440,
-160
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "={\n \"results\": [\n {\n \"toolCallId\": \"{{ $('Trigger: Booking Request (VAPI)\t1').item.json.body.message.toolCalls[0].id }}\",\n \"result\": \"{{ $json.status }}\"\n }\n ]\n}"
},
"typeVersion": 1.2
},
{
"id": "ee35e567-9de8-4518-a66f-0d168a973544",
"name": "トリガー: 予約リクエスト (VAPI) 1",
"type": "n8n-nodes-base.webhook",
"position": [
0,
-160
],
"webhookId": "2f7eff83-2e85-45ee-b544-7f889ca3ad07",
"parameters": {
"path": "2f7eff83-2e85-45ee-b544-7f889ca3ad07",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
}
],
"active": false,
"pinData": {},
"settings": {
"timezone": "Asia/Kolkata",
"callerPolicy": "workflowsFromSameOwner",
"executionOrder": "v1"
},
"versionId": "50da786a-d8c6-4453-9bbe-835b7b673c43",
"connections": {
"13d32034-198f-4429-9515-f71275ff2333": {
"main": [
[
{
"node": "16c88128-1e44-42df-bbd3-2cd7b1c2e6b0",
"type": "main",
"index": 0
}
]
]
},
"0fbfd74a-e2a4-4666-9055-c5d588ad6cff": {
"main": [
[
{
"node": "511c9929-3614-4d09-b1b6-27c14ce304a7",
"type": "main",
"index": 0
}
]
]
},
"ee35e567-9de8-4518-a66f-0d168a973544": {
"main": [
[
{
"node": "13d32034-198f-4429-9515-f71275ff2333",
"type": "main",
"index": 0
}
]
]
},
"511c9929-3614-4d09-b1b6-27c14ce304a7": {
"main": [
[
{
"node": "08671a05-f26e-477a-80ab-b6885e10dfd6",
"type": "main",
"index": 0
}
]
]
}
}
}このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - サポートチャットボット, AIチャットボット
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
Oneclick AI Squad
@oneclick-aiThe AI Squad Initiative is a pioneering effort to build, automate and scale AI-powered workflows using n8n.io. Our mission is to help individuals and businesses integrate AI agents seamlessly into their daily operations from automating tasks and enhancing productivity to creating innovative, intelligent solutions. We design modular, reusable AI workflow templates that empower creators, developers and teams to supercharge their automation with minimal effort and maximum impact.
このワークフローを共有