Automatisation n8n : création de tickets et gestion calendrier
Ce workflow n8n a pour objectif d'automatiser la création de tickets et la gestion des disponibilités dans un calendrier. Il s'adresse principalement aux équipes de support client et aux entreprises qui souhaitent optimiser leur processus de gestion des demandes. En intégrant des services comme Zendesk, Google Calendar et Airtable, ce workflow permet de créer des tickets en réponse à des requêtes tout en vérifiant la disponibilité des ressources. Le flux commence par un déclencheur Webhook qui reçoit les données nécessaires. Ensuite, le workflow utilise des noeuds pour extraire et traiter les informations, comme les numéros de téléphone et les données de calendrier. Des conditions sont mises en place pour vérifier si l'utilisateur est trouvé et si les données sont valides. En cas de succès, un ticket est créé dans Zendesk et un événement est ajouté au calendrier Google. Si une erreur survient, le workflow répond avec un message d'erreur approprié. Les bénéfices de cette automatisation n8n incluent une réduction des erreurs humaines, une meilleure gestion du temps et une amélioration de l'expérience client grâce à des réponses rapides et précises. Tags clés : automatisation, n8n, support client.
Vue d'ensemble du workflow n8n
Schéma des nœuds et connexions de ce workflow n8n, généré à partir du JSON n8n.
Détail des nœuds du workflow n8n
Inscris-toi pour voir l'intégralité du workflow
Inscription gratuite
S'inscrire gratuitementBesoin d'aide ?{
"meta": {
"instanceId": "cb484ba7b742928a2048bf8829668bed5b5ad9787579adea888f05980292a4a7",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "15f8f140-66b6-4c83-8a33-cf8cafdc32d4",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-420,
-740
],
"parameters": {
"color": 7,
"width": 1440,
"height": 620,
"content": "\n## Find Customer\nThis portion of the workflow queries the customer database and returns customer details to the AI agent if found. If not found, it returns NOT_FOUND for the customer details. "
},
"typeVersion": 1
},
{
"id": "00b35d71-a6e6-43e8-a57b-a29a0c476b23",
"name": "Check if user found",
"type": "n8n-nodes-base.if",
"position": [
380,
-380
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "bddfa253-24c6-430e-9a13-f07daf8c1513",
"operator": {
"type": "string",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "={{ $json.Name }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "83d5be62-92f2-4018-bb5e-e4c068223370",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-420,
-80
],
"parameters": {
"color": 7,
"width": 1460,
"height": 540,
"content": "\n## Create Zendesk Ticket \nCreates a Zendesk ticket on behalf of the customer when needed."
},
"typeVersion": 1
},
{
"id": "19f99374-82a6-4978-a159-9b68accda619",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-420,
480
],
"parameters": {
"color": 7,
"width": 1920,
"height": 700,
"content": "\n## Schedule a meeting\nThis gives availability for google calendar and schedules a meeting as well "
},
"typeVersion": 1
},
{
"id": "ad83adab-eecb-49f7-ba95-b53889f8dded",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-420,
1220
],
"parameters": {
"color": 7,
"width": 900,
"height": 540,
"content": "\n## Give Product team transcripts for analysis\nNeed to help your product team out"
},
"typeVersion": 1
},
{
"id": "4b224fd9-d056-4f2a-aa91-aa4cbee4c44a",
"name": "Check if available",
"type": "n8n-nodes-base.if",
"position": [
520,
800
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "d1c61a1f-0265-4eb5-918f-3111e916387f",
"operator": {
"type": "boolean",
"operation": "true",
"singleValue": true
},
"leftValue": "={{ $json.available }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "60067000-0c90-4a9d-bf11-e22a864b0ad8",
"name": "Check for malformed date",
"type": "n8n-nodes-base.if",
"position": [
100,
880
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "f055e64e-a1d2-4213-9d5c-1d1069cb582c",
"operator": {
"type": "dateTime",
"operation": "after"
},
"leftValue": "={{ $json.availability }}",
"rightValue": "={{ $now }}"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "ad9f1857-2179-4d1d-ac25-04975b23390f",
"name": "Create Ticket",
"type": "n8n-nodes-base.httpRequest",
"onError": "continueRegularOutput",
"position": [
340,
180
],
"parameters": {
"url": "https://n8n8688.zendesk.com/api/v2/tickets",
"method": "POST",
"options": {
"redirect": {
"redirect": {}
}
},
"jsonBody": "={\n \"ticket\": {\n \"requester_id\": \"{{ $json.user.id }}\",\n \"subject\": \"New TechFin Customer Ticket for {{ $json.user.name }}\",\n \"comment\": {\n \"body\": \"{{ $('Extract Zendesk Fields').item.json.body.summary }}\\n\\n{{ $('Extract Zendesk Fields').item.json.body.transcript.replace(/\\n/g, \"\\\\n\").replace(/\\\\'/g, \"\\\\'\").replace(/\\\\\"/g, '\\\\\"').replace(/\\\\&/g, \"\\\\&\").replace(/\\\\r/g, \"\\\\r\").replace(/\\\\t/g, \"\\\\t\").replace(/\\\\b/g, \"\\\\b\").replace(/\\\\f/g, \"\\\\f\") }}\"\n }\n }\n}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"headerParameters": {
"parameters": [
{
"name": "Accept",
"value": "application/json"
}
]
},
"nodeCredentialType": "zendeskApi"
},
"credentials": {
"zendeskApi": {
"id": "ROx0ipJapRomRxEX",
"name": "Zendesk Demo Access"
}
},
"typeVersion": 4.2
},
{
"id": "5b5c0f60-4495-4040-9926-194b672e6850",
"name": "Create Customer in DB",
"type": "n8n-nodes-base.httpRequest",
"onError": "continueRegularOutput",
"position": [
120,
180
],
"parameters": {
"url": "https://n8n8688.zendesk.com/api/v2/users/create_or_update",
"method": "POST",
"options": {},
"jsonBody": "={\n \"user\": {\n \"email\": \"{{ $json.body.email }}\",\n \"identities\": [\n {\n \"type\": \"email\",\n \"value\": \"{{ $json.body.email }}\"\n }\n ],\n \"name\": \"{{ $json.body.name }}\"\n }\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "zendeskApi"
},
"credentials": {
"zendeskApi": {
"id": "ROx0ipJapRomRxEX",
"name": "Zendesk Demo Access"
}
},
"typeVersion": 4.2
},
{
"id": "3e5dd684-ee28-4431-849b-c8ab42bd93a0",
"name": "Check if submitted succesfully",
"type": "n8n-nodes-base.if",
"position": [
540,
180
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "1ff20679-9964-4ac9-933e-c370c2ef72c1",
"operator": {
"type": "string",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "={{ $json.ticket.url }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "c2fac290-0e6e-4b36-864e-f6bb2d25753c",
"name": "Ticket Created Successfully",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
800,
80
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "{\n \"status\": \"SUCCESS_TICKET_SUBMITTED\"\n}"
},
"typeVersion": 1.1
},
{
"id": "71a2c455-5de7-455c-9bed-b710a09c3d07",
"name": "Error Creating Ticket",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
800,
260
],
"parameters": {
"options": {
"responseCode": 400
},
"respondWith": "json",
"responseBody": "{\n \"status\": \"TICKET_ERROR\"\n}"
},
"typeVersion": 1.1
},
{
"id": "fcd6ceca-d231-4c49-bb1c-716d239dc0c4",
"name": "Airtable Endpoint",
"type": "n8n-nodes-base.webhook",
"position": [
-300,
1560
],
"webhookId": "9a52822c-0304-4dad-a86a-ae662161243c",
"parameters": {
"path": "9a52822c-0304-4dad-a86a-ae662161243c",
"options": {},
"httpMethod": "POST"
},
"typeVersion": 2
},
{
"id": "53783abf-8254-46e2-8b1f-c797f880fa1b",
"name": "Gcal Endpoint",
"type": "n8n-nodes-base.webhook",
"position": [
-340,
800
],
"webhookId": "c1020b94-603c-4981-ab48-51e208d17223",
"parameters": {
"path": "c1020b94-603c-4981-ab48-51e208d17223",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "df6a885b-d9ea-4033-bb2d-6a222ca9153f",
"name": "Zendesk Endpoint",
"type": "n8n-nodes-base.webhook",
"position": [
-320,
180
],
"webhookId": "9c15c8ac-8f3a-40d3-8ad5-e40468388968",
"parameters": {
"path": "9c15c8ac-8f3a-40d3-8ad5-e40468388968",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "993c83c7-c376-4bc8-8cb9-995de92d6c4e",
"name": "Voiceflow Endpoint",
"type": "n8n-nodes-base.webhook",
"position": [
-320,
-380
],
"webhookId": "d9b20efe-9bb4-4d8b-b9aa-d568f43f78ea",
"parameters": {
"path": "d9b20efe-9bb4-4d8b-b9aa-d568f43f78ea",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "399c2471-3a3d-458a-bb5d-a0a5e42f3121",
"name": "Extract Phone Number",
"type": "n8n-nodes-base.set",
"position": [
-100,
-380
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "90de9dcb-1ab6-43d6-999e-6672fbd81f2a",
"name": "query.phone_number",
"type": "string",
"value": "={{ $json.query.phone_number.replace(/^\\+/, '') }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "3391ccd4-cf64-4f48-9cfc-9a02131c37b6",
"name": "Extract Zendesk Fields",
"type": "n8n-nodes-base.set",
"position": [
-100,
180
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "3490074c-304b-4424-b724-74afba26f71e",
"name": "body.email",
"type": "string",
"value": "={{ $json.body.email }}"
},
{
"id": "0b5d31dc-029b-4055-91f3-55d820b43cdb",
"name": "body.name",
"type": "string",
"value": "={{ $json.body.name }}"
},
{
"id": "79ba72a8-42ff-481e-9ca8-6d9237ba84d8",
"name": "body.transcript",
"type": "string",
"value": "={{ $json.body.transcript }}"
},
{
"id": "77aeef5e-fb51-46d9-a66f-03bc7fe29ac7",
"name": "body.summary",
"type": "string",
"value": "={{ $json.body.summary }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "63789194-f11c-42f1-8075-849ba1fedfd7",
"name": "Extract Gcal Data",
"type": "n8n-nodes-base.set",
"onError": "continueRegularOutput",
"position": [
-120,
800
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "b0e95ac3-08a7-48ad-917a-9736f6e07cd2",
"name": "availability",
"type": "string",
"value": "={{ $json.query.datetime.toDateTime() }}"
},
{
"id": "ddc4b463-2acc-45bd-9d09-fee782ab1879",
"name": "query.name",
"type": "string",
"value": "={{ $json.query.name }}"
},
{
"id": "3f4cbd33-fa49-4a0e-bd48-919ab7224684",
"name": "query.email",
"type": "string",
"value": "={{ $json.query.email }}"
},
{
"id": "1027589d-b475-4330-9686-9b7a9e7ece8f",
"name": "query.summary",
"type": "string",
"value": "={{ $json.query.summary }}"
}
]
}
},
"typeVersion": 3.4,
"alwaysOutputData": true
},
{
"id": "813b50b7-2255-441a-8ad6-15cde81ec14d",
"name": "Extract Airtable Data",
"type": "n8n-nodes-base.set",
"position": [
-80,
1560
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "6f121f9b-6692-41fa-849b-f613d9fe9009",
"name": "phone",
"type": "string",
"value": "={{ $json.query.phone }}"
},
{
"id": "acec6f45-271d-4f6a-bf29-e8ea1f5d9fa7",
"name": "summary",
"type": "string",
"value": "={{ $json.query.summary }}"
},
{
"id": "e76573ec-3884-4fe8-b34f-19b77022ba31",
"name": "transcript",
"type": "string",
"value": "={{ $json.query.transcript }}"
},
{
"id": "a3951676-739a-4641-99b1-ed7f5fcbf08d",
"name": "type",
"type": "string",
"value": "={{ $json.query.type }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "830ee1b3-2bc3-4809-a0e7-c9c966053fbe",
"name": "Create Airtable Data",
"type": "n8n-nodes-base.airtable",
"position": [
180,
1560
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "app9dFu44S5VTIFRV",
"cachedResultUrl": "https://airtable.com/app9dFu44S5VTIFRV",
"cachedResultName": "Product Customer Analysis"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblXGczD6wjZ6ZNko",
"cachedResultUrl": "https://airtable.com/app9dFu44S5VTIFRV/tblXGczD6wjZ6ZNko",
"cachedResultName": "Table 1"
},
"columns": {
"value": {
"Phone": "={{ $json.phone }}",
"Summary": "={{ $json.summary }}",
"Transcript": "={{ $json.transcript }}",
"Customer Type": "={{ $json.type }}"
},
"schema": [
{
"id": "Phone",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Phone",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Summary",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Summary",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Transcript",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Transcript",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Customer Type",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Customer Type",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "create"
},
"credentials": {
"airtableTokenApi": {
"id": "ZwK7ZfD79dhUdsUc",
"name": "n8n voiceflow demo"
}
},
"typeVersion": 2.1
},
{
"id": "42f007f1-3929-4d65-a3b5-c60693da3ad3",
"name": "Query Google Sheets for Phone",
"type": "n8n-nodes-base.googleSheets",
"position": [
160,
-380
],
"parameters": {
"options": {},
"filtersUI": {
"values": [
{
"lookupValue": "={{ $json.query.phone_number }}",
"lookupColumn": "Phone Number"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/17sPEb3d55tiqJwt1Dms6MG1-qAAF0k9fQzbTs1lI1Yw/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "17sPEb3d55tiqJwt1Dms6MG1-qAAF0k9fQzbTs1lI1Yw",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/17sPEb3d55tiqJwt1Dms6MG1-qAAF0k9fQzbTs1lI1Yw/edit?usp=drivesdk",
"cachedResultName": "Customer Database"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "4ZBfVX71VUd6pRy3",
"name": "Google Sheets Angel Access"
}
},
"typeVersion": 4.5,
"alwaysOutputData": true
},
{
"id": "d0948a72-c8a8-48f6-b5d8-adb52a44a169",
"name": "Respond to Webhook with Customer Data",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
640,
-520
],
"parameters": {
"options": {}
},
"typeVersion": 1.1
},
{
"id": "12e0e2b3-90e1-4b77-a6bb-12dc4603d4f7",
"name": "Respond to Webhook with Error",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
780,
-280
],
"parameters": {
"options": {}
},
"typeVersion": 1.1
},
{
"id": "9de11b89-bbe8-4ce4-9838-27e497146966",
"name": "Set Error Data",
"type": "n8n-nodes-base.set",
"position": [
620,
-280
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "1ec3d6bd-41d8-489b-8c52-73c88267e0bd",
"name": "row_number",
"type": "string",
"value": "NOT_FOUND"
},
{
"id": "bfd6215e-f4ed-4d75-b9ae-d5925f87eb98",
"name": "Name",
"type": "string",
"value": "NOT_FOUND"
},
{
"id": "e06fc869-57e7-4dc5-b563-4d093be654ab",
"name": "Email Address",
"type": "string",
"value": "NOT_FOUND"
},
{
"id": "ae1a429b-1c21-4dcb-bf68-e0c01732ec5e",
"name": "Tier",
"type": "string",
"value": "NOT_FOUND"
},
{
"id": "879369f3-79f7-4420-bcec-b72f67212297",
"name": "Phone Number",
"type": "string",
"value": "NOT_FOUND"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "37b2289b-bc9a-440f-9974-fffe433c2069",
"name": "Check Calendar Availability",
"type": "n8n-nodes-base.googleCalendar",
"position": [
300,
800
],
"parameters": {
"options": {},
"timeMax": "={{ $json.availability.toDateTime().plus(30, 'minutes') }}",
"timeMin": "={{ $json.availability }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "angel@n8n.io",
"cachedResultName": "angel@n8n.io"
},
"resource": "calendar"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "zjwDrLg8gSlOpOQI",
"name": "Google Calendar account 9"
}
},
"typeVersion": 1.3
},
{
"id": "52732530-e120-4403-b623-e087a0005383",
"name": "Create Calendar Event",
"type": "n8n-nodes-base.googleCalendar",
"position": [
800,
680
],
"parameters": {
"end": "={{ $('Extract Gcal Data').item.json.availability.toDateTime().plus(30, 'minutes') }}",
"start": "={{ $('Extract Gcal Data').item.json.availability }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "angel@n8n.io",
"cachedResultName": "angel@n8n.io"
},
"additionalFields": {
"summary": "=TechFin Enterprise Customer Success Meeting with {{ $('Extract Gcal Data').item.json.query.name }}",
"attendees": [
"={{ $('Extract Gcal Data').item.json.query.email }}"
],
"description": "={{ $('Extract Gcal Data').item.json.query.summary }}"
}
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "zjwDrLg8gSlOpOQI",
"name": "Google Calendar account 9"
}
},
"typeVersion": 1.3
},
{
"id": "643a6c39-f70d-4453-be96-54eadb0b9667",
"name": "Set Calendar Success Message",
"type": "n8n-nodes-base.set",
"position": [
1020,
680
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "759c2ab4-bc39-4f7c-b585-212d6d6e9ab5",
"name": "status",
"type": "string",
"value": "MEETING_BOOKED_SUCCESSFULLY"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "10b7bdfc-15a9-4d3c-9c58-e7f0d7356d98",
"name": "Respond with Success",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
1240,
680
],
"parameters": {
"options": {}
},
"typeVersion": 1.1
},
{
"id": "4c8de5b6-d11f-454e-b198-eb7ea4bf8151",
"name": "Set Calendar Error Data",
"type": "n8n-nodes-base.set",
"position": [
800,
920
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "759c2ab4-bc39-4f7c-b585-212d6d6e9ab5",
"name": "status",
"type": "string",
"value": "CSM_UNAVAILABLE"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "b8d54018-4f15-41d7-bc74-e5fa42c2eae8",
"name": "Respond With Calendar Error data",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
1040,
920
],
"parameters": {
"options": {}
},
"typeVersion": 1.1
},
{
"id": "1be55353-b20d-41aa-bd82-c5a21ec1ca56",
"name": "Set Invalid Data Error",
"type": "n8n-nodes-base.set",
"position": [
320,
1020
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "759c2ab4-bc39-4f7c-b585-212d6d6e9ab5",
"name": "status",
"type": "string",
"value": "INVALID_DATA_ERROR"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "a4e01bfd-4f65-457e-bf84-8140f2d58168",
"name": "Respond with Generic Error",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
500,
1020
],
"parameters": {
"options": {}
},
"typeVersion": 1.1
}
],
"pinData": {},
"connections": {
"Create Ticket": {
"main": [
[
{
"node": "Check if submitted succesfully",
"type": "main",
"index": 0
}
]
]
},
"Gcal Endpoint": {
"main": [
[
{
"node": "Extract Gcal Data",
"type": "main",
"index": 0
}
]
]
},
"Set Error Data": {
"main": [
[
{
"node": "Respond to Webhook with Error",
"type": "main",
"index": 0
}
]
]
},
"Zendesk Endpoint": {
"main": [
[
{
"node": "Extract Zendesk Fields",
"type": "main",
"index": 0
}
]
]
},
"Airtable Endpoint": {
"main": [
[
{
"node": "Extract Airtable Data",
"type": "main",
"index": 0
}
]
]
},
"Extract Gcal Data": {
"main": [
[
{
"node": "Check for malformed date",
"type": "main",
"index": 0
}
]
]
},
"Check if available": {
"main": [
[
{
"node": "Create Calendar Event",
"type": "main",
"index": 0
}
],
[
{
"node": "Set Calendar Error Data",
"type": "main",
"index": 0
}
]
]
},
"Voiceflow Endpoint": {
"main": [
[
{
"node": "Extract Phone Number",
"type": "main",
"index": 0
}
]
]
},
"Check if user found": {
"main": [
[
{
"node": "Respond to Webhook with Customer Data",
"type": "main",
"index": 0
}
],
[
{
"node": "Set Error Data",
"type": "main",
"index": 0
}
]
]
},
"Extract Phone Number": {
"main": [
[
{
"node": "Query Google Sheets for Phone",
"type": "main",
"index": 0
}
]
]
},
"Create Calendar Event": {
"main": [
[
{
"node": "Set Calendar Success Message",
"type": "main",
"index": 0
}
]
]
},
"Create Customer in DB": {
"main": [
[
{
"node": "Create Ticket",
"type": "main",
"index": 0
}
]
]
},
"Extract Airtable Data": {
"main": [
[
{
"node": "Create Airtable Data",
"type": "main",
"index": 0
}
]
]
},
"Extract Zendesk Fields": {
"main": [
[
{
"node": "Create Customer in DB",
"type": "main",
"index": 0
}
]
]
},
"Set Invalid Data Error": {
"main": [
[
{
"node": "Respond with Generic Error",
"type": "main",
"index": 0
}
]
]
},
"Set Calendar Error Data": {
"main": [
[
{
"node": "Respond With Calendar Error data",
"type": "main",
"index": 0
}
]
]
},
"Check for malformed date": {
"main": [
[
{
"node": "Check Calendar Availability",
"type": "main",
"index": 0
}
],
[
{
"node": "Set Invalid Data Error",
"type": "main",
"index": 0
}
]
]
},
"Check Calendar Availability": {
"main": [
[
{
"node": "Check if available",
"type": "main",
"index": 0
}
]
]
},
"Set Calendar Success Message": {
"main": [
[
{
"node": "Respond with Success",
"type": "main",
"index": 0
}
]
]
},
"Query Google Sheets for Phone": {
"main": [
[
{
"node": "Check if user found",
"type": "main",
"index": 0
}
]
]
},
"Check if submitted succesfully": {
"main": [
[
{
"node": "Ticket Created Successfully",
"type": "main",
"index": 0
}
],
[
{
"node": "Error Creating Ticket",
"type": "main",
"index": 0
}
]
]
}
}
}Pour qui est ce workflow ?
Ce workflow s'adresse aux entreprises de taille moyenne à grande, notamment celles disposant d'équipes de support client. Il est conçu pour des utilisateurs ayant un niveau technique intermédiaire, souhaitant automatiser leurs processus de gestion des tickets et des calendriers.
Problème résolu
Ce workflow résout le problème de la gestion manuelle des tickets et des disponibilités, qui peut être source d'erreurs et de retards. En automatisant ces processus, les entreprises peuvent gagner du temps, réduire les risques d'erreurs et améliorer la satisfaction client. Les utilisateurs bénéficient d'une réponse rapide et efficace à leurs demandes, tout en optimisant l'utilisation des ressources disponibles.
Étapes du workflow
Étape 1 : Le workflow est déclenché par un Webhook qui reçoit les données de la demande. Étape 2 : Les informations sont extraites, y compris le numéro de téléphone et les données de calendrier. Étape 3 : Des vérifications sont effectuées pour s'assurer que l'utilisateur est trouvé et que les données sont valides. Étape 4 : Si tout est en ordre, un ticket est créé dans Zendesk et un événement est ajouté au calendrier Google. Étape 5 : En cas d'erreur, un message d'erreur est renvoyé via le Webhook.
Guide de personnalisation du workflow n8n
Pour personnaliser ce workflow, vous pouvez modifier les paramètres des noeuds Webhook pour adapter l'URL et les données reçues. Il est également possible de changer les configurations des noeuds de création de tickets et d'événements pour s'adapter aux spécificités de votre entreprise. Pensez à ajuster les conditions de vérification pour répondre à vos besoins. Enfin, assurez-vous que les intégrations avec Zendesk, Google Calendar et Airtable sont correctement configurées pour garantir un fonctionnement optimal.