{
  "flow": [
    {
      "id": 1,
      "module": "google-drive:watchFilesInAFolder",
      "version": 4,
      "metadata": {
        "designer": {
          "x": 0,
          "y": 0
        }
      },
      "parameters": {
        "limit": 1,
        "select": "create",
        "folderId": "YOUR_DRIVE_FOLDER_ID",
        "mimeType": "all",
        "__IMTCONN__": null,
        "destination": "drive"
      }
    },
    {
      "id": 20,
      "mapper": {},
      "module": "builtin:BasicRouter",
      "routes": [
        {
          "flow": [
            {
              "id": 2,
              "mapper": {
                "qs": [],
                "url": "https://api.opus.pro/api/clip-projects",
                "data": "{\"videoUrl\":\"https://drive.google.com/uc?export=download&id={{1.id}}\",\"uploadedVideoAttr\":{\"title\":\"{{1.name}}\"},\"conclusionActions\":[{\"type\":\"WEBHOOK\",\"notifyFailure\":true,\"url\":\"https://hook.REGION.make.com/YOUR_WEBHOOK_URL\"}]}",
                "gzip": true,
                "method": "post",
                "headers": [],
                "useMtls": false,
                "bodyType": "raw",
                "contentType": "application/json",
                "serializeUrl": false,
                "shareCookies": false,
                "parseResponse": true,
                "followRedirect": true,
                "useQuerystring": false,
                "followAllRedirects": false,
                "rejectUnauthorized": true
              },
              "module": "http:ActionSendDataAPIKeyAuth",
              "onerror": [
                {
                  "id": 10,
                  "mapper": {
                    "text": "\u26a0\ufe0f Error in \"Content Ingest\" \u2014 Create OpusClip Project failed for {{1.name}}: {{2.error.message}}. This run has been saved for automatic retry.",
                    "chatId": "YOUR_TELEGRAM_CHAT_ID"
                  },
                  "module": "telegram:SendReplyMessage",
                  "version": 1,
                  "metadata": {
                    "name": "Alert on Error",
                    "designer": {
                      "x": 600,
                      "y": -150
                    }
                  },
                  "parameters": {
                    "__IMTCONN__": null
                  }
                },
                {
                  "id": 11,
                  "mapper": {
                    "count": 3,
                    "retry": true,
                    "interval": 15
                  },
                  "module": "builtin:Break",
                  "version": 1,
                  "metadata": {
                    "name": "Save for Retry",
                    "designer": {
                      "x": 600,
                      "y": -300
                    }
                  }
                }
              ],
              "version": 3,
              "metadata": {
                "name": "Create OpusClip Project",
                "designer": {
                  "x": 600,
                  "y": -50
                }
              },
              "parameters": {
                "auth": null,
                "handleErrors": false
              }
            }
          ]
        },
        {
          "flow": [
            {
              "id": 21,
              "mapper": {
                "URL": "https://drive.google.com/uc?export=download&id={{1.id}}",
                "tier": "nova",
                "model": "general",
                "language": "en",
                "punctuate": "true",
                "smart_format": "true"
              },
              "module": "deepgram:prerecorded",
              "onerror": [
                {
                  "id": 210,
                  "mapper": {
                    "text": "\u26a0\ufe0f Error in \"Content Ingest\" \u2014 Transcribe Audio failed for {{1.name}}: {{21.error.message}}. This run has been saved for automatic retry.",
                    "chatId": "YOUR_TELEGRAM_CHAT_ID"
                  },
                  "module": "telegram:SendReplyMessage",
                  "version": 1,
                  "metadata": {
                    "name": "Alert on Error",
                    "designer": {
                      "x": 600,
                      "y": 300
                    }
                  },
                  "parameters": {
                    "__IMTCONN__": null
                  }
                },
                {
                  "id": 211,
                  "mapper": {
                    "count": 3,
                    "retry": true,
                    "interval": 15
                  },
                  "module": "builtin:Break",
                  "version": 1,
                  "metadata": {
                    "name": "Save for Retry",
                    "designer": {
                      "x": 600,
                      "y": 450
                    }
                  }
                }
              ],
              "version": 1,
              "metadata": {
                "name": "Transcribe Audio",
                "designer": {
                  "x": 600,
                  "y": 150
                }
              },
              "parameters": {
                "__IMTCONN__": null
              }
            },
            {
              "id": 22,
              "mapper": {
                "model": "claude-sonnet-5",
                "max_tokens": 4000,
                "messages": [
                  {
                    "role": "user",
                    "inputType": "single",
                    "content": "Below is a transcript of me speaking about a topic in my field. Turn it into a first draft of a written article.\n\nYour job is to restructure, not to rewrite.\n\n- Preserve my specific examples, numbers, names, and dates verbatim. Do not smooth, generalize, or paraphrase them.\n- Preserve my opinions, including ones stated bluntly. Do not hedge them.\n- Remove only: filler, false starts, repetition, and things I clearly abandoned mid-sentence.\n- Reorder for a reader rather than a listener. Spoken tangents that work aloud usually need to move or go.\n- Add subheadings that describe what the section actually says, not generic labels.\n\nHard rules:\n- Invent nothing. Add no statistics, studies, examples, or claims not present in the transcript.\n- If a passage is unclear or a claim seems incomplete, do not fix it \u2014 mark it [NEEDS AUTHOR INPUT: what's unclear] and move on.\n- Do not add an introduction that summarizes what the article will cover. Start with the substance.\n- Do not add a conclusion that restates the article.\n\nTarget 1,000-1,400 words. Transcript follows.\n\n{{21.results.channels[1].alternatives[1].transcript}}"
                  }
                ]
              },
              "module": "anthropic-claude:createAMessage",
              "onerror": [
                {
                  "id": 220,
                  "mapper": {
                    "text": "\u26a0\ufe0f Error in \"Content Ingest\" \u2014 Restructure Into Article Draft failed for {{1.name}}: {{22.error.message}}. This run has been saved for automatic retry.",
                    "chatId": "YOUR_TELEGRAM_CHAT_ID"
                  },
                  "module": "telegram:SendReplyMessage",
                  "version": 1,
                  "metadata": {
                    "name": "Alert on Error",
                    "designer": {
                      "x": 900,
                      "y": 300
                    }
                  },
                  "parameters": {
                    "__IMTCONN__": null
                  }
                },
                {
                  "id": 221,
                  "mapper": {
                    "count": 3,
                    "retry": true,
                    "interval": 15
                  },
                  "module": "builtin:Break",
                  "version": 1,
                  "metadata": {
                    "name": "Save for Retry",
                    "designer": {
                      "x": 900,
                      "y": 450
                    }
                  }
                }
              ],
              "version": 1,
              "metadata": {
                "name": "Restructure Into Article Draft",
                "designer": {
                  "x": 900,
                  "y": 150
                }
              },
              "parameters": {
                "__IMTCONN__": null
              }
            },
            {
              "id": 23,
              "mapper": {
                "base": "YOUR_AIRTABLE_BASE_ID",
                "table": "YOUR_AIRTABLE_TABLE_ID",
                "record": {
                  "YOUR_FIELD_1": "{{1.name}}",
                  "YOUR_FIELD_2": "{{22.content[1].text}}",
                  "YOUR_FIELD_3": "Blog Post",
                  "YOUR_FIELD_4": "Needs Edit"
                },
                "typecast": true,
                "useColumnId": false
              },
              "module": "airtable:ActionCreateRecord",
              "onerror": [
                {
                  "id": 230,
                  "mapper": {
                    "text": "\u26a0\ufe0f Error in \"Content Ingest\" \u2014 Log Draft to Content Table failed for {{1.name}}: {{23.error.message}}. This run has been saved for automatic retry.",
                    "chatId": "YOUR_TELEGRAM_CHAT_ID"
                  },
                  "module": "telegram:SendReplyMessage",
                  "version": 1,
                  "metadata": {
                    "name": "Alert on Error",
                    "designer": {
                      "x": 1200,
                      "y": 300
                    }
                  },
                  "parameters": {
                    "__IMTCONN__": null
                  }
                },
                {
                  "id": 231,
                  "mapper": {
                    "count": 3,
                    "retry": true,
                    "interval": 15
                  },
                  "module": "builtin:Break",
                  "version": 1,
                  "metadata": {
                    "name": "Save for Retry",
                    "designer": {
                      "x": 1200,
                      "y": 450
                    }
                  }
                }
              ],
              "version": 3,
              "metadata": {
                "name": "Log Draft to Content Table",
                "designer": {
                  "x": 1200,
                  "y": 150
                }
              },
              "parameters": {
                "__IMTCONN__": null
              }
            },
            {
              "id": 24,
              "mapper": {
                "text": "\ud83d\udcdd Article draft ready for your 25-minute edit pass: {{1.name}}. Find it in Airtable Content table, Status = Needs Edit.",
                "chatId": "YOUR_TELEGRAM_CHAT_ID"
              },
              "module": "telegram:SendReplyMessage",
              "version": 1,
              "metadata": {
                "name": "Notify Draft Ready",
                "designer": {
                  "x": 1500,
                  "y": 150
                }
              },
              "parameters": {
                "__IMTCONN__": null
              }
            }
          ]
        }
      ],
      "version": 1,
      "metadata": {
        "name": "Fan Out: Clip + Article Chains",
        "designer": {
          "x": 300,
          "y": 0
        }
      }
    }
  ],
  "name": "Content Ingest \u2014 Clip + Article Chains",
  "metadata": {
    "instant": false,
    "version": 1,
    "scenario": {
      "dlq": true
    }
  },
  "scheduling": {
    "type": "indefinitely",
    "interval": 900
  }
}