Générateur d'événements Google
Ceci est unAI Chatbot, Multimodal AIworkflow d'automatisation du domainecontenant 6 nœuds.Utilise principalement des nœuds comme Chat, Agent, GoogleCalendarTool, ChatTrigger, LmChatOpenAi. Créer des événements Google Calendar à partir de conversations en langage naturel avec GPT
- •Clé API OpenAI
Nœuds utilisés (6)
Catégorie
{
"id": "j2cXjrAKmMW32GkS",
"meta": {
"instanceId": "9bec9cfd8e9aeda7a9f1549c45e4485977acb7c605c675eb0d06a256366a2ca8",
"templateCredsSetupCompleted": true
},
"name": "Google Event Generator",
"tags": [],
"nodes": [
{
"id": "36eca77f-0591-4569-84af-dfdf3b4684a9",
"name": "Lorsqu'un message de discussion est reçu",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"position": [
0,
0
],
"webhookId": "a8684269-0254-440d-a268-d458c4dfcecb",
"parameters": {
"public": true,
"options": {
"responseMode": "responseNodes"
},
"initialMessages": "Hey bestieeeee, what can I schedule for you?"
},
"typeVersion": 1.3
},
{
"id": "987900f2-9d37-484f-b0ef-8ec50f2a9df6",
"name": "Agent IA",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
208,
0
],
"parameters": {
"options": {
"systemMessage": "=You are a scheduling agent inside an n8n workflow.\n\nNow (ISO8601): {{ $now.toISO() }}\nDefault timezone: Asia/Manila\n\nYour ONLY job is to create Google Calendar events by CALLING the attached tool.\nDo NOT return JSON to the user. Always call the tool.\n\nRequired fields:\n- summary (title) → MUST NOT be empty\n- description (optional)\n- start.dateTime (ISO8601 with offset, e.g. 2025-08-24T10:00:00+08:00)\n- end.dateTime (ISO8601 with offset)\n- timeZone (IANA string, e.g. \"Asia/Manila\")\n- location (optional)\n- attendees (array of { \"email\": \"user@example.com\" })\n\nTitle handling rules:\n- If the user gives a clear title (“Standup”, “Dentist”), use it directly.\n- If the user does not give a title, infer a concise one from context. \n Examples:\n - “Lunch with John” if user said “schedule lunch with John tomorrow”\n - “Dentist” if user said “dentist appointment next Wed”\n - “Meeting” if nothing else is obvious\n- NEVER leave `summary` blank.\n\nTime handling rules:\n- Resolve relative times (“tomorrow 10am”, “next Wed 3–4:30pm”) against Now and the default timezone.\n- If duration is given, compute end = start + duration.\n- If no end/duration given, default to 60 minutes.\n\nInteraction rules:\n- If either title or time is too ambiguous, ask ONE clarification question and wait.\n- Otherwise, immediately call the Calendar tool with the required fields.\n\nOutput policy:\n- Do not output JSON.\n- After the tool runs, summarize the booked event in one sentence (e.g., “Booked Dentist on Sept 3, 2:00–2:30 PM Asia/Manila”).\n"
}
},
"typeVersion": 2.2
},
{
"id": "9c13d9b1-3e7a-4298-8527-310e7e804566",
"name": "Modèle de discussion OpenAI",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
96,
224
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "PDIpOMaOIqYanbhm",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "3bc6de4c-18e8-48f8-91ef-dc737eac3a6e",
"name": "Mémoire simple",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
256,
224
],
"parameters": {
"contextWindowLength": 10
},
"typeVersion": 1.3
},
{
"id": "dcd82d7c-ad23-48c8-9e01-db1907a87bdd",
"name": "Répondre à la discussion",
"type": "@n8n/n8n-nodes-langchain.chat",
"disabled": true,
"position": [
560,
0
],
"parameters": {
"message": "Your event has been created!",
"options": {}
},
"typeVersion": 1
},
{
"id": "85d389c8-cd55-455c-9457-107ad084e254",
"name": "Créer un événement dans le calendrier Google",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
448,
224
],
"parameters": {
"end": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}",
"start": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": ""
},
"additionalFields": {
"summary": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', ``, 'string') }}"
},
"useDefaultReminders": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Use_Default_Reminders', ``, 'boolean') }}"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "ngqDqMeuSxiWZu4L",
"name": "Google Calendar account"
}
},
"typeVersion": 1.3
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "2d8ec69d-9949-44bf-aa9b-dd7483e63058",
"connections": {
"987900f2-9d37-484f-b0ef-8ec50f2a9df6": {
"main": [
[
{
"node": "dcd82d7c-ad23-48c8-9e01-db1907a87bdd",
"type": "main",
"index": 0
}
]
]
},
"3bc6de4c-18e8-48f8-91ef-dc737eac3a6e": {
"ai_memory": [
[
{
"node": "987900f2-9d37-484f-b0ef-8ec50f2a9df6",
"type": "ai_memory",
"index": 0
}
]
]
},
"9c13d9b1-3e7a-4298-8527-310e7e804566": {
"ai_languageModel": [
[
{
"node": "987900f2-9d37-484f-b0ef-8ec50f2a9df6",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"36eca77f-0591-4569-84af-dfdf3b4684a9": {
"main": [
[
{
"node": "987900f2-9d37-484f-b0ef-8ec50f2a9df6",
"type": "main",
"index": 0
}
]
]
},
"85d389c8-cd55-455c-9457-107ad084e254": {
"ai_tool": [
[
{
"node": "987900f2-9d37-484f-b0ef-8ec50f2a9df6",
"type": "ai_tool",
"index": 0
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Intermédiaire - Chatbot IA, IA Multimodale
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Loren Brabante
@lorenbrabantePartager ce workflow