8
n8n 한국어amn8n.com

Nano banana + 자동 게시

고급

이것은Social Media, Multimodal AI분야의자동화 워크플로우로, 20개의 노드를 포함합니다.주로 If, Wait, HttpRequest, GoogleSheets, Agent 등의 노드를 사용하며. Nano Banana 및 GPT-5 제목 생성을 통한 이미지 편집 및 Instagram 게시 자동화

사전 요구사항
  • 대상 API의 인증 정보가 필요할 수 있음
  • Google Sheets API 인증 정보
  • Google Drive API 인증 정보
  • OpenAI API Key
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "y3AF1pEsxHZOiRC0",
  "meta": {
    "instanceId": "1c7b08fed4406d546caf4a44e8b942ca317e7e207bb9a5701955a1a6e1ce1843",
    "templateCredsSetupCompleted": true
  },
  "name": "Nano banana + Autopost",
  "tags": [],
  "nodes": [
    {
      "id": "b550bf52-81d7-44b7-8a56-6582a635870b",
      "name": "Google Drive 트리거",
      "type": "n8n-nodes-base.googleDriveTrigger",
      "position": [
        0,
        0
      ],
      "parameters": {
        "event": "fileCreated",
        "options": {},
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        },
        "triggerOn": "specificFolder",
        "folderToWatch": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_FOLDER_ID",
          "cachedResultUrl": "YOUR_FOLDER_URL",
          "cachedResultName": "Image Upload Folder"
        }
      },
      "credentials": {},
      "typeVersion": 1
    },
    {
      "id": "63942884-b26a-48b2-8063-7b8c59494cf2",
      "name": "나노 바나나 POST 요청",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        240,
        0
      ],
      "parameters": {
        "url": "https://api.wavespeed.ai/api/v3/google/nano-banana/edit",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "jsonBody": "={\n  \"enable_base64_output\": false,\n  \"enable_sync_mode\": false,\n  \"images\": [\n    \"{{ $json.webContentLink }}\"\n  ],\n  \"output_format\": \"jpeg\",\n  \"prompt\": \"Clean up and declutter this apartment unit: remove all mess, trash, and personal items while keeping the original furniture, layout, and design intact. Tidy up surfaces, straighten objects, and make the space look neat and inviting. Enhance the lighting to appear bright and natural, similar to professional real-estate photography, without altering the structure or style of the apartment.\"\n}",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "6c3c8e4d-a5ea-4287-8d71-ed732bb3a719",
      "name": "15초 대기",
      "type": "n8n-nodes-base.wait",
      "position": [
        400,
        0
      ],
      "webhookId": "319f45e0-26e7-457d-b5c5-560a8bba9f8b",
      "parameters": {
        "amount": 15
      },
      "typeVersion": 1.1
    },
    {
      "id": "ff945721-7eaa-453e-a8aa-efd7abac7c6e",
      "name": "나노 바나나 노드에서 결과 GET",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        656,
        0
      ],
      "parameters": {
        "url": "=https://api.wavespeed.ai/api/v3/predictions/{{ $json.data.id }}/result",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "4f98a56c-3eb9-4fdc-a606-29b1e10981e7",
      "name": "시트에 행 추가",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1152,
        0
      ],
      "parameters": {
        "columns": {
          "value": {
            "Image URL": "={{ $json.data.outputs[0] }}",
            "Timestamp": "={{ $now }}"
          },
          "schema": [
            {
              "id": "Image URL",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Image URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Timestamp",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Timestamp",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_SHEET_NAME",
          "cachedResultUrl": "YOUR_SHEET_URL",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_SHEET_ID",
          "cachedResultUrl": "YOUR_SHEET_URL",
          "cachedResultName": "Editted Image Log"
        }
      },
      "credentials": {},
      "typeVersion": 4.7
    },
    {
      "id": "0ecbc4d6-f6a8-49d3-9be7-e1d344f6ac6f",
      "name": "조건문",
      "type": "n8n-nodes-base.if",
      "position": [
        864,
        0
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "b84517df-a71f-4e28-b744-35bb1e55b85f",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.data.status }}",
              "rightValue": "completed"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "8538e41c-39e3-4923-9167-cfe17c687cdc",
      "name": "15초 다시 대기",
      "type": "n8n-nodes-base.wait",
      "position": [
        928,
        176
      ],
      "webhookId": "5e110e46-28c5-4144-9052-16821d0ea666",
      "parameters": {
        "amount": 15
      },
      "typeVersion": 1.1
    },
    {
      "id": "2dbc81b2-7bcb-4fb5-81da-0cbe1b92d05b",
      "name": "Postiz에 업로드",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1600,
        0
      ],
      "parameters": {
        "url": "https://api.postiz.com/public/v1/upload",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "file",
              "parameterType": "formBinaryData",
              "inputDataFieldName": "data"
            }
          ]
        },
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "c3184cf0-6101-48a7-9a44-4c800237f544",
      "name": "인스타그램에 게시",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2432,
        0
      ],
      "parameters": {
        "url": "https://api.postiz.com/public/v1/posts",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"type\": \"now\",\n  \"shortLink\": false,\n  \"date\": \"{{ new Date($now).toISOString() }}\",\n  \"tags\": [],\n  \"posts\": [\n    {\n      \"integration\": { \"id\": \"cmeku38qa00cpo90yfw4ai6lt\" },\n      \"value\": [\n        {\n          \"content\": \"{{ $json.output }}\",\n          \"image\": [\n            {\n              \"id\": \"{{ $node['Upload to Postiz'].json.id }}\",\n              \"path\": \"{{ $node['Upload to Postiz'].json.path }}\"\n            }\n          ]\n        }\n      ],\n      \"settings\": {\n        \"post_type\": \"post\"\n      }\n    }\n  ]\n}\n",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {},
      "typeVersion": 4.2
    },
    {
      "id": "c46c1b35-4bf0-4c90-9881-efd520df4b2a",
      "name": "로그 업데이트",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1824,
        0
      ],
      "parameters": {
        "columns": {
          "value": {
            "Status": "Uploaded to Postiz",
            "Timestamp": "={{ $now }}",
            "Video Name and Description": "={{ $('Google Drive Trigger').item.json.name }}"
          },
          "schema": [
            {
              "id": "Video Name and Description",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Video Name and Description",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Timestamp",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Timestamp",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_SHEET_NAME",
          "cachedResultUrl": "YOUR_SHEET_URL",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_SHEET_ID",
          "cachedResultUrl": "YOUR_SHEET_URL",
          "cachedResultName": "Logs of Captioned Videos to Publish"
        }
      },
      "credentials": {},
      "typeVersion": 4.7
    },
    {
      "id": "cb42c1d0-795f-4605-93f3-e13f6944654b",
      "name": "OpenAI 채팅 모델",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2112,
        208
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-5",
          "cachedResultName": "gpt-5"
        },
        "options": {}
      },
      "credentials": {},
      "typeVersion": 1.2
    },
    {
      "id": "2e6dd8f6-460c-483e-a3d8-385d519ca7da",
      "name": "캡션 에이전트",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2064,
        0
      ],
      "parameters": {
        "text": "={{ $json['Video Name and Description'] }}",
        "options": {
          "systemMessage": "=You are an expert Instagram caption writer.\nYour task is to take the image prompt provided by the user and generate a short, engaging caption for Instagram or Tik-Tok Reels\n\nCaption Guidelines\n\n\nTone: friendly, impactful and exciting\n\n##Output Rules\nDo not use special characters like {} ! %$&*\nReturn only one final caption per request.\nDo not include explanations or formatting outside of the caption itself."
        },
        "promptType": "define"
      },
      "typeVersion": 2.2
    },
    {
      "id": "3ab434fd-3256-4687-92fa-0246078c391c",
      "name": "스티커 노트4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2032,
        -288
      ],
      "parameters": {
        "color": 7,
        "width": 288,
        "height": 800,
        "content": "Caption for IG"
      },
      "typeVersion": 1
    },
    {
      "id": "58a237a0-8a4b-4c75-875d-833731a2c313",
      "name": "스티커 노트5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2336,
        -288
      ],
      "parameters": {
        "color": 2,
        "width": 304,
        "height": 800,
        "content": "Post to IG"
      },
      "typeVersion": 1
    },
    {
      "id": "1f080554-b4ef-42c9-8e6b-ecbeb78dc093",
      "name": "이미지 가져오기",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1392,
        0
      ],
      "parameters": {
        "url": "={{ $json['Image URL'] }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "dff121ad-7120-452e-a4ae-9e33a1dfc4b4",
      "name": "스티커 노트",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1360,
        -288
      ],
      "parameters": {
        "color": 3,
        "width": 656,
        "height": 800,
        "content": "Get Image and Upload"
      },
      "typeVersion": 1
    },
    {
      "id": "d8d5a377-1a6f-4684-851a-5f51adaf10f3",
      "name": "스티커 노트1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        560,
        -288
      ],
      "parameters": {
        "color": 4,
        "width": 784,
        "height": 800,
        "content": "Get Results from Nano Banana"
      },
      "typeVersion": 1
    },
    {
      "id": "801e4aaf-ce66-4c03-9fe8-9a0cab42d8ed",
      "name": "스티커 노트2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -80,
        -288
      ],
      "parameters": {
        "color": 5,
        "height": 800,
        "content": "Drive Trigger"
      },
      "typeVersion": 1
    },
    {
      "id": "4c8622a9-d705-4444-93ed-513a4c033b80",
      "name": "스티커 노트3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        176,
        -288
      ],
      "parameters": {
        "width": 368,
        "height": 800,
        "content": "Drive Trigger"
      },
      "typeVersion": 1
    },
    {
      "id": "31820743-5d4d-4d93-9553-db353fbcc6ac",
      "name": "스티커 노트6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1056,
        -368
      ],
      "parameters": {
        "color": 7,
        "width": 848,
        "height": 1536,
        "content": "📸 Auto-Edit Google Drive Images with Nano Banana + Social Auto-Post\n\nDrop an image into Google Drive and let this workflow handle the rest: it auto-cleans and enhances the image with Google’s Nano Banana (via Wavespeed API), generates a catchy caption with GPT-5, and publishes directly to your connected social accounts using Postiz.\n\n👉 Watch step-by-step video tutorials of workflows like these on https://www.youtube.com/watch?v=4wk6PYgBtBM&list=PL05w1TE8X3bb1H9lXBqUy98zmTrrPP-s1\n\nWhat it does\n\nTriggers from Google Drive when a new image is uploaded\n\nSends the image to Nano Banana to declutter, brighten, and make it real-estate/photo-listing ready\n\nPolls for the edited result until it’s complete\n\nLogs the edited image URL into Google Sheets for tracking\n\nDownloads and uploads the edited image into Postiz media library\n\nGenerates an engaging caption with GPT-5 Caption Agent\n\nPublishes instantly to Instagram (can be extended to TikTok, LinkedIn, etc.)\n\nPerfect for\n\nReal-estate agents posting property shots\n\nEcommerce sellers updating product catalogs\n\nSocial media marketers needing fast, polished posts\n\nApps & Services\n\nGoogle Drive (Trigger)\n\nWavespeed API – Google Nano Banana (Image editing)\n\nGoogle Sheets (Logging)\n\nPostiz (Social scheduling/posting)\n\nOpenAI GPT-5 (Caption agent)\n\nSetup\n\nConnect your Google Drive and select the upload folder.\n\nAdd your Wavespeed API key for Nano Banana.\n\nConnect Google Sheets for logging.\n\nAdd Postiz API credentials and set the integration ID for your channel(s).\n\nEnter your OpenAI API key for GPT-5 captioning.\n\nCustomization\n\nAdjust the edit prompt for different use cases (e.g., product cleanup, lighting tweaks).\n\nChange Postiz post type to scheduled instead of “now.”\n\nAdd more Postiz posts for multi-platform publishing.\n\nInsert an approval loop (Slack/Email) before posting.\n\nLogs\n\nEdited Image Log (Sheets): stores final image URL + timestamp.\n\nPublishing Log (Sheets): tracks workflow status per asset.\n\nNotes\n\nSticky notes in the template explain each major block.\n\nReplace sample IDs with your own (folder IDs, sheet IDs, Postiz integration).\n\nKeep all API keys in n8n Credentials, not in node parameters."
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "5b7201de-043e-4ae6-95d0-fb7a33290f68",
  "connections": {
    "0ecbc4d6-f6a8-49d3-9be7-e1d344f6ac6f": {
      "main": [
        [
          {
            "node": "4f98a56c-3eb9-4fdc-a606-29b1e10981e7",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "8538e41c-39e3-4923-9167-cfe17c687cdc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1f080554-b4ef-42c9-8e6b-ecbeb78dc093": {
      "main": [
        [
          {
            "node": "2dbc81b2-7bcb-4fb5-81da-0cbe1b92d05b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c46c1b35-4bf0-4c90-9881-efd520df4b2a": {
      "main": [
        [
          {
            "node": "2e6dd8f6-460c-483e-a3d8-385d519ca7da",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6c3c8e4d-a5ea-4287-8d71-ed732bb3a719": {
      "main": [
        [
          {
            "node": "ff945721-7eaa-453e-a8aa-efd7abac7c6e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2e6dd8f6-460c-483e-a3d8-385d519ca7da": {
      "main": [
        [
          {
            "node": "c3184cf0-6101-48a7-9a44-4c800237f544",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2dbc81b2-7bcb-4fb5-81da-0cbe1b92d05b": {
      "main": [
        [
          {
            "node": "c46c1b35-4bf0-4c90-9881-efd520df4b2a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cb42c1d0-795f-4605-93f3-e13f6944654b": {
      "ai_languageModel": [
        [
          {
            "node": "2e6dd8f6-460c-483e-a3d8-385d519ca7da",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "8538e41c-39e3-4923-9167-cfe17c687cdc": {
      "main": [
        [
          {
            "node": "ff945721-7eaa-453e-a8aa-efd7abac7c6e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4f98a56c-3eb9-4fdc-a606-29b1e10981e7": {
      "main": [
        [
          {
            "node": "1f080554-b4ef-42c9-8e6b-ecbeb78dc093",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b550bf52-81d7-44b7-8a56-6582a635870b": {
      "main": [
        [
          {
            "node": "63942884-b26a-48b2-8063-7b8c59494cf2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "63942884-b26a-48b2-8063-7b8c59494cf2": {
      "main": [
        [
          {
            "node": "6c3c8e4d-a5ea-4287-8d71-ed732bb3a719",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ff945721-7eaa-453e-a8aa-efd7abac7c6e": {
      "main": [
        [
          {
            "node": "0ecbc4d6-f6a8-49d3-9be7-e1d344f6ac6f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

고급 - 소셜 미디어, 멀티모달 AI

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

워크플로우 정보
난이도
고급
노드 수20
카테고리2
노드 유형8
난이도 설명

고급 사용자를 위한 16+개 노드의 복잡한 워크플로우

저자
Automate With Marc

Automate With Marc

@marconi

Automating Start-Up and Business processes. Helping non-techies understand and leverage Agentic AI with easy to understand step-by-step tutorials. Check out my educational content: https://www.youtube.com/@Automatewithmarc

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34