AutomationFlowsAI & RAG › Generate & Edit Images with Gemini Ai: Storage & Email Delivery Pipeline

Generate & Edit Images with Gemini Ai: Storage & Email Delivery Pipeline

ByGerald Denor @dominixai on n8n.io

For content creators, agencies, and SaaS developers who need automated AI image generation and editing with professional delivery workflows.

Webhook trigger★★★★☆ complexity20 nodesHTTP RequestGoogle DriveEmail Send
AI & RAG Trigger: Webhook Nodes: 20 Complexity: ★★★★☆ Added:

This workflow corresponds to n8n.io template #9216 — we link there as the canonical source.

This workflow follows the Emailsend → Google Drive 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 →

Download .json
{
  "id": "Rb4oT1epuHrZ6NtA",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Image Gen with Nano Banana \ud83c\udf4c (Text + Image Prompt )",
  "tags": [],
  "nodes": [
    {
      "id": "b4f7bd54-4ea3-41d6-adf2-a19203079615",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "notes": "Data from user. This can be replaced with a form trigger",
      "position": [
        -80,
        64
      ],
      "parameters": {},
      "notesInFlow": true,
      "typeVersion": 2.1
    },
    {
      "id": "494456b5-bdd8-49a2-8b7c-31c420edfad1",
      "name": "Edit Fields2",
      "type": "n8n-nodes-base.set",
      "position": [
        960,
        144
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "0195cf8c-0d09-4eab-83a4-bc34fb4b6b5b",
      "name": "Nano \ud83c\udf4c: Prompt Only",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        624,
        144
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "968e3e4e-468e-4574-af01-c877b9a4aaa7",
      "name": "If Image File Was Uploaded",
      "type": "n8n-nodes-base.if",
      "position": [
        128,
        64
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "925e67b1-3633-4da9-a265-cb6a1986a74f",
      "name": "Edit Fields",
      "type": "n8n-nodes-base.set",
      "position": [
        1856,
        80
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "5b2be1b0-42ab-4f58-ae0d-08841c063582",
      "name": "Share file",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1680,
        80
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "176a0b71-de43-4c71-8a2b-3140de0aa1c3",
      "name": "Upload file",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1520,
        80
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "103e014c-2048-4d25-a726-9ba698a767b3",
      "name": "Respond to Webhook",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        2320,
        80
      ],
      "parameters": {},
      "typeVersion": 1.4
    },
    {
      "id": "8dcbda40-72d4-4e97-bd29-68fdafa1cdef",
      "name": "Convert to File",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        1360,
        80
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "c5403496-7c79-4757-b5a2-eaec1048a24f",
      "name": "Edit Fields1",
      "type": "n8n-nodes-base.set",
      "position": [
        1136,
        -32
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "57538a5b-a31e-41a9-929b-47300b7027a7",
      "name": "Nano \ud83c\udf4c",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        944,
        -32
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "62788d9f-5773-4940-aea1-e30c98f62e81",
      "name": "Code",
      "type": "n8n-nodes-base.code",
      "notes": "format mage for AI",
      "position": [
        576,
        -32
      ],
      "parameters": {},
      "notesInFlow": true,
      "typeVersion": 2
    },
    {
      "id": "53fe7484-ea47-47b4-a1d3-6cbd47ce8368",
      "name": "Extract from File",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        384,
        -32
      ],
      "parameters": {},
      "typeVersion": 1,
      "alwaysOutputData": true
    },
    {
      "id": "ef1611d4-fc2a-4ef7-a34b-c29e55c0dfed",
      "name": "Send email",
      "type": "n8n-nodes-base.emailSend",
      "position": [
        2048,
        80
      ],
      "parameters": {},
      "typeVersion": 2.1
    },
    {
      "id": "bd1bf723-aa26-49db-a98e-c026540561b6",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        560,
        -560
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "99b78adf-3746-4a90-9af1-25ed4edf252e",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1024,
        -256
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "e8ed6161-d443-42ac-b8fc-587b9c5f12d1",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -192,
        -176
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "4508e777-177c-4cb7-83e7-6791d7c231c1",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        352,
        -176
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "3b1c3fb9-8a59-4459-959f-cfcae041f4ff",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        912,
        -176
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "36ef4719-dae7-4d9b-b8bd-adb23ad374e3",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2016,
        -176
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "10851cc7-321e-428c-8e41-b7d98432f643",
  "connections": {
    "Code": {
      "main": [
        [
          {
            "node": "Nano \ud83c\udf4c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Webhook": {
      "main": [
        [
          {
            "node": "If Image File Was Uploaded",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Nano \ud83c\udf4c": {
      "main": [
        [
          {
            "node": "Edit Fields1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send email": {
      "main": [
        [
          {
            "node": "Respond to Webhook",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Share file": {
      "main": [
        [
          {
            "node": "Edit Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields": {
      "main": [
        [
          {
            "node": "Send email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload file": {
      "main": [
        [
          {
            "node": "Share file",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields1": {
      "main": [
        [
          {
            "node": "Convert to File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields2": {
      "main": [
        [
          {
            "node": "Convert to File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert to File": {
      "main": [
        [
          {
            "node": "Upload file",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract from File": {
      "main": [
        [
          {
            "node": "Code",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Nano \ud83c\udf4c: Prompt Only": {
      "main": [
        [
          {
            "node": "Edit Fields2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If Image File Was Uploaded": {
      "main": [
        [
          {
            "node": "Extract from File",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Nano \ud83c\udf4c: Prompt Only",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

For content creators, agencies, and SaaS developers who need automated AI image generation and editing with professional delivery workflows.

Source: https://n8n.io/workflows/9216/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

This workflow is perfect for app developers, SaaS founders, and mobile growth teams who need constant UGC-style video ads without hiring creators or agencies. If you're spending $500+ per creator and

HTTP Request, Google Drive
AI & RAG

AI Background Generation with Nano Banana (Gemini Image). Uses httpRequest, googleDrive. Webhook trigger; 35 nodes.

HTTP Request, Google Drive
AI & RAG

This template is for developers, teams, and automation enthusiasts who want a private, PIN-protected Telegram chatbot that answers questions from their own documents — without relying on external AI A

Postgres, Telegram, HTTP Request +2
AI & RAG

Storage Sync - Google Drive. Uses supabase, googleDrive, httpRequest. Webhook trigger; 22 nodes.

Supabase, Google Drive, HTTP Request
AI & RAG

This workflow automates the creation of user-generated-content-style product videos by combining Gemini's image generation with OpenAI's SORA 2 video generation. It accepts webhook requests with produ

HTTP Request, Google Sheets, Google Drive