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": "10-geracao-conteudo-ia",
"nodes": [
{
"parameters": {
"httpMethod": "POST",
"path": "gerar-conteudo",
"responseMode": "responseNode",
"options": {}
},
"id": "webhook-ia",
"name": "Webhook Gerar Conte\u00fado",
"type": "n8n-nodes-base.webhook",
"typeVersion": 2,
"position": [
250,
300
]
},
{
"parameters": {
"values": {
"string": [
{
"name": "prompt",
"value": "={{ $json.prompt }}"
},
{
"name": "type",
"value": "={{ $json.type || 'post' }}"
},
{
"name": "platform",
"value": "={{ $json.platform || 'instagram' }}"
},
{
"name": "tone",
"value": "={{ $json.tone || 'casual' }}"
}
]
}
},
"id": "prepare-prompt",
"name": "Preparar Prompt",
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
450,
300
]
},
{
"parameters": {
"method": "POST",
"url": "=https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-exp:generateContent?key={{ $credentials.geminiApi.apiKey }}",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"contents\": [\n {\n \"parts\": [\n {\n \"text\": \"Voc\u00ea \u00e9 um expert em marketing digital e social media.\\n\\nCrie conte\u00fado para {{ $json.platform }} com tom {{ $json.tone }}.\\nTipo de conte\u00fado: {{ $json.type }}\\n\\nSolicita\u00e7\u00e3o do usu\u00e1rio: {{ $json.prompt }}\\n\\nResponda em JSON com o formato:\\n{\\n \\\"caption\\\": \\\"legenda do post\\\",\\n \\\"hashtags\\\": \\\"#hashtag1 #hashtag2 ...\\\",\\n \\\"cta\\\": \\\"call to action\\\",\\n \\\"hook\\\": \\\"gancho inicial\\\"\\n}\"\n }\n ]\n }\n ],\n \"generationConfig\": {\n \"temperature\": 0.8,\n \"maxOutputTokens\": 2048\n }\n}",
"options": {}
},
"id": "call-gemini",
"name": "Chamar Gemini",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
650,
300
]
},
{
"parameters": {
"jsCode": "const response = $input.first().json;\nconst text = response.candidates?.[0]?.content?.parts?.[0]?.text || '';\n\n// Tentar extrair JSON da resposta\nlet parsed = {};\ntry {\n const jsonMatch = text.match(/\\{[\\s\\S]*\\}/);\n if (jsonMatch) {\n parsed = JSON.parse(jsonMatch[0]);\n }\n} catch (e) {\n parsed = { caption: text, hashtags: '', cta: '', hook: '' };\n}\n\nreturn {\n json: {\n success: true,\n content: parsed,\n raw_response: text\n }\n};"
},
"id": "parse-response",
"name": "Processar Resposta",
"type": "n8n-nodes-base.code",
"typeVersion": 2,
"position": [
850,
300
]
},
{
"parameters": {
"respondWith": "json",
"responseBody": "={{ JSON.stringify($json) }}",
"options": {}
},
"id": "respond",
"name": "Responder",
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1.1,
"position": [
1050,
300
]
}
],
"connections": {
"Webhook Gerar Conte\u00fado": {
"main": [
[
{
"node": "Preparar Prompt",
"type": "main",
"index": 0
}
]
]
},
"Preparar Prompt": {
"main": [
[
{
"node": "Chamar Gemini",
"type": "main",
"index": 0
}
]
]
},
"Chamar Gemini": {
"main": [
[
{
"node": "Processar Resposta",
"type": "main",
"index": 0
}
]
]
},
"Processar Resposta": {
"main": [
[
{
"node": "Responder",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
},
"tags": [
"ia",
"gemini",
"conteudo"
]
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
10-geracao-conteudo-ia. Uses httpRequest. Webhook trigger; 5 nodes.
Source: https://github.com/gabrielkendy/agenciabase/blob/cd61434f6cec21ef170654b7311b2510dccc74af/n8n-workflows/10-geracao-conteudo-ia.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 n8n template provides enterprise-level version control for your workflows using GitHub integration. Stop losing hours to broken workflows and manual exports – get proper commit history, visual di
This flow creates dummy files for every item added in your *Arrs (Radarr/Sonarr) with the tag .
eek-Go v2 (Batch-Then-Review). Uses httpRequest. Webhook trigger; 75 nodes.
This workflow receives webhook requests from a content calendar and uses the X API v2 to publish text posts, threads, image/video posts, and polls, as well as delete existing posts and run a credentia
This workflow acts as a central API gateway for all technical indicator agents in the Binance Spot Market Quant AI system. It listens for incoming webhook requests and dynamically routes them to the c