Certificat DSP (avec Google Forms)
Ceci est unOther, IT Opsworkflow d'automatisation du domainecontenant 17 nœuds.Utilise principalement des nœuds comme If, Set, Gmail, GoogleDrive, GoogleSlides. Génération et envoi par e-mail de certificats personnalisés (avec seuil de score) à partir de Google Forms
- •Compte Google et informations d'identification Gmail API
- •Informations d'identification Google Drive API
- •Informations d'identification Google Sheets API
Nœuds utilisés (17)
Catégorie
{
"id": "2qIFnWXdHJJs4oBk",
"meta": {
"instanceId": "6c586999cefcd4ec9b2ab69e3f6b7974d96831b39a984af15104588e20b2737a",
"templateCredsSetupCompleted": true
},
"name": "DSP Certificate w/ Google Forms",
"tags": [],
"nodes": [
{
"id": "1f3a1bb2-1e5b-4696-aafc-5b3267d76cbf",
"name": "Google Sheets Trigger",
"type": "n8n-nodes-base.googleSheetsTrigger",
"position": [
-100,
-20
],
"parameters": {
"event": "rowAdded",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1715309269,
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1WqhSc4sx6GMupZgFo7xKoegXVo3fJVhqrovCQPa1esM/edit#gid=1715309269",
"cachedResultName": "Form Responses 1"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "1WqhSc4sx6GMupZgFo7xKoegXVo3fJVhqrovCQPa1esM"
}
},
"credentials": {
"googleSheetsTriggerOAuth2Api": {
"id": "LPj2gg4OdDdyokS7",
"name": "Google Sheets (jkp@kajonkietsuksa.ac.th)"
}
},
"typeVersion": 1
},
{
"id": "385f6b0f-2db0-4a44-816c-c6f6c8ccb493",
"name": "No Operation, do nothing",
"type": "n8n-nodes-base.noOp",
"position": [
620,
180
],
"parameters": {},
"typeVersion": 1
},
{
"id": "58a77733-99f1-4884-b955-0a6f6c983cfc",
"name": "Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-240,
-340
],
"parameters": {
"width": 300,
"height": 180,
"content": "### 1) Start here\n* Create a Google Form and then enable quiz mode.\n* Publish it, submit 1 text data.\n* In response section, you'll see \"Link to Google Sheet\" option.\n* Press, and it will create a new sheet."
},
"typeVersion": 1
},
{
"id": "aeef0ccc-3031-40d0-a627-5f21ade148b1",
"name": "Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
320,
-140
],
"parameters": {
"width": 180,
"content": "### 4) Passing Score\n* Adjust your passing score here"
},
"typeVersion": 1
},
{
"id": "c21dbdb5-ed87-4aac-bbc7-338aaed830ba",
"name": "Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-240,
-100
],
"parameters": {
"height": 180,
"content": "### 2) Trigger Node\n* Replace your Google Sheet id's in this node."
},
"typeVersion": 1
},
{
"id": "d2b15c40-d38a-4bec-97c8-d4b35e3a69fa",
"name": "Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
40,
-100
],
"parameters": {
"width": 260,
"height": 180,
"content": "### 3) Extract Node\n* Select the data we want to use to proceed.\n* For this case, i'll select only Name, Email, Score (Because this is only what we need)"
},
"typeVersion": 1
},
{
"id": "79957ca7-ac5f-4f5b-b921-ddec3cb9f88b",
"name": "Extraire les données essentielles",
"type": "n8n-nodes-base.set",
"position": [
120,
60
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "7cdc9108-ab77-4904-a74b-29677b06cc81",
"name": "respondentName",
"type": "string",
"value": "={{ $json['ชื่อ (เป็นภาษาอังกฤษ)'] }}"
},
{
"id": "1800b27a-6cbc-4b82-a17a-87d7d1e7a66e",
"name": "respondentEmail",
"type": "string",
"value": "={{ $json['Email Address'] }}"
},
{
"id": "36cb99ca-7c98-41b5-a2a4-a03ac8d83189",
"name": "respondentScore",
"type": "number",
"value": "={{ $json.Score }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "912838e0-6b35-47a1-8935-dc90b4c59ecb",
"name": "Vérificateur de score",
"type": "n8n-nodes-base.if",
"position": [
360,
-20
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "286a95ee-1edc-4310-af22-d161e1f04a27",
"operator": {
"type": "number",
"operation": "gt"
},
"leftValue": "={{ $json.respondentScore }}",
"rightValue": 3
}
]
}
},
"typeVersion": 2.2
},
{
"id": "9c9e308f-ce90-425d-aafc-08711cbf95df",
"name": "Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
600,
120
],
"parameters": {
"width": 260,
"content": "### 4.1) Score < passing criteria"
},
"typeVersion": 1
},
{
"id": "f794c7a3-47af-4166-9504-8265837f61e6",
"name": "Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
520,
-340
],
"parameters": {
"width": 260,
"height": 200,
"content": "### 4.2) Score > passing criteria\n* Create new Google Slide \n* Decorate it as you desired (This will be certificate's template)\n* Use [ name ] to be a placeholder for user's name\n* Replace it with your Google Slide's id"
},
"typeVersion": 1
},
{
"id": "9a2954e3-59fd-4472-931f-9eeb362e627b",
"name": "Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
820,
-400
],
"parameters": {
"width": 260,
"content": "### 5) Replace text\n* This node will replace [ name ] with user's input name.\n"
},
"typeVersion": 1
},
{
"id": "baa88ba8-c1c6-40d7-b4c0-1e70397d7e68",
"name": "Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
940,
-80
],
"parameters": {
"width": 260,
"content": "### 6) To PDF\n* Change file name as you desire."
},
"typeVersion": 1
},
{
"id": "0d4b0fad-046b-4810-9d21-2c30135df6b0",
"name": "Copier depuis votre modèle",
"type": "n8n-nodes-base.googleDrive",
"position": [
620,
-160
],
"parameters": {
"name": "={{ $json.respondentName }}'s Certificate",
"fileId": {
"__rl": true,
"mode": "id",
"value": "1J8PxjjspVs7075EfIX6pnNU-TmqtzVV9ymeHoKpbwP0"
},
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive"
},
"options": {},
"folderId": {
"__rl": true,
"mode": "list",
"value": "1xMJU-6eiXL53NDgjic2SXecTo6GeUJ-o",
"cachedResultUrl": "https://drive.google.com/drive/folders/1xMJU-6eiXL53NDgjic2SXecTo6GeUJ-o",
"cachedResultName": "KS Google Form -> Certificate System"
},
"operation": "copy",
"sameFolder": false
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "2k4spLmVESgxckkx",
"name": "jkp@kajonkietsuksa.ac.th"
}
},
"typeVersion": 3
},
{
"id": "30407819-7998-4ba1-b2a0-bde7ba91747c",
"name": "Remplacer le texte",
"type": "n8n-nodes-base.googleSlides",
"position": [
880,
-300
],
"parameters": {
"textUi": {
"textValues": [
{
"text": "[ NAME ]",
"replaceText": "={{ $('Score Checker').item.json.respondentName }}",
"pageObjectIds": [
"p"
]
}
]
},
"options": {},
"operation": "replaceText",
"presentationId": "={{ $json.id }}"
},
"credentials": {
"googleSlidesOAuth2Api": {
"id": "1oyCPsdPLod92Wlp",
"name": "Google Slides account"
}
},
"typeVersion": 2
},
{
"id": "62f1ab2e-0471-480b-9a90-587a9ffb18d6",
"name": "Convertir en PDF",
"type": "n8n-nodes-base.googleDrive",
"position": [
960,
0
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.presentationId }}"
},
"options": {
"fileName": "={{ $('Score Checker').item.json.respondentName }}'s Certificate",
"googleFileConversion": {
"conversion": {
"slidesToFormat": "application/pdf"
}
}
},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "2k4spLmVESgxckkx",
"name": "jkp@kajonkietsuksa.ac.th"
}
},
"typeVersion": 3,
"alwaysOutputData": false
},
{
"id": "08516c84-5257-4875-8c2f-9b6a4428bfad",
"name": "Envoyer à l'email de l'utilisateur",
"type": "n8n-nodes-base.gmail",
"position": [
1360,
0
],
"webhookId": "f204ef80-937c-4f7b-8eb5-0699eb13c16a",
"parameters": {
"sendTo": "={{ $('Score Checker').item.json.respondentEmail }}",
"message": "=Congratulations on passing the quiz! Attached is your certificate.",
"options": {
"attachmentsUi": {
"attachmentsBinary": [
{}
]
},
"appendAttribution": false
},
"subject": "Here's your certificate!!"
},
"credentials": {
"gmailOAuth2": {
"id": "qogKxJFIxmrd6rcB",
"name": "Gmail account (jkp@kajonkietsuksa.ac.th)"
}
},
"typeVersion": 2.1
},
{
"id": "ae4cd0de-e06d-4200-af17-f6e9953ccba7",
"name": "Note8",
"type": "n8n-nodes-base.stickyNote",
"position": [
1260,
-100
],
"parameters": {
"width": 260,
"content": "### 7) Send email\n* Send to user's email\n* Customize your message here.\n"
},
"typeVersion": 1
}
],
"active": true,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "54bf009a-3f95-446d-95a6-825496592a6f",
"connections": {
"30407819-7998-4ba1-b2a0-bde7ba91747c": {
"main": [
[
{
"node": "62f1ab2e-0471-480b-9a90-587a9ffb18d6",
"type": "main",
"index": 0
}
]
]
},
"912838e0-6b35-47a1-8935-dc90b4c59ecb": {
"main": [
[
{
"node": "0d4b0fad-046b-4810-9d21-2c30135df6b0",
"type": "main",
"index": 0
}
],
[
{
"node": "385f6b0f-2db0-4a44-816c-c6f6c8ccb493",
"type": "main",
"index": 0
}
]
]
},
"62f1ab2e-0471-480b-9a90-587a9ffb18d6": {
"main": [
[
{
"node": "08516c84-5257-4875-8c2f-9b6a4428bfad",
"type": "main",
"index": 0
}
]
]
},
"1f3a1bb2-1e5b-4696-aafc-5b3267d76cbf": {
"main": [
[
{
"node": "79957ca7-ac5f-4f5b-b921-ddec3cb9f88b",
"type": "main",
"index": 0
}
]
]
},
"79957ca7-ac5f-4f5b-b921-ddec3cb9f88b": {
"main": [
[
{
"node": "912838e0-6b35-47a1-8935-dc90b4c59ecb",
"type": "main",
"index": 0
}
]
]
},
"0d4b0fad-046b-4810-9d21-2c30135df6b0": {
"main": [
[
{
"node": "30407819-7998-4ba1-b2a0-bde7ba91747c",
"type": "main",
"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é ?
Avancé - Autres, Opérations IT
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
Jakkrapat Ampring
@guitarpmaccWorking as a marketer in a bilingual school in Phuket with no coding background. I am a lazy person so I constantly looking for a way to make me work less. Been learning about AI stuff for around 2 years now.
Partager ce workflow