This workflow follows the HTTP Request → Toolcode recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "Docxtemplater sample",
"nodes": [
{
"parameters": {},
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [
0,
0
],
"id": "db1c73e1-2772-4e6a-b419-89b6b27a40ae",
"name": "When clicking \u2018Test workflow\u2019"
},
{
"parameters": {
"method": "POST",
"url": "https://demo.gotenberg.dev/forms/libreoffice/convert",
"sendBody": true,
"contentType": "multipart-form-data",
"bodyParameters": {
"parameters": [
{
"parameterType": "formBinaryData",
"name": "files",
"inputDataFieldName": "data"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
800,
0
],
"id": "6fb052d6-52b3-4499-974b-153bf5b2987c",
"name": "Convert to PDF"
},
{
"parameters": {
"url": "https://raw.githubusercontent.com/jreyesr/n8n-nodes-docxtemplater/master/samples/invoice-docx.docx",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
220,
0
],
"id": "fa65d591-ecd6-431a-8891-f4b67519d9ac",
"name": "Retrieve DOCX template"
},
{
"parameters": {
"context": "{\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"phone\": \"0652XXXX42\",\n \"invoice_number\": \"318\",\n \"invoice_date\": \"8 May 2025\",\n \"items\": [\n {\n \"description\": \"Docxtemplater Pro Plan\",\n \"price\": \"950\"\n },\n {\n \"description\": \"Docxtemplater Pro free\",\n \"price\": \"150\"\n }\n ],\n \"total_price\": \"950\",\n \"price\": \"950\",\n \"tax\": \"190\",\n \"final_price\": \"1140\"\n}",
"options": {}
},
"type": "n8n-nodes-docxtemplater.docxTemplater",
"typeVersion": 1,
"position": [
440,
0
],
"id": "9e8acfbe-06e9-4417-a0e1-58d4c61b9883",
"name": "Docxtemplater"
},
{
"parameters": {
"name": "sumBy",
"jsCode": "const items = JSON.parse(query.input);\n\nreturn items\n .map(i => parseFloat(i[query.args[0]]))\n .reduce((a, b) => a + b, 0);\n",
"specifyInputSchema": true,
"jsonSchemaExample": "{\n\t\"input\": \"\",\n \"args\": [\"\"]\n}"
},
"type": "@n8n/n8n-nodes-langchain.toolCode",
"typeVersion": 1.1,
"position": [
580,
260
],
"id": "4a210be2-fd08-4032-b3e2-3c18dc1361ff",
"name": "sumby"
},
{
"parameters": {
"name": "upper",
"jsCode": "return query.toUpperCase()\n"
},
"type": "@n8n/n8n-nodes-langchain.toolCode",
"typeVersion": 1.1,
"position": [
680,
240
],
"id": "f65615a5-ee37-4b91-8adb-39bff5b6082c",
"name": "upper"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.dateTimeTool",
"typeVersion": 2,
"position": [
360,
260
],
"id": "27c5dbd4-4ae0-4c46-9e55-564bacdc08d2",
"name": "now"
}
],
"connections": {
"When clicking \u2018Test workflow\u2019": {
"main": [
[
{
"node": "Retrieve DOCX template",
"type": "main",
"index": 0
}
]
]
},
"Retrieve DOCX template": {
"main": [
[
{
"node": "Docxtemplater",
"type": "main",
"index": 0
}
]
]
},
"Docxtemplater": {
"main": [
[
{
"node": "Convert to PDF",
"type": "main",
"index": 0
}
]
]
},
"sumby": {
"ai_tool": [
[
{
"node": "Docxtemplater",
"type": "ai_tool",
"index": 1
}
]
]
},
"upper": {
"ai_tool": [
[
{
"node": "Docxtemplater",
"type": "ai_tool",
"index": 1
}
]
]
},
"now": {
"ai_tool": [
[
{
"node": "Docxtemplater",
"type": "ai_tool",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "28bbc388-f8ba-4d2e-891b-d4388c0193f1",
"id": "eURgYD7KxEtpSzjQ",
"tags": []
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Docxtemplater sample. Uses httpRequest, n8n-nodes-docxtemplater, toolCode, dateTimeTool. Event-driven trigger; 7 nodes.
Source: https://github.com/jreyesr/n8n-nodes-docxtemplater/blob/8ce12fa1b096931c4b5f0ca4f5f0214d0b966112/samples/Docxtemplater_sample.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This workflow automates SEO analysis by comparing your website with a competitor’s site. It reads input URLs from Google Sheets, scrapes structured SEO data from both sites, and expands into important
Spot Workplace Discrimination Patterns with AI. Uses manualTrigger, lmChatOpenAi, httpRequest, html. Event-driven trigger; 38 nodes.
Spot Workplace Discrimination Patterns with AI. Uses manualTrigger, lmChatOpenAi, httpRequest, html. Event-driven trigger; 38 nodes.
This template can be used to find the content gaps in your competitors' discourse: identifying the topics they are not yet connecting and giving you an opportunity to fill in this gap with your conten
OpenAI-model-examples. Uses manualTrigger, openAi, httpRequest, stickyNote. Event-driven trigger; 27 nodes.