{
  "nodes": [
    {
      "id": "1",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        100,
        300
      ],
      "parameters": {
        "interval": [
          {
            "field": "hours",
            "value": 2
          }
        ],
        "options": {}
      }
    },
    {
      "id": "2",
      "name": "Google Sheets - Get Ideas",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        300,
        300
      ],
      "parameters": {
        "operation": "getAll",
        "sheetName": "Ideas",
        "filters": {
          "conditions": [
            {
              "property": "type",
              "value": "new",
              "operation": "equal"
            }
          ]
        },
        "options": {
          "limit": 1,
          "returnAll": false
        }
      }
    },
    {
      "id": "3",
      "name": "IF - Check Ideas Found",
      "type": "n8n-nodes-base.if",
      "position": [
        500,
        300
      ],
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{$node[\"Google Sheets - Get Ideas\"].json.length}}",
              "operation": "notEqual",
              "value2": 0
            }
          ]
        },
        "options": {}
      }
    },
    {
      "id": "4",
      "name": "ChatGPT - Generate Script",
      "type": "n8n-nodes-base.openAi",
      "position": [
        700,
        250
      ],
      "parameters": {
        "authentication": "apiKey",
        "resource": "chat",
        "prompt": {
          "messages": [
            {
              "role": "system",
              "content": "You are a professional UGC video script writer. Create a compelling, concise script for a 15-second video."
            },
            {
              "role": "user",
              "content": "Create a professional UGC-style video script based on this idea: {{$node[\"Google Sheets - Get Ideas\"].json[0].idea}}. The script should be conversational, engaging, and suitable for a 15-second video. Include 3 key moments where visuals can be enhanced."
            }
          ]
        },
        "model": "gpt-4",
        "options": {
          "temperature": 0.7,
          "maxTokens": 300
        }
      }
    },
    {
      "id": "5",
      "name": "Synthesia - Create UGC Video",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        900,
        250
      ],
      "parameters": {
        "url": "https://api.synthesia.io/v2/videos",
        "method": "POST",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer {{$credentials.synthesia.apiKey}}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "jsonParameters": true,
        "bodyParametersJson": {
          "title": "UGC Video for {{$node[\"Google Sheets - Get Ideas\"].json[0].idea}}",
          "description": "Professional UGC video",
          "test": false,
          "input": [
            {
              "scriptText": "={{$node[\"ChatGPT - Generate Script\"].json.choices[0].message.content}}",
              "avatar": "YOUR_CUSTOMIZED_AVATAR_ID",
              "background": "none",
              "avatarSettings": {
                "style": "ugc",
                "position": "center"
              },
              "videoSettings": {
                "quality": "high",
                "aspectRatio": "9:16"
              }
            }
          ]
        },
        "options": {}
      }
    },
    {
      "id": "6",
      "name": "Wait for Synthesia Video",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1100,
        250
      ],
      "parameters": {
        "url": "={{\"https://api.synthesia.io/v2/videos/\" + $node[\"Synthesia - Create UGC Video\"].json.id}}",
        "method": "GET",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer {{$credentials.synthesia.apiKey}}"
            }
          ]
        },
        "options": {
          "polling": true,
          "pollTimes": 20,
          "pollInterval": 30,
          "condition": "={{$response.body.status === \"complete\"}}"
        }
      }
    },
    {
      "id": "7",
      "name": "DALL-E - Generate Images",
      "type": "n8n-nodes-base.openAi",
      "position": [
        900,
        400
      ],
      "parameters": {
        "authentication": "apiKey",
        "resource": "image",
        "operation": "create",
        "prompt": "={{\"Professional image related to \" + $node[\"Google Sheets - Get Ideas\"].json[0].idea + \", photorealistic, high quality\"}}",
        "model": "dall-e-3",
        "n": 3,
        "quality": "hd",
        "size": "1024x1024",
        "options": {}
      }
    },
    {
      "id": "8",
      "name": "Split Images",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        1100,
        400
      ],
      "parameters": {
        "batchSize": 1,
        "options": {
          "includeParentData": true
        }
      }
    },
    {
      "id": "9",
      "name": "Pika - Animate Images",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1300,
        400
      ],
      "parameters": {
        "url": "https://api.pika.art/v1/images/animate",
        "method": "POST",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer {{$credentials.pika.apiKey}}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "jsonParameters": true,
        "bodyParametersJson": {
          "image_url": "={{$item.json.data[0].url}}",
          "animation_style": "realistic",
          "duration": 2,
          "output_format": "mp4"
        },
        "options": {}
      }
    },
    {
      "id": "10",
      "name": "Wait for Pika Animation",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1500,
        400
      ],
      "parameters": {
        "url": "={{\"https://api.pika.art/v1/generations/\" + $node[\"Pika - Animate Images\"].json.id}}",
        "method": "GET",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer {{$credentials.pika.apiKey}}"
            }
          ]
        },
        "options": {
          "polling": true,
          "pollTimes": 10,
          "pollInterval": 20,
          "condition": "={{$response.body.status === \"completed\"}}"
        }
      }
    },
    {
      "id": "11",
      "name": "Join Animations",
      "type": "n8n-nodes-base.merge",
      "position": [
        1700,
        400
      ],
      "parameters": {
        "mode": "waitForAll",
        "options": {}
      }
    },
    {
      "id": "12",
      "name": "ElevenLabs - Generate Voiceover",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        900,
        550
      ],
      "parameters": {
        "url": "https://api.elevenlabs.io/v1/text-to-speech/YOUR_VOICE_ID",
        "method": "POST",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "xi-api-key",
              "value": "{{$credentials.elevenlabs.apiKey}}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "jsonParameters": true,
        "bodyParametersJson": {
          "text": "={{$node[\"ChatGPT - Generate Script\"].json.choices[0].message.content}}",
          "model_id": "eleven_monolingual_v1",
          "voice_settings": {
            "stability": 0.5,
            "similarity_boost": 0.75,
            "style": 0.7,
            "use_speaker_boost": true
          }
        },
        "options": {
          "responseFormat": "file"
        }
      }
    },
    {
      "id": "13",
      "name": "Animaker - Generate Subtitles",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1100,
        550
      ],
      "parameters": {
        "url": "https://app.animaker.com/api/v1/subtitle/generate",
        "method": "POST",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "X-API-KEY",
              "value": "{{$credentials.animaker.apiKey}}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "jsonParameters": true,
        "bodyParametersJson": {
          "audio_file": "={{$binary[$node[\"ElevenLabs - Generate Voiceover\"].itemIndex].data}}",
          "text": "={{$node[\"ChatGPT - Generate Script\"].json.choices[0].message.content}}",
          "format": "srt"
        },
        "options": {}
      }
    },
    {
      "id": "14",
      "name": "Video Editor - Combine All",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1700,
        550
      ],
      "parameters": {
        "url": "https://api.customvideoeditor.com/v1/projects",
        "method": "POST",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer {{$credentials.videoEditor.apiKey}}"
            },
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        },
        "jsonParameters": true,
        "bodyParametersJson": {
          "timeline": {
            "baseVideo": "={{$node[\"Wait for Synthesia Video\"].json.download}}",
            "audio": "={{$binary[$node[\"ElevenLabs - Generate Voiceover\"].itemIndex].url}}",
            "subtitles": "={{$node[\"Animaker - Generate Subtitles\"].json.subtitle_url}}",
            "overlays": [
              {
                "videoUrl": "={{$node[\"Join Animations\"].json[\"0\"].video_url}}",
                "startTime": 2,
                "endTime": 4,
                "position": "center"
              },
              {
                "videoUrl": "={{$node[\"Join Animations\"].json[\"1\"].video_url}}",
                "startTime": 7,
                "endTime": 9,
                "position": "center"
              },
              {
                "videoUrl": "={{$node[\"Join Animations\"].json[\"2\"].video_url}}",
                "startTime": 11,
                "endTime": 13,
                "position": "center"
              }
            ],
            "duration": 15,
            "format": "mp4",
            "resolution": "1080p"
          }
        },
        "options": {}
      }
    },
    {
      "id": "15",
      "name": "Wait for Final Video",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1900,
        550
      ],
      "parameters": {
        "url": "={{\"https://api.customvideoeditor.com/v1/projects/\" + $node[\"Video Editor - Combine All\"].json.project_id}}",
        "method": "GET",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer {{$credentials.videoEditor.apiKey}}"
            }
          ]
        },
        "options": {
          "polling": true,
          "pollTimes": 15,
          "pollInterval": 30,
          "condition": "={{$response.body.status === \"complete\"}}"
        }
      }
    },
    {
      "id": "16",
      "name": "Telegram - Send Video for Approval",
      "type": "n8n-nodes-base.telegram",
      "position": [
        2100,
        550
      ],
      "parameters": {
        "chatId": "YOUR_TELEGRAM_CHAT_ID",
        "content": "video",
        "videoUrl": "={{$node[\"Wait for Final Video\"].json.download_url}}",
        "additionalFields": {
          "caption": "New video created based on \"{{$node[\"Google Sheets - Get Ideas\"].json[0].idea}}\".\nPlease respond with 'approve' to post or 'reject' to discard."
        },
        "options": {}
      }
    },
    {
      "id": "17",
      "name": "Telegram - Wait for Response",
      "type": "n8n-nodes-base.telegram",
      "position": [
        2300,
        550
      ],
      "parameters": {
        "pollUpdates": true,
        "chatId": "YOUR_TELEGRAM_CHAT_ID",
        "updateTypes": [
          "message"
        ],
        "additionalFields": {
          "pollTimeout": 86400
        },
        "options": {}
      }
    },
    {
      "id": "18",
      "name": "IF - Approved",
      "type": "n8n-nodes-base.if",
      "position": [
        2500,
        550
      ],
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{$node[\"Telegram - Wait for Response\"].json.message.text.toLowerCase()}}",
              "operation": "contains",
              "value2": "approve"
            }
          ]
        },
        "options": {}
      }
    },
    {
      "id": "19",
      "name": "ChatGPT - Generate Descriptions",
      "type": "n8n-nodes-base.openAi",
      "position": [
        2700,
        450
      ],
      "parameters": {
        "authentication": "apiKey",
        "resource": "chat",
        "prompt": {
          "messages": [
            {
              "role": "system",
              "content": "You are a professional social media marketer who creates engaging, platform-specific content descriptions."
            },
            {
              "role": "user",
              "content": "Create professional descriptions for the following platforms: TikTok, Instagram, Facebook, and YouTube. The descriptions should be optimized for each platform based on this video idea: {{$node[\"Google Sheets - Get Ideas\"].json[0].idea}} and script: {{$node[\"ChatGPT - Generate Script\"].json.choices[0].message.content}}. Format the response as a JSON object with platform names as keys and descriptions as values."
            }
          ]
        },
        "model": "gpt-4",
        "options": {
          "temperature": 0.7,
          "maxTokens": 500
        }
      }
    },
    {
      "id": "20",
      "name": "Split Platforms",
      "type": "n8n-nodes-base.function",
      "position": [
        2900,
        450
      ],
      "parameters": {
        "functionCode": "// Parse the GPT response to get platform descriptions\nconst descriptions = JSON.parse(items[0].json.choices[0].message.content);\n\n// Create items for each platform and account combination\nconst platforms = ['TikTok', 'Instagram', 'Facebook', 'YouTube'];\nconst accountsPerPlatform = 5;\nconst result = [];\n\nfor (const platform of platforms) {\n  for (let i = 1; i <= accountsPerPlatform; i++) {\n    result.push({\n      json: {\n        platform: platform,\n        accountNumber: i,\n        description: descriptions[platform],\n        videoUrl: items[0].json.videoUrl,\n        idea: items[0].json.idea\n      }\n    });\n  }\n}\n\nreturn result;",
        "options": {}
      }
    },
    {
      "id": "21",
      "name": "Social Media Poster",
      "type": "n8n-nodes-base.switch",
      "position": [
        3100,
        450
      ],
      "parameters": {
        "rules": {
          "rules": [
            {
              "value": "TikTok",
              "conditions": {
                "string": [
                  {
                    "value1": "={{$json[\"platform\"]}}",
                    "operation": "equal",
                    "value2": "TikTok"
                  }
                ]
              }
            },
            {
              "value": "Instagram",
              "conditions": {
                "string": [
                  {
                    "value1": "={{$json[\"platform\"]}}",
                    "operation": "equal",
                    "value2": "Instagram"
                  }
                ]
              }
            },
            {
              "value": "Facebook",
              "conditions": {
                "string": [
                  {
                    "value1": "={{$json[\"platform\"]}}",
                    "operation": "equal",
                    "value2": "Facebook"
                  }
                ]
              }
            },
            {
              "value": "YouTube",
              "conditions": {
                "string": [
                  {
                    "value1": "={{$json[\"platform\"]}}",
                    "operation": "equal",
                    "value2": "YouTube"
                  }
                ]
              }
            }
          ]
        },
        "options": {}
      }
    },
    {
      "id": "22",
      "name": "TikTok Poster",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3300,
        300
      ],
      "parameters": {
        "url": "https://api.tiktok.com/v1/video/upload",
        "method": "POST",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer {{$credentials.tiktok.accounts[$json.accountNumber - 1].token}}"
            }
          ]
        },
        "options": {
          "formData": true
        },
        "formDataParameters": {
          "parameters": [
            {
              "name": "video",
              "value": "={{$node[\"Wait for Final Video\"].json.download_url}}"
            },
            {
              "name": "description",
              "value": "={{$json.description}}"
            }
          ]
        }
      }
    },
    {
      "id": "23",
      "name": "Instagram Poster",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3300,
        450
      ],
      "parameters": {
        "url": "https://graph.instagram.com/v18.0/{{$credentials.instagram.accounts[$json.accountNumber - 1].userId}}/media",
        "method": "POST",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer {{$credentials.instagram.accounts[$json.accountNumber - 1].token}}"
            }
          ]
        },
        "options": {
          "formData": true
        },
        "formDataParameters": {
          "parameters": [
            {
              "name": "media_type",
              "value": "VIDEO"
            },
            {
              "name": "video_url",
              "value": "={{$node[\"Wait for Final Video\"].json.download_url}}"
            },
            {
              "name": "caption",
              "value": "={{$json.description}}"
            }
          ]
        }
      }
    },
    {
      "id": "24",
      "name": "Facebook Poster",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3300,
        600
      ],
      "parameters": {
        "url": "https://graph.facebook.com/v18.0/{{$credentials.facebook.accounts[$json.accountNumber - 1].pageId}}/videos",
        "method": "POST",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer {{$credentials.facebook.accounts[$json.accountNumber - 1].token}}"
            }
          ]
        },
        "options": {
          "formData": true
        },
        "formDataParameters": {
          "parameters": [
            {
              "name": "file_url",
              "value": "={{$node[\"Wait for Final Video\"].json.download_url}}"
            },
            {
              "name": "description",
              "value": "={{$json.description}}"
            }
          ]
        }
      }
    },
    {
      "id": "25",
      "name": "YouTube Poster",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3300,
        750
      ],
      "parameters": {
        "url": "https://www.googleapis.com/upload/youtube/v3/videos",
        "method": "POST",
        "authentication": "genericCredentialType",
        "genericAuthType": "oAuth2",
        "oAuth2": "{{$credentials.youtube.accounts[$json.accountNumber - 1]}}",
        "options": {
          "formData": true
        },
        "formDataParameters": {
          "parameters": [
            {
              "name": "part",
              "value": "snippet,status"
            },
            {
              "name": "notifySubscribers",
              "value": "true"
            },
            {
              "name": "uploadType",
              "value": "multipart"
            },
            {
              "name": "file",
              "value": "={{$node[\"Wait for Final Video\"].json.download_url}}"
            },
            {
              "name": "resource",
              "value": "={{JSON.stringify({\"snippet\":{\"title\":$json.idea,\"description\":$json.description,\"tags\":[\"UGC\",\"content\",\"video\"]},\"status\":{\"privacyStatus\":\"public\"}})}}",
              "contentType": "application/json"
            }
          ]
        }
      }
    },
    {
      "id": "26",
      "name": "Merge All Platforms",
      "type": "n8n-nodes-base.merge",
      "position": [
        3500,
        550
      ],
      "parameters": {
        "mode": "waitForAll",
        "options": {}
      }
    },
    {
      "id": "27",
      "name": "Google Sheets - Update Idea Status",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3700,
        550
      ],
      "parameters": {
        "operation": "update",
        "sheetName": "Ideas",
        "range": "={{\"A\" + ($node[\"Google Sheets - Get Ideas\"].json[0].row_number)}}",
        "options": {
          "valueInputMode": "RAW"
        },
        "valueInputOption": "RAW",
        "dataMode": "autoMapInputData",
        "data": {
          "type": "used",
          "lastPosted": "={{$now.toISOString()}}"
        }
      }
    },
    {
      "id": "28",
      "name": "No Ideas Found",
      "type": "n8n-nodes-base.noOp",
      "position": [
        700,
        550
      ],
      "parameters": {
        "options": {}
      }
    },
    {
      "id": "29",
      "name": "Telegram - Notify No Ideas",
      "type": "n8n-nodes-base.telegram",
      "position": [
        900,
        700
      ],
      "parameters": {
        "chatId": "YOUR_TELEGRAM_CHAT_ID",
        "content": "text",
        "text": "No new ideas found in the spreadsheet. Please add some ideas with type 'new'.",
        "options": {}
      }
    },
    {
      "id": "30",
      "name": "Telegram - Notify Completion",
      "type": "n8n-nodes-base.telegram",
      "position": [
        3900,
        550
      ],
      "parameters": {
        "chatId": "YOUR_TELEGRAM_CHAT_ID",
        "content": "text",
        "text": "\u2705 Workflow completed! The video for idea \"{{$node[\"Google Sheets - Get Ideas\"].json[0].idea}}\" has been posted to all 20 social media accounts. The idea status has been updated to 'used' in the spreadsheet.",
        "options": {}
      }
    },
    {
      "id": "31",
      "name": "Telegram - Notify Rejection",
      "type": "n8n-nodes-base.telegram",
      "position": [
        2700,
        650
      ],
      "parameters": {
        "chatId": "YOUR_TELEGRAM_CHAT_ID",
        "content": "text",
        "text": "\u274c Video rejected. The idea \"{{$node[\"Google Sheets - Get Ideas\"].json[0].idea}}\" will remain with status 'new' in the spreadsheet.",
        "options": {}
      }
    }
  ],
  "connections": {
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Google Sheets - Get Ideas",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Sheets - Get Ideas": {
      "main": [
        [
          {
            "node": "IF - Check Ideas Found",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "IF - Check Ideas Found": {
      "main": [
        [
          {
            "node": "ChatGPT - Generate Script",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "No Ideas Found",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ChatGPT - Generate Script": {
      "main": [
        [
          {
            "node": "Synthesia - Create UGC Video",
            "type": "main",
            "index": 0
          },
          {
            "node": "DALL-E - Generate Images",
            "type": "main",
            "index": 0
          },
          {
            "node": "ElevenLabs - Generate Voiceover",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Synthesia - Create UGC Video": {
      "main": [
        [
          {
            "node": "Wait for Synthesia Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "DALL-E - Generate Images": {
      "main": [
        [
          {
            "node": "Split Images",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Images": {
      "main": [
        [
          {
            "node": "Pika - Animate Images",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Pika - Animate Images": {
      "main": [
        [
          {
            "node": "Wait for Pika Animation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for Pika Animation": {
      "main": [
        [
          {
            "node": "Join Animations",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ElevenLabs - Generate Voiceover": {
      "main": [
        [
          {
            "node": "Animaker - Generate Subtitles",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for Synthesia Video": {
      "main": [
        [
          {
            "node": "Video Editor - Combine All",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Join Animations": {
      "main": [
        [
          {
            "node": "Video Editor - Combine All",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Animaker - Generate Subtitles": {
      "main": [
        [
          {
            "node": "Video Editor - Combine All",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Video Editor - Combine All": {
      "main": [
        [
          {
            "node": "Wait for Final Video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for Final Video": {
      "main": [
        [
          {
            "node": "Telegram - Send Video for Approval",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram - Send Video for Approval": {
      "main": [
        [
          {
            "node": "Telegram - Wait for Response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram - Wait for Response": {
      "main": [
        [
          {
            "node": "IF - Approved",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "IF - Approved": {
      "main": [
        [
          {
            "node": "ChatGPT - Generate Descriptions",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Telegram - Notify Rejection",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ChatGPT - Generate Descriptions": {
      "main": [
        [
          {
            "node": "Split Platforms",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Platforms": {
      "main": [
        [
          {
            "node": "Social Media Poster",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Social Media Poster": {
      "main": [
        [
          {
            "node": "TikTok Poster",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Instagram Poster",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Facebook Poster",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "YouTube Poster",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "TikTok Poster": {
      "main": [
        [
          {
            "node": "Merge All Platforms",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Instagram Poster": {
      "main": [
        [
          {
            "node": "Merge All Platforms",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Facebook Poster": {
      "main": [
        [
          {
            "node": "Merge All Platforms",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "YouTube Poster": {
      "main": [
        [
          {
            "node": "Merge All Platforms",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge All Platforms": {
      "main": [
        [
          {
            "node": "Google Sheets - Update Idea Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Sheets - Update Idea Status": {
      "main": [
        [
          {
            "node": "Telegram - Notify Completion",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "No Ideas Found": {
      "main": [
        [
          {
            "node": "Telegram - Notify No Ideas",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}