AutomationFlowsSocial Media › Automated Video Analysis with Gemini

Automated Video Analysis with Gemini

Original n8n title: Gemini - Video Analysis (new)

Gemini - Video Analysis (NEW). Uses httpRequest, stickyNote, sort, limit. Scheduled trigger; 29 nodes.

Cron / scheduled trigger★★★★☆ complexity29 nodesHTTP RequestAirtableExecute Workflow Trigger
Social Media Trigger: Cron / scheduled Nodes: 29 Complexity: ★★★★☆ Added:

This workflow follows the Airtable → HTTP Request 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
{
  "name": "Gemini - Video Analysis (NEW)",
  "nodes": [
    {
      "parameters": {
        "amount": 60
      },
      "type": "n8n-nodes-base.wait",
      "typeVersion": 1.1,
      "position": [
        1260,
        0
      ],
      "id": "7594b4b8-506e-4f87-b921-ad376c9b85f2",
      "name": "Wait"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "a21fe2d1-533b-4f09-94aa-9312c3dd05b8",
              "name": "prompt",
              "value": "=Analyze reels: 1. How it starts  2. How it ends 3. What is going on video.  For us important to understand main params of the video to be able reproduct it. Params: 1. Background 2. Pose 3. Text 4. Clothes 5. Context 6. People/participants/roles  Example of result: Example 1: - Girl in the frame in evening dress - Party - Text: \u201cLet's already admit that the most important ponte of a man is a gorgeous wife by his side\u201d - Formatting: White text in the center on the background of a dynamic frame.  Example 2: - Behind-the-scenes moments from the shooting of the video - A girl with a beautiful figure, large breasts in a swimsuit and bathing skirt - Text below \u201cWhen at 35 you explain to your man that you need a hand in the frame for the strongest part\u201d.",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        1420,
        0
      ],
      "id": "0a9e1ed8-2fbe-421a-89a1-663709cbcaaf",
      "name": "Set Prompt"
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://generativelanguage.googleapis.com/upload/v1beta/files",
        "sendQuery": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "key",
              "value": "<your_token_here>"
            }
          ]
        },
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "X-Goog-Upload-Protocol",
              "value": "resumable"
            },
            {
              "name": "X-Goog-Upload-Command",
              "value": "start"
            },
            {
              "name": "X-Goog-Upload-Header-Content-Length",
              "value": "={{ $json.Video[0].size }}"
            },
            {
              "name": "X-Goog-Upload-Header-Content-Type",
              "value": "={{ $json.Video[0].type }}"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={\n\"file\": {\n\"display_name\": \"{{ $json.Video[0].filename }}\"\n}\n}",
        "options": {
          "response": {
            "response": {
              "fullResponse": true
            }
          }
        }
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        580,
        0
      ],
      "id": "78f145dc-cfd4-41b6-86d0-f1036adb6ef5",
      "name": "Gemini - Generate Upload URL"
    },
    {
      "parameters": {
        "method": "POST",
        "url": "={{ $('Gemini - Generate Upload URL').item.json.headers['x-goog-upload-url'] }}",
        "sendQuery": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "key",
              "value": "<your_token_here>"
            }
          ]
        },
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Length",
              "value": "={{ $('Get Video').item.json.Video[0].size }}"
            },
            {
              "name": "X-Goog-Upload-Offset",
              "value": "0"
            },
            {
              "name": "X-Goog-Upload-Command",
              "value": "upload, finalize"
            }
          ]
        },
        "sendBody": true,
        "contentType": "binaryData",
        "inputDataFieldName": "data",
        "options": {
          "response": {}
        }
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        920,
        0
      ],
      "id": "d93b28b4-2dec-45e8-87a3-81e6b5392885",
      "name": "Gemini - Upload File"
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-pro:generateContent",
        "sendQuery": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "key",
              "value": "<your_token_here>"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={\n   \"contents\": [\n      {\n         \"parts\": [\n            {\n               \"text\": \"{{ $json.prompt }}\"\n            },\n            {\n               \"file_data\": {\n                  \"mime_type\": \"{{ $('Save Values').item.json.mimeType }}\",\n                  \"file_uri\": \"{{ $('Save Values').item.json.gemini_file_url }}\"\n               }\n            }\n         ]\n      }\n   ]\n}\n",
        "options": {
          "response": {}
        }
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1620,
        0
      ],
      "id": "a5092a20-d120-47a3-a139-4b7698d4ccba",
      "name": "Gemini - Ask Questions"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "4fb7b732-17f9-41a2-986d-5d62b1331242",
              "name": "gemini_file_url",
              "value": "={{ $json.file.uri }}",
              "type": "string"
            },
            {
              "id": "5f3018b4-571f-433c-a07b-2fb86f63b9b6",
              "name": "mimeType",
              "value": "={{ $json.file.mimeType }}",
              "type": "string"
            },
            {
              "id": "c5532f11-ec31-49f8-aa26-7f42b7d24fa4",
              "name": "airtable_rec_id",
              "value": "={{ $('Get Video').item.json.id }}",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        1100,
        0
      ],
      "id": "300d5f57-27ac-4cc5-95ba-df5086a9a57b",
      "name": "Save Values"
    },
    {
      "parameters": {
        "content": "## Scenario 1",
        "height": 380,
        "width": 2180
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        -800
      ],
      "typeVersion": 1,
      "id": "e78d9080-0115-47db-b3c0-8ef8fb5944b1",
      "name": "Sticky Note1"
    },
    {
      "parameters": {
        "method": "POST",
        "url": "https://api.apify.com/v2/acts/apify~instagram-scraper/run-sync-get-dataset-items",
        "sendQuery": true,
        "queryParameters": {
          "parameters": [
            {
              "name": "token",
              "value": "<your_token_here>"
            }
          ]
        },
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={\n    \"addParentData\": false,\n    \"directUrls\": [\n        \"https://www.instagram.com/{{ $json['Instagram Username'] }}/\"\n    ],\n    \"enhanceUserSearchWithFacebookPage\": false,\n    \"isUserReelFeedURL\": false,\n    \"isUserTaggedFeedURL\": false,\n    \"onlyPostsNewerThan\": \"{{ new Date().toISOString().slice(0, 10).replace(/-\\d+$/, '-01') }}\",\n    \"resultsLimit\": 20,\n    \"resultsType\": \"stories\"\n}",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        760,
        -700
      ],
      "id": "e2dd16b8-e565-4010-a274-a6b4aabcd35a",
      "name": "Apify - Fetch Reels"
    },
    {
      "parameters": {
        "sortFieldsUi": {
          "sortField": [
            {
              "fieldName": "views",
              "order": "descending"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.sort",
      "typeVersion": 1,
      "position": [
        1180,
        -700
      ],
      "id": "b29c8e1f-0b36-4e8b-bf07-dd9c04f24a66",
      "name": "Sort"
    },
    {
      "parameters": {},
      "type": "n8n-nodes-base.limit",
      "typeVersion": 1,
      "position": [
        1380,
        -700
      ],
      "id": "b5aa98b2-22f1-474d-92b0-892c8b227322",
      "name": "Limit"
    },
    {
      "parameters": {
        "mode": "raw",
        "jsonOutput": "={\n  \"url\": {{ JSON.stringify($json.videoUrl) }}\n,\n  \"views\": {{ $json.videoViewCount }},\n\"caption\": {{ JSON.stringify($json.caption) }}\n,\n\"creator\": \"{{ $('Loop Over Items').item.json.Name }}\"\n}",
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        960,
        -700
      ],
      "id": "bc40f3f8-58cd-4790-975f-2f6e9761ef54",
      "name": "Save Fields"
    },
    {
      "parameters": {
        "options": {}
      },
      "type": "n8n-nodes-base.splitInBatches",
      "typeVersion": 3,
      "position": [
        500,
        -700
      ],
      "id": "0623571f-cef0-4a1d-9bed-a397ed264ac4",
      "name": "Loop Over Items"
    },
    {
      "parameters": {
        "workflowId": {
          "__rl": true,
          "value": "6gkO35O8e27oFfyq",
          "mode": "list",
          "cachedResultName": "Gemini - Video Analysis 2"
        },
        "options": {}
      },
      "type": "n8n-nodes-base.executeWorkflow",
      "typeVersion": 1.1,
      "position": [
        1860,
        -700
      ],
      "id": "7d675702-a9c4-4440-b44d-30ee8e36d206",
      "name": "Execute Workflow1"
    },
    {
      "parameters": {
        "url": "={{ $('Get Video').item.json.Video[0].url }}",
        "options": {
          "response": {
            "response": {
              "responseFormat": "file"
            }
          }
        }
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        760,
        0
      ],
      "id": "30692806-c116-46de-8407-66ac94470cc4",
      "name": "Download File"
    },
    {
      "parameters": {
        "operation": "create",
        "base": {
          "__rl": true,
          "value": "appndgSF4faN4jPXi",
          "mode": "list",
          "cachedResultName": "Philipp's Base",
          "cachedResultUrl": "https://airtable.com/appndgSF4faN4jPXi"
        },
        "table": {
          "__rl": true,
          "value": "tbldgihe8Tx1DsAWq",
          "mode": "list",
          "cachedResultName": "Videos",
          "cachedResultUrl": "https://airtable.com/appndgSF4faN4jPXi/tbldgihe8Tx1DsAWq"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "Video": "={{ [ {\"url\":$json.url} ] }}",
            "Views": "={{ $json.views }}",
            "Creator": "={{ [$json.creator] }}",
            "Caption": "={{ $json.caption }}"
          },
          "matchingColumns": [
            "Name"
          ],
          "schema": [
            {
              "id": "Caption",
              "displayName": "Caption",
              "required": false,
              "defaultMatch": false,
              "canBeUsedToMatch": true,
              "display": true,
              "type": "string",
              "readOnly": false,
              "removed": false
            },
            {
              "id": "Video",
              "displayName": "Video",
              "required": false,
              "defaultMatch": false,
              "canBeUsedToMatch": true,
              "display": true,
              "type": "array",
              "readOnly": false,
              "removed": false
            },
            {
              "id": "Guideline",
              "displayName": "Guideline",
              "required": false,
              "defaultMatch": false,
              "canBeUsedToMatch": true,
              "display": true,
              "type": "string",
              "readOnly": false,
              "removed": true
            },
            {
              "id": "Creation Date",
              "displayName": "Creation Date",
              "required": false,
              "defaultMatch": false,
              "canBeUsedToMatch": true,
              "display": true,
              "type": "string",
              "readOnly": true,
              "removed": false
            },
            {
              "id": "Creator",
              "displayName": "Creator",
              "required": false,
              "defaultMatch": false,
              "canBeUsedToMatch": true,
              "display": true,
              "type": "array",
              "readOnly": false,
              "removed": false
            },
            {
              "id": "Views",
              "displayName": "Views",
              "required": false,
              "defaultMatch": false,
              "canBeUsedToMatch": true,
              "display": true,
              "type": "number",
              "readOnly": false,
              "removed": false
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {
          "typecast": true
        }
      },
      "type": "n8n-nodes-base.airtable",
      "typeVersion": 2.1,
      "position": [
        1640,
        -700
      ],
      "id": "0d130bb6-c445-4b7e-8628-442b26d4654a",
      "name": "Create Video",
      "credentials": {
        "airtableTokenApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "base": {
          "__rl": true,
          "value": "appndgSF4faN4jPXi",
          "mode": "list",
          "cachedResultName": "Philipp's Base",
          "cachedResultUrl": "https://airtable.com/appndgSF4faN4jPXi"
        },
        "table": {
          "__rl": true,
          "value": "tbldgihe8Tx1DsAWq",
          "mode": "list",
          "cachedResultName": "Videos",
          "cachedResultUrl": "https://airtable.com/appndgSF4faN4jPXi/tbldgihe8Tx1DsAWq"
        },
        "id": "={{ $json.id }}",
        "options": {}
      },
      "type": "n8n-nodes-base.airtable",
      "typeVersion": 2.1,
      "position": [
        380,
        0
      ],
      "id": "c59bbd59-1f64-4606-a074-1303f423408c",
      "name": "Get Video",
      "credentials": {
        "airtableTokenApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "operation": "update",
        "base": {
          "__rl": true,
          "value": "appndgSF4faN4jPXi",
          "mode": "list",
          "cachedResultName": "Philipp's Base",
          "cachedResultUrl": "https://airtable.com/appndgSF4faN4jPXi"
        },
        "table": {
          "__rl": true,
          "value": "tbldgihe8Tx1DsAWq",
          "mode": "list",
          "cachedResultName": "Videos",
          "cachedResultUrl": "https://airtable.com/appndgSF4faN4jPXi/tbldgihe8Tx1DsAWq"
        },
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "id": "={{ $('Get Video').first().json.id }}",
            "Guideline": "={{ $json.candidates[0].content.parts[0].text }}"
          },
          "matchingColumns": [
            "id"
          ],
          "schema": [
            {
              "id": "id",
              "displayName": "id",
              "required": false,
              "defaultMatch": true,
              "display": true,
              "type": "string",
              "readOnly": true,
              "removed": false
            },
            {
              "id": "ID",
              "displayName": "ID",
              "required": false,
              "defaultMatch": false,
              "canBeUsedToMatch": true,
              "display": true,
              "type": "string",
              "readOnly": true,
              "removed": true
            },
            {
              "id": "Video",
              "displayName": "Video",
              "required": false,
              "defaultMatch": false,
              "canBeUsedToMatch": true,
              "display": true,
              "type": "array",
              "readOnly": false,
              "removed": true
            },
            {
              "id": "Guideline",
              "displayName": "Guideline",
              "required": false,
              "defaultMatch": false,
              "canBeUsedToMatch": true,
              "display": true,
              "type": "string",
              "readOnly": false,
              "removed": false
            }
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {}
      },
      "type": "n8n-nodes-base.airtable",
      "typeVersion": 2.1,
      "position": [
        1800,
        0
      ],
      "id": "f588e905-464b-4a24-b8cd-69b6c176b1c8",
      "name": "Set Guideline",
      "credentials": {
        "airtableTokenApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "content": "## Scenario 2",
        "height": 380,
        "width": 2180
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        -120
      ],
      "typeVersion": 1,
      "id": "54d5c8ab-1e69-4c73-a869-8aaccc306fea",
      "name": "Sticky Note"
    },
    {
      "parameters": {
        "operation": "search",
        "base": {
          "__rl": true,
          "value": "appndgSF4faN4jPXi",
          "mode": "list",
          "cachedResultName": "Philipp's Base",
          "cachedResultUrl": "https://airtable.com/appndgSF4faN4jPXi"
        },
        "table": {
          "__rl": true,
          "value": "tbl8uSud7C0kZe3RO",
          "mode": "list",
          "cachedResultName": "Creators",
          "cachedResultUrl": "https://airtable.com/appndgSF4faN4jPXi/tbl8uSud7C0kZe3RO"
        },
        "returnAll": false,
        "limit": null,
        "options": {}
      },
      "type": "n8n-nodes-base.airtable",
      "typeVersion": 2.1,
      "position": [
        280,
        -700
      ],
      "id": "7de49be9-cdcd-41f1-a996-79b31bf795a7",
      "name": "Search Creators",
      "credentials": {
        "airtableTokenApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "months"
            }
          ]
        }
      },
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.2,
      "position": [
        60,
        -700
      ],
      "id": "bdda9fe7-e1a5-4e9e-b562-577b97424152",
      "name": "Schedule Trigger"
    },
    {
      "parameters": {
        "content": "### Replace Apify token",
        "height": 80,
        "width": 220,
        "color": 6
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        700,
        -800
      ],
      "typeVersion": 1,
      "id": "ad77267d-3bba-463a-b9d2-f5aeb444e746",
      "name": "Sticky Note2"
    },
    {
      "parameters": {
        "content": "### Replace Google token",
        "height": 80,
        "width": 200,
        "color": 6
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        520,
        -120
      ],
      "typeVersion": 1,
      "id": "9f444c18-d8b9-4544-9f7e-7ca2a97b4efe",
      "name": "Sticky Note3"
    },
    {
      "parameters": {
        "content": "### Replace Google token",
        "height": 80,
        "width": 200,
        "color": 6
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        880,
        -120
      ],
      "typeVersion": 1,
      "id": "48b0acfb-cb7e-4ea5-b0fa-779a2adaf82a",
      "name": "Sticky Note4"
    },
    {
      "parameters": {
        "content": "### Replace Google token",
        "height": 80,
        "width": 200,
        "color": 6
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1580,
        -120
      ],
      "typeVersion": 1,
      "id": "ce2c2e36-faf2-4b32-a67d-d4229d8de4cf",
      "name": "Sticky Note5"
    },
    {
      "parameters": {
        "content": "### Set own prompt for analysis",
        "height": 80,
        "width": 200,
        "color": 6
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1360,
        -120
      ],
      "typeVersion": 1,
      "id": "0eb22e2b-19ab-4e09-9917-cf6dcff6cc1e",
      "name": "Sticky Note6"
    },
    {
      "parameters": {
        "content": "![5min Logo](https://res.cloudinary.com/de9jgixzm/image/upload/v1739773200/Skool%20Assets/ejm3hqnvhgwpnu2fv92s.png)\n## Copy Viral Reels with Gemini AI\n**Made by [Mark Shcherbakov](https://www.linkedin.com/in/marklowcoding/) from community [5minAI](https://www.skool.com/5minai)**\n\nAnalyzing video performance on Instagram can be tedious and time-consuming, requiring multiple steps and data extraction. This workflow automates the process of fetching, analyzing, and recording insights from Instagram Reels, making it simpler for users to track engagement metrics without manual intervention.\n\nThis workflow integrates several services to analyze Instagram Reels, allowing users to:\n- Automatically fetch recent Reels from specified creators.\n- Analyze the most-watched videos for insights.\n- Store and manage data in Airtable for easy access and reporting.\n\n",
        "height": 497.1532689930921,
        "width": 636.2128494576581,
        "color": 7
      },
      "id": "2ab98afe-0846-4ece-a559-1cbcbfbb7af9",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -780,
        -800
      ],
      "typeVersion": 1
    },
    {
      "parameters": {
        "content": "### Set up steps\n\n1. **Create accounts**:\n   - Set up Airtable, Edify, n8n, and Gemini accounts.\n\n2. **Prepare triggers and modules**:\n   - Replace credentials in each node accordingly.\n\n3. **Configure data flow**:\n   - Ensure modules are set to fetch and analyze the correct data fields as outlined in the guide.",
        "height": 346,
        "width": 280,
        "color": 7
      },
      "id": "0b83903a-c464-4049-8ef4-30976d8d24b5",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -780,
        -280
      ],
      "typeVersion": 1
    },
    {
      "parameters": {
        "content": "### ... or watch set up video [8 min]\n[![Youtube Thumbnail](https://res.cloudinary.com/de9jgixzm/image/upload/v1740390927/Youtube%20Thumbs/Video_21_-_Philipp_Instagram_Blur.png)](https://youtu.be/SQPPM0KLsrM)\n",
        "height": 239.5888196628349,
        "width": 330.5152611046425,
        "color": 7
      },
      "id": "9973661d-d662-4b12-90f2-bf007532a58a",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -480,
        -280
      ],
      "typeVersion": 1
    },
    {
      "parameters": {
        "inputSource": "passthrough"
      },
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "typeVersion": 1.1,
      "position": [
        160,
        0
      ],
      "id": "532e9b78-95de-40ea-ba3e-c7c028f4afa7",
      "name": "When Executed by Another Workflow"
    }
  ],
  "connections": {
    "Wait": {
      "main": [
        [
          {
            "node": "Set Prompt",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Prompt": {
      "main": [
        [
          {
            "node": "Gemini - Ask Questions",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Gemini - Generate Upload URL": {
      "main": [
        [
          {
            "node": "Download File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Gemini - Upload File": {
      "main": [
        [
          {
            "node": "Save Values",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Gemini - Ask Questions": {
      "main": [
        [
          {
            "node": "Set Guideline",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Save Values": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Apify - Fetch Reels": {
      "main": [
        [
          {
            "node": "Save Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Sort": {
      "main": [
        [
          {
            "node": "Limit",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Save Fields": {
      "main": [
        [
          {
            "node": "Sort",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [],
        [
          {
            "node": "Apify - Fetch Reels",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Limit": {
      "main": [
        [
          {
            "node": "Create Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download File": {
      "main": [
        [
          {
            "node": "Gemini - Upload File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Video": {
      "main": [
        [
          {
            "node": "Execute Workflow1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Video": {
      "main": [
        [
          {
            "node": "Gemini - Generate Upload URL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Execute Workflow1": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Search Creators": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Search Creators",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When Executed by Another Workflow": {
      "main": [
        [
          {
            "node": "Get Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "53235d7e-7af6-4796-8eea-c3547a62d54f",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "id": "6gkO35O8e27oFfyq",
  "tags": [
    {
      "createdAt": "2024-11-14T15:30:35.836Z",
      "updatedAt": "2024-11-14T15:30:35.836Z",
      "id": "HrnqkmhNNezXBFbh",
      "name": "N8N Template"
    },
    {
      "createdAt": "2024-12-19T11:10:02.121Z",
      "updatedAt": "2024-12-19T11:10:02.121Z",
      "id": "k7hyOENdPTg0Ehzg",
      "name": "Philipp"
    }
  ]
}

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 automates the analysis of videos, such as Instagram Reels, by leveraging Google's Gemini AI to extract insights like key themes, sentiments, or summaries without manual effort. It's ideal for content creators, marketers, or social media managers who need to process multiple videos efficiently to inform strategy or reporting. The core step involves fetching videos via Apify, uploading them to Gemini through HTTP requests to generate an analysis URL, and then querying the AI for detailed responses, which are saved for further use in tools like Airtable.

Use this workflow for scheduled, batch processing of short-form videos where AI-driven insights add value, such as weekly Reel performance reviews. Avoid it for real-time analysis or non-video content, as the cron trigger and upload process suit periodic tasks better. Common variations include adapting the prompts for specific questions or integrating outputs directly into Airtable bases for automated dashboards.

About this workflow

Gemini - Video Analysis (NEW). Uses httpRequest, stickyNote, sort, limit. Scheduled trigger; 29 nodes.

Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →

More Social Media workflows → · Browse all categories →

Related workflows

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

Social Media

Convert your customer satisfaction into high-converting social media content with this fully automated social proof pipeline. This workflow scans your database for top-tier reviews, generates a brande

N8N Nodes Uploadtourl, Airtable, HTTP Request +1
Social Media

A guide to understand, operate, and extend the workflow.

Airtable, HTTP Request
Social Media

Instagram Follow-up Workflow. Uses airtable, httpRequest. Scheduled trigger; 8 nodes.

Airtable, HTTP Request
Social Media

This n8n template acts as your automated social media data analyst. Instead of manually checking your analytics across different dashboards every week, this workflow scrapes your latest stats, calcula

HTTP Request, YouTube, Airtable +3