This workflow follows the Execute Workflow Trigger → HTTP Request 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 →
{
"nodes": [
{
"id": "72babb83-0530-4809-9f6f-d9afaf91fd59",
"name": "Send Log to BetterStack",
"type": "n8n-nodes-base.httpRequest",
"position": [
80,
140
],
"parameters": {
"method": "POST",
"options": {},
"jsonBody": "={\n \"message\":\"{{ $json.message }}\",\n \"level\": \"{{ $json.level }}\"\n} ",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"name": "<your credential>"
}
},
"typeVersion": 4.2
},
{
"id": "863b184b-05c0-47b7-82c1-166bdf25a32a",
"name": "Recieve log message",
"type": "n8n-nodes-base.executeWorkflowTrigger",
"notes": "from another workflow",
"position": [
-140,
140
],
"parameters": {
"workflowInputs": {
"values": [
{
"name": "level"
},
{
"name": "message"
}
]
}
},
"notesInFlow": true,
"typeVersion": 1.1
},
{
"id": "e696b65e-5249-43b2-9a33-4e59fc616f21",
"name": "Test workflow",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-260,
-120
],
"parameters": {},
"typeVersion": 1
},
{
"id": "f7b51eae-4016-4072-9539-b66ea8646508",
"name": "Send test log message",
"type": "n8n-nodes-base.executeWorkflow",
"notes": "using workflow",
"position": [
-40,
-120
],
"parameters": {
"options": {},
"workflowId": {
"__rl": true,
"mode": "id",
"value": "={{$workflow.id}}"
},
"workflowInputs": {
"value": {
"level": "error",
"message": "This is a test log message"
},
"schema": [
{
"id": "level",
"type": "string",
"display": true,
"required": false,
"displayName": "level",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "message",
"type": "string",
"display": true,
"required": false,
"displayName": "message",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": true
}
},
"notesInFlow": true,
"typeVersion": 1.2
},
{
"id": "72457cde-ea6f-406a-8d5e-70878114dd3e",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-440,
60
],
"parameters": {
"width": 860,
"height": 280,
"content": "## \ub85c\uadf8 \ud56d\ubaa9\uc744 BetterStack\uc5d0 \ubcf4\ub0b4\uae30 \n\uc774 \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub294 \ub450 \uac00\uc9c0 \ubc29\ubc95\uc73c\ub85c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4: \n1. \uc5ec\ub7ec \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc5d0\uc11c \uc0ac\uc6a9\ud558\uae30 \uc704\ud574 \ubcc4\ub3c4\uc758 \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub85c \uc800\uc7a5\ud558\uc138\uc694. \n2. \ud558\ub098\uc758 \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc5d0 \ub0b4\uc7a5\ud558\uc5ec \uadf8 \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc5d0\uc11c\ub9cc \uc0ac\uc6a9\ud558\uc138\uc694."
},
"typeVersion": 1
},
{
"id": "442976e5-1306-4c9b-a3e6-5693ae6d132c",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-440,
-240
],
"parameters": {
"color": 7,
"width": 660,
"height": 280,
"content": "## \ub370\ubaa8\n\uc774\uac83\uc740 \uc6cc\ud06c\ud50c\ub85c\ub97c \ud638\ucd9c\ud558\ub294 \ubc29\ubc95\uc758 \ub370\ubaa8\uc77c \ubfd0\uc785\ub2c8\ub2e4.\n\uc5ec\uae30\uc5d0 \ubcf4\uad00\ud558\uc138\uc694, \uc790\uc2e0\uc758 \uc6cc\ud06c\ud50c\ub85c\ub85c \uad50\uccb4\ud558\uac70\ub098 \uc0ad\uc81c\ud558\uc138\uc694."
},
"typeVersion": 1
},
{
"id": "4175c168-1f59-4213-8bc4-a71dd62c3bd9",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
20,
100
],
"parameters": {
"color": 3,
"height": 200,
"content": "### \ub098\ub97c \ud3b8\uc9d1\ud558\uc138\uc694"
},
"typeVersion": 1
},
{
"id": "c69c7c62-f4b5-4b14-b6be-8e9f3b8a38cd",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-780,
-240
],
"parameters": {
"color": 6,
"width": 300,
"height": 580,
"content": "### \ud83e\uddfe BetterStack\uc5d0 \ub85c\uadf8 \ubcf4\ub0b4\uae30\n\n**\ud83d\udc4b \uc548\ub155\ud558\uc138\uc694! \uc800\ub294 Audun / xqus\uc785\ub2c8\ub2e4.** \n\ud83d\udd17 \ub0b4 \uc791\uc5c5: [xqus.com](https://xqus.com) \n\ud83d\udcb8 n8n \uc0c1\uc810: [xqus.gumroad.com](https://xqus.gumroad.com) \n\n\uc774 \uc6cc\ud06c\ud50c\ub85c\ub294 POST \uc694\uccad\uc744 \uc0ac\uc6a9\ud558\uc5ec [BetterStack Logs](https://betterstack.com/logs)\ub85c \ub85c\uadf8 \uba54\uc2dc\uc9c0\ub97c \ubcf4\ub0c5\ub2c8\ub2e4.\n\n#### \u2705 \uc0ac\uc6a9\ubc95: \n1. **\ub2e4\ub978 \uc6cc\ud06c\ud50c\ub85c\uc5d0\uc11c** \n \u2192 **Execute Workflow** \ub178\ub4dc\ub97c \uc0ac\uc6a9\ud558\uace0 `level`\uacfc `message`\ub97c \uc804\ub2ec\ud558\uc138\uc694. \n\n2. **\ub3c5\ub9bd\uc801\uc73c\ub85c** \n \u2192 \ud14c\uc2a4\ud2b8\ub97c \uc704\ud574 \uc218\ub3d9\uc73c\ub85c \ud2b8\ub9ac\uac70\ud558\uac70\ub098, \ub2e8\uc77c \uc6cc\ud06c\ud50c\ub85c\uc5d0 \ud3ec\ud568\ud558\uc138\uc694. \n\n#### \ud83d\udd27 \uc124\uc815: \n1. HTTP Request \ub178\ub4dc\uc5d0 **BetterStack Logs \uc5d4\ub4dc\ud3ec\uc778\ud2b8 URL**\uc744 \uc124\uc815\ud558\uc138\uc694. \n2. **Header Auth** \uc790\uaca9 \uc99d\uba85\uc744 \ucd94\uac00\ud558\uc138\uc694: `Authorization: Bearer YOUR_TOKEN`"
},
"typeVersion": 1
}
],
"connections": {
"Test workflow": {
"main": [
[
{
"node": "Send test log message",
"type": "main",
"index": 0
}
]
]
},
"Recieve log message": {
"main": [
[
{
"node": "Send Log to BetterStack",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
httpHeaderAuth
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Workflow 3400. Uses httpRequest, executeWorkflowTrigger. Event-driven trigger; 8 nodes.
Source: https://github.com/n8nKOR/n8n-shared-workflow/blob/62a671327e906c22a40d290b339ff6d2373f8d75/workflows/n8n-workflows-by-Zie619/devops/3400_workflow_3400.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 template syncs prospects from ProspectPro into HubSpot. It checks if a company already exists in HubSpot (by ProspectPro ID or domain), then updates the record or creates a new one. Sync results
It validates all inputs, queries providers sequentially, and merges results into a single enforced output schema. The workflow is designed to guarantee complete coverage for the requested currencies.
Create, iterate, and share! Transform a single image through multiple scenes while maintaining consistency.
Backup Credentials to GitHub. Uses httpRequest, github, executeCommand, executeWorkflowTrigger. Event-driven trigger; 25 nodes.
Based on Jonathan's work. Check out his templates.