AutomationFlowsSocial Media › Download Instagram Videos to Google Drive with Auto-email Delivery

Download Instagram Videos to Google Drive with Auto-email Delivery

BySk developer @skdeveloper on n8n.io

Effortlessly convert Instagram videos to MP4 and automatically store them on Google Drive with a shareable download link sent to the user via email. This n8n workflow uses the Instagram Video Downloader API to automate the process of downloading Instagram videos, uploading them…

Event trigger★★★★☆ complexity15 nodesForm TriggerGoogle DriveHTTP RequestEmail Send
Social Media Trigger: Event Nodes: 15 Complexity: ★★★★☆ Added:

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

This workflow follows the Emailsend → 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
{
  "nodes": [
    {
      "id": "adba156d-f31e-482b-87ee-40800c553e21",
      "name": "n8n Form Trigger",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        1120,
        520
      ],
      "parameters": {
        "options": {},
        "formTitle": "Instagram To Mp4",
        "formFields": {
          "values": [
            {
              "fieldLabel": "url"
            },
            {
              "fieldLabel": "email"
            }
          ]
        },
        "formDescription": "Instagram To Mp4 Downloader"
      },
      "typeVersion": 2.2
    },
    {
      "id": "1db2e5d0-5129-45e7-9a40-3deba9fcaed1",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1040,
        320
      ],
      "parameters": {
        "height": 360,
        "content": "**n8n Form Trigger**  \n   This node captures user input from a web form, specifically the Instagram video URL and the user's email address, to initiate the workflow.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "1375ec94-2db9-408d-a259-3394b40b9dea",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1420,
        320
      ],
      "parameters": {
        "height": 360,
        "content": " **API Request**  \n   It sends the submitted instagram To URL to an rapid API which processes the video and converts it into an MP4 format."
      },
      "typeVersion": 1
    },
    {
      "id": "08f49617-2164-489b-8a0e-9d8e1c8d1dbb",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1760,
        300
      ],
      "parameters": {
        "height": 360,
        "content": "**Check for API Error**  \n   This node validate error false if yes then will continue to next node else it will stop execution."
      },
      "typeVersion": 1
    },
    {
      "id": "edbf05ef-28ce-4d63-80f9-c9553b083a96",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2060,
        300
      ],
      "parameters": {
        "width": 220,
        "height": 360,
        "content": "**Download Instagram Video**  \n   After waiting, this node fetches the resulting MP4 file or its metadata from the API, confirming the file is ready for the next steps."
      },
      "typeVersion": 1
    },
    {
      "id": "80799827-7c68-4956-b764-f7d9eb9b965d",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2320,
        300
      ],
      "parameters": {
        "height": 360,
        "content": " **Upload To Google Drive**  \n   Uploads the retrieved MP4 file to Google Drive, providing cloud storage and easy file management."
      },
      "typeVersion": 1
    },
    {
      "id": "27997f6d-bb16-407e-b8e2-9e7998064684",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2620,
        300
      ],
      "parameters": {
        "height": 360,
        "content": "**Set permissions Google Drive  (Share)**  \n   Modifies the file\u2019s permissions in Google Drive to allow anyone with the link to access or download the MP4 file."
      },
      "typeVersion": 1
    },
    {
      "id": "2f01c571-a958-4264-bf38-56f98e76bc02",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2920,
        300
      ],
      "parameters": {
        "height": 360,
        "content": "**Deliver Download Link to User**  \n   Sends an automated email to the user with the link to download their converted MP4 file, completing the user experience."
      },
      "typeVersion": 1
    },
    {
      "id": "1f550fe8-9302-4b4b-801f-fb7ea316c921",
      "name": "Upload To Google Drive",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2360,
        500
      ],
      "parameters": {
        "name": "=",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "options": {},
        "folderId": "root",
        "authentication": "serviceAccount"
      },
      "credentials": {
        "googleApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "01c9373c-405e-4184-9118-2d9369297ead",
      "name": "Set permissions Google Drive ",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        2680,
        500
      ],
      "parameters": {
        "fileId": "={{ $json.resource.id }}",
        "options": {},
        "operation": "share",
        "permissionsUi": {
          "permissionsValues": {
            "role": "reader",
            "type": "anyone"
          }
        },
        "authentication": "serviceAccount"
      },
      "credentials": {
        "googleApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "2b8b6c94-d557-45ad-931f-f9ddd76dd4fa",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        160,
        160
      ],
      "parameters": {
        "width": 620,
        "height": 2100,
        "content": "# \ud83d\udce5 Instagram to MP4 \u2013 Download & Upload to Google Drive with Auto Email\n\n## \u2728 Description\n\nThis workflow automates converting **Instagram videos to MP4**, storing them in **Google Drive**, and sending the user an email with the download link. Users just need to submit a form with the Instagram video URL and their email address \u2014 the rest is fully automated.\n\n---\n\n## \ud83e\udde9 Workflow Breakdown (Node by Node)\n\n### 1. ## \ud83e\uddfe n8n Form Trigger\n- **Node Name:** `n8n Form Trigger`\n- **Purpose:** Captures user input from a form.\n- **Fields:** \n  - `url` \u2013 Instagram video URL\n  - `email` \u2013 Email address to receive the MP4 link\n\n---\n\n### 2. ## \ud83d\udce1 Get MP4 Link from RapidAPI\n- **Node Name:** `API Request`\n- **Purpose:** Sends the Instagram video URL to RapidAPI's \"Instagram Video Downloader\" to get an MP4 download link.\n\n---\n\n### 3. ## \u26a0\ufe0f Check for API Error\n- **Node Name:** `Check for API Error`\n- **Purpose:** Checks if the API response has an error.\n- **Condition:** Continues only if `error === false`.\n\n---\n\n### 4. ## \ud83d\udce5 Download Instagram Video\n- **Node Name:** `Download Instagram Video`\n- **Purpose:** Downloads the MP4 video from the link provided by the API.\n- **Headers:** Sets a browser-like `User-Agent` for successful fetch.\n\n---\n\n### 5. ## \u2601\ufe0f Upload to Google Drive\n- **Node Name:** `Upload To Google Drive`\n- **Purpose:** Uploads the MP4 file to your Google Drive using a connected Service Account.\n\n---\n\n### 6. ## \ud83d\udd17 Set Google Drive Sharing Permissions\n- **Node Name:** `Set permissions Google Drive`\n- **Purpose:** Makes the uploaded MP4 file shareable by anyone with the link.\n\n---\n\n### 7. ## \ud83d\udce7 Deliver Download Link to User\n- **Node Name:** `Deliver Download Link to User`\n- **Purpose:** Sends the user an email with the public link to the MP4 video.\n- **To:** `={{ $json.email }}`\n- **Message:** Includes `{{ $json.webViewLink }}` for downloading the file.\n\n---\n\n## \u2705 Key Features\n\n- Converts **Instagram videos to MP4** automatically  \n- Uploads files to **Google Drive**  \n- Sends download link via **email**  \n- Simple **form-based user input**\n\n---\n\n## \ud83d\udd10 Requirements\n\n- RapidAPI account + API key for Instagram Video Downloader\n- Google Cloud Service Account with Drive API access\n- SMTP or Gmail credentials for email delivery\n- n8n instance (self-hosted or cloud)\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "cf0d989d-6fd3-4f56-b141-ab9895018d63",
      "name": "API Request",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1480,
        520
      ],
      "parameters": {
        "url": "https://instagram-video-downloader13.p.rapidapi.com/index.php",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "sendHeaders": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "url",
              "value": "={{ $json.url }}"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "x-rapidapi-host",
              "value": "instagram-video-downloader13.p.rapidapi.com"
            },
            {
              "name": "x-rapidapi-key",
              "value": "YOUR_API_KEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "57fe215b-33c8-4a93-81f0-7d761c6c7bb9",
      "name": "Check for API Error",
      "type": "n8n-nodes-base.if",
      "position": [
        1800,
        520
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "71b56363-9bc8-4516-801d-26dea43f61f3",
              "operator": {
                "type": "boolean",
                "operation": "false",
                "singleValue": true
              },
              "leftValue": "={{ $json.error }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "5058de96-27e8-469c-9e1c-4c8119bd77f1",
      "name": "Download Instagram Video",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2100,
        500
      ],
      "parameters": {
        "url": "={{ $json.medias[0].url }}",
        "options": {
          "timeout": 10000000,
          "redirect": {
            "redirect": {
              "maxRedirects": 10
            }
          },
          "response": {
            "response": {
              "neverError": true,
              "fullResponse": true
            }
          },
          "lowercaseHeaders": false
        },
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "user-agent",
              "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)"
            },
            {
              "name": "accept",
              "value": "*/*"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "9233e6c3-b6ef-44dc-a748-fd14cd1406d9",
      "name": "Deliver Download Link to User",
      "type": "n8n-nodes-base.emailSend",
      "position": [
        2980,
        500
      ],
      "parameters": {
        "text": "Your download link: {{ $json.webViewLink }}",
        "options": {},
        "subject": "\ud83c\udfb5 Your Instagram MP4 is ready!",
        "toEmail": "={{ $json.email }}",
        "fromEmail": "your@email.com"
      },
      "credentials": {
        "smtp": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "API Request": {
      "main": [
        [
          {
            "node": "Check for API Error",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "n8n Form Trigger": {
      "main": [
        [
          {
            "node": "API Request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check for API Error": {
      "main": [
        [
          {
            "node": "Download Instagram Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload To Google Drive": {
      "main": [
        [
          {
            "node": "Set permissions Google Drive ",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download Instagram Video": {
      "main": [
        [
          {
            "node": "Upload To Google Drive",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set permissions Google Drive ": {
      "main": [
        [
          {
            "node": "Deliver Download Link to User",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

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

About this workflow

Effortlessly convert Instagram videos to MP4 and automatically store them on Google Drive with a shareable download link sent to the user via email. This n8n workflow uses the Instagram Video Downloader API to automate the process of downloading Instagram videos, uploading them…

Source: https://n8n.io/workflows/6921/ — 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

This n8n workflow allows users to convert any YouTube video to MP3 using the YouTube To MP3 Fast API on RapidAPI. It handles the entire process end-to-end — from form input to automatic delivery via e

Form Trigger, HTTP Request, Google Drive +1
Social Media

This n8n template demonstrates how to generate subtitle overlays for YouTube videos and save the final files to Google Drive. It is useful when you want accessible video outputs without manually editi

@Videodb/N8N Nodes Videodb, HTTP Request, Form Trigger +1
Social Media

This automated workflow allows seamless conversion of YouTube videos to MP3, using the YouTube to MP3 Downloader API. The converted MP3 files are uploaded to Google Drive, and all relevant conversion

Form Trigger, HTTP Request, Google Drive +1
Social Media

Convert TikTok videos to MP4 , MP3 (without watermark), upload to Google Drive, and log conversion attempts into Google Sheets automatically — powered by TikTok Download Audio Video API.

Form Trigger, Google Sheets, Google Drive +1
Social Media

Easily convert Facebook videos into downloadable MP4 files using Facebook Video Downloader API. This n8n workflow automates fetching videos, downloading them, uploading them to Google Drive, and loggi

Form Trigger, Google Sheets, Google Drive +1