8
n8n 한국어amn8n.com

Facebook 비디오를 구글 클라우드 스토리지에 다운로드하고 자동으로 테이블에 기록

고급

이것은File Management분야의자동화 워크플로우로, 19개의 노드를 포함합니다.주로 If, Wait, FormTrigger, GoogleDrive, HttpRequest 등의 노드를 사용하며. Facebook 비디오를 Google 클라우드 드라이브에 다운로드하고 테이블에 자동으로 로그 기록

사전 요구사항
  • Google Drive API 인증 정보
  • 대상 API의 인증 정보가 필요할 수 있음
  • Google Sheets API 인증 정보

카테고리

워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "meta": {
    "instanceId": "60c025075753afcab9f803964b4caaca9402f435deb4efafbb8e3b93b54d8752",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "1426bdd3-b67c-40be-a93b-4017b988a507",
      "name": "폼 제출 시",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -500,
        -20
      ],
      "webhookId": "99c989d4-d7e6-42d9-9f05-5235e2624149",
      "parameters": {
        "options": {},
        "formTitle": "Facebook to MP4",
        "formFields": {
          "values": [
            {
              "fieldLabel": "URL",
              "placeholder": "https://facebook.com/",
              "requiredField": true
            }
          ]
        },
        "formDescription": "Facebook to MP4 Converter"
      },
      "typeVersion": 2.2
    },
    {
      "id": "74e6789c-b50c-4f5a-aa88-4587ed2b66f3",
      "name": "Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1180,
        -220
      ],
      "parameters": {
        "columns": {
          "value": {
            "URL": "={{ $('On form submission').item.json.URL }}",
            "Drive_URL": "={{ $('Upload To Google Drive').item.json.webViewLink }}"
          },
          "schema": [
            {
              "id": "URL",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Drive_URL",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Drive_URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "URL"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/1BeglXaDh3roF_yeTKcg73MdwnpKe5A4Rzj6hz5P4PIQ/edit?gid=0#gid=0"
        },
        "documentId": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/1BeglXaDh3roF_yeTKcg73MdwnpKe5A4Rzj6hz5P4PIQ/edit"
        },
        "authentication": "serviceAccount"
      },
      "credentials": {
        "googleApi": {
          "id": "qUtlCnYpk7bXXaYp",
          "name": "Google Sheets account 3"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "a8eab174-692b-43e1-9d83-1a4bd365e8a5",
      "name": "조건문",
      "type": "n8n-nodes-base.if",
      "position": [
        20,
        0
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "bcc58e3d-9609-4ec3-adb9-bc6098205818",
              "operator": {
                "type": "boolean",
                "operation": "false",
                "singleValue": true
              },
              "leftValue": "={{ $json.error }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "9f8a90f9-c6c5-4ca5-8685-c3bc3f2eb4a2",
      "name": "대기",
      "type": "n8n-nodes-base.wait",
      "position": [
        360,
        240
      ],
      "webhookId": "410a255f-0e20-4697-9584-b59829a5bfb8",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "42b59712-c67b-41bd-aa92-07428f2f9f89",
      "name": "Google Drive 권한 설정",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        840,
        -300
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "options": {},
        "resource": "file",
        "operation": "share",
        "permissionsUi": {},
        "authentication": "oAuth2"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "qEkQ8MFn0uSHgAqY",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "49f20dad-a161-4093-bb0b-ddf8d0f38001",
      "name": "Google Drive에 업로드",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        540,
        -300
      ],
      "parameters": {
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "root",
          "cachedResultName": "/ (Root folder)"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "qEkQ8MFn0uSHgAqY",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "1ad3686d-10e7-4d42-aa28-0d51c20b6c4a",
      "name": "Google Sheets 행 추가",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        840,
        240
      ],
      "parameters": {
        "columns": {
          "value": {
            "URL": "{{ $('On form submission').item.json.URL }}",
            "Drive_URL": "N/A"
          },
          "schema": [
            {
              "id": "URL",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Drive_URL",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Drive_URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/1BeglXaDh3roF_yeTKcg73MdwnpKe5A4Rzj6hz5P4PIQ/edit?gid=0#gid=0"
        },
        "documentId": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/1BeglXaDh3roF_yeTKcg73MdwnpKe5A4Rzj6hz5P4PIQ/edit?gid=0#gid=0"
        },
        "authentication": "serviceAccount"
      },
      "credentials": {
        "googleApi": {
          "id": "Rt0RWApx8PL9t0RF",
          "name": "Google Docs account"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "415e26db-3d6d-4cd1-8485-bc861ad39a64",
      "name": "스티키 노트1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -580,
        -300
      ],
      "parameters": {
        "height": 500,
        "content": "## 🟢 **1. On form submission**\n- **Purpose:** Acts as the trigger for the workflow.  \n- **Functionality:** Displays a form with a single field (`URL`) where users can enter the Facebook video link.  \n- **Output:** Passes the entered URL to the next node for processing."
      },
      "typeVersion": 1
    },
    {
      "id": "09741083-a9b0-4e15-8824-a2ff59aae991",
      "name": "스티키 노트2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -320,
        -300
      ],
      "parameters": {
        "height": 500,
        "content": "## 🌐 **2. Facebook RapidAPI Request**\n- **Purpose:** Fetch downloadable MP4 link.  \n- **Functionality:** Sends a `POST` request to **Facebook Video Downloader API**, passing the URL from the form.  \n- **Output:** Receives a JSON response containing downloadable media links.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "6bbbec40-7cfb-49c2-aabc-8d24b9f97852",
      "name": "스티키 노트3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -40,
        -300
      ],
      "parameters": {
        "height": 500,
        "content": "## 🔍 **3. If**\n- **Purpose:** Check for API errors.  \n- **Functionality:** Evaluates if the response contains an `error` field.  \n- **Output:** \n  - ✅ **True Path:** Proceeds to download the MP4.  \n  - ❌ **False Path:** Goes to error handling (Wait + Sheets logging).\n"
      },
      "typeVersion": 1
    },
    {
      "id": "3c071121-ab03-46c2-bc3b-37cfbc8efcc4",
      "name": "스티키 노트4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        220,
        -540
      ],
      "parameters": {
        "height": 440,
        "content": "## ⬇️ **4. MP4 Downloader**\n- **Purpose:** Download the video file.  \n- **Functionality:** Uses the media URL from the previous API response to download the MP4 video.  \n- **Output:** Stores the raw MP4 binary for upload.\n\n-"
      },
      "typeVersion": 1
    },
    {
      "id": "b520286d-f01d-45dd-b8a4-bbb7b6ffea4a",
      "name": "스티키 노트5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        480,
        -540
      ],
      "parameters": {
        "height": 400,
        "content": "## ☁️ **5. Upload To Google Drive**\n- **Purpose:** Store video in Google Drive.  \n- **Functionality:** Uploads the downloaded MP4 into the specified Drive folder.  \n- **Output:** Returns a file ID for the uploaded file.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "19f78901-47c2-4346-a2fd-8fba54ce76a1",
      "name": "스티키 노트6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        760,
        -540
      ],
      "parameters": {
        "height": 380,
        "content": "## 🔑 **6. Google Drive Set Permission**\n- **Purpose:** Make the file publicly accessible.  \n- **Functionality:** Sets file permissions to `Anyone with the link can view`.  \n- **Output:** Provides a sharable `webViewLink`.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "0c24f99a-6323-4ec9-9988-3bdc6c25afed",
      "name": "스티키 노트7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1100,
        -520
      ],
      "parameters": {
        "height": 460,
        "content": "## 📄 **7. Google Sheets**\n- **Purpose:** Log successful conversions.  \n- **Functionality:** Appends a row with:\n  - `URL` → Original Facebook link  \n  - `Drive_URL` → Sharable Google Drive MP4 link  \n- **Output:** Saves a permanent log of successful downloads."
      },
      "typeVersion": 1
    },
    {
      "id": "2d3c1c4b-3e48-46a8-b8a7-3bb449f5031c",
      "name": "스티키 노트8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        280,
        0
      ],
      "parameters": {
        "height": 360,
        "content": "## ⏱️ **8. Wait**\n- **Purpose:** Delay before logging failures.  \n- **Functionality:** Pauses workflow execution to avoid instant sheet logging when API errors occur.  \n- **Output:** Prevents rapid consecutive writes to Google Sheets."
      },
      "typeVersion": 1
    },
    {
      "id": "0ae98a86-e0c6-4c47-a62b-5efc82a6bf99",
      "name": "스티키 노트9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        760,
        -120
      ],
      "parameters": {
        "height": 480,
        "content": "## 📑 **9. Google Sheets Append Row**\n- **Purpose:** Log failed conversions.  \n- **Functionality:** Appends a row with:\n  - `URL` → Original LinkedIn link  \n  - `Drive_URL` → `N/A` (indicating download failure)  \n- **Output:** Tracks failed attempts separately.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "0f4edd02-cb08-4fbf-92c1-88c3d0155794",
      "name": "MP4 다운로더",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        280,
        -280
      ],
      "parameters": {
        "url": "={{ $json.medias[0].url }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "1535cbdf-43cf-45ed-a417-598fd4099031",
      "name": "Facebook RapidAPI 요청",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueRegularOutput",
      "position": [
        -280,
        -20
      ],
      "parameters": {
        "url": "https://facebook-video-downloader11.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": "facebook-video-downloader11.p.rapidapi.com"
            },
            {
              "name": "x-rapidapi-key",
              "value": "your key"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "2be1a7a8-5a23-465b-8262-45c570e1ba00",
      "name": "스티키 노트",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1340,
        -600
      ],
      "parameters": {
        "width": 520,
        "height": 960,
        "content": "# 🚀 Facebook to MP4 Video Downloader – Automated Workflow  \n\nEasily convert Facebook videos into downloadable MP4 files using **[Facebook Video Downloader API](https://rapidapi.com/skdeveloper/api/facebook-video-downloader11)**.  \nThis n8n workflow automates fetching the video, downloading it, uploading it to Google Drive, and logging results in Google Sheets.  \n\n---\n\n### 📝 **Node-by-Node Explanation**\n\n1. **On form submission** → Triggers when a user submits a Facebook video URL via the form.  \n2. **Facebook RapidAPI Request** → Sends a POST request to **Facebook Video Downloader API** to fetch downloadable MP4 links.  \n3. **If Node** → Checks API response for errors before proceeding.  \n4. **MP4 Downloader** → Downloads the Facebook video file from the received media URL.  \n5. **Upload to Google Drive** → Uploads the downloaded MP4 file to a Google Drive folder.  \n6. **Google Drive Set Permission** → Sets the uploaded file to be publicly shareable.  \n7. **Google Sheets** → Logs successful conversions with the original URL and shareable MP4 link.  \n8. **Wait Node** → Delays before logging failed conversions to avoid rapid writes.  \n9. **Google Sheets Append Row** → Records failed conversion attempts with `N/A` as the Drive URL.  \n"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "a8eab174-692b-43e1-9d83-1a4bd365e8a5": {
      "main": [
        [
          {
            "node": "0f4edd02-cb08-4fbf-92c1-88c3d0155794",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "9f8a90f9-c6c5-4ca5-8685-c3bc3f2eb4a2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9f8a90f9-c6c5-4ca5-8685-c3bc3f2eb4a2": {
      "main": [
        [
          {
            "node": "1ad3686d-10e7-4d42-aa28-0d51c20b6c4a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0f4edd02-cb08-4fbf-92c1-88c3d0155794": {
      "main": [
        [
          {
            "node": "49f20dad-a161-4093-bb0b-ddf8d0f38001",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1426bdd3-b67c-40be-a93b-4017b988a507": {
      "main": [
        [
          {
            "node": "1535cbdf-43cf-45ed-a417-598fd4099031",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "49f20dad-a161-4093-bb0b-ddf8d0f38001": {
      "main": [
        [
          {
            "node": "42b59712-c67b-41bd-aa92-07428f2f9f89",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1535cbdf-43cf-45ed-a417-598fd4099031": {
      "main": [
        [
          {
            "node": "a8eab174-692b-43e1-9d83-1a4bd365e8a5",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "42b59712-c67b-41bd-aa92-07428f2f9f89": {
      "main": [
        [
          {
            "node": "74e6789c-b50c-4f5a-aa88-4587ed2b66f3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

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

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

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

고급 - 파일 관리

유료인가요?

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

관련 워크플로우 추천

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

고급 사용자를 위한 16+개 노드의 복잡한 워크플로우

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34