8
n8n 한국어amn8n.com

테스트 - Bannerbear 이미지 생성기 동기/비동기

중급

이것은자동화 워크플로우로, 15개의 노드를 포함합니다.주로 If, Set, Webhook, Bannerbear, HttpRequest 등의 노드를 사용하며. Bannerbear를 통해 브랜드 소셜 미디어 이미지(동시/비동시 모드) 생성

사전 요구사항
  • HTTP Webhook 엔드포인트(n8n이 자동으로 생성)
  • 대상 API의 인증 정보가 필요할 수 있음

카테고리

-
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "F3mTq6rX9I4XydnO",
  "meta": {
    "instanceId": "313b93d489cbc0ae87ad93f25c395bbdc59c46c632d00f395c3586a8fbbb7a34",
    "templateCredsSetupCompleted": true
  },
  "name": "TEST - Bannerbear image generator Sync/Async",
  "tags": [
    {
      "id": "WaI3hC9FrokRTdiV",
      "name": "Bannerbear",
      "createdAt": "2025-10-12T16:01:05.619Z",
      "updatedAt": "2025-10-12T16:01:05.619Z"
    }
  ],
  "nodes": [
    {
      "id": "c8bd9d3d-8b8b-4a34-a6bb-c864ca4b5b15",
      "name": "워크플로우 실행 시",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -496,
        0
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "1a16d617-daa4-4798-bc3e-3f1ebbe983c4",
      "name": "매개변수 설정",
      "type": "n8n-nodes-base.set",
      "position": [
        -208,
        0
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "{\n  \"bannerbear_api_key\": \"your_bannerbear_api_key\",\n  \"banner_bear_template_id\": \"your_banner_bear_template_id\",\n  \"title\": \"This image is AI generated\",\n  \"subtitle\": \"Made in n8n with BannerBear\",\n  \"call_mode\": \"sync\"\n}\n"
      },
      "typeVersion": 3.4
    },
    {
      "id": "e275b1cc-0dd7-44ec-b7e7-bebd09780090",
      "name": "참고 사항",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1168,
        -368
      ],
      "parameters": {
        "width": 496,
        "height": 864,
        "content": "## How to set up this workflow\n\n1. **Get Bannerbear credentials:**\n   - Sign up at bannerbear.com\n   - Create a project and design a template\n   - Copy your API key from Settings > API Key\n   - Copy your template ID from the API Console\n\n2. **Configure the workflow:**\n   - Open the \"SetParameters\" node\n   - Replace the API key and template ID with yours\n   - Customize the title and subtitle text\n   - Set `call_mode` to \"sync\" or \"async\"\n\n3. **For async mode (recommended):**\n   - Activate the \"Webhook_OnImageCreated\" node\n   - Copy the production webhook URL\n   - Add it to Bannerbear via Settings > Webhooks > Create a Webhook\n   - Set event type to \"image_created\"\n\n\n**If this doesn't work, you can alternately use a tool like POSTMAN to create the webhook in BannerBear:**\n\n\nPOST https://api.bannerbear.com/v2/webhooks\n\nHeaders:\nContent-Type: application/json\nAuthorization: Bearer [you_api_key]\n\nBody:\n{\n  \"url\" : \"the url of you n8n webhook\",\n  \"event\": \"image_created\"\n}"
      },
      "typeVersion": 1
    },
    {
      "id": "b7ed9313-8ac6-4f12-a39c-3907234d5a7c",
      "name": "동기적으로 이미지 생성",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        480,
        -112
      ],
      "parameters": {
        "url": "https://sync.api.bannerbear.com/v2/images",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"template\": \"{{ $('SetParameters').item.json.banner_bear_template_id }}\",\n  \"modifications\": [\n    {\n      \"name\": \"title\",\n      \"text\": \"{{ $('SetParameters').item.json.title }}\",\n      \"color\": null,\n      \"background\": null\n    },\n    {\n      \"name\": \"pretitle\",\n      \"text\": \"{{ $('SetParameters').item.json.subtitle }}\",\n      \"background\": null\n    }\n  ],\n  \"webhook_url\": null,\n  \"transparent\": false,\n  \"metadata\": null\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "=Bearer {{ $('SetParameters').item.json.bannerbear_api_key }}"
            }
          ]
        }
      },
      "retryOnFail": true,
      "typeVersion": 4.2,
      "waitBetweenTries": 5000
    },
    {
      "id": "3d8a40d5-79a8-4371-88dd-a276f8a4246d",
      "name": "이미지 URL 및 크기 가져오기",
      "type": "n8n-nodes-base.set",
      "position": [
        704,
        -112
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "={\n  \"uid\": \"{{ $json.uid }}\",\n  \"status\": \"{{ $json.status }}\",\n  \"image_url_png\": \"{{ $json.image_url_png }}\",\n  \"image_url_jpg\": \"{{ $json.image_url_jpg }}\",\n  \"width\": {{ $json.width }},\n  \"height\": {{ $json.height }}\n}\n"
      },
      "typeVersion": 3.4
    },
    {
      "id": "b776d8f5-ce48-4d52-ba5b-809b229953eb",
      "name": "참고 사항2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        336,
        -240
      ],
      "parameters": {
        "color": 6,
        "width": 608,
        "height": 352,
        "content": "## Synchronous call (specific API URL)"
      },
      "typeVersion": 1
    },
    {
      "id": "2e0c9929-728c-4f91-abcd-afc78074cdbf",
      "name": "참고 사항3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        336,
        144
      ],
      "parameters": {
        "color": 5,
        "width": 608,
        "height": 352,
        "content": "## Asynchronous call\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b5b54ead-b4d0-4786-a741-5f86e8c92767",
      "name": "Webhook_이미지 생성 시",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -512,
        560
      ],
      "webhookId": "ac6a6723-1876-4f43-af4c-411a0f1f4ad3",
      "parameters": {
        "path": "ac6a6723-1876-4f43-af4c-411a0f1f4ad3",
        "options": {},
        "httpMethod": "POST"
      },
      "typeVersion": 2.1
    },
    {
      "id": "e312e19a-22eb-4dec-ae58-5f71894513b3",
      "name": "참고 사항4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1168,
        512
      ],
      "parameters": {
        "color": 5,
        "width": 496,
        "height": 192,
        "content": "## Webhook Async mode\n\nIn order to declare thje webhook in BannerBear:\n- the webhook not must be of type POST\n- you must use the production URL\n- workflow must be active"
      },
      "typeVersion": 1
    },
    {
      "id": "867be1aa-e4a1-4a39-9662-a89a0248b2e5",
      "name": "UID 및 상태 가져오기",
      "type": "n8n-nodes-base.set",
      "position": [
        720,
        272
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "={\n  \"uid\": \"{{ $json.uid }}\",\n  \"status\": \"{{ $json.status }}\"\n}\n"
      },
      "typeVersion": 3.4
    },
    {
      "id": "faf15aff-2df8-40b4-b11f-da9284c7ef5f",
      "name": "완료된 이미지 정보 가져오기",
      "type": "n8n-nodes-base.set",
      "position": [
        -304,
        560
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "={\n  \"uid\": \"{{ $json.uid }}\",\n  \"status\": \"{{ $json.status }}\",\n  \"image_url_png\": \"{{ $json.image_url_png }}\",\n  \"image_url_jpg\": \"{{ $json.image_url_jpg }}\",\n  \"width\": {{ $json.width }},\n  \"height\": {{ $json.height }}\n}\n"
      },
      "typeVersion": 3.4
    },
    {
      "id": "a17932d9-0e0d-4733-80f2-fa4a92225637",
      "name": "참고 사항12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        16,
        -144
      ],
      "parameters": {
        "color": 7,
        "width": 288,
        "height": 352,
        "content": "## Choose between synchronous and asynchronous call\n"
      },
      "typeVersion": 1
    },
    {
      "id": "f7c801d4-29a0-451a-8669-6aa3b89ea2d9",
      "name": "IfSynchrounousCall",
      "type": "n8n-nodes-base.if",
      "position": [
        80,
        0
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "loose"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "3be86245-4fbc-4b3c-b5e8-cdf55830a364",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.call_mode }}",
              "rightValue": "=sync"
            }
          ]
        },
        "looseTypeValidation": true
      },
      "typeVersion": 2.2
    },
    {
      "id": "21604f70-04fd-4d3e-a63c-71d40b63370b",
      "name": "비동기적으로 이미지 생성",
      "type": "n8n-nodes-base.bannerbear",
      "position": [
        480,
        272
      ],
      "parameters": {
        "templateId": "={{ $json.banner_bear_template_id }}",
        "modificationsUi": {
          "modificationsValues": [
            {
              "name": "title",
              "text": "={{ $json.title }}"
            },
            {
              "name": "pretitle",
              "text": "={{ $json.subtitle }}"
            }
          ]
        },
        "additionalFields": {}
      },
      "credentials": {
        "bannerbearApi": {
          "id": "3TRGZU5Fz9n1UAvW",
          "name": "Bannerbear account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "6cb031e3-e3fd-469c-ba22-e64818811b68",
      "name": "참고 사항6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -288,
        -144
      ],
      "parameters": {
        "color": 7,
        "width": 272,
        "height": 352,
        "content": "## Set BannerBear parameters & data\n\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {
    "SynchronouslyCreateImage": [
      {
        "json": {
          "uid": "5nDZ3xmVezbm8BNJYy2qpdWj9",
          "self": "https://api.bannerbear.com/v2/images/5nDZ3xmVezbm8BNJYy2qpdWj9",
          "width": 1000,
          "height": 1000,
          "status": "completed",
          "pdf_url": null,
          "metadata": null,
          "template": "Kp21rAZj1BVab6eLnd",
          "image_url": "https://images.bannerbear.com/direct/lPOmJb1Yvv8Xz60g4G/requests/000/109/151/708/5nDZ3xmVezbm8BNJYy2qpdWj9/114db5f59243f056dca6207c7c8940c5fa6708d5.png",
          "created_at": "2025-10-12T16:22:59.013Z",
          "render_pdf": false,
          "transparent": false,
          "webhook_url": null,
          "image_url_jpg": "https://images.bannerbear.com/direct/lPOmJb1Yvv8Xz60g4G/requests/000/109/151/708/5nDZ3xmVezbm8BNJYy2qpdWj9/114db5f59243f056dca6207c7c8940c5fa6708d5.jpg",
          "image_url_png": "https://images.bannerbear.com/direct/lPOmJb1Yvv8Xz60g4G/requests/000/109/151/708/5nDZ3xmVezbm8BNJYy2qpdWj9/114db5f59243f056dca6207c7c8940c5fa6708d5.png",
          "modifications": [
            {
              "name": "title",
              "text": "This image is AI generated",
              "color": null,
              "background": null
            },
            {
              "name": "pretitle",
              "text": "Sorry not sorry",
              "background": null
            }
          ],
          "template_name": "LinkedId Post",
          "template_version": null,
          "pdf_url_compressed": null,
          "webhook_response_code": null
        }
      }
    ]
  },
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "b1fbbe44-ab95-4159-8c46-46084790d26c",
  "connections": {
    "1a16d617-daa4-4798-bc3e-3f1ebbe983c4": {
      "main": [
        [
          {
            "node": "f7c801d4-29a0-451a-8669-6aa3b89ea2d9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f7c801d4-29a0-451a-8669-6aa3b89ea2d9": {
      "main": [
        [
          {
            "node": "b7ed9313-8ac6-4f12-a39c-3907234d5a7c",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "21604f70-04fd-4d3e-a63c-71d40b63370b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b5b54ead-b4d0-4786-a741-5f86e8c92767": {
      "main": [
        [
          {
            "node": "faf15aff-2df8-40b4-b11f-da9284c7ef5f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b7ed9313-8ac6-4f12-a39c-3907234d5a7c": {
      "main": [
        [
          {
            "node": "3d8a40d5-79a8-4371-88dd-a276f8a4246d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "21604f70-04fd-4d3e-a63c-71d40b63370b": {
      "main": [
        [
          {
            "node": "867be1aa-e4a1-4a39-9662-a89a0248b2e5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c8bd9d3d-8b8b-4a34-a6bb-c864ca4b5b15": {
      "main": [
        [
          {
            "node": "1a16d617-daa4-4798-bc3e-3f1ebbe983c4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

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

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

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

중급

유료인가요?

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

워크플로우 정보
난이도
중급
노드 수15
카테고리-
노드 유형7
난이도 설명

일정 경험을 가진 사용자를 위한 6-15개 노드의 중간 복잡도 워크플로우

저자
Elodie Tasia

Elodie Tasia

@ladypixl

Web designer & AI automation creator. I build clean, conversion-ready sites and n8n workflows that take your content from idea to publish, on autopilot, in your voice. Grab my templates or message me for a custom build.

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34