Freepik、Google Sheets、Google Drive を使用して AI 画像を大量生成

中級

これはContent Creation, Multimodal AI分野の自動化ワークフローで、11個のノードを含みます。主にCode, SplitOut, GoogleDrive, HttpRequest, GoogleSheetsなどのノードを使用。 Freepik、Google Sheets、Google Drive を使って AI 画像をバッチ生成

前提条件
  • Google Drive API認証情報
  • ターゲットAPIの認証情報が必要な場合あり
  • Google Sheets API認証情報
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "meta": {
    "instanceId": "ad0113c344ee237399e44e9f11798b05baeb83a6196d514a9ae9d2ad71c3b5c9",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "1c13de38-0a50-44a4-b7b1-6d6ff00757d7",
      "name": "ワークフロー開始",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -1680,
        736
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "cc6edc5b-5b6e-4de9-9437-6fd38c050ff5",
      "name": "ファイル変換",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        -160,
        640
      ],
      "parameters": {
        "options": {},
        "operation": "toBinary",
        "sourceProperty": "base64"
      },
      "typeVersion": 1.1
    },
    {
      "id": "b0070e99-0397-4ead-a28e-9457c1fa8770",
      "name": "画像生成",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -672,
        640
      ],
      "parameters": {
        "url": "https://api.freepik.com/v1/ai/text-to-image",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "prompt",
              "value": "={{ $json.Prompt }}"
            }
          ]
        },
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "MBOXm1HI3OHfvpZ7",
          "name": "Header Auth account"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "c5880a1b-d473-4218-a313-465112afb793",
      "name": "応答分割",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -400,
        640
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "data"
      },
      "typeVersion": 1
    },
    {
      "id": "fc353193-177e-4f63-8056-b7e3a7c00dc5",
      "name": "Google Driveへ画像アップロード",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        96,
        688
      ],
      "parameters": {
        "name": "=Image - {{ $('Get Prompt from Google Sheet').item.json.Name }} - {{ $('Double Output').item.json.run }}",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive",
          "cachedResultUrl": "https://drive.google.com/drive/my-drive",
          "cachedResultName": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "1TnDibwPPPUm3VbmETiqWDVhtaUTLJ6mn",
          "cachedResultUrl": "https://drive.google.com/drive/folders/1TnDibwPPPUm3VbmETiqWDVhtaUTLJ6mn",
          "cachedResultName": "n8n workflows"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "pl7bkYVKthXr65dR",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "55e34b0d-31ab-4f88-b5b5-b1f8ea9c819f",
      "name": "Google Sheetからプロンプト取得",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -1488,
        608
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1_u9IxEZINcwKQB15Rfx7C1hM71zeDST58Fz3nRHTCUY/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1_u9IxEZINcwKQB15Rfx7C1hM71zeDST58Fz3nRHTCUY",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1_u9IxEZINcwKQB15Rfx7C1hM71zeDST58Fz3nRHTCUY/edit?usp=drivesdk",
          "cachedResultName": "freepik prompts"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "HlBW2puZbuCCq8jJ",
          "name": "Google Sheets account 3"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "46ebdba5-bacd-4726-8837-0ebf6a45c25d",
      "name": "出力倍増",
      "type": "n8n-nodes-base.code",
      "position": [
        -1312,
        752
      ],
      "parameters": {
        "jsCode": "const original = items[0].json;\n\nreturn [\n  { json: { ...original, run: 1 } },\n  { json: { ...original, run: 2 } },\n];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "80e8b545-92ba-493d-a3ce-55a2ee886b6b",
      "name": "ループ",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -992,
        656
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "a35010e4-19cc-44f9-b918-7ed8e5504c80",
      "name": "付箋16",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1744,
        -128
      ],
      "parameters": {
        "width": 2032,
        "content": "## 📬 Need Help or Want to Customize This?\n📧 [robert@ynteractive.com](mailto:robert@ynteractive.com)  \n🔗 [LinkedIn](https://www.linkedin.com/in/robert-breen-29429625/)"
      },
      "typeVersion": 1
    },
    {
      "id": "422257a0-78a4-4d23-ab5b-3f06859de59c",
      "name": "付箋",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1744,
        48
      ],
      "parameters": {
        "color": 5,
        "width": 600,
        "height": 860,
        "content": "\n#### Node Configuration Details:\n\n##### Start Workflow (Manual Trigger)\n- No configuration needed\n- Used to manually start the workflow\n\n##### Get Prompt from Google Sheet (Google Sheets)\n- **Document ID**: Your Google Sheet ID (from Step 3)\n- **Sheet Name**: `Sheet1` (or your sheet name)\n- **Operation**: Read\n- **Credentials**: Select your \"Google Sheets account\"\n\n##### Double Output (Code Node)\n- **Purpose**: Creates multiple variations of each prompt\n- **JavaScript Code**:\n```javascript\nconst original = items[0].json;\n\nreturn [\n  { json: { ...original, run: 1 } },\n  { json: { ...original, run: 2 } },\n];\n```\nGoogle sheet to copy: https://docs.google.com/spreadsheets/d/1_u9IxEZINcwKQB15Rfx7C1hM71zeDST58Fz3nRHTCUY/edit?usp=sharing"
      },
      "typeVersion": 1
    },
    {
      "id": "a7497ee2-35ea-417d-a36d-70c5680f46ef",
      "name": "付箋1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1120,
        48
      ],
      "parameters": {
        "color": 6,
        "width": 1400,
        "height": 860,
        "content": "##### Create Image (HTTP Request)\n- **Method**: `POST`\n- **URL**: `https://api.freepik.com/v1/ai/text-to-image`\n- **Authentication**: Generic → HTTP Header Auth\n- **Credentials**: Select your \"Header Auth account\"\n- **Send Body**: `true`\n- **Body Parameters**:\n  - **Name**: `prompt`\n  - **Value**: `={{ $json.Prompt }}`\n\n##### Split Responses (Split Out)\n- **Field to Split Out**: `data`\n- **Purpose**: Separates multiple images from API response\n\n##### Convert to File (Convert to File)\n- **Operation**: `toBinary`\n- **Source Property**: `base64`\n- **Purpose**: Converts base64 image data to file format\n\n##### Upload Image to Google Drive (Google Drive)\n- **Operation**: Upload\n- **Name**: `=Image - {{ $('Get Prompt from Google Sheet').item.json.Name }} - {{ $('Double Output').item.json.run }}`\n- **Drive ID**: `My Drive`\n- **Folder ID**: Your Google Drive folder ID (from Step 4)\n- **Credentials**: Select your \"Google Drive account\""
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "80e8b545-92ba-493d-a3ce-55a2ee886b6b": {
      "main": [
        [],
        [
          {
            "node": "b0070e99-0397-4ead-a28e-9457c1fa8770",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b0070e99-0397-4ead-a28e-9457c1fa8770": {
      "main": [
        [
          {
            "node": "c5880a1b-d473-4218-a313-465112afb793",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "46ebdba5-bacd-4726-8837-0ebf6a45c25d": {
      "main": [
        [
          {
            "node": "80e8b545-92ba-493d-a3ce-55a2ee886b6b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1c13de38-0a50-44a4-b7b1-6d6ff00757d7": {
      "main": [
        [
          {
            "node": "55e34b0d-31ab-4f88-b5b5-b1f8ea9c819f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cc6edc5b-5b6e-4de9-9437-6fd38c050ff5": {
      "main": [
        [
          {
            "node": "fc353193-177e-4f63-8056-b7e3a7c00dc5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c5880a1b-d473-4218-a313-465112afb793": {
      "main": [
        [
          {
            "node": "cc6edc5b-5b6e-4de9-9437-6fd38c050ff5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "55e34b0d-31ab-4f88-b5b5-b1f8ea9c819f": {
      "main": [
        [
          {
            "node": "46ebdba5-bacd-4726-8837-0ebf6a45c25d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "fc353193-177e-4f63-8056-b7e3a7c00dc5": {
      "main": [
        [
          {
            "node": "80e8b545-92ba-493d-a3ce-55a2ee886b6b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

このワークフローの使い方は?

上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。

このワークフローはどんな場面に適していますか?

中級 - コンテンツ作成, マルチモーダルAI

有料ですか?

このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。

関連ワークフロー

バッチAI動画生成 - Freepik Minimax HailuoとGoogle製品パッケージの統合
AI ビデオのバッチ生成 - Google スイートと統合された Freepik Minimax Hailuo
Code
Wait
Switch
+
Code
Wait
Switch
13 ノードRobert Breen
コンテンツ作成
OpenAI、RunwayML、ElevenLabsを使って無顔の短い動画を自動化
OpenAI、RunwayML、ElevenLabs を使ってアニメ顔の短い動画を自動化:スクリプトからソーシャルメディアへ
Set
Code
Wait
+
Set
Code
Wait
56 ノードLeeWei
コンテンツ作成
WordPressブログの自動化プロフェッショナル版(先端研究)v2.1マーケットプラグイン
GPT-4o、Perplexity AI、そして多言語対応を使ったSEO最適化ブログ作成の自動化
If
Set
Xml
+
If
Set
Xml
125 ノードDaniel Ng
コンテンツ作成
OpenAI、ElevenLabs、Fal.ai を使用した動画・パ odcast・ASM R向けのウイルス性コンテンツ自動作成
OpenAI、ElevenLabs、そして Fal.ai を使って動画、ポッドキャスト、ASMR に向けたウイルスのコンテンツ作成を自動化
Set
Code
Wait
+
Set
Code
Wait
97 ノードAdam Crafts
コンテンツ作成
私のワークフロー
Apify、GPT-4o、Facebook 広告ライブラリを使用して競合広告の研究と画像生成
Set
Wait
Limit
+
Set
Wait
Limit
32 ノードNick Saraev
コンテンツ作成
Apify、GPT-4、Google Driveを使用して、競合からAI Facebook広告のバリエーションを生成
Apify、GPT-4、Google Driveを使用して競合他社のAI Facebook広告バリエーションを生成
Set
Wait
Limit
+
Set
Wait
Limit
29 ノードElectrabot
コンテンツ作成
ワークフロー情報
難易度
中級
ノード数11
カテゴリー2
ノードタイプ9
難易度説明

経験者向け、6-15ノードの中程度の複雑さのワークフロー

作成者
Robert Breen

Robert Breen

@rbreen

Professional services consultant with over 10 years of experience solving complex business problems across industries. I specialize in n8n and process automation—designing custom workflows that integrate tools like Google Calendar, Airtable, GPT, and internal systems. Whether you need to automate scheduling, sync data, or streamline operations, I build solutions that save time and drive results.

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34