AutomationFlowsAI & RAG › Create AI Product Images and Marketing Videos

Create AI Product Images and Marketing Videos

Original n8n title: Create AI Product Images and Marketing Videos with Nanobanana Pro, Veo 3.1 and Blotato

ByDr. Firas @drfiras on n8n.io

This workflow is designed for: Content creators and marketers E-commerce and product-based businesses Agencies producing social media visuals and videos Automation builders looking for AI-powered creative pipelines

Cron / scheduled trigger★★★★★ complexityAI-powered76 nodesHTTP RequestEdit ImageGoogle DriveGoogle Sheets@Blotato/N8N Nodes BlotatoForm TriggerOpenAIOutput Parser Structured
AI & RAG Trigger: Cron / scheduled Nodes: 76 Complexity: ★★★★★ AI nodes: yes Added:

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

This workflow follows the Agent → Form Trigger 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": "ZtcCMj69WUhc1BHs",
  "name": "Generate product images with NanoBanana Pro to Veo videos and Blotato - vide 2 ok",
  "tags": [],
  "nodes": [
    {
      "id": "79e2d979-dfdf-423c-a120-640fa7a9ec64",
      "name": "Set Image URL",
      "type": "n8n-nodes-base.set",
      "position": [
        496,
        1664
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "id-1",
              "name": "image_url",
              "type": "string",
              "value": "={{ $json.image_contactsheet }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "7b222802-5e00-45ee-936f-3af163a3caac",
      "name": "Download Image",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        704,
        1664
      ],
      "parameters": {
        "url": "={{ $json.image_url }}",
        "options": {
          "response": {
            "response": {
              "responseFormat": "file"
            }
          }
        }
      },
      "typeVersion": 4.3
    },
    {
      "id": "475a5f1d-8050-48c3-9a55-03de1d32630a",
      "name": "Crop Top Left",
      "type": "n8n-nodes-base.editImage",
      "position": [
        1456,
        1184
      ],
      "parameters": {
        "width": "={{ Math.floor($json.size.width / 3) }}",
        "height": "={{ Math.floor($json.size.height / 2) }}",
        "options": {},
        "operation": "crop"
      },
      "typeVersion": 1
    },
    {
      "id": "9c3b49b8-3d1b-42c3-802c-2c9997be6321",
      "name": "Crop Top Center",
      "type": "n8n-nodes-base.editImage",
      "position": [
        1456,
        1376
      ],
      "parameters": {
        "width": "={{ Math.floor($json.size.width / 3) }}\n",
        "height": "={{ Math.floor($json.size.height / 2) }}\n",
        "options": {},
        "operation": "crop",
        "positionX": "={{ Math.floor($json.size.width / 3) }}\n"
      },
      "typeVersion": 1
    },
    {
      "id": "538e6079-1b0a-4ad2-9184-bb5e2ddd0002",
      "name": "Crop Top Right",
      "type": "n8n-nodes-base.editImage",
      "position": [
        1456,
        1568
      ],
      "parameters": {
        "width": "={{ Math.floor($json.size.width / 3) }}\n",
        "height": "={{ Math.floor($json.size.height / 2) }}\n",
        "options": {},
        "operation": "crop",
        "positionX": "={{ Math.floor($json.size.width * 2 / 3) }}\n"
      },
      "typeVersion": 1
    },
    {
      "id": "f7e83e97-b6d8-4147-b57f-8d4eeaf4d0ff",
      "name": "Crop Bottom Left",
      "type": "n8n-nodes-base.editImage",
      "position": [
        1456,
        1760
      ],
      "parameters": {
        "width": "={{ Math.floor($json.size.width / 3) }}\n",
        "height": "={{ Math.floor($json.size.height / 2) }}\n",
        "options": {},
        "operation": "crop",
        "positionY": "={{ Math.floor($json.size.height / 2) }}\n"
      },
      "typeVersion": 1
    },
    {
      "id": "6f21457a-f703-4cb9-a15a-71fc4c05bb7a",
      "name": "Crop Bottom Center",
      "type": "n8n-nodes-base.editImage",
      "position": [
        1456,
        1952
      ],
      "parameters": {
        "width": "={{ Math.floor($json.size.width / 3) }}\n",
        "height": "={{ Math.floor($json.size.height / 2) }}\n",
        "options": {},
        "operation": "crop",
        "positionX": "={{ Math.floor($json.size.width / 3) }}\n",
        "positionY": "={{ Math.floor($json.size.height / 2) }}\n"
      },
      "typeVersion": 1
    },
    {
      "id": "6230b210-3637-4c9d-ba62-1d70ce6aa977",
      "name": "Crop Bottom Right",
      "type": "n8n-nodes-base.editImage",
      "position": [
        1456,
        2144
      ],
      "parameters": {
        "width": "={{ Math.floor($json.size.width / 3) }}\n",
        "height": "={{ Math.floor($json.size.height / 2) }}\n",
        "options": {},
        "operation": "crop",
        "positionX": "={{ Math.floor($json.size.width * 2 / 3) }}\n",
        "positionY": "={{ Math.floor($json.size.height / 2) }}\n"
      },
      "typeVersion": 1
    },
    {
      "id": "d6b15a51-e5f7-460f-a5ec-3e96ae089ab6",
      "name": "Upload to Google Drive",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1744,
        1184
      ],
      "parameters": {
        "name": "={{ \n  \"image_top_left_\" +\n  new Date().toISOString()\n    .slice(0,19)\n    .replace(\"T\", \"_\")\n    .replace(/:/g, \"-\")\n}}.png",
        "driveId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google DRIVE Document ID___>"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "="
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "5e713b2d-6756-43c2-8c55-7dfa26797ea1",
      "name": "Edit Image",
      "type": "n8n-nodes-base.editImage",
      "position": [
        1008,
        1664
      ],
      "parameters": {
        "operation": "information"
      },
      "typeVersion": 1
    },
    {
      "id": "1feb8bed-9156-460a-91f0-40e0968fa77b",
      "name": "Upload to Google Drive1",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1744,
        1376
      ],
      "parameters": {
        "name": "={{ \n  \"image_top_center_\" +\n  new Date().toISOString()\n    .slice(0,19)\n    .replace(\"T\", \"_\")\n    .replace(/:/g, \"-\")\n}}.png",
        "driveId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google DRIVE Document ID___>"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "="
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "fc3cc7b3-9f4a-44a5-9dba-00e115b750d9",
      "name": "Upload to Google Drive2",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1744,
        1568
      ],
      "parameters": {
        "name": "={{ \n  \"image_top_right_\" +\n  new Date().toISOString()\n    .slice(0,19)\n    .replace(\"T\", \"_\")\n    .replace(/:/g, \"-\")\n}}.png",
        "driveId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google DRIVE Document ID___>"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google DRIVE Document ID___>"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "314f4ca9-10a2-4110-8b4c-8ef426db8ca8",
      "name": "Upload to Google Drive3",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1744,
        1760
      ],
      "parameters": {
        "name": "={{ \n  \"image_bottom_left_\" +\n  new Date().toISOString()\n    .slice(0,19)\n    .replace(\"T\", \"_\")\n    .replace(/:/g, \"-\")\n}}.png",
        "driveId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google DRIVE Document ID___>"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "="
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "bde757be-c869-42ab-b4a5-ffc0b58f518f",
      "name": "Upload to Google Drive4",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1744,
        1952
      ],
      "parameters": {
        "name": "={{ \n  \"image_bottom_center_\" +\n  new Date().toISOString()\n    .slice(0,19)\n    .replace(\"T\", \"_\")\n    .replace(/:/g, \"-\")\n}}.png",
        "driveId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google DRIVE Document ID___>"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "="
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "3e24fa2c-0e84-49f4-acd8-8b40ce8d56d5",
      "name": "Upload to Google Drive5",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        1744,
        2144
      ],
      "parameters": {
        "name": "={{ \n  \"image_bottom_right_\" +\n  new Date().toISOString()\n    .slice(0,19)\n    .replace(\"T\", \"_\")\n    .replace(/:/g, \"-\")\n}}.png",
        "driveId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google DRIVE Document ID___>"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "id",
          "value": "="
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "e218c4bf-7cc4-4a24-b787-d99ad4961f49",
      "name": "Update url image_top_left",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1952,
        1184
      ],
      "parameters": {
        "columns": {
          "value": {
            "new_image_1": "={{ $json.webContentLink }}",
            "image_contactsheet": "={{ $('Set Image URL').first().json.image_url }}"
          },
          "schema": [
            {
              "id": "status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "description_all",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "description_all",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_nanobanana",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_nanobanana",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_contactsheet",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "image_contactsheet",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_1",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "new_image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "image_contactsheet"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Sheet Tab Name__>"
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google Sheets Document ID__>"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "37cca6f3-f484-4cf6-9cfa-fbe3880d26da",
      "name": "Update url image_top_center",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1952,
        1376
      ],
      "parameters": {
        "columns": {
          "value": {
            "new_image_2": "={{ $json.webContentLink }}",
            "image_contactsheet": "={{ $('Set Image URL').first().json.image_url }}"
          },
          "schema": [
            {
              "id": "status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "description_all",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "description_all",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_nanobanana",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_nanobanana",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_contactsheet",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "image_contactsheet",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_2",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "new_image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "image_contactsheet"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Sheet Tab Name__>"
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google Sheets Document ID__>"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "925c029f-6a93-4c9c-bf04-4596dea35842",
      "name": "Update url image_top_right",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1952,
        1568
      ],
      "parameters": {
        "columns": {
          "value": {
            "new_image_3": "={{ $json.webContentLink }}",
            "image_contactsheet": "={{ $('Set Image URL').first().json.image_url }}"
          },
          "schema": [
            {
              "id": "status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "description_all",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "description_all",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_nanobanana",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_nanobanana",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_contactsheet",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "image_contactsheet",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_3",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "new_image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "image_contactsheet"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Sheet Tab Name__>"
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google Sheets Document ID__>"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "692d6144-0031-464e-90af-d2701cbb58b6",
      "name": "Update url image_bottom_left",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1952,
        1760
      ],
      "parameters": {
        "columns": {
          "value": {
            "new_image_4": "={{ $json.webContentLink }}",
            "image_contactsheet": "={{ $('Set Image URL').first().json.image_url }}"
          },
          "schema": [
            {
              "id": "status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "description_all",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "description_all",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_nanobanana",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_nanobanana",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_contactsheet",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "image_contactsheet",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_4",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "new_image_4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "image_contactsheet"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Sheet Tab Name__>"
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google Sheets Document ID__>"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "3fdea09a-5260-4342-a878-7bd99594933f",
      "name": "Update url image_bottom_center",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1952,
        1952
      ],
      "parameters": {
        "columns": {
          "value": {
            "new_image_5": "={{ $json.webContentLink }}",
            "image_contactsheet": "={{ $('Set Image URL').first().json.image_url }}"
          },
          "schema": [
            {
              "id": "status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "description_all",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "description_all",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_nanobanana",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_nanobanana",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_contactsheet",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "image_contactsheet",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_5",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "new_image_5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "image_contactsheet"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Sheet Tab Name__>"
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google Sheets Document ID__>"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "4bff23d7-e944-4aff-95bd-b1911aa535fc",
      "name": "Update url image_bottom_right",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1952,
        2144
      ],
      "parameters": {
        "columns": {
          "value": {
            "new_image_6": "={{ $json.webContentLink }}",
            "image_contactsheet": "={{ $('Set Image URL').first().json.image_url }}"
          },
          "schema": [
            {
              "id": "status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "description_all",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "description_all",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_nanobanana",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_nanobanana",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_contactsheet",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "image_contactsheet",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_6",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "new_image_6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "image_contactsheet"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Sheet Tab Name__>"
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google Sheets Document ID__>"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "067f6811-230d-4723-ac2d-7575f9898241",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        80,
        1664
      ],
      "parameters": {
        "rule": {
          "interval": [
            {}
          ]
        }
      },
      "typeVersion": 1.3
    },
    {
      "id": "3e0483ab-180c-4d45-a05f-2dc852ecce66",
      "name": "Merge1",
      "type": "n8n-nodes-base.merge",
      "position": [
        2240,
        1264
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.2
    },
    {
      "id": "d39d26a4-3103-429b-aab5-0922cfdefa2f",
      "name": "Veo Generation",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2528,
        1264
      ],
      "parameters": {
        "url": "https://fal.run/fal-ai/veo3.1/first-last-frame-to-video",
        "method": "POST",
        "options": {
          "timeout": 600000,
          "response": {
            "response": {
              "responseFormat": "json"
            }
          }
        },
        "jsonBody": "={\n  \"prompt\": \"The camera very slowly and smoothly lowers on a boom. The subject barely moves, and is extremely deliberate and thoughtful in movement.\",\n  \"first_frame_url\": \"{{ $json.new_image_1 }}\",\n  \"last_frame_url\": \"{{ $json.new_image_2 }}\",\n  \"aspect_ratio\": \"auto\",\n  \"duration\": \"4s\",\n  \"resolution\": \"720p\",\n  \"generate_audio\": false,\n  \"auto_fix\": true\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "=<__PLACEHOLDER_VALUE__fal Key__>"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "3e558904-7e9f-4c6b-b3b0-397aa1e55025",
      "name": "Merge2",
      "type": "n8n-nodes-base.merge",
      "position": [
        2240,
        1472
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.2
    },
    {
      "id": "bfe0e601-96bd-48e0-ae49-9079470eda73",
      "name": "Veo Generation1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2528,
        1472
      ],
      "parameters": {
        "url": "https://fal.run/fal-ai/veo3.1/first-last-frame-to-video",
        "method": "POST",
        "options": {
          "timeout": 600000,
          "response": {
            "response": {
              "responseFormat": "json"
            }
          }
        },
        "jsonBody": "={\n  \"prompt\": \"The camera very slowly and smoothly lowers on a boom. The subject barely moves, and is extremely deliberate and thoughtful in movement. Audio: soft cinematic ambient music, very subtle, calm pads, no vocals, low volume. Add gentle room tone.\",\n  \"first_frame_url\": \"{{ $json.new_image_2 }}\",\n  \"last_frame_url\": \"{{ $json.new_image_3 }}\",\n  \"aspect_ratio\": \"auto\",\n  \"duration\": \"4s\",\n  \"resolution\": \"720p\",\n  \"generate_audio\": false,\n  \"auto_fix\": true\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "=<__PLACEHOLDER_VALUE__fal Key__>"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "70ecd07d-93fc-4204-b9fe-78ca46134147",
      "name": "Merge3",
      "type": "n8n-nodes-base.merge",
      "position": [
        2240,
        1664
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.2
    },
    {
      "id": "9c72142f-e781-418c-9479-7e2445e4ef8c",
      "name": "Veo Generation2",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2528,
        1664
      ],
      "parameters": {
        "url": "https://fal.run/fal-ai/veo3.1/first-last-frame-to-video",
        "method": "POST",
        "options": {
          "timeout": 600000,
          "response": {
            "response": {
              "responseFormat": "json"
            }
          }
        },
        "jsonBody": "={\n  \"prompt\": \"The camera very slowly and smoothly lowers on a boom. The subject barely moves, and is extremely deliberate and thoughtful in movement.\",\n  \"first_frame_url\": \"{{ $json.new_image_3 }}\",\n  \"last_frame_url\": \"{{ $json.new_image_4 }}\",\n  \"aspect_ratio\": \"auto\",\n  \"duration\": \"4s\",\n  \"resolution\": \"720p\",\n  \"generate_audio\": false,\n  \"auto_fix\": true\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "=<__PLACEHOLDER_VALUE__fal Key__>"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "18bcc8ec-85f3-4f1b-b53e-1ad1005a01f8",
      "name": "Merge4",
      "type": "n8n-nodes-base.merge",
      "position": [
        2240,
        1872
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.2
    },
    {
      "id": "ce7d1299-3d78-41d7-8883-e433aecdd710",
      "name": "Veo Generation3",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2528,
        1872
      ],
      "parameters": {
        "url": "https://fal.run/fal-ai/veo3.1/first-last-frame-to-video",
        "method": "POST",
        "options": {
          "timeout": 600000,
          "response": {
            "response": {
              "responseFormat": "json"
            }
          }
        },
        "jsonBody": "={\n  \"prompt\": \"The camera very slowly and smoothly lowers on a boom. The subject barely moves, and is extremely deliberate and thoughtful in movement.\",\n  \"first_frame_url\": \"{{ $json.new_image_4 }}\",\n  \"last_frame_url\": \"{{ $json.new_image_5 }}\",\n  \"aspect_ratio\": \"auto\",\n  \"duration\": \"4s\",\n  \"resolution\": \"720p\",\n  \"generate_audio\": false,\n  \"auto_fix\": true\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "=<__PLACEHOLDER_VALUE__fal Key__>"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "fef23731-0f15-4680-915c-13228b23148e",
      "name": "Merge5",
      "type": "n8n-nodes-base.merge",
      "position": [
        2240,
        2080
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.2
    },
    {
      "id": "87840840-ac7e-4877-b376-c7211793f427",
      "name": "Veo Generation4",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2528,
        2080
      ],
      "parameters": {
        "url": "https://fal.run/fal-ai/veo3.1/first-last-frame-to-video",
        "method": "POST",
        "options": {
          "timeout": 600000,
          "response": {
            "response": {
              "responseFormat": "json"
            }
          }
        },
        "jsonBody": "={\n  \"prompt\": \"The camera very slowly and smoothly lowers on a boom. The subject barely moves, and is extremely deliberate and thoughtful in movement.\",\n  \"first_frame_url\": \"{{ $json.new_image_5 }}\",\n  \"last_frame_url\": \"{{ $json.new_image_6 }}\",\n  \"aspect_ratio\": \"auto\",\n  \"duration\": \"4s\",\n  \"resolution\": \"720p\",\n  \"generate_audio\": false,\n  \"auto_fix\": true\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "=<__PLACEHOLDER_VALUE__fal Key__>"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "7d98612b-7643-46b4-abff-8e2f94f1640b",
      "name": "Update video 2",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3072,
        1472
      ],
      "parameters": {
        "columns": {
          "value": {
            "video_2": "={{ $json.video.url }}",
            "image_contactsheet": "={{ $('Set Image URL').first().json.image_url }}"
          },
          "schema": [
            {
              "id": "status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "description_all",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "description_all",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_nanobanana",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_nanobanana",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_contactsheet",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "image_contactsheet",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_2",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "new_image_6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "new_image_6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "video_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "video_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "video_2",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "video_2",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "video_3",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "video_3",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "video_4",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "video_4",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "video_5",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "video_5",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "video_6",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "video_6",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "row_number",
              "type": "number",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "row_number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "image_contactsheet"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "update",
        "sheetName": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Sheet Tab Name__>"
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": "=<__PLACEHOLDER_VALUE__Google Sheets Document ID__>"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "6a3e34fe-2697-4175-8bb9-6f3e93f7e6d4",
      "name": "Update video 5",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3072,
        2080
      ],
      "parameters": {
        "columns": {
          "value": {
            "video_5": "={{ $json.video.url }}",
            "image_contactsheet": "={{ $('Set Image URL').first().json.image_url }}"
          },
          "schema": [
            {
              "id": "status",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "image_1",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "image_1",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

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

How this works

This workflow generates professional product images and marketing videos for content creators, e-commerce teams and agencies. It takes a single product image, creates multiple cropped versions using AI editing tools, then produces short promotional videos with Nanobanana Pro and Veo 3.1 before posting them directly to social platforms through Blotato. The core value is turning one asset into a full set of ready-to-use visuals without manual editing or separate tools.

Use it when you need consistent product visuals on a schedule, such as weekly social campaigns or new product launches. It suits teams that already have a product image ready but skips setups requiring real-time customer uploads or complex brand guidelines. Variations include changing the crop ratios or video length to fit different platforms.

About this workflow

This workflow is designed for: Content creators and marketers E-commerce and product-based businesses Agencies producing social media visuals and videos Automation builders looking for AI-powered creative pipelines

Source: https://n8n.io/workflows/12462/ — 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 n8n automation workflow automates the creation, scripting, production, and posting of YouTube videos. It leverages AI (OpenAI), image generation (PIAPI), video rendering (Shotstack), and platform

Agent, OpenAI Chat, Airtable Tool +7
AI & RAG

This n8n workflow turns a script and character/setting description from Google Sheets into a complete stitched UGC-style video ad, fully automated from intake to final delivery.

Google Sheets, HTTP Request, OpenRouter Chat +7
AI & RAG

This workflow automates the creation, rendering, approval, and posting of TikTok-style POV (Point of View) videos to Instagram, with cross-posting to Facebook and YouTube. It eliminates manual video p

OpenAI Chat, Output Parser Item List, HTTP Request +10
AI & RAG

YOUTUBE GUIDE 📣 This template generates up to 2,000 AI-based stock images per day for under $4. It includes prompt generation, image creation, metadata enrichment, upload to Google Drive, and error lo

Google Sheets, HTTP Request, Google Drive +6
AI & RAG

Content marketers and SEO specialists who need to generate multiple SEO-optimized articles targeting keyword variations. Ideal for affiliate sites, niche blogs, or service-based businesses creating lo

Agent, Memory Buffer Window, OpenAI Chat +7