Full Code of Zie619/n8n-workflows for AI

main ed8dd70c6959 cached
2173 files
38.2 MB
4.1M tokens
383 symbols
1 requests
Copy disabled (too large) Download .txt
Showing preview only (16,268K chars total). Download the full file to get everything.
Repository: Zie619/n8n-workflows
Branch: main
Commit: ed8dd70c6959
Files: 2173
Total size: 38.2 MB

Directory structure:
gitextract_odnxqh4i/

├── .devcontainer/
│   ├── Dockerfile
│   ├── devcontainer.json
│   └── init-firewall.sh
├── .dockerignore
├── .github/
│   └── workflows/
│       ├── ci-cd.yml
│       ├── deploy-pages.yml
│       ├── docker.yml
│       ├── pages-deploy.yml
│       └── update-readme.yml
├── .gitignore
├── .trivyignore
├── CLAUDE.md
├── CLAUDE_ZH.md
├── DELIVERY-SUMMARY.md
├── DEPLOYMENT.md
├── Dockerfile
├── LICENSE
├── README.md
├── SECURITY.md
├── ai-stack/
│   ├── .env
│   ├── .gitignore
│   ├── CHEAT-SHEET.md
│   ├── EASY-INSTALL.md
│   ├── INDEX.md
│   ├── QUICK-START.md
│   ├── README.md
│   ├── SUMMARY.md
│   ├── TROUBLESHOOTING.md
│   ├── UBUNTU-INSTALL.md
│   ├── docker-compose.yml
│   ├── start.ps1
│   ├── start.sh
│   └── workflows/
│       ├── comfyui-image-generation.json
│       └── comfyui-simple-test.json
├── api_server.py
├── context/
│   ├── def_categories.json
│   ├── search_categories.json
│   └── unique_categories.json
├── docker-compose.dev.yml
├── docker-compose.prod.yml
├── docker-compose.yml
├── docs/
│   ├── .nojekyll
│   ├── 404.html
│   ├── _config.yml
│   ├── api/
│   │   ├── categories.json
│   │   ├── integrations.json
│   │   ├── metadata.json
│   │   ├── search-index.json
│   │   └── stats.json
│   ├── css/
│   │   └── styles.css
│   ├── index.html
│   └── js/
│       ├── app.js
│       └── search.js
├── helm/
│   └── workflows-docs/
│       ├── Chart.yaml
│       ├── templates/
│       │   ├── _helpers.tpl
│       │   └── deployment.yaml
│       └── values.yaml
├── k8s/
│   ├── configmap.yaml
│   ├── deployment.yaml
│   ├── ingress.yaml
│   ├── namespace.yaml
│   └── service.yaml
├── medcards-ai/
│   ├── .gitignore
│   ├── EXECUTIVE_SUMMARY.md
│   ├── PRODUCT_STRATEGY.md
│   ├── README.md
│   ├── SCALABILITY_ARCHITECTURE.md
│   ├── next.config.ts
│   ├── package.json
│   ├── postcss.config.mjs
│   ├── prompts/
│   │   ├── coach-prompt.md
│   │   ├── feedback-prompt.md
│   │   └── tutor-prompt.md
│   ├── src/
│   │   └── types/
│   │       └── database.ts
│   ├── supabase/
│   │   ├── schema-network-effects.sql
│   │   ├── schema.sql
│   │   └── seed-cases.sql
│   ├── tailwind.config.ts
│   └── tsconfig.json
├── requirements.txt
├── run-as-docker-container.sh
├── run.py
├── scripts/
│   ├── backup.sh
│   ├── deploy.sh
│   ├── generate_search_index.py
│   ├── health-check.sh
│   ├── update_github_pages.py
│   └── update_readme_stats.py
├── src/
│   ├── ai_assistant.py
│   ├── analytics_engine.py
│   ├── community_features.py
│   ├── database.js
│   ├── enhanced_api.py
│   ├── index-workflows.js
│   ├── init-db.js
│   ├── integration_hub.py
│   ├── performance_monitor.py
│   ├── server.js
│   └── user_management.py
├── static/
│   ├── index-nodejs.html
│   ├── index.html
│   ├── mobile-app.html
│   └── mobile-interface.html
├── templates/
│   ├── README.md
│   ├── communication/
│   │   ├── telegram-ai-bot-template.json
│   │   └── telegram-ai-bot-template.md
│   └── data-processing/
│       └── google-sheets-automation-template.json
├── test_api.sh
├── test_security.sh
├── test_workflows.py
├── trivy.yaml
├── workflow_db.py
└── workflows/
    ├── Activecampaign/
    │   └── 0057_Activecampaign_Create_Triggered.json
    ├── Acuityscheduling/
    │   └── 1002_Acuityscheduling_Automate_Triggered.json
    ├── Affinity/
    │   └── 1085_Affinity_Create_Triggered.json
    ├── Aggregate/
    │   ├── 0472_Aggregate_Gmail_Create_Triggered.json
    │   ├── 0480_Aggregate_Telegram_Automate_Triggered.json
    │   ├── 0681_Aggregate_HTTP_Create_Webhook.json
    │   ├── 0691_Aggregate_Jotform_Create_Triggered.json
    │   ├── 0695_Aggregate_Stickynote_Create_Webhook.json
    │   ├── 0697_Aggregate_Typeform_Create_Triggered.json
    │   ├── 0762_Aggregate_Stickynote_Create_Triggered.json
    │   ├── 0800_Aggregate_Telegram_Automate_Triggered.json
    │   ├── 1324_Aggregate_Gmail_Send_Triggered.json
    │   ├── 1374_Aggregate_Stickynote_Create_Triggered.json
    │   ├── 1404_Aggregate_Telegram_Automation_Triggered.json
    │   ├── 1413_Aggregate_Telegram_Automation_Triggered.json
    │   ├── 1430_Aggregate_Schedule_Send_Scheduled.json
    │   ├── 1506_Aggregate_Telegram_Automation_Triggered.json
    │   ├── 1544_Aggregate_Schedule_Send_Scheduled.json
    │   └── 1576_Aggregate_Stickynote_Automate_Webhook.json
    ├── Airtable/
    │   ├── 0756_Airtable_Create_Triggered.json
    │   ├── 1120_Airtable_Mindee_Automate_Webhook.json
    │   ├── 1138_Airtable_Vonage_Automation_Scheduled.json
    │   └── 1220_Airtable_Lemlist_Automate.json
    ├── Airtabletool/
    │   ├── 1261_Airtabletool_Stickynote_Automation_Triggered.json
    │   └── 1723_Airtabletool_Stickynote_Automation_Triggered.json
    ├── Airtoptool/
    │   └── 1681_Airtoptool_Slack_Automation_Triggered.json
    ├── Amqp/
    │   └── 0138_Amqp_Send_Triggered.json
    ├── Apitemplateio/
    │   └── 1224_Apitemplateio_Typeform_Automation_Triggered.json
    ├── Asana/
    │   ├── 0241_Asana_Notion_Create_Triggered.json
    │   ├── 0967_Asana_Update_Triggered.json
    │   └── 1223_Asana_Webhook_Automate_Webhook.json
    ├── Automate/
    │   ├── 1060_Automate_Webhook.json
    │   ├── 1123_Automate.json
    │   ├── 1271_Automate.json
    │   ├── 1326_Automate.json
    │   └── 1911_Automate.json
    ├── Automation/
    │   ├── 1250_Automation.json
    │   ├── 1265_Automation_Triggered.json
    │   ├── 1290_Automation.json
    │   ├── 1497_Automation.json
    │   ├── 1634_Automation.json
    │   └── 2047_Automation.json
    ├── Autopilot/
    │   ├── 1227_Autopilot_Automate.json
    │   └── 1228_Autopilot_Airtable_Automate_Triggered.json
    ├── Awsrekognition/
    │   └── 0150_Awsrekognition_GoogleSheets_Automation_Webhook.json
    ├── Awss3/
    │   ├── 0149_Awss3_Wait_Automate_Triggered.json
    │   ├── 0151_Awss3_GoogleDrive_Import_Triggered.json
    │   └── 0593_Awss3_Compression_Automate_Triggered.json
    ├── Awssns/
    │   └── 0984_Awssns_Automate_Triggered.json
    ├── Awstextract/
    │   └── 0148_Awstextract_Telegram_Automate_Triggered.json
    ├── Bannerbear/
    │   ├── 0525_Bannerbear_Discord_Create_Webhook.json
    │   └── 1665_Bannerbear_Discord_Automation_Webhook.json
    ├── Baserow/
    │   └── 1822_Baserow_Stickynote_Automation_Webhook.json
    ├── Beeminder/
    │   └── 0403_Beeminder_Strava_Create_Triggered.json
    ├── Bitbucket/
    │   └── 0999_Bitbucket_Automate_Triggered.json
    ├── Bitly/
    │   └── 0910_Bitly_Datetime_Update_Webhook.json
    ├── Bitwarden/
    │   └── 0003_Bitwarden_Automate.json
    ├── Box/
    │   └── 1031_Box_Automate_Triggered.json
    ├── Calcslive/
    │   └── 2058_Calcslive_Engineering_Calculations_Manual.json
    ├── Calendly/
    │   ├── 0039_Calendly_Notion_Automate_Triggered.json
    │   ├── 0125_Calendly_Notion_Automate_Triggered.json
    │   ├── 0277_Calendly_Mautic_Create_Triggered.json
    │   ├── 0430_Calendly_Filter_Create_Triggered.json
    │   ├── 0660_Calendly_Noop_Create_Triggered.json
    │   ├── 0661_Calendly_Noop_Create_Triggered.json
    │   └── 1009_Calendly_Automate_Triggered.json
    ├── Chargebee/
    │   └── 0041_Chargebee_Update_Triggered.json
    ├── Clickup/
    │   ├── 0047_Clickup_Update_Triggered.json
    │   ├── 0282_Clickup_Notion_Update_Triggered.json
    │   └── 0469_Clickup_Respondtowebhook_Create_Webhook.json
    ├── Clockify/
    │   ├── 0750_Clockify_Webhook_Sync_Webhook.json
    │   ├── 1005_Clockify_Automate_Triggered.json
    │   └── 1923_Clockify_Stickynote_Create_Triggered.json
    ├── Code/
    │   ├── 0034_Code_Filter_Create_Scheduled.json
    │   ├── 0182_Code_GitHub_Create_Scheduled.json
    │   ├── 0239_Code_Typeform_Create_Triggered.json
    │   ├── 0273_Code_Webhook_Create_Webhook.json
    │   ├── 0288_Code_Schedule_Create_Webhook.json
    │   ├── 0296_Code_Webhook_Create_Webhook.json
    │   ├── 0298_Code_Readpdf_Send_Triggered.json
    │   ├── 0299_Code_Webhook_Create_Webhook.json
    │   ├── 0307_Code_Postgres_Automate_Triggered.json
    │   ├── 0308_Code_Schedule_Automate_Scheduled.json
    │   ├── 0309_Code_Filter_Automate_Triggered.json
    │   ├── 0341_Code_Filter_Import_Webhook.json
    │   ├── 0362_Code_HTTP_Send_Webhook.json
    │   ├── 0365_Code_Manual_Send_Webhook.json
    │   ├── 0366_Code_Manual_Automation_Webhook.json
    │   ├── 0367_Code_Manual_Send_Webhook.json
    │   ├── 0370_Code_Schedule_Create_Webhook.json
    │   ├── 0373_Code_Webhook_Automation_Webhook.json
    │   ├── 0379_Code_Pipedrive_Create_Triggered.json
    │   ├── 0380_Code_Manual_Create_Triggered.json
    │   ├── 0391_Code_Filter_Create_Scheduled.json
    │   ├── 0393_Code_Slack_Create_Webhook.json
    │   ├── 0397_Code_Schedule_Import_Scheduled.json
    │   ├── 0401_Code_Filter_Send_Triggered.json
    │   ├── 0415_Code_GoogleCalendar_Create_Webhook.json
    │   ├── 0437_Code_Filter_Create_Scheduled.json
    │   ├── 0438_Code_Filter_Create_Webhook.json
    │   ├── 0446_Code_Todoist_Create_Scheduled.json
    │   ├── 0482_Code_Respondtowebhook_Automation_Webhook.json
    │   ├── 0491_Code_Webhook_Monitor_Webhook.json
    │   ├── 0506_Code_Filter_Create_Scheduled.json
    │   ├── 0516_Code_GitHub_Create_Scheduled.json
    │   ├── 0519_Code_Manual_Create_Webhook.json
    │   ├── 0546_Code_Schedule_Create_Scheduled.json
    │   ├── 0548_Code_Webhook_Create_Webhook.json
    │   ├── 0553_Code_Schedule_Send_Scheduled.json
    │   ├── 0571_Code_Webhook_Send_Webhook.json
    │   ├── 0577_Code_Editimage_Update_Webhook.json
    │   ├── 0580_Code_Editimage_Import_Webhook.json
    │   ├── 0598_Code_Editimage_Update_Webhook.json
    │   ├── 0600_Code_Extractfromfile_Create_Webhook.json
    │   ├── 0605_Code_Itemlists_Create_Scheduled.json
    │   ├── 0628_Code_Schedule_Export_Scheduled.json
    │   ├── 0630_Code_Webhook_Create_Scheduled.json
    │   ├── 0651_Code_Schedule_Create_Webhook.json
    │   ├── 0655_Code_Postgres_Update_Scheduled.json
    │   ├── 0658_Code_Schedule_Create_Scheduled.json
    │   ├── 0665_Code_Editimage_Update_Webhook.json
    │   ├── 0667_Code_GitHub_Create_Scheduled.json
    │   ├── 0669_Code_Webhook_Create_Webhook.json
    │   ├── 0670_Code_Microsoftoutlook_Create_Webhook.json
    │   ├── 0671_Code_Converttofile_Create_Webhook.json
    │   ├── 0686_Code_Webhook_Update_Webhook.json
    │   ├── 0693_Code_Webhook_Create_Webhook.json
    │   ├── 0696_Code_Webhook_Create_Webhook.json
    │   ├── 0700_Code_Respondtowebhook_Send_Webhook.json
    │   ├── 0701_Code_Strava_Send_Triggered.json
    │   ├── 0706_Code_Schedule_Create_Scheduled.json
    │   ├── 0708_Code_Filter_Update_Webhook.json
    │   ├── 0709_Code_HTTP_Create_Webhook.json
    │   ├── 0718_Code_GitHub_Create_Scheduled.json
    │   ├── 0726_Code_Schedule_Update_Scheduled.json
    │   ├── 0753_Code_Executiondata_Automation_Webhook.json
    │   ├── 0767_Code_Filter_Send_Webhook.json
    │   ├── 0773_Code_Manual_Update_Triggered.json
    │   ├── 0777_Code_Filter_Automation_Webhook.json
    │   ├── 0781_Code_Schedule_Export_Scheduled.json
    │   ├── 0784_Code_Form_Automation_Webhook.json
    │   ├── 0787_Code_GoogleCalendar_Create_Webhook.json
    │   ├── 0794_Code_Schedule_Create_Scheduled.json
    │   ├── 0808_Code_Form_Send_Webhook.json
    │   ├── 0844_Code_Ghost_Create_Triggered.json
    │   ├── 0848_Code_Filter_Update_Triggered.json
    │   ├── 0851_Code_Extractfromfile_Monitor_Triggered.json
    │   ├── 0856_Code_Schedule_Update_Scheduled.json
    │   ├── 0863_Code_Schedule_Import_Webhook.json
    │   ├── 0891_Code_Manual_Create_Triggered.json
    │   ├── 0898_Code_Schedule_Create_Scheduled.json
    │   ├── 0918_Code_Noop_Send_Triggered.json
    │   ├── 0922_Code_Webhook_Create_Webhook.json
    │   ├── 0924_Code_Respondtowebhook_Process_Webhook.json
    │   ├── 0926_Code_Webhook_Create_Webhook.json
    │   ├── 0946_Code_Webhook_Send_Webhook.json
    │   ├── 0980_Code_Webhook_Automation_Webhook.json
    │   ├── 1109_Code_Schedule_Automation_Scheduled.json
    │   ├── 1161_Code_Slack_Send_Webhook.json
    │   ├── 1178_Code_HTTP_Automation_Webhook.json
    │   ├── 1257_Code_Webhook_Automation_Webhook.json
    │   ├── 1259_Code_Strava_Automation_Triggered.json
    │   ├── 1264_Code_HTTP_Automation_Webhook.json
    │   ├── 1278_Code_Schedule_Monitor_Webhook.json
    │   ├── 1281_Code_Schedule_Monitor_Webhook.json
    │   ├── 1286_Code_Manual_Automation_Triggered.json
    │   ├── 1292_Code_GitHub_Automate_Webhook.json
    │   ├── 1299_Code_Webhook_Automation_Webhook.json
    │   ├── 1301_Code_Extractfromfile_Automation_Triggered.json
    │   ├── 1307_Code_Converttofile_Send_Webhook.json
    │   ├── 1308_Code_Microsoftoutlook_Send_Webhook.json
    │   ├── 1313_Code_HTTP_Automation_Webhook.json
    │   ├── 1317_Code_Schedule_Export_Scheduled.json
    │   ├── 1320_Code_Schedule_Automate_Webhook.json
    │   ├── 1331_Code_Schedule_Automate_Webhook.json
    │   ├── 1337_Code_Schedule_Automate_Webhook.json
    │   ├── 1356_Code_Webhook_Import_Webhook.json
    │   ├── 1378_Code_Filter_Automation_Triggered.json
    │   ├── 1391_Code_Respondtowebhook_Create_Webhook.json
    │   ├── 1401_Code_Webhook_Automate_Webhook.json
    │   ├── 1402_Code_Manual_Automation_Webhook.json
    │   ├── 1423_Code_Editimage_Automation_Webhook.json
    │   ├── 1426_Code_Schedule_Export_Webhook.json
    │   ├── 1428_Code_Schedule_Send_Scheduled.json
    │   ├── 1429_Code_Schedule_Send_Scheduled.json
    │   ├── 1435_Code_Slack_Automation_Webhook.json
    │   ├── 1446_Code_Schedule_Automate_Scheduled.json
    │   ├── 1460_Code_Schedule_Automation_Scheduled.json
    │   ├── 1461_Code_Manual_Automation_Webhook.json
    │   ├── 1478_Code_Todoist_Automate_Scheduled.json
    │   ├── 1500_Code_Webhook_Automation_Webhook.json
    │   ├── 1514_Code_HTTP_Create_Webhook.json
    │   ├── 1518_Code_Manual_Process_Webhook.json
    │   ├── 1586_Code_Respondtowebhook_Automate_Webhook.json
    │   ├── 1594_Code_Schedule_Automation_Webhook.json
    │   ├── 1605_Code_Editimage_Automation_Webhook.json
    │   ├── 1619_Code_Pipedrive_Automation_Triggered.json
    │   ├── 1630_Code_Form_Automation_Triggered.json
    │   ├── 1644_Code_Schedule_Automation_Scheduled.json
    │   ├── 1646_Code_Schedule_Create_Scheduled.json
    │   ├── 1653_Code_Webhook_Send_Webhook.json
    │   ├── 1656_Code_Readpdf_Send_Triggered.json
    │   ├── 1664_Code_HTTP_Send_Webhook.json
    │   ├── 1666_Code_Manual_Automation_Webhook.json
    │   ├── 1670_Code_Schedule_Automation_Webhook.json
    │   ├── 1671_Code_Schedule_Automation_Webhook.json
    │   ├── 1699_Code_Editimage_Automation_Webhook.json
    │   ├── 1710_Code_Schedule_Automation_Scheduled.json
    │   ├── 1713_Code_Webhook_Automate_Webhook.json
    │   ├── 1724_Code_Schedule_Automation_Scheduled.json
    │   ├── 1726_Code_Webhook_Automation_Webhook.json
    │   ├── 1728_Code_Filter_Import_Webhook.json
    │   ├── 1756_Code_HTTP_Automation_Webhook.json
    │   ├── 1758_Code_HTTP_Automation_Webhook.json
    │   ├── 1759_Code_Filter_Monitor_Triggered.json
    │   ├── 1761_Code_Extractfromfile_Automate_Triggered.json
    │   ├── 1765_Code_Filter_Process_Triggered.json
    │   ├── 1789_Code_Webhook_Automate_Webhook.json
    │   ├── 1796_Code_Slack_Automation_Webhook.json
    │   ├── 1802_Code_Manual_Import_Webhook.json
    │   ├── 1809_Code_Schedule_Automate_Webhook.json
    │   ├── 1813_Code_GoogleCalendar_Automation_Triggered.json
    │   ├── 1814_Code_Extractfromfile_Automate_Webhook.json
    │   ├── 1815_Code_Webhook_Automation_Webhook.json
    │   ├── 1818_Code_Converttofile_Automate_Webhook.json
    │   ├── 1819_Code_Discord_Send_Triggered.json
    │   ├── 1825_Code_Webhook_Automation_Webhook.json
    │   ├── 1832_Code_Webhook_Automation_Webhook.json
    │   ├── 1836_Code_Googledocs_Automation_Webhook.json
    │   ├── 1837_Code_Ghost_Automation_Triggered.json
    │   ├── 1839_Code_Manual_Automation_Webhook.json
    │   ├── 1844_Code_Schedule_Export_Webhook.json
    │   ├── 1850_Code_Schedule_Automation_Webhook.json
    │   ├── 1861_Code_Form_Automation_Triggered.json
    │   ├── 1862_Code_Respondtowebhook_Automation_Webhook.json
    │   ├── 1864_Code_Executecommand_Create_Webhook.json
    │   ├── 1865_Code_HTTP_Create_Webhook.json
    │   ├── 1875_Code_Schedule_Automate_Scheduled.json
    │   ├── 1906_Code_Extractfromfile_Automate_Triggered.json
    │   ├── 1910_Code_Webhook_Automation_Webhook.json
    │   ├── 1921_Code_Filter_Automation_Webhook.json
    │   ├── 1924_Code_Webhook_Export_Webhook.json
    │   ├── 1958_Code_Slack_Send_Triggered.json
    │   ├── 1965_Code_Schedule_Automation_Webhook.json
    │   ├── 1966_Code_Webhook_Automation_Webhook.json
    │   ├── 1969_Code_Stickynote_Automation_Triggered.json
    │   ├── 1984_Code_Executecommand_Automation_Webhook.json
    │   ├── 1994_Code_Manual_Automation_Webhook.json
    │   ├── 2008_Code_Webhook_Automate_Webhook.json
    │   ├── 2011_Code_Manual_Import_Webhook.json
    │   ├── 2012_Code_Schedule_Create_Scheduled.json
    │   ├── 2020_Code_Noop_Create_Triggered.json
    │   ├── 2026_Code_Manual_Automation_Webhook.json
    │   ├── 2033_Code_Extractfromfile_Automate_Webhook.json
    │   ├── 2034_Code_Webhook_Automate_Webhook.json
    │   └── 2046_Code_Webhook_Automation_Webhook.json
    ├── Coingecko/
    │   └── 0177_Coingecko_Cron_Update_Scheduled.json
    ├── Comparedatasets/
    │   └── 0623_Comparedatasets_Manual_Create_Triggered.json
    ├── Compression/
    │   ├── 1294_Compression_Manual_Automation_Webhook.json
    │   └── 1683_Compression_Manual_Automation_Webhook.json
    ├── Convertkit/
    │   └── 0723_Convertkit_Create_Triggered.json
    ├── Converttofile/
    │   ├── 0508_Converttofile_Manual_Process_Triggered.json
    │   ├── 0889_Converttofile_HTTP_Create_Webhook.json
    │   └── 1985_Converttofile_HTTP_Automation_Webhook.json
    ├── Copper/
    │   └── 1006_Copper_Automate_Triggered.json
    ├── Cortex/
    │   └── 0972_Cortex_Emailreadimap_Send.json
    ├── Create/
    │   ├── 1124_Create.json
    │   └── 1125_Create.json
    ├── Cron/
    │   └── 0822_Cron_Postgres_Automation_Scheduled.json
    ├── Crypto/
    │   ├── 0042_Crypto_Airtable_Update_Webhook.json
    │   └── 0164_Crypto_Webhook_Automate_Webhook.json
    ├── Customerio/
    │   └── 0738_Customerio_Update_Triggered.json
    ├── Datetime/
    │   ├── 0087_Datetime_Slack_Automate_Scheduled.json
    │   ├── 0159_Datetime_Functionitem_Create_Webhook.json
    │   ├── 0168_Datetime_GoogleCalendar_Send_Scheduled.json
    │   ├── 0311_Datetime_Schedule_Create_Webhook.json
    │   ├── 0316_Datetime_Schedule_Create_Webhook.json
    │   ├── 0348_Datetime_GoogleCalendar_Automation_Scheduled.json
    │   ├── 0396_Datetime_Schedule_Automation_Scheduled.json
    │   ├── 0444_Datetime_Todoist_Create_Webhook.json
    │   ├── 0682_Datetime_Schedule_Create_Scheduled.json
    │   ├── 1092_Datetime_Schedule_Sync_Scheduled.json
    │   ├── 1272_Datetime_Webhook_Create_Webhook.json
    │   ├── 1273_Datetime_Webhook_Create_Webhook.json
    │   ├── 1296_Datetime_Splitout_Process.json
    │   ├── 1510_Datetime_Code_Automation_Webhook.json
    │   ├── 1523_Datetime_Code_Automation_Scheduled.json
    │   ├── 1755_Datetime_Code_Automation_Webhook.json
    │   ├── 2003_Datetime_Code_Automation_Webhook.json
    │   └── 2050_Datetime_Code_Automation_Webhook.json
    ├── Debughelper/
    │   └── 1184_Debughelper_HTTP_Create_Webhook.json
    ├── Deep/
    │   ├── 2054_Deep_Research_Report_Generation_With_Open_Router_Google_Search_Webhook_Telegram_and_Notion.json
    │   └── generate-collaborative-handbooks-with-gpt4o-multi-agent-orchestration-human-review.json
    ├── Discord/
    │   ├── 0360_Discord_Cron_Automation_Scheduled.json
    │   └── 2028_Discord_Hunter_Automate_Triggered.json
    ├── Discordtool/
    │   ├── 1242_Discordtool_Stickynote_Automation_Triggered.json
    │   └── 1913_Discordtool_Stickynote_Automation_Webhook.json
    ├── Dropbox/
    │   └── 0969_Dropbox_Manual_Automate_Webhook.json
    ├── Editimage/
    │   ├── 0575_Editimage_Manual_Update_Webhook.json
    │   └── 1369_Editimage_Manual_Automation_Webhook.json
    ├── Elasticsearch/
    │   └── 0616_Elasticsearch_Cron_Create_Webhook.json
    ├── Emailreadimap/
    │   ├── 0134_Emailreadimap_Nextcloud_Send.json
    │   ├── 1050_Emailreadimap_Send.json
    │   ├── 1277_Emailreadimap_Manual_Send_Webhook.json
    │   ├── 1284_Emailreadimap_Markdown_Send.json
    │   ├── 1427_Emailreadimap_Manual_Send_Webhook.json
    │   ├── 1588_Emailreadimap_Markdown_Send.json
    │   ├── 1936_Emailreadimap_Manual_Send_Webhook.json
    │   └── 1962_Emailreadimap_Manual_Send_Webhook.json
    ├── Emailsend/
    │   ├── 0113_Emailsend_GoogleDrive_Send_Triggered.json
    │   └── 1628_Emailsend_Code_Automation_Webhook.json
    ├── Emelia/
    │   └── 1214_Emelia_Automate.json
    ├── Error/
    │   ├── 0126_Error_Slack_Automate_Triggered.json
    │   ├── 0395_Error_Mondaycom_Update_Triggered.json
    │   ├── 0447_Error_Slack_Send_Triggered.json
    │   ├── 0454_Error_Telegram_Send_Triggered.json
    │   ├── 0456_Error_Gmail_Send_Triggered.json
    │   ├── 0518_Error_Code_Update_Scheduled.json
    │   ├── 0545_Error_N8N_Import_Triggered.json
    │   ├── 0945_Error_Code_Send_Triggered.json
    │   ├── 1036_Error_Twilio_Send_Triggered.json
    │   ├── 1099_Error_Gmail_Send_Triggered.json
    │   ├── 1179_Error_Mailgun_Automate_Triggered.json
    │   ├── 1237_Error_Telegram_Automation_Webhook.json
    │   ├── 1715_Error_Telegram_Automation_Webhook.json
    │   ├── 1777_Error_Postgres_Send_Triggered.json
    │   ├── 1849_Error_Stickynote_Automation_Webhook.json
    │   ├── 1948_Error_Telegram_Send_Triggered.json
    │   └── 1991_Error_Code_Automation_Triggered.json
    ├── Eventbrite/
    │   └── 1007_Eventbrite_Automate_Triggered.json
    ├── Executecommand/
    │   ├── 0097_Executecommand_Mailgun_Automation_Webhook.json
    │   ├── 0190_Executecommand_Functionitem_Automate.json
    │   ├── 0534_Executecommand_Localfile_Process_Triggered.json
    │   ├── 1190_Executecommand_Readbinaryfile_Automate_Triggered.json
    │   └── 1587_Executecommand_Localfile_Automation_Triggered.json
    ├── Executeworkflow/
    │   ├── 0371_Executeworkflow_Summarize_Send_Triggered.json
    │   ├── 0372_Executeworkflow_Hackernews_Create_Triggered.json
    │   ├── 0406_Executeworkflow_Slack_Send_Triggered.json
    │   ├── 0569_Executeworkflow_Telegram_Update_Triggered.json
    │   ├── 0872_Executeworkflow_Executecommandtool_Create_Triggered.json
    │   ├── 0947_Executeworkflow_Stickynote_Automate_Triggered.json
    │   ├── 1793_Executeworkflow_Airtabletool_Automation_Triggered.json
    │   ├── 1794_Executeworkflow_Automation_Webhook.json
    │   └── 1918_Executeworkflow_Automation_Triggered.json
    ├── Executiondata/
    │   ├── 1754_Executiondata_Slack_Automate_Webhook.json
    │   └── 1972_Executiondata_Stickynote_Automation_Webhook.json
    ├── Export/
    │   └── 1597_Export.json
    ├── Extractfromfile/
    │   ├── 0601_Extractfromfile_Manual_Create_Webhook.json
    │   ├── 0646_Extractfromfile_Form_Export_Webhook.json
    │   ├── 0694_Extractfromfile_Manual_Automation_Webhook.json
    │   ├── 0741_Extractfromfile_Stickynote_Automation_Triggered.json
    │   ├── 0828_Extractfromfile_Gmail_Send_Triggered.json
    │   ├── 1246_Extractfromfile_HTTP_Automation_Webhook.json
    │   ├── 1254_Extractfromfile_Form_Automate_Triggered.json
    │   ├── 1364_Extractfromfile_Manual_Create_Webhook.json
    │   ├── 1365_Extractfromfile_Manual_Create_Webhook.json
    │   ├── 1438_Extractfromfile_Manual_Process_Webhook.json
    │   ├── 1444_Extractfromfile_Converttofile_Automation_Webhook.json
    │   ├── 1472_Extractfromfile_Converttofile_Create_Triggered.json
    │   ├── 1488_Extractfromfile_Form_Automation_Triggered.json
    │   ├── 1493_Extractfromfile_Form_Automation_Webhook.json
    │   ├── 1501_Extractfromfile_Form_Automate_Triggered.json
    │   ├── 1590_Extractfromfile_Converttofile_Create_Triggered.json
    │   ├── 1641_Extractfromfile_Manual_Automation_Webhook.json
    │   ├── 1764_Extractfromfile_HTTP_Automation_Webhook.json
    │   ├── 1847_Extractfromfile_Form_Automation_Triggered.json
    │   ├── 1978_Extractfromfile_Converttofile_Automation_Webhook.json
    │   └── 1981_Extractfromfile_Form_Automate_Triggered.json
    ├── Facebook/
    │   └── 0123_Facebook_Mattermost_Update_Triggered.json
    ├── Facebookleadads/
    │   └── 0896_Facebookleadads_Stickynote_Automate_Triggered.json
    ├── Figma/
    │   └── 1069_Figma_Stickynote_Update_Triggered.json
    ├── Filter/
    │   ├── 0335_Filter_Telegram_Send_Triggered.json
    │   ├── 0411_Filter_Form_Send_Triggered.json
    │   ├── 0431_Filter_Convertkit_Create_Triggered.json
    │   ├── 0451_Filter_Slack_Update_Webhook.json
    │   ├── 0572_Filter_Schedule_Send_Scheduled.json
    │   ├── 0595_Filter_Manual_Send_Triggered.json
    │   ├── 0612_Filter_Slack_Send_Scheduled.json
    │   ├── 0801_Filter_Schedule_Import_Webhook.json
    │   ├── 0830_Filter_Summarize_Send_Scheduled.json
    │   ├── 0849_Filter_Extractfromfile_Create_Triggered.json
    │   ├── 0879_Filter_HTTP_Update_Webhook.json
    │   ├── 0917_Filter_Whatsapp_Create_Triggered.json
    │   ├── 0948_Filter_Schedule_Create_Scheduled.json
    │   ├── 1321_Filter_Manual_Send_Triggered.json
    │   ├── 1383_Filter_Slack_Create_Webhook.json
    │   ├── 1414_Filter_Summarize_Automation_Triggered.json
    │   ├── 1562_Filter_Manual_Import_Webhook.json
    │   ├── 1570_Filter_Summarize_Automation_Triggered.json
    │   ├── 1667_Filter_Summarize_Automation_Triggered.json
    │   ├── 1751_Filter_Schedule_Automation_Scheduled.json
    │   ├── 1772_Filter_Rssfeedread_Monitor_Scheduled.json
    │   ├── 1791_Filter_Summarize_Create_Triggered.json
    │   └── 2006_Filter_Manual_Automation_Webhook.json
    ├── Flow/
    │   └── 0133_Flow_Update_Triggered.json
    ├── Form/
    │   ├── 0484_Form_Stickynote_Automation_Webhook.json
    │   ├── 0633_Form_GoogleSheets_Create_Triggered.json
    │   ├── 0648_Form_GoogleSheets_Create_Triggered.json
    │   ├── 0732_Form_Youtube_Update_Triggered.json
    │   ├── 0733_Form_Code_Create_Triggered.json
    │   ├── 0805_Form_Html_Create_Triggered.json
    │   ├── 0890_Form_Stickynote_Send_Triggered.json
    │   ├── 1316_Form_Stickynote_Automation_Webhook.json
    │   ├── 1348_Form_Automation_Triggered.json
    │   ├── 1371_Form_S3_Import_Triggered.json
    │   ├── 1420_Form_Extractfromfile_Automate_Triggered.json
    │   ├── 1441_Form_Automation_Triggered.json
    │   ├── 1537_Form_GoogleSheets_Automation_Triggered.json
    │   ├── 1554_Form_GoogleSheets_Automation_Triggered.json
    │   ├── 1611_Form_Stickynote_Automate_Triggered.json
    │   ├── 1649_Form_Extractfromfile_Automate_Triggered.json
    │   ├── 1762_Form_Aggregate_Automation_Triggered.json
    │   ├── 1767_Form_HTTP_Automation_Webhook.json
    │   ├── 1873_Form_HTTP_Automation_Webhook.json
    │   ├── 1886_Form_Markdown_Automation_Webhook.json
    │   ├── 1908_Form_Asana_Automate_Triggered.json
    │   ├── 1957_Form_Stickynote_Automation_Triggered.json
    │   └── 1968_Form_Stickynote_Automation_Webhook.json
    ├── Functionitem/
    │   ├── 0031_Functionitem_Dropbox_Automation_Webhook.json
    │   ├── 0068_Functionitem_Manual_Import_Scheduled.json
    │   ├── 0146_Functionitem_Telegram_Create_Webhook.json
    │   ├── 0178_Functionitem_Executecommand_Automation_Webhook.json
    │   ├── 0184_Functionitem_Itemlists_Automate.json
    │   ├── 0246_Functionitem_Pipedrive_Create_Scheduled.json
    │   ├── 0247_Functionitem_HTTP_Create_Webhook.json
    │   ├── 0255_Functionitem_Manual_Create_Triggered.json
    │   ├── 0266_Functionitem_Zendesk_Create_Webhook.json
    │   ├── 0267_Functionitem_Zendesk_Create_Scheduled.json
    │   ├── 1067_Functionitem_Manual_Export_Webhook.json
    │   ├── 1140_Functionitem_Raindrop_Automation_Scheduled.json
    │   └── 1157_Functionitem_Executecommand_Update_Webhook.json
    ├── Getresponse/
    │   └── 1202_Getresponse_Airtable_Import_Triggered.json
    ├── Github/
    │   ├── 0135_GitHub_Cron_Create_Scheduled.json
    │   ├── 0264_GitHub_Stickynote_Create_Triggered.json
    │   ├── 0289_GitHub_Stickynote_Update_Triggered.json
    │   ├── 0876_GitHub_Aggregate_Create_Webhook.json
    │   ├── 0973_GitHub_Slack_Create_Triggered.json
    │   ├── 0997_GitHub_Automate_Triggered.json
    │   ├── 1068_GitHub_Slack_Automation_Triggered.json
    │   ├── 1149_GitHub_Manual_Create_Scheduled.json
    │   └── 1988_GitHub_Manual_Automate_Triggered.json
    ├── Gitlab/
    │   ├── 0557_Gitlab_Filter_Create_Scheduled.json
    │   ├── 0561_Gitlab_Code_Create_Triggered.json
    │   ├── 0998_Gitlab_Automate_Triggered.json
    │   └── 1895_Gitlab_Code_Automation_Webhook.json
    ├── Gmail/
    │   ├── 0036_Gmail_GoogleDrive_Import.json
    │   ├── 0221_Gmail_Movebinarydata_Send.json
    │   ├── 0319_Gmail_Googlecalendartool_Send_Triggered.json
    │   ├── 0544_Gmail_GoogleDrive_Create_Triggered.json
    │   ├── 0852_Gmail_GoogleSheets_Create_Triggered.json
    │   ├── 1479_Gmail_Stickynote_Create_Triggered.json
    │   ├── 1565_Gmail_Stickynote_Create_Triggered.json
    │   └── 1914_Gmail_Stickynote_Send_Triggered.json
    ├── Gmailtool/
    │   ├── 0677_Gmailtool_Splitout_Create_Webhook.json
    │   ├── 1142_Gmailtool_Stickynote_Automation_Triggered.json
    │   ├── 1248_Gmailtool_Splitout_Automation_Webhook.json
    │   ├── 1613_Gmailtool_Stickynote_Automation_Triggered.json
    │   ├── 1795_Gmailtool_Executeworkflow_Send_Triggered.json
    │   └── 1909_Gmailtool_Automation_Triggered.json
    ├── Googleanalytics/
    │   ├── 0475_Googleanalytics_Code_Automate_Scheduled.json
    │   ├── 1480_Googleanalytics_Code_Automation_Webhook.json
    │   ├── 1529_Googleanalytics_Code_Automation_Webhook.json
    │   └── 1652_Googleanalytics_Code_Automation_Webhook.json
    ├── Googlebigquery/
    │   └── 0806_Googlebigquery_Stickynote_Automate_Triggered.json
    ├── Googlecalendar/
    │   ├── 0647_GoogleCalendar_Form_Create_Triggered.json
    │   ├── 0783_GoogleCalendar_Schedule_Create_Scheduled.json
    │   ├── 1116_GoogleCalendar_GoogleSheets_Create_Triggered.json
    │   ├── 1346_GoogleCalendar_GoogleSheets_Automate_Triggered.json
    │   ├── 1361_GoogleCalendar_Webhook_Create_Webhook.json
    │   ├── 1573_GoogleCalendar_Slack_Create_Webhook.json
    │   ├── 1620_GoogleCalendar_Form_Automation_Triggered.json
    │   └── 1668_GoogleCalendar_Filter_Automation_Triggered.json
    ├── Googlecalendartool/
    │   ├── 1071_Googlecalendartool_Stickynote_Create_Triggered.json
    │   ├── 1247_Googlecalendartool_Stickynote_Automation_Triggered.json
    │   ├── 1792_Googlecalendartool_Executeworkflow_Automation_Triggered.json
    │   ├── 1872_Googlecalendartool_Automation_Triggered.json
    │   └── 1928_Googlecalendartool_Stickynote_Automation_Triggered.json
    ├── Googlecontacts/
    │   └── 1239_Googlecontacts_Schedule_Send_Scheduled.json
    ├── Googledocs/
    │   ├── 0524_Googledocs_Webhook_Create_Webhook.json
    │   ├── 1134_Googledocs_Code_Create_Webhook.json
    │   ├── 1279_Googledocs_Manual_Automate_Triggered.json
    │   ├── 1287_Googledocs_Googledrivetool_Monitor_Triggered.json
    │   ├── 1335_Googledocs_Webhook_Process_Webhook.json
    │   └── 1858_Googledocs_Manual_Automate_Triggered.json
    ├── Googledrive/
    │   ├── 0839_GoogleDrive_GoogleSheets_Create_Triggered.json
    │   ├── 1673_GoogleDrive_GoogleSheets_Automation_Triggered.json
    │   └── 1806_GoogleDrive_GoogleSheets_Import_Triggered.json
    ├── Googledrivetool/
    │   └── 0875_Googledrivetool_Extractfromfile_Import_Triggered.json
    ├── Googlesheets/
    │   ├── 0004_GoogleSheets_Typeform_Automate_Triggered.json
    │   ├── 0035_GoogleSheets_Webhook_Automate_Webhook.json
    │   ├── 0082_GoogleSheets_Interval_Process_Scheduled.json
    │   ├── 0222_GoogleSheets_Readbinaryfile_Automate.json
    │   ├── 0234_GoogleSheets_Cron_Create_Scheduled.json
    │   ├── 0235_GoogleSheets_Cron_Automation_Scheduled.json
    │   ├── 0237_GoogleSheets_Spreadsheetfile_Create_Webhook.json
    │   ├── 0238_GoogleSheets_Respondtowebhook_Automate_Webhook.json
    │   ├── 0256_GoogleSheets_Readbinaryfile_Automate.json
    │   ├── 0314_GoogleSheets_Discord_Create_Triggered.json
    │   ├── 0496_GoogleSheets_Webhook_Automate_Webhook.json
    │   ├── 0635_GoogleSheets_Webflow_Create_Triggered.json
    │   ├── 0736_GoogleSheets_Slack_Send_Triggered.json
    │   ├── 0812_GoogleSheets_GoogleDrive_Automate_Triggered.json
    │   ├── 0814_GoogleSheets_Gmail_Send_Triggered.json
    │   ├── 0818_GoogleSheets_Respondtowebhook_Import_Webhook.json
    │   ├── 0837_GoogleSheets_Gmail_Create_Triggered.json
    │   ├── 0927_GoogleSheets_Slack_Send_Triggered.json
    │   ├── 0950_GoogleSheets_Slack_Send_Triggered.json
    │   ├── 0974_GoogleSheets_Telegram_Export_Triggered.json
    │   ├── 1106_GoogleSheets_Cron_Automate_Scheduled.json
    │   ├── 1153_GoogleSheets_Orbit_Automation.json
    │   ├── 1188_GoogleSheets_Emailreadimap_Create.json
    │   ├── 1661_GoogleSheets_Stickynote_Monitor_Triggered.json
    │   ├── 1833_GoogleSheets_Gmail_Create_Triggered.json
    │   └── 1860_GoogleSheets_Gmail_Automation_Webhook.json
    ├── Googlesheetstool/
    │   └── 1133_Googlesheetstool_Automation_Triggered.json
    ├── Googleslides/
    │   ├── 0095_Googleslides_Slack_Automate_Triggered.json
    │   ├── 0754_Googleslides_Noop_Automation_Triggered.json
    │   └── 1845_Googleslides_Extractfromfile_Create_Triggered.json
    ├── Googletasks/
    │   ├── 0881_Googletasks_HTTP_Update_Webhook.json
    │   └── 2031_Googletasks_Gmail_Create_Triggered.json
    ├── Googletaskstool/
    │   └── 1103_Googletaskstool_Telegram_Automation_Webhook.json
    ├── Googletranslate/
    │   └── 0788_Googletranslate_Noop_Create_Webhook.json
    ├── Gotowebinar/
    │   └── 1213_Gotowebinar_Automate.json
    ├── Graphql/
    │   ├── 0116_Graphql_Discord_Automate_Scheduled.json
    │   └── 0461_Graphql_Webhook_Automate_Webhook.json
    ├── Grist/
    │   └── 0479_Grist_Stickynote_Create_Webhook.json
    ├── Gumroad/
    │   └── 0843_Gumroad_Update_Triggered.json
    ├── Helpscout/
    │   └── 1079_Helpscout_Create_Triggered.json
    ├── Http/
    │   ├── 0015_HTTP_Cron_Update_Webhook.json
    │   ├── 0021_HTTP_Awssqs_Automation_Scheduled.json
    │   ├── 0023_HTTP_Googlebigquery_Automation_Scheduled.json
    │   ├── 0033_HTTP_Mqtt_Automation_Webhook.json
    │   ├── 0048_HTTP_Htmlextract_Create_Webhook.json
    │   ├── 0077_HTTP_Noop_Sync_Webhook.json
    │   ├── 0084_HTTP_Cron_Automation_Webhook.json
    │   ├── 0093_HTTP_GitHub_Create_Scheduled.json
    │   ├── 0136_HTTP_Googlefirebaserealtimedatabase_Update_Webhook.json
    │   ├── 0139_HTTP_Mysql_Automation_Webhook.json
    │   ├── 0143_HTTP_Gitlab_Automation_Webhook.json
    │   ├── 0144_HTTP_Twitter_Automation_Scheduled.json
    │   ├── 0153_HTTP_Dropbox_Update_Webhook.json
    │   ├── 0154_HTTP_Mattermost_Automation_Webhook.json
    │   ├── 0156_HTTP_Awsrekognition_Automation_Webhook.json
    │   ├── 0162_HTTP_Telegram_Send_Webhook.json
    │   ├── 0167_HTTP_Slack_Create_Webhook.json
    │   ├── 0223_HTTP_GoogleSheets_Automation_Webhook.json
    │   ├── 0224_HTTP_GoogleSheets_Send_Webhook.json
    │   ├── 0245_HTTP_Stripe_Create_Webhook.json
    │   ├── 0252_HTTP_GitHub_Create_Webhook.json
    │   ├── 0253_HTTP_GitHub_Send_Webhook.json
    │   ├── 0287_HTTP_Rabbitmq_Update_Scheduled.json
    │   ├── 0306_HTTP_Respondtowebhook_Import_Webhook.json
    │   ├── 0310_HTTP_Manual_Automation_Webhook.json
    │   ├── 0313_HTTP_Schedule_Create_Scheduled.json
    │   ├── 0344_HTTP_Emailreadimap_Create_Webhook.json
    │   ├── 0347_HTTP_GoogleSheets_Sync_Webhook.json
    │   ├── 0350_HTTP_Emailreadimap_Send_Webhook.json
    │   ├── 0358_HTTP_Discord_Monitor_Scheduled.json
    │   ├── 0363_HTTP_Executeworkflow_Automate_Webhook.json
    │   ├── 0364_HTTP_Twilio_Automate_Webhook.json
    │   ├── 0384_HTTP_Manual_Create_Webhook.json
    │   ├── 0390_HTTP_Manual_Automation_Webhook.json
    │   ├── 0394_HTTP_Spreadsheetfile_Create_Webhook.json
    │   ├── 0405_HTTP_Executeworkflow_Send_Webhook.json
    │   ├── 0440_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0441_HTTP_GoogleSheets_Create_Webhook.json
    │   ├── 0450_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0463_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0470_HTTP_GoogleSheets_Update_Webhook.json
    │   ├── 0471_HTTP_Form_Create_Webhook.json
    │   ├── 0485_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0492_HTTP_Respondtowebhook_Create_Webhook.json
    │   ├── 0493_HTTP_Keap_Create_Webhook.json
    │   ├── 0494_HTTP_Htmlextract_Send_Webhook.json
    │   ├── 0505_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0510_HTTP_Schedule_Automation_Webhook.json
    │   ├── 0517_HTTP_Stickynote_Process_Webhook.json
    │   ├── 0549_HTTP_Filter_Monitor_Webhook.json
    │   ├── 0550_HTTP_Slack_Create_Webhook.json
    │   ├── 0551_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0559_HTTP_Webhook_Create_Webhook.json
    │   ├── 0566_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 0588_HTTP_Schedule_Create_Webhook.json
    │   ├── 0594_HTTP_Telegram_Create_Webhook.json
    │   ├── 0606_HTTP_Respondtowebhook_Create_Webhook.json
    │   ├── 0611_HTTP_Filter_Automation_Scheduled.json
    │   ├── 0622_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0624_HTTP_Schedule_Send_Scheduled.json
    │   ├── 0626_HTTP_Schedule_Create_Scheduled.json
    │   ├── 0636_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0637_HTTP_Schedule_Automation_Webhook.json
    │   ├── 0641_HTTP_Rssfeedread_Create_Webhook.json
    │   ├── 0642_HTTP_Extractfromfile_Process_Webhook.json
    │   ├── 0687_HTTP_Form_Automation_Webhook.json
    │   ├── 0688_HTTP_Webhook_Process_Webhook.json
    │   ├── 0707_HTTP_Stripe_Create_Webhook.json
    │   ├── 0717_HTTP_Schedule_Create_Scheduled.json
    │   ├── 0739_HTTP_Form_Automate_Webhook.json
    │   ├── 0745_HTTP_Telegram_Automation_Webhook.json
    │   ├── 0752_HTTP_Rssfeedread_Automation_Scheduled.json
    │   ├── 0771_HTTP_Telegram_Create_Webhook.json
    │   ├── 0775_HTTP_Executecommand_Automate_Webhook.json
    │   ├── 0778_HTTP_Stickynote_Import_Webhook.json
    │   ├── 0825_HTTP_Manual_Send_Webhook.json
    │   ├── 0870_HTTP_Schedule_Update_Webhook.json
    │   ├── 0878_HTTP_Aggregate_Import_Webhook.json
    │   ├── 0901_HTTP_GoogleSheets_Automate_Webhook.json
    │   ├── 0934_HTTP_Code_Automate_Webhook.json
    │   ├── 0935_HTTP_GoogleSheets_Sync_Webhook.json
    │   ├── 0936_HTTP_Lingvanex_Automation_Webhook.json
    │   ├── 0937_HTTP_Editimage_Update_Webhook.json
    │   ├── 0939_HTTP_Cron_Automation_Webhook.json
    │   ├── 0952_HTTP_Medium_Automation_Webhook.json
    │   ├── 0955_HTTP_Automation_Webhook.json
    │   ├── 0956_HTTP_Readbinaryfile_Automation_Webhook.json
    │   ├── 0964_HTTP_Bannerbear_Automation_Scheduled.json
    │   ├── 0966_HTTP_Discord_Import_Scheduled.json
    │   ├── 0970_HTTP_Schedule_Create_Webhook.json
    │   ├── 1030_HTTP_Typeform_Monitor_Webhook.json
    │   ├── 1043_HTTP_Telegram_Send_Webhook.json
    │   ├── 1052_HTTP_Telegram_Update_Webhook.json
    │   ├── 1064_HTTP_Clockify_Update_Webhook.json
    │   ├── 1072_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1107_HTTP_GitHub_Automation_Webhook.json
    │   ├── 1110_HTTP_Mqtt_Monitor_Webhook.json
    │   ├── 1111_HTTP_Schedule_Automation_Webhook.json
    │   ├── 1112_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1131_HTTP_Stickynote_Import_Webhook.json
    │   ├── 1152_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1171_HTTP_Cron_Automation_Scheduled.json
    │   ├── 1187_HTTP_Dropbox_Automation_Webhook.json
    │   ├── 1192_HTTP_Timescaledb_Automation_Scheduled.json
    │   ├── 1226_HTTP_Kafka_Update_Webhook.json
    │   ├── 1233_HTTP_Deepl_Automation_Webhook.json
    │   ├── 1267_HTTP_Markdown_Automation_Webhook.json
    │   ├── 1334_HTTP_Manual_Automation_Webhook.json
    │   ├── 1340_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1349_HTTP_Slack_Automation_Webhook.json
    │   ├── 1354_HTTP_Respondtowebhook_Automate_Webhook.json
    │   ├── 1367_HTTP_Schedule_Automate_Webhook.json
    │   ├── 1370_HTTP_Extractfromfile_Automation_Webhook.json
    │   ├── 1419_HTTP_Schedule_Automation_Scheduled.json
    │   ├── 1440_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1447_HTTP_Schedule_Automation_Webhook.json
    │   ├── 1458_HTTP_Stickynote_Import_Webhook.json
    │   ├── 1462_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1464_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1473_HTTP_Respondtowebhook_Create_Webhook.json
    │   ├── 1481_HTTP_Form_Send_Webhook.json
    │   ├── 1519_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1520_HTTP_Respondtowebhook_Automation_Webhook.json
    │   ├── 1530_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1535_HTTP_Form_Automate_Webhook.json
    │   ├── 1538_HTTP_Googlecalendartool_Automation_Webhook.json
    │   ├── 1558_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1580_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1593_HTTP_Schedule_Import_Webhook.json
    │   ├── 1598_HTTP_Schedule_Automation_Scheduled.json
    │   ├── 1615_HTTP_Emailreadimap_Send_Webhook.json
    │   ├── 1617_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1631_HTTP_Telegram_Automation_Webhook.json
    │   ├── 1632_HTTP_Telegram_Monitor_Webhook.json
    │   ├── 1640_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1651_HTTP_Schedule_Automation_Webhook.json
    │   ├── 1654_HTTP_Telegram_Send_Webhook.json
    │   ├── 1655_HTTP_Schedule_Send_Webhook.json
    │   ├── 1672_HTTP_Form_Automation_Webhook.json
    │   ├── 1674_HTTP_Emailreadimap_Send_Webhook.json
    │   ├── 1675_HTTP_Emailreadimap_Send_Webhook.json
    │   ├── 1684_HTTP_Telegram_Automation_Webhook.json
    │   ├── 1687_HTTP_Telegram_Automate_Webhook.json
    │   ├── 1688_HTTP_Telegram_Automate_Webhook.json
    │   ├── 1700_HTTP_Webhook_Process_Webhook.json
    │   ├── 1720_HTTP_Stickynote_Import_Webhook.json
    │   ├── 1725_HTTP_Code_Process_Webhook.json
    │   ├── 1729_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1730_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1732_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1737_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1747_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1773_HTTP_Stripe_Sync_Webhook.json
    │   ├── 1778_HTTP_Googlecalendartool_Automation_Webhook.json
    │   ├── 1799_HTTP_Manual_Send_Webhook.json
    │   ├── 1800_HTTP_Telegram_Automation_Webhook.json
    │   ├── 1808_HTTP_Telegram_Automate_Webhook.json
    │   ├── 1811_HTTP_GoogleSheets_Automate_Webhook.json
    │   ├── 1827_HTTP_Respondtowebhook_Automate_Webhook.json
    │   ├── 1852_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1868_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1871_HTTP_Executeworkflow_Import_Webhook.json
    │   ├── 1876_HTTP_Manual_Automation_Webhook.json
    │   ├── 1883_HTTP_Form_Import_Webhook.json
    │   ├── 1885_HTTP_Extractfromfile_Automation_Webhook.json
    │   ├── 1890_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1893_HTTP_Gmail_Automate_Webhook.json
    │   ├── 1920_HTTP_Telegram_Automate_Webhook.json
    │   ├── 1959_HTTP_Schedule_Automate_Webhook.json
    │   ├── 1964_HTTP_Aggregate_Automation_Webhook.json
    │   ├── 1973_HTTP_Manual_Import_Webhook.json
    │   ├── 1976_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1989_HTTP_Schedule_Create_Webhook.json
    │   ├── 1996_HTTP_Manual_Automation_Webhook.json
    │   ├── 2019_HTTP_Stickynote_Automate_Webhook.json
    │   └── 2043_HTTP_Stickynote_Automation_Webhook.json
    ├── Hubspot/
    │   ├── 0115_HubSpot_Clearbit_Update_Triggered.json
    │   ├── 0129_HubSpot_Cron_Update_Scheduled.json
    │   ├── 0130_HubSpot_Cron_Automate_Scheduled.json
    │   ├── 0243_HubSpot_Mailchimp_Create_Scheduled.json
    │   ├── 0244_HubSpot_Mailchimp_Create_Scheduled.json
    │   ├── 0920_HubSpot_Splitout_Create_Webhook.json
    │   └── 1081_HubSpot_Automate_Triggered.json
    ├── Humanticai/
    │   └── 0043_Humanticai_Calendly_Automate_Triggered.json
    ├── Hunter/
    │   ├── 0361_Hunter_Noop_Send_Triggered.json
    │   ├── 0420_Hunter_Form_Create_Triggered.json
    │   ├── 0424_Hunter_Form_Send_Webhook.json
    │   ├── 0426_Hunter_Form_Send_Webhook.json
    │   └── 0436_Hunter_Pipedrive_Create_Triggered.json
    ├── Intercom/
    │   └── 0413_Intercom_Code_Create_Webhook.json
    ├── Interval/
    │   └── 0211_Interval_Amqp_Automation_Scheduled.json
    ├── Invoiceninja/
    │   └── 1004_Invoiceninja_Automate_Triggered.json
    ├── Jira/
    │   ├── 1035_Jira_Automate_Triggered.json
    │   └── 1769_Jira_Stickynote_Sync_Triggered.json
    ├── Jiratool/
    │   ├── 0604_Jiratool_Schedule_Create_Scheduled.json
    │   └── 1328_Jiratool_Schedule_Automate_Scheduled.json
    ├── Jotform/
    │   └── 1010_Jotform_Automate_Triggered.json
    ├── Keap/
    │   └── 1023_Keap_Automate_Triggered.json
    ├── Lemlist/
    │   ├── 0283_Lemlist_Slack_Create_Webhook.json
    │   ├── 0504_Lemlist_Slack_Create_Webhook.json
    │   └── 1382_Lemlist_Slack_Automate_Webhook.json
    ├── Limit/
    │   ├── 0473_Limit_Code_Create_Scheduled.json
    │   ├── 0673_Limit_Code_Create_Webhook.json
    │   ├── 0674_Limit_Webhook_Automation_Webhook.json
    │   ├── 0675_Limit_Code_Automation_Scheduled.json
    │   ├── 0685_Limit_Webhook_Send_Webhook.json
    │   ├── 0880_Limit_Code_Create_Webhook.json
    │   ├── 0897_Limit_Code_Send_Scheduled.json
    │   ├── 0932_Limit_Code_Create_Webhook.json
    │   ├── 0971_Limit_Splitout_Automation_Webhook.json
    │   ├── 1262_Limit_Webhook_Automation_Webhook.json
    │   ├── 1289_Limit_Webhook_Automation_Webhook.json
    │   ├── 1386_Limit_Code_Automation_Scheduled.json
    │   ├── 1483_Limit_Code_Automation_Webhook.json
    │   ├── 1527_Limit_Schedule_Automation_Scheduled.json
    │   ├── 1645_Limit_Splitout_Automation_Webhook.json
    │   ├── 1695_Limit_Code_Automation_Scheduled.json
    │   ├── 1711_Limit_Code_Automate_Webhook.json
    │   ├── 1716_Limit_Schedule_Automation_Scheduled.json
    │   ├── 1810_Limit_Splitout_Automate_Webhook.json
    │   ├── 1900_Limit_Code_Automate_Webhook.json
    │   ├── 1995_Limit_Splitout_Automation_Webhook.json
    │   └── 2049_Limit_Splitout_Automate_Webhook.json
    ├── Linkedin/
    │   ├── 0847_Linkedin_Splitout_Create_Triggered.json
    │   ├── 1121_Linkedin_Wait_Create_Webhook.json
    │   ├── 1280_Linkedin_Telegram_Automation_Scheduled.json
    │   ├── 1330_Linkedin_Schedule_Automate_Webhook.json
    │   ├── 1342_Linkedin_Telegram_Automate_Webhook.json
    │   ├── 1491_Linkedin_Wait_Create_Webhook.json
    │   ├── 1709_Linkedin_Wordpress_Automation_Webhook.json
    │   ├── 1782_Linkedin_Telegram_Automation_Scheduled.json
    │   ├── 1807_Linkedin_Googledocs_Automate_Webhook.json
    │   ├── 1922_Linkedin_Schedule_Automate_Webhook.json
    │   ├── 1939_Linkedin_Code_Automation_Webhook.json
    │   ├── 1951_Linkedin_Webhook_Automate_Webhook.json
    │   └── 2024_Linkedin_Telegram_Automate_Webhook.json
    ├── Localfile/
    │   ├── 0535_Localfile_Manual_Create_Webhook.json
    │   ├── 0536_Localfile_Splitout_Send_Triggered.json
    │   ├── 0537_Localfile_Wait_Create_Triggered.json
    │   ├── 1357_Localfile_Wait_Automation_Triggered.json
    │   ├── 1358_Localfile_Manual_Create_Webhook.json
    │   └── 1635_Localfile_Splitout_Automation_Triggered.json
    ├── Mailcheck/
    │   └── 0026_Mailcheck_Airtable_Monitor.json
    ├── Mailchimp/
    │   ├── 0345_Mailchimp_Cron_Create_Scheduled.json
    │   └── 0989_Mailchimp_Automate_Triggered.json
    ├── Mailerlite/
    │   └── 1874_Mailerlite_Gumroad_Automation_Webhook.json
    ├── Mailjet/
    │   ├── 0994_Mailjet_Automate_Triggered.json
    │   └── 1956_Mailjet_Gmail_Create_Triggered.json
    ├── Manual/
    │   ├── 0002_Manual_Totp_Automation_Triggered.json
    │   ├── 0005_Manual_Twitter_Create_Triggered.json
    │   ├── 0007_Manual_Todoist_Create_Triggered.json
    │   ├── 0011_Manual_Copper_Automate_Triggered.json
    │   ├── 0012_Manual_Copper_Automate_Triggered.json
    │   ├── 0013_Manual_Noop_Import_Triggered.json
    │   ├── 0014_Manual_Coda_Create_Triggered.json
    │   ├── 0016_Manual_Googleslides_Automate_Triggered.json
    │   ├── 0018_Manual_Chargebee_Create_Triggered.json
    │   ├── 0019_Manual_Uproc_Send_Triggered.json
    │   ├── 0022_Manual_Webflow_Automate_Triggered.json
    │   ├── 0024_Manual_Clearbit_Send_Triggered.json
    │   ├── 0025_Manual_Uproc_Automation_Triggered.json
    │   ├── 0029_Manual_Orbit_Create_Triggered.json
    │   ├── 0030_Manual_Clickup_Create_Triggered.json
    │   ├── 0032_Manual_Filemaker_Automate_Triggered.json
    │   ├── 0037_Manual_Googlebooks_Create_Triggered.json
    │   ├── 0038_Manual_Ical_Send_Triggered.json
    │   ├── 0045_Manual_Telegram_Import_Triggered.json
    │   ├── 0046_Manual_Storyblok_Import_Triggered.json
    │   ├── 0049_Manual_Awss3_Automate_Triggered.json
    │   ├── 0051_Manual_Microsofttodo_Automate_Triggered.json
    │   ├── 0052_Manual_Git_Automate_Triggered.json
    │   ├── 0054_Manual_Writebinaryfile_Automate_Triggered.json
    │   ├── 0056_Manual_Uproc_Import_Triggered.json
    │   ├── 0058_Manual_Readbinaryfile_Automate_Triggered.json
    │   ├── 0059_Manual_Twitter_Automate_Triggered.json
    │   ├── 0062_Manual_Pipedrive_Create_Triggered.json
    │   ├── 0063_Manual_Uproc_Import_Triggered.json
    │   ├── 0064_Manual_Writebinaryfile_Automate_Triggered.json
    │   ├── 0067_Manual_Uproc_Automation_Triggered.json
    │   ├── 0069_Manual_Gmail_Automation_Triggered.json
    │   ├── 0073_Manual_Rssfeedread_Automate_Triggered.json
    │   ├── 0074_Manual_HTTP_Monitor_Webhook.json
    │   ├── 0075_Manual_Noop_Update_Triggered.json
    │   ├── 0078_Manual_Slack_Monitor_Webhook.json
    │   ├── 0079_Manual_Strapi_Create_Triggered.json
    │   ├── 0080_Manual_Disqus_Import_Triggered.json
    │   ├── 0088_Manual_Harvest_Create_Triggered.json
    │   ├── 0098_Manual_Segment_Monitor_Triggered.json
    │   ├── 0100_Manual_Zendesk_Create_Triggered.json
    │   ├── 0102_Manual_HTTP_Create_Webhook.json
    │   ├── 0106_Manual_Drift_Create_Triggered.json
    │   ├── 0107_Manual_Zulip_Send_Triggered.json
    │   ├── 0110_Manual_Humanticai_Create_Webhook.json
    │   ├── 0111_Manual_Vero_Create_Triggered.json
    │   ├── 0112_Manual_Awstextract_Automate_Triggered.json
    │   ├── 0114_Manual_Salesmate_Create_Triggered.json
    │   ├── 0117_Manual_Uplead_Import_Triggered.json
    │   ├── 0119_Manual_Cron_Create_Webhook.json
    │   ├── 0120_Manual_GoogleSheets_Automate_Triggered.json
    │   ├── 0122_Manual_Flow_Import_Triggered.json
    │   ├── 0127_Manual_Noop_Monitor_Triggered.json
    │   ├── 0128_Manual_N8Ntrainingcustomerdatastore_Automation_Webhook.json
    │   ├── 0131_Manual_Start_Automation_Webhook.json
    │   ├── 0137_Manual_Editimage_Create_Webhook.json
    │   ├── 0145_Manual_Send_Triggered.json
    │   ├── 0157_Manual_Import_Triggered.json
    │   ├── 0160_Manual_Automation_Triggered.json
    │   ├── 0166_Manual_Lingvanex_Automation_Webhook.json
    │   ├── 0173_Manual_Automate_Triggered.json
    │   ├── 0175_Manual_Sendy_Create_Triggered.json
    │   ├── 0179_Manual_Automate_Triggered.json
    │   ├── 0181_Manual_HTTP_Automation_Webhook.json
    │   ├── 0189_Manual_Quickbase_Create_Triggered.json
    │   ├── 0191_Manual_Slack_Automation_Webhook.json
    │   ├── 0192_Manual_Openthesaurus_Import_Triggered.json
    │   ├── 0195_Manual_Pagerduty_Create_Triggered.json
    │   ├── 0198_Manual_Thehive_Create_Triggered.json
    │   ├── 0199_Manual_HTTP_Automation_Webhook.json
    │   ├── 0200_Manual_Executecommand_Export_Scheduled.json
    │   ├── 0202_Manual_Cortex_Import_Triggered.json
    │   ├── 0203_Manual_Writebinaryfile_Automation_Webhook.json
    │   ├── 0204_Manual_Questdb_Create_Triggered.json
    │   ├── 0206_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0207_Manual_Slack_Create_Webhook.json
    │   ├── 0208_Manual_Iterable_Create_Triggered.json
    │   ├── 0210_Manual_Yourls_Create_Triggered.json
    │   ├── 0213_Manual_Markdown_Create_Webhook.json
    │   ├── 0214_Manual_Markdown_Create_Webhook.json
    │   ├── 0216_Manual_N8Ntrainingcustomerdatastore_Automation_Triggered.json
    │   ├── 0217_Manual_Ghost_Create_Triggered.json
    │   ├── 0218_Manual_Airtable_Update_Triggered.json
    │   ├── 0219_Manual_Snowflake_Create_Triggered.json
    │   ├── 0225_Manual_Twist_Create_Triggered.json
    │   ├── 0226_Manual_Stickynote_Update_Triggered.json
    │   ├── 0227_Manual_N8Ntrainingcustomerdatastore_Automate_Triggered.json
    │   ├── 0228_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0229_Manual_HTTP_Create_Webhook.json
    │   ├── 0233_Manual_N8Ntrainingcustomerdatastore_Create_Triggered.json
    │   ├── 0236_Manual_GoogleSheets_Create_Scheduled.json
    │   ├── 0240_Manual_Gmail_Create_Triggered.json
    │   ├── 0242_Manual_Brandfetch_Import_Triggered.json
    │   ├── 0250_Manual_Baserow_Update_Webhook.json
    │   ├── 0254_Manual_Mattermost_Create_Triggered.json
    │   ├── 0257_Manual_GoogleSheets_Create_Triggered.json
    │   ├── 0259_Manual_HTTP_Create_Webhook.json
    │   ├── 0261_Manual_Googlefirebasecloudfirestore_Create_Triggered.json
    │   ├── 0271_Manual_HTTP_Create_Webhook.json
    │   ├── 0284_Manual_Readbinaryfile_Create_Triggered.json
    │   ├── 0292_Manual_Stickynote_Export_Triggered.json
    │   ├── 0293_Manual_Woocommerce_Create_Triggered.json
    │   ├── 0297_Manual_Openai_Export_Triggered.json
    │   ├── 0300_Manual_Egoi_Create_Triggered.json
    │   ├── 0302_Manual_N8Ntrainingcustomerdatastore_Automate_Triggered.json
    │   ├── 0303_Manual_Stickynote_Export_Triggered.json
    │   ├── 0304_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0305_Manual_Telegram_Create_Triggered.json
    │   ├── 0312_Manual_HTTP_Create_Webhook.json
    │   ├── 0315_Manual_Comparedatasets_Automate_Triggered.json
    │   ├── 0317_Manual_Movebinarydata_Process_Triggered.json
    │   ├── 0321_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0323_Manual_Stickynote_Process_Triggered.json
    │   ├── 0324_Manual_Stickynote_Update_Triggered.json
    │   ├── 0326_Manual_Stickynote_Send_Triggered.json
    │   ├── 0328_Manual_GoogleDrive_Automate_Triggered.json
    │   ├── 0329_Manual_Send_Triggered.json
    │   ├── 0336_Manual_Snowflake_Automation_Webhook.json
    │   ├── 0337_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0338_Manual_Stickynote_Export_Webhook.json
    │   ├── 0342_Manual_GoogleCalendar_Create_Triggered.json
    │   ├── 0343_Manual_Editimage_Create_Webhook.json
    │   ├── 0349_Manual_GoogleSheets_Automation_Scheduled.json
    │   ├── 0353_Manual_Twilio_Send_Triggered.json
    │   ├── 0355_Manual_Twake_Send_Triggered.json
    │   ├── 0356_Manual_Twitter_Automate_Scheduled.json
    │   ├── 0359_Manual_Wordpress_Automation_Triggered.json
    │   ├── 0369_Manual_Airtable_Automation_Triggered.json
    │   ├── 0374_Manual_Stickynote_Send_Webhook.json
    │   ├── 0377_Manual_Stickynote_Update_Triggered.json
    │   ├── 0389_Manual_Googleanalytics_Import_Triggered.json
    │   ├── 0399_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0400_Manual_Code_Create_Webhook.json
    │   ├── 0408_Manual_Sendgrid_Create_Triggered.json
    │   ├── 0409_Manual_Googlecontacts_Create_Triggered.json
    │   ├── 0439_Manual_Schedule_Create_Scheduled.json
    │   ├── 0455_Manual_Gsuiteadmin_Create_Triggered.json
    │   ├── 0458_Manual_Code_Create_Triggered.json
    │   ├── 0476_Manual_Youtube_Create_Triggered.json
    │   ├── 0477_Manual_Youtube_Create_Triggered.json
    │   ├── 0489_Manual_Debughelper_Create_Triggered.json
    │   ├── 0495_Manual_HTTP_Update_Webhook.json
    │   ├── 0501_Manual_Extractfromfile_Send_Webhook.json
    │   ├── 0507_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0509_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0513_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0514_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0515_Manual_HTTP_Automation_Webhook.json
    │   ├── 0521_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0522_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0531_Manual_HTTP_Update_Webhook.json
    │   ├── 0540_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0541_Manual_Stickynote_Update_Triggered.json
    │   ├── 0543_Manual_N8N_Export_Triggered.json
    │   ├── 0558_Manual_Stickynote_Automation_Triggered.json
    │   ├── 0568_Manual_Zendesk_Automation_Scheduled.json
    │   ├── 0589_Manual_Filter_Update_Webhook.json
    │   ├── 0617_Manual_Noop_Automation_Webhook.json
    │   ├── 0653_Manual_Convertkit_Create_Triggered.json
    │   ├── 0662_Manual_Schedule_Automation_Scheduled.json
    │   ├── 0678_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0703_Manual_Sentryio_Create_Triggered.json
    │   ├── 0710_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0713_Manual_HTTP_Update_Webhook.json
    │   ├── 0728_Manual_GoogleSheets_Update_Triggered.json
    │   ├── 0734_Manual_HTTP_Create_Webhook.json
    │   ├── 0737_Manual_Executecommand_Automation_Triggered.json
    │   ├── 0744_Manual_Googletasks_Create_Triggered.json
    │   ├── 0746_Manual_Discord_Automation_Triggered.json
    │   ├── 0757_Manual_Wordpress_Create_Webhook.json
    │   ├── 0770_Manual_Stickynote_Create_Webhook.json
    │   ├── 0776_Manual_Mailerlite_Create_Triggered.json
    │   ├── 0779_Manual_HTTP_Create_Webhook.json
    │   ├── 0803_Manual_Customerio_Create_Triggered.json
    │   ├── 0821_Manual_Noop_Create_Triggered.json
    │   ├── 0827_Manual_Functionitem_Send_Triggered.json
    │   ├── 0838_Manual_GoogleSheets_Update_Triggered.json
    │   ├── 0853_Manual_Executecommand_Automate_Triggered.json
    │   ├── 0861_Manual_Stickynote_Update_Triggered.json
    │   ├── 0886_Manual_Stickynote_Import_Webhook.json
    │   ├── 0887_Manual_Stickynote_Create_Webhook.json
    │   ├── 0906_Manual_GoogleSheets_Update_Triggered.json
    │   ├── 0908_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0909_Manual_Stickynote_Process_Triggered.json
    │   ├── 0928_Manual_N8N_Automate_Triggered.json
    │   ├── 0930_Manual_Spreadsheetfile_Export_Triggered.json
    │   ├── 0933_Manual_Stickynote_Create_Webhook.json
    │   ├── 0938_Manual_Mailchimp_Automation_Triggered.json
    │   ├── 0943_Manual_Xml_Automation_Triggered.json
    │   ├── 0949_Manual_Twilio_Automate_Triggered.json
    │   ├── 0951_Manual_Activecampaign_Automation_Triggered.json
    │   ├── 0954_Manual_Htmlextract_Automation_Webhook.json
    │   ├── 0957_Manual_Paypal_Automation_Triggered.json
    │   ├── 0959_Manual_Signl4_Automate_Triggered.json
    │   ├── 0960_Manual_Freshdesk_Automate_Triggered.json
    │   ├── 0962_Manual_Postgres_Automate_Triggered.json
    │   ├── 0975_Manual_Zulip_Automation_Scheduled.json
    │   ├── 0976_Manual_HTTP_Automation_Webhook.json
    │   ├── 0981_Manual_Awssns_Automate_Triggered.json
    │   ├── 0982_Manual_Mongodb_Automate_Triggered.json
    │   ├── 0983_Manual_Awsses_Automate_Triggered.json
    │   ├── 0985_Manual_Awslambda_Automate_Triggered.json
    │   ├── 0986_Manual_Msg91_Send_Triggered.json
    │   ├── 0987_Manual_Facebookgraphapi_Automation_Triggered.json
    │   ├── 0988_Manual_Writebinaryfile_Automate_Triggered.json
    │   ├── 0990_Manual_Cockpit_Automate_Triggered.json
    │   ├── 0991_Manual_Hunter_Automate_Triggered.json
    │   ├── 0993_Manual_Mailjet_Automate_Triggered.json
    │   ├── 0995_Manual_Mailgun_Automate_Triggered.json
    │   ├── 0996_Manual_Hackernews_Create_Triggered.json
    │   ├── 1000_Manual_Travisci_Create_Triggered.json
    │   ├── 1003_Manual_Invoiceninja_Automate_Triggered.json
    │   ├── 1008_Manual_Rundeck_Automate_Triggered.json
    │   ├── 1011_Manual_Xero_Automate_Triggered.json
    │   ├── 1012_Manual_Bannerbear_Automate_Triggered.json
    │   ├── 1013_Manual_Bannerbear_Automate_Triggered.json
    │   ├── 1014_Manual_Wordpress_Automate_Triggered.json
    │   ├── 1016_Manual_Shopify_Automate_Triggered.json
    │   ├── 1017_Manual_Mautic_Automate_Triggered.json
    │   ├── 1019_Manual_Paddle_Create_Triggered.json
    │   ├── 1021_Manual_Zohocrm_Automate_Triggered.json
    │   ├── 1022_Manual_Keap_Automate_Triggered.json
    │   ├── 1024_Manual_Mondaycom_Automate_Triggered.json
    │   ├── 1025_Manual_Redis_Automate_Triggered.json
    │   ├── 1026_Manual_Graphql_Automate_Triggered.json
    │   ├── 1027_Manual_Box_Automate_Triggered.json
    │   ├── 1028_Manual_Trello_Automation_Triggered.json
    │   ├── 1029_Manual_Xml_Process_Webhook.json
    │   ├── 1032_Manual_Microsoftonedrive_Automate_Triggered.json
    │   ├── 1033_Manual_Microsoftexcel_Automate_Triggered.json
    │   ├── 1034_Manual_Helpscout_Automate_Triggered.json
    │   ├── 1037_Manual_Mandrill_Automate_Triggered.json
    │   ├── 1038_Manual_Crypto_Automate_Triggered.json
    │   ├── 1039_Manual_Datetime_Automate_Triggered.json
    │   ├── 1040_Manual_Editimage_Update_Webhook.json
    │   ├── 1041_Manual_Readbinaryfile_Automate_Triggered.json
    │   ├── 1042_Manual_Readbinaryfiles_Automate_Triggered.json
    │   ├── 1044_Manual_Automate_Triggered.json
    │   ├── 1045_Manual_Renamekeys_Automate_Triggered.json
    │   ├── 1046_Manual_Rssfeedread_Automate_Triggered.json
    │   ├── 1047_Manual_Emailsend_Send_Triggered.json
    │   ├── 1048_Manual_Readpdf_Automate_Triggered.json
    │   ├── 1049_Manual_Readbinaryfile_Automate_Triggered.json
    │   ├── 1051_Manual_Executeworkflow_Automate_Triggered.json
    │   ├── 1053_Manual_Philipshue_Automation_Triggered.json
    │   ├── 1054_Manual_Cratedb_Automate_Triggered.json
    │   ├── 1055_Manual_Mysql_Automation_Triggered.json
    │   ├── 1056_Manual_Postgres_Automate_Triggered.json
    │   ├── 1057_Manual_Mocean_Send_Triggered.json
    │   ├── 1062_Manual_GoogleSheets_Update_Triggered.json
    │   ├── 1066_Manual_GitHub_Create_Triggered.json
    │   ├── 1073_Manual_GoogleSheets_Automate_Triggered.json
    │   ├── 1074_Manual_HTTP_Automation_Webhook.json
    │   ├── 1075_Manual_Wordpress_Create_Triggered.json
    │   ├── 1076_Manual_Cron_Automation_Scheduled.json
    │   ├── 1078_Manual_Dropbox_Automation_Webhook.json
    │   ├── 1080_Manual_HTTP_Automation_Webhook.json
    │   ├── 1086_Manual_Contentful_Automation_Triggered.json
    │   ├── 1087_Manual_Unleashedsoftware_Automation_Triggered.json
    │   ├── 1088_Manual_S3_Import_Webhook.json
    │   ├── 1089_Manual_Writebinaryfile_Automation_Webhook.json
    │   ├── 1090_Manual_Code_Automate_Triggered.json
    │   ├── 1093_Manual_Ftp_Automation_Webhook.json
    │   ├── 1094_Manual_Salesforce_Automate_Triggered.json
    │   ├── 1095_Manual_Teams_Automate_Triggered.json
    │   ├── 1096_Manual_Linkedin_Automation_Webhook.json
    │   ├── 1097_Manual_Noop_Automate_Triggered.json
    │   ├── 1098_Manual_Import_Triggered.json
    │   ├── 1100_Manual_Taiga_Create_Triggered.json
    │   ├── 1102_Manual_Openai_Automation_Triggered.json
    │   ├── 1105_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1115_Manual_Wekan_Automation_Triggered.json
    │   ├── 1122_Manual_Rssfeedread_Automation_Triggered.json
    │   ├── 1126_Manual_Clockify_Create_Triggered.json
    │   ├── 1128_Manual_HTTP_Automation_Webhook.json
    │   ├── 1136_Manual_HubSpot_Automation_Triggered.json
    │   ├── 1139_Manual_Medium_Automation_Triggered.json
    │   ├── 1154_Manual_Automizy_Create_Triggered.json
    │   ├── 1158_Manual_Matrix_Create_Triggered.json
    │   ├── 1159_Manual_Zoom_Automation_Triggered.json
    │   ├── 1162_Manual_Circleci_Import_Triggered.json
    │   ├── 1166_Manual_Messagebird_Send_Triggered.json
    │   ├── 1170_Manual_Jira_Create_Triggered.json
    │   ├── 1173_Manual_Openweathermap_Import_Triggered.json
    │   ├── 1174_Manual_Readbinaryfile_Automate_Triggered.json
    │   ├── 1175_Manual_Trello_Create_Triggered.json
    │   ├── 1181_Manual_Spotify_Automation_Triggered.json
    │   ├── 1183_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1189_Manual_Rocketchat_Send_Triggered.json
    │   ├── 1193_Manual_Intercom_Create_Triggered.json
    │   ├── 1196_Manual_Securityscorecard_Automate_Triggered.json
    │   ├── 1197_Manual_Reddit_Automate_Triggered.json
    │   ├── 1199_Manual_Sms77_Send_Triggered.json
    │   ├── 1200_Manual_Googletranslate_Automation_Triggered.json
    │   ├── 1201_Manual_Discourse_Automate_Triggered.json
    │   ├── 1203_Manual_Stackby_Automate_Triggered.json
    │   ├── 1204_Manual_Peekalink_Automate_Triggered.json
    │   ├── 1205_Manual_Tapfiliate_Automate_Triggered.json
    │   ├── 1206_Manual_Strava_Create_Triggered.json
    │   ├── 1210_Manual_Affinity_Create_Triggered.json
    │   ├── 1216_Manual_Schedule_Automate_Scheduled.json
    │   ├── 1218_Manual_Mailerlite_Create_Triggered.json
    │   ├── 1219_Manual_Agilecrm_Create_Triggered.json
    │   ├── 1225_Manual_Asana_Create_Triggered.json
    │   ├── 1231_Manual_Splitinbatches_Automate_Triggered.json
    │   ├── 1232_Manual_Splitinbatches_Automate_Triggered.json
    │   ├── 1234_Manual_Microsoftsql_Automation_Triggered.json
    │   ├── 1235_Manual_HTTP_Automation_Webhook.json
    │   ├── 1238_Manual_Code_Automation_Webhook.json
    │   ├── 1241_Manual_HTTP_Process_Webhook.json
    │   ├── 1285_Manual_Stickynote_Import_Triggered.json
    │   ├── 1303_Manual_Stickynote_Create_Triggered.json
    │   ├── 1314_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1319_Manual_Stickynote_Automation_Triggered.json
    │   ├── 1322_Manual_Wordpress_Automation_Triggered.json
    │   ├── 1339_Manual_HTTP_Automation_Webhook.json
    │   ├── 1351_Manual_Splitout_Automation_Webhook.json
    │   ├── 1360_Manual_Stickynote_Create_Triggered.json
    │   ├── 1373_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1376_Manual_GoogleDrive_Automation_Triggered.json
    │   ├── 1390_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1393_Manual_Editimage_Create_Webhook.json
    │   ├── 1394_Manual_Humanticai_Create_Webhook.json
    │   ├── 1397_Manual_Stickynote_Automation_Triggered.json
    │   ├── 1422_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1436_Manual_HTTP_Automation_Webhook.json
    │   ├── 1445_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1449_Manual_Webhook_Automate_Webhook.json
    │   ├── 1457_Manual_Stickynote_Process_Triggered.json
    │   ├── 1467_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1475_Manual_Stickynote_Automation_Triggered.json
    │   ├── 1503_Manual_HTTP_Export_Webhook.json
    │   ├── 1505_Manual_Stickynote_Send_Webhook.json
    │   ├── 1511_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1516_Manual_Stickynote_Send_Webhook.json
    │   ├── 1517_Manual_Code_Automation_Webhook.json
    │   ├── 1528_Manual_Gmail_Send_Triggered.json
    │   ├── 1532_Manual_Wait_Automation_Webhook.json
    │   ├── 1543_Manual_Openai_Automation_Triggered.json
    │   ├── 1545_Manual_Code_Automation_Triggered.json
    │   ├── 1546_Manual_Splitout_Automation_Webhook.json
    │   ├── 1547_Manual_HTTP_Automation_Webhook.json
    │   ├── 1552_Manual_Summarize_Automation_Triggered.json
    │   ├── 1581_Manual_Stickynote_Create_Triggered.json
    │   ├── 1584_Manual_HTTP_Automation_Webhook.json
    │   ├── 1604_Manual_Openai_Automation_Triggered.json
    │   ├── 1616_Manual_Stickynote_Send_Webhook.json
    │   ├── 1621_Manual_Stickynote_Automate_Webhook.json
    │   ├── 1622_Manual_N8N_Automation_Triggered.json
    │   ├── 1633_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1636_Manual_Openai_Automation_Triggered.json
    │   ├── 1650_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1669_Manual_Openai_Automation_Triggered.json
    │   ├── 1676_Manual_Wait_Automation_Webhook.json
    │   ├── 1702_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1704_Manual_Schedule_Automation_Scheduled.json
    │   ├── 1707_Manual_Stickynote_Automate_Webhook.json
    │   ├── 1714_Manual_Start_Update_Webhook.json
    │   ├── 1735_Manual_Airtop_Automation_Triggered.json
    │   ├── 1739_Manual_GoogleSheets_Create_Triggered.json
    │   ├── 1766_Manual_GoogleSheets_Automation_Triggered.json
    │   ├── 1776_Manual_Ftp_Automation_Triggered.json
    │   ├── 1817_Manual_HTTP_Update_Webhook.json
    │   ├── 1821_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1826_Manual_Wordpress_Automation_Triggered.json
    │   ├── 1828_Manual_Totp_Automation_Triggered.json
    │   ├── 1835_Manual_Slack_Automation_Triggered.json
    │   ├── 1842_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1851_Manual_Comparedatasets_Automation_Triggered.json
    │   ├── 1853_Manual_N8N_Create_Triggered.json
    │   ├── 1863_Manual_HTTP_Automation_Webhook.json
    │   ├── 1866_Manual_Supabase_Automation_Triggered.json
    │   ├── 1869_Manual_N8Ntrainingcustomerdatastore_Automation_Triggered.json
    │   ├── 1882_Manual_Markdown_Automation_Webhook.json
    │   ├── 1884_Manual_Stickynote_Import_Webhook.json
    │   ├── 1901_Manual_Filter_Automate_Scheduled.json
    │   ├── 1912_Manual_GoogleSheets_Automation_Triggered.json
    │   ├── 1960_Manual_Stickynote_Create_Webhook.json
    │   ├── 1961_Manual_Readbinaryfile_Import_Triggered.json
    │   ├── 1971_Manual_HTTP_Automate_Webhook.json
    │   ├── 1979_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1999_Manual_HTTP_Import_Webhook.json
    │   ├── 2001_Manual_Stickynote_Automation_Webhook.json
    │   ├── 2002_Manual_Code_Automation_Webhook.json
    │   ├── 2013_Manual_Stickynote_Create_Webhook.json
    │   ├── 2017_Manual_Stickynote_Import_Webhook.json
    │   ├── 2021_Manual_GoogleSheets_Automation_Triggered.json
    │   ├── 2022_Manual_Extractfromfile_Update_Webhook.json
    │   ├── 2032_Manual_HTTP_Send_Webhook.json
    │   ├── 2035_Manual_GoogleSheets_Automation_Webhook.json
    │   └── 2037_Manual_N8N_Automation_Triggered.json
    ├── Markdown/
    │   ├── 1240_Markdown_Stickynote_Send.json
    │   ├── 1540_Markdown_Stickynote_Automation_Webhook.json
    │   └── 1571_Markdown_Stickynote_Send.json
    ├── Matrix/
    │   └── 1236_Matrix_Cron_Automate_Scheduled.json
    ├── Mattermost/
    │   ├── 0017_Mattermost_Emelia_Automate_Triggered.json
    │   ├── 0020_Mattermost_Emelia_Automate_Triggered.json
    │   ├── 0027_Mattermost_N8N_Automate_Triggered.json
    │   ├── 0028_Mattermost_Workflow_Automate_Webhook.json
    │   ├── 0040_Mattermost_Noop_Automate_Triggered.json
    │   ├── 0132_Mattermost_Googlecloudnaturallanguage_Send_Triggered.json
    │   ├── 0169_Mattermost_Profitwell_Send_Scheduled.json
    │   ├── 0180_Mattermost_Airtable_Create_Triggered.json
    │   ├── 0294_Mattermost_Woocommerce_Create_Triggered.json
    │   ├── 0301_Mattermost_Noop_Automation_Webhook.json
    │   ├── 0357_Mattermost_Twitter_Automation_Scheduled.json
    │   ├── 0850_Mattermost_Pagerduty_Automate_Webhook.json
    │   ├── 0855_Mattermost_Pagerduty_Automate_Webhook.json
    │   ├── 0857_Mattermost_Webhook_Automate_Webhook.json
    │   ├── 0865_Mattermost_Twilio_Automate_Triggered.json
    │   ├── 0941_Mattermost_GoogleSheets_Automation_Scheduled.json
    │   ├── 1077_Mattermost_Webhook_Automate_Webhook.json
    │   ├── 1117_Mattermost_GoogleSheets_Automate_Scheduled.json
    │   ├── 1137_Mattermost_Cron_Automate_Scheduled.json
    │   ├── 1167_Mattermost_GoogleSheets_Create_Scheduled.json
    │   ├── 1215_Mattermost_Typeform_Automate_Triggered.json
    │   ├── 1221_Mattermost_Lemlist_Automate_Triggered.json
    │   ├── 1309_Mattermost_Googlecloudnaturallanguage_Send_Triggered.json
    │   └── 1310_Mattermost_Typeform_Send_Triggered.json
    ├── Mautic/
    │   ├── 0155_Mautic_Twilio_Update_Triggered.json
    │   ├── 0275_Mautic_Mondaycom_Create_Triggered.json
    │   ├── 0490_Mautic_Gmail_Send_Triggered.json
    │   ├── 0963_Mautic_Webhook_Update_Webhook.json
    │   ├── 1083_Mautic_GoogleSheets_Automate_Scheduled.json
    │   ├── 1160_Mautic_Woocommerce_Create_Triggered.json
    │   ├── 1168_Mautic_Slack_Send_Triggered.json
    │   └── 1526_Mautic_Webhook_Automation_Webhook.json
    ├── Microsoftexcel/
    │   └── 0258_Microsoftexcel_Manual_Create_Triggered.json
    ├── Microsoftonedrive/
    │   └── 0276_Microsoftonedrive_Readbinaryfile_Automation_Webhook.json
    ├── Microsoftoutlook/
    │   ├── 0835_Microsoftoutlook_Schedule_Automation_Scheduled.json
    │   ├── 1870_Microsoftoutlook_GoogleCalendar_Automation_Triggered.json
    │   ├── 1925_Microsoftoutlook_Microsoftoutlooktool_Automation_Triggered.json
    │   └── 1944_Microsoftoutlook_Telegram_Send_Triggered.json
    ├── Microsofttodo/
    │   └── 1494_Microsofttodo_Webhook_Automation_Webhook.json
    ├── Mondaycom/
    │   ├── 1551_Mondaycom_Schedule_Send_Scheduled.json
    │   ├── 1553_Mondaycom_Splitout_Automation_Webhook.json
    │   ├── 1781_Mondaycom_Splitout_Import_Triggered.json
    │   └── 1974_Mondaycom_Schedule_Send_Scheduled.json
    ├── Mongodbtool/
    │   ├── 0511_Mongodbtool_Stickynote_Automation_Triggered.json
    │   └── 1555_Mongodbtool_Stickynote_Automation_Triggered.json
    ├── Mqtt/
    │   └── 0992_Mqtt_Send_Triggered.json
    ├── Mysqltool/
    │   ├── 1350_Mysqltool_Stickynote_Automate_Webhook.json
    │   └── 1372_Mysqltool_Stickynote_Automate_Webhook.json
    ├── N8ntrainingcustomermessenger/
    │   └── 0230_N8Ntrainingcustomermessenger_Wait_Create_Triggered.json
    ├── Netlify/
    │   ├── 0103_Netlify_Airtable_Automate_Triggered.json
    │   ├── 0104_Netlify_Webhook_Automate_Webhook.json
    │   └── 0105_Netlify_Slack_Automate_Triggered.json
    ├── Nocodb/
    │   └── 0193_Nocodb_Telegram_Create_Webhook.json
    ├── Noop/
    │   ├── 0061_Noop_GitHub_Automate_Triggered.json
    │   ├── 0083_Noop_HTTP_Automation_Webhook.json
    │   ├── 0089_Noop_Telegram_Automate_Triggered.json
    │   ├── 0094_Noop_Gmail_Create_Triggered.json
    │   ├── 0096_Noop_GitHub_Automate_Triggered.json
    │   ├── 0108_Noop_GitHub_Create_Triggered.json
    │   ├── 0172_Noop_GoogleSheets_Create_Webhook.json
    │   ├── 0174_Noop_Emailsend_Automation_Scheduled.json
    │   ├── 0209_Noop_Kafka_Send_Triggered.json
    │   ├── 0212_Noop_Cratedb_Automation_Triggered.json
    │   ├── 0291_Noop_Rabbitmq_Send_Triggered.json
    │   ├── 0327_Noop_Slack_Send_Webhook.json
    │   ├── 0416_Noop_HubSpot_Create_Webhook.json
    │   ├── 0610_Noop_Twilio_Automate_Scheduled.json
    │   ├── 0748_Noop_Telegram_Automation_Scheduled.json
    │   ├── 0809_Noop_Slack_Send_Scheduled.json
    │   ├── 0929_Noop_Extractfromfile_Automation.json
    │   ├── 1091_Noop_Trello_Import_Triggered.json
    │   ├── 1130_Noop_Twilio_Send_Scheduled.json
    │   ├── 1150_Noop_Executecommand_Automation_Scheduled.json
    │   ├── 1442_Noop_Stickynote_Automation_Triggered.json
    │   ├── 1486_Noop_Stickynote_Automation_Triggered.json
    │   ├── 1838_Noop_Stickynote_Automation_Triggered.json
    │   └── 1892_Noop_Mautic_Automation_Webhook.json
    ├── Notion/
    │   ├── 0141_Notion_Webhook_Create_Webhook.json
    │   ├── 0142_Notion_Webhook_Create_Webhook.json
    │   └── 0272_Notion_GoogleDrive_Create_Triggered.json
    ├── Odoo/
    │   ├── 0977_Odoo_Code_Import_Scheduled.json
    │   └── 1929_Odoo_Schedule_Automate_Scheduled.json
    ├── Onfleet/
    │   └── 0187_Onfleet_GoogleDrive_Create_Triggered.json
    ├── Openai/
    │   ├── 0248_Openai_Telegram_Automate_Triggered.json
    │   ├── 0334_Openai_Form_Create_Triggered.json
    │   ├── 0464_Openai_Form_Create_Webhook.json
    │   ├── 0785_Openai_Twitter_Create.json
    │   ├── 1177_Openai_GoogleSheets_Create_Triggered.json
    │   ├── 1256_Openai_Form_Automation_Triggered.json
    │   ├── 1618_Openai_GoogleSheets_Create_Triggered.json
    │   └── 1685_Openai_Telegram_Automate_Triggered.json
    ├── Openweathermap/
    │   ├── 0006_Openweathermap_Cron_Automate_Scheduled.json
    │   ├── 0065_Openweathermap_Line_Update_Scheduled.json
    │   ├── 0072_Openweathermap_Cron_Update_Scheduled.json
    │   ├── 0161_Openweathermap_Spontit_Update_Scheduled.json
    │   ├── 0196_Openweathermap_Webhook_Automation_Webhook.json
    │   ├── 0751_Openweathermap_Telegram_Automate_Triggered.json
    │   ├── 1101_Openweathermap_Twilio_Automate_Scheduled.json
    │   ├── 1118_Openweathermap_Webhook_Automate_Webhook.json
    │   ├── 1119_Openweathermap_Twilio_Automate_Webhook.json
    │   ├── 1156_Openweathermap_Cron_Update_Scheduled.json
    │   ├── 1163_Openweathermap_Cron_Update_Scheduled.json
    │   ├── 1195_Openweathermap_Pushover_Update_Scheduled.json
    │   └── 1222_Openweathermap_Webhook_Create_Webhook.json
    ├── Paypal/
    │   └── 0965_Paypal_Update_Triggered.json
    ├── Pipedrive/
    │   ├── 0071_Pipedrive_Update_Triggered.json
    │   ├── 0249_Pipedrive_Stickynote_Create_Webhook.json
    │   └── 0251_Pipedrive_Spreadsheetfile_Create_Triggered.json
    ├── Postgres/
    │   ├── 0263_Postgres_Code_Automation_Webhook.json
    │   ├── 0460_Postgres_Filter_Import_Scheduled.json
    │   ├── 0666_Postgres_Webhook_Create_Webhook.json
    │   ├── 1108_Postgres_Googlecloudnaturallanguage_Automation_Scheduled.json
    │   ├── 1144_Postgres_Code_Automation_Triggered.json
    │   ├── 1245_Postgres_Extractfromfile_Automation_Triggered.json
    │   ├── 1249_Postgres_Webhook_Automation_Webhook.json
    │   ├── 1421_Postgres_Googlecloudnaturallanguage_Automation_Scheduled.json
    │   ├── 1752_Postgres_Wordpress_Automation_Webhook.json
    │   ├── 1788_Postgres_Code_Automation_Webhook.json
    │   ├── 1942_Postgres_Wordpress_Automation_Webhook.json
    │   └── 2014_Postgres_Webhook_Automation_Webhook.json
    ├── Postgrestool/
    │   ├── 0404_Postgrestool_Stickynote_Send_Triggered.json
    │   ├── 0656_Postgrestool_Stickynote_Send_Triggered.json
    │   ├── 1251_Postgrestool_Stickynote_Automation_Triggered.json
    │   ├── 1377_Postgrestool_Stickynote_Automation_Triggered.json
    │   └── 1848_Postgrestool_Stickynote_Automation_Triggered.json
    ├── Posthog/
    │   └── 1217_Posthog_Webhook_Automate_Webhook.json
    ├── Postmark/
    │   └── 0968_Postmark_Update_Triggered.json
    ├── Process/
    │   └── 0009_Process.json
    ├── Quickbooks/
    │   ├── 0186_Quickbooks_Onfleet_Create_Triggered.json
    │   └── 1208_Quickbooks_Automate.json
    ├── Raindrop/
    │   └── 1209_Raindrop_Automate.json
    ├── Readbinaryfile/
    │   ├── 0118_Readbinaryfile_Onfleet_Create.json
    │   ├── 0220_Readbinaryfile_Manual_Automate_Triggered.json
    │   ├── 0351_Readbinaryfile_Manual_Automate_Triggered.json
    │   ├── 0352_Readbinaryfile_Spreadsheetfile_Create.json
    │   └── 0749_Readbinaryfile_Movebinarydata_Send_Scheduled.json
    ├── Readbinaryfiles/
    │   ├── 0171_Readbinaryfiles_Code_Automation_Webhook.json
    │   ├── 1583_Readbinaryfiles_Code_Automation_Webhook.json
    │   └── 2036_Readbinaryfiles_Filter_Import_Triggered.json
    ├── Redis/
    │   ├── 0387_Redis_Code_Create_Scheduled.json
    │   ├── 0497_Redis_Schedule_Import_Scheduled.json
    │   └── 1933_Redis_Code_Create_Webhook.json
    ├── Removeduplicates/
    │   └── 1854_Removeduplicates_Converttofile_Automation_Webhook.json
    ├── Respondtowebhook/
    │   ├── 0121_Respondtowebhook_Webhook_Automate_Webhook.json
    │   ├── 0163_Respondtowebhook_Spreadsheetfile_Automate_Webhook.json
    │   ├── 0194_Respondtowebhook_Webhook_Import_Webhook.json
    │   ├── 0232_Respondtowebhook_Stickynote_Create_Webhook.json
    │   ├── 0576_Respondtowebhook_Form_Automation_Webhook.json
    │   ├── 0586_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 0590_Respondtowebhook_Stickynote_Send_Webhook.json
    │   ├── 0597_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 0811_Respondtowebhook_Webhook_Automate_Webhook.json
    │   ├── 0900_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 1266_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1311_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1387_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1455_Respondtowebhook_Form_Automation_Webhook.json
    │   ├── 1466_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1474_Respondtowebhook_Stickynote_Create_Webhook.json
    │   ├── 1476_Respondtowebhook_Stickynote_Import_Webhook.json
    │   ├── 1577_Respondtowebhook_Stickynote_Create_Webhook.json
    │   ├── 1608_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1662_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1692_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 1693_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 1803_Respondtowebhook_Stickynote_Import_Webhook.json
    │   ├── 1953_Respondtowebhook_Stickynote_Monitor_Webhook.json
    │   ├── 1967_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   └── 1997_Respondtowebhook_Stickynote_Automation_Webhook.json
    ├── Rssfeedread/
    │   ├── 0188_Rssfeedread_Telegram_Create_Scheduled.json
    │   ├── 1176_Rssfeedread_Slack_Automation_Scheduled.json
    │   ├── 1180_Rssfeedread_Htmlextract_Create_Scheduled.json
    │   ├── 1186_Rssfeedread_Telegram_Create_Triggered.json
    │   ├── 1536_Rssfeedread_Extractfromfile_Automation_Webhook.json
    │   └── 1659_Rssfeedread_Extractfromfile_Automation_Webhook.json
    ├── Schedule/
    │   ├── 0382_Schedule_Spotify_Create_Scheduled.json
    │   ├── 0402_Schedule_Filter_Update_Scheduled.json
    │   ├── 0412_Schedule_HTTP_Update_Scheduled.json
    │   ├── 0417_Schedule_Gmail_Send_Scheduled.json
    │   ├── 0422_Schedule_HTTP_Send_Webhook.json
    │   ├── 0432_Schedule_Filter_Create_Scheduled.json
    │   ├── 0443_Schedule_Filter_Automation_Scheduled.json
    │   ├── 0448_Schedule_HTTP_Create_Webhook.json
    │   ├── 0474_Schedule_GoogleSheets_Automation_Scheduled.json
    │   ├── 0478_Schedule_HTTP_Create_Webhook.json
    │   ├── 0486_Schedule_Telegram_Create_Scheduled.json
    │   ├── 0487_Schedule_Telegram_Create_Scheduled.json
    │   ├── 0526_Schedule_Slack_Create_Scheduled.json
    │   ├── 0527_Schedule_Manual_Update_Scheduled.json
    │   ├── 0529_Schedule_Slack_Update_Webhook.json
    │   ├── 0539_Schedule_Twilio_Create_Webhook.json
    │   ├── 0563_Schedule_Filter_Update_Scheduled.json
    │   ├── 0631_Schedule_Wordpress_Automate_Scheduled.json
    │   ├── 0711_Schedule_Slack_Create_Scheduled.json
    │   ├── 0720_Schedule_Filter_Create_Scheduled.json
    │   ├── 0729_Schedule_Stickynote_Send_Scheduled.json
    │   ├── 0758_Schedule_Manual_Monitor_Scheduled.json
    │   ├── 0795_Schedule_Mailchimp_Create_Scheduled.json
    │   ├── 0817_Schedule_Removeduplicates_Create_Webhook.json
    │   ├── 0907_Schedule_Removeduplicates_Create_Scheduled.json
    │   ├── 0911_Schedule_Removeduplicates_Create_Scheduled.json
    │   ├── 0912_Schedule_Removeduplicates_Create_Scheduled.json
    │   ├── 1270_Schedule_Manual_Automation_Scheduled.json
    │   ├── 1275_Schedule_Telegram_Automation_Scheduled.json
    │   ├── 1276_Schedule_Telegram_Automation_Scheduled.json
    │   ├── 1345_Schedule_Discord_Automation_Scheduled.json
    │   ├── 1399_Schedule_Slack_Automation_Scheduled.json
    │   ├── 1406_Schedule_Slack_Automation_Scheduled.json
    │   ├── 1418_Schedule_Nocodb_Automation_Scheduled.json
    │   ├── 1492_Schedule_Twilio_Automation_Webhook.json
    │   ├── 1524_Schedule_Manual_Automation_Scheduled.json
    │   ├── 1574_Schedule_Youtube_Create_Scheduled.json
    │   ├── 1602_Schedule_Youtube_Create_Scheduled.json
    │   ├── 1607_Schedule_Notion_Sync_Scheduled.json
    │   ├── 1614_Schedule_HTTP_Send_Webhook.json
    │   ├── 1629_Schedule_Stickynote_Automation_Scheduled.json
    │   ├── 1697_Schedule_HTTP_Monitor_Scheduled.json
    │   ├── 1718_Schedule_Filter_Automation_Scheduled.json
    │   ├── 1738_Schedule_Comparedatasets_Automation_Scheduled.json
    │   ├── 1750_Schedule_Extractfromfile_Import_Scheduled.json
    │   ├── 1820_Schedule_N8N_Automate_Scheduled.json
    │   ├── 1859_Schedule_Slack_Monitor_Scheduled.json
    │   ├── 1867_Schedule_Filter_Sync_Scheduled.json
    │   ├── 1891_Schedule_Slack_Automation_Scheduled.json
    │   ├── 1932_Schedule_Telegram_Send_Scheduled.json
    │   ├── 1952_Schedule_HTTP_Monitor_Webhook.json
    │   └── 2045_Schedule_HTTP_Create_Scheduled.json
    ├── Send/
    │   ├── 0320_Send_Triggered.json
    │   ├── 0804_Send_Triggered.json
    │   └── 1409_Send.json
    ├── Shopify/
    │   ├── 0085_Shopify_Twitter_Create_Triggered.json
    │   ├── 0152_Shopify_Onfleet_Create_Triggered.json
    │   ├── 0185_Shopify_Onfleet_Automation_Triggered.json
    │   ├── 0265_Shopify_HubSpot_Create_Triggered.json
    │   ├── 0268_Shopify_Zendesk_Create_Triggered.json
    │   ├── 0269_Shopify_Zendesk_Create_Triggered.json
    │   ├── 0278_Shopify_Mautic_Create_Triggered.json
    │   ├── 0961_Shopify_Filter_Create_Triggered.json
    │   ├── 1015_Shopify_Automate_Triggered.json
    │   └── 1786_Shopify_Filter_Create_Triggered.json
    ├── Signl4/
    │   └── 0055_Signl4_Interval_Create_Scheduled.json
    ├── Slack/
    │   ├── 0008_Slack_Stripe_Create_Triggered.json
    │   ├── 0109_Slack_Cron_Automate_Scheduled.json
    │   ├── 0124_Slack_Typeform_Create_Triggered.json
    │   ├── 0176_Slack_Onfleet_Send_Triggered.json
    │   ├── 0423_Slack_Hunter_Send_Webhook.json
    │   ├── 0552_Slack_Stickynote_Send_Webhook.json
    │   ├── 0761_Slack_Comparedatasets_Create_Triggered.json
    │   ├── 0940_Slack_Manual_Automation_Scheduled.json
    │   ├── 1063_Slack_Graphql_Automation_Webhook.json
    │   ├── 1082_Slack_Readbinaryfile_Create.json
    │   ├── 1172_Slack_HubSpot_Send_Triggered.json
    │   ├── 1191_Slack_Typeform_Automate_Triggered.json
    │   ├── 1194_Slack_Emailreadimap_Create.json
    │   ├── 1318_Slack_Stickynote_Automation_Triggered.json
    │   ├── 1396_Slack_Stickynote_Automate_Webhook.json
    │   ├── 1592_Slack_Stickynote_Automate_Webhook.json
    │   ├── 1643_Slack_Manual_Automate_Webhook.json
    │   └── 1663_Slack_Stickynote_Automate_Webhook.json
    ├── Splitinbatches/
    │   └── 0070_Splitinbatches_Notion_Export_Scheduled.json
    ├── Splitout/
    │   ├── 0318_Splitout_Limit_Automation_Webhook.json
    │   ├── 0322_Splitout_Code_Send_Triggered.json
    │   ├── 0339_Splitout_Code_Update_Webhook.json
    │   ├── 0386_Splitout_Filter_Update_Scheduled.json
    │   ├── 0418_Splitout_Filter_Export_Scheduled.json
    │   ├── 0421_Splitout_Schedule_Import_Webhook.json
    │   ├── 0428_Splitout_GoogleCalendar_Send_Webhook.json
    │   ├── 0429_Splitout_GoogleCalendar_Send_Webhook.json
    │   ├── 0433_Splitout_Webhook_Update_Webhook.json
    │   ├── 0434_Splitout_Webhook_Automation_Webhook.json
    │   ├── 0435_Splitout_Filter_Create_Webhook.json
    │   ├── 0442_Splitout_Schedule_Send_Scheduled.json
    │   ├── 0445_Splitout_Code_Import_Scheduled.json
    │   ├── 0449_Splitout_Webhook_Create_Webhook.json
    │   ├── 0452_Splitout_Webhook_Create_Webhook.json
    │   ├── 0457_Splitout_Webhook_Create_Webhook.json
    │   ├── 0459_Splitout_Webhook_Update_Webhook.json
    │   ├── 0468_Splitout_Code_Create_Webhook.json
    │   ├── 0500_Splitout_Schedule_Send_Scheduled.json
    │   ├── 0503_Splitout_Code_Create_Scheduled.json
    │   ├── 0512_Splitout_Code_Update_Webhook.json
    │   ├── 0520_Splitout_Filter_Create_Webhook.json
    │   ├── 0528_Splitout_GoogleCalendar_Create_Scheduled.json
    │   ├── 0530_Splitout_GoogleCalendar_Create_Webhook.json
    │   ├── 0532_Splitout_Elasticsearch_Create_Webhook.json
    │   ├── 0554_Splitout_Code_Create_Webhook.json
    │   ├── 0555_Splitout_Code_Export_Webhook.json
    │   ├── 0556_Splitout_Code_Create_Webhook.json
    │   ├── 0560_Splitout_Filter_Import_Webhook.json
    │   ├── 0562_Splitout_Filter_Create_Webhook.json
    │   ├── 0570_Splitout_Datetime_Create_Webhook.json
    │   ├── 0579_Splitout_Editimage_Update_Triggered.json
    │   ├── 0587_Splitout_Filter_Send_Webhook.json
    │   ├── 0607_Splitout_Aggregate_Automate_Triggered.json
    │   ├── 0608_Splitout_Code_Import_Webhook.json
    │   ├── 0613_Splitout_Code_Create_Webhook.json
    │   ├── 0614_Splitout_Manual_Import_Webhook.json
    │   ├── 0618_Splitout_Code_Create_Scheduled.json
    │   ├── 0625_Splitout_Code_Create_Triggered.json
    │   ├── 0634_Splitout_Manual_Export_Webhook.json
    │   ├── 0638_Splitout_Redis_Create_Webhook.json
    │   ├── 0643_Splitout_Snowflake_Import_Scheduled.json
    │   ├── 0645_Splitout_Code_Sync_Webhook.json
    │   ├── 0649_Splitout_GoogleCalendar_Create_Webhook.json
    │   ├── 0650_Splitout_Webhook_Create_Webhook.json
    │   ├── 0652_Splitout_Schedule_Create_Scheduled.json
    │   ├── 0654_Splitout_Code_Create_Webhook.json
    │   ├── 0657_Splitout_Schedule_Update_Webhook.json
    │   ├── 0659_Splitout_Schedule_Create_Scheduled.json
    │   ├── 0663_Splitout_Schedule_Update_Scheduled.json
    │   ├── 0664_Splitout_Limit_Create_Webhook.json
    │   ├── 0680_Splitout_HTTP_Send_Webhook.json
    │   ├── 0698_Splitout_Code_Automation_Triggered.json
    │   ├── 0699_Splitout_Code_Create_Webhook.json
    │   ├── 0712_Splitout_Code_Update_Webhook.json
    │   ├── 0714_Splitout_Zendesk_Update_Triggered.json
    │   ├── 0724_Splitout_Code_Create_Webhook.json
    │   ├── 0725_Splitout_Code_Update_Triggered.json
    │   ├── 0730_Splitout_Noop_Send_Triggered.json
    │   ├── 0731_Splitout_Limit_Create_Webhook.json
    │   ├── 0740_Splitout_Code_Automation_Webhook.json
    │   ├── 0759_Splitout_Comparedatasets_Create_Triggered.json
    │   ├── 0760_Splitout_Code_Send_Webhook.json
    │   ├── 0772_Splitout_Filter_Process_Webhook.json
    │   ├── 0774_Splitout_Code_Automate_Webhook.json
    │   ├── 0780_Splitout_Filter_Process_Webhook.json
    │   ├── 0790_Splitout_Schedule_Create_Webhook.json
    │   ├── 0792_Splitout_Code_Monitor_Scheduled.json
    │   ├── 0793_Splitout_Code_Send_Triggered.json
    │   ├── 0797_Splitout_Code_Monitor_Webhook.json
    │   ├── 0798_Splitout_Code_Automation_Webhook.json
    │   ├── 0799_Splitout_Executecommand_Automate_Scheduled.json
    │   ├── 0810_Splitout_Schedule_Automation_Webhook.json
    │   ├── 0816_Splitout_Code_Automation_Scheduled.json
    │   ├── 0819_Splitout_Schedule_Create_Scheduled.json
    │   ├── 0832_Splitout_Limit_Create_Webhook.json
    │   ├── 0833_Splitout_Schedule_Create_Webhook.json
    │   ├── 0840_Splitout_HTTP_Send_Webhook.json
    │   ├── 0846_Splitout_Code_Create_Webhook.json
    │   ├── 0854_Splitout_Filter_Create_Scheduled.json
    │   ├── 0859_Splitout_Code_Create_Scheduled.json
    │   ├── 0860_Splitout_Limit_Send_Webhook.json
    │   ├── 0877_Splitout_Code_Create_Webhook.json
    │   ├── 0883_Splitout_Code_Create_Webhook.json
    │   ├── 0894_Splitout_Redis_Create_Triggered.json
    │   ├── 0895_Splitout_Code_Create_Webhook.json
    │   ├── 0899_Splitout_GoogleCalendar_Update_Webhook.json
    │   ├── 0902_Splitout_Code_Create_Scheduled.json
    │   ├── 0913_Splitout_Code_Create_Webhook.json
    │   ├── 0915_Splitout_Code_Create_Webhook.json
    │   ├── 0919_Splitout_Extractfromfile_Create_Webhook.json
    │   ├── 0921_Splitout_Code_Send_Scheduled.json
    │   ├── 0923_Splitout_Code_Send_Scheduled.json
    │   ├── 0958_Splitout_Webhook_Automation_Webhook.json
    │   ├── 1058_Splitout_Code_Import_Triggered.json
    │   ├── 1059_Splitout_Code_Automation_Webhook.json
    │   ├── 1143_Splitout_Filter_Automation_Webhook.json
    │   ├── 1146_Splitout_Code_Automation_Webhook.json
    │   ├── 1147_Splitout_GitHub_Automation_Webhook.json
    │   ├── 1169_Splitout_Code_Import_Webhook.json
    │   ├── 1243_Splitout_Limit_Automation_Webhook.json
    │   ├── 1258_Splitout_Code_Automation_Webhook.json
    │   ├── 1260_Splitout_Manual_Automation_Webhook.json
    │   ├── 1283_Splitout_Webhook_Automation_Webhook.json
    │   ├── 1297_Splitout_GoogleCalendar_Automation_Webhook.json
    │   ├── 1306_Splitout_Schedule_Automation_Webhook.json
    │   ├── 1323_Splitout_Code_Automation_Webhook.json
    │   ├── 1325_Splitout_Limit_Automate_Webhook.json
    │   ├── 1329_Splitout_Editimage_Automate_Triggered.json
    │   ├── 1332_Splitout_Zendesk_Send_Triggered.json
    │   ├── 1333_Splitout_GoogleCalendar_Automate_Webhook.json
    │   ├── 1343_Splitout_Editimage_Automation_Webhook.json
    │   ├── 1344_Splitout_Filter_Automation_Webhook.json
    │   ├── 1352_Splitout_Filter_Automate_Triggered.json
    │   ├── 1355_Splitout_Webhook_Automate_Webhook.json
    │   ├── 1363_Splitout_GitHub_Create_Webhook.json
    │   ├── 1381_Splitout_Code_Automation_Webhook.json
    │   ├── 1388_Splitout_Redis_Automation_Webhook.json
    │   ├── 1398_Splitout_Code_Automation_Webhook.json
    │   ├── 1403_Splitout_Datetime_Send_Webhook.json
    │   ├── 1407_Splitout_Schedule_Automation_Scheduled.json
    │   ├── 1408_Splitout_Code_Monitor_Triggered.json
    │   ├── 1412_Splitout_Code_Automation_Scheduled.json
    │   ├── 1425_Splitout_Elasticsearch_Create_Webhook.json
    │   ├── 1437_Splitout_Code_Automation_Triggered.json
    │   ├── 1443_Splitout_Extractfromfile_Automation_Triggered.json
    │   ├── 1451_Splitout_Schedule_Automation_Webhook.json
    │   ├── 1454_Splitout_Schedule_Import_Webhook.json
    │   ├── 1459_Splitout_Converttofile_Create_Webhook.json
    │   ├── 1463_Splitout_Code_Automate_Webhook.json
    │   ├── 1468_Splitout_Code_Automation_Webhook.json
    │   ├── 1471_Splitout_Aggregate_Create_Triggered.json
    │   ├── 1489_Splitout_Code_Automation_Webhook.json
    │   ├── 1495_Splitout_Limit_Import_Webhook.json
    │   ├── 1499_Splitout_Filter_Monitor_Triggered.json
    │   ├── 1531_Splitout_Comparedatasets_Sync_Webhook.json
    │   ├── 1542_Splitout_HTTP_Create_Webhook.json
    │   ├── 1548_Splitout_Code_Automation_Webhook.json
    │   ├── 1556_Splitout_Code_Monitor_Scheduled.json
    │   ├── 1559_Splitout_Code_Automate_Webhook.json
    │   ├── 1560_Splitout_Code_Automation_Webhook.json
    │   ├── 1564_Splitout_Manual_Create_Webhook.json
    │   ├── 1585_Splitout_Code_Update_Webhook.json
    │   ├── 1591_Splitout_Code_Automate_Webhook.json
    │   ├── 1603_Splitout_Manual_Automation_Webhook.json
    │   ├── 1625_Splitout_Schedule_Monitor_Webhook.json
    │   ├── 1627_Splitout_Code_Automation_Triggered.json
    │   ├── 1637_Splitout_Code_Automation_Triggered.json
    │   ├── 1642_Splitout_Code_Automation_Webhook.json
    │   ├── 1647_Splitout_Limit_Automation_Webhook.json
    │   ├── 1648_Splitout_Converttofile_Send_Webhook.json
    │   ├── 1657_Splitout_Schedule_Monitor_Scheduled.json
    │   ├── 1658_Splitout_Schedule_Monitor_Scheduled.json
    │   ├── 1660_Splitout_HTTP_Create_Webhook.json
    │   ├── 1678_Splitout_Code_Automation_Webhook.json
    │   ├── 1721_Splitout_Manual_Automate_Webhook.json
    │   ├── 1731_Splitout_Code_Automation_Webhook.json
    │   ├── 1742_Splitout_Nocodb_Automation_Webhook.json
    │   ├── 1748_Splitout_Code_Automation_Webhook.json
    │   ├── 1753_Splitout_Code_Automation_Webhook.json
    │   ├── 1757_Splitout_Code_Automation_Webhook.json
    │   ├── 1760_Splitout_GitHub_Automate_Webhook.json
    │   ├── 1774_Splitout_Manual_Automation_Webhook.json
    │   ├── 1780_Splitout_Schedule_Automation_Scheduled.json
    │   ├── 1783_Splitout_Postgres_Automation_Triggered.json
    │   ├── 1784_Splitout_Filter_Automation_Triggered.json
    │   ├── 1787_Splitout_Code_Automate_Webhook.json
    │   ├── 1790_Splitout_Summarize_Automation_Triggered.json
    │   ├── 1798_Splitout_GitHub_Create_Webhook.json
    │   ├── 1824_Splitout_Schedule_Import_Scheduled.json
    │   ├── 1830_Splitout_Filter_Create_Webhook.json
    │   ├── 1831_Splitout_Code_Automation_Webhook.json
    │   ├── 1834_Splitout_Code_Automation_Triggered.json
    │   ├── 1840_Splitout_Filter_Automate_Triggered.json
    │   ├── 1880_Splitout_Code_Automation_Webhook.json
    │   ├── 1888_Splitout_Schedule_Automation_Webhook.json
    │   ├── 1889_Splitout_Comparedatasets_Sync_Webhook.json
    │   ├── 1898_Splitout_Code_Automation_Webhook.json
    │   ├── 1903_Splitout_Googledocs_Automation_Webhook.json
    │   ├── 1915_Splitout_Code_Automation_Webhook.json
    │   ├── 1930_Splitout_Code_Automate_Webhook.json
    │   ├── 1934_Splitout_Schedule_Create_Scheduled.json
    │   ├── 1935_Splitout_Extractfromfile_Automation_Triggered.json
    │   ├── 1937_Splitout_Limit_Automation_Triggered.json
    │   ├── 1943_Splitout_Editimage_Automation_Webhook.json
    │   ├── 1946_Splitout_Webhook_Import_Webhook.json
    │   ├── 1970_Splitout_Manual_Sync_Webhook.json
    │   ├── 1980_Splitout_Code_Automation_Webhook.json
    │   ├── 1983_Splitout_Converttofile_Automation_Webhook.json
    │   ├── 1993_Splitout_Code_Automation_Triggered.json
    │   ├── 1998_Splitout_Postgres_Sync_Scheduled.json
    │   ├── 2016_Splitout_Noop_Automation_Webhook.json
    │   ├── 2025_Splitout_Code_Automate_Webhook.json
    │   └── 2041_Splitout_Manual_Automation_Webhook.json
    ├── Sse/
    │   └── 1084_Sse_Automation_Triggered.json
    ├── Stickynote/
    │   ├── 0281_Stickynote_Notion_Create_Webhook.json
    │   ├── 0325_Stickynote_Send_Triggered.json
    │   ├── 0332_Stickynote_Send_Triggered.json
    │   ├── 0368_Stickynote_Webhook_Automate_Webhook.json
    │   ├── 0378_Stickynote_Notion_Automate_Webhook.json
    │   ├── 0407_Stickynote_Send_Triggered.json
    │   ├── 0573_Stickynote_Notion_Send_Webhook.json
    │   ├── 0574_Stickynote_Notion_Create_Triggered.json
    │   ├── 0684_Stickynote_Respondtowebhook_Send_Webhook.json
    │   ├── 0689_Stickynote_Gmail_Create_Triggered.json
    │   ├── 0727_Stickynote_Create_Webhook.json
    │   ├── 0755_Stickynote_Send_Webhook.json
    │   ├── 0796_Stickynote_Gmail_Create_Triggered.json
    │   ├── 0873_Stickynote_Postgrestool_Create_Triggered.json
    │   ├── 0874_Stickynote_Executeworkflow_Create_Triggered.json
    │   ├── 0893_Stickynote_Emailreadimap_Create.json
    │   ├── 0978_Stickynote_GoogleDrive_Automate_Triggered.json
    │   ├── 1104_Stickynote_Create_Triggered.json
    │   ├── 1141_Stickynote_GoogleDrive_Automate_Triggered.json
    │   ├── 1253_Stickynote_Automation_Webhook.json
    │   ├── 1268_Stickynote_Hackernews_Automate_Triggered.json
    │   ├── 1269_Stickynote_Automate_Triggered.json
    │   ├── 1353_Stickynote_Gmail_Send_Triggered.json
    │   ├── 1379_Stickynote_Automation_Triggered.json
    │   ├── 1507_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 1509_Stickynote_Automation_Webhook.json
    │   ├── 1534_Stickynote_Googlecalendartool_Automation_Triggered.json
    │   ├── 1557_Stickynote_Automation_Triggered.json
    │   ├── 1567_Stickynote_Automation_Webhook.json
    │   ├── 1568_Stickynote_Notion_Automation_Triggered.json
    │   ├── 1569_Stickynote_Notion_Automation_Webhook.json
    │   ├── 1624_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 1626_Stickynote_GoogleDrive_Automate_Triggered.json
    │   ├── 1682_Stickynote_Notion_Automation_Triggered.json
    │   ├── 1691_Stickynote_Automation_Triggered.json
    │   ├── 1698_Stickynote_Notion_Automation_Triggered.json
    │   ├── 1703_Stickynote_Webhook_Automation_Webhook.json
    │   ├── 1719_Stickynote_Automation_Triggered.json
    │   ├── 1734_Stickynote_Automation_Triggered.json
    │   ├── 1779_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 1804_Stickynote_Automation_Triggered.json
    │   ├── 1816_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 1846_Stickynote_Executeworkflow_Automate_Triggered.json
    │   ├── 1899_Stickynote_Airtabletool_Create_Triggered.json
    │   ├── 1902_Stickynote_Executeworkflow_Update_Webhook.json
    │   ├── 1907_Stickynote_Converttofile_Automation_Triggered.json
    │   ├── 1926_Stickynote_Splitinbatches_Automation_Triggered.json
    │   ├── 1927_Stickynote_Automation_Triggered.json
    │   ├── 1947_Stickynote_Supabasetool_Automation_Triggered.json
    │   ├── 1986_Stickynote_Jira_Create_Webhook.json
    │   ├── 1987_Stickynote_Airtable_Create_Triggered.json
    │   ├── 2009_Stickynote_Automate_Webhook.json
    │   ├── 2015_Stickynote_Automation_Triggered.json
    │   ├── 2023_Stickynote_Create_Triggered.json
    │   ├── 2027_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 2039_Stickynote_Webhook_Automation_Webhook.json
    │   └── 2048_Stickynote_Automation_Triggered.json
    ├── Stopanderror/
    │   ├── 0331_Stopanderror_Extractfromfile_Send_Webhook.json
    │   ├── 0333_Stopanderror_Webhook_Create_Webhook.json
    │   ├── 0392_Stopanderror_GitHub_Automate_Webhook.json
    │   ├── 0427_Stopanderror_Wait_Monitor_Webhook.json
    │   ├── 0592_Stopanderror_Awss3_Automation_Webhook.json
    │   ├── 0719_Stopanderror_Splitout_Create_Webhook.json
    │   ├── 0743_Stopanderror_Wait_Automation_Triggered.json
    │   ├── 0786_Stopanderror_Stickynote_Create_Webhook.json
    │   ├── 0791_Stopanderror_Splitout_Create_Webhook.json
    │   ├── 0925_Stopanderror_Wait_Automate_Triggered.json
    │   ├── 1061_Stopanderror_Telegram_Automation_Triggered.json
    │   ├── 1164_Stopanderror_Code_Automation_Triggered.json
    │   ├── 1295_Stopanderror_Webhook_Automation_Webhook.json
    │   ├── 1453_Stopanderror_Code_Import_Triggered.json
    │   ├── 1498_Stopanderror_Limit_Sync_Webhook.json
    │   ├── 1504_Stopanderror_Code_Automation_Webhook.json
    │   ├── 1623_Stopanderror_Code_Import_Triggered.json
    │   ├── 1689_Stopanderror_Telegram_Automation_Triggered.json
    │   ├── 1768_Stopanderror_Wait_Automation_Webhook.json
    │   ├── 1785_Stopanderror_Clickup_Automation_Webhook.json
    │   ├── 1823_Stopanderror_Wait_Create_Webhook.json
    │   ├── 1894_Stopanderror_Clickup_Automation_Webhook.json
    │   ├── 1896_Stopanderror_Splitout_Export_Scheduled.json
    │   └── 1963_Stopanderror_Wait_Automation_Triggered.json
    ├── Strapi/
    │   ├── 0183_Strapi_Webhook_Automation_Webhook.json
    │   ├── 0584_Strapi_Splitout_Create_Webhook.json
    │   ├── 1336_Strapi_Webhook_Automate_Webhook.json
    │   └── 1434_Strapi_Splitout_Automation_Webhook.json
    ├── Summarize/
    │   ├── 1582_Summarize_Stickynote_Automation_Triggered.json
    │   ├── 1706_Summarize_Stickynote_Automation_Triggered.json
    │   └── 1829_Summarize_Respondtowebhook_Automation_Webhook.json
    ├── Supabase/
    │   ├── 0564_Supabase_Stickynote_Create_Triggered.json
    │   ├── 1677_Supabase_Stickynote_Automation_Triggered.json
    │   └── 1680_Supabase_Stickynote_Automation_Triggered.json
    ├── Surveymonkey/
    │   └── 1020_Surveymonkey_Automate_Triggered.json
    ├── Taiga/
    │   └── 1114_Taiga_Update_Triggered.json
    ├── Telegram/
    │   ├── 0001_Telegram_Schedule_Automation_Scheduled.json
    │   ├── 0140_Telegram_Webhook_Automation_Webhook.json
    │   ├── 0158_Telegram_Functionitem_Create_Scheduled.json
    │   ├── 0170_Telegram_Wait_Automation_Scheduled.json
    │   ├── 0201_Telegram_Executecommand_Process_Webhook.json
    │   ├── 0231_Telegram_Nasa_Send_Scheduled.json
    │   ├── 0340_Telegram_Automation_Webhook.json
    │   ├── 0346_Telegram_Cron_Automation_Scheduled.json
    │   ├── 0381_Telegram_Code_Update_Webhook.json
    │   ├── 0383_Telegram_Wait_Create_Webhook.json
    │   ├── 0388_Telegram_Code_Create_Triggered.json
    │   ├── 0398_Telegram_Wait_Send_Webhook.json
    │   ├── 0419_Telegram_Automate_Triggered.json
    │   ├── 0425_Telegram_Hunter_Send_Webhook.json
    │   ├── 0462_Telegram_Code_Create_Webhook.json
    │   ├── 0465_Telegram_Filter_Send_Scheduled.json
    │   ├── 0481_Telegram_Code_Automation_Webhook.json
    │   ├── 0488_Telegram_Stickynote_Update_Triggered.json
    │   ├── 0585_Telegram_Splitout_Automation_Webhook.json
    │   ├── 0599_Telegram_Gmailtool_Send_Triggered.json
    │   ├── 0676_Telegram_Splitout_Import_Webhook.json
    │   ├── 0679_Telegram_Splitout_Create_Webhook.json
    │   ├── 0690_Telegram_Webhook_Send_Webhook.json
    │   ├── 0704_Telegram_Automate_Triggered.json
    │   ├── 0705_Telegram_Automate_Triggered.json
    │   ├── 0735_Telegram_GoogleCalendar_Automation_Webhook.json
    │   ├── 0742_Telegram_Splitout_Create_Webhook.json
    │   ├── 0768_Telegram_Stickynote_Create_Triggered.json
    │   ├── 0769_Telegram_Webhook_Send_Webhook.json
    │   ├── 0782_Telegram_Redis_Create_Webhook.json
    │   ├── 0789_Telegram_Code_Create_Triggered.json
    │   ├── 0807_Telegram_Wait_Send_Triggered.json
    │   ├── 0815_Telegram_Code_Update_Triggered.json
    │   ├── 0824_Telegram_Rssfeedread_Monitor_Scheduled.json
    │   ├── 0864_Telegram_Splitout_Create_Triggered.json
    │   ├── 0882_Telegram_Googletaskstool_Create_Triggered.json
    │   ├── 0884_Telegram_Filter_Export_Triggered.json
    │   ├── 0885_Telegram_Mondaycom_Automate_Triggered.json
    │   ├── 0916_Telegram_Gmail_Create_Triggered.json
    │   ├── 0931_Telegram_Splitout_Monitor_Scheduled.json
    │   ├── 0944_Telegram_Rssfeedread_Automation_Scheduled.json
    │   ├── 1001_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1065_Telegram_Webhook_Automation_Webhook.json
    │   ├── 1070_Telegram_Wordpress_Create_Webhook.json
    │   ├── 1113_Telegram_Splitout_Automation_Scheduled.json
    │   ├── 1127_Telegram_Wait_Automate_Triggered.json
    │   ├── 1182_Telegram_Webhook_Automation_Webhook.json
    │   ├── 1185_Telegram_Wait_Automate_Webhook.json
    │   ├── 1244_Telegram_GoogleSheets_Automate_Triggered.json
    │   ├── 1288_Telegram_Wait_Automation_Webhook.json
    │   ├── 1291_Telegram_Code_Automation_Webhook.json
    │   ├── 1300_Telegram_Stickynote_Create_Webhook.json
    │   ├── 1304_Telegram_Code_Monitor_Webhook.json
    │   ├── 1305_Telegram_Splitout_Export_Webhook.json
    │   ├── 1315_Telegram_Gmailtool_Automation_Triggered.json
    │   ├── 1338_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1341_Telegram_Splitout_Automate_Webhook.json
    │   ├── 1347_Telegram_Gmail_Automation_Triggered.json
    │   ├── 1368_Telegram_Limit_Export_Triggered.json
    │   ├── 1375_Telegram_Automate_Triggered.json
    │   ├── 1380_Telegram_Code_Automate_Triggered.json
    │   ├── 1384_Telegram_Stickynote_Create_Triggered.json
    │   ├── 1392_Telegram_Googleanalytics_Automation_Scheduled.json
    │   ├── 1411_Telegram_Wait_Automation_Triggered.json
    │   ├── 1424_Telegram_Code_Automation_Webhook.json
    │   ├── 1439_Telegram_Code_Create_Webhook.json
    │   ├── 1448_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1450_Telegram_Automation_Webhook.json
    │   ├── 1452_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1470_Telegram_Code_Create_Webhook.json
    │   ├── 1482_Telegram_Code_Create_Webhook.json
    │   ├── 1485_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1487_Telegram_Extractfromfile_Automate_Webhook.json
    │   ├── 1490_Telegram_Splitout_Create_Webhook.json
    │   ├── 1496_Telegram_Webhook_Automation_Webhook.json
    │   ├── 1515_Telegram_Stickynote_Send_Triggered.json
    │   ├── 1522_Telegram_Schedule_Send_Webhook.json
    │   ├── 1533_Telegram_Splitout_Automation_Webhook.json
    │   ├── 1539_Telegram_Splitout_Automation_Triggered.json
    │   ├── 1595_Telegram_Schedule_Update_Webhook.json
    │   ├── 1596_Telegram_Code_Automate_Webhook.json
    │   ├── 1606_Telegram_Webhook_Automation_Webhook.json
    │   ├── 1610_Telegram_Googledocs_Automate_Triggered.json
    │   ├── 1679_Telegram_GoogleCalendar_Automation_Scheduled.json
    │   ├── 1686_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1690_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1701_Telegram_Stickynote_Send_Triggered.json
    │   ├── 1708_Telegram_Stickynote_Create_Webhook.json
    │   ├── 1712_Telegram_Automation_Webhook.json
    │   ├── 1741_Telegram_Gumroad_Create_Webhook.json
    │   ├── 1775_Telegram_Code_Import_Triggered.json
    │   ├── 1797_Telegram_GoogleDrive_Create_Triggered.json
    │   ├── 1812_Telegram_Code_Automate_Triggered.json
    │   ├── 1841_Telegram_Manual_Automate_Triggered.json
    │   ├── 1843_Telegram_Code_Automate_Triggered.json
    │   ├── 1856_Telegram_Stickynote_Automation_Webhook.json
    │   ├── 1877_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1878_Telegram_Wait_Create_Webhook.json
    │   ├── 1904_Telegram_Limit_Process_Webhook.json
    │   ├── 1905_Telegram_Googleanalytics_Automation_Webhook.json
    │   ├── 1916_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1919_Telegram_Splitout_Automate_Webhook.json
    │   ├── 1938_Telegram_Schedule_Automation_Scheduled.json
    │   ├── 1940_Telegram_Limit_Export_Scheduled.json
    │   ├── 1941_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1945_Telegram_Schedule_Import_Scheduled.json
    │   ├── 1950_Telegram_Googledocs_Automate_Triggered.json
    │   ├── 1975_Telegram_Googledocs_Automation_Webhook.json
    │   ├── 1982_Telegram_Splitout_Automation_Scheduled.json
    │   ├── 2004_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 2005_Telegram_Schedule_Monitor_Webhook.json
    │   ├── 2018_Telegram_Cal_Create_Webhook.json
    │   ├── 2038_Telegram_Extractfromfile_Automate_Webhook.json
    │   ├── 2040_Telegram_Splitout_Automation_Webhook.json
    │   ├── 2044_Telegram_Googledocs_Automation_Webhook.json
    │   ├── 2051_Telegram_Webhook_Automation_Webhook.json
    │   ├── 2052_Telegram_Splitout_Automation_Scheduled.json
    │   ├── 2053_Telegram_Googledocs_Automate_Triggered.json
    │   └── Academic Assistant Chatbot (Telegram + OpenAI).json
    ├── Telegramtool/
    │   └── 1575_Telegramtool_Woocommercetool_Automate_Webhook.json
    ├── Templates/
    │   ├── 9001_Scalable_Webhook_Orchestrator_Webhook.json
    │   ├── 9002_Rapid_ETL_HTTP_Transform_Deliver_Manual.json
    │   ├── 9003_FanOut_Broadcast_and_Merge_Webhook.json
    │   └── 9004_AI_Summarizer_Template_Webhook.json
    ├── Thehive/
    │   └── 0205_Thehive_Update_Triggered.json
    ├── Todoist/
    │   └── 1749_Todoist_Schedule_Send_Scheduled.json
    ├── Toggl/
    │   └── 0147_Toggl_Create_Triggered.json
    ├── Travisci/
    │   └── 0060_Travisci_GitHub_Automate_Triggered.json
    ├── Trello/
    │   ├── 0044_Trello_Googlecloudnaturallanguage_Automate_Triggered.json
    │   ├── 0053_Trello_GoogleCalendar_Create_Scheduled.json
    │   ├── 0076_Trello_Update_Triggered.json
    │   ├── 1298_Trello_Googlecloudnaturallanguage_Create_Triggered.json
    │   └── 1302_Trello_Limit_Automate_Scheduled.json
    ├── Twilio/
    │   ├── 0354_Twilio_Typeform_Send_Triggered.json
    │   ├── 0841_Twilio_Stickynote_Send_Triggered.json
    │   ├── 0842_Twilio_Cron_Send_Scheduled.json
    │   └── 1198_Twilio_Pushcut_Send_Triggered.json
    ├── Twitter/
    │   ├── 1165_Twitter_Telegram_Create_Triggered.json
    │   ├── 1211_Twitter_Strava_Create_Triggered.json
    │   └── 1212_Twitter_Slack_Automation_Scheduled.json
    ├── Twittertool/
    │   └── 1744_Twittertool_Automation_Triggered.json
    ├── Typeform/
    │   ├── 0215_Typeform_Clickup_Automation_Triggered.json
    │   ├── 0262_Typeform_Spreadsheetfile_Automate_Triggered.json
    │   ├── 1018_Typeform_Airtable_Automation_Triggered.json
    │   └── 1207_Typeform_Demio_Automate_Triggered.json
    ├── Uptimerobot/
    │   └── 0050_Uptimerobot_Automate.json
    ├── Wait/
    │   ├── 0090_Wait_Lemlist_Create_Scheduled.json
    │   ├── 0091_Wait_Splitout_Process_Webhook.json
    │   ├── 0092_Wait_Datetime_Automate_Triggered.json
    │   ├── 0101_Wait_Manual_Automation_Webhook.json
    │   ├── 0290_Wait_Code_Update_Webhook.json
    │   ├── 0330_Wait_Webhook_Send_Webhook.json
    │   ├── 0385_Wait_Code_Send_Scheduled.json
    │   ├── 0466_Wait_Filter_Send_Webhook.json
    │   ├── 0498_Wait_Splitout_Process_Scheduled.json
    │   ├── 0523_Wait_Splitout_Create_Webhook.json
    │   ├── 0533_Wait_Code_Export_Webhook.json
    │   ├── 0538_Wait_Splitout_Send_Webhook.json
    │   ├── 0542_Wait_Redis_Create_Triggered.json
    │   ├── 0547_Wait_Splitout_Create_Webhook.json
    │   ├── 0567_Wait_Code_Export_Webhook.json
    │   ├── 0578_Wait_Schedule_Create_Webhook.json
    │   ├── 0582_Wait_Dropbox_Create_Webhook.json
    │   ├── 0583_Wait_Splitout_Create_Webhook.json
    │   ├── 0596_Wait_Code_Import_Webhook.json
    │   ├── 0602_Wait_Splitout_Send_Webhook.json
    │   ├── 0603_Wait_Splitout_Create_Webhook.json
    │   ├── 0609_Wait_Limit_Import_Webhook.json
    │   ├── 0620_Wait_Slack_Automate_Webhook.json
    │   ├── 0621_Wait_Slack_Monitor_Webhook.json
    │   ├── 0627_Wait_Splitout_Create_Scheduled.json
    │   ├── 0629_Wait_Code_Update_Webhook.json
    │   ├── 0639_Wait_Splitout_Send_Webhook.json
    │   ├── 0640_Wait_Splitout_Create_Scheduled.json
    │   ├── 0668_Wait_Splitout_Create_Webhook.json
    │   ├── 0715_Wait_Schedule_Create_Scheduled.json
    │   ├── 0716_Wait_Webhook_Process_Webhook.json
    │   ├── 0763_Wait_Splitout_Create_Webhook.json
    │   ├── 0764_Wait_Splitout_Create_Triggered.json
    │   ├── 0765_Wait_Splitout_Create_Triggered.json
    │   ├── 0766_Wait_Limit_Update_Webhook.json
    │   ├── 0820_Wait_Code_Send_Webhook.json
    │   ├── 0826_Wait_Splitout_Automation_Webhook.json
    │   ├── 0831_Wait_Code_Monitor_Webhook.json
    │   ├── 0836_Wait_Code_Create_Scheduled.json
    │   ├── 0858_Wait_Schedule_Update_Scheduled.json
    │   ├── 0862_Wait_Code_Create_Webhook.json
    │   ├── 0866_Wait_Splitout_Create_Webhook.json
    │   ├── 0867_Wait_Splitout_Create_Webhook.json
    │   ├── 0868_Wait_Filter_Create_Webhook.json
    │   ├── 0869_Wait_Datetime_Send_Scheduled.json
    │   ├── 0871_Wait_HTTP_Create_Webhook.json
    │   ├── 0888_Wait_Code_Send_Webhook.json
    │   ├── 0903_Wait_Redis_Automate_Triggered.json
    │   ├── 0904_Wait_Code_Create_Webhook.json
    │   ├── 0905_Wait_Schedule_Create_Webhook.json
    │   ├── 1135_Wait_Code_Create_Webhook.json
    │   ├── 1145_Wait_Splitout_Automation_Webhook.json
    │   ├── 1282_Wait_Code_Import_Webhook.json
    │   ├── 1293_Wait_Splitout_Automation_Webhook.json
    │   ├── 1312_Wait_Schedule_Create_Webhook.json
    │   ├── 1359_Wait_Splitout_Create_Webhook.json
    │   ├── 1362_Wait_Webhook_Create_Webhook.json
    │   ├── 1366_Wait_Code_Automation_Webhook.json
    │   ├── 1389_Wait_Limit_Import_Webhook.json
    │   ├── 1395_Wait_Code_Create_Webhook.json
    │   ├── 1400_Wait_Code_Automation_Webhook.json
    │   ├── 1405_Wait_Splitout_Automation_Webhook.json
    │   ├── 1431_Wait_Redis_Send_Triggered.json
    │   ├── 1456_Wait_HTTP_Automation_Webhook.json
    │   ├── 1465_Wait_Splitout_Create_Webhook.json
    │   ├── 1469_Wait_Splitout_Automation_Webhook.json
    │   ├── 1484_Wait_Code_Create_Webhook.json
    │   ├── 1508_Wait_Manual_Automation_Webhook.json
    │   ├── 1512_Wait_Splitout_Process_Webhook.json
    │   ├── 1513_Wait_Splitout_Process_Webhook.json
    │   ├── 1549_Wait_Dropbox_Automation_Webhook.json
    │   ├── 1563_Wait_Schedule_Monitor_Scheduled.json
    │   ├── 1566_Wait_Splitout_Automation_Webhook.json
    │   ├── 1572_Wait_Schedule_Automate_Scheduled.json
    │   ├── 1579_Wait_Manual_Automation_Webhook.json
    │   ├── 1589_Wait_Webhook_Automation_Webhook.json
    │   ├── 1600_Wait_Code_Automation_Scheduled.json
    │   ├── 1609_Wait_Schedule_Automation_Scheduled.json
    │   ├── 1638_Wait_Splitout_Send_Webhook.json
    │   ├── 1639_Wait_Webhook_Automation_Webhook.json
    │   ├── 1696_Wait_Code_Automate_Webhook.json
    │   ├── 1705_Wait_Manual_Automate_Webhook.json
    │   ├── 1717_Wait_Code_Automation_Webhook.json
    │   ├── 1727_Wait_Splitout_Create_Webhook.json
    │   ├── 1736_Wait_Schedule_Automation_Webhook.json
    │   ├── 1743_Wait_Code_Sync_Scheduled.json
    │   ├── 1745_Wait_Code_Automation_Webhook.json
    │   ├── 1746_Wait_Code_Monitor_Webhook.json
    │   ├── 1763_Wait_Schedule_Automation_Webhook.json
    │   ├── 1771_Wait_Code_Automate_Webhook.json
    │   ├── 1801_Wait_Code_Automation_Webhook.json
    │   ├── 1805_Wait_Code_Automate_Webhook.json
    │   ├── 1879_Wait_Slack_Monitor_Triggered.json
    │   ├── 1917_Wait_Code_Create_Webhook.json
    │   ├── 1931_Wait_HTTP_Automation_Webhook.json
    │   ├── 1954_Wait_Code_Automation_Webhook.json
    │   ├── 1955_Wait_Splitout_Automation_Scheduled.json
    │   ├── 1977_Wait_Splitout_Automation_Webhook.json
    │   ├── 1990_Wait_Code_Automation_Webhook.json
    │   ├── 1992_Wait_Code_Automation_Webhook.json
    │   ├── 2000_Wait_Code_Automate_Webhook.json
    │   ├── 2010_Wait_Limit_Automation_Webhook.json
    │   ├── 2029_Wait_Code_Automation_Triggered.json
    │   └── 2042_Wait_Webhook_Automation_Webhook.json
    ├── Webflow/
    │   └── 0953_Webflow_Update_Triggered.json
    ├── Webhook/
    │   ├── 0066_Webhook_Cron_Automate_Scheduled.json
    │   ├── 0099_Webhook_Airtable_Automate_Webhook.json
    │   ├── 0165_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0260_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 0270_Webhook_Discord_Automate_Webhook.json
    │   ├── 0295_Webhook_Dropcontact_Create_Webhook.json
    │   ├── 0375_Webhook_Code_Send_Webhook.json
    │   ├── 0376_Webhook_Code_Create_Webhook.json
    │   ├── 0410_Webhook_Filter_Update_Webhook.json
    │   ├── 0414_Webhook_Filter_Create_Webhook.json
    │   ├── 0453_Webhook_Code_Create_Webhook.json
    │   ├── 0467_Webhook_Respondtowebhook_Send_Webhook.json
    │   ├── 0483_Webhook_Extractfromfile_Update_Webhook.json
    │   ├── 0499_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0565_Webhook_Slack_Automation_Webhook.json
    │   ├── 0581_Webhook_Slack_Create_Webhook.json
    │   ├── 0591_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0615_Webhook_Filemaker_Create_Webhook.json
    │   ├── 0619_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0632_Webhook_Manual_Create_Webhook.json
    │   ├── 0644_Webhook_Slack_Create_Webhook.json
    │   ├── 0672_Webhook_Schedule_Update_Webhook.json
    │   ├── 0683_Webhook_Telegram_Create_Webhook.json
    │   ├── 0692_Webhook_Code_Update_Webhook.json
    │   ├── 0702_Webhook_GoogleCalendar_Create_Webhook.json
    │   ├── 0722_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 0802_Webhook_Nocodb_Create_Webhook.json
    │   ├── 0813_Webhook_Respondtowebhook_Process_Webhook.json
    │   ├── 0829_Webhook_Code_Create_Webhook.json
    │   ├── 0834_Webhook_Slack_Create_Webhook.json
    │   ├── 0845_Webhook_Filter_Export_Webhook.json
    │   ├── 0892_Webhook_Code_Create_Webhook.json
    │   ├── 0914_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0942_Webhook_Signl4_Automation_Webhook.json
    │   ├── 0979_Webhook_Filter_Automation_Webhook.json
    │   ├── 1132_Webhook_Extractfromfile_Process_Webhook.json
    │   ├── 1252_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 1255_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1263_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1274_Webhook_Code_Automate_Webhook.json
    │   ├── 1385_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1410_Webhook_Discord_Automate_Webhook.json
    │   ├── 1415_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 1416_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 1417_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 1432_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1433_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1477_Webhook_Slack_Update_Webhook.json
    │   ├── 1502_Webhook_Slack_Automate_Webhook.json
    │   ├── 1525_Webhook_Telegram_Create_Webhook.json
    │   ├── 1541_Webhook_Code_Create_Webhook.json
    │   ├── 1561_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1578_Webhook_Code_Automation_Webhook.json
    │   ├── 1601_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 1612_Webhook_Code_Automate_Webhook.json
    │   ├── 1694_Webhook_HTTP_Automation_Webhook.json
    │   ├── 1722_Webhook_Code_Automation_Webhook.json
    │   ├── 1733_Webhook_Slack_Automate_Webhook.json
    │   ├── 1740_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 1770_Webhook_Extractfromfile_Automation_Webhook.json
    │   ├── 1855_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 1881_Webhook_Code_Automate_Webhook.json
    │   ├── 1887_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1897_Webhook_Filter_Sync_Webhook.json
    │   └── 2007_Webhook_Graphql_Automate_Webhook.json
    ├── Whatsapp/
    │   ├── 1521_Whatsapp_Stickynote_Automation_Webhook.json
    │   └── 2030_Whatsapp_Respondtowebhook_Automate_Webhook.json
    ├── Wise/
    │   ├── 1229_Wise_Automate.json
    │   └── 1230_Wise_Airtable_Automate_Triggered.json
    ├── Woocommerce/
    │   ├── 1148_Woocommerce_Slack_Create_Triggered.json
    │   ├── 1151_Woocommerce_Slack_Create_Triggered.json
    │   └── 1155_Woocommerce_Slack_Create_Triggered.json
    ├── Woocommercetool/
    │   ├── 1599_Woocommercetool_Manual_Automation_Webhook.json
    │   └── 1857_Woocommercetool_Manual_Automation_Webhook.json
    ├── Wordpress/
    │   ├── 0502_Wordpress_Filter_Update_Scheduled.json
    │   ├── 0721_Wordpress_Converttofile_Process_Triggered.json
    │   ├── 1327_Wordpress_Manual_Automate_Webhook.json
    │   ├── 1550_Wordpress_Manual_Automation_Webhook.json
    │   └── 1949_Wordpress_Manual_Automate_Webhook.json
    ├── Writebinaryfile/
    │   ├── 0010_Writebinaryfile_Create.json
    │   └── 0747_Writebinaryfile_Spreadsheetfile_Automate.json
    ├── Wufoo/
    │   └── 1129_Wufoo_Update_Triggered.json
    ├── Xml/
    │   └── 0081_Xml_Respondtowebhook_Automate_Webhook.json
    ├── Youtube/
    │   └── 0197_Youtube_Telegram_Send_Scheduled.json
    ├── Zendesk/
    │   ├── 0274_Zendesk_Asana_Create_Webhook.json
    │   ├── 0279_Zendesk_GitHub_Create_Webhook.json
    │   ├── 0280_Zendesk_Jira_Create_Webhook.json
    │   ├── 0285_Zendesk_HubSpot_Create_Scheduled.json
    │   ├── 0286_Zendesk_HubSpot_Create_Scheduled.json
    │   └── 0823_Zendesk_Update_Triggered.json
    └── Zohocrm/
        └── 0086_Zohocrm_Trello_Create_Triggered.json

================================================
FILE CONTENTS
================================================

================================================
FILE: .devcontainer/Dockerfile
================================================
FROM node:20

ARG TZ
ENV TZ="$TZ"

# Install basic development tools, Python, and iptables/ipset
RUN apt update && apt install -y less \
  git \
  procps \
  sudo \
  fzf \
  zsh \
  man-db \
  unzip \
  gnupg2 \
  gh \
  iptables \
  ipset \
  iproute2 \
  dnsutils \
  aggregate \
  jq \
  python3 \
  python3-pip \
  python3-venv \
  python3-dev

# Ensure default node user has access to /usr/local/share
RUN mkdir -p /usr/local/share/npm-global && \
  chown -R node:node /usr/local/share

ARG USERNAME=node

# Persist bash history.
RUN SNIPPET="export PROMPT_COMMAND='history -a' && export HISTFILE=/commandhistory/.bash_history" \
  && mkdir /commandhistory \
  && touch /commandhistory/.bash_history \
  && chown -R $USERNAME /commandhistory

# Set `DEVCONTAINER` environment variable to help with orientation
ENV DEVCONTAINER=true

# Create workspace and config directories and set permissions
RUN mkdir -p /workspace /home/node/.claude && \
  chown -R node:node /workspace /home/node/.claude

WORKDIR /workspace

RUN ARCH=$(dpkg --print-architecture) && \
  wget "https://github.com/dandavison/delta/releases/download/0.18.2/git-delta_0.18.2_${ARCH}.deb" && \
  sudo dpkg -i "git-delta_0.18.2_${ARCH}.deb" && \
  rm "git-delta_0.18.2_${ARCH}.deb"

# Set up non-root user
USER node

# Install global packages
ENV NPM_CONFIG_PREFIX=/usr/local/share/npm-global
ENV PATH=$PATH:/usr/local/share/npm-global/bin

# Set the default shell to zsh rather than sh
ENV SHELL=/bin/zsh

# Default powerline10k theme
RUN sh -c "$(wget -O- https://github.com/deluan/zsh-in-docker/releases/download/v1.2.0/zsh-in-docker.sh)" -- \
  -p git \
  -p fzf \
  -a "source /usr/share/doc/fzf/examples/key-bindings.zsh" \
  -a "source /usr/share/doc/fzf/examples/completion.zsh" \
  -a "export PROMPT_COMMAND='history -a' && export HISTFILE=/commandhistory/.bash_history" \
  -x

# Install Claude
RUN npm install -g @anthropic-ai/claude-code

# Copy and set up firewall script
COPY init-firewall.sh /usr/local/bin/
USER root
RUN chmod +x /usr/local/bin/init-firewall.sh && \
  echo "node ALL=(root) NOPASSWD: /usr/local/bin/init-firewall.sh" > /etc/sudoers.d/node-firewall && \
  chmod 0440 /etc/sudoers.d/node-firewall
USER node


================================================
FILE: .devcontainer/devcontainer.json
================================================
{
  "name": "n8n Workflows - Claude Code",
  "build": {
    "dockerfile": "Dockerfile",
    "args": {
      "TZ": "${localEnv:TZ:America/Los_Angeles}"
    }
  },
  "runArgs": [
    "--cap-add=NET_ADMIN",
    "--cap-add=NET_RAW"
  ],
  "customizations": {
    "vscode": {
      "extensions": [
        "dbaeumer.vscode-eslint",
        "esbenp.prettier-vscode",
        "eamodio.gitlens",
        "ms-python.python",
        "ms-python.flake8",
        "ms-python.black-formatter",
        "tamasfe.even-better-toml"
      ],
      "settings": {
        "editor.formatOnSave": true,
        "editor.defaultFormatter": "esbenp.prettier-vscode",
        "editor.codeActionsOnSave": {
          "source.fixAll.eslint": "explicit"
        },
        "python.defaultInterpreterPath": "/usr/local/bin/python3",
        "python.linting.enabled": true,
        "python.linting.flake8Enabled": true,
        "[python]": {
          "editor.defaultFormatter": "ms-python.black-formatter"
        },
        "terminal.integrated.defaultProfile.linux": "zsh",
        "terminal.integrated.profiles.linux": {
          "bash": {
            "path": "bash",
            "icon": "terminal-bash"
          },
          "zsh": {
            "path": "zsh"
          }
        }
      }
    }
  },
  "remoteUser": "node",
  "mounts": [
    "source=claude-code-bashhistory,target=/commandhistory,type=volume",
    "source=claude-code-config,target=/home/node/.claude,type=volume"
  ],
  "remoteEnv": {
    "NODE_OPTIONS": "--max-old-space-size=4096",
    "CLAUDE_CONFIG_DIR": "/home/node/.claude",
    "POWERLEVEL9K_DISABLE_GITSTATUS": "true"
  },
  "workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=delegated",
  "workspaceFolder": "/workspace",
  "postCreateCommand": "sudo /usr/local/bin/init-firewall.sh"
}

================================================
FILE: .devcontainer/init-firewall.sh
================================================
#!/bin/bash
set -euo pipefail  # Exit on error, undefined vars, and pipeline failures
IFS=$'\n\t'       # Stricter word splitting

# Flush existing rules and delete existing ipsets
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
ipset destroy allowed-domains 2>/dev/null || true

# First allow DNS and localhost before any restrictions
# Allow outbound DNS
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
# Allow inbound DNS responses
iptables -A INPUT -p udp --sport 53 -j ACCEPT
# Allow outbound SSH
iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT
# Allow inbound SSH responses
iptables -A INPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
# Allow localhost
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Create ipset with CIDR support
ipset create allowed-domains hash:net

# Fetch GitHub meta information and aggregate + add their IP ranges
echo "Fetching GitHub IP ranges..."
gh_ranges=$(curl -s https://api.github.com/meta)
if [ -z "$gh_ranges" ]; then
    echo "ERROR: Failed to fetch GitHub IP ranges"
    exit 1
fi

if ! echo "$gh_ranges" | jq -e '.web and .api and .git' >/dev/null; then
    echo "ERROR: GitHub API response missing required fields"
    exit 1
fi

echo "Processing GitHub IPs..."
while read -r cidr; do
    if [[ ! "$cidr" =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}$ ]]; then
        echo "ERROR: Invalid CIDR range from GitHub meta: $cidr"
        exit 1
    fi
    echo "Adding GitHub range $cidr"
    ipset add allowed-domains "$cidr"
done < <(echo "$gh_ranges" | jq -r '(.web + .api + .git)[]' | aggregate -q)

# Resolve and add other allowed domains
for domain in \
    "registry.npmjs.org" \
    "api.anthropic.com" \
    "sentry.io" \
    "statsig.anthropic.com" \
    "statsig.com"; do
    echo "Resolving $domain..."
    ips=$(dig +short A "$domain")
    if [ -z "$ips" ]; then
        echo "ERROR: Failed to resolve $domain"
        exit 1
    fi
    
    while read -r ip; do
        if [[ ! "$ip" =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
            echo "ERROR: Invalid IP from DNS for $domain: $ip"
            exit 1
        fi
        echo "Adding $ip for $domain"
        ipset add allowed-domains "$ip"
    done < <(echo "$ips")
done

# Get host IP from default route
HOST_IP=$(ip route | grep default | cut -d" " -f3)
if [ -z "$HOST_IP" ]; then
    echo "ERROR: Failed to detect host IP"
    exit 1
fi

HOST_NETWORK=$(echo "$HOST_IP" | sed "s/\.[0-9]*$/.0\/24/")
echo "Host network detected as: $HOST_NETWORK"

# Set up remaining iptables rules
iptables -A INPUT -s "$HOST_NETWORK" -j ACCEPT
iptables -A OUTPUT -d "$HOST_NETWORK" -j ACCEPT

# Set default policies to DROP first
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

# First allow established connections for already approved traffic
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Then allow only specific outbound traffic to allowed domains
iptables -A OUTPUT -m set --match-set allowed-domains dst -j ACCEPT

echo "Firewall configuration complete"
echo "Verifying firewall rules..."
if curl --connect-timeout 5 https://example.com >/dev/null 2>&1; then
    echo "ERROR: Firewall verification failed - was able to reach https://example.com"
    exit 1
else
    echo "Firewall verification passed - unable to reach https://example.com as expected"
fi

# Verify GitHub API access
if ! curl --connect-timeout 5 https://api.github.com/zen >/dev/null 2>&1; then
    echo "ERROR: Firewall verification failed - unable to reach https://api.github.com"
    exit 1
else
    echo "Firewall verification passed - able to reach https://api.github.com as expected"
fi

================================================
FILE: .dockerignore
================================================
# .dockerignore - Files and directories to exclude from Docker build context

# Git
.git
.gitignore
.gitmodules
.github/

# Documentation
*.md
!README.md
docs/
Documentation/

# IDE and editor files
.vscode/
.idea/
*.swp
*.swo
*~

# OS generated files
.DS_Store
Thumbs.db
desktop.ini

# Python artifacts
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg

# Virtual environments
venv/
.venv/
env/
ENV/
env.bak/
venv.bak/

# Testing
.pytest_cache/
.coverage
htmlcov/
.tox/
*.cover
.hypothesis/
test_*.py
*_test.py
tests/

# Database files (will be created at runtime)
*.db
*.sqlite
*.sqlite3
database/*.db
database/*.db-*

# Backup directories
workflows_backup*/
backup/
*.bak
*.backup

# Environment files (security)
.env
.env.*
!.env.example

# Logs
*.log
logs/

# Temporary files
tmp/
temp/
*.tmp
*.temp
.cache/

# Development files
DEBUG_*
COMPREHENSIVE_*
WORKFLOW_*
FINAL_*
test_*.sh
scripts/

# Security scan files
.trivyignore
trivy-results.sarif
.snyk

# CI/CD
.travis.yml
.gitlab-ci.yml
azure-pipelines.yml

# Docker files (if building from within container)
Dockerfile*
docker-compose*.yml

# Node (if any)
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*

================================================
FILE: .github/workflows/ci-cd.yml
================================================
name: CI/CD Pipeline

on:
  push:
    branches: [ main, develop ]
  pull_request:
    branches: [ main ]
  release:
    types: [ published ]

env:
  REGISTRY: ghcr.io
  IMAGE_NAME: ${{ github.repository }}

jobs:
  test:
    name: Run Tests
    runs-on: ubuntu-latest
    strategy:
      matrix:
        python-version: ['3.9', '3.10', '3.11']

    steps:
    - name: Checkout code
      uses: actions/checkout@v6

    - name: Set up Python ${{ matrix.python-version }}
      uses: actions/setup-python@v6
      with:
        python-version: ${{ matrix.python-version }}

    - name: Cache Python dependencies
      uses: actions/cache@v5
      with:
        path: ~/.cache/pip
        key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
        restore-keys: |
          ${{ runner.os }}-pip-

    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -r requirements.txt
        pip install pytest pytest-asyncio httpx

    - name: Lint with flake8
      run: |
        pip install flake8
        # Stop the build if there are Python syntax errors or undefined names
        flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
        # Treat all errors as warnings
        flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics

    - name: Test application startup
      run: |
        # Start server in background with CI mode (skips indexing)
        timeout 30 python run.py --host 127.0.0.1 --port 8001 --skip-index &
        SERVER_PID=$!

        # Wait for server to be ready (max 20 seconds)
        echo "Waiting for server to start..."
        for i in {1..20}; do
          if curl -f http://127.0.0.1:8001/api/stats 2>/dev/null; then
            echo "Server is ready!"
            break
          fi
          if [ $i -eq 20 ]; then
            echo "Server failed to start within 20 seconds"
            exit 1
          fi
          echo "Attempt $i/20..."
          sleep 1
        done

        # Clean up
        kill $SERVER_PID 2>/dev/null || true

    - name: Test Docker build
      run: |
        docker build -t test-image:latest .

  security:
    name: Security Scan
    runs-on: ubuntu-latest
    needs: test
    # Don't fail the workflow if Trivy finds issues
    continue-on-error: true
    permissions:
      contents: read
      security-events: write
      actions: read

    steps:
    - name: Checkout code
      uses: actions/checkout@v6

    - name: Run Trivy vulnerability scanner
      uses: aquasecurity/trivy-action@master
      with:
        scan-type: 'fs'
        scan-ref: '.'
        format: 'sarif'
        output: 'trivy-results.sarif'
        severity: 'CRITICAL,HIGH'
        ignore-unfixed: true
        trivyignores: '.trivyignore'
        trivy-config: 'trivy.yaml'
        exit-code: '0'  # Report only mode - won't fail the build
        vuln-type: 'os,library'
        skip-dirs: 'workflows,database,workflows_backup*,__pycache__,venv,.venv'

    - name: Upload Trivy scan results
      uses: github/codeql-action/upload-sarif@v3
      if: always()
      with:
        sarif_file: 'trivy-results.sarif'

  build:
    name: Build and Push Docker Image
    runs-on: ubuntu-latest
    needs: [test, security]
    if: github.event_name != 'pull_request'
    permissions:
      contents: read
      packages: write
      id-token: write

    steps:
    - name: Checkout code
      uses: actions/checkout@v6

    - name: Set up Docker Buildx
      uses: docker/setup-buildx-action@v3

    - name: Log in to Container Registry
      uses: docker/login-action@v3
      with:
        registry: ${{ env.REGISTRY }}
        username: ${{ github.actor }}
        password: ${{ secrets.GITHUB_TOKEN }}

    - name: Extract metadata
      id: meta
      uses: docker/metadata-action@v5
      with:
        images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
        tags: |
          type=ref,event=branch
          type=ref,event=pr
          type=semver,pattern={{version}}
          type=semver,pattern={{major}}.{{minor}}
          type=sha,prefix=sha-

    - name: Build and push Docker image
      uses: docker/build-push-action@v6
      with:
        context: .
        platforms: linux/amd64,linux/arm64
        push: true
        tags: ${{ steps.meta.outputs.tags }}
        labels: ${{ steps.meta.outputs.labels }}
        cache-from: type=gha
        cache-to: type=gha,mode=max

  deploy-staging:
    name: Deploy to Staging
    runs-on: ubuntu-latest
    needs: build
    if: github.ref == 'refs/heads/develop'
    environment: staging

    steps:
    - name: Checkout code
      uses: actions/checkout@v6

    - name: Deploy to staging
      run: |
        echo "Deploying to staging environment..."
        # Add your staging deployment commands here
        # Example: kubectl, docker-compose, or cloud provider CLI commands

  deploy-production:
    name: Deploy to Production
    runs-on: ubuntu-latest
    needs: build
    if: github.ref == 'refs/heads/main' || github.event_name == 'release'
    environment: production

    steps:
    - name: Checkout code
      uses: actions/checkout@v6

    - name: Deploy to production
      run: |
        echo "Deploying to production environment..."
        # Add your production deployment commands here
        # Example: kubectl, docker-compose, or cloud provider CLI commands

  notification:
    name: Send Notifications
    runs-on: ubuntu-latest
    needs: [deploy-staging, deploy-production]
    if: always() && (needs.deploy-staging.result != 'skipped' || needs.deploy-production.result != 'skipped')

    steps:
    - name: Notify deployment status
      run: |
        if [[ "${{ needs.deploy-staging.result }}" == "success" || "${{ needs.deploy-production.result }}" == "success" ]]; then
          echo "Deployment successful!"
        else
          echo "Deployment failed!"
        fi

================================================
FILE: .github/workflows/deploy-pages.yml
================================================
name: Deploy GitHub Pages (Legacy - Disabled)

# This workflow is disabled - using pages-deploy.yml instead
# The docs folder already contains pre-built static files
on:
  workflow_dispatch:  # Only allow manual triggering

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
  contents: read
  pages: write
  id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
concurrency:
  group: "pages"
  cancel-in-progress: false

jobs:
  # Build job
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Setup Python
        uses: actions/setup-python@v6
        with:
          python-version: '3.11'

      - name: Install Python dependencies
        run: |
          python -m pip install --upgrade pip
          pip install -r requirements.txt

      - name: Setup database and generate search index
        run: |
          # Create database directory
          mkdir -p database

          # Index all workflows
          python workflow_db.py --index --force

          # Generate categories
          python create_categories.py

          # Generate static search index for GitHub Pages
          python scripts/generate_search_index.py

      - name: Setup Pages
        uses: actions/configure-pages@v5

      - name: Upload artifact
        uses: actions/upload-pages-artifact@v4
        with:
          path: './docs'

  # Deployment job
  deploy:
    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}
    runs-on: ubuntu-latest
    needs: build
    steps:
      - name: Deploy to GitHub Pages
        id: deployment
        uses: actions/deploy-pages@v4

================================================
FILE: .github/workflows/docker.yml
================================================
name: Docker Build and Test

on:
  push:
    branches: [ main, develop ]
    paths:
      - 'Dockerfile'
      - 'docker-compose*.yml'
      - 'requirements.txt'
      - '*.py'
  pull_request:
    branches: [ main ]
    paths:
      - 'Dockerfile'
      - 'docker-compose*.yml'
      - 'requirements.txt'
      - '*.py'

jobs:
  docker-build:
    name: Build and Test Docker Image
    runs-on: ubuntu-latest

    steps:
    - name: Checkout code
      uses: actions/checkout@v6

    - name: Set up Docker Buildx
      uses: docker/setup-buildx-action@v3

    - name: Build Docker image
      uses: docker/build-push-action@v6
      with:
        context: .
        load: true
        tags: workflows-doc:test
        cache-from: type=gha
        cache-to: type=gha,mode=max

    - name: Test Docker image
      run: |
        # Test container starts successfully with CI mode
        docker run --name test-container -d -p 8002:8000 -e CI=true workflows-doc:test

        # Wait for container to be ready (max 30 seconds)
        echo "Waiting for container to start..."
        for i in {1..30}; do
          if curl -f http://localhost:8002/api/stats 2>/dev/null; then
            echo "Container is ready!"
            break
          fi
          if [ $i -eq 30 ]; then
            echo "Container failed to start within 30 seconds"
            docker logs test-container
            exit 1
          fi
          echo "Attempt $i/30..."
          sleep 1
        done

        # Test container logs for errors
        docker logs test-container

        # Cleanup
        docker stop test-container
        docker rm test-container

    - name: Test Docker Compose
      run: |
        # Test basic docker-compose with CI mode
        CI=true docker compose -f docker-compose.yml up -d --build

        # Wait for services (max 30 seconds)
        echo "Waiting for services to start..."
        for i in {1..30}; do
          if curl -f http://localhost:8000/api/stats 2>/dev/null; then
            echo "Services are ready!"
            break
          fi
          if [ $i -eq 30 ]; then
            echo "Services failed to start within 30 seconds"
            docker compose logs
            exit 1
          fi
          echo "Attempt $i/30..."
          sleep 1
        done

        # Show logs
        docker compose logs --tail=50

        # Cleanup
        docker compose down

    - name: Test security scanning
      run: |
        # Install Trivy
        sudo apt-get update
        sudo apt-get install wget apt-transport-https gnupg lsb-release
        wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | sudo apt-key add -
        echo "deb https://aquasecurity.github.io/trivy-repo/deb $(lsb_release -sc) main" | sudo tee -a /etc/apt/sources.list.d/trivy.list
        sudo apt-get update
        sudo apt-get install trivy

        # Scan the built image using our configuration
        # Exit code 0 = report only mode (won't fail the build)
        trivy image \
          --config trivy.yaml \
          --ignorefile .trivyignore \
          --exit-code 0 \
          --severity HIGH,CRITICAL \
          workflows-doc:test

  multi-platform:
    name: Test Multi-platform Build
    runs-on: ubuntu-latest
    needs: docker-build

    steps:
    - name: Checkout code
      uses: actions/checkout@v6

    - name: Set up QEMU
      uses: docker/setup-qemu-action@v3
      with:
        platforms: linux/arm64

    - name: Set up Docker Buildx
      uses: docker/setup-buildx-action@v3

    - name: Build multi-platform image
      uses: docker/build-push-action@v6
      with:
        context: .
        platforms: linux/amd64,linux/arm64
        tags: workflows-doc:multi-platform
        cache-from: type=gha
        cache-to: type=gha,mode=max
        # Don't load multi-platform images (not supported)
        push: false

================================================
FILE: .github/workflows/pages-deploy.yml
================================================
name: Deploy to GitHub Pages

on:
  # Runs on pushes targeting the default branch
  push:
    branches: ["main"]

  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
  contents: read
  pages: write
  id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
  group: "pages"
  cancel-in-progress: false

jobs:
  # Single deploy job since we're just deploying
  deploy:
    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Setup Pages
        uses: actions/configure-pages@v5

      - name: Upload artifact
        uses: actions/upload-pages-artifact@v4
        with:
          # Upload docs directory
          path: './docs'

      - name: Deploy to GitHub Pages
        id: deployment
        uses: actions/deploy-pages@v4

================================================
FILE: .github/workflows/update-readme.yml
================================================
name: Update README Stats

on:
  push:
    branches: [ main ]
    paths:
      - 'workflows/**'
  schedule:
    # Run weekly on Sunday at 00:00 UTC
    - cron: '0 0 * * 0'
  workflow_dispatch:  # Allow manual triggering

jobs:
  update-stats:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v6
        with:
          token: ${{ secrets.GITHUB_TOKEN }}

      - name: Setup Python
        uses: actions/setup-python@v6
        with:
          python-version: '3.11'

      - name: Install Python dependencies
        run: |
          python -m pip install --upgrade pip
          pip install -r requirements.txt

      - name: Generate workflow statistics
        run: |
          # Create database directory
          mkdir -p database

          # Index all workflows to get latest stats
          python workflow_db.py --index --force

          # Generate categories
          python create_categories.py

          # Get stats and update README
          python scripts/update_readme_stats.py

      - name: Commit changes
        run: |
          git config --local user.email "action@github.com"
          git config --local user.name "GitHub Action"
          git add README.md
          if git diff --staged --quiet; then
            echo "No changes to README.md"
          else
            git commit -m "📊 Update workflow statistics

            - Updated workflow counts and statistics
            - Generated from latest workflow analysis

            🤖 Automated update via GitHub Actions"
            git push
          fi

================================================
FILE: .gitignore
================================================
# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg

# Environment files
.env
.env.local
.env.production

# Virtual environments
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# IDE
.vscode/
.idea/
*.swp
*.swo
*~

# OS
.DS_Store
Thumbs.db

# Application specific
database/workflows.db
database/workflows.db-*
*.log

# Temporary files
*.tmp
*.temp

# Development artifacts
*.log
*.tmp
temp/
tmp/
.cache/

# Documentation artifacts (generated)
workflow-documentation.html

# Test files
test_*.json
*_test.json

# Backup files
*.bak
*.backup

# Workflow backup directories (created during renaming)
workflow_backups/
workflows_backup*/
workflows_backup_*/

# Database files (SQLite)
*.db
*.sqlite
*.sqlite3

# Rename logs
workflow_rename_log.json

# Node.js artifacts (if using npm)
node_modules/
package-lock.json

#db
*.db-shm
*.db-wal

# versions
.python-version

# Claude Code local settings (created during development)
.claude/settings.local.json

# E3D development directory
.e3d/

# Playwright MCP test files
.playwright-mcp/

# Import logs
import_log.json
# Archive folder for old files
archive/


================================================
FILE: .trivyignore
================================================
# Trivy Ignore File
# Only suppress after verifying the vulnerability is mitigated or false positive

# Python base image CVEs - These are in the base OS packages
# Low risk as they require local access or specific conditions
CVE-2023-45853  # zlib - Low severity, requires local access
CVE-2023-52425  # libexpat - Low severity, XML parsing
CVE-2024-6119   # OpenSSL - Medium, specific edge case
CVE-2024-28182  # nghttp2 - Low, HTTP/2 specific
CVE-2024-38428  # wget - Low, not used in production
CVE-2024-45490  # libexpat - XML parsing edge case
CVE-2024-45491  # libexpat - XML parsing edge case
CVE-2024-45492  # libexpat - XML parsing edge case

# Python package CVEs - Addressed through version pins or not applicable
CVE-2024-39689  # certifi - Updated to latest version
CVE-2024-37891  # urllib3 - Addressed by version pin
CVE-2024-35195  # requests - Mitigated in latest version
CVE-2024-6345   # setuptools - Build time only
CVE-2024-5569   # pip - Build time only

# Debian/Ubuntu base image CVEs
CVE-2024-7347   # apt - Package manager, build time only
CVE-2024-38476  # libc6 - Requires local access
CVE-2024-33599  # glibc - Specific conditions required
CVE-2024-33600  # glibc - Specific conditions required
CVE-2024-33601  # glibc - Specific conditions required
CVE-2024-33602  # glibc - Specific conditions required

# Container/Docker specific - Properly mitigated
CIS-DI-0001     # Create a user for the container - We use appuser
CIS-DI-0005     # User in Dockerfile - We properly use non-root user
CIS-DI-0006     # HEALTHCHECK - We have healthcheck defined
CIS-DI-0008     # USER directive - We switch to appuser
CIS-DI-0009     # Use COPY instead of ADD - We use COPY
CIS-DI-0010     # Secrets in Docker - Using env vars

# Secret detection false positives - Using env vars
DS002           # Hardcoded secrets - Fixed with env vars
DS004           # Private keys - Not present in code
DS012           # JWT secret - Using env vars
DS017           # Hardcoded password - Fixed with env vars

# Ignore severity levels after review
LOW             # All LOW severity vulnerabilities reviewed
MEDIUM          # MEDIUM severity that can't be fixed without breaking compatibility
UNDEFINED       # Undefined severity levels

================================================
FILE: CLAUDE.md
================================================


# n8n-workflows Repository

#

# Overview
This repository contains a collection of n8n workflow automation files. n8n is a workflow automation tool that allows creating complex automations through a visual node-based interface. Each workflow is stored as a JSON file containing node definitions, connections, and configurations.

#

# Repository Structure
```text

text

text
n8n-workflows/
├── workflows/           

# Main directory containing all n8n workflow JSON files
│   ├── *.json          

# Individual workflow files
├── README.md           

# Repository documentation
├── claude.md           

# This file

 - AI assistant context
└── [other files]       

# Additional configuration or documentation files
```text

text

text

#

# Workflow File Format
Each workflow JSON file contains:

- **name**: Workflow identifier

- **nodes**: Array of node objects defining operations

- **connections**: Object defining how nodes are connected

- **settings**: Workflow-level configuration

- **staticData**: Persistent data across executions

- **tags**: Categorization tags

- **createdAt/updatedAt**: Timestamps

#

# Common Node Types

- **Trigger Nodes**: webhook, cron, manual

- **Integration Nodes**: HTTP Request, database connectors, API integrations

- **Logic Nodes**: IF, Switch, Merge, Loop

- **Data Nodes**: Function, Set, Transform Data

- **Communication**: Email, Slack, Discord, etc.

#

# Working with This Repository

#

#

# For Analysis Tasks
When analyzing workflows in this repository:

1. Parse JSON files to understand workflow structure

2. Examine node chains to determine functionality

3. Identify external integrations and dependencies

4. Consider the business logic implemented by node connections

#

#

# For Documentation Tasks
When documenting workflows:

1. Verify existing descriptions against actual implementation

2. Identify trigger mechanisms and schedules

3. List all external services and APIs used

4. Note data transformations and business logic

5. Highlight any error handling or retry mechanisms

#

#

# For Modification Tasks
When modifying workflows:

1. Preserve the JSON structure and required fields

2. Maintain node ID uniqueness

3. Update connections when adding/removing nodes

4. Test compatibility with n8n version requirements

#

# Key Considerations

#

#

# Security

- Workflow files may contain sensitive information in webhook URLs or API configurations

- Credentials are typically stored separately in n8n, not in the workflow files

- Be cautious with any hardcoded values or endpoints

#

#

# Best Practices

- Workflows should have clear, descriptive names

- Complex workflows benefit from documentation nodes or comments

- Error handling nodes improve reliability

- Modular workflows (calling sub-workflows) improve maintainability

#

#

# Common Patterns

- **Data Pipeline**: Trigger → Fetch Data → Transform → Store/Send

- **Integration Sync**: Cron → API Call → Compare → Update Systems

- **Automation**: Webhook → Process → Conditional Logic → Actions

- **Monitoring**: Schedule → Check Status → Alert if Issues

#

# Helpful Context for AI Assistants

When assisting with this repository:

1. **Workflow Analysis**: Focus on understanding the business purpose by examining the node flow, not just individual nodes.

2. **Documentation Generation**: Create descriptions that explain what the workflow accomplishes, not just what nodes it contains.

3. **Troubleshooting**: Common issues include:

   - Incorrect node connections

   - Missing error handling

   - Inefficient data processing in loops

   - Hardcoded values that should be parameters

4. **Optimization Suggestions**:

   - Identify redundant operations

   - Suggest batch processing where applicable

   - Recommend error handling additions

   - Propose splitting complex workflows

5. **Code Generation**: When creating tools to analyze these workflows:

   - Handle various n8n format versions

   - Account for custom nodes

   - Parse expressions in node parameters

   - Consider node execution order

#

# Repository-Specific Information
[Add any specific information about your workflows, naming conventions, or special considerations here]

#

# Version Compatibility

- n8n version: [Specify the n8n version these workflows are compatible with]

- Last updated: [Date of last major update]

- Migration notes: [Any version-specific considerations]

-

-

-

[中文](./CLAUDE_ZH.md)

================================================
FILE: CLAUDE_ZH.md
================================================


# n8n-workflows 仓库

#

# 概述

本仓库包含一系列 n8n 工作流自动化文件。n8n 是一款工作流自动化工具,可通过可视化节点界面创建复杂自动化。每个工作流以 JSON 文件形式存储,包含节点定义、连接和配置信息。

#

# 仓库结构

```text

text

bash
n8n-workflows/
├── workflows/           

# 主目录,包含所有 n8n 工作流 JSON 文件
│   ├── *.json          

# 各个工作流文件
├── README.md           

# 仓库文档
├── claude.md           

# 本文件

 - AI 助手上下文
└── [其他文件]          

# 其他配置或文档文件
```text

text

text

#

# 工作流文件格式

每个工作流 JSON 文件包含:

- **name**:工作流标识符

- **nodes**:节点对象数组,定义操作

- **connections**:定义节点连接方式的对象

- **settings**:工作流级别配置

- **staticData**:执行间持久化数据

- **tags**:分类标签

- **createdAt/updatedAt**:时间戳

#

# 常见节点类型

- **触发节点**:webhook、cron、manual

- **集成节点**:HTTP 请求、数据库连接器、API 集成

- **逻辑节点**:IF、Switch、Merge、Loop

- **数据节点**:Function、Set、Transform Data

- **通信节点**:Email、Slack、Discord 等

#

# 使用本仓库

#

#

# 分析任务建议

分析本仓库工作流时:

1. 解析 JSON 文件,理解工作流结构

2. 检查节点链路,确定功能实现

3. 识别外部集成与依赖

4. 考虑节点连接实现的业务逻辑

#

#

# 文档任务建议

记录工作流文档时:

1. 验证现有描述与实际实现的一致性

2. 识别触发机制和调度计划

3. 列出所有使用的外部服务和API

4. 记录数据转换和业务逻辑

5. 突出显示任何错误处理或重试机制

#

#

# 修改任务建议

修改工作流时:

1. 保持 JSON 结构和必要字段

2. 维护节点 ID 的唯一性

3. 添加/删除节点时更新连接

4. 测试与 n8n 版本要求的兼容性

#

# 关键注意事项

#

#

# 安全性

- 工作流文件可能在 webhook URL 或 API 配置中包含敏感信息

- 凭证通常单独存储在 n8n 中,而不在工作流文件中

- 谨慎处理任何硬编码的值或端点

#

#

# 最佳实践

- 工作流应有清晰、描述性的名称

- 复杂工作流受益于文档节点或注释

- 错误处理节点提高可靠性

- 模块化工作流(调用子工作流)提高可维护性

#

#

# 常见模式

- **数据管道**:触发 → 获取数据 → 转换 → 存储/发送

- **集成同步**:定时任务 → API调用 → 比较 → 更新系统

- **自动化**:Webhook → 处理 → 条件逻辑 → 执行操作

- **监控**:定时 → 检查状态 → 问题告警

#

# AI 助手的有用上下文

协助处理此仓库时:

1. **工作流分析**:通过检查节点流程了解业务目的,而不仅仅是单个节点。

2. **文档生成**:创建解释工作流实现功能的描述,而不仅仅是包含哪些节点。

3. **故障排除**:常见问题包括:

   - 节点连接不正确

   - 缺少错误处理

   - 循环中的低效数据处理

   - 应该参数化的硬编码值

4. **优化建议**:

   - 识别冗余操作

   - 适用场景下建议批处理

   - 推荐添加错误处理

   - 建议拆分复杂工作流

5. **代码生成**:创建分析这些工作流的工具时:

   - 处理各种 n8n 格式版本

   - 考虑自定义节点

   - 解析节点参数中的表达式

   - 考虑节点执行顺序

#

# 仓库特定信息

[在此处添加有关工作流、命名约定或特殊注意事项的任何特定信息]

#

# 版本兼容性

- n8n 版本:[指定这些工作流兼容的 n8n 版本]

- 最后更新:[最后一次主要更新的日期]

- 迁移说明:[任何特定版本的注意事项]


================================================
FILE: DELIVERY-SUMMARY.md
================================================
# 🎉 AI Automation Stack - Delivery Summary

## ✅ What Was Built

A complete, production-ready AI automation stack with comprehensive documentation for users of all skill levels.

---

## 📦 Deliverables

### Core Stack Components

1. **Docker Compose Configuration** (`docker-compose.yml`)
   - n8n (workflow automation) - Port 5678
   - Agent Zero (AI agent runtime) - Port 50080
   - ComfyUI (image generation) - Port 8188
   - Shared volume architecture
   - GPU support with CPU fallback
   - Health checks and restart policies

2. **Startup Scripts**
   - `start.ps1` - Windows PowerShell script with full automation
   - `start.sh` - Linux/macOS bash script with full automation
   - Features:
     - Docker installation check
     - GPU detection
     - Directory creation
     - Image pulling
     - Service health monitoring
     - Status reporting

3. **Pre-built n8n Workflows**
   - `comfyui-image-generation.json` - Full webhook→ComfyUI→response pipeline
   - `comfyui-simple-test.json` - Connectivity test workflow

4. **Configuration Files**
   - `.env` - Environment variables template
   - `.gitignore` - Proper exclusions for data directories

---

## 📚 Documentation Suite (7 Guides)

### 1. INDEX.md (Navigation Hub)
- **Purpose:** Help users find the right guide
- **Features:**
  - Organized by experience level
  - Organized by goal
  - Suggested reading order
  - Quick links
  - Success path

### 2. QUICK-START.md (3-Step Guide)
- **Target:** Experienced users
- **Length:** 1 page
- **Features:**
  - Minimal instructions
  - 3 simple steps
  - Quick command reference
  - Get running in 5 minutes

### 3. EASY-INSTALL.md (Beginner Guide)
- **Target:** Complete beginners
- **Length:** 5 pages
- **Features:**
  - Step-by-step with visual indicators
  - "What you see" examples
  - Detailed Docker installation
  - Screenshot instructions
  - Simple language
  - Troubleshooting basics

### 4. TROUBLESHOOTING.md (Problem Solver)
- **Target:** All users
- **Length:** 4 pages
- **Features:**
  - 10 common problems with solutions
  - Error message explanations
  - Step-by-step fixes
  - Emergency reset instructions
  - Quick command reference

### 5. CHEAT-SHEET.md (Quick Reference)
- **Target:** Daily users
- **Length:** 3 pages
- **Features:**
  - All commands in one place
  - API quick reference
  - Common fixes table
  - Printable format
  - Backup instructions

### 6. SUMMARY.md (Overview)
- **Target:** Learning users
- **Length:** 4 pages
- **Features:**
  - System architecture
  - Learning path (4-day plan)
  - Use cases
  - System requirements
  - Success checklist

### 7. README.md (Complete Documentation)
- **Target:** Advanced users
- **Length:** 8 pages
- **Features:**
  - Full technical documentation
  - API reference
  - Integration architecture
  - Security notes
  - Deployment guide

---

## 🎯 Key Features

### User Experience
- ✅ One-command deployment
- ✅ Automatic GPU detection
- ✅ CPU fallback mode
- ✅ Clear status reporting
- ✅ Comprehensive error handling
- ✅ Multiple documentation levels

### Technical Excellence
- ✅ Production-ready Docker Compose
- ✅ Health checks for all services
- ✅ Persistent volumes
- ✅ Shared data architecture
- ✅ Network isolation
- ✅ Restart policies

### Documentation Quality
- ✅ 7 comprehensive guides
- ✅ Multiple experience levels
- ✅ Visual indicators (emojis)
- ✅ Step-by-step instructions
- ✅ Troubleshooting coverage
- ✅ Quick reference materials

---

## 📊 Statistics

| Metric | Count |
|--------|-------|
| **Total Files** | 14 |
| **Documentation Pages** | 7 |
| **Total Documentation** | ~30 pages |
| **Workflow Templates** | 2 |
| **Supported Platforms** | 3 (Windows, macOS, Linux) |
| **Services Included** | 3 (n8n, Agent Zero, ComfyUI) |
| **Lines of Code** | ~2,100 |

---

## 🚀 Repository Status

### Branch Information
- **Branch:** `feature/ai-automation-stack`
- **Commits:** 5
- **Files Added:** 14
- **Status:** Ready for PR

### Links
- **Branch:** https://github.com/insomniakin/n8n-workflows/tree/feature/ai-automation-stack
- **Create PR:** https://github.com/insomniakin/n8n-workflows/pull/new/feature/ai-automation-stack

---

## 📁 Complete File Structure

```
ai-stack/
├── 📚 Documentation (7 files)
│   ├── INDEX.md              ← Start here! Navigation hub
│   ├── QUICK-START.md        ← 3-step quick guide
│   ├── EASY-INSTALL.md       ← Detailed beginner guide
│   ├── TROUBLESHOOTING.md    ← Problem solving
│   ├── CHEAT-SHEET.md        ← Quick reference (printable)
│   ├── SUMMARY.md            ← Overview & learning path
│   └── README.md             ← Complete documentation
│
├── 🐳 Stack Configuration
│   ├── docker-compose.yml    ← Main stack definition
│   ├── .env                  ← Environment template
│   └── .gitignore            ← Git exclusions
│
├── 🚀 Startup Scripts
│   ├── start.ps1             ← Windows launcher
│   └── start.sh              ← Linux/macOS launcher
│
└── 📊 Workflows
    ├── comfyui-image-generation.json  ← Full pipeline
    └── comfyui-simple-test.json       ← Connectivity test
```

---

## 🎓 Documentation Hierarchy

```
┌─────────────────────────────────────────────────────────┐
│                      INDEX.md                           │
│              (Navigation & Guidance)                    │
└────────────────────┬────────────────────────────────────┘
                     │
        ┌────────────┼────────────┐
        │            │            │
        ▼            ▼            ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ QUICK-START  │ │ EASY-INSTALL │ │ README       │
│ (Fast)       │ │ (Detailed)   │ │ (Complete)   │
└──────────────┘ └──────────────┘ └──────────────┘
        │            │            │
        └────────────┼────────────┘
                     │
        ┌────────────┼────────────┐
        │            │            │
        ▼            ▼            ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│TROUBLESHOOT  │ │ CHEAT-SHEET  │ │ SUMMARY      │
│ (Fix)        │ │ (Reference)  │ │ (Learn)      │
└──────────────┘ └──────────────┘ └──────────────┘
```

---

## ✨ Highlights

### What Makes This Special

1. **Truly Turnkey**
   - Single command deployment
   - Automatic environment setup
   - No manual configuration needed

2. **Accessibility**
   - Documentation for all skill levels
   - Simple language throughout
   - Visual indicators and examples

3. **Production Ready**
   - Health checks
   - Restart policies
   - Proper volume management
   - Security considerations

4. **Comprehensive**
   - 7 documentation guides
   - 2 workflow templates
   - Complete API reference
   - Troubleshooting coverage

---

## 🎯 User Journey

### Complete Beginner
```
1. Read INDEX.md → Directed to EASY-INSTALL.md
2. Follow step-by-step installation
3. Use TROUBLESHOOTING.md if needed
4. Print CHEAT-SHEET.md for reference
5. Read SUMMARY.md to learn more
```

### Experienced User
```
1. Read INDEX.md → Directed to QUICK-START.md
2. Run 3 commands, get running
3. Use CHEAT-SHEET.md for daily reference
4. Read README.md for deep dive
```

### Problem Solver
```
1. Hit an issue
2. Check TROUBLESHOOTING.md
3. Find solution in 10 common problems
4. Back to work
```

---

## 🔄 Next Steps (Optional Enhancements)

### Potential Future Additions
- [ ] Video tutorial
- [ ] Docker Hub images
- [ ] Kubernetes manifests
- [ ] Terraform/IaC templates
- [ ] CI/CD pipeline examples
- [ ] More workflow templates
- [ ] Model download automation
- [ ] Web-based installer

---

## 💡 Key Achievements

✅ **Solved the "open and install" dream**
- One command deployment
- Automatic setup
- Clear documentation

✅ **Made it accessible**
- Multiple documentation levels
- Simple language
- Visual guides

✅ **Made it production-ready**
- Proper Docker configuration
- Health checks
- Security considerations

✅ **Made it maintainable**
- Clear structure
- Comprehensive docs
- Easy to extend

---

## 🎉 Conclusion

This AI Automation Stack delivers on the promise of "open it and it installs" with:

- **Complete automation** via startup scripts
- **Comprehensive documentation** for all skill levels
- **Production-ready configuration** with best practices
- **Beginner-friendly guides** with simple language
- **Quick reference materials** for daily use

The stack is ready for immediate use and can serve as a foundation for AI-powered automation workflows.

---

**Status: ✅ Complete and Ready for Deployment**

**Branch:** https://github.com/insomniakin/n8n-workflows/tree/feature/ai-automation-stack

**Create PR:** https://github.com/insomniakin/n8n-workflows/pull/new/feature/ai-automation-stack

================================================
FILE: DEPLOYMENT.md
================================================
# N8N Workflows Documentation Platform - Deployment Guide

This guide covers deploying the N8N Workflows Documentation Platform in various environments.

## Quick Start (Docker)

### Development Environment
```bash
# Clone repository
git clone <repository-url>
cd n8n-workflows-1

# Start development environment
docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build
```

### Production Environment
```bash
# Production deployment
docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d --build

# With monitoring
docker compose --profile monitoring up -d
```

## Deployment Options

### 1. Docker Compose (Recommended)

#### Development
```bash
# Start development environment with auto-reload
docker compose -f docker-compose.yml -f docker-compose.dev.yml up

# With additional dev tools (DB admin, file watcher)
docker compose --profile dev-tools up
```

#### Production
```bash
# Basic production deployment
docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d

# With reverse proxy and SSL
docker compose --profile production up -d

# With monitoring stack
docker compose --profile monitoring up -d
```

### 2. Standalone Docker

```bash
# Build image
docker build -t workflows-doc:latest .

# Run container
docker run -d \
  --name n8n-workflows-docs \
  -p 8000:8000 \
  -v $(pwd)/database:/app/database \
  -v $(pwd)/logs:/app/logs \
  -e ENVIRONMENT=production \
  workflows-doc:latest
```

### 3. Python Direct Deployment

#### Prerequisites
- Python 3.11+
- pip

#### Installation
```bash
# Install dependencies
pip install -r requirements.txt

# Development mode
python run.py --dev

# Production mode
python run.py --host 0.0.0.0 --port 8000
```

#### Production with Gunicorn
```bash
# Install gunicorn
pip install gunicorn

# Start with gunicorn
gunicorn -w 4 -k uvicorn.workers.UvicornWorker -b 0.0.0.0:8000 api_server:app
```

### 4. Kubernetes Deployment

#### Basic Deployment
```bash
# Apply Kubernetes manifests
kubectl apply -f k8s/namespace.yaml
kubectl apply -f k8s/configmap.yaml
kubectl apply -f k8s/deployment.yaml
kubectl apply -f k8s/service.yaml
kubectl apply -f k8s/ingress.yaml
```

#### Helm Chart
```bash
# Install with Helm
helm install n8n-workflows-docs ./helm/workflows-docs
```

## Environment Configuration

### Environment Variables

| Variable | Description | Default | Required |
|----------|-------------|---------|----------|
| `ENVIRONMENT` | Deployment environment | `development` | No |
| `LOG_LEVEL` | Logging level | `info` | No |
| `HOST` | Bind host | `127.0.0.1` | No |
| `PORT` | Bind port | `8000` | No |
| `DATABASE_PATH` | SQLite database path | `database/workflows.db` | No |
| `WORKFLOWS_PATH` | Workflows directory | `workflows` | No |
| `ENABLE_METRICS` | Enable Prometheus metrics | `false` | No |
| `MAX_WORKERS` | Max worker processes | `1` | No |
| `DEBUG` | Enable debug mode | `false` | No |
| `RELOAD` | Enable auto-reload | `false` | No |

### Configuration Files

Create environment-specific configuration:

#### `.env` (Development)
```bash
ENVIRONMENT=development
LOG_LEVEL=debug
DEBUG=true
RELOAD=true
```

#### `.env.production` (Production)
```bash
ENVIRONMENT=production
LOG_LEVEL=warning
ENABLE_METRICS=true
MAX_WORKERS=4
```

## Security Configuration

### 1. Reverse Proxy Setup (Traefik)

```yaml
# traefik/config/dynamic.yml
http:
  middlewares:
    auth:
      basicAuth:
        users:
          - "admin:$2y$10$..."  # Generate with htpasswd
    security-headers:
      headers:
        customRequestHeaders:
          X-Forwarded-Proto: "https"
        customResponseHeaders:
          X-Frame-Options: "DENY"
          X-Content-Type-Options: "nosniff"
        sslRedirect: true
```

### 2. SSL/TLS Configuration

#### Let's Encrypt (Automatic)
```yaml
# In docker-compose.prod.yml
command:
  - "--certificatesresolvers.myresolver.acme.tlschallenge=true"
  - "--certificatesresolvers.myresolver.acme.email=admin@yourdomain.com"
```

#### Custom SSL Certificate
```yaml
volumes:
  - ./ssl:/ssl:ro
```

### 3. Basic Authentication

```bash
# Generate htpasswd entry
htpasswd -nb admin yourpassword

# Add to Traefik labels
- "traefik.http.middlewares.auth.basicauth.users=admin:$$2y$$10$$..."
```

## Performance Optimization

### 1. Resource Limits

```yaml
# docker-compose.prod.yml
deploy:
  resources:
    limits:
      memory: 512M
      cpus: '0.5'
    reservations:
      memory: 256M
      cpus: '0.25'
```

### 2. Database Optimization

```bash
# Force reindex for better performance
python run.py --reindex

# Or via API
curl -X POST http://localhost:8000/api/reindex
```

### 3. Caching Headers

```yaml
# Traefik middleware for static files
http:
  middlewares:
    cache-headers:
      headers:
        customResponseHeaders:
          Cache-Control: "public, max-age=31536000"
```

## Monitoring & Logging

### 1. Health Checks

```bash
# Docker health check
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
    CMD curl -f http://localhost:8000/api/stats || exit 1

# Manual health check
curl http://localhost:8000/api/stats
```

### 2. Logs

```bash
# View application logs
docker compose logs -f workflows-docs

# View specific service logs
docker logs n8n-workflows-docs

# Log location in container
/app/logs/app.log
```

### 3. Metrics (Prometheus)

```bash
# Start monitoring stack
docker compose --profile monitoring up -d

# Access Prometheus
http://localhost:9090
```

## Backup & Recovery

### 1. Database Backup

```bash
# Backup SQLite database
cp database/workflows.db database/workflows.db.backup

# Or using docker
docker exec n8n-workflows-docs cp /app/database/workflows.db /app/database/workflows.db.backup
```

### 2. Configuration Backup

```bash
# Backup entire configuration
tar -czf n8n-workflows-backup-$(date +%Y%m%d).tar.gz \
  database/ \
  logs/ \
  docker-compose*.yml \
  .env*
```

### 3. Restore

```bash
# Stop services
docker compose down

# Restore database
cp database/workflows.db.backup database/workflows.db

# Start services
docker compose up -d
```

## Scaling & Load Balancing

### 1. Multiple Instances

```yaml
# docker-compose.scale.yml
services:
  workflows-docs:
    deploy:
      replicas: 3
```

```bash
# Scale up
docker compose up --scale workflows-docs=3
```

### 2. Load Balancer Configuration

```yaml
# Traefik load balancing
labels:
  - "traefik.http.services.workflows-docs.loadbalancer.server.port=8000"
  - "traefik.http.services.workflows-docs.loadbalancer.sticky=true"
```

## Troubleshooting

### Common Issues

1. **Database locked error**
   ```bash
   # Check file permissions
   ls -la database/
   
   # Fix permissions
   chmod 664 database/workflows.db
   ```

2. **Port already in use**
   ```bash
   # Check what's using the port
   lsof -i :8000
   
   # Use different port
   docker compose up -d -p 8001:8000
   ```

3. **Out of memory**
   ```bash
   # Check memory usage
   docker stats
   
   # Increase memory limit
   # Edit docker-compose.prod.yml resources
   ```

### Logs & Debugging

```bash
# Application logs
docker compose logs -f workflows-docs

# System logs
docker exec workflows-docs tail -f /app/logs/app.log

# Database logs
docker exec workflows-docs sqlite3 /app/database/workflows.db ".tables"
```

## Migration & Updates

### 1. Update Application

```bash
# Pull latest changes
git pull origin main

# Rebuild and restart
docker compose down
docker compose up -d --build
```

### 2. Database Migration

```bash
# Backup current database
cp database/workflows.db database/workflows.db.backup

# Force reindex with new schema
python run.py --reindex
```

### 3. Zero-downtime Updates

```bash
# Blue-green deployment
docker compose -p n8n-workflows-green up -d --build

# Switch traffic (update load balancer)
# Verify new deployment
# Shut down old deployment
docker compose -p n8n-workflows-blue down
```

## Security Checklist

- [ ] Use non-root user in Docker container
- [ ] Enable HTTPS/SSL in production
- [ ] Configure proper firewall rules
- [ ] Use strong authentication credentials
- [ ] Regular security updates
- [ ] Enable access logs and monitoring
- [ ] Backup sensitive data securely
- [ ] Review and audit configurations regularly

## Support & Maintenance

### Regular Tasks

1. **Daily**
   - Monitor application health
   - Check error logs
   - Verify backup completion

2. **Weekly**
   - Review performance metrics
   - Update dependencies if needed
   - Test disaster recovery procedures

3. **Monthly**
   - Security audit
   - Database optimization
   - Update documentation

================================================
FILE: Dockerfile
================================================
# Use official Python runtime as base image - stable secure version
FROM python:3.11-slim-bookworm AS base

# Security: Set up non-root user first
RUN groupadd -g 1001 appuser && \
    useradd -m -u 1001 -g appuser appuser

# Set environment variables for security and performance
ENV PYTHONUNBUFFERED=1 \
    PYTHONDONTWRITEBYTECODE=1 \
    PYTHONHASHSEED=random \
    PIP_NO_CACHE_DIR=1 \
    PIP_DISABLE_PIP_VERSION_CHECK=1 \
    PIP_DEFAULT_TIMEOUT=100 \
    PIP_ROOT_USER_ACTION=ignore \
    DEBIAN_FRONTEND=noninteractive \
    PYTHONIOENCODING=utf-8

# Install security updates and build dependencies for ARM64
RUN apt-get update && \
    apt-get upgrade -y && \
    apt-get install -y --no-install-recommends \
    ca-certificates \
    gcc \
    python3-dev \
    && apt-get autoremove -y \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /root/.cache \
    && update-ca-certificates

# Create app directory with correct permissions
WORKDIR /app
RUN chown -R appuser:appuser /app

# Copy requirements as root to ensure they're readable
COPY --chown=appuser:appuser requirements.txt .

# Install Python dependencies with security hardening
# Use pip without pinning versions for better ARM64 compatibility
RUN python -m pip install --no-cache-dir --upgrade pip setuptools wheel && \
    python -m pip install --no-cache-dir -r requirements.txt && \
    find /usr/local -type f -name '*.pyc' -delete && \
    find /usr/local -type d -name '__pycache__' -delete

# Copy application code with correct ownership
COPY --chown=appuser:appuser . .

# Create necessary directories with correct permissions
RUN mkdir -p /app/database /app/workflows /app/static /app/src && \
    chown -R appuser:appuser /app

# Security: Switch to non-root user
USER appuser

# Healthcheck
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
    CMD python -c "import requests; requests.get('http://localhost:8000/api/stats')" || exit 1

# Expose port (informational)
EXPOSE 8000

# Security: Run with minimal privileges
CMD ["python", "-u", "run.py", "--host", "0.0.0.0", "--port", "8000"]

================================================
FILE: LICENSE
================================================
MIT License

Copyright (c) 2025 Zie619

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


================================================
FILE: README.md
================================================
# n8n Workflow Collection

<div align="center">

![n8n Workflows](https://img.shields.io/badge/n8n-Workflows-orange?style=for-the-badge&logo=n8n)
![Workflows](https://img.shields.io/badge/Workflows-4343+-blue?style=for-the-badge)
![Integrations](https://img.shields.io/badge/Integrations-365+-green?style=for-the-badge)
![License](https://img.shields.io/badge/License-MIT-purple?style=for-the-badge)
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-FFDD00?style=for-the-badge&logo=buy-me-a-coffee&logoColor=black)](https://www.buymeacoffee.com/zie619)

### The Ultimate Collection of n8n Automation Workflows

**[Browse Online](https://zie619.github.io/n8n-workflows)** · **[Documentation](#documentation)** · **[Contributing](#contributing)** · **[License](#license)**

</div>

---

<div align="center">

<a href="https://github.com/Trusera/ai-bom">
  <img src="https://raw.githubusercontent.com/Trusera/ai-bom/main/assets/logo.png" alt="AI-BOM Logo" width="100" />
</a>

<h2>NEW: Scan Your n8n Workflows for AI Security Risks</h2>

<a href="https://github.com/Trusera/ai-bom">
  <img src="https://img.shields.io/badge/AI--BOM-Scan%20Now-ff4444?style=for-the-badge&logoColor=white" alt="AI-BOM" />
</a>
<a href="https://github.com/Trusera/ai-bom">
  <img src="https://img.shields.io/badge/Open%20Source-Apache%202.0-blue?style=for-the-badge" alt="Open Source" />
</a>
<a href="https://github.com/Trusera/ai-bom">
  <img src="https://img.shields.io/badge/First%20n8n%20AI%20Scanner-Ever-brightgreen?style=for-the-badge" alt="First Ever" />
</a>

</div>

<table>
<tr>
<td width="65%">

### Your workflows contain AI — do you know what's hiding in them?

We built **[AI-BOM](https://github.com/Trusera/ai-bom)** because we scanned our own 4,343 workflows and found **hardcoded API keys, unauthenticated AI agents, and MCP clients connecting to unknown servers** — all invisible to existing security tools.

**AI-BOM is the first and only tool that scans n8n workflows for AI security risks.**

```bash
pip install ai-bom
ai-bom scan ./workflows/
```

One command finds every AI Agent node, LLM integration, MCP client, hardcoded credential, and dangerous tool combination — then gives you a risk score and a compliance-ready report.

**EU AI Act deadline: August 2025.** You need an AI inventory.

<a href="https://github.com/Trusera/ai-bom"><strong>Get AI-BOM (free & open source) &rarr;</strong></a>

</td>
<td width="35%" align="center">

<a href="https://github.com/Trusera/ai-bom">
  <img src="https://raw.githubusercontent.com/Trusera/ai-bom/main/assets/maskot.png" alt="AI-BOM Mascot" width="220" />
</a>

<br />

<sub><strong>AI-BOM</strong> by <a href="https://trusera.dev">Trusera</a></sub>
<br />
<sub>Securing the Agentic Service Mesh</sub>

</td>
</tr>
</table>

<details>
<summary><strong>What does AI-BOM detect in n8n workflows? (click to expand)</strong></summary>

<br />

| Risk | Severity | What it finds |
|------|----------|---------------|
| **AI Agent nodes** | CRITICAL | Agents connected to LLMs with tool access — can execute code |
| **Hardcoded credentials** | CRITICAL | API keys in workflow JSON instead of credential store |
| **Dangerous tool combos** | CRITICAL | Agents with Code Execution + HTTP Request = RCE risk |
| **MCP clients** | HIGH | Model Context Protocol connections to external servers |
| **Unauthenticated webhooks** | HIGH | Webhook triggers exposed to the internet without auth |
| **Agent chains** | HIGH | Execute Workflow linking agents without input validation |

Beyond n8n, AI-BOM also scans **source code** (Python, JS, TS, Java, Go, Rust, Ruby), **Docker configs**, **cloud infrastructure** (Terraform, CloudFormation), and **network endpoints** — 21+ AI SDKs detected across 7 languages.

Output formats: **CycloneDX SBOM** | **SARIF** (GitHub Code Scanning) | **HTML Dashboard** | **Markdown** | **JSON**

</details>

---

## What's New

### Latest Updates (November 2025)
- **Enhanced Security**: Full security audit completed, all CVEs resolved
- **Docker Support**: Multi-platform builds for linux/amd64 and linux/arm64
- **GitHub Pages**: Live searchable interface at [zie619.github.io/n8n-workflows](https://zie619.github.io/n8n-workflows)
- **Performance**: 100x faster search with SQLite FTS5 integration
- **Modern UI**: Completely redesigned interface with dark/light mode

---

## Quick Access

### Use Online (No Installation)
Visit **[zie619.github.io/n8n-workflows](https://zie619.github.io/n8n-workflows)** for instant access to:
- **Smart Search** — Find workflows instantly
- **15+ Categories** — Browse by use case
- **Mobile Ready** — Works on any device
- **Direct Downloads** — Get workflow JSONs instantly

---

## Features

<table>
<tr>
<td width="50%">

### By The Numbers
- **4,343** Production-Ready Workflows
- **365** Unique Integrations
- **29,445** Total Nodes
- **15** Organized Categories
- **100%** Import Success Rate

</td>
<td width="50%">

### Performance
- **< 100ms** Search Response
- **< 50MB** Memory Usage
- **700x** Smaller Than v1
- **10x** Faster Load Times
- **40x** Less RAM Usage

</td>
</tr>
</table>

---

## Local Installation

### Prerequisites
- Python 3.9+
- pip (Python package manager)
- 100MB free disk space

### Quick Start
```bash
# Clone the repository
git clone https://github.com/Zie619/n8n-workflows.git
cd n8n-workflows

# Install dependencies
pip install -r requirements.txt

# Start the server
python run.py

# Open in browser
# http://localhost:8000
```

### Docker Installation
```bash
# Using Docker Hub
docker run -p 8000:8000 zie619/n8n-workflows:latest

# Or build locally
docker build -t n8n-workflows .
docker run -p 8000:8000 n8n-workflows
```

---

## Documentation

### API Endpoints

| Endpoint | Method | Description |
|----------|--------|-------------|
| `/` | GET | Web interface |
| `/api/search` | GET | Search workflows |
| `/api/stats` | GET | Repository statistics |
| `/api/workflow/{id}` | GET | Get workflow JSON |
| `/api/categories` | GET | List all categories |
| `/api/export` | GET | Export workflows |

### Search Features
- **Full-text search** across names, descriptions, and nodes
- **Category filtering** (Marketing, Sales, DevOps, etc.)
- **Complexity filtering** (Low, Medium, High)
- **Trigger type filtering** (Webhook, Schedule, Manual, etc.)
- **Service filtering** (365+ integrations)

---

## Architecture

```mermaid
graph LR
    A[User] --> B[Web Interface]
    B --> C[FastAPI Server]
    C --> D[SQLite FTS5]
    D --> E[Workflow Database]
    C --> F[Static Files]
    F --> G[Workflow JSONs]
```

### Tech Stack
- **Backend**: Python, FastAPI, SQLite with FTS5
- **Frontend**: Vanilla JS, Tailwind CSS
- **Database**: SQLite with Full-Text Search
- **Deployment**: Docker, GitHub Actions, GitHub Pages
- **Security**: Trivy scanning, CORS protection, Input validation

---

## Repository Structure

```
n8n-workflows/
├── workflows/           # 4,343 workflow JSON files
│   └── [category]/     # Organized by integration
├── docs/               # GitHub Pages site
├── src/                # Python source code
├── scripts/            # Utility scripts
├── api_server.py       # FastAPI application
├── run.py              # Server launcher
├── workflow_db.py      # Database manager
└── requirements.txt    # Python dependencies
```

---

## Contributing

We love contributions! Here's how you can help:

### Ways to Contribute
- **Report bugs** via [Issues](https://github.com/Zie619/n8n-workflows/issues)
- **Suggest features** in [Discussions](https://github.com/Zie619/n8n-workflows/discussions)
- **Improve documentation**
- **Submit workflow fixes**
- **Star the repository**

### Development Setup
```bash
# Fork and clone
git clone https://github.com/YOUR_USERNAME/n8n-workflows.git

# Create branch
git checkout -b feature/amazing-feature

# Make changes and test
python run.py --debug

# Commit and push
git add .
git commit -m "feat: add amazing feature"
git push origin feature/amazing-feature

# Open PR
```

---

## Security

### Security Features
- Path traversal protection
- Input validation & sanitization
- CORS protection
- Rate limiting
- Docker security hardening
- Non-root container user
- Regular security scanning

### Reporting Security Issues
Please report security vulnerabilities to the maintainers via [Security Advisory](https://github.com/Zie619/n8n-workflows/security/advisories/new).

---

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

---

## Support

If you find this project helpful, please consider:

<div align="center">

[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-FFDD00?style=for-the-badge&logo=buy-me-a-coffee&logoColor=black)](https://www.buymeacoffee.com/zie619)
[![Star on GitHub](https://img.shields.io/badge/Star%20on%20GitHub-181717?style=for-the-badge&logo=github)](https://github.com/Zie619/n8n-workflows)

</div>

---

<div align="center">

![GitHub stars](https://img.shields.io/github/stars/Zie619/n8n-workflows?style=social)
![GitHub forks](https://img.shields.io/github/forks/Zie619/n8n-workflows?style=social)
![GitHub watchers](https://img.shields.io/github/watchers/Zie619/n8n-workflows?style=social)
![GitHub issues](https://img.shields.io/github/issues/Zie619/n8n-workflows)
![GitHub last commit](https://img.shields.io/github/last-commit/Zie619/n8n-workflows)

</div>

---

<div align="center">

**Star us on GitHub — it motivates us a lot!**

Made with care by [Zie619](https://github.com/Zie619) and [contributors](https://github.com/Zie619/n8n-workflows/graphs/contributors)

<br />

<a href="https://github.com/Trusera/ai-bom">
  <img src="https://raw.githubusercontent.com/Trusera/ai-bom/main/assets/logo.png" alt="AI-BOM" width="50" />
</a>

**[AI-BOM](https://github.com/Trusera/ai-bom)** — Discover every AI agent, model, and API hiding in your infrastructure.
<br />
Open source by **[Trusera](https://trusera.dev)** — Securing the Agentic Service Mesh.

</div>


================================================
FILE: SECURITY.md
================================================
# Security Policy

## Reporting Security Vulnerabilities

If you discover a security vulnerability in this project, please report it responsibly by emailing the maintainers directly. Do not create public issues for security vulnerabilities.

## Security Fixes Applied (November 2025)

### 1. Path Traversal Vulnerability (Fixed)
**Issue #48**: Previously, the API server was vulnerable to path traversal attacks on Windows systems.

**Fix Applied**:
- Added comprehensive filename validation with `validate_filename()` function
- Blocks all path traversal patterns including:
  - Parent directory references (`..`, `../`, `..\\`)
  - URL-encoded traversal attempts (`..%5c`, `..%2f`)
  - Absolute paths and drive letters
  - Shell special characters and wildcards
- Uses `Path.resolve()` and `relative_to()` for defense in depth
- Applied to all file-access endpoints:
  - `/api/workflows/{filename}`
  - `/api/workflows/{filename}/download`
  - `/api/workflows/{filename}/diagram`

### 2. CORS Misconfiguration (Fixed)
**Previously**: CORS was configured with `allow_origins=["*"]`, allowing any website to access the API.

**Fix Applied**:
- Restricted CORS origins to specific allowed domains:
  - Local development ports (3000, 8000, 8080)
  - GitHub Pages (`https://zie619.github.io`)
  - Community deployment (`https://n8n-workflows-1-xxgm.onrender.com`)
- Restricted allowed methods to only `GET` and `POST`
- Restricted allowed headers to `Content-Type` and `Authorization`

### 3. Unauthenticated Reindex Endpoint (Fixed)
**Previously**: The `/api/reindex` endpoint could be called by anyone, potentially causing DoS.

**Fix Applied**:
- Added authentication requirement via `admin_token` query parameter
- Token must match `ADMIN_TOKEN` environment variable
- If no token is configured, the endpoint is disabled
- Added rate limiting to prevent abuse
- Logs all reindex attempts with client IP

### 4. Rate Limiting (Added)
**New Security Feature**:
- Implemented rate limiting (60 requests per minute per IP)
- Applied to all sensitive endpoints
- Prevents brute force and DoS attacks
- Returns HTTP 429 when limit exceeded

## Security Configuration

### Environment Variables
```bash
# Required for reindex endpoint
export ADMIN_TOKEN="your-secure-random-token"

# Optional: Configure rate limiting (default: 60)
# MAX_REQUESTS_PER_MINUTE=60
```

### CORS Configuration
To add additional allowed origins, modify the `ALLOWED_ORIGINS` list in `api_server.py`:

```python
ALLOWED_ORIGINS = [
    "http://localhost:3000",
    "http://localhost:8000",
    "https://your-domain.com",  # Add your production domain
]
```

## Security Best Practices

1. **Environment Variables**: Never commit sensitive tokens or credentials to the repository
2. **HTTPS Only**: Always use HTTPS in production (HTTP is only for local development)
3. **Regular Updates**: Keep all dependencies updated to patch known vulnerabilities
4. **Monitoring**: Monitor logs for suspicious activity patterns
5. **Backup**: Regular backups of the workflows database

## Security Checklist for Deployment

- [ ] Set strong `ADMIN_TOKEN` environment variable
- [ ] Configure CORS origins for your specific domain
- [ ] Use HTTPS with valid SSL certificate
- [ ] Enable firewall rules to restrict access
- [ ] Set up monitoring and alerting
- [ ] Review and rotate admin tokens regularly
- [ ] Keep Python and all dependencies updated
- [ ] Use a reverse proxy (nginx/Apache) with additional security headers

## Additional Security Headers (Recommended)

When deploying behind a reverse proxy, add these headers:

```nginx
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
add_header X-XSS-Protection "1; mode=block";
add_header Content-Security-Policy "default-src 'self'";
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
```

## Vulnerability Disclosure Timeline

| Date | Issue | Status | Fixed Version |
|------|-------|--------|---------------|
| Oct 2025 | Path Traversal (#48) | Fixed | 2.0.1 |
| Nov 2025 | CORS Misconfiguration | Fixed | 2.0.1 |
| Nov 2025 | Unauthenticated Reindex | Fixed | 2.0.1 |

## Credits

Security issues reported by:
- Path Traversal: Community contributor via Issue #48

## Contact

For security concerns, please contact the maintainers privately.

================================================
FILE: ai-stack/.env
================================================
# =============================================================================
# AI Stack Environment Configuration
# =============================================================================

# Timezone (used by all services)
TZ=America/Los_Angeles

# n8n Configuration
N8N_BASIC_AUTH_ACTIVE=false
N8N_BASIC_AUTH_USER=admin
N8N_BASIC_AUTH_PASSWORD=changeme

# Optional: External webhook URL (if behind reverse proxy)
# WEBHOOK_URL=https://your-domain.com

# Optional: OpenAI API Key (for Agent Zero)
# OPENAI_API_KEY=sk-your-key-here

# Optional: Anthropic API Key (for Agent Zero)
# ANTHROPIC_API_KEY=sk-ant-your-key-here

================================================
FILE: ai-stack/.gitignore
================================================
# =============================================================================
# AI Stack .gitignore
# =============================================================================

# Data directories (persistent volumes)
data/
shared/

# Environment files with secrets
.env.local
.env.production
.env.*.local

# Keep .env as template but ignore overrides
!.env

# OS files
.DS_Store
Thumbs.db

# Logs
*.log
logs/

# Temporary files
*.tmp
*.temp
.cache/

# IDE
.idea/
.vscode/
*.swp
*.swo

# Backup files
*.bak
*.backup
backups/

================================================
FILE: ai-stack/CHEAT-SHEET.md
================================================
# 🎯 AI Stack Cheat Sheet
**Print this page and keep it handy!**

---

## 🚀 Starting & Stopping

### Windows
```powershell
# Start
.\start.ps1

# Stop
.\start.ps1 -Stop

# Check Status
.\start.ps1 -Status

# View Logs
.\start.ps1 -Logs
```

### Mac/Linux
```bash
# Start
./start.sh

# Stop
./start.sh --stop

# Check Status
./start.sh --status

# View Logs
./start.sh --logs
```

---

## 🌐 Service URLs

Copy these into your browser:

```
n8n:         http://localhost:5678
Agent Zero:  http://localhost:50080
ComfyUI:     http://localhost:8188
```

---

## 📂 Important Folders

```
ai-stack/
├── data/n8n/              ← Your n8n workflows
├── data/agent-zero/       ← Agent Zero data
└── shared/
    └── comfyui/
        ├── models/        ← Put AI models here
        ├── output/        ← Generated images here
        └── input/         ← Input images here
```

---

## 🎨 ComfyUI API Quick Reference

### Queue an Image
```bash
POST http://localhost:8188/prompt
```

### Check Status
```bash
GET http://localhost:8188/history/{prompt_id}
```

### Get Image
```bash
GET http://localhost:8188/view?filename={name}&type=output
```

---

## ⚡ Quick Commands

### Docker Commands
```bash
# See all running containers
docker ps

# Stop all containers
docker stop $(docker ps -q)

# Remove all containers
docker rm $(docker ps -aq)

# Clean up Docker
docker system prune -a
```

### Check if Services are Running
```bash
# Windows
curl http://localhost:5678/healthz
curl http://localhost:8188/system_stats

# Mac/Linux
curl http://localhost:5678/healthz
curl http://localhost:8188/system_stats
```

---

## 🔧 Common Fixes

| Problem | Solution |
|---------|----------|
| **Docker not running** | Open Docker Desktop, wait for whale icon 🐳 |
| **Port in use** | Run stop command, then start again |
| **Permission denied** | Windows: Run as Admin<br>Mac: `chmod +x start.sh` |
| **Can't connect** | Wait 2 minutes, check Docker is running |
| **Out of space** | Delete old files, run `docker system prune -a` |

---

## 📝 n8n Workflow Import

1. Open http://localhost:5678
2. Click **"Workflows"** in sidebar
3. Click **"Import from File"**
4. Select workflow JSON file
5. Click **"Save"**
6. Click **"Active"** toggle to enable

---

## 🎨 Adding Models to ComfyUI

1. Download model file (`.safetensors` or `.ckpt`)
2. Put in correct folder:
   - **Checkpoints:** `shared/comfyui/models/checkpoints/`
   - **LoRAs:** `shared/comfyui/models/loras/`
   - **VAE:** `shared/comfyui/models/vae/`
3. Restart ComfyUI (or refresh browser)

### Popular Model Sources
- Hugging Face: https://huggingface.co/models
- Civitai: https://civitai.com
- Stable Diffusion: https://huggingface.co/runwayml/stable-diffusion-v1-5

---

## 🆘 Emergency Reset

**⚠️ This deletes everything and starts fresh!**

### Windows
```powershell
.\start.ps1 -Stop
docker compose down -v
.\start.ps1
```

### Mac/Linux
```bash
./start.sh --stop
docker compose down -v
./start.sh
```

---

## 📊 System Check

Before starting, verify:

- [ ] Docker Desktop installed
- [ ] Docker Desktop running (whale icon visible)
- [ ] At least 10 GB free disk space
- [ ] Internet connection working
- [ ] In the `ai-stack` folder

---

## 🎓 Learning Resources

### n8n
- Docs: https://docs.n8n.io
- Community: https://community.n8n.io
- YouTube: Search "n8n tutorial"

### ComfyUI
- GitHub: https://github.com/comfyanonymous/ComfyUI
- Wiki: https://github.com/comfyanonymous/ComfyUI/wiki
- Reddit: r/comfyui

### Agent Zero
- GitHub: https://github.com/frdel/agent-zero
- Docs: Check GitHub README

---

## 💾 Backup Your Work

### Important Files to Backup
```
data/n8n/           ← Your workflows
shared/workflows/   ← Shared workflow files
.env                ← Your settings
```

### Quick Backup (Copy these folders)
```bash
# Windows
xcopy /E /I data backup\data
xcopy /E /I shared backup\shared

# Mac/Linux
cp -r data backup/data
cp -r shared backup/shared
```

---

## 🔐 Security Reminders

- ✅ Safe for local use (localhost only)
- ❌ Don't expose to internet without security
- ✅ Keep Docker Desktop updated
- ❌ Don't share your .env file
- ✅ Use strong passwords if enabling auth

---

## 📞 Help Resources

1. **QUICK-START.md** - 3 simple steps
2. **EASY-INSTALL.md** - Detailed guide
3. **TROUBLESHOOTING.md** - Fix problems
4. **README.md** - Full documentation
5. **SUMMARY.md** - Overview & learning path

---

## ✅ Success Indicators

You know it's working when:

- ✅ Whale icon 🐳 visible in taskbar/menu
- ✅ Terminal shows "🎉 AI Stack is running!"
- ✅ All three URLs open in browser
- ✅ n8n shows welcome screen
- ✅ ComfyUI shows node interface
- ✅ Agent Zero shows chat interface

---

**🎉 You're all set! Happy automating!**

---

*Print this page and keep it near your computer for quick reference!*

================================================
FILE: ai-stack/EASY-INSTALL.md
================================================
# 🎮 Super Easy Install Guide
## AI Automation Stack - Step by Step

---

## 📋 What You Need Before Starting

### ✅ Step 1: Check if you have Docker

**Windows:**
1. Click the Windows Start button (bottom left corner)
2. Type "Docker Desktop"
3. Do you see "Docker Desktop" in the list?
   - ✅ **YES** → Go to Step 2
   - ❌ **NO** → Go to "Installing Docker" section below

**Mac:**
1. Click the magnifying glass (🔍) in top right corner
2. Type "Docker"
3. Do you see "Docker" in the list?
   - ✅ **YES** → Go to Step 2
   - ❌ **NO** → Go to "Installing Docker" section below

---

## 🔽 Installing Docker (If You Don't Have It)

### For Windows:

1. **Open your web browser** (Chrome, Edge, Firefox)
2. **Go to this website:** https://www.docker.com/products/docker-desktop
3. **Click the big blue button** that says "Download for Windows"
4. **Wait for the download** (it's a big file, might take 5-10 minutes)
5. **Find the downloaded file** (usually in your Downloads folder)
6. **Double-click the file** to install
7. **Click "Yes"** when Windows asks if you want to install
8. **Follow the installer** - just keep clicking "Next" and "OK"
9. **Restart your computer** when it asks
10. **After restart**, Docker Desktop will open automatically

### For Mac:

1. **Open your web browser** (Safari, Chrome, Firefox)
2. **Go to this website:** https://www.docker.com/products/docker-desktop
3. **Click the big blue button** that says "Download for Mac"
4. **Wait for the download** (it's a big file, might take 5-10 minutes)
5. **Find the downloaded file** (usually in your Downloads folder)
6. **Double-click the file** to open it
7. **Drag the Docker icon** into the Applications folder
8. **Open Applications folder** and double-click Docker
9. **Click "Open"** when Mac asks if you're sure
10. **Wait for Docker to start** (you'll see a whale icon in the top menu bar)

---

## 📥 Step 2: Download the AI Stack

### Windows:

1. **Open your web browser**
2. **Go to:** https://github.com/insomniakin/n8n-workflows
3. **Click the green "Code" button**
4. **Click "Download ZIP"**
5. **Wait for download to finish**
6. **Go to your Downloads folder**
7. **Right-click the ZIP file**
8. **Click "Extract All"**
9. **Click "Extract"**
10. **Open the extracted folder**
11. **Find the folder called "ai-stack"**
12. **Remember where this folder is!**

### Mac:

1. **Open your web browser**
2. **Go to:** https://github.com/insomniakin/n8n-workflows
3. **Click the green "Code" button**
4. **Click "Download ZIP"**
5. **Wait for download to finish**
6. **Go to your Downloads folder**
7. **Double-click the ZIP file** (it extracts automatically)
8. **Open the extracted folder**
9. **Find the folder called "ai-stack"**
10. **Remember where this folder is!**

---

## 🚀 Step 3: Start the AI Stack

### Windows:

1. **Open File Explorer** (the folder icon on your taskbar)
2. **Go to the "ai-stack" folder** you found in Step 2
3. **Find the file called "start.ps1"**
4. **Right-click on "start.ps1"**
5. **Click "Run with PowerShell"**
6. **If Windows asks "Do you want to allow this?"** → Click "Yes"
7. **Wait and watch the window** - you'll see lots of text scrolling
8. **Look for these messages:**
   ```
   ✓ Docker found
   ✓ Docker daemon is running
   ✓ All images pulled successfully
   🎉 AI Stack is running!
   ```
9. **When you see "AI Stack is running!" → You're done!**

### Mac:

1. **Open Finder**
2. **Go to the "ai-stack" folder** you found in Step 2
3. **Right-click (or Control+click) on "start.sh"**
4. **Click "Open With" → "Terminal"**
5. **If Mac says "Permission denied":**
   - Type: `chmod +x start.sh`
   - Press Enter
   - Type: `./start.sh`
   - Press Enter
6. **Wait and watch the window** - you'll see lots of text scrolling
7. **Look for these messages:**
   ```
   ✓ Docker found
   ✓ Docker daemon is running
   ✓ All images pulled successfully
   🎉 AI Stack is running!
   ```
8. **When you see "AI Stack is running!" → You're done!**

---

## 🌐 Step 4: Open the Programs

Now you can use the AI tools! Open your web browser and go to these addresses:

### 1. n8n (Workflow Maker)
- **Type this in your browser:** `http://localhost:5678`
- **Press Enter**
- **You should see:** A welcome screen asking you to create an account
- **Create an account** with any email and password (it's only on your computer)

### 2. Agent Zero (AI Helper)
- **Type this in your browser:** `http://localhost:50080`
- **Press Enter**
- **You should see:** A chat interface

### 3. ComfyUI (Image Maker)
- **Type this in your browser:** `http://localhost:8188`
- **Press Enter**
- **You should see:** A node-based interface for making images

---

## ❓ Troubleshooting (If Something Goes Wrong)

### Problem: "Docker is not running"

**Solution:**
1. Look for the Docker icon (a whale) in your taskbar (Windows) or menu bar (Mac)
2. If you don't see it, open Docker Desktop
3. Wait until you see "Docker Desktop is running"
4. Try running the start script again

### Problem: "Port already in use"

**Solution:**
1. Close any programs that might be using the internet
2. Restart your computer
3. Try again

### Problem: The script window closes immediately

**Windows Solution:**
1. Open PowerShell as Administrator:
   - Click Start
   - Type "PowerShell"
   - Right-click "Windows PowerShell"
   - Click "Run as administrator"
2. Type: `Set-ExecutionPolicy RemoteSigned`
3. Press Enter
4. Type "Y" and press Enter
5. Try running start.ps1 again

### Problem: "Cannot find Docker"

**Solution:**
1. Make sure you installed Docker Desktop (see "Installing Docker" section)
2. Make sure Docker Desktop is open and running
3. Restart your computer
4. Try again

---

## 🛑 How to Stop the AI Stack

### Windows:
1. Open PowerShell (same way as before)
2. Go to the ai-stack folder:
   - Type: `cd ` (with a space after cd)
   - Drag the ai-stack folder into the PowerShell window
   - Press Enter
3. Type: `.\start.ps1 -Stop`
4. Press Enter

### Mac:
1. Open Terminal
2. Go to the ai-stack folder:
   - Type: `cd ` (with a space after cd)
   - Drag the ai-stack folder into the Terminal window
   - Press Enter
3. Type: `./start.sh --stop`
4. Press Enter

---

## 📞 Need More Help?

If you're still stuck:

1. **Take a screenshot** of any error messages
2. **Write down exactly what step you're on**
3. **Ask someone for help** and show them:
   - This guide
   - Your screenshot
   - What step you're stuck on

---

## ✅ Quick Checklist

Before you start, make sure:
- [ ] Docker Desktop is installed
- [ ] Docker Desktop is running (you can see the whale icon)
- [ ] You downloaded the ai-stack folder
- [ ] You know where the ai-stack folder is on your computer
- [ ] Your internet is working

---

## 🎉 Success! What Now?

Once everything is running, you can:

1. **Learn n8n:** Go to http://localhost:5678 and try making a simple workflow
2. **Talk to Agent Zero:** Go to http://localhost:50080 and ask it questions
3. **Make images:** Go to http://localhost:8188 and try generating an image

**Have fun! 🚀**

================================================
FILE: ai-stack/INDEX.md
================================================
# 📚 AI Stack Documentation Index

## 👋 Welcome!

This is your complete guide to the AI Automation Stack. Choose the guide that matches your experience level:

---

## 🎯 Start Here

### For Complete Beginners
**Never used Docker or command line before?**

1. 📖 **[EASY-INSTALL.md](EASY-INSTALL.md)** - Start here! (Windows/Mac)
   - Step-by-step instructions with pictures
   - Explains everything in simple terms
   - Includes "what you see" examples
   - Perfect for first-timers

2. 🐧 **[UBUNTU-INSTALL.md](UBUNTU-INSTALL.md)** - Ubuntu/Linux users start here!
   - Complete Ubuntu installation guide
   - Docker setup for Linux
   - GPU configuration for NVIDIA
   - Ubuntu-specific troubleshooting

### For Quick Setup
**Just want to get it running fast?**

2. 🚀 **[QUICK-START.md](QUICK-START.md)** - 3 simple steps
   - Minimal instructions
   - Get running in 5 minutes
   - Perfect for experienced users

---

## 📖 Reference Guides

### When You Need Help
**Something not working?**

3. 🔧 **[TROUBLESHOOTING.md](TROUBLESHOOTING.md)**
   - Common problems and solutions
   - Error message explanations
   - Step-by-step fixes
   - Emergency reset instructions

### For Daily Use
**Need quick commands?**

4. 🎯 **[CHEAT-SHEET.md](CHEAT-SHEET.md)**
   - All commands in one place
   - Quick reference table
   - Print this and keep it handy!
   - Perfect for daily use

### For Learning
**Want to understand the system?**

5. 📋 **[SUMMARY.md](SUMMARY.md)**
   - System overview
   - Learning path
   - Use cases and examples
   - Success checklist

### For Advanced Users
**Need technical details?**

6. 📘 **[README.md](README.md)**
   - Complete documentation
   - API reference
   - Architecture details
   - Integration guide

---

## 🗺️ Suggested Reading Order

### Day 1: Installation
```
1. QUICK-START.md (or EASY-INSTALL.md if you're new)
2. Get the stack running
3. Open all three services in browser
```

### Day 2: First Steps
```
1. SUMMARY.md - Understand what you have
2. Import test workflow
3. Generate your first image
```

### Day 3: Learning
```
1. README.md - Learn the details
2. Experiment with workflows
3. Try different prompts
```

### Ongoing: Reference
```
1. CHEAT-SHEET.md - Keep this handy
2. TROUBLESHOOTING.md - When things break
3. README.md - When you need details
```

---

## 📊 Documentation Overview

| Document | Length | Difficulty | Purpose |
|----------|--------|------------|---------|
| **QUICK-START.md** | 1 page | ⭐ Easy | Get running fast |
| **EASY-INSTALL.md** | 5 pages | ⭐ Easy | Detailed beginner guide |
| **CHEAT-SHEET.md** | 3 pages | ⭐⭐ Medium | Quick reference |
| **TROUBLESHOOTING.md** | 4 pages | ⭐⭐ Medium | Fix problems |
| **SUMMARY.md** | 4 pages | ⭐⭐ Medium | Overview & learning |
| **README.md** | 8 pages | ⭐⭐⭐ Advanced | Complete documentation |

---

## 🎓 By Experience Level

### 🌱 Beginner (Never used Docker)
```
1. EASY-INSTALL.md     ← Start here
2. TROUBLESHOOTING.md  ← If problems
3. CHEAT-SHEET.md      ← Print this
4. SUMMARY.md          ← Learn more
```

### 🌿 Intermediate (Used Docker before)
```
1. QUICK-START.md      ← Get running
2. SUMMARY.md          ← Understand system
3. CHEAT-SHEET.md      ← Daily reference
4. README.md           ← Deep dive
```

### 🌳 Advanced (Know Docker well)
```
1. README.md           ← Full docs
2. docker-compose.yml  ← Customize
3. CHEAT-SHEET.md      ← Quick ref
```

---

## 🎯 By Goal

### "I just want it to work"
→ **QUICK-START.md** or **EASY-INSTALL.md**

### "Something's broken"
→ **TROUBLESHOOTING.md**

### "How do I use this?"
→ **SUMMARY.md** → **README.md**

### "What's the command for...?"
→ **CHEAT-SHEET.md**

### "I want to understand everything"
→ **README.md** → **docker-compose.yml**

---

## 📱 Quick Links

### Services
- n8n: http://localhost:5678
- Agent Zero: http://localhost:50080
- ComfyUI: http://localhost:8188

### GitHub
- Branch: https://github.com/insomniakin/n8n-workflows/tree/feature/ai-automation-stack
- Create PR: https://github.com/insomniakin/n8n-workflows/pull/new/feature/ai-automation-stack

### External Resources
- n8n Docs: https://docs.n8n.io
- ComfyUI GitHub: https://github.com/comfyanonymous/ComfyUI
- Agent Zero GitHub: https://github.com/frdel/agent-zero
- Docker Desktop: https://www.docker.com/products/docker-desktop

---

## 🆘 Still Lost?

### If you're not sure where to start:

**Complete Beginner?**
→ Read **EASY-INSTALL.md** from start to finish

**Experienced User?**
→ Run **QUICK-START.md** steps, then read **SUMMARY.md**

**Something Broken?**
→ Check **TROUBLESHOOTING.md** first

**Need a Command?**
→ Look in **CHEAT-SHEET.md**

---

## 💡 Pro Tips

1. **Print CHEAT-SHEET.md** - Keep it by your computer
2. **Bookmark this INDEX.md** - Quick navigation
3. **Start with EASY-INSTALL.md** - Even if you're experienced
4. **Read SUMMARY.md** - Understand the big picture
5. **Keep TROUBLESHOOTING.md** handy - You'll need it eventually

---

## ✅ Success Path

```
┌─────────────────────────────────────────────────────────┐
│  1. Read EASY-INSTALL.md or QUICK-START.md             │
│  2. Install Docker Desktop                              │
│  3. Run the start script                                │
│  4. Open all three services                             │
│  5. Import test workflow                                │
│  6. Generate first image                                │
│  7. Read SUMMARY.md to learn more                       │
│  8. Build your own workflows                            │
│  9. Share your creations!                               │
└─────────────────────────────────────────────────────────┘
```

---

**🎉 You've got this! Pick a guide and get started!**

*Remember: Everyone starts as a beginner. Take your time, follow the steps, and don't be afraid to ask for help!*

================================================
FILE: ai-stack/QUICK-START.md
================================================
# 🚀 Quick Start - 3 Simple Steps

---

## Step 1️⃣: Get Docker

### Windows
1. Go to: **www.docker.com/products/docker-desktop**
2. Click: **"Download for Windows"** (big blue button)
3. Install it (just keep clicking "Next")
4. Restart your computer

### Mac
1. Go to: **www.docker.com/products/docker-desktop**
2. Click: **"Download for Mac"** (big blue button)
3. Drag Docker to Applications folder
4. Open Docker from Applications

**✅ You're ready when you see a whale icon 🐳 in your taskbar/menu bar**

---

## Step 2️⃣: Download AI Stack

1. Go to: **github.com/insomniakin/n8n-workflows**
2. Click green **"Code"** button
3. Click **"Download ZIP"**
4. Unzip the file
5. Find the **"ai-stack"** folder inside

---

## Step 3️⃣: Run It!

### Windows
1. Open the **ai-stack** folder
2. **Right-click** on **start.ps1**
3. Click **"Run with PowerShell"**
4. Wait for "🎉 AI Stack is running!"

### Mac
1. Open the **ai-stack** folder
2. **Right-click** on **start.sh**
3. Click **"Open With"** → **"Terminal"**
4. Wait for "🎉 AI Stack is running!"

---

## 🎉 Done! Now Open These:

| What | Where to Go |
|------|-------------|
| **n8n** (Make workflows) | http://localhost:5678 |
| **Agent Zero** (AI chat) | http://localhost:50080 |
| **ComfyUI** (Make images) | http://localhost:8188 |

**Just copy and paste these into your web browser!**

---

## 🛑 To Stop:

### Windows
```
.\start.ps1 -Stop
```

### Mac
```
./start.sh --stop
```

---

## ❌ If It Doesn't Work:

1. **Make sure Docker is running** (look for whale icon 🐳)
2. **Restart your computer**
3. **Try again**

Still stuck? Check **EASY-INSTALL.md** for detailed help!

================================================
FILE: ai-stack/README.md
================================================
# 🤖 AI Automation Stack

> **Turnkey Local AI Automation: n8n + Agent Zero + ComfyUI**

A single-command deployable stack for AI-powered workflow automation with image generation capabilities.

---

## 📚 Documentation

**👉 [START HERE: Documentation Index](INDEX.md)** - Choose the right guide for you!

- **🚀 [QUICK START](QUICK-START.md)** - 3 simple steps to get started
- **📖 [EASY INSTALL GUIDE](EASY-INSTALL.md)** - Step-by-step for Windows/Mac
- **🐧 [UBUNTU INSTALL GUIDE](UBUNTU-INSTALL.md)** - Complete guide for Ubuntu/Linux
- **🔧 [TROUBLESHOOTING](TROUBLESHOOTING.md)** - Fix common problems
- **📋 [SUMMARY](SUMMARY.md)** - Overview &amp; learning path
- **🎯 [CHEAT SHEET](CHEAT-SHEET.md)** - Quick reference (print this!)
- **📘 Full Documentation** - You're reading it now!

---

## 🎯 What's Included

| Service | Purpose | Port | URL |
|---------|---------|------|-----|
| **n8n** | Workflow automation engine (the conductor) | 5678 | http://localhost:5678 |
| **Agent Zero** | AI agent runtime & planning UI | 50080 | http://localhost:50080 |
| **ComfyUI** | AI image/video generation | 8188 | http://localhost:8188 |

---

## 🚀 Quick Start

### Prerequisites

- [Docker Desktop](https://www.docker.com/products/docker-desktop) installed and running
- (Optional) NVIDIA GPU with [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html) for GPU acceleration

### One-Command Launch

**Windows (PowerShell):**
```powershell
.\start.ps1
```

**Linux/macOS:**
```bash
chmod +x start.sh
./start.sh
```

That's it! The script will:
1. ✅ Check Docker is installed and running
2. ✅ Detect GPU availability
3. ✅ Create all necessary directories
4. ✅ Pull the latest images
5. ✅ Start all services
6. ✅ Display access URLs

---

## 📁 Directory Structure

```
ai-stack/
├── docker-compose.yml      # Main stack configuration
├── .env                    # Environment variables
├── start.ps1               # Windows startup script
├── start.sh                # Linux/macOS startup script
├── README.md               # This file
│
├── data/                   # Persistent data (auto-created)
│   ├── n8n/                # n8n workflows & credentials
│   └── agent-zero/         # Agent Zero data
│
├── shared/                 # Shared between all services
│   ├── comfyui/
│   │   ├── models/         # AI models (checkpoints, LoRAs, etc.)
│   │   │   ├── checkpoints/
│   │   │   ├── loras/
│   │   │   ├── vae/
│   │   │   ├── controlnet/
│   │   │   └── embeddings/
│   │   ├── output/         # Generated images
│   │   ├── input/          # Input images
│   │   └── custom_nodes/   # ComfyUI extensions
│   └── workflows/          # Shared workflow files
│
└── workflows/              # Pre-built n8n workflows
    ├── comfyui-image-generation.json
    └── comfyui-simple-test.json
```

---

## 🔧 Commands

### Windows (PowerShell)

```powershell
.\start.ps1              # Start the stack
.\start.ps1 -Stop        # Stop the stack
.\start.ps1 -Logs        # View logs
.\start.ps1 -Status      # Check status
.\start.ps1 -NoPull      # Start without pulling images
.\start.ps1 -CPU         # Force CPU mode (no GPU)
```

### Linux/macOS

```bash
./start.sh               # Start the stack
./start.sh --stop        # Stop the stack
./start.sh --logs        # View logs
./start.sh --status      # Check status
./start.sh --no-pull     # Start without pulling images
./start.sh --cpu         # Force CPU mode (no GPU)
```

### Docker Compose (Direct)

```bash
docker compose up -d     # Start
docker compose down      # Stop
docker compose logs -f   # View logs
docker compose ps        # Status
```

---

## 🎨 Adding Models to ComfyUI

Place your models in the appropriate directories:

| Model Type | Directory |
|------------|-----------|
| Stable Diffusion checkpoints | `shared/comfyui/models/checkpoints/` |
| LoRA models | `shared/comfyui/models/loras/` |
| VAE models | `shared/comfyui/models/vae/` |
| ControlNet models | `shared/comfyui/models/controlnet/` |
| Upscale models | `shared/comfyui/models/upscale_models/` |
| Embeddings | `shared/comfyui/models/embeddings/` |

### Recommended Starter Model

Download [SD 1.5](https://huggingface.co/runwayml/stable-diffusion-v1-5/blob/main/v1-5-pruned-emaonly.safetensors) and place it in `shared/comfyui/models/checkpoints/`.

---

## 📊 Pre-built Workflows

### 1. ComfyUI Image Generation Pipeline

**File:** `workflows/comfyui-image-generation.json`

A complete webhook-triggered image generation pipeline:

1. Import the workflow into n8n
2. Activate the workflow
3. Send a POST request:

```bash
curl -X POST http://localhost:5678/webhook/generate-image \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "a cyberpunk city at night, neon lights, rain, highly detailed",
    "negative_prompt": "blurry, low quality",
    "steps": 20,
    "cfg": 7,
    "width": 512,
    "height": 512
  }'
```

### 2. ComfyUI Simple Test

**File:** `workflows/comfyui-simple-test.json`

A simple connectivity test:

1. Import and activate in n8n
2. Visit: http://localhost:5678/webhook/comfyui-status
3. Should return ComfyUI system stats

---

## 🔗 Integration Architecture

```
┌─────────────────────────────────────────────────────────────────┐
│                         n8n (Conductor)                         │
│                      http://localhost:5678                      │
└─────────────────────┬───────────────────────┬───────────────────┘
                      │                       │
                      ▼                       ▼
┌─────────────────────────────┐ ┌─────────────────────────────────┐
│       Agent Zero            │ │           ComfyUI               │
│   http://localhost:50080    │ │     http://localhost:8188       │
│                             │ │                                 │
│  • AI planning/reasoning    │ │  • POST /prompt (queue job)     │
│  • Tool use decisions       │ │  • GET /history/{id} (results)  │
│  • Prompt optimization      │ │  • GET /view (retrieve images)  │
└─────────────────────────────┘ └─────────────────────────────────┘
                      │                       │
                      └───────────┬───────────┘
                                  ▼
                    ┌─────────────────────────┐
                    │    Shared Volume        │
                    │      ./shared/          │
                    │                         │
                    │  • ComfyUI outputs      │
                    │  • Shared workflows     │
                    │  • Cross-service data   │
                    └─────────────────────────┘
```

### Typical Workflow Loop

1. **Trigger**: n8n receives webhook/schedule/event
2. **Plan** (optional): n8n calls Agent Zero for decision-making
3. **Generate**: n8n submits workflow to ComfyUI `POST /prompt`
4. **Poll**: n8n checks `GET /history/{prompt_id}` until complete
5. **Deliver**: n8n retrieves output and sends to destination

---

## 🌐 ComfyUI API Reference

### Queue a Generation

```bash
POST http://comfyui:8188/prompt
Content-Type: application/json

{
  "prompt": { /* ComfyUI workflow JSON */ }
}
```

**Response:**
```json
{
  "prompt_id": "abc123-def456-..."
}
```

### Check Status

```bash
GET http://comfyui:8188/history/{prompt_id}
```

### Get Queue Status

```bash
GET http://comfyui:8188/queue
```

### Retrieve Generated Image

```bash
GET http://comfyui:8188/view?filename={name}&subfolder=&type=output
```

### System Stats

```bash
GET http://comfyui:8188/system_stats
```

---

## ⚙️ Configuration

### Environment Variables (.env)

```bash
# Timezone
TZ=America/Los_Angeles

# n8n Basic Auth (optional)
N8N_BASIC_AUTH_ACTIVE=false
N8N_BASIC_AUTH_USER=admin
N8N_BASIC_AUTH_PASSWORD=changeme

# API Keys for Agent Zero (optional)
OPENAI_API_KEY=sk-your-key-here
ANTHROPIC_API_KEY=sk-ant-your-key-here
```

### Custom Webhook URL

If running behind a reverse proxy:

```bash
WEBHOOK_URL=https://your-domain.com
```

---

## 🔒 Security Notes

- By default, all services are only accessible on localhost
- For production deployment, add a reverse proxy (Traefik/Caddy/nginx)
- Enable n8n basic auth for any non-local deployment
- Keep API keys in `.env` file (not committed to git)

---

## 🐛 Troubleshooting

### ComfyUI can't see GPU

1. Ensure NVIDIA drivers are installed
2. Install [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html)
3. Restart Docker Desktop
4. Run `docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi` to test

### Services won't start

```bash
# Check logs
docker compose logs -f

# Restart specific service
docker compose restart n8n

# Full reset
docker compose down -v
docker compose up -d
```

### n8n can't connect to ComfyUI

- Use `http://comfyui:8188` (Docker internal network), not `localhost`
- Ensure ComfyUI container is healthy: `docker compose ps`

### Port conflicts

Edit `docker-compose.yml` to change port mappings:
```yaml
ports:
  - "NEW_PORT:INTERNAL_PORT"
```

---

## 📚 Resources

- [n8n Documentation](https://docs.n8n.io/)
- [Agent Zero GitHub](https://github.com/frdel/agent-zero)
- [ComfyUI GitHub](https://github.com/comfyanonymous/ComfyUI)
- [ComfyUI API Examples](https://github.com/comfyanonymous/ComfyUI/blob/master/script_examples/basic_api_example.py)

---

## 📄 License

MIT License - Use freely for personal and commercial projects.

================================================
FILE: ai-stack/SUMMARY.md
================================================
# 📋 AI Stack Summary

## What You Get

```
┌─────────────────────────────────────────────────────────────┐
│                    🤖 AI AUTOMATION STACK                   │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  📊 n8n                    🤖 Agent Zero      🎨 ComfyUI   │
│  Port 5678                 Port 50080         Port 8188    │
│  Workflow Engine           AI Agent           Image Gen    │
│                                                             │
└─────────────────────────────────────────────────────────────┘
```

## 📁 Files Included

```
ai-stack/
│
├── 📘 QUICK-START.md          ← Start here! (3 simple steps)
├── 📖 EASY-INSTALL.md         ← Detailed guide with pictures
├── 🔧 TROUBLESHOOTING.md      ← Fix problems
├── 📚 README.md               ← Full documentation
│
├── 🐳 docker-compose.yml      ← Stack configuration
├── ⚙️  .env                    ← Settings
├── 🪟 start.ps1               ← Windows launcher
├── 🐧 start.sh                ← Mac/Linux launcher
│
└── workflows/
    ├── comfyui-image-generation.json  ← Full image pipeline
    └── comfyui-simple-test.json       ← Test connection
```

## 🎯 Quick Reference

### Start the Stack

**Windows:**
```powershell
.\start.ps1
```

**Mac/Linux:**
```bash
./start.sh
```

### Access the Services

| Service | URL | What it does |
|---------|-----|--------------|
| n8n | http://localhost:5678 | Create automated workflows |
| Agent Zero | http://localhost:50080 | AI assistant and planning |
| ComfyUI | http://localhost:8188 | Generate images with AI |

### Stop the Stack

**Windows:**
```powershell
.\start.ps1 -Stop
```

**Mac/Linux:**
```bash
./start.sh --stop
```

## 🎓 Learning Path

### Day 1: Get it Running
1. Read **QUICK-START.md**
2. Install Docker
3. Run the stack
4. Open all three services in your browser

### Day 2: Test ComfyUI
1. Import **comfyui-simple-test.json** into n8n
2. Activate the workflow
3. Visit: http://localhost:5678/webhook/comfyui-status
4. See if ComfyUI is connected

### Day 3: Generate Your First Image
1. Import **comfyui-image-generation.json** into n8n
2. Activate the workflow
3. Send a test request (see README.md for example)
4. Get your first AI-generated image!

### Day 4+: Build Your Own Workflows
1. Learn n8n basics
2. Experiment with different prompts
3. Connect to other services
4. Automate your creative process

## 💡 Use Cases

### What Can You Do With This?

1. **Automated Image Generation**
   - Schedule daily artwork creation
   - Generate images from RSS feeds
   - Create social media content automatically

2. **AI-Powered Workflows**
   - Let Agent Zero plan complex tasks
   - Use n8n to execute the plans
   - Generate visual content with ComfyUI

3. **Creative Automation**
   - Batch process images
   - Create variations of designs
   - Generate assets for projects

4. **Learning & Experimentation**
   - Learn workflow automation
   - Experiment with AI image generation
   - Build custom integrations

## 📊 System Requirements

### Minimum (CPU Mode)
- **RAM:** 8 GB
- **Disk:** 20 GB free space
- **CPU:** Any modern processor
- **OS:** Windows 10+, macOS 10.15+, or Linux

### Recommended (GPU Mode)
- **RAM:** 16 GB
- **Disk:** 50 GB free space (for models)
- **GPU:** NVIDIA GPU with 6+ GB VRAM
- **OS:** Windows 10+, Linux (macOS doesn't support NVIDIA)

## 🔐 Security Notes

### Default Setup (Safe for Local Use)
- All services only accessible from your computer
- No external access by default
- No authentication required (local only)

### If You Want to Share (Advanced)
- Add reverse proxy (Traefik/Caddy)
- Enable n8n authentication
- Use HTTPS certificates
- Configure firewall rules

**⚠️ Don't expose to internet without security!**

## 🆘 Quick Help

### Something Not Working?

1. **Check Docker is running** (look for whale icon 🐳)
2. **Read TROUBLESHOOTING.md**
3. **Check the logs:**
   - Windows: `.\start.ps1 -Logs`
   - Mac/Linux: `./start.sh --logs`

### Common Issues

| Problem | Quick Fix |
|---------|-----------|
| Docker not found | Install Docker Desktop |
| Port in use | Restart computer |
| Permission denied | Run as administrator (Windows) or use `chmod +x` (Mac) |
| Can't connect | Wait 2 minutes for services to start |

## 📈 What's Next?

### After You Get It Running

1. **Explore n8n**
   - Try the built-in templates
   - Connect to your favorite services
   - Build your first workflow

2. **Download Models for ComfyUI**
   - Get Stable Diffusion models
   - Try different styles
   - Experiment with LoRAs

3. **Learn Agent Zero**
   - Ask it questions
   - Let it help plan workflows
   - Integrate with n8n

4. **Join Communities**
   - n8n Community Forum
   - ComfyUI Discord
   - Agent Zero GitHub

## 🎉 Success Checklist

- [ ] Docker Desktop installed and running
- [ ] AI Stack downloaded and extracted
- [ ] Start script executed successfully
- [ ] All three services accessible in browser
- [ ] Test workflow imported and working
- [ ] First image generated successfully

**Once you check all these boxes, you're ready to build amazing things! 🚀**

---

## 📞 Need Help?

- **Quick Start:** Read QUICK-START.md
- **Detailed Guide:** Read EASY-INSTALL.md
- **Problems:** Read TROUBLESHOOTING.md
- **Full Docs:** Read README.md

**Remember:** Everyone starts as a beginner. Take your time, follow the steps, and don't be afraid to ask for help! 💪

================================================
FILE: ai-stack/TROUBLESHOOTING.md
================================================
# 🔧 Troubleshooting Guide

## Common Problems and How to Fix Them

---

## Problem 1: "Docker is not installed"

### What you see:
```
✗ Docker is not installed or not in PATH
```

### How to fix:
1. **Install Docker Desktop**
   - Windows: https://www.docker.com/products/docker-desktop
   - Mac: https://www.docker.com/products/docker-desktop
2. **Restart your computer**
3. **Try again**

---

## Problem 2: "Docker daemon is not running"

### What you see:
```
✗ Docker daemon is not running
```

### How to fix:
1. **Look for the Docker whale icon** 🐳
   - Windows: Bottom right corner (system tray)
   - Mac: Top right corner (menu bar)
2. **If you don't see it:**
   - Open "Docker Desktop" from your applications
   - Wait 30 seconds for it to start
3. **When you see the whale icon, try again**

---

## Problem 3: "Permission denied" (Mac only)

### What you see:
```
Permission denied
```

### How to fix:
1. **Open Terminal**
2. **Type these commands one at a time:**
   ```bash
   cd ~/Downloads/n8n-workflows-main/ai-stack
   chmod +x start.sh
   ./start.sh
   ```
3. **Press Enter after each line**

---

## Problem 4: "Port already in use"

### What you see:
```
Error: Port 5678 is already in use
```

### How to fix:

**Option 1 - Stop other programs:**
1. Close all web browsers
2. Close any other programs
3. Try again

**Option 2 - Restart computer:**
1. Restart your computer
2. Open Docker Desktop
3. Try again

**Option 3 - Stop the old stack:**

Windows:
```powershell
.\start.ps1 -Stop
```

Mac:
```bash
./start.sh --stop
```

Then start again.

---

## Problem 5: Script window closes immediately (Windows)

### What you see:
- PowerShell window opens and closes in 1 second
- You can't read any messages

### How to fix:
1. **Open PowerShell as Administrator:**
   - Click Windows Start button
   - Type "PowerShell"
   - Right-click "Windows PowerShell"
   - Click "Run as administrator"
   - Click "Yes" when asked

2. **Type this command:**
   ```powershell
   Set-ExecutionPolicy RemoteSigned
   ```
   Press Enter

3. **Type "Y" and press Enter**

4. **Now try running start.ps1 again**

---

## Problem 6: "Cannot connect to localhost:5678"

### What you see:
- Browser says "This site can't be reached"
- Or "Connection refused"

### How to fix:
1. **Wait 2 minutes** - services need time to start
2. **Check if Docker is running** (look for whale icon 🐳)
3. **Check if the stack is running:**
   
   Windows:
   ```powershell
   .\start.ps1 -Status
   ```
   
   Mac:
   ```bash
   ./start.sh --status
   ```

4. **Look for these services:**
   - ai-stack-n8n (should say "Up")
   - ai-stack-agent-zero (should say "Up")
   - ai-stack-comfyui (should say "Up")

5. **If any say "Exited" or "Error":**
   - Stop everything: `.\start.ps1 -Stop` or `./start.sh --stop`
   - Start again: `.\start.ps1` or `./start.sh`

---

## Problem 7: "No space left on device"

### What you see:
```
Error: No space left on device
```

### How to fix:
1. **Free up disk space:**
   - Delete old files you don't need
   - Empty your Recycle Bin / Trash
   - You need at least 10 GB free

2. **Clean Docker:**
   ```bash
   docker system prune -a
   ```
   Type "y" and press Enter when asked

3. **Try again**

---

## Problem 8: Downloads are very slow

### What you see:
- "Pulling images..." takes more than 30 minutes

### How to fix:
1. **Check your internet connection**
2. **Be patient** - first download is 5-10 GB
3. **Next time will be faster** (it remembers what it downloaded)

### Skip the download if you already have it:
Windows:
```powershell
.\start.ps1 -NoPull
```

Mac:
```bash
./start.sh --no-pull
```

---

## Problem 9: "GPU not detected" but I have a GPU

### What you see:
```
ℹ No NVIDIA GPU detected
```

### How to fix (NVIDIA GPUs only):

**Windows:**
1. Install NVIDIA drivers from: https://www.nvidia.com/download/index.aspx
2. Install NVIDIA Container Toolkit
3. Restart Docker Desktop
4. Try again

**Mac:**
- Mac doesn't support NVIDIA GPUs in Docker
- The stack will use CPU mode automatically
- It will be slower but still work

**Don't have NVIDIA GPU?**
- That's okay! Use CPU mode:
  
  Windows: `.\start.ps1 -CPU`
  
  Mac: `./start.sh --cpu`

---

## Problem 10: Everything looks fine but nothing works

### Try this "nuclear option":

**Windows:**
```powershell
# Stop everything
.\start.ps1 -Stop

# Remove all containers and data
docker compose down -v

# Start fresh
.\start.ps1
```

**Mac:**
```bash
# Stop everything
./start.sh --stop

# Remove all containers and data
docker compose down -v

# Start fresh
./start.sh
```

**⚠️ Warning:** This deletes all your data! You'll start completely fresh.

---

## Still Not Working?

### Check these basics:

- [ ] Is Docker Desktop installed?
- [ ] Is Docker Desktop running? (see whale icon 🐳)
- [ ] Do you have internet connection?
- [ ] Do you have at least 10 GB free disk space?
- [ ] Did you restart your computer after installing Docker?
- [ ] Are you in the correct folder (ai-stack)?

### Get the logs:

Windows:
```powershell
.\start.ps1 -Logs
```

Mac:
```bash
./start.sh --logs
```

**Take a screenshot of any red error messages and ask for help!**

---

## Quick Command Reference

| What you want | Windows | Mac |
|---------------|---------|-----|
| Start | `.\start.ps1` | `./start.sh` |
| Stop | `.\start.ps1 -Stop` | `./start.sh --stop` |
| Check status | `.\start.ps1 -Status` | `./start.sh --status` |
| View logs | `.\start.ps1 -Logs` | `./start.sh --logs` |
| CPU mode | `.\start.ps1 -CPU` | `./start.sh --cpu` |
| Skip download | `.\start.ps1 -NoPull` | `./start.sh --no-pull` |

---

## 📞 Getting Help

When asking for help, provide:

1. **Your operating system** (Windows 10, Windows 11, Mac, etc.)
2. **What you were trying to do**
3. **The exact error message** (take a screenshot)
4. **What you already tried**

This helps people help you faster! 🚀

================================================
FILE: ai-stack/UBUNTU-INSTALL.md
================================================
# 🐧 Ubuntu Installation Guide
## AI Automation Stack for Ubuntu/Linux

---

## ✅ Step 1: Install Docker on Ubuntu

### Open Terminal
Press `Ctrl + Alt + T` to open Terminal

### Check if Docker is Already Installed
```bash
docker --version
```

If you see a version number, skip to Step 2. Otherwise, continue:

### Install Docker
Copy and paste these commands one at a time:

```bash
# Update package list
sudo apt update

# Install required packages
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common

# Add Docker's official GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# Add Docker repository
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Update package list again
sudo apt update

# Install Docker
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

# Add your user to docker group (so you don't need sudo)
sudo usermod -aG docker $USER

# Apply the new group membership
newgrp docker
```

### Verify Docker Installation
```bash
docker --version
docker compose version
```

You should see version numbers for both.

---

## 📥 Step 2: Download the AI Stack

### Option A: Using Git (Recommended)
```bash
# Install git if you don't have it
sudo apt install -y git

# Clone the repository
git clone https://github.com/insomniakin/n8n-workflows.git

# Go to the ai-stack folder
cd n8n-workflows/ai-stack
```

### Option B: Download ZIP
```bash
# Install wget and unzip if you don't have them
sudo apt install -y wget unzip

# Download the repository
wget https://github.com/insomniakin/n8n-workflows/archive/refs/heads/feature/ai-automation-stack.zip

# Unzip it
unzip feature/ai-automation-stack.zip

# Go to the ai-stack folder
cd n8n-workflows-feature-ai-automation-stack/ai-stack
```

---

## 🚀 Step 3: Start the AI Stack

### Make the Script Executable
```bash
chmod +x start.sh
```

### Run the Stack
```bash
./start.sh
```

### What You'll See
The script will:
1. ✓ Check Docker is installed
2. ✓ Check Docker is running
3. ✓ Detect your GPU (if you have NVIDIA)
4. ✓ Create necessary folders
5. ✓ Pull Docker images (this takes 5-10 minutes first time)
6. ✓ Start all services

### Wait for Success Message
```
🎉 AI Stack is running!
```

---

## 🌐 Step 4: Open the Services

Open your web browser (Firefox, Chrome, etc.) and go to:

### n8n (Workflow Automation)
```
http://localhost:5678
```

### Agent Zero (AI Assistant)
```
http://localhost:50080
```

### ComfyUI (Image Generation)
```
http://localhost:8188
```

---

## 🎮 Quick Commands

### Start the Stack
```bash
./start.sh
```

### Stop the Stack
```bash
./start.sh --stop
```

### Check Status
```bash
./start.sh --status
```

### View Logs
```bash
./start.sh --logs
```

### Force CPU Mode (No GPU)
```bash
./start.sh --cpu
```

---

## 🔧 Ubuntu-Specific Troubleshooting

### Problem: "Permission denied" when running docker

**Solution:**
```bash
# Add yourself to docker group
sudo usermod -aG docker $USER

# Log out and log back in, or run:
newgrp docker

# Try again
./start.sh
```

### Problem: "Cannot connect to Docker daemon"

**Solution:**
```bash
# Start Docker service
sudo systemctl start docker

# Enable Docker to start on boot
sudo systemctl enable docker

# Check status
sudo systemctl status docker
```

### Problem: Port already in use

**Solution:**
```bash
# Find what's using the port
sudo lsof -i :5678
sudo lsof -i :8188
sudo lsof -i :50080

# Kill the process (replace PID with actual number)
sudo kill -9 PID

# Or just restart
sudo reboot
```

### Problem: Not enough disk space

**Solution:**
```bash
# Check disk space
df -h

# Clean up Docker
docker system prune -a

# Clean up apt cache
sudo apt clean
sudo apt autoremove
```

### Problem: NVIDIA GPU not detected

**Solution:**
```bash
# Install NVIDIA drivers
sudo ubuntu-drivers autoinstall

# Install NVIDIA Container Toolkit
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

sudo apt update
sudo apt install -y nvidia-container-toolkit

# Restart Docker
sudo systemctl restart docker

# Test GPU
docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi
```

---

## 🔥 Firewall Configuration (Optional)

If you want to access from other computers on your network:

```bash
# Allow ports through firewall
sudo ufw allow 5678/tcp
sudo ufw allow 8188/tcp
sudo ufw allow 50080/tcp

# Enable firewall if not already enabled
sudo ufw enable

# Check status
sudo ufw status
```

---

## 📊 System Requirements

### Minimum (CPU Mode)
- Ubuntu 20.04 or newer
- 8 GB RAM
- 20 GB free disk space
- Any modern CPU

### Recommended (GPU Mode)
- Ubuntu 20.04 or newer
- 16 GB RAM
- 50 GB free disk space
- NVIDIA GPU with 6+ GB VRAM
- NVIDIA drivers installed

---

## 🆘 Quick Help Commands

### Check Docker Status
```bash
sudo systemctl status docker
```

### Check Running Containers
```bash
docker ps
```

### Check Docker Logs
```bash
docker compose logs -f
```

### Restart Everything
```bash
./start.sh --stop
docker system prune -f
./start.sh
```

### Complete Reset (Deletes All Data!)
```bash
./start.sh --stop
docker compose down -v
rm -rf data/ shared/
./start.sh
```

---

## 💡 Ubuntu Pro Tips

### 1. Create Desktop Shortcuts

Create a file `~/Desktop/ai-stack.desktop`:
```bash
cat > ~/Desktop/ai-stack.desktop << 'EOF'
[Desktop Entry]
Type=Application
Name=AI Stack
Comment=Start AI Automation Stack
Exec=gnome-terminal -- bash -c "cd ~/n8n-workflows/ai-stack && ./start.sh; exec bash"
Icon=applications-internet
Terminal=true
EOF

chmod +x ~/Desktop/ai-stack.desktop
```

### 2. Auto-Start on Boot

```bash
# Create systemd service
sudo nano /etc/systemd/system/ai-stack.service
```

Paste this:
```ini
[Unit]
Description=AI Automation Stack
After=docker.service
Requires=docker.service

[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/home/YOUR_USERNAME/n8n-workflows/ai-stack
ExecStart=/home/YOUR_USERNAME/n8n-workflows/ai-stack/start.sh
ExecStop=/home/YOUR_USERNAME/n8n-workflows/ai-stack/start.sh --stop
User=YOUR_USERNAME

[Install]
WantedBy=multi-user.target
```

Replace `YOUR_USERNAME` with your actual username, then:
```bash
sudo systemctl enable ai-stack
sudo systemctl start ai-stack
```

### 3. Monitor Resources

```bash
# Install htop for better monitoring
sudo apt install -y htop

# Watch Docker stats
docker stats

# Watch GPU usage (if NVIDIA)
watch -n 1 nvidia-smi
```

---

## ✅ Success Checklist

- [ ] Docker installed and running
- [ ] Repository downloaded
- [ ] In the ai-stack folder
- [ ] start.sh is executable
- [ ] Script ran successfully
- [ ] All three URLs open in browser
- [ ] n8n shows welcome screen
- [ ] ComfyUI shows interface
- [ ] Agent Zero shows chat

---

## 🎉 You're All Set!

Your AI Automation Stack is now running on Ubuntu!

### Next Steps:
1. Import the test workflow: `workflows/comfyui-simple-test.json`
2. Try generating your first image
3. Read SUMMARY.md to learn more
4. Build your own workflows!

### Need More Help?
- **General Guide:** README.md
- **Troubleshooting:** TROUBLESHOOTING.md
- **Quick Reference:** CHEAT-SHEET.md

**Happy automating! 🚀**

================================================
FILE: ai-stack/docker-compose.yml
================================================
# =============================================================================
# Turnkey Local AI Automation Stack
# n8n (orchestration) + Agent Zero (agent runtime) + ComfyUI (media generation)
# =============================================================================
# Usage: docker compose up -d
# URLs:
#   - n8n:        http://localhost:5678
#   - Agent Zero: http://localhost:50080
#   - ComfyUI:    http://localhost:8188
# =============================================================================

services:
  # ---------------------------------------------------------------------------
  # n8n - Workflow Automation Engine (The Conductor)
  # ---------------------------------------------------------------------------
  n8n:
    image: n8nio/n8n:latest
    container_name: ai-stack-n8n
    ports:
      - "5678:5678"
    environment:
      # Core configuration
      - N8N_HOST=localhost
      - N8N_PORT=5678
      - N8N_PROTOCOL=http
      # Webhook URL - critical for correct webhook URLs in editor
      - WEBHOOK_URL=http://localhost:5678
      # Timezone
      - GENERIC_TIMEZONE=${TZ:-America/Los_Angeles}
      - TZ=${TZ:-America/Los_Angeles}
      # Execution settings
      - EXECUTIONS_DATA_PRUNE=true
      - EXECUTIONS_DATA_MAX_AGE=168
      # Allow calling local services
      - N8N_PAYLOAD_SIZE_MAX=256
    volumes:
      - ./data/n8n:/home/node/.n8n
      - ./shared:/shared
    networks:
      - ai-stack-network
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "wget -qO- http://localhost:5678/healthz || exit 1"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 30s

  # ---------------------------------------------------------------------------
  # Agent Zero - AI Agent Runtime & UI
  # ---------------------------------------------------------------------------
  agent-zero:
    image: frdel/agent-zero-run:latest
    container_name: ai-stack-agent-zero
    ports:
      # Agent Zero web UI is on container port 80
      - "50080:80"
    environment:
      - TZ=${TZ:-America/Los_Angeles}
    volumes:
      - ./shared:/shared
      - ./data/agent-zero:/app/data
    networks:
      - ai-stack-network
    restart: unless-stopped
    depends_on:
      - n8n

  # ---------------------------------------------------------------------------
  # ComfyUI - AI Image/Video Generation
  # ---------------------------------------------------------------------------
  # Using a well-maintained community image
  # GPU support requires NVIDIA Container Toolkit
  comfyui:
    image: aidockorg/comfyui-cuda:latest
    container_name: ai-stack-comfyui
    ports:
      - "8188:8188"
    environment:
      - CLI_ARGS=--listen 0.0.0.0 --port 8188
    volumes:
      # Model storage (checkpoints, loras, etc.)
      - ./shared/comfyui/models:/comfyui/models
      # Output directory
      - ./shared/comfyui/output:/comfyui/output
      # Input directory
      - ./shared/comfyui/input:/comfyui/input
      # Custom nodes
      - ./shared/comfyui/custom_nodes:/comfyui/custom_nodes
    networks:
      - ai-stack-network
    # GPU support - requires NVIDIA Container Toolkit
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "curl -f http://localhost:8188/system_stats || exit 1"]
      interval: 30s
      timeout: 10s
      retries: 5
      start_period: 60s

  # ---------------------------------------------------------------------------
  # ComfyUI CPU-only variant (uncomment if no GPU available)
  # ---------------------------------------------------------------------------
  # comfyui-cpu:
  #   image: frdel/comfyui-docker:latest
  #   container_name: ai-stack-comfyui-cpu
  #   ports:
  #     - "8188:8188"
  #   environment:
  #     - CLI_ARGS=--listen 0.0.0.0 --port 8188 --cpu
  #   volumes:
  #     - ./shared/comfyui/models:/comfyui/models
  #     - ./shared/comfyui/output:/comfyui/output
  #     - ./shared/comfyui/input:/comfyui/input
  #     - ./shared/comfyui/custom_nodes:/comfyui/custom_nodes
  #   networks:
  #     - ai-stack-network
  #   restart: unless-stopped
  #   profiles:
  #     - cpu-only

networks:
  ai-stack-network:
    driver: bridge
    name: ai-stack-network

volumes:
  n8n-data:
  agent-zero-data:
  comfyui-models:
  comfyui-output:

================================================
FILE: ai-stack/start.ps1
================================================
# =============================================================================
# AI Stack Startup Script for Windows
# =============================================================================
# This script checks prerequisites, creates folders, and launches the stack
# Run: .\start.ps1
# =============================================================================

param(
    [switch]$NoPull,
    [switch]$CPU,
    [switch]$Stop,
    [switch]$Logs,
    [switch]$Status
)

$ErrorActionPreference = "Stop"

# Colors
function Write-Color($Text, $Color) {
    Write-Host $Text -ForegroundColor $Color
}

function Write-Header($Text) {
    Write-Host ""
    Write-Color "═══════════════════════════════════════════════════════════════" "Cyan"
    Write-Color "  $Text" "Cyan"
    Write-Color "═══════════════════════════════════════════════════════════════" "Cyan"
    Write-Host ""
}

function Write-Step($Text) {
    Write-Color "▶ $Text" "Yellow"
}

function Write-Success($Text) {
    Write-Color "✓ $Text" "Green"
}

function Write-Error($Text) {
    Write-Color "✗ $Text" "Red"
}

function Write-Info($Text) {
    Write-Color "ℹ $Text" "Blue"
}

# Banner
Write-Host ""
Write-Color "    ╔═══════════════════════════════════════════════════════════╗" "Magenta"
Write-Color "    ║                                                           ║" "Magenta"
Write-Color "    ║     🤖 AI AUTOMATION STACK                                ║" "Magenta"
Write-Color "    ║     n8n + Agent Zero + ComfyUI                            ║" "Magenta"
Write-Color "    ║                                                           ║" "Magenta"
Write-Color "    ╚═══════════════════════════════════════════════════════════╝" "Magenta"
Write-Host ""

# Handle flags
if ($Stop) {
    Write-Header "Stopping AI Stack"
    docker compose down
    Write-Success "Stack stopped"
    exit 0
}

if ($Logs) {
    docker compose logs -f
    exit 0
}

if ($Status) {
    Write-Header "Stack Status"
    docker compose ps
    exit 0
}

# =============================================================================
# STEP 1: Check Docker
# =============================================================================
Write-Header "Checking Prerequisites"

Write-Step "Checking Docker installation..."
try {
    $dockerVersion = docker --version
    Write-Success "Docker found: $dockerVersion"
} catch {
    Write-Error "Docker is not installed or not in PATH"
    Write-Info "Please install Docker Desktop from: https://www.docker.com/products/docker-desktop"
    exit 1
}

Write-Step "Checking if Docker is running..."
try {
    docker info | Out-Null
    Write-Success "Docker daemon is running"
} catch {
    Write-Error "Docker daemon is not running"
    Write-Info "Please start Docker Desktop and try again"
    exit 1
}

Write-Step "Checking Docker Compose..."
try {
    $composeVersion = docker compose version
    Write-Success "Docker Compose found: $composeVersion"
} catch {
    Write-Error "Docker Compose is not available"
    exit 1
}

# Check for NVIDIA GPU (optional)
Write-Step "Checking for NVIDIA GPU support..."
try {
    $nvidiaSmi = nvidia-smi --query-gpu=name --format=csv,noheader 2>$null
    if ($nvidiaSmi) {
        Write-Success "NVIDIA GPU detected: $nvidiaSmi"
        $hasGPU = $true
    } else {
        $hasGPU = $false
    }
} catch {
    Write-Info "No NVIDIA GPU detected (ComfyUI will use CPU mode if -CPU flag is set)"
    $hasGPU = $false
}

# =============================================================================
# STEP 2: Create Directory Structure
# =============================================================================
Write-Header "Setting Up Directory Structure"

$directories = @(
    "data/n8n",
    "data/agent-zero",
    "shared/comfyui/models/checkpoints",
    "shared/comfyui/models/loras",
    "shared/comfyui/models/vae",
    "shared/comfyui/models/controlnet",
    "shared/comfyui/models/upscale_models",
    "shared/comfyui/models/embeddings",
    "shared/comfyui/models/clip",
    "shared/comfyui/output",
    "shared/comfyui/input",
    "shared/comfyui/custom_nodes",
    "shared/workflows"
)

foreach ($dir in $directories) {
    if (-not (Test-Path $dir)) {
        New-Item -ItemType Directory -Path $dir -Force | Out-Null
        Write-Success "Created: $dir"
    } else {
        Write-Info "Exists: $dir"
    }
}

# =============================================================================
# STEP 3: Pull Images
# =============================================================================
if (-not $NoPull) {
    Write-Header "Pulling Docker Images"
    
    Write-Step "Pulling n8n..."
    docker pull n8nio/n8n:latest
    
    Write-Step "Pulling Agent Zero..."
    docker pull frdel/agent-zero-run:latest
    
    Write-Step "Pulling ComfyUI..."
    docker pull yanwk/comfyui-boot:latest
    
    Write-Success "All images pulled successfully"
} else {
    Write-Info "Skipping image pull (-NoPull flag set)"
}

# =============================================================================
# STEP 4: Start Stack
# =============================================================================
Write-Header "Starting AI Stack"

if ($CPU -or -not $hasGPU) {
    Write-Info "Starting in CPU mode (no GPU acceleration for ComfyUI)"
    # Modify compose to use CPU mode
    $env:COMFYUI_ARGS = "--cpu"
}

Write-Step "Starting containers..."
docker compose up -d

# Wait for services to be healthy
Write-Step "Waiting for services to start..."
Start-Sleep -Seconds 10

# =============================================================================
# STEP 5: Display Status
# =============================================================================
Write-Header "Stack Status"

docker compose ps

Write-Host ""
Write-Color "═══════════════════════════════════════════════════════════════" "Green"
Write-Color "  🎉 AI Stack is running!" "Green"
Write-Color "═══════════════════════════════════════════════════════════════" "Green"
Write-Host ""
Write-Color "  📊 n8n (Workflow Automation):" "White"
Write-Color "     http://localhost:5678" "Cyan"
Write-Host ""
Write-Color "  🤖 Agent Zero (AI Agent):" "White"
Write-Color "     http://localhost:50080" "Cyan"
Write-Host ""
Write-Color "  🎨 ComfyUI (Image Generation):" "White"
Write-Color "     http://localhost:8188" "Cyan"
Write-Host ""
Write-Color "═══════════════════════════════════════════════════════════════" "Green"
Write-Host ""
Write-Info "Commands:"
Write-Host "  .\start.ps1 -Stop    # Stop the stack"
Write-Host "  .\start.ps1 -Logs    # View logs"
Write-Host "  .\start.ps1 -Status  # Check status"
Write-Host ""
Write-Info "Shared folder: ./shared (accessible by all services)"
Write-Info "ComfyUI models: ./shared/comfyui/models"
Write-Host ""

================================================
FILE: ai-stack/start.sh
================================================
#!/bin/bash
# =============================================================================
# AI Stack Startup Script for Linux/macOS
# =============================================================================
# This script checks prerequisites, creates folders, and launches the stack
# Run: chmod +x start.sh && ./start.sh
# =============================================================================

set -e

# Colors
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
MAGENTA='\033[0;35m'
CYAN='\033[0;36m'
WHITE='\033[1;37m'
NC='\033[0m' # No Color

# Functions
print_header() {
    echo ""
    echo -e "${CYAN}═══════════════════════════════════════════════════════════════${NC}"
    echo -e "${CYAN}  $1${NC}"
    echo -e "${CYAN}═══════════════════════════════════════════════════════════════${NC}"
    echo ""
}

print_step() {
    echo -e "${YELLOW}▶ $1${NC}"
}

print_success() {
    echo -e "${GREEN}✓ $1${NC}"
}

print_error() {
    echo -e "${RED}✗ $1${NC}"
}

print_info() {
    echo -e "${BLUE}ℹ $1${NC}"
}

# Banner
echo ""
echo -e "${MAGENTA}    ╔═══════════════════════════════════════════════════════════╗${NC}"
echo -e "${MAGENTA}    ║                                                           ║${NC}"
echo -e "${MAGENTA}    ║     🤖 AI AUTOMATION STACK                                ║${NC}"
echo -e "${MAGENTA}    ║     n8n + Agent Zero + ComfyUI                            ║${NC}"
echo -e "${MAGENTA}    ║                                                           ║${NC}"
echo -e "${MAGENTA}    ╚═══════════════════════════════════════════════════════════╝${NC}"
echo ""

# Parse arguments
NO_PULL=false
CPU_MODE=false
ACTION="start"

while [[ $# -gt 0 ]]; do
    case $1 in
        --no-pull|-n)
            NO_PULL=true
            shift
            ;;
        --cpu|-c)
            CPU_MODE=true
            shift
            ;;
        --stop|-s)
            ACTION="stop"
            shift
            ;;
        --logs|-l)
            ACTION="logs"
            shift
            ;;
        --status)
            ACTION="status"
            shift
            ;;
        --help|-h)
            echo "Usage: ./start.sh [OPTIONS]"
            echo ""
            echo "Options:"
            echo "  --no-pull, -n    Skip pulling Docker images"
            echo "  --cpu, -c        Run ComfyUI in CPU mode (no GPU)"
            echo "  --stop, -s       Stop the stack"
            echo "  --logs, -l       View container logs"
            echo "  --status         Show container status"
            echo "  --help, -h       Show this help message"
            exit 0
            ;;
        *)
            echo "Unknown option: $1"
            exit 1
            ;;
    esac
done

# Handle actions
case $ACTION in
    stop)
        print_header "Stopping AI Stack"
        docker compose down
        print_success "Stack stopped"
        exit 0
        ;;
    logs)
        docker compose logs -f
        exit 0
        ;;
    status)
        print_header "Stack Status"
        docker compose ps
        exit 0
        ;;
esac

# =============================================================================
# STEP 1: Check Docker
# =============================================================================
print_header "Checking Prerequisites"

print_step "Checking Docker installation..."
if command -v docker &> /dev/null; then
    DOCKER_VERSION=$(docker --version)
    print_success "Docker found: $DOCKER_VERSION"
else
    print_error "Docker is not installed"
    print_info "Please install Docker: https://docs.docker.com/get-docker/"
    exit 1
fi

print_step "Checking if Docker is running..."
if docker info &> /dev/null; then
    print_success "Docker daemon is running"
else
    print_error "Docker daemon is not running"
    print_info "Please start Docker and try again"
    exit 1
fi

print_step "Checking Docker Compose..."
if docker compose version &> /dev/null; then
    COMPOSE_VERSION=$(docker compose version)
    print_success "Docker Compose found: $COMPOSE_VERSION"
else
    print_error "Docker Compose is not available"
    exit 1
fi

# Check for NVIDIA GPU (optional)
print_step "Checking for NVIDIA GPU support..."
HAS_GPU=false
if command -v nvidia-smi &> /dev/null; then
    GPU_NAME=$(nvidia-smi --query-gpu=name --format=csv,noheader 2>/dev/null || echo "")
    if [ -n "$GPU_NAME" ]; then
        print_success "NVIDIA GPU detected: $GPU_NAME"
        HAS_GPU=true
    fi
fi

if [ "$HAS_GPU" = false ]; then
    print_info "No NVIDIA GPU detected (use --cpu flag for CPU mode)"
fi

# =============================================================================
# STEP 2: Create Directory Structure
# =============================================================================
print_header "Setting Up Directory Structure"

DIRECTORIES=(
    "data/n8n"
    "data/agent-zero"
    "shared/comfyui/models/checkpoints"
    "shared/comfyui/models/loras"
    "shared/comfyui/models/vae"
    "shared/comfyui/models/controlnet"
    "shared/comfyui/models/upscale_models"
    "shared/comfyui/models/embeddings"
    "shared/comfyui/models/clip"
    "shared/comfyui/output"
    "shared/comfyui/input"
    "shared/comfyui/custom_nodes"
    "shared/workflows"
)

for dir in "${DIRECTORIES[@]}"; do
    if [ ! -d "$dir" ]; then
        mkdir -p "$dir"
        print_success "Created: $dir"
    else
        print_info "Exists: $dir"
    fi
done

# =============================================================================
# STEP 3: Pull Images
# =============================================================================
if [ "$NO_PULL" = false ]; then
    print_header "Pulling Docker Images"
    
    print_step "Pulling n8n..."
    docker pull n8nio/n8n:latest
    
    print_step "Pulling Agent Zero..."
    docker pull frdel/agent-zero-run:latest
    
    print_step "Pulling ComfyUI..."
    docker pull aidockorg/comfyui-cuda:latest
    
    print_success "All images pulled successfully"
else
    print_info "Skipping image pull (--no-pull flag set)"
fi

# =============================================================================
# STEP 4: Start Stack
# =============================================================================
print_header "Starting AI Stack"

if [ "$CPU_MODE" = true ] || [ "$HAS_GPU" = false ]; then
    print_info "Starting in CPU mode (no GPU acceleration for ComfyUI)"
    export COMFYUI_ARGS="--cpu"
fi

print_step "Starting containers..."
docker compose up -d

# Wait for services to be healthy
print_step "Waiting for services to start..."
sleep 10

# =============================================================================
# STEP 5: Display Status
# =============================================================================
print_header "Stack Status"

docker compose ps

echo ""
echo -e "${GREEN}═══════════════════════════════════════════════════════════════${NC}"
echo -e "${GREEN}  🎉 AI Stack is running!${NC}"
echo -e "${GREEN}═══════════════════════════════════════════════════════════════${NC}"
echo ""
echo -e "${WHITE}  📊 n8n (Workflow Automation):${NC}"
echo -e "${CYAN}     http://localhost:5678${NC}"
echo ""
echo -e "${WHITE}  🤖 Agent Zero (AI Agent):${NC}"
echo -e "${CYAN}     http://localhost:50080${NC}"
echo ""
echo -e "${WHITE}  🎨 ComfyUI (Image Generation):${NC}"
echo -e "${CYAN}     http://localhost:8188${NC}"
echo ""
echo -e "${GREEN}═══════════════════════════════════════════════════════════════${NC}"
echo ""
print_info "Commands:"
echo "  ./start.sh --stop    # Stop the stack"
echo "  ./start.sh --logs    # View logs"
echo "  ./start.sh --status  # Check status"
echo ""
print_info "Shared folder: ./shared (accessible by all services)"
print_info "ComfyUI models: ./shared/comfyui/models"
echo ""

================================================
FILE: ai-stack/workflows/comfyui-image-generation.json
================================================
{
  "name": "ComfyUI Image Generation Pipeline",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "generate-image",
        "responseMode": "responseNode",
        "options": {}
      },
      "id": "webhook-trigger",
      "name": "Webhook Trigger",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [250, 300],
      "webhookId": "generate-image"
    },
    {
      "parameters": {
        "jsCode": "// Extract prompt from webhook body or use default\nconst input = $input.first().json;\nconst prompt = input.body?.prompt || input.prompt || 'a beautiful sunset over mountains, highly detailed, 4k';\nconst negativePrompt = input.body?.negative_prompt || input.negative_prompt || 'blurry, low quality, distorted';\nconst seed = input.body?.seed || input.seed || Math.floor(Math.random() * 1000000000);\nconst steps = input.body?.steps || input.steps || 20;\nconst cfg = input.body?.cfg || input.cfg || 7;\nconst width = input.body?.width || input.width || 512;\nconst height = input.body?.height || input.height || 512;\n\n// ComfyUI API workflow format\n// This is a basic txt2img workflow - customize as needed\nconst comfyWorkflow = {\n  &quot;3&quot;: {\n    &quot;inputs&quot;: {\n      &quot;seed&quot;: seed,\n      &quot;steps&quot;: steps,\n      &quot;cfg&quot;: cfg,\n      &quot;sampler_name&quot;: &quot;euler&quot;,\n      &quot;scheduler&quot;: &quot;normal&quot;,\n      &quot;denoise&quot;: 1,\n      &quot;model&quot;: [&quot;4&quot;, 0],\n      &quot;positive&quot;: [&quot;6&quot;, 0],\n      &quot;negative&quot;: [&quot;7&quot;, 0],\n      &quot;latent_image&quot;: [&quot;5&quot;, 0]\n    },\n    &quot;class_type&quot;: &quot;KSampler&quot;,\n    &quot;_meta&quot;: { &quot;title&quot;: &quot;KSampler&quot; }\n  },\n  &quot;4&quot;: {\n    &quot;inputs&quot;: {\n      &quot;ckpt_name&quot;: &quot;v1-5-pruned-emaonly.safetensors&quot;\n    },\n    &quot;class_type&quot;: &quot;CheckpointLoaderSimple&quot;,\n    &quot;_meta&quot;: { &quot;title&quot;: &quot;Load Checkpoint&quot; }\n  },\n  &quot;5&quot;: {\n    &quot;inputs&quot;: {\n      &quot;width&quot;: width,\n      &quot;height&quot;: height,\n      &quot;batch_size&quot;: 1\n    },\n    &quot;class_type&quot;: &quot;EmptyLatentImage&quot;,\n    &quot;_meta&quot;: { &quot;title&quot;: &quot;Empty Latent Image&quot; }\n  },\n  &quot;6&quot;: {\n    &quot;inputs&quot;: {\n      &quot;text&quot;: prompt,\n      &quot;clip&quot;: [&quot;4&quot;, 1]\n    },\n    &quot;class_type&quot;: &quot;CLIPTextEncode&quot;,\n    &quot;_meta&quot;: { &quot;title&quot;: &quot;CLIP Text Encode (Positive)&quot; }\n  },\n  &quot;7&quot;: {\n    &quot;inputs&quot;: {\n      &quot;text&quot;: negativePrompt,\n      &quot;clip&quot;: [&quot;4&quot;, 1]\n    },\n    &quot;class_type&quot;: &quot;CLIPTextEncode&quot;,\n    &quot;_meta&quot;: { &quot;title&quot;: &quot;CLIP Text Encode (Negative)&quot; }\n  },\n  &quot;8&quot;: {\n    &quot;inputs&quot;: {\n      &quot;samples&quot;: [&quot;3&quot;, 0],\n      &quot;vae&quot;: [&quot;4&quot;, 2]\n    },\n    &quot;class_type&quot;: &quot;VAEDecode&quot;,\n    &quot;_meta&quot;: { &quot;title&quot;: &quot;VAE Decode&quot; }\n  },\n  &quot;9&quot;: {\n    &quot;inputs&quot;: {\n      &quot;filename_prefix&quot;: &quot;n8n_generated&quot;,\n      &quot;images&quot;: [&quot;8&quot;, 0]\n    },\n    &quot;class_type&quot;: &quot;SaveImage&quot;,\n    &quot;_meta&quot;: { &quot;title&quot;: &quot;Save Image&quot; }\n  }\n};\n\nreturn {\n  json: {\n    prompt: comfyWorkflow,\n    original_prompt: prompt,\n    negative_prompt: negativePrompt,\n    seed: seed,\n    steps: steps,\n    cfg: cfg,\n    width: width,\n    height: height\n  }\n};"
      },
      "id": "prepare-workflow",
      "name": "Prepare ComfyUI Workflow",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [470, 300]
    },
    {
      "parameters": {
        "method": "POST",
        "url": "http://comfyui:8188/prompt",
        "sendBody": true,
        "specifyBody": "json",
        "jsonBody": "={{ JSON.stringify({ prompt: $json.prompt }) }}",
        "options": {}
      },
      "id": "submit-to-comfyui",
      "name": "Submit to ComfyUI",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [690, 300]
    },
    {
      "parameters": {
        "jsCode": "const response = $input.first().json;\nconst promptId = response.prompt_id;\n\nif (!promptId) {\n  throw new Error('No prompt_id received from ComfyUI');\n}\n\nreturn {\n  json: {\n    prompt_id: promptId,\n    status: 'queued',\n    check_count: 0,\n    max_checks: 60,\n    ...$input.first().json\n  }\n};"
      },
      "id": "extract-prompt-id",
      "name": "Extract Prompt ID",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [910, 300]
    },
    {
      "parameters": {
        "amount": 2,
        "unit": "seconds"
      },
      "id": "wait-node",
      "name": "Wait 2 Seconds",
      "type": "n8n-nodes-base.wait",
      "typeVersion": 1.1,
      "position": [1130, 300],
      "webhookId": "wait-resume"
    },
    {
      "parameters": {
        "url": "=http://comfyui:8188/history/{{ $json.prompt_id }}",
        "options": {}
      },
      "id": "check-history",
      "name": "Check Generation Status",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [1350, 300]
    },
    {
      "parameters": {
        "jsCode": "const input = $input.first().json;\nconst promptId = $('Extract Prompt ID').first().json.prompt_id;\nconst historyData = input;\n\n// Check if our prompt_id exists in history and has outputs\nconst promptHistory = historyData[promptId];\n\nif (promptHistory && promptHistory.outputs) {\n  // Find the SaveImage node output (node 9 in our workflow)\n  const outputs = promptHistory.outputs;\n  let images = [];\n  \n  for (const nodeId in outputs) {\n    if (outputs[nodeId].images) {\n      images = images.concat(outputs[nodeId].images);\n    }\n  }\n  \n  if (images.length > 0) {\n    return {\n      json: {\n        status: 'completed',\n        prompt_id: promptId,\n        images: images,\n        image_urls: images.map(img => \n          `http://comfyui:8188/view?filename=${img.filename}&subfolder=${img.subfolder || ''}&type=${img.type || 'output'}`\n        ),\n        original_prompt: $('Extract Prompt ID').first().json.original_prompt,\n        generation_params: {\n          seed: $('Extract Prompt ID').first().json.seed,\n          steps: $('Extract Prompt ID').first().json.steps,\n          cfg: $('Extract Prompt ID').first().json.cfg\n        }\n      }\n    };\n  }\n}\n\n// Not ready yet - increment check count\nconst checkCount = ($('Extract Prompt ID').first().json.check_count || 0) + 1;\nconst maxChecks = $('Extract Prompt ID').first().json.max_checks || 60;\n\nif (checkCount >= maxChecks) {\n  throw new Error(`Generation timed out after ${maxChecks} checks`);\n}\n\nreturn {\n  json: {\n    status: 'pending',\n    prompt_id: promptId,\n    check_count: checkCount,\n    max_checks: maxChecks,\n    original_prompt: $('Extract Prompt ID').first().json.original_prompt,\n    seed: $('Extract Prompt ID').first().json.seed,\n    steps: $('Extract Prompt ID').first().json.steps,\n    cfg: $('Extract Prompt ID').first().json.cfg\n  }\n};"
      },
      "id": "check-completion",
      "name": "Check if Complete",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [1570, 300]
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "strict"
          },
          "conditions": [
            {
              "id": "condition-complete",
              "leftValue": "={{ $json.status }}",
              "rightValue": "completed",
              "operator": {
                "type": "string",
                "operation": "equals"
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "id": "if-complete",
      "name": "Generation Complete?",
      "type": "n8n-nodes-base.if",
      "typeVersion": 2,
      "position": [1790, 300]
    },
    {
      "parameters": {
        "respondWith": "json",
        "responseBody": "={{ JSON.stringify($json) }}",
        "options": {}
      },
      "id": "respond-success",
      "name": "Respond with Image",
      "type": "n8n-nodes-base.respondToWebhook",
      "typeVersion": 1.1,
      "position": [2050, 200]
    },
    {
      "parameters": {
        "amount": 2,
        "unit": "seconds"
      },
      "id": "wait-retry",
      "name": "Wait and Retry",
      "type": "n8n-nodes-base.wait",
      "typeVersion": 1.1,
      "position": [2050, 400],
      "webhookId": "wait-retry-resume"
    },
    {
      "parameters": {
        "respondWith": "json",
        "responseBody": "={{ JSON.stringify({ error: 'Generation failed', details: $json }) }}",
        "options": {
          "responseCode": 500
        }
      },
      "id": "respond-error",
      "name": "Respond with Error",
      "type": "n8n-nodes-base.respondToWebhook",
      "typeVersion": 1.1,
      "position": [2270, 500]
    },
    {
      "parameters": {},
      "id": "no-op",
      "name": "No Operation",
      "type": "n8n-nodes-base.noOp",
      "typeVersion": 1,
      "position": [2270, 400]
    }
  ],
  "connections": {
    "Webhook Trigger": {
      "main": [
        [
          {
            "node": "Prepare ComfyUI Workflow",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Prepare ComfyUI Workflow": {
      "main": [
        [
          {
            "node": "Submit to ComfyUI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Submit to ComfyUI": {
      "main": [
        [
          {
            "node": "Extract Prompt ID",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Prompt ID": {
      "main": [
        [
          {
            "node": "Wait 2 Seconds",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait 2 Seconds": {
      "main": [
        [
          {
            "node": "Check Generation Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Generation Status": {
      "main": [
        [
          {
            "node": "Check if Complete",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check if Complete": {
      "main": [
        [
          {
            "node": "Generation Complete?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generation Complete?": {
      "main": [
        [
          {
            "node": "Respond with Image",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Wait and Retry",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait and Retry": {
      "main": [
        [
          {
            "node": "Check Generation Status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  },
  "staticData": null,
  "meta": {
    "templateCredsSetupCompleted": true,
    "instanceId": "ai-stack-comfyui-workflow"
  },
  "pinData": {},
  "versionId": "1",
  "triggerCount": 0,
  "tags": [
    {
      "name": "ComfyUI",
      "id": "1"
    },
    {
      "name": "Image Generation",
      "id": "2"
    },
    {
      "name": "AI Stack",
      "id": "3"
    }
  ]
}

================================================
FILE: ai-stack/workflows/comfyui-simple-test.json
================================================
{
  "name": "ComfyUI Simple Test",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "GET",
        "path": "comfyui-status",
        "responseMode": "responseNode",
        "options": {}
      },
      "id": "webhook-status",
      "name": "Status Check Webhook",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [250, 300],
      "webhookId": "comfyui-status"
    },
    {
      "parameters": {
        "url": "http://comfyui:8188/system_stats",
        "options": {}
      },
      "id": "get-system-stats",
      "name": "Get ComfyUI Stats",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [470, 300]
    },
    {
      "parameters": {
        "url": "http://comfyui:8188/object_info",
        "options": {}
      },
      "id": "get-object-info",
      "name": "Get Available Nodes",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [470, 480]
    },
    {
      "parameters": {
        "jsCode": "const stats = $('Get ComfyUI Stats').first().json;\nconst nodeCount = Object.keys($('Get Available Nodes').first().json || {}).length;\n\nreturn {\n  json: {\n    status: 'connected',\n    comfyui: {\n      system_stats: stats,\n      available_nodes: nodeCount,\n      endpoints: {\n        prompt: 'POST http://comfyui:8188/prompt',\n        history: 'GET http://comfyui:8188/history/{prompt_id}',\n        queue: 'GET http://comfyui:8188/queue',\n        system_stats: 'GET http://comfyui:8188/system_stats',\n        view_image: 'GET http://comfyui:8188/view?filename={name}&type=output'\n      }\n    },\n    message: 'ComfyUI is running and accessible from n8n!'\n  }\n};"
      },
      "id": "format-response",
      "name": "Format Response",
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [690, 380]
    },
    {
      "parameters": {
        "respondWith": "json",
        "responseBody": "={{ JSON.stringify($json, null, 2) }}",
        "options": {}
      },
      "id": "respond",
      "name": "Respond",
      "type": "n8n-nodes-base.respondToWebhook",
      "typeVersion": 1.1,
      "position": [910, 380]
    }
  ],
  "connections": {
    "Status Check Webhook": {
      "main": [
        [
          {
            "node": "Get ComfyUI Stats",
            "type": "main",
            "index": 0
          },
          {
            "node": "Get Available Nodes",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get ComfyUI Stats": {
      "main": [
        [
          {
            "node": "Format Response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Available Nodes": {
      "main": [
        [
          {
            "node": "Format Response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Format Response": {
      "main": [
        [
          {
            "node": "Respond",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  },
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "tags": [
    {
      "name": "ComfyUI",
      "id": "1"
    },
    {
      "name": "Test",
      "id": "2"
    }
  ]
}

================================================
FILE: api_server.py
================================================
#!/usr/bin/env python3
"""
FastAPI Server for N8N Workflow Documentation
High-performance API with sub-100ms response times.
"""

from fastapi import FastAPI, HTTPException, Query, BackgroundTasks, Request
from fastapi.staticfiles import StaticFiles
from fastapi.responses import HTMLResponse, FileResponse, JSONResponse
from fastapi.middleware.cors import CORSMiddleware
from fastapi.middleware.gzip import GZipMiddleware
from pydantic import BaseModel, field_validator
from typing import Optional, List, Dict, Any
import json
import os
import re
import urllib.parse
from pathlib import Path
import uvicorn
import time
from collections import defaultdict

from workflow_db import WorkflowDatabase

# Initialize FastAPI app
app = FastAPI(
    title="N8N Workflow Documentation API",
    description="Fast API for browsing and searching workflow documentation",
    version="2.0.0",
)

# Security: Rate limiting storage
rate_limit_storage = defaultdict(list)
MAX_REQUESTS_PER_MINUTE = 60  # Configure as needed

# Add middleware for performance
app.add_middleware(GZipMiddleware, minimum_size=1000)

# Security: Configure CORS properly - restrict origins in production
# For local development, you can use localhost
# For production, replace with your actual domain
ALLOWED_ORIGINS = [
    "http://localhost:3000",
    "http://localhost:8000",
    "http://localhost:8080",
    "https://zie619.github.io",  # GitHub Pages
    "https://n8n-workflows-1-xxgm.onrender.com",  # Community deployment
]

app.add_middleware(
    CORSMiddleware,
    allow_origins=ALLOWED_ORIGINS,  # Security fix: Restrict origins
    allow_credentials=True,
    allow_methods=["GET", "POST"],  # Security fix: Only allow needed methods
    allow_headers=["Content-Type", "Authorization"],  # Security fix: Restrict headers
)

# Initialize database
db = WorkflowDatabase()


# Security: Helper function for rate limiting
def check_rate_limit(client_ip: str) -> bool:
    """Check if client has exceeded rate limit."""
    current_time = time.time()
    # Clean old entries
    rate_limit_storage[client_ip] = [
        timestamp
        for timestamp in rate_limit_storage[client_ip]
        if current_time - timestamp < 60
    ]
    # Check rate limit
    if len(rate_limit_storage[client_ip]) >= MAX_REQUESTS_PER_MINUTE:
        return False
    # Add current request
    rate_limit_storage[client_ip].append(current_time)
    return True


# Security: Helper function to validate and sanitize filenames
def validate_filename(filename: str) -> bool:
    """
    Validate filename to prevent path traversal attacks.
    Returns True if filename is safe, False otherwise.
    """
    # Decode URL encoding multiple times to catch encoded traversal attempts
    decoded = filename
    for _ in range(3):  # Decode up to 3 times to catch nested encodings
        try:
            decoded = urllib.parse.unquote(decoded, errors="strict")
        except:
            return False  # Invalid encoding

    # Check for path traversal patterns
    dangerous_patterns = [
        "..",  # Parent directory
        "..\\",  # Windows parent directory
        "../",  # Unix parent directory
        "\\",  # Backslash (Windows path separator)
        "/",  # Forward slash (Unix path separator)
        "\x00",  # Null byte
        "\n",
        "\r",  # Newlines
        "~",  # Home directory
        ":",  # Drive letter or stream (Windows)
        "|",
        "<",
        ">",  # Shell redirection
        "*",
        "?",  # Wildcards
        "$",  # Variable expansion
        ";",
        "&",  # Command separators
    ]

    for pattern in dangerous_patterns:
        if pattern in decoded:
            return False

    # Check for absolute paths
    if decoded.startswith("/") or decoded.startswith("\\"):
        return False

    # Check for Windows drive letters
    if len(decoded) >= 2 and decoded[1] == ":":
        return False

    # Only allow alphanumeric, dash, underscore, and .json extension
    if not re.match(r"^[a-zA-Z0-9_\-]+\.json$", decoded):
        return False

    # Additional check: filename should end with .json
    if not decoded.endswith(".json"):
        return False

    return True


# Startup function to verify database
@app.on_event("startup")
async def startup_event():
    """Verify database connectivity on startup."""
    try:
        stats = db.get_stats()
        if stats["total"] == 0:
            print("⚠️  Warning: No workflows found in database. Run indexing first.")
        else:
            print(f"✅ Database connected: {stats['total']} workflows indexed")
    except Exception as e:
        print(f"❌ Database connection failed: {e}")
        raise


# Response models
class WorkflowSummary(BaseModel):
    id: Optional[int] = None
    filename: str
    name: str
    active: bool
    description: str = ""
    trigger_type: str = "Manual"
    complexity: str = "low"
    node_count: int = 0
    integrations: List[str] = []
    tags: List[str] = []
    created_at: Optional[str] = None
    updated_at: Optional[str] = None

    class Config:
        # Allow conversion of int to bool for active field
        validate_assignment = True

    @field_validator("active", mode="before")
    @classmethod
    def convert_active(cls, v):
        if isinstance(v, int):
            return bool(v)
        return v


class SearchResponse(BaseModel):
    workflows: List[WorkflowSummary]
    total: int
    page: int
    per_page: int
    pages: int
    query: str
    filters: Dict[str, Any]


class StatsResponse(BaseModel):
    total: int
    active: int
    inactive: int
    triggers: Dict[str, int]
    complexity: Dict[str, int]
    total_nodes: int
    unique_integrations: int
    last_indexed: str


@app.get("/")
async def root():
    """Serve the main documentation page."""
    static_dir = Path("static")
    index_file = static_dir / "index.html"
    if not index_file.exists():
        return HTMLResponse(
            """
        <html><body>
        <h1>Setup Required</h1>
        <p>Static files not found. Please ensure the static directory exists with index.html</p>
        <p>Current directory: """
            + str(Path.cwd())
            + """</p>
        </body></html>
        """
        )
    return FileResponse(str(index_file))


@app.get("/health")
async def health_check():
    """Health check endpoint."""
    return {"status": "healthy", "message": "N8N Workflow API is running"}


@app.get("/api/stats", response_model=StatsResponse)
async def get_stats():
    """Get workflow database statistics."""
    try:
        stats = db.get_stats()
        return StatsResponse(**stats)
    except Exception as e:
        raise HTTPException(status_code=500, detail=f"Error fetching stats: {str(e)}")


@app.get("/api/workflows", response_model=SearchResponse)
async def search_workflows(
    q: str = Query("", description="Search query"),
    trigger: str = Query("all", description="Filter by trigger type"),
    complexity: str = Query("all", description="Filter by complexity"),
    active_only: bool = Query(False, description="Show only active workflows"),
    page: int = Query(1, ge=1, description="Page number"),
    per_page: int = Query(20, ge=1, le=100, description="Items per page"),
):
    """Search and filter workflows with pagination."""
    try:
        offset = (page - 1) * per_page

        workflows, total = db.search_workflows(
            query=q,
            trigger_filter=trigger,
            complexity_filter=complexity,
            active_only=active_only,
            limit=per_page,
            offset=offset,
        )

        # Convert to Pydantic models with error handling
        workflow_summaries = []
        for workflow in workflows:
            try:
                # Remove extra fields that aren't in the model
                clean_workflow = {
                    "id": workflow.get("id"),
                    "filename": workflow.get("filename", ""),
                    "name": workflow.get("name", ""),
                    "active": workflow.get("active", False),
                    "description": workflow.get("description", ""),
                    "trigger_type": workflow.get("trigger_type", "Manual"),
                    "complexity": workflow.get("complexity", "low"),
                    "node_count": workflow.get("node_count", 0),
                    "integrations": workflow.get("integrations", []),
                    "tags": workflow.get("tags", []),
                    "created_at": workflow.get("created_at"),
                    "updated_at": workflow.get("updated_at"),
                }
                workflow_summaries.append(WorkflowSummary(**clean_workflow))
            except Exception as e:
                print(
                    f"Error converting workflow {workflow.get('filename', 'unknown')}: {e}"
                )
                # Continue with other workflows instead of failing completely
                continue

        pages = (total + per_page - 1) // per_page  # Ceiling division

        return SearchResponse(
            workflows=workflow_summaries,
            total=total,
            page=page,
            per_page=per_page,
            pages=pages,
            query=q,
            filters={
                "trigger": trigger,
                "complexity": complexity,
                "active_only": active_only,
            },
        )
    except Exception as e:
        raise HTTPException(
            status_code=500, detail=f"Error searching workflows: {str(e)}"
        )


@app.get("/api/workflows/{filename}")
async def get_workflow_detail(filename: str, request: Request):
    """Get detailed workflow information including raw JSON."""
    try:
        # Security: Validate filename to prevent path traversal
        if not validate_filename(filename):
            print(f"Security: Blocked path traversal attempt for filename: {filename}")
            raise HTTPException(status_code=400, detail="Invalid filename format")

        # Security: Rate limiting
        client_ip = request.client.host if request.client else "unknown"
        if not check_rate_limit(client_ip):
            raise HTTPException(
                status_code=429, detail="Rate limit exceeded. Please try again later."
            )

        # Get workflow metadata from database
        workflows, _ = db.search_workflows(f'filename:"{filename}"', limit=1)
        if not workflows:
            raise HTTPException(
                status_code=404, detail="Workflow not found in database"
            )

        workflow_meta = workflows[0]

        # Load raw JSON from file with security checks
        workflows_path = Path("workflows").resolve()

        # Find the file safely
        matching_file = None
        for subdir in workflows_path.iterdir():
            if subdir.is_dir():
                target_file = subdir / filename
                if target_file.exists() and target_file.is_file():
                    # Verify the file is actually within workflows directory
                    try:
                        target_file.resolve().relative_to(workflows_path)
                        matching_file = target_file
                        break
                    except ValueError:
                        print(
                            f"Security: Blocked access to file outside workflows: {target_file}"
                        )
                        continue

        if not matching_file:
            print(f"Warning: File {filename} not found in workflows directory")
            raise HTTPException(
                status_code=404,
                detail=f"Workflow file '{filename}' not found on filesystem",
            )

        with open(matching_file, "r", encoding="utf-8") as f:
            raw_json = json.load(f)

        return {"metadata": workflow_meta, "raw_json": raw_json}
    except HTTPException:
        raise
    except Exception as e:
        raise HTTPException(status_code=500, detail=f"Error loading workflow: {str(e)}")


@app.get("/api/workflows/{filename}/download")
async def download_workflow(filename: str, request: Request):
    """Download workflow JSON file with security validation."""
    try:
        # Security: Validate filename to prevent path traversal
        if not validate_filename(filename):
            print(f"Security: Blocked path traversal attempt for filename: {filename}")
            raise HTTPException(status_code=400, detail="Invalid filename format")

        # Security: Rate limiting
        client_ip = request.client.host if request.client else "unknown"
        if not check_rate_limit(client_ip):
            raise HTTPException(
                status_code=429, detail="Rate limit exceeded. Please try again later."
            )

        # Only search within the workflows directory
        workflows_path = Path("workflows").resolve()  # Get absolute path

        # Find the file safely
        json_files = []
        for subdir in workflows_path.iterdir():
            if subdir.is_dir():
                target_file = subdir / filename
                if target_file.exists() and target_file.is_file():
                    # Verify the file is actually within workflows directory (defense in depth)
                    try:
                        target_file.resolve().relative_to(workflows_path)
                        json_files.append(target_file)
                    except ValueError:
                        # File is outside workflows directory
                        print(
                            f"Security: Blocked access to file outside workflows: {target_file}"
                        )
                        continue

        if not json_files:
            print(f"File {filename} not found in workflows directory")
            raise HTTPException(
                status_code=404, detail=f"Workflow file '{filename}' not found"
            )

        file_path = json_files[0]

        # Final security check: Ensure file is within workflows directory
        try:
            file_path.resolve().relative_to(workflows_path)
        except ValueError:
            print(
                f"Security: Blocked final attempt to access file outside workflows: {file_path}"
            )
            raise HTTPException(status_code=403, detail="Access denied")

        return FileResponse(
            str(file_path), media_type="application/json", filename=filename
        )
    except HTTPException:
        raise
    except Exception as e:
        print(f"Error downloading workflow {filename}: {str(e)}")
        raise HTTPException(
            status_code=500, detail=f"Error downloading workflow: {str(e)}"
        )


@app.get("/api/workflows/{filename}/diagram")
async def get_workflow_diagram(filename: str, request: Request):
    """Get Mermaid diagram code for workflow visualization."""
    try:
        # Security: Validate filename to prevent path traversal
        if not validate_filename(filename):
            print(f"Security: Blocked path traversal attempt for filename: {filename}")
            raise HTTPException(status_code=400, detail="Invalid filename format")

        # Security: Rate limiting
        client_ip = request.client.host if request.client else "unknown"
        if not check_rate_limit(client_ip):
            raise HTTPException(
                status_code=429, detail="Rate limit exceeded. Please try again later."
            )

        # Only search within the workflows directory
        workflows_path = Path("workflows").resolve()

        # Find the file safely
        matching_file = None
        for subdir in workflows_path.iterdir():
            if subdir.is_dir():
                target_file = subdir / filename
                if target_file.exists() and target_file.is_file():
                    # Verify the file is actually within workflows directory
                    try:
                        target_file.resolve().relative_to(workflows_path)
                        matching_file = target_file
                        break
                    except ValueError:
                        print(
                            f"Security: Blocked access to file outside workflows: {target_file}"
                        )
                        continue

        if not matching_file:
            print(f"Warning: File {filename} not found in workflows directory")
            raise HTTPException(
                status_code=404,
                detail=f"Workflow file '{filename}' not found on filesystem",
            )

        with open(matching_file, "r", encoding="utf-8") as f:
            data = json.load(f)

        nodes = data.get("nodes", [])
        connections = data.get("connections", {})

        # Generate Mermaid diagram
        diagram = generate_mermaid_diagram(nodes, connections)

        return {"diagram": diagram}
    except HTTPException:
        raise
    except json.JSONDecodeError as e:
        print(f"Error parsing JSON in {filename}: {str(e)}")
        raise HTTPException(
            status_code=400, detail=f"Invalid JSON in workflow file: {str(e)}"
        )
    except Exception as e:
        print(f"Error generating diagram for {filename}: {str(e)}")
        raise HTTPException(
            status_code=500, detail=f"Error generating diagram: {str(e)}"
        )


def generate_mermaid_diagram(nodes: List[Dict], connections: Dict) -> str:
    """Generate Mermaid.js flowchart code from workflow nodes and connections."""
    if not nodes:
        return "graph TD\n  EmptyWorkflow[No nodes found in workflow]"

    # Create mapping for node names to ensure valid mermaid IDs
    mermaid_ids = {}
    for i, node in enumerate(nodes):
        node_id = f"node{i}"
        node_name = node.get("name", f"Node {i}")
        mermaid_ids[node_name] = node_id

    # Start building the mermaid diagram
    mermaid_code = ["graph TD"]

    # Add nodes with styling
    for node in nodes:
        node_name = node.get("name", "Unnamed")
        node_id = mermaid_ids[node_name]
        node_type = node.get("type", "").replace("n8n-nodes-base.", "")

        # Determine node style based on type
        style = ""
        if any(x in node_type.lower() for x in ["trigger", "webhook", "cron"]):
            style = "fill:#b3e0ff,stroke:#0066cc"  # Blue for triggers
        elif any(x in node_type.lower() for x in ["if", "switch"]):
            style = "fill:#ffffb3,stroke:#e6e600"  # Yellow for conditional nodes
        elif any(x in node_type.lower() for x in ["function", "code"]):
            style = "fill:#d9b3ff,stroke:#6600cc"  # Purple for code nodes
        elif "error" in node_type.lower():
            style = "fill:#ffb3b3,stroke:#cc0000"  # Red for error handlers
        else:
            style = "fill:#d9d9d9,stroke:#666666"  # Gray for other nodes

        # Add node with label (escaping special characters)
        clean_name = node_name.replace('"', "'")
        clean_type = node_type.replace('"', "'")
        label = f"{clean_name}<br>({clean_type})"
        mermaid_code.append(f'  {node_id}["{label}"]')
        mermaid_code.append(f"  style {node_id} {style}")

    # Add connections between nodes
    for source_name, source_connections in connections.items():
        if source_name not in mermaid_ids:
            continue

        if isinstance(source_connections, dict) and "main" in source_connections:
            main_connections = source_connections["main"]

            for i, output_connections in enumerate(main_connections):
                if not isinstance(output_connections, list):
                    continue

                for connection in output_connections:
                    if not isinstance(connection, dict) or "node" not in connection:
                        continue

                    target_name = connection["node"]
                    if target_name not in mermaid_ids:
                        continue

                    # Add arrow with output index if multiple outputs
                    label = f" -->|{i}| " if len(main_connections) > 1 else " --> "
                    mermaid_code.append(
                        f"  {mermaid_ids[source_name]}{label}{mermaid_ids[target_name]}"
                    )

    # Format the final mermaid diagram code
    return "\n".join(mermaid_code)


@app.post("/api/reindex")
async def reindex_workflows(
    background_tasks: BackgroundTasks,
    request: Request,
    force: bool = False,
    admin_token: Optional[str] = Query(None, description="Admin authentication token"),
):
    """Trigger workflow reindexing in the background (requires authentication)."""
    # Security: Rate limiting
    client_ip = request.client.host if request.client else "unknown"
    if not check_rate_limit(client_ip):
        raise HTTPException(
            status_code=429, detail="Rate limit exceeded. Please try again later."
        )

    # Security: Basic authentication check
    # In production, use proper authentication (JWT, OAuth, etc.)
    # For now, check for environment variable or disable endpoint

    expected_token = os.environ.get("ADMIN_TOKEN", None)

    if not expected_token:
        # If no token is configured, disable the endpoint for security
        raise HTTPException(
            status_code=503,
            detail="Reindexing endpoint is disabled. Set ADMIN_TOKEN environment variable to enable.",
        )

    if admin_token != expected_token:
        print(f"Security: Unauthorized reindex attempt from {client_ip}")
        raise HTTPException(status_code=401, detail="Invalid authentication token")

    def run_indexing():
        try:
            db.index_all_workflows(force_reindex=force)
            print(f"Reindexing completed successfully (requested by {client_ip})")
        except Exception as e:
            print(f"Error during reindexing: {e}")

    background_tasks.add_task(run_indexing)
    return {"message": "Reindexing started in background", "requested_by": client_ip}


@app.get("/api/integrations")
async def get_integrations():
    """Get list of all unique integrations."""
    try:
        stats = db.get_stats()
        # For now, return basic info. Could be enhanced to return detailed integration stats
        return {"integrations": [], "count": stats["unique_integrations"]}
    except Exception as e:
        raise HTTPException(
            status_code=500, detail=f"Error fetching integrations: {str(e)}"
        )


@app.get("/api/categories")
async def get_categories():
    """Get available workflow categories for filtering."""
    try:
        # Try to load from the generated unique categories file
        categories_file = Path("context/unique_categories.json")
        if categories_file.exists():
            with open(categories_file, "r", encoding="utf-8") as f:
                categories = json.load(f)
            return {"categories": categories}
        else:
            # Fallback: extract categories from search_categories.json
            search_categories_file = Path("context/search_categories.json")
            if search_categories_file.exists():
                with open(search_categories_file, "r", encoding="utf-8") as f:
                    search_data = json.load(f)

                unique_categories = set()
                for item in search_data:
                    if item.get("category"):
                        unique_categories.add(item["category"])
                    else:
                        unique_categories.add("Uncategorized")

                categories = sorted(list(unique_categories))
                return {"categories": categories}
            else:
                # Last resort: return basic categories
                return {"categories": ["Uncategorized"]}

    except Exception as e:
        print(f"Error loading categories: {e}")
        raise HTTPException(
            status_code=500, detail=f"Error fetching categories: {str(e)}"
        )


@app.get("/api/category-mappings")
async def get_category_mappings():
    """Get filename to category mappings for client-side filtering."""
    try:
        search_categories_file = Path("context/search_categories.json")
        if not search_categories_file.exists():
            return {"mappings": {}}

        with open(search_categories_file, "r", encoding="utf-8") as f:
            search_data = json.load(f)

        # Convert to a simple filename -> category mapping
        mappings = {}
        for item in search_data:
            filename = item.get("filename")
            category = item.get("category") or "Uncategorized"
            if filename:
                mappings[filename] = category

        return {"mappings": mappings}

    except Exception as e:
        print(f"Error loading category mappings: {e}")
        raise HTTPException(
            status_code=500, detail=f"Error fetching category mappings: {str(e)}"
        )


@app.get("/api/workflows/category/{category}", response_model=SearchResponse)
async def search_workflows_by_category(
    category: str,
    page: int = Query(1, ge=1, description="Page number"),
    per_page: int = Query(20, ge=1, le=100, description="Items per page"),
):
    """Search workflows by service category (messaging, database, ai_ml, etc.)."""
    try:
        offset = (page - 1) * per_page

        workflows, total = db.search_by_category(
            category=category, limit=per_page, offset=offset
        )

        # Convert to Pydantic models with error handling
        workflow_summaries = []
        for workflow in workflows:
            try:
                clean_workflow = {
                    "id": workflow.get("id"),
                    "filename": workflow.get("filename", ""),
                    "name": workflow.get("name", ""),
                    "active": workflow.get("active", False),
                    "description": workflow.get("description", ""),
                    "trigger_type": workflow.get("trigger_type", "Manual"),
                    "complexity": workflow.get("complexity", "low"),
                    "node_count": workflow.get("node_count", 0),
                    "integrations": workflow.get("integrations", []),
                    "tags": workflow.get("tags", []),
                    "created_at": workflow.get("created_at"),
                    "updated_at": workflow.get("updated_at"),
                }
                workflow_summaries.append(WorkflowSummary(**clean_workflow))
            except Exception as e:
                print(
                    f"Error converting workflow {workflow.get('filename', 'unknown')}: {e}"
                )
                continue

        pages = (total + per_page - 1) // per_page

        return SearchResponse(
            workflows=workflow_summaries,
            total=total,
            page=page,
            per_page=per_page,
            pages=pages,
            query=f"category:{category}",
            filters={"category": category},
        )
    except Exception as e:
        raise HTTPException(
            status_code=500, detail=f"Error searching by category: {str(e)}"
        )


# Custom exception handler for better error responses
@app.exception_handler(Exception)
async def global_exception_handler(request, exc):
    return JSONResponse(
        status_code=500, content={"detail": f"Internal server error: {str(exc)}"}
    )


# Mount static files AFTER all routes are defined
static_dir = Path("static")
if static_dir.exists():
    app.mount("/static", StaticFiles(directory="static"), name="static")
    print(f"✅ Static files mounted from {static_dir.absolute()}")
else:
    print(f"❌ Warning: Static directory not found at {static_dir.absolute()}")


def create_static_directory():
    """Create static directory if it doesn't exist."""
    static_dir = Path("static")
    static_dir.mkdir(exist_ok=True)
    return static_dir


def run_server(host: str = "127.0.0.1", port: int = 8000, reload: bool = False):
    """Run the FastAPI server."""
    # Ensure static directory exists
    create_static_directory()

    # Debug: Check database connectivity
    try:
        stats = db.get_stats()
        print(f"✅ Database connected: {stats['total']} workflows found")
        if stats["total"] == 0:
            print("🔄 Database is empty. Indexing workflows...")
            db.index_all_workflows()
            stats = db.get_stats()
    except Exception as e:
        print(f"❌ Database error: {e}")
        print("🔄 Attempting to create and index database...")
        try:
            db.index_all_workflows()
            stats = db.get_stats()
            print(f"✅ Database created: {stats['total']} workflows indexed")
        except Exception as e2:
            print(f"❌ Failed to create database: {e2}")
            stats = {"total": 0}

    # Debug: Check static files
    static_path = Path("static")
    if static_path.exists():
        files = list(static_path.glob("*"))
        print(f"✅ Static files found: {[f.name for f in files]}")
    else:
        print(f"❌ Static directory not found at: {static_path.absolute()}")

    print("🚀 Starting N8N Workflow Documentation API")
    print(f"📊 Database contains {stats['total']} workflows")
    print(f"🌐 Server will be available at: http://{host}:{port}")
    print(f"📁 Static files at: http://{host}:{port}/static/")

    uvicorn.run(
        "api_server:app",
        host=host,
        port=port,
        reload=reload,
        access_log=True,  # Enable access logs for debugging
        log_level="info",
    )


if __name__ == "__main__":
    import argparse

    parser = argparse.ArgumentParser(
        description="N8N Workflow Documentation API Server"
    )
    parser.add_argument("--host", default="127.0.0.1", help="Host to bind to")
    parser.add_argument("--port", type=int, default=8000, help="Port to bind to")
    parser.add_argument(
        "--reload", action="store_true", help="Enable auto-reload for development"
    )

    args = parser.parse_args()

    run_server(host=args.host, port=args.port, reload=args.reload)


================================================
FILE: context/def_categories.json
================================================
[
    {
      "integration": "APITemplate.io",
      "category": "Creative Design Automation"
    },
    {
      "integration": "AWS Transcribe",
      "category": "AI Agent Development"
    },
    {
      "integration": "AWSComprehend",
      "category": "AI Agent Development"
    },
    {
      "integration": "AWSLambda",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "AWSRekognition",
      "category": "AI Agent Development"
    },
    {
      "integration": "AWSS3",
      "category": "Cloud Storage & File Management"
    },
    {
      "integration": "AWSSES",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "AWSSNS",
      "category": "Communication & Messaging"
    },
    {
      "integration": "AWSSQS",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "ActiveCampaign",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Affinity",
      "category": "CRM & Sales"
    },
    {
      "integration": "Agent",
      "category": "AI Agent Development"
    },
    {
      "integration": "Airtable",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "Asana",
      "category": "Project Management"
    },
    {
      "integration": "Automizy",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Autopilot",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Bannerbear",
      "category": "Creative Design Automation"
    },
    {
      "integration": "BasicLLMChain",
      "category": "AI Agent Development"
    },
    {
      "integration": "Beeminder",
      "category": "Business Process Automation"
    },
    {
      "integration": "Bitly",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Box",
      "category": "Cloud Storage & File Management"
    },
    {
      "integration": "Brandfetch",
      "category": "Web Scraping & Data Extraction"
    },
    {
      "integration": "ChargeBee",
      "category": "Financial & Accounting"
    },
    {
      "integration": "CircleCI",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "Clearbit",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "ClickUp",
      "category": "Project Management"
    },
    {
      "integration": "Clockify",
      "category": "Business Process Automation"
    },
    {
      "integration": "Cockpit",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "Coda",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "CoinGecko",
      "category": "Financial & Accounting"
    },
    {
      "integration": "Contentful-delivery-api",
      "category": "Creative Content & Video Automation"
    },
    {
      "integration": "Contentful-preview-api",
      "category": "Creative Content & Video Automation"
    },
    {
      "integration": "ConvertKit",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Copper",
      "category": "CRM & Sales"
    },
    {
      "integration": "Cortex",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "CrateDB",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "Customerio",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Date&Time",
      "category": "Business Process Automation"
    },
    {
      "integration": "Deepl",
      "category": "AI Agent Development"
    },
    {
      "integration": "Demio",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Discord",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Discourse",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Disqus",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Drif",
      "category": "Communication & Messaging"
    },
    {
      "integration": "DropBox",
      "category": "Cloud Storage & File Management"
    },
    {
      "integration": "E-goi",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "EditImage",
      "category": "Creative Design Automation"
    },
    {
      "integration": "Emelia",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "ExecuteWorkflow",
      "category": "Business Process Automation"
    },
    {
      "integration": "FTP",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "Flow",
      "category": "Business Process Automation"
    },
    {
      "integration": "FreshDesk",
      "category": "Communication & Messaging"
    },
    {
      "integration": "FunctionItem",
      "category": "Business Process Automation"
    },
    {
      "integration": "GetResponse",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Ghost",
      "category": "Creative Content & Video Automation"
    },
    {
      "integration": "Git",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "GitLab",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "Github",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "Gmail",
      "category": "Communication & Messaging"
    },
    {
      "integration": "GoogleBooks",
      "category": "Web Scraping & Data Extraction"
    },
    {
      "integration": "GoogleCalendar",
      "category": "Business Process Automation"
    },
    {
      "integration": "GoogleCloudFirestore",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "GoogleContacts",
      "category": "CRM & Sales"
    },
    {
      "integration": "GoogleDrive",
      "category": "Cloud Storage & File Management"
    },
    {
      "integration": "GoogleSheets",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "GoogleSlides",
      "category": "Creative Content & Video Automation"
    },
    {
      "integration": "GoogleTask",
      "category": "Project Management"
    },
    {
      "integration": "Gotify",
      "category": "Communication & Messaging"
    },
    {
      "integration": "HTML Extract",
      "category": "Web Scraping & Data Extraction"
    },
    {
      "integration": "HTTP",
      "category": "Web Scraping & Data Extraction"
    },
    {
      "integration": "Hackernews",
      "category": "Web Scraping & Data Extraction"
    },
    {
      "integration": "Harvest",
      "category": "Business Process Automation"
    },
    {
      "integration": "HelpScout",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Hubspot",
      "category": "CRM & Sales"
    },
    {
      "integration": "Hunter",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "InMemoryVectorStore",
      "category": "AI Agent Development"
    },
    {
      "integration": "Intercom",
      "category": "Communication & Messaging"
    },
    {
      "integration": "InvoiceNinja",
      "category": "Financial & Accounting"
    },
    {
      "integration": "Iterable",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Keap",
      "category": "CRM & Sales"
    },
    {
      "integration": "Kitemaker",
      "category": "Project Management"
    },
    {
      "integration": "Lemlist",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Line",
      "category": "Communication & Messaging"
    },
    {
      "integration": "LingvaNex",
      "category": "AI Agent Development"
    },
    {
      "integration": "Linkedin",
      "category": "Social Media Management"
    },
    {
      "integration": "MQTT",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "MailCheck",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Mailchimp",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Mailerlite",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Mailjet",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Mandrill",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Matrix",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Mattermost",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Mautic",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "Medium",
      "category": "Creative Content & Video Automation"
    },
    {
      "integration": "MessageBird",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Microsoft OneDrive",
      "category": "Cloud Storage & File Management"
    },
    {
      "integration": "MicrosoftExcel",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "MicrosoftOutlook",
      "category": "Communication & Messaging"
    },
    {
      "integration": "MicrosoftSQL",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "Mindee",
      "category": "AI Agent Development"
    },
    {
      "integration": "Mocean",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Monday",
      "category": "Project Management"
    },
    {
      "integration": "MongoDB",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "Move Binary Data",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "MySQL",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "NASA",
      "category": "Web Scraping & Data Extraction"
    },
    {
      "integration": "Nested sub-node errors",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "NextCloud",
      "category": "Cloud Storage & File Management"
    },
    {
      "integration": "OpenThesaurus",
      "category": "AI Agent Development"
    },
    {
      "integration": "OpenWeatherMap",
      "category": "Web Scraping & Data Extraction"
    },
    {
      "integration": "Orbit",
      "category": "CRM & Sales"
    },
    {
      "integration": "Paddle",
      "category": "Financial & Accounting"
    },
    {
      "integration": "PagerDuty",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "Paypal",
      "category": "Financial & Accounting"
    },
    {
      "integration": "Peekalink",
      "category": "Web Scraping & Data Extraction"
    },
    {
      "integration": "PhantomBuster",
      "category": "Web Scraping & Data Extraction"
    },
    {
      "integration": "PineconeVectorStore",
      "category": "AI Agent Development"
    },
    {
      "integration": "Pipedrive",
      "category": "CRM & Sales"
    },
    {
      "integration": "PostHog",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "Postgres",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "ProfitWell",
      "category": "Financial & Accounting"
    },
    {
      "integration": "Pushbullet",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Pushover",
      "category": "Communication & Messaging"
    },
    {
      "integration": "QdrantVectorStore",
      "category": "AI Agent Development"
    },
    {
      "integration": "QuestDB",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "QuickBase",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "QuickBooks",
      "category": "Financial & Accounting"
    },
    {
      "integration": "Rabbitmq",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "Raindrop",
      "category": "Business Process Automation"
    },
    {
      "integration": "Reddit",
      "category": "Social Media Management"
    },
    {
      "integration": "Redis",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "RocketChat",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Rundeck",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "S3",
      "category": "Cloud Storage & File Management"
    },
    {
      "integration": "SIGNL4",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Salesforce",
      "category": "CRM & Sales"
    },
    {
      "integration": "Salesmate",
      "category": "CRM & Sales"
    },
    {
      "integration": "Segment",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "SendGrid",
      "category": "Marketing & Advertising Automation"
    },
    {
      "integration": "SentryIo",
      "category": "Technical Infrastructure & DevOps"
    },
    {
      "integration": "Shopify",
      "category": "E-commerce & Retail"
    },
    {
      "integration": "Slack",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Spontit",
      "category": "Communication & Messaging"
    },
    {
      "integration": "Spotify",
      "category": "Creative Content & Video Automation"
    },
    {
      "integration": "Stackby",
      "category": "Data Processing & Analysis"
    },
    {
      "integration": "Storyblok",
      "c
Download .txt
gitextract_odnxqh4i/

├── .devcontainer/
│   ├── Dockerfile
│   ├── devcontainer.json
│   └── init-firewall.sh
├── .dockerignore
├── .github/
│   └── workflows/
│       ├── ci-cd.yml
│       ├── deploy-pages.yml
│       ├── docker.yml
│       ├── pages-deploy.yml
│       └── update-readme.yml
├── .gitignore
├── .trivyignore
├── CLAUDE.md
├── CLAUDE_ZH.md
├── DELIVERY-SUMMARY.md
├── DEPLOYMENT.md
├── Dockerfile
├── LICENSE
├── README.md
├── SECURITY.md
├── ai-stack/
│   ├── .env
│   ├── .gitignore
│   ├── CHEAT-SHEET.md
│   ├── EASY-INSTALL.md
│   ├── INDEX.md
│   ├── QUICK-START.md
│   ├── README.md
│   ├── SUMMARY.md
│   ├── TROUBLESHOOTING.md
│   ├── UBUNTU-INSTALL.md
│   ├── docker-compose.yml
│   ├── start.ps1
│   ├── start.sh
│   └── workflows/
│       ├── comfyui-image-generation.json
│       └── comfyui-simple-test.json
├── api_server.py
├── context/
│   ├── def_categories.json
│   ├── search_categories.json
│   └── unique_categories.json
├── docker-compose.dev.yml
├── docker-compose.prod.yml
├── docker-compose.yml
├── docs/
│   ├── .nojekyll
│   ├── 404.html
│   ├── _config.yml
│   ├── api/
│   │   ├── categories.json
│   │   ├── integrations.json
│   │   ├── metadata.json
│   │   ├── search-index.json
│   │   └── stats.json
│   ├── css/
│   │   └── styles.css
│   ├── index.html
│   └── js/
│       ├── app.js
│       └── search.js
├── helm/
│   └── workflows-docs/
│       ├── Chart.yaml
│       ├── templates/
│       │   ├── _helpers.tpl
│       │   └── deployment.yaml
│       └── values.yaml
├── k8s/
│   ├── configmap.yaml
│   ├── deployment.yaml
│   ├── ingress.yaml
│   ├── namespace.yaml
│   └── service.yaml
├── medcards-ai/
│   ├── .gitignore
│   ├── EXECUTIVE_SUMMARY.md
│   ├── PRODUCT_STRATEGY.md
│   ├── README.md
│   ├── SCALABILITY_ARCHITECTURE.md
│   ├── next.config.ts
│   ├── package.json
│   ├── postcss.config.mjs
│   ├── prompts/
│   │   ├── coach-prompt.md
│   │   ├── feedback-prompt.md
│   │   └── tutor-prompt.md
│   ├── src/
│   │   └── types/
│   │       └── database.ts
│   ├── supabase/
│   │   ├── schema-network-effects.sql
│   │   ├── schema.sql
│   │   └── seed-cases.sql
│   ├── tailwind.config.ts
│   └── tsconfig.json
├── requirements.txt
├── run-as-docker-container.sh
├── run.py
├── scripts/
│   ├── backup.sh
│   ├── deploy.sh
│   ├── generate_search_index.py
│   ├── health-check.sh
│   ├── update_github_pages.py
│   └── update_readme_stats.py
├── src/
│   ├── ai_assistant.py
│   ├── analytics_engine.py
│   ├── community_features.py
│   ├── database.js
│   ├── enhanced_api.py
│   ├── index-workflows.js
│   ├── init-db.js
│   ├── integration_hub.py
│   ├── performance_monitor.py
│   ├── server.js
│   └── user_management.py
├── static/
│   ├── index-nodejs.html
│   ├── index.html
│   ├── mobile-app.html
│   └── mobile-interface.html
├── templates/
│   ├── README.md
│   ├── communication/
│   │   ├── telegram-ai-bot-template.json
│   │   └── telegram-ai-bot-template.md
│   └── data-processing/
│       └── google-sheets-automation-template.json
├── test_api.sh
├── test_security.sh
├── test_workflows.py
├── trivy.yaml
├── workflow_db.py
└── workflows/
    ├── Activecampaign/
    │   └── 0057_Activecampaign_Create_Triggered.json
    ├── Acuityscheduling/
    │   └── 1002_Acuityscheduling_Automate_Triggered.json
    ├── Affinity/
    │   └── 1085_Affinity_Create_Triggered.json
    ├── Aggregate/
    │   ├── 0472_Aggregate_Gmail_Create_Triggered.json
    │   ├── 0480_Aggregate_Telegram_Automate_Triggered.json
    │   ├── 0681_Aggregate_HTTP_Create_Webhook.json
    │   ├── 0691_Aggregate_Jotform_Create_Triggered.json
    │   ├── 0695_Aggregate_Stickynote_Create_Webhook.json
    │   ├── 0697_Aggregate_Typeform_Create_Triggered.json
    │   ├── 0762_Aggregate_Stickynote_Create_Triggered.json
    │   ├── 0800_Aggregate_Telegram_Automate_Triggered.json
    │   ├── 1324_Aggregate_Gmail_Send_Triggered.json
    │   ├── 1374_Aggregate_Stickynote_Create_Triggered.json
    │   ├── 1404_Aggregate_Telegram_Automation_Triggered.json
    │   ├── 1413_Aggregate_Telegram_Automation_Triggered.json
    │   ├── 1430_Aggregate_Schedule_Send_Scheduled.json
    │   ├── 1506_Aggregate_Telegram_Automation_Triggered.json
    │   ├── 1544_Aggregate_Schedule_Send_Scheduled.json
    │   └── 1576_Aggregate_Stickynote_Automate_Webhook.json
    ├── Airtable/
    │   ├── 0756_Airtable_Create_Triggered.json
    │   ├── 1120_Airtable_Mindee_Automate_Webhook.json
    │   ├── 1138_Airtable_Vonage_Automation_Scheduled.json
    │   └── 1220_Airtable_Lemlist_Automate.json
    ├── Airtabletool/
    │   ├── 1261_Airtabletool_Stickynote_Automation_Triggered.json
    │   └── 1723_Airtabletool_Stickynote_Automation_Triggered.json
    ├── Airtoptool/
    │   └── 1681_Airtoptool_Slack_Automation_Triggered.json
    ├── Amqp/
    │   └── 0138_Amqp_Send_Triggered.json
    ├── Apitemplateio/
    │   └── 1224_Apitemplateio_Typeform_Automation_Triggered.json
    ├── Asana/
    │   ├── 0241_Asana_Notion_Create_Triggered.json
    │   ├── 0967_Asana_Update_Triggered.json
    │   └── 1223_Asana_Webhook_Automate_Webhook.json
    ├── Automate/
    │   ├── 1060_Automate_Webhook.json
    │   ├── 1123_Automate.json
    │   ├── 1271_Automate.json
    │   ├── 1326_Automate.json
    │   └── 1911_Automate.json
    ├── Automation/
    │   ├── 1250_Automation.json
    │   ├── 1265_Automation_Triggered.json
    │   ├── 1290_Automation.json
    │   ├── 1497_Automation.json
    │   ├── 1634_Automation.json
    │   └── 2047_Automation.json
    ├── Autopilot/
    │   ├── 1227_Autopilot_Automate.json
    │   └── 1228_Autopilot_Airtable_Automate_Triggered.json
    ├── Awsrekognition/
    │   └── 0150_Awsrekognition_GoogleSheets_Automation_Webhook.json
    ├── Awss3/
    │   ├── 0149_Awss3_Wait_Automate_Triggered.json
    │   ├── 0151_Awss3_GoogleDrive_Import_Triggered.json
    │   └── 0593_Awss3_Compression_Automate_Triggered.json
    ├── Awssns/
    │   └── 0984_Awssns_Automate_Triggered.json
    ├── Awstextract/
    │   └── 0148_Awstextract_Telegram_Automate_Triggered.json
    ├── Bannerbear/
    │   ├── 0525_Bannerbear_Discord_Create_Webhook.json
    │   └── 1665_Bannerbear_Discord_Automation_Webhook.json
    ├── Baserow/
    │   └── 1822_Baserow_Stickynote_Automation_Webhook.json
    ├── Beeminder/
    │   └── 0403_Beeminder_Strava_Create_Triggered.json
    ├── Bitbucket/
    │   └── 0999_Bitbucket_Automate_Triggered.json
    ├── Bitly/
    │   └── 0910_Bitly_Datetime_Update_Webhook.json
    ├── Bitwarden/
    │   └── 0003_Bitwarden_Automate.json
    ├── Box/
    │   └── 1031_Box_Automate_Triggered.json
    ├── Calcslive/
    │   └── 2058_Calcslive_Engineering_Calculations_Manual.json
    ├── Calendly/
    │   ├── 0039_Calendly_Notion_Automate_Triggered.json
    │   ├── 0125_Calendly_Notion_Automate_Triggered.json
    │   ├── 0277_Calendly_Mautic_Create_Triggered.json
    │   ├── 0430_Calendly_Filter_Create_Triggered.json
    │   ├── 0660_Calendly_Noop_Create_Triggered.json
    │   ├── 0661_Calendly_Noop_Create_Triggered.json
    │   └── 1009_Calendly_Automate_Triggered.json
    ├── Chargebee/
    │   └── 0041_Chargebee_Update_Triggered.json
    ├── Clickup/
    │   ├── 0047_Clickup_Update_Triggered.json
    │   ├── 0282_Clickup_Notion_Update_Triggered.json
    │   └── 0469_Clickup_Respondtowebhook_Create_Webhook.json
    ├── Clockify/
    │   ├── 0750_Clockify_Webhook_Sync_Webhook.json
    │   ├── 1005_Clockify_Automate_Triggered.json
    │   └── 1923_Clockify_Stickynote_Create_Triggered.json
    ├── Code/
    │   ├── 0034_Code_Filter_Create_Scheduled.json
    │   ├── 0182_Code_GitHub_Create_Scheduled.json
    │   ├── 0239_Code_Typeform_Create_Triggered.json
    │   ├── 0273_Code_Webhook_Create_Webhook.json
    │   ├── 0288_Code_Schedule_Create_Webhook.json
    │   ├── 0296_Code_Webhook_Create_Webhook.json
    │   ├── 0298_Code_Readpdf_Send_Triggered.json
    │   ├── 0299_Code_Webhook_Create_Webhook.json
    │   ├── 0307_Code_Postgres_Automate_Triggered.json
    │   ├── 0308_Code_Schedule_Automate_Scheduled.json
    │   ├── 0309_Code_Filter_Automate_Triggered.json
    │   ├── 0341_Code_Filter_Import_Webhook.json
    │   ├── 0362_Code_HTTP_Send_Webhook.json
    │   ├── 0365_Code_Manual_Send_Webhook.json
    │   ├── 0366_Code_Manual_Automation_Webhook.json
    │   ├── 0367_Code_Manual_Send_Webhook.json
    │   ├── 0370_Code_Schedule_Create_Webhook.json
    │   ├── 0373_Code_Webhook_Automation_Webhook.json
    │   ├── 0379_Code_Pipedrive_Create_Triggered.json
    │   ├── 0380_Code_Manual_Create_Triggered.json
    │   ├── 0391_Code_Filter_Create_Scheduled.json
    │   ├── 0393_Code_Slack_Create_Webhook.json
    │   ├── 0397_Code_Schedule_Import_Scheduled.json
    │   ├── 0401_Code_Filter_Send_Triggered.json
    │   ├── 0415_Code_GoogleCalendar_Create_Webhook.json
    │   ├── 0437_Code_Filter_Create_Scheduled.json
    │   ├── 0438_Code_Filter_Create_Webhook.json
    │   ├── 0446_Code_Todoist_Create_Scheduled.json
    │   ├── 0482_Code_Respondtowebhook_Automation_Webhook.json
    │   ├── 0491_Code_Webhook_Monitor_Webhook.json
    │   ├── 0506_Code_Filter_Create_Scheduled.json
    │   ├── 0516_Code_GitHub_Create_Scheduled.json
    │   ├── 0519_Code_Manual_Create_Webhook.json
    │   ├── 0546_Code_Schedule_Create_Scheduled.json
    │   ├── 0548_Code_Webhook_Create_Webhook.json
    │   ├── 0553_Code_Schedule_Send_Scheduled.json
    │   ├── 0571_Code_Webhook_Send_Webhook.json
    │   ├── 0577_Code_Editimage_Update_Webhook.json
    │   ├── 0580_Code_Editimage_Import_Webhook.json
    │   ├── 0598_Code_Editimage_Update_Webhook.json
    │   ├── 0600_Code_Extractfromfile_Create_Webhook.json
    │   ├── 0605_Code_Itemlists_Create_Scheduled.json
    │   ├── 0628_Code_Schedule_Export_Scheduled.json
    │   ├── 0630_Code_Webhook_Create_Scheduled.json
    │   ├── 0651_Code_Schedule_Create_Webhook.json
    │   ├── 0655_Code_Postgres_Update_Scheduled.json
    │   ├── 0658_Code_Schedule_Create_Scheduled.json
    │   ├── 0665_Code_Editimage_Update_Webhook.json
    │   ├── 0667_Code_GitHub_Create_Scheduled.json
    │   ├── 0669_Code_Webhook_Create_Webhook.json
    │   ├── 0670_Code_Microsoftoutlook_Create_Webhook.json
    │   ├── 0671_Code_Converttofile_Create_Webhook.json
    │   ├── 0686_Code_Webhook_Update_Webhook.json
    │   ├── 0693_Code_Webhook_Create_Webhook.json
    │   ├── 0696_Code_Webhook_Create_Webhook.json
    │   ├── 0700_Code_Respondtowebhook_Send_Webhook.json
    │   ├── 0701_Code_Strava_Send_Triggered.json
    │   ├── 0706_Code_Schedule_Create_Scheduled.json
    │   ├── 0708_Code_Filter_Update_Webhook.json
    │   ├── 0709_Code_HTTP_Create_Webhook.json
    │   ├── 0718_Code_GitHub_Create_Scheduled.json
    │   ├── 0726_Code_Schedule_Update_Scheduled.json
    │   ├── 0753_Code_Executiondata_Automation_Webhook.json
    │   ├── 0767_Code_Filter_Send_Webhook.json
    │   ├── 0773_Code_Manual_Update_Triggered.json
    │   ├── 0777_Code_Filter_Automation_Webhook.json
    │   ├── 0781_Code_Schedule_Export_Scheduled.json
    │   ├── 0784_Code_Form_Automation_Webhook.json
    │   ├── 0787_Code_GoogleCalendar_Create_Webhook.json
    │   ├── 0794_Code_Schedule_Create_Scheduled.json
    │   ├── 0808_Code_Form_Send_Webhook.json
    │   ├── 0844_Code_Ghost_Create_Triggered.json
    │   ├── 0848_Code_Filter_Update_Triggered.json
    │   ├── 0851_Code_Extractfromfile_Monitor_Triggered.json
    │   ├── 0856_Code_Schedule_Update_Scheduled.json
    │   ├── 0863_Code_Schedule_Import_Webhook.json
    │   ├── 0891_Code_Manual_Create_Triggered.json
    │   ├── 0898_Code_Schedule_Create_Scheduled.json
    │   ├── 0918_Code_Noop_Send_Triggered.json
    │   ├── 0922_Code_Webhook_Create_Webhook.json
    │   ├── 0924_Code_Respondtowebhook_Process_Webhook.json
    │   ├── 0926_Code_Webhook_Create_Webhook.json
    │   ├── 0946_Code_Webhook_Send_Webhook.json
    │   ├── 0980_Code_Webhook_Automation_Webhook.json
    │   ├── 1109_Code_Schedule_Automation_Scheduled.json
    │   ├── 1161_Code_Slack_Send_Webhook.json
    │   ├── 1178_Code_HTTP_Automation_Webhook.json
    │   ├── 1257_Code_Webhook_Automation_Webhook.json
    │   ├── 1259_Code_Strava_Automation_Triggered.json
    │   ├── 1264_Code_HTTP_Automation_Webhook.json
    │   ├── 1278_Code_Schedule_Monitor_Webhook.json
    │   ├── 1281_Code_Schedule_Monitor_Webhook.json
    │   ├── 1286_Code_Manual_Automation_Triggered.json
    │   ├── 1292_Code_GitHub_Automate_Webhook.json
    │   ├── 1299_Code_Webhook_Automation_Webhook.json
    │   ├── 1301_Code_Extractfromfile_Automation_Triggered.json
    │   ├── 1307_Code_Converttofile_Send_Webhook.json
    │   ├── 1308_Code_Microsoftoutlook_Send_Webhook.json
    │   ├── 1313_Code_HTTP_Automation_Webhook.json
    │   ├── 1317_Code_Schedule_Export_Scheduled.json
    │   ├── 1320_Code_Schedule_Automate_Webhook.json
    │   ├── 1331_Code_Schedule_Automate_Webhook.json
    │   ├── 1337_Code_Schedule_Automate_Webhook.json
    │   ├── 1356_Code_Webhook_Import_Webhook.json
    │   ├── 1378_Code_Filter_Automation_Triggered.json
    │   ├── 1391_Code_Respondtowebhook_Create_Webhook.json
    │   ├── 1401_Code_Webhook_Automate_Webhook.json
    │   ├── 1402_Code_Manual_Automation_Webhook.json
    │   ├── 1423_Code_Editimage_Automation_Webhook.json
    │   ├── 1426_Code_Schedule_Export_Webhook.json
    │   ├── 1428_Code_Schedule_Send_Scheduled.json
    │   ├── 1429_Code_Schedule_Send_Scheduled.json
    │   ├── 1435_Code_Slack_Automation_Webhook.json
    │   ├── 1446_Code_Schedule_Automate_Scheduled.json
    │   ├── 1460_Code_Schedule_Automation_Scheduled.json
    │   ├── 1461_Code_Manual_Automation_Webhook.json
    │   ├── 1478_Code_Todoist_Automate_Scheduled.json
    │   ├── 1500_Code_Webhook_Automation_Webhook.json
    │   ├── 1514_Code_HTTP_Create_Webhook.json
    │   ├── 1518_Code_Manual_Process_Webhook.json
    │   ├── 1586_Code_Respondtowebhook_Automate_Webhook.json
    │   ├── 1594_Code_Schedule_Automation_Webhook.json
    │   ├── 1605_Code_Editimage_Automation_Webhook.json
    │   ├── 1619_Code_Pipedrive_Automation_Triggered.json
    │   ├── 1630_Code_Form_Automation_Triggered.json
    │   ├── 1644_Code_Schedule_Automation_Scheduled.json
    │   ├── 1646_Code_Schedule_Create_Scheduled.json
    │   ├── 1653_Code_Webhook_Send_Webhook.json
    │   ├── 1656_Code_Readpdf_Send_Triggered.json
    │   ├── 1664_Code_HTTP_Send_Webhook.json
    │   ├── 1666_Code_Manual_Automation_Webhook.json
    │   ├── 1670_Code_Schedule_Automation_Webhook.json
    │   ├── 1671_Code_Schedule_Automation_Webhook.json
    │   ├── 1699_Code_Editimage_Automation_Webhook.json
    │   ├── 1710_Code_Schedule_Automation_Scheduled.json
    │   ├── 1713_Code_Webhook_Automate_Webhook.json
    │   ├── 1724_Code_Schedule_Automation_Scheduled.json
    │   ├── 1726_Code_Webhook_Automation_Webhook.json
    │   ├── 1728_Code_Filter_Import_Webhook.json
    │   ├── 1756_Code_HTTP_Automation_Webhook.json
    │   ├── 1758_Code_HTTP_Automation_Webhook.json
    │   ├── 1759_Code_Filter_Monitor_Triggered.json
    │   ├── 1761_Code_Extractfromfile_Automate_Triggered.json
    │   ├── 1765_Code_Filter_Process_Triggered.json
    │   ├── 1789_Code_Webhook_Automate_Webhook.json
    │   ├── 1796_Code_Slack_Automation_Webhook.json
    │   ├── 1802_Code_Manual_Import_Webhook.json
    │   ├── 1809_Code_Schedule_Automate_Webhook.json
    │   ├── 1813_Code_GoogleCalendar_Automation_Triggered.json
    │   ├── 1814_Code_Extractfromfile_Automate_Webhook.json
    │   ├── 1815_Code_Webhook_Automation_Webhook.json
    │   ├── 1818_Code_Converttofile_Automate_Webhook.json
    │   ├── 1819_Code_Discord_Send_Triggered.json
    │   ├── 1825_Code_Webhook_Automation_Webhook.json
    │   ├── 1832_Code_Webhook_Automation_Webhook.json
    │   ├── 1836_Code_Googledocs_Automation_Webhook.json
    │   ├── 1837_Code_Ghost_Automation_Triggered.json
    │   ├── 1839_Code_Manual_Automation_Webhook.json
    │   ├── 1844_Code_Schedule_Export_Webhook.json
    │   ├── 1850_Code_Schedule_Automation_Webhook.json
    │   ├── 1861_Code_Form_Automation_Triggered.json
    │   ├── 1862_Code_Respondtowebhook_Automation_Webhook.json
    │   ├── 1864_Code_Executecommand_Create_Webhook.json
    │   ├── 1865_Code_HTTP_Create_Webhook.json
    │   ├── 1875_Code_Schedule_Automate_Scheduled.json
    │   ├── 1906_Code_Extractfromfile_Automate_Triggered.json
    │   ├── 1910_Code_Webhook_Automation_Webhook.json
    │   ├── 1921_Code_Filter_Automation_Webhook.json
    │   ├── 1924_Code_Webhook_Export_Webhook.json
    │   ├── 1958_Code_Slack_Send_Triggered.json
    │   ├── 1965_Code_Schedule_Automation_Webhook.json
    │   ├── 1966_Code_Webhook_Automation_Webhook.json
    │   ├── 1969_Code_Stickynote_Automation_Triggered.json
    │   ├── 1984_Code_Executecommand_Automation_Webhook.json
    │   ├── 1994_Code_Manual_Automation_Webhook.json
    │   ├── 2008_Code_Webhook_Automate_Webhook.json
    │   ├── 2011_Code_Manual_Import_Webhook.json
    │   ├── 2012_Code_Schedule_Create_Scheduled.json
    │   ├── 2020_Code_Noop_Create_Triggered.json
    │   ├── 2026_Code_Manual_Automation_Webhook.json
    │   ├── 2033_Code_Extractfromfile_Automate_Webhook.json
    │   ├── 2034_Code_Webhook_Automate_Webhook.json
    │   └── 2046_Code_Webhook_Automation_Webhook.json
    ├── Coingecko/
    │   └── 0177_Coingecko_Cron_Update_Scheduled.json
    ├── Comparedatasets/
    │   └── 0623_Comparedatasets_Manual_Create_Triggered.json
    ├── Compression/
    │   ├── 1294_Compression_Manual_Automation_Webhook.json
    │   └── 1683_Compression_Manual_Automation_Webhook.json
    ├── Convertkit/
    │   └── 0723_Convertkit_Create_Triggered.json
    ├── Converttofile/
    │   ├── 0508_Converttofile_Manual_Process_Triggered.json
    │   ├── 0889_Converttofile_HTTP_Create_Webhook.json
    │   └── 1985_Converttofile_HTTP_Automation_Webhook.json
    ├── Copper/
    │   └── 1006_Copper_Automate_Triggered.json
    ├── Cortex/
    │   └── 0972_Cortex_Emailreadimap_Send.json
    ├── Create/
    │   ├── 1124_Create.json
    │   └── 1125_Create.json
    ├── Cron/
    │   └── 0822_Cron_Postgres_Automation_Scheduled.json
    ├── Crypto/
    │   ├── 0042_Crypto_Airtable_Update_Webhook.json
    │   └── 0164_Crypto_Webhook_Automate_Webhook.json
    ├── Customerio/
    │   └── 0738_Customerio_Update_Triggered.json
    ├── Datetime/
    │   ├── 0087_Datetime_Slack_Automate_Scheduled.json
    │   ├── 0159_Datetime_Functionitem_Create_Webhook.json
    │   ├── 0168_Datetime_GoogleCalendar_Send_Scheduled.json
    │   ├── 0311_Datetime_Schedule_Create_Webhook.json
    │   ├── 0316_Datetime_Schedule_Create_Webhook.json
    │   ├── 0348_Datetime_GoogleCalendar_Automation_Scheduled.json
    │   ├── 0396_Datetime_Schedule_Automation_Scheduled.json
    │   ├── 0444_Datetime_Todoist_Create_Webhook.json
    │   ├── 0682_Datetime_Schedule_Create_Scheduled.json
    │   ├── 1092_Datetime_Schedule_Sync_Scheduled.json
    │   ├── 1272_Datetime_Webhook_Create_Webhook.json
    │   ├── 1273_Datetime_Webhook_Create_Webhook.json
    │   ├── 1296_Datetime_Splitout_Process.json
    │   ├── 1510_Datetime_Code_Automation_Webhook.json
    │   ├── 1523_Datetime_Code_Automation_Scheduled.json
    │   ├── 1755_Datetime_Code_Automation_Webhook.json
    │   ├── 2003_Datetime_Code_Automation_Webhook.json
    │   └── 2050_Datetime_Code_Automation_Webhook.json
    ├── Debughelper/
    │   └── 1184_Debughelper_HTTP_Create_Webhook.json
    ├── Deep/
    │   ├── 2054_Deep_Research_Report_Generation_With_Open_Router_Google_Search_Webhook_Telegram_and_Notion.json
    │   └── generate-collaborative-handbooks-with-gpt4o-multi-agent-orchestration-human-review.json
    ├── Discord/
    │   ├── 0360_Discord_Cron_Automation_Scheduled.json
    │   └── 2028_Discord_Hunter_Automate_Triggered.json
    ├── Discordtool/
    │   ├── 1242_Discordtool_Stickynote_Automation_Triggered.json
    │   └── 1913_Discordtool_Stickynote_Automation_Webhook.json
    ├── Dropbox/
    │   └── 0969_Dropbox_Manual_Automate_Webhook.json
    ├── Editimage/
    │   ├── 0575_Editimage_Manual_Update_Webhook.json
    │   └── 1369_Editimage_Manual_Automation_Webhook.json
    ├── Elasticsearch/
    │   └── 0616_Elasticsearch_Cron_Create_Webhook.json
    ├── Emailreadimap/
    │   ├── 0134_Emailreadimap_Nextcloud_Send.json
    │   ├── 1050_Emailreadimap_Send.json
    │   ├── 1277_Emailreadimap_Manual_Send_Webhook.json
    │   ├── 1284_Emailreadimap_Markdown_Send.json
    │   ├── 1427_Emailreadimap_Manual_Send_Webhook.json
    │   ├── 1588_Emailreadimap_Markdown_Send.json
    │   ├── 1936_Emailreadimap_Manual_Send_Webhook.json
    │   └── 1962_Emailreadimap_Manual_Send_Webhook.json
    ├── Emailsend/
    │   ├── 0113_Emailsend_GoogleDrive_Send_Triggered.json
    │   └── 1628_Emailsend_Code_Automation_Webhook.json
    ├── Emelia/
    │   └── 1214_Emelia_Automate.json
    ├── Error/
    │   ├── 0126_Error_Slack_Automate_Triggered.json
    │   ├── 0395_Error_Mondaycom_Update_Triggered.json
    │   ├── 0447_Error_Slack_Send_Triggered.json
    │   ├── 0454_Error_Telegram_Send_Triggered.json
    │   ├── 0456_Error_Gmail_Send_Triggered.json
    │   ├── 0518_Error_Code_Update_Scheduled.json
    │   ├── 0545_Error_N8N_Import_Triggered.json
    │   ├── 0945_Error_Code_Send_Triggered.json
    │   ├── 1036_Error_Twilio_Send_Triggered.json
    │   ├── 1099_Error_Gmail_Send_Triggered.json
    │   ├── 1179_Error_Mailgun_Automate_Triggered.json
    │   ├── 1237_Error_Telegram_Automation_Webhook.json
    │   ├── 1715_Error_Telegram_Automation_Webhook.json
    │   ├── 1777_Error_Postgres_Send_Triggered.json
    │   ├── 1849_Error_Stickynote_Automation_Webhook.json
    │   ├── 1948_Error_Telegram_Send_Triggered.json
    │   └── 1991_Error_Code_Automation_Triggered.json
    ├── Eventbrite/
    │   └── 1007_Eventbrite_Automate_Triggered.json
    ├── Executecommand/
    │   ├── 0097_Executecommand_Mailgun_Automation_Webhook.json
    │   ├── 0190_Executecommand_Functionitem_Automate.json
    │   ├── 0534_Executecommand_Localfile_Process_Triggered.json
    │   ├── 1190_Executecommand_Readbinaryfile_Automate_Triggered.json
    │   └── 1587_Executecommand_Localfile_Automation_Triggered.json
    ├── Executeworkflow/
    │   ├── 0371_Executeworkflow_Summarize_Send_Triggered.json
    │   ├── 0372_Executeworkflow_Hackernews_Create_Triggered.json
    │   ├── 0406_Executeworkflow_Slack_Send_Triggered.json
    │   ├── 0569_Executeworkflow_Telegram_Update_Triggered.json
    │   ├── 0872_Executeworkflow_Executecommandtool_Create_Triggered.json
    │   ├── 0947_Executeworkflow_Stickynote_Automate_Triggered.json
    │   ├── 1793_Executeworkflow_Airtabletool_Automation_Triggered.json
    │   ├── 1794_Executeworkflow_Automation_Webhook.json
    │   └── 1918_Executeworkflow_Automation_Triggered.json
    ├── Executiondata/
    │   ├── 1754_Executiondata_Slack_Automate_Webhook.json
    │   └── 1972_Executiondata_Stickynote_Automation_Webhook.json
    ├── Export/
    │   └── 1597_Export.json
    ├── Extractfromfile/
    │   ├── 0601_Extractfromfile_Manual_Create_Webhook.json
    │   ├── 0646_Extractfromfile_Form_Export_Webhook.json
    │   ├── 0694_Extractfromfile_Manual_Automation_Webhook.json
    │   ├── 0741_Extractfromfile_Stickynote_Automation_Triggered.json
    │   ├── 0828_Extractfromfile_Gmail_Send_Triggered.json
    │   ├── 1246_Extractfromfile_HTTP_Automation_Webhook.json
    │   ├── 1254_Extractfromfile_Form_Automate_Triggered.json
    │   ├── 1364_Extractfromfile_Manual_Create_Webhook.json
    │   ├── 1365_Extractfromfile_Manual_Create_Webhook.json
    │   ├── 1438_Extractfromfile_Manual_Process_Webhook.json
    │   ├── 1444_Extractfromfile_Converttofile_Automation_Webhook.json
    │   ├── 1472_Extractfromfile_Converttofile_Create_Triggered.json
    │   ├── 1488_Extractfromfile_Form_Automation_Triggered.json
    │   ├── 1493_Extractfromfile_Form_Automation_Webhook.json
    │   ├── 1501_Extractfromfile_Form_Automate_Triggered.json
    │   ├── 1590_Extractfromfile_Converttofile_Create_Triggered.json
    │   ├── 1641_Extractfromfile_Manual_Automation_Webhook.json
    │   ├── 1764_Extractfromfile_HTTP_Automation_Webhook.json
    │   ├── 1847_Extractfromfile_Form_Automation_Triggered.json
    │   ├── 1978_Extractfromfile_Converttofile_Automation_Webhook.json
    │   └── 1981_Extractfromfile_Form_Automate_Triggered.json
    ├── Facebook/
    │   └── 0123_Facebook_Mattermost_Update_Triggered.json
    ├── Facebookleadads/
    │   └── 0896_Facebookleadads_Stickynote_Automate_Triggered.json
    ├── Figma/
    │   └── 1069_Figma_Stickynote_Update_Triggered.json
    ├── Filter/
    │   ├── 0335_Filter_Telegram_Send_Triggered.json
    │   ├── 0411_Filter_Form_Send_Triggered.json
    │   ├── 0431_Filter_Convertkit_Create_Triggered.json
    │   ├── 0451_Filter_Slack_Update_Webhook.json
    │   ├── 0572_Filter_Schedule_Send_Scheduled.json
    │   ├── 0595_Filter_Manual_Send_Triggered.json
    │   ├── 0612_Filter_Slack_Send_Scheduled.json
    │   ├── 0801_Filter_Schedule_Import_Webhook.json
    │   ├── 0830_Filter_Summarize_Send_Scheduled.json
    │   ├── 0849_Filter_Extractfromfile_Create_Triggered.json
    │   ├── 0879_Filter_HTTP_Update_Webhook.json
    │   ├── 0917_Filter_Whatsapp_Create_Triggered.json
    │   ├── 0948_Filter_Schedule_Create_Scheduled.json
    │   ├── 1321_Filter_Manual_Send_Triggered.json
    │   ├── 1383_Filter_Slack_Create_Webhook.json
    │   ├── 1414_Filter_Summarize_Automation_Triggered.json
    │   ├── 1562_Filter_Manual_Import_Webhook.json
    │   ├── 1570_Filter_Summarize_Automation_Triggered.json
    │   ├── 1667_Filter_Summarize_Automation_Triggered.json
    │   ├── 1751_Filter_Schedule_Automation_Scheduled.json
    │   ├── 1772_Filter_Rssfeedread_Monitor_Scheduled.json
    │   ├── 1791_Filter_Summarize_Create_Triggered.json
    │   └── 2006_Filter_Manual_Automation_Webhook.json
    ├── Flow/
    │   └── 0133_Flow_Update_Triggered.json
    ├── Form/
    │   ├── 0484_Form_Stickynote_Automation_Webhook.json
    │   ├── 0633_Form_GoogleSheets_Create_Triggered.json
    │   ├── 0648_Form_GoogleSheets_Create_Triggered.json
    │   ├── 0732_Form_Youtube_Update_Triggered.json
    │   ├── 0733_Form_Code_Create_Triggered.json
    │   ├── 0805_Form_Html_Create_Triggered.json
    │   ├── 0890_Form_Stickynote_Send_Triggered.json
    │   ├── 1316_Form_Stickynote_Automation_Webhook.json
    │   ├── 1348_Form_Automation_Triggered.json
    │   ├── 1371_Form_S3_Import_Triggered.json
    │   ├── 1420_Form_Extractfromfile_Automate_Triggered.json
    │   ├── 1441_Form_Automation_Triggered.json
    │   ├── 1537_Form_GoogleSheets_Automation_Triggered.json
    │   ├── 1554_Form_GoogleSheets_Automation_Triggered.json
    │   ├── 1611_Form_Stickynote_Automate_Triggered.json
    │   ├── 1649_Form_Extractfromfile_Automate_Triggered.json
    │   ├── 1762_Form_Aggregate_Automation_Triggered.json
    │   ├── 1767_Form_HTTP_Automation_Webhook.json
    │   ├── 1873_Form_HTTP_Automation_Webhook.json
    │   ├── 1886_Form_Markdown_Automation_Webhook.json
    │   ├── 1908_Form_Asana_Automate_Triggered.json
    │   ├── 1957_Form_Stickynote_Automation_Triggered.json
    │   └── 1968_Form_Stickynote_Automation_Webhook.json
    ├── Functionitem/
    │   ├── 0031_Functionitem_Dropbox_Automation_Webhook.json
    │   ├── 0068_Functionitem_Manual_Import_Scheduled.json
    │   ├── 0146_Functionitem_Telegram_Create_Webhook.json
    │   ├── 0178_Functionitem_Executecommand_Automation_Webhook.json
    │   ├── 0184_Functionitem_Itemlists_Automate.json
    │   ├── 0246_Functionitem_Pipedrive_Create_Scheduled.json
    │   ├── 0247_Functionitem_HTTP_Create_Webhook.json
    │   ├── 0255_Functionitem_Manual_Create_Triggered.json
    │   ├── 0266_Functionitem_Zendesk_Create_Webhook.json
    │   ├── 0267_Functionitem_Zendesk_Create_Scheduled.json
    │   ├── 1067_Functionitem_Manual_Export_Webhook.json
    │   ├── 1140_Functionitem_Raindrop_Automation_Scheduled.json
    │   └── 1157_Functionitem_Executecommand_Update_Webhook.json
    ├── Getresponse/
    │   └── 1202_Getresponse_Airtable_Import_Triggered.json
    ├── Github/
    │   ├── 0135_GitHub_Cron_Create_Scheduled.json
    │   ├── 0264_GitHub_Stickynote_Create_Triggered.json
    │   ├── 0289_GitHub_Stickynote_Update_Triggered.json
    │   ├── 0876_GitHub_Aggregate_Create_Webhook.json
    │   ├── 0973_GitHub_Slack_Create_Triggered.json
    │   ├── 0997_GitHub_Automate_Triggered.json
    │   ├── 1068_GitHub_Slack_Automation_Triggered.json
    │   ├── 1149_GitHub_Manual_Create_Scheduled.json
    │   └── 1988_GitHub_Manual_Automate_Triggered.json
    ├── Gitlab/
    │   ├── 0557_Gitlab_Filter_Create_Scheduled.json
    │   ├── 0561_Gitlab_Code_Create_Triggered.json
    │   ├── 0998_Gitlab_Automate_Triggered.json
    │   └── 1895_Gitlab_Code_Automation_Webhook.json
    ├── Gmail/
    │   ├── 0036_Gmail_GoogleDrive_Import.json
    │   ├── 0221_Gmail_Movebinarydata_Send.json
    │   ├── 0319_Gmail_Googlecalendartool_Send_Triggered.json
    │   ├── 0544_Gmail_GoogleDrive_Create_Triggered.json
    │   ├── 0852_Gmail_GoogleSheets_Create_Triggered.json
    │   ├── 1479_Gmail_Stickynote_Create_Triggered.json
    │   ├── 1565_Gmail_Stickynote_Create_Triggered.json
    │   └── 1914_Gmail_Stickynote_Send_Triggered.json
    ├── Gmailtool/
    │   ├── 0677_Gmailtool_Splitout_Create_Webhook.json
    │   ├── 1142_Gmailtool_Stickynote_Automation_Triggered.json
    │   ├── 1248_Gmailtool_Splitout_Automation_Webhook.json
    │   ├── 1613_Gmailtool_Stickynote_Automation_Triggered.json
    │   ├── 1795_Gmailtool_Executeworkflow_Send_Triggered.json
    │   └── 1909_Gmailtool_Automation_Triggered.json
    ├── Googleanalytics/
    │   ├── 0475_Googleanalytics_Code_Automate_Scheduled.json
    │   ├── 1480_Googleanalytics_Code_Automation_Webhook.json
    │   ├── 1529_Googleanalytics_Code_Automation_Webhook.json
    │   └── 1652_Googleanalytics_Code_Automation_Webhook.json
    ├── Googlebigquery/
    │   └── 0806_Googlebigquery_Stickynote_Automate_Triggered.json
    ├── Googlecalendar/
    │   ├── 0647_GoogleCalendar_Form_Create_Triggered.json
    │   ├── 0783_GoogleCalendar_Schedule_Create_Scheduled.json
    │   ├── 1116_GoogleCalendar_GoogleSheets_Create_Triggered.json
    │   ├── 1346_GoogleCalendar_GoogleSheets_Automate_Triggered.json
    │   ├── 1361_GoogleCalendar_Webhook_Create_Webhook.json
    │   ├── 1573_GoogleCalendar_Slack_Create_Webhook.json
    │   ├── 1620_GoogleCalendar_Form_Automation_Triggered.json
    │   └── 1668_GoogleCalendar_Filter_Automation_Triggered.json
    ├── Googlecalendartool/
    │   ├── 1071_Googlecalendartool_Stickynote_Create_Triggered.json
    │   ├── 1247_Googlecalendartool_Stickynote_Automation_Triggered.json
    │   ├── 1792_Googlecalendartool_Executeworkflow_Automation_Triggered.json
    │   ├── 1872_Googlecalendartool_Automation_Triggered.json
    │   └── 1928_Googlecalendartool_Stickynote_Automation_Triggered.json
    ├── Googlecontacts/
    │   └── 1239_Googlecontacts_Schedule_Send_Scheduled.json
    ├── Googledocs/
    │   ├── 0524_Googledocs_Webhook_Create_Webhook.json
    │   ├── 1134_Googledocs_Code_Create_Webhook.json
    │   ├── 1279_Googledocs_Manual_Automate_Triggered.json
    │   ├── 1287_Googledocs_Googledrivetool_Monitor_Triggered.json
    │   ├── 1335_Googledocs_Webhook_Process_Webhook.json
    │   └── 1858_Googledocs_Manual_Automate_Triggered.json
    ├── Googledrive/
    │   ├── 0839_GoogleDrive_GoogleSheets_Create_Triggered.json
    │   ├── 1673_GoogleDrive_GoogleSheets_Automation_Triggered.json
    │   └── 1806_GoogleDrive_GoogleSheets_Import_Triggered.json
    ├── Googledrivetool/
    │   └── 0875_Googledrivetool_Extractfromfile_Import_Triggered.json
    ├── Googlesheets/
    │   ├── 0004_GoogleSheets_Typeform_Automate_Triggered.json
    │   ├── 0035_GoogleSheets_Webhook_Automate_Webhook.json
    │   ├── 0082_GoogleSheets_Interval_Process_Scheduled.json
    │   ├── 0222_GoogleSheets_Readbinaryfile_Automate.json
    │   ├── 0234_GoogleSheets_Cron_Create_Scheduled.json
    │   ├── 0235_GoogleSheets_Cron_Automation_Scheduled.json
    │   ├── 0237_GoogleSheets_Spreadsheetfile_Create_Webhook.json
    │   ├── 0238_GoogleSheets_Respondtowebhook_Automate_Webhook.json
    │   ├── 0256_GoogleSheets_Readbinaryfile_Automate.json
    │   ├── 0314_GoogleSheets_Discord_Create_Triggered.json
    │   ├── 0496_GoogleSheets_Webhook_Automate_Webhook.json
    │   ├── 0635_GoogleSheets_Webflow_Create_Triggered.json
    │   ├── 0736_GoogleSheets_Slack_Send_Triggered.json
    │   ├── 0812_GoogleSheets_GoogleDrive_Automate_Triggered.json
    │   ├── 0814_GoogleSheets_Gmail_Send_Triggered.json
    │   ├── 0818_GoogleSheets_Respondtowebhook_Import_Webhook.json
    │   ├── 0837_GoogleSheets_Gmail_Create_Triggered.json
    │   ├── 0927_GoogleSheets_Slack_Send_Triggered.json
    │   ├── 0950_GoogleSheets_Slack_Send_Triggered.json
    │   ├── 0974_GoogleSheets_Telegram_Export_Triggered.json
    │   ├── 1106_GoogleSheets_Cron_Automate_Scheduled.json
    │   ├── 1153_GoogleSheets_Orbit_Automation.json
    │   ├── 1188_GoogleSheets_Emailreadimap_Create.json
    │   ├── 1661_GoogleSheets_Stickynote_Monitor_Triggered.json
    │   ├── 1833_GoogleSheets_Gmail_Create_Triggered.json
    │   └── 1860_GoogleSheets_Gmail_Automation_Webhook.json
    ├── Googlesheetstool/
    │   └── 1133_Googlesheetstool_Automation_Triggered.json
    ├── Googleslides/
    │   ├── 0095_Googleslides_Slack_Automate_Triggered.json
    │   ├── 0754_Googleslides_Noop_Automation_Triggered.json
    │   └── 1845_Googleslides_Extractfromfile_Create_Triggered.json
    ├── Googletasks/
    │   ├── 0881_Googletasks_HTTP_Update_Webhook.json
    │   └── 2031_Googletasks_Gmail_Create_Triggered.json
    ├── Googletaskstool/
    │   └── 1103_Googletaskstool_Telegram_Automation_Webhook.json
    ├── Googletranslate/
    │   └── 0788_Googletranslate_Noop_Create_Webhook.json
    ├── Gotowebinar/
    │   └── 1213_Gotowebinar_Automate.json
    ├── Graphql/
    │   ├── 0116_Graphql_Discord_Automate_Scheduled.json
    │   └── 0461_Graphql_Webhook_Automate_Webhook.json
    ├── Grist/
    │   └── 0479_Grist_Stickynote_Create_Webhook.json
    ├── Gumroad/
    │   └── 0843_Gumroad_Update_Triggered.json
    ├── Helpscout/
    │   └── 1079_Helpscout_Create_Triggered.json
    ├── Http/
    │   ├── 0015_HTTP_Cron_Update_Webhook.json
    │   ├── 0021_HTTP_Awssqs_Automation_Scheduled.json
    │   ├── 0023_HTTP_Googlebigquery_Automation_Scheduled.json
    │   ├── 0033_HTTP_Mqtt_Automation_Webhook.json
    │   ├── 0048_HTTP_Htmlextract_Create_Webhook.json
    │   ├── 0077_HTTP_Noop_Sync_Webhook.json
    │   ├── 0084_HTTP_Cron_Automation_Webhook.json
    │   ├── 0093_HTTP_GitHub_Create_Scheduled.json
    │   ├── 0136_HTTP_Googlefirebaserealtimedatabase_Update_Webhook.json
    │   ├── 0139_HTTP_Mysql_Automation_Webhook.json
    │   ├── 0143_HTTP_Gitlab_Automation_Webhook.json
    │   ├── 0144_HTTP_Twitter_Automation_Scheduled.json
    │   ├── 0153_HTTP_Dropbox_Update_Webhook.json
    │   ├── 0154_HTTP_Mattermost_Automation_Webhook.json
    │   ├── 0156_HTTP_Awsrekognition_Automation_Webhook.json
    │   ├── 0162_HTTP_Telegram_Send_Webhook.json
    │   ├── 0167_HTTP_Slack_Create_Webhook.json
    │   ├── 0223_HTTP_GoogleSheets_Automation_Webhook.json
    │   ├── 0224_HTTP_GoogleSheets_Send_Webhook.json
    │   ├── 0245_HTTP_Stripe_Create_Webhook.json
    │   ├── 0252_HTTP_GitHub_Create_Webhook.json
    │   ├── 0253_HTTP_GitHub_Send_Webhook.json
    │   ├── 0287_HTTP_Rabbitmq_Update_Scheduled.json
    │   ├── 0306_HTTP_Respondtowebhook_Import_Webhook.json
    │   ├── 0310_HTTP_Manual_Automation_Webhook.json
    │   ├── 0313_HTTP_Schedule_Create_Scheduled.json
    │   ├── 0344_HTTP_Emailreadimap_Create_Webhook.json
    │   ├── 0347_HTTP_GoogleSheets_Sync_Webhook.json
    │   ├── 0350_HTTP_Emailreadimap_Send_Webhook.json
    │   ├── 0358_HTTP_Discord_Monitor_Scheduled.json
    │   ├── 0363_HTTP_Executeworkflow_Automate_Webhook.json
    │   ├── 0364_HTTP_Twilio_Automate_Webhook.json
    │   ├── 0384_HTTP_Manual_Create_Webhook.json
    │   ├── 0390_HTTP_Manual_Automation_Webhook.json
    │   ├── 0394_HTTP_Spreadsheetfile_Create_Webhook.json
    │   ├── 0405_HTTP_Executeworkflow_Send_Webhook.json
    │   ├── 0440_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0441_HTTP_GoogleSheets_Create_Webhook.json
    │   ├── 0450_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0463_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0470_HTTP_GoogleSheets_Update_Webhook.json
    │   ├── 0471_HTTP_Form_Create_Webhook.json
    │   ├── 0485_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0492_HTTP_Respondtowebhook_Create_Webhook.json
    │   ├── 0493_HTTP_Keap_Create_Webhook.json
    │   ├── 0494_HTTP_Htmlextract_Send_Webhook.json
    │   ├── 0505_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0510_HTTP_Schedule_Automation_Webhook.json
    │   ├── 0517_HTTP_Stickynote_Process_Webhook.json
    │   ├── 0549_HTTP_Filter_Monitor_Webhook.json
    │   ├── 0550_HTTP_Slack_Create_Webhook.json
    │   ├── 0551_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0559_HTTP_Webhook_Create_Webhook.json
    │   ├── 0566_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 0588_HTTP_Schedule_Create_Webhook.json
    │   ├── 0594_HTTP_Telegram_Create_Webhook.json
    │   ├── 0606_HTTP_Respondtowebhook_Create_Webhook.json
    │   ├── 0611_HTTP_Filter_Automation_Scheduled.json
    │   ├── 0622_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0624_HTTP_Schedule_Send_Scheduled.json
    │   ├── 0626_HTTP_Schedule_Create_Scheduled.json
    │   ├── 0636_HTTP_Stickynote_Create_Webhook.json
    │   ├── 0637_HTTP_Schedule_Automation_Webhook.json
    │   ├── 0641_HTTP_Rssfeedread_Create_Webhook.json
    │   ├── 0642_HTTP_Extractfromfile_Process_Webhook.json
    │   ├── 0687_HTTP_Form_Automation_Webhook.json
    │   ├── 0688_HTTP_Webhook_Process_Webhook.json
    │   ├── 0707_HTTP_Stripe_Create_Webhook.json
    │   ├── 0717_HTTP_Schedule_Create_Scheduled.json
    │   ├── 0739_HTTP_Form_Automate_Webhook.json
    │   ├── 0745_HTTP_Telegram_Automation_Webhook.json
    │   ├── 0752_HTTP_Rssfeedread_Automation_Scheduled.json
    │   ├── 0771_HTTP_Telegram_Create_Webhook.json
    │   ├── 0775_HTTP_Executecommand_Automate_Webhook.json
    │   ├── 0778_HTTP_Stickynote_Import_Webhook.json
    │   ├── 0825_HTTP_Manual_Send_Webhook.json
    │   ├── 0870_HTTP_Schedule_Update_Webhook.json
    │   ├── 0878_HTTP_Aggregate_Import_Webhook.json
    │   ├── 0901_HTTP_GoogleSheets_Automate_Webhook.json
    │   ├── 0934_HTTP_Code_Automate_Webhook.json
    │   ├── 0935_HTTP_GoogleSheets_Sync_Webhook.json
    │   ├── 0936_HTTP_Lingvanex_Automation_Webhook.json
    │   ├── 0937_HTTP_Editimage_Update_Webhook.json
    │   ├── 0939_HTTP_Cron_Automation_Webhook.json
    │   ├── 0952_HTTP_Medium_Automation_Webhook.json
    │   ├── 0955_HTTP_Automation_Webhook.json
    │   ├── 0956_HTTP_Readbinaryfile_Automation_Webhook.json
    │   ├── 0964_HTTP_Bannerbear_Automation_Scheduled.json
    │   ├── 0966_HTTP_Discord_Import_Scheduled.json
    │   ├── 0970_HTTP_Schedule_Create_Webhook.json
    │   ├── 1030_HTTP_Typeform_Monitor_Webhook.json
    │   ├── 1043_HTTP_Telegram_Send_Webhook.json
    │   ├── 1052_HTTP_Telegram_Update_Webhook.json
    │   ├── 1064_HTTP_Clockify_Update_Webhook.json
    │   ├── 1072_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1107_HTTP_GitHub_Automation_Webhook.json
    │   ├── 1110_HTTP_Mqtt_Monitor_Webhook.json
    │   ├── 1111_HTTP_Schedule_Automation_Webhook.json
    │   ├── 1112_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1131_HTTP_Stickynote_Import_Webhook.json
    │   ├── 1152_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1171_HTTP_Cron_Automation_Scheduled.json
    │   ├── 1187_HTTP_Dropbox_Automation_Webhook.json
    │   ├── 1192_HTTP_Timescaledb_Automation_Scheduled.json
    │   ├── 1226_HTTP_Kafka_Update_Webhook.json
    │   ├── 1233_HTTP_Deepl_Automation_Webhook.json
    │   ├── 1267_HTTP_Markdown_Automation_Webhook.json
    │   ├── 1334_HTTP_Manual_Automation_Webhook.json
    │   ├── 1340_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1349_HTTP_Slack_Automation_Webhook.json
    │   ├── 1354_HTTP_Respondtowebhook_Automate_Webhook.json
    │   ├── 1367_HTTP_Schedule_Automate_Webhook.json
    │   ├── 1370_HTTP_Extractfromfile_Automation_Webhook.json
    │   ├── 1419_HTTP_Schedule_Automation_Scheduled.json
    │   ├── 1440_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1447_HTTP_Schedule_Automation_Webhook.json
    │   ├── 1458_HTTP_Stickynote_Import_Webhook.json
    │   ├── 1462_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1464_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1473_HTTP_Respondtowebhook_Create_Webhook.json
    │   ├── 1481_HTTP_Form_Send_Webhook.json
    │   ├── 1519_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1520_HTTP_Respondtowebhook_Automation_Webhook.json
    │   ├── 1530_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1535_HTTP_Form_Automate_Webhook.json
    │   ├── 1538_HTTP_Googlecalendartool_Automation_Webhook.json
    │   ├── 1558_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1580_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1593_HTTP_Schedule_Import_Webhook.json
    │   ├── 1598_HTTP_Schedule_Automation_Scheduled.json
    │   ├── 1615_HTTP_Emailreadimap_Send_Webhook.json
    │   ├── 1617_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1631_HTTP_Telegram_Automation_Webhook.json
    │   ├── 1632_HTTP_Telegram_Monitor_Webhook.json
    │   ├── 1640_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1651_HTTP_Schedule_Automation_Webhook.json
    │   ├── 1654_HTTP_Telegram_Send_Webhook.json
    │   ├── 1655_HTTP_Schedule_Send_Webhook.json
    │   ├── 1672_HTTP_Form_Automation_Webhook.json
    │   ├── 1674_HTTP_Emailreadimap_Send_Webhook.json
    │   ├── 1675_HTTP_Emailreadimap_Send_Webhook.json
    │   ├── 1684_HTTP_Telegram_Automation_Webhook.json
    │   ├── 1687_HTTP_Telegram_Automate_Webhook.json
    │   ├── 1688_HTTP_Telegram_Automate_Webhook.json
    │   ├── 1700_HTTP_Webhook_Process_Webhook.json
    │   ├── 1720_HTTP_Stickynote_Import_Webhook.json
    │   ├── 1725_HTTP_Code_Process_Webhook.json
    │   ├── 1729_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1730_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1732_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1737_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1747_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1773_HTTP_Stripe_Sync_Webhook.json
    │   ├── 1778_HTTP_Googlecalendartool_Automation_Webhook.json
    │   ├── 1799_HTTP_Manual_Send_Webhook.json
    │   ├── 1800_HTTP_Telegram_Automation_Webhook.json
    │   ├── 1808_HTTP_Telegram_Automate_Webhook.json
    │   ├── 1811_HTTP_GoogleSheets_Automate_Webhook.json
    │   ├── 1827_HTTP_Respondtowebhook_Automate_Webhook.json
    │   ├── 1852_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1868_HTTP_Stickynote_Automate_Webhook.json
    │   ├── 1871_HTTP_Executeworkflow_Import_Webhook.json
    │   ├── 1876_HTTP_Manual_Automation_Webhook.json
    │   ├── 1883_HTTP_Form_Import_Webhook.json
    │   ├── 1885_HTTP_Extractfromfile_Automation_Webhook.json
    │   ├── 1890_HTTP_Executeworkflow_Automation_Webhook.json
    │   ├── 1893_HTTP_Gmail_Automate_Webhook.json
    │   ├── 1920_HTTP_Telegram_Automate_Webhook.json
    │   ├── 1959_HTTP_Schedule_Automate_Webhook.json
    │   ├── 1964_HTTP_Aggregate_Automation_Webhook.json
    │   ├── 1973_HTTP_Manual_Import_Webhook.json
    │   ├── 1976_HTTP_Stickynote_Automation_Webhook.json
    │   ├── 1989_HTTP_Schedule_Create_Webhook.json
    │   ├── 1996_HTTP_Manual_Automation_Webhook.json
    │   ├── 2019_HTTP_Stickynote_Automate_Webhook.json
    │   └── 2043_HTTP_Stickynote_Automation_Webhook.json
    ├── Hubspot/
    │   ├── 0115_HubSpot_Clearbit_Update_Triggered.json
    │   ├── 0129_HubSpot_Cron_Update_Scheduled.json
    │   ├── 0130_HubSpot_Cron_Automate_Scheduled.json
    │   ├── 0243_HubSpot_Mailchimp_Create_Scheduled.json
    │   ├── 0244_HubSpot_Mailchimp_Create_Scheduled.json
    │   ├── 0920_HubSpot_Splitout_Create_Webhook.json
    │   └── 1081_HubSpot_Automate_Triggered.json
    ├── Humanticai/
    │   └── 0043_Humanticai_Calendly_Automate_Triggered.json
    ├── Hunter/
    │   ├── 0361_Hunter_Noop_Send_Triggered.json
    │   ├── 0420_Hunter_Form_Create_Triggered.json
    │   ├── 0424_Hunter_Form_Send_Webhook.json
    │   ├── 0426_Hunter_Form_Send_Webhook.json
    │   └── 0436_Hunter_Pipedrive_Create_Triggered.json
    ├── Intercom/
    │   └── 0413_Intercom_Code_Create_Webhook.json
    ├── Interval/
    │   └── 0211_Interval_Amqp_Automation_Scheduled.json
    ├── Invoiceninja/
    │   └── 1004_Invoiceninja_Automate_Triggered.json
    ├── Jira/
    │   ├── 1035_Jira_Automate_Triggered.json
    │   └── 1769_Jira_Stickynote_Sync_Triggered.json
    ├── Jiratool/
    │   ├── 0604_Jiratool_Schedule_Create_Scheduled.json
    │   └── 1328_Jiratool_Schedule_Automate_Scheduled.json
    ├── Jotform/
    │   └── 1010_Jotform_Automate_Triggered.json
    ├── Keap/
    │   └── 1023_Keap_Automate_Triggered.json
    ├── Lemlist/
    │   ├── 0283_Lemlist_Slack_Create_Webhook.json
    │   ├── 0504_Lemlist_Slack_Create_Webhook.json
    │   └── 1382_Lemlist_Slack_Automate_Webhook.json
    ├── Limit/
    │   ├── 0473_Limit_Code_Create_Scheduled.json
    │   ├── 0673_Limit_Code_Create_Webhook.json
    │   ├── 0674_Limit_Webhook_Automation_Webhook.json
    │   ├── 0675_Limit_Code_Automation_Scheduled.json
    │   ├── 0685_Limit_Webhook_Send_Webhook.json
    │   ├── 0880_Limit_Code_Create_Webhook.json
    │   ├── 0897_Limit_Code_Send_Scheduled.json
    │   ├── 0932_Limit_Code_Create_Webhook.json
    │   ├── 0971_Limit_Splitout_Automation_Webhook.json
    │   ├── 1262_Limit_Webhook_Automation_Webhook.json
    │   ├── 1289_Limit_Webhook_Automation_Webhook.json
    │   ├── 1386_Limit_Code_Automation_Scheduled.json
    │   ├── 1483_Limit_Code_Automation_Webhook.json
    │   ├── 1527_Limit_Schedule_Automation_Scheduled.json
    │   ├── 1645_Limit_Splitout_Automation_Webhook.json
    │   ├── 1695_Limit_Code_Automation_Scheduled.json
    │   ├── 1711_Limit_Code_Automate_Webhook.json
    │   ├── 1716_Limit_Schedule_Automation_Scheduled.json
    │   ├── 1810_Limit_Splitout_Automate_Webhook.json
    │   ├── 1900_Limit_Code_Automate_Webhook.json
    │   ├── 1995_Limit_Splitout_Automation_Webhook.json
    │   └── 2049_Limit_Splitout_Automate_Webhook.json
    ├── Linkedin/
    │   ├── 0847_Linkedin_Splitout_Create_Triggered.json
    │   ├── 1121_Linkedin_Wait_Create_Webhook.json
    │   ├── 1280_Linkedin_Telegram_Automation_Scheduled.json
    │   ├── 1330_Linkedin_Schedule_Automate_Webhook.json
    │   ├── 1342_Linkedin_Telegram_Automate_Webhook.json
    │   ├── 1491_Linkedin_Wait_Create_Webhook.json
    │   ├── 1709_Linkedin_Wordpress_Automation_Webhook.json
    │   ├── 1782_Linkedin_Telegram_Automation_Scheduled.json
    │   ├── 1807_Linkedin_Googledocs_Automate_Webhook.json
    │   ├── 1922_Linkedin_Schedule_Automate_Webhook.json
    │   ├── 1939_Linkedin_Code_Automation_Webhook.json
    │   ├── 1951_Linkedin_Webhook_Automate_Webhook.json
    │   └── 2024_Linkedin_Telegram_Automate_Webhook.json
    ├── Localfile/
    │   ├── 0535_Localfile_Manual_Create_Webhook.json
    │   ├── 0536_Localfile_Splitout_Send_Triggered.json
    │   ├── 0537_Localfile_Wait_Create_Triggered.json
    │   ├── 1357_Localfile_Wait_Automation_Triggered.json
    │   ├── 1358_Localfile_Manual_Create_Webhook.json
    │   └── 1635_Localfile_Splitout_Automation_Triggered.json
    ├── Mailcheck/
    │   └── 0026_Mailcheck_Airtable_Monitor.json
    ├── Mailchimp/
    │   ├── 0345_Mailchimp_Cron_Create_Scheduled.json
    │   └── 0989_Mailchimp_Automate_Triggered.json
    ├── Mailerlite/
    │   └── 1874_Mailerlite_Gumroad_Automation_Webhook.json
    ├── Mailjet/
    │   ├── 0994_Mailjet_Automate_Triggered.json
    │   └── 1956_Mailjet_Gmail_Create_Triggered.json
    ├── Manual/
    │   ├── 0002_Manual_Totp_Automation_Triggered.json
    │   ├── 0005_Manual_Twitter_Create_Triggered.json
    │   ├── 0007_Manual_Todoist_Create_Triggered.json
    │   ├── 0011_Manual_Copper_Automate_Triggered.json
    │   ├── 0012_Manual_Copper_Automate_Triggered.json
    │   ├── 0013_Manual_Noop_Import_Triggered.json
    │   ├── 0014_Manual_Coda_Create_Triggered.json
    │   ├── 0016_Manual_Googleslides_Automate_Triggered.json
    │   ├── 0018_Manual_Chargebee_Create_Triggered.json
    │   ├── 0019_Manual_Uproc_Send_Triggered.json
    │   ├── 0022_Manual_Webflow_Automate_Triggered.json
    │   ├── 0024_Manual_Clearbit_Send_Triggered.json
    │   ├── 0025_Manual_Uproc_Automation_Triggered.json
    │   ├── 0029_Manual_Orbit_Create_Triggered.json
    │   ├── 0030_Manual_Clickup_Create_Triggered.json
    │   ├── 0032_Manual_Filemaker_Automate_Triggered.json
    │   ├── 0037_Manual_Googlebooks_Create_Triggered.json
    │   ├── 0038_Manual_Ical_Send_Triggered.json
    │   ├── 0045_Manual_Telegram_Import_Triggered.json
    │   ├── 0046_Manual_Storyblok_Import_Triggered.json
    │   ├── 0049_Manual_Awss3_Automate_Triggered.json
    │   ├── 0051_Manual_Microsofttodo_Automate_Triggered.json
    │   ├── 0052_Manual_Git_Automate_Triggered.json
    │   ├── 0054_Manual_Writebinaryfile_Automate_Triggered.json
    │   ├── 0056_Manual_Uproc_Import_Triggered.json
    │   ├── 0058_Manual_Readbinaryfile_Automate_Triggered.json
    │   ├── 0059_Manual_Twitter_Automate_Triggered.json
    │   ├── 0062_Manual_Pipedrive_Create_Triggered.json
    │   ├── 0063_Manual_Uproc_Import_Triggered.json
    │   ├── 0064_Manual_Writebinaryfile_Automate_Triggered.json
    │   ├── 0067_Manual_Uproc_Automation_Triggered.json
    │   ├── 0069_Manual_Gmail_Automation_Triggered.json
    │   ├── 0073_Manual_Rssfeedread_Automate_Triggered.json
    │   ├── 0074_Manual_HTTP_Monitor_Webhook.json
    │   ├── 0075_Manual_Noop_Update_Triggered.json
    │   ├── 0078_Manual_Slack_Monitor_Webhook.json
    │   ├── 0079_Manual_Strapi_Create_Triggered.json
    │   ├── 0080_Manual_Disqus_Import_Triggered.json
    │   ├── 0088_Manual_Harvest_Create_Triggered.json
    │   ├── 0098_Manual_Segment_Monitor_Triggered.json
    │   ├── 0100_Manual_Zendesk_Create_Triggered.json
    │   ├── 0102_Manual_HTTP_Create_Webhook.json
    │   ├── 0106_Manual_Drift_Create_Triggered.json
    │   ├── 0107_Manual_Zulip_Send_Triggered.json
    │   ├── 0110_Manual_Humanticai_Create_Webhook.json
    │   ├── 0111_Manual_Vero_Create_Triggered.json
    │   ├── 0112_Manual_Awstextract_Automate_Triggered.json
    │   ├── 0114_Manual_Salesmate_Create_Triggered.json
    │   ├── 0117_Manual_Uplead_Import_Triggered.json
    │   ├── 0119_Manual_Cron_Create_Webhook.json
    │   ├── 0120_Manual_GoogleSheets_Automate_Triggered.json
    │   ├── 0122_Manual_Flow_Import_Triggered.json
    │   ├── 0127_Manual_Noop_Monitor_Triggered.json
    │   ├── 0128_Manual_N8Ntrainingcustomerdatastore_Automation_Webhook.json
    │   ├── 0131_Manual_Start_Automation_Webhook.json
    │   ├── 0137_Manual_Editimage_Create_Webhook.json
    │   ├── 0145_Manual_Send_Triggered.json
    │   ├── 0157_Manual_Import_Triggered.json
    │   ├── 0160_Manual_Automation_Triggered.json
    │   ├── 0166_Manual_Lingvanex_Automation_Webhook.json
    │   ├── 0173_Manual_Automate_Triggered.json
    │   ├── 0175_Manual_Sendy_Create_Triggered.json
    │   ├── 0179_Manual_Automate_Triggered.json
    │   ├── 0181_Manual_HTTP_Automation_Webhook.json
    │   ├── 0189_Manual_Quickbase_Create_Triggered.json
    │   ├── 0191_Manual_Slack_Automation_Webhook.json
    │   ├── 0192_Manual_Openthesaurus_Import_Triggered.json
    │   ├── 0195_Manual_Pagerduty_Create_Triggered.json
    │   ├── 0198_Manual_Thehive_Create_Triggered.json
    │   ├── 0199_Manual_HTTP_Automation_Webhook.json
    │   ├── 0200_Manual_Executecommand_Export_Scheduled.json
    │   ├── 0202_Manual_Cortex_Import_Triggered.json
    │   ├── 0203_Manual_Writebinaryfile_Automation_Webhook.json
    │   ├── 0204_Manual_Questdb_Create_Triggered.json
    │   ├── 0206_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0207_Manual_Slack_Create_Webhook.json
    │   ├── 0208_Manual_Iterable_Create_Triggered.json
    │   ├── 0210_Manual_Yourls_Create_Triggered.json
    │   ├── 0213_Manual_Markdown_Create_Webhook.json
    │   ├── 0214_Manual_Markdown_Create_Webhook.json
    │   ├── 0216_Manual_N8Ntrainingcustomerdatastore_Automation_Triggered.json
    │   ├── 0217_Manual_Ghost_Create_Triggered.json
    │   ├── 0218_Manual_Airtable_Update_Triggered.json
    │   ├── 0219_Manual_Snowflake_Create_Triggered.json
    │   ├── 0225_Manual_Twist_Create_Triggered.json
    │   ├── 0226_Manual_Stickynote_Update_Triggered.json
    │   ├── 0227_Manual_N8Ntrainingcustomerdatastore_Automate_Triggered.json
    │   ├── 0228_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0229_Manual_HTTP_Create_Webhook.json
    │   ├── 0233_Manual_N8Ntrainingcustomerdatastore_Create_Triggered.json
    │   ├── 0236_Manual_GoogleSheets_Create_Scheduled.json
    │   ├── 0240_Manual_Gmail_Create_Triggered.json
    │   ├── 0242_Manual_Brandfetch_Import_Triggered.json
    │   ├── 0250_Manual_Baserow_Update_Webhook.json
    │   ├── 0254_Manual_Mattermost_Create_Triggered.json
    │   ├── 0257_Manual_GoogleSheets_Create_Triggered.json
    │   ├── 0259_Manual_HTTP_Create_Webhook.json
    │   ├── 0261_Manual_Googlefirebasecloudfirestore_Create_Triggered.json
    │   ├── 0271_Manual_HTTP_Create_Webhook.json
    │   ├── 0284_Manual_Readbinaryfile_Create_Triggered.json
    │   ├── 0292_Manual_Stickynote_Export_Triggered.json
    │   ├── 0293_Manual_Woocommerce_Create_Triggered.json
    │   ├── 0297_Manual_Openai_Export_Triggered.json
    │   ├── 0300_Manual_Egoi_Create_Triggered.json
    │   ├── 0302_Manual_N8Ntrainingcustomerdatastore_Automate_Triggered.json
    │   ├── 0303_Manual_Stickynote_Export_Triggered.json
    │   ├── 0304_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0305_Manual_Telegram_Create_Triggered.json
    │   ├── 0312_Manual_HTTP_Create_Webhook.json
    │   ├── 0315_Manual_Comparedatasets_Automate_Triggered.json
    │   ├── 0317_Manual_Movebinarydata_Process_Triggered.json
    │   ├── 0321_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0323_Manual_Stickynote_Process_Triggered.json
    │   ├── 0324_Manual_Stickynote_Update_Triggered.json
    │   ├── 0326_Manual_Stickynote_Send_Triggered.json
    │   ├── 0328_Manual_GoogleDrive_Automate_Triggered.json
    │   ├── 0329_Manual_Send_Triggered.json
    │   ├── 0336_Manual_Snowflake_Automation_Webhook.json
    │   ├── 0337_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0338_Manual_Stickynote_Export_Webhook.json
    │   ├── 0342_Manual_GoogleCalendar_Create_Triggered.json
    │   ├── 0343_Manual_Editimage_Create_Webhook.json
    │   ├── 0349_Manual_GoogleSheets_Automation_Scheduled.json
    │   ├── 0353_Manual_Twilio_Send_Triggered.json
    │   ├── 0355_Manual_Twake_Send_Triggered.json
    │   ├── 0356_Manual_Twitter_Automate_Scheduled.json
    │   ├── 0359_Manual_Wordpress_Automation_Triggered.json
    │   ├── 0369_Manual_Airtable_Automation_Triggered.json
    │   ├── 0374_Manual_Stickynote_Send_Webhook.json
    │   ├── 0377_Manual_Stickynote_Update_Triggered.json
    │   ├── 0389_Manual_Googleanalytics_Import_Triggered.json
    │   ├── 0399_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0400_Manual_Code_Create_Webhook.json
    │   ├── 0408_Manual_Sendgrid_Create_Triggered.json
    │   ├── 0409_Manual_Googlecontacts_Create_Triggered.json
    │   ├── 0439_Manual_Schedule_Create_Scheduled.json
    │   ├── 0455_Manual_Gsuiteadmin_Create_Triggered.json
    │   ├── 0458_Manual_Code_Create_Triggered.json
    │   ├── 0476_Manual_Youtube_Create_Triggered.json
    │   ├── 0477_Manual_Youtube_Create_Triggered.json
    │   ├── 0489_Manual_Debughelper_Create_Triggered.json
    │   ├── 0495_Manual_HTTP_Update_Webhook.json
    │   ├── 0501_Manual_Extractfromfile_Send_Webhook.json
    │   ├── 0507_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0509_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0513_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0514_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0515_Manual_HTTP_Automation_Webhook.json
    │   ├── 0521_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0522_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0531_Manual_HTTP_Update_Webhook.json
    │   ├── 0540_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0541_Manual_Stickynote_Update_Triggered.json
    │   ├── 0543_Manual_N8N_Export_Triggered.json
    │   ├── 0558_Manual_Stickynote_Automation_Triggered.json
    │   ├── 0568_Manual_Zendesk_Automation_Scheduled.json
    │   ├── 0589_Manual_Filter_Update_Webhook.json
    │   ├── 0617_Manual_Noop_Automation_Webhook.json
    │   ├── 0653_Manual_Convertkit_Create_Triggered.json
    │   ├── 0662_Manual_Schedule_Automation_Scheduled.json
    │   ├── 0678_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0703_Manual_Sentryio_Create_Triggered.json
    │   ├── 0710_Manual_Stickynote_Automation_Webhook.json
    │   ├── 0713_Manual_HTTP_Update_Webhook.json
    │   ├── 0728_Manual_GoogleSheets_Update_Triggered.json
    │   ├── 0734_Manual_HTTP_Create_Webhook.json
    │   ├── 0737_Manual_Executecommand_Automation_Triggered.json
    │   ├── 0744_Manual_Googletasks_Create_Triggered.json
    │   ├── 0746_Manual_Discord_Automation_Triggered.json
    │   ├── 0757_Manual_Wordpress_Create_Webhook.json
    │   ├── 0770_Manual_Stickynote_Create_Webhook.json
    │   ├── 0776_Manual_Mailerlite_Create_Triggered.json
    │   ├── 0779_Manual_HTTP_Create_Webhook.json
    │   ├── 0803_Manual_Customerio_Create_Triggered.json
    │   ├── 0821_Manual_Noop_Create_Triggered.json
    │   ├── 0827_Manual_Functionitem_Send_Triggered.json
    │   ├── 0838_Manual_GoogleSheets_Update_Triggered.json
    │   ├── 0853_Manual_Executecommand_Automate_Triggered.json
    │   ├── 0861_Manual_Stickynote_Update_Triggered.json
    │   ├── 0886_Manual_Stickynote_Import_Webhook.json
    │   ├── 0887_Manual_Stickynote_Create_Webhook.json
    │   ├── 0906_Manual_GoogleSheets_Update_Triggered.json
    │   ├── 0908_Manual_Stickynote_Automate_Triggered.json
    │   ├── 0909_Manual_Stickynote_Process_Triggered.json
    │   ├── 0928_Manual_N8N_Automate_Triggered.json
    │   ├── 0930_Manual_Spreadsheetfile_Export_Triggered.json
    │   ├── 0933_Manual_Stickynote_Create_Webhook.json
    │   ├── 0938_Manual_Mailchimp_Automation_Triggered.json
    │   ├── 0943_Manual_Xml_Automation_Triggered.json
    │   ├── 0949_Manual_Twilio_Automate_Triggered.json
    │   ├── 0951_Manual_Activecampaign_Automation_Triggered.json
    │   ├── 0954_Manual_Htmlextract_Automation_Webhook.json
    │   ├── 0957_Manual_Paypal_Automation_Triggered.json
    │   ├── 0959_Manual_Signl4_Automate_Triggered.json
    │   ├── 0960_Manual_Freshdesk_Automate_Triggered.json
    │   ├── 0962_Manual_Postgres_Automate_Triggered.json
    │   ├── 0975_Manual_Zulip_Automation_Scheduled.json
    │   ├── 0976_Manual_HTTP_Automation_Webhook.json
    │   ├── 0981_Manual_Awssns_Automate_Triggered.json
    │   ├── 0982_Manual_Mongodb_Automate_Triggered.json
    │   ├── 0983_Manual_Awsses_Automate_Triggered.json
    │   ├── 0985_Manual_Awslambda_Automate_Triggered.json
    │   ├── 0986_Manual_Msg91_Send_Triggered.json
    │   ├── 0987_Manual_Facebookgraphapi_Automation_Triggered.json
    │   ├── 0988_Manual_Writebinaryfile_Automate_Triggered.json
    │   ├── 0990_Manual_Cockpit_Automate_Triggered.json
    │   ├── 0991_Manual_Hunter_Automate_Triggered.json
    │   ├── 0993_Manual_Mailjet_Automate_Triggered.json
    │   ├── 0995_Manual_Mailgun_Automate_Triggered.json
    │   ├── 0996_Manual_Hackernews_Create_Triggered.json
    │   ├── 1000_Manual_Travisci_Create_Triggered.json
    │   ├── 1003_Manual_Invoiceninja_Automate_Triggered.json
    │   ├── 1008_Manual_Rundeck_Automate_Triggered.json
    │   ├── 1011_Manual_Xero_Automate_Triggered.json
    │   ├── 1012_Manual_Bannerbear_Automate_Triggered.json
    │   ├── 1013_Manual_Bannerbear_Automate_Triggered.json
    │   ├── 1014_Manual_Wordpress_Automate_Triggered.json
    │   ├── 1016_Manual_Shopify_Automate_Triggered.json
    │   ├── 1017_Manual_Mautic_Automate_Triggered.json
    │   ├── 1019_Manual_Paddle_Create_Triggered.json
    │   ├── 1021_Manual_Zohocrm_Automate_Triggered.json
    │   ├── 1022_Manual_Keap_Automate_Triggered.json
    │   ├── 1024_Manual_Mondaycom_Automate_Triggered.json
    │   ├── 1025_Manual_Redis_Automate_Triggered.json
    │   ├── 1026_Manual_Graphql_Automate_Triggered.json
    │   ├── 1027_Manual_Box_Automate_Triggered.json
    │   ├── 1028_Manual_Trello_Automation_Triggered.json
    │   ├── 1029_Manual_Xml_Process_Webhook.json
    │   ├── 1032_Manual_Microsoftonedrive_Automate_Triggered.json
    │   ├── 1033_Manual_Microsoftexcel_Automate_Triggered.json
    │   ├── 1034_Manual_Helpscout_Automate_Triggered.json
    │   ├── 1037_Manual_Mandrill_Automate_Triggered.json
    │   ├── 1038_Manual_Crypto_Automate_Triggered.json
    │   ├── 1039_Manual_Datetime_Automate_Triggered.json
    │   ├── 1040_Manual_Editimage_Update_Webhook.json
    │   ├── 1041_Manual_Readbinaryfile_Automate_Triggered.json
    │   ├── 1042_Manual_Readbinaryfiles_Automate_Triggered.json
    │   ├── 1044_Manual_Automate_Triggered.json
    │   ├── 1045_Manual_Renamekeys_Automate_Triggered.json
    │   ├── 1046_Manual_Rssfeedread_Automate_Triggered.json
    │   ├── 1047_Manual_Emailsend_Send_Triggered.json
    │   ├── 1048_Manual_Readpdf_Automate_Triggered.json
    │   ├── 1049_Manual_Readbinaryfile_Automate_Triggered.json
    │   ├── 1051_Manual_Executeworkflow_Automate_Triggered.json
    │   ├── 1053_Manual_Philipshue_Automation_Triggered.json
    │   ├── 1054_Manual_Cratedb_Automate_Triggered.json
    │   ├── 1055_Manual_Mysql_Automation_Triggered.json
    │   ├── 1056_Manual_Postgres_Automate_Triggered.json
    │   ├── 1057_Manual_Mocean_Send_Triggered.json
    │   ├── 1062_Manual_GoogleSheets_Update_Triggered.json
    │   ├── 1066_Manual_GitHub_Create_Triggered.json
    │   ├── 1073_Manual_GoogleSheets_Automate_Triggered.json
    │   ├── 1074_Manual_HTTP_Automation_Webhook.json
    │   ├── 1075_Manual_Wordpress_Create_Triggered.json
    │   ├── 1076_Manual_Cron_Automation_Scheduled.json
    │   ├── 1078_Manual_Dropbox_Automation_Webhook.json
    │   ├── 1080_Manual_HTTP_Automation_Webhook.json
    │   ├── 1086_Manual_Contentful_Automation_Triggered.json
    │   ├── 1087_Manual_Unleashedsoftware_Automation_Triggered.json
    │   ├── 1088_Manual_S3_Import_Webhook.json
    │   ├── 1089_Manual_Writebinaryfile_Automation_Webhook.json
    │   ├── 1090_Manual_Code_Automate_Triggered.json
    │   ├── 1093_Manual_Ftp_Automation_Webhook.json
    │   ├── 1094_Manual_Salesforce_Automate_Triggered.json
    │   ├── 1095_Manual_Teams_Automate_Triggered.json
    │   ├── 1096_Manual_Linkedin_Automation_Webhook.json
    │   ├── 1097_Manual_Noop_Automate_Triggered.json
    │   ├── 1098_Manual_Import_Triggered.json
    │   ├── 1100_Manual_Taiga_Create_Triggered.json
    │   ├── 1102_Manual_Openai_Automation_Triggered.json
    │   ├── 1105_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1115_Manual_Wekan_Automation_Triggered.json
    │   ├── 1122_Manual_Rssfeedread_Automation_Triggered.json
    │   ├── 1126_Manual_Clockify_Create_Triggered.json
    │   ├── 1128_Manual_HTTP_Automation_Webhook.json
    │   ├── 1136_Manual_HubSpot_Automation_Triggered.json
    │   ├── 1139_Manual_Medium_Automation_Triggered.json
    │   ├── 1154_Manual_Automizy_Create_Triggered.json
    │   ├── 1158_Manual_Matrix_Create_Triggered.json
    │   ├── 1159_Manual_Zoom_Automation_Triggered.json
    │   ├── 1162_Manual_Circleci_Import_Triggered.json
    │   ├── 1166_Manual_Messagebird_Send_Triggered.json
    │   ├── 1170_Manual_Jira_Create_Triggered.json
    │   ├── 1173_Manual_Openweathermap_Import_Triggered.json
    │   ├── 1174_Manual_Readbinaryfile_Automate_Triggered.json
    │   ├── 1175_Manual_Trello_Create_Triggered.json
    │   ├── 1181_Manual_Spotify_Automation_Triggered.json
    │   ├── 1183_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1189_Manual_Rocketchat_Send_Triggered.json
    │   ├── 1193_Manual_Intercom_Create_Triggered.json
    │   ├── 1196_Manual_Securityscorecard_Automate_Triggered.json
    │   ├── 1197_Manual_Reddit_Automate_Triggered.json
    │   ├── 1199_Manual_Sms77_Send_Triggered.json
    │   ├── 1200_Manual_Googletranslate_Automation_Triggered.json
    │   ├── 1201_Manual_Discourse_Automate_Triggered.json
    │   ├── 1203_Manual_Stackby_Automate_Triggered.json
    │   ├── 1204_Manual_Peekalink_Automate_Triggered.json
    │   ├── 1205_Manual_Tapfiliate_Automate_Triggered.json
    │   ├── 1206_Manual_Strava_Create_Triggered.json
    │   ├── 1210_Manual_Affinity_Create_Triggered.json
    │   ├── 1216_Manual_Schedule_Automate_Scheduled.json
    │   ├── 1218_Manual_Mailerlite_Create_Triggered.json
    │   ├── 1219_Manual_Agilecrm_Create_Triggered.json
    │   ├── 1225_Manual_Asana_Create_Triggered.json
    │   ├── 1231_Manual_Splitinbatches_Automate_Triggered.json
    │   ├── 1232_Manual_Splitinbatches_Automate_Triggered.json
    │   ├── 1234_Manual_Microsoftsql_Automation_Triggered.json
    │   ├── 1235_Manual_HTTP_Automation_Webhook.json
    │   ├── 1238_Manual_Code_Automation_Webhook.json
    │   ├── 1241_Manual_HTTP_Process_Webhook.json
    │   ├── 1285_Manual_Stickynote_Import_Triggered.json
    │   ├── 1303_Manual_Stickynote_Create_Triggered.json
    │   ├── 1314_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1319_Manual_Stickynote_Automation_Triggered.json
    │   ├── 1322_Manual_Wordpress_Automation_Triggered.json
    │   ├── 1339_Manual_HTTP_Automation_Webhook.json
    │   ├── 1351_Manual_Splitout_Automation_Webhook.json
    │   ├── 1360_Manual_Stickynote_Create_Triggered.json
    │   ├── 1373_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1376_Manual_GoogleDrive_Automation_Triggered.json
    │   ├── 1390_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1393_Manual_Editimage_Create_Webhook.json
    │   ├── 1394_Manual_Humanticai_Create_Webhook.json
    │   ├── 1397_Manual_Stickynote_Automation_Triggered.json
    │   ├── 1422_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1436_Manual_HTTP_Automation_Webhook.json
    │   ├── 1445_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1449_Manual_Webhook_Automate_Webhook.json
    │   ├── 1457_Manual_Stickynote_Process_Triggered.json
    │   ├── 1467_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1475_Manual_Stickynote_Automation_Triggered.json
    │   ├── 1503_Manual_HTTP_Export_Webhook.json
    │   ├── 1505_Manual_Stickynote_Send_Webhook.json
    │   ├── 1511_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1516_Manual_Stickynote_Send_Webhook.json
    │   ├── 1517_Manual_Code_Automation_Webhook.json
    │   ├── 1528_Manual_Gmail_Send_Triggered.json
    │   ├── 1532_Manual_Wait_Automation_Webhook.json
    │   ├── 1543_Manual_Openai_Automation_Triggered.json
    │   ├── 1545_Manual_Code_Automation_Triggered.json
    │   ├── 1546_Manual_Splitout_Automation_Webhook.json
    │   ├── 1547_Manual_HTTP_Automation_Webhook.json
    │   ├── 1552_Manual_Summarize_Automation_Triggered.json
    │   ├── 1581_Manual_Stickynote_Create_Triggered.json
    │   ├── 1584_Manual_HTTP_Automation_Webhook.json
    │   ├── 1604_Manual_Openai_Automation_Triggered.json
    │   ├── 1616_Manual_Stickynote_Send_Webhook.json
    │   ├── 1621_Manual_Stickynote_Automate_Webhook.json
    │   ├── 1622_Manual_N8N_Automation_Triggered.json
    │   ├── 1633_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1636_Manual_Openai_Automation_Triggered.json
    │   ├── 1650_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1669_Manual_Openai_Automation_Triggered.json
    │   ├── 1676_Manual_Wait_Automation_Webhook.json
    │   ├── 1702_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1704_Manual_Schedule_Automation_Scheduled.json
    │   ├── 1707_Manual_Stickynote_Automate_Webhook.json
    │   ├── 1714_Manual_Start_Update_Webhook.json
    │   ├── 1735_Manual_Airtop_Automation_Triggered.json
    │   ├── 1739_Manual_GoogleSheets_Create_Triggered.json
    │   ├── 1766_Manual_GoogleSheets_Automation_Triggered.json
    │   ├── 1776_Manual_Ftp_Automation_Triggered.json
    │   ├── 1817_Manual_HTTP_Update_Webhook.json
    │   ├── 1821_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1826_Manual_Wordpress_Automation_Triggered.json
    │   ├── 1828_Manual_Totp_Automation_Triggered.json
    │   ├── 1835_Manual_Slack_Automation_Triggered.json
    │   ├── 1842_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1851_Manual_Comparedatasets_Automation_Triggered.json
    │   ├── 1853_Manual_N8N_Create_Triggered.json
    │   ├── 1863_Manual_HTTP_Automation_Webhook.json
    │   ├── 1866_Manual_Supabase_Automation_Triggered.json
    │   ├── 1869_Manual_N8Ntrainingcustomerdatastore_Automation_Triggered.json
    │   ├── 1882_Manual_Markdown_Automation_Webhook.json
    │   ├── 1884_Manual_Stickynote_Import_Webhook.json
    │   ├── 1901_Manual_Filter_Automate_Scheduled.json
    │   ├── 1912_Manual_GoogleSheets_Automation_Triggered.json
    │   ├── 1960_Manual_Stickynote_Create_Webhook.json
    │   ├── 1961_Manual_Readbinaryfile_Import_Triggered.json
    │   ├── 1971_Manual_HTTP_Automate_Webhook.json
    │   ├── 1979_Manual_Stickynote_Automation_Webhook.json
    │   ├── 1999_Manual_HTTP_Import_Webhook.json
    │   ├── 2001_Manual_Stickynote_Automation_Webhook.json
    │   ├── 2002_Manual_Code_Automation_Webhook.json
    │   ├── 2013_Manual_Stickynote_Create_Webhook.json
    │   ├── 2017_Manual_Stickynote_Import_Webhook.json
    │   ├── 2021_Manual_GoogleSheets_Automation_Triggered.json
    │   ├── 2022_Manual_Extractfromfile_Update_Webhook.json
    │   ├── 2032_Manual_HTTP_Send_Webhook.json
    │   ├── 2035_Manual_GoogleSheets_Automation_Webhook.json
    │   └── 2037_Manual_N8N_Automation_Triggered.json
    ├── Markdown/
    │   ├── 1240_Markdown_Stickynote_Send.json
    │   ├── 1540_Markdown_Stickynote_Automation_Webhook.json
    │   └── 1571_Markdown_Stickynote_Send.json
    ├── Matrix/
    │   └── 1236_Matrix_Cron_Automate_Scheduled.json
    ├── Mattermost/
    │   ├── 0017_Mattermost_Emelia_Automate_Triggered.json
    │   ├── 0020_Mattermost_Emelia_Automate_Triggered.json
    │   ├── 0027_Mattermost_N8N_Automate_Triggered.json
    │   ├── 0028_Mattermost_Workflow_Automate_Webhook.json
    │   ├── 0040_Mattermost_Noop_Automate_Triggered.json
    │   ├── 0132_Mattermost_Googlecloudnaturallanguage_Send_Triggered.json
    │   ├── 0169_Mattermost_Profitwell_Send_Scheduled.json
    │   ├── 0180_Mattermost_Airtable_Create_Triggered.json
    │   ├── 0294_Mattermost_Woocommerce_Create_Triggered.json
    │   ├── 0301_Mattermost_Noop_Automation_Webhook.json
    │   ├── 0357_Mattermost_Twitter_Automation_Scheduled.json
    │   ├── 0850_Mattermost_Pagerduty_Automate_Webhook.json
    │   ├── 0855_Mattermost_Pagerduty_Automate_Webhook.json
    │   ├── 0857_Mattermost_Webhook_Automate_Webhook.json
    │   ├── 0865_Mattermost_Twilio_Automate_Triggered.json
    │   ├── 0941_Mattermost_GoogleSheets_Automation_Scheduled.json
    │   ├── 1077_Mattermost_Webhook_Automate_Webhook.json
    │   ├── 1117_Mattermost_GoogleSheets_Automate_Scheduled.json
    │   ├── 1137_Mattermost_Cron_Automate_Scheduled.json
    │   ├── 1167_Mattermost_GoogleSheets_Create_Scheduled.json
    │   ├── 1215_Mattermost_Typeform_Automate_Triggered.json
    │   ├── 1221_Mattermost_Lemlist_Automate_Triggered.json
    │   ├── 1309_Mattermost_Googlecloudnaturallanguage_Send_Triggered.json
    │   └── 1310_Mattermost_Typeform_Send_Triggered.json
    ├── Mautic/
    │   ├── 0155_Mautic_Twilio_Update_Triggered.json
    │   ├── 0275_Mautic_Mondaycom_Create_Triggered.json
    │   ├── 0490_Mautic_Gmail_Send_Triggered.json
    │   ├── 0963_Mautic_Webhook_Update_Webhook.json
    │   ├── 1083_Mautic_GoogleSheets_Automate_Scheduled.json
    │   ├── 1160_Mautic_Woocommerce_Create_Triggered.json
    │   ├── 1168_Mautic_Slack_Send_Triggered.json
    │   └── 1526_Mautic_Webhook_Automation_Webhook.json
    ├── Microsoftexcel/
    │   └── 0258_Microsoftexcel_Manual_Create_Triggered.json
    ├── Microsoftonedrive/
    │   └── 0276_Microsoftonedrive_Readbinaryfile_Automation_Webhook.json
    ├── Microsoftoutlook/
    │   ├── 0835_Microsoftoutlook_Schedule_Automation_Scheduled.json
    │   ├── 1870_Microsoftoutlook_GoogleCalendar_Automation_Triggered.json
    │   ├── 1925_Microsoftoutlook_Microsoftoutlooktool_Automation_Triggered.json
    │   └── 1944_Microsoftoutlook_Telegram_Send_Triggered.json
    ├── Microsofttodo/
    │   └── 1494_Microsofttodo_Webhook_Automation_Webhook.json
    ├── Mondaycom/
    │   ├── 1551_Mondaycom_Schedule_Send_Scheduled.json
    │   ├── 1553_Mondaycom_Splitout_Automation_Webhook.json
    │   ├── 1781_Mondaycom_Splitout_Import_Triggered.json
    │   └── 1974_Mondaycom_Schedule_Send_Scheduled.json
    ├── Mongodbtool/
    │   ├── 0511_Mongodbtool_Stickynote_Automation_Triggered.json
    │   └── 1555_Mongodbtool_Stickynote_Automation_Triggered.json
    ├── Mqtt/
    │   └── 0992_Mqtt_Send_Triggered.json
    ├── Mysqltool/
    │   ├── 1350_Mysqltool_Stickynote_Automate_Webhook.json
    │   └── 1372_Mysqltool_Stickynote_Automate_Webhook.json
    ├── N8ntrainingcustomermessenger/
    │   └── 0230_N8Ntrainingcustomermessenger_Wait_Create_Triggered.json
    ├── Netlify/
    │   ├── 0103_Netlify_Airtable_Automate_Triggered.json
    │   ├── 0104_Netlify_Webhook_Automate_Webhook.json
    │   └── 0105_Netlify_Slack_Automate_Triggered.json
    ├── Nocodb/
    │   └── 0193_Nocodb_Telegram_Create_Webhook.json
    ├── Noop/
    │   ├── 0061_Noop_GitHub_Automate_Triggered.json
    │   ├── 0083_Noop_HTTP_Automation_Webhook.json
    │   ├── 0089_Noop_Telegram_Automate_Triggered.json
    │   ├── 0094_Noop_Gmail_Create_Triggered.json
    │   ├── 0096_Noop_GitHub_Automate_Triggered.json
    │   ├── 0108_Noop_GitHub_Create_Triggered.json
    │   ├── 0172_Noop_GoogleSheets_Create_Webhook.json
    │   ├── 0174_Noop_Emailsend_Automation_Scheduled.json
    │   ├── 0209_Noop_Kafka_Send_Triggered.json
    │   ├── 0212_Noop_Cratedb_Automation_Triggered.json
    │   ├── 0291_Noop_Rabbitmq_Send_Triggered.json
    │   ├── 0327_Noop_Slack_Send_Webhook.json
    │   ├── 0416_Noop_HubSpot_Create_Webhook.json
    │   ├── 0610_Noop_Twilio_Automate_Scheduled.json
    │   ├── 0748_Noop_Telegram_Automation_Scheduled.json
    │   ├── 0809_Noop_Slack_Send_Scheduled.json
    │   ├── 0929_Noop_Extractfromfile_Automation.json
    │   ├── 1091_Noop_Trello_Import_Triggered.json
    │   ├── 1130_Noop_Twilio_Send_Scheduled.json
    │   ├── 1150_Noop_Executecommand_Automation_Scheduled.json
    │   ├── 1442_Noop_Stickynote_Automation_Triggered.json
    │   ├── 1486_Noop_Stickynote_Automation_Triggered.json
    │   ├── 1838_Noop_Stickynote_Automation_Triggered.json
    │   └── 1892_Noop_Mautic_Automation_Webhook.json
    ├── Notion/
    │   ├── 0141_Notion_Webhook_Create_Webhook.json
    │   ├── 0142_Notion_Webhook_Create_Webhook.json
    │   └── 0272_Notion_GoogleDrive_Create_Triggered.json
    ├── Odoo/
    │   ├── 0977_Odoo_Code_Import_Scheduled.json
    │   └── 1929_Odoo_Schedule_Automate_Scheduled.json
    ├── Onfleet/
    │   └── 0187_Onfleet_GoogleDrive_Create_Triggered.json
    ├── Openai/
    │   ├── 0248_Openai_Telegram_Automate_Triggered.json
    │   ├── 0334_Openai_Form_Create_Triggered.json
    │   ├── 0464_Openai_Form_Create_Webhook.json
    │   ├── 0785_Openai_Twitter_Create.json
    │   ├── 1177_Openai_GoogleSheets_Create_Triggered.json
    │   ├── 1256_Openai_Form_Automation_Triggered.json
    │   ├── 1618_Openai_GoogleSheets_Create_Triggered.json
    │   └── 1685_Openai_Telegram_Automate_Triggered.json
    ├── Openweathermap/
    │   ├── 0006_Openweathermap_Cron_Automate_Scheduled.json
    │   ├── 0065_Openweathermap_Line_Update_Scheduled.json
    │   ├── 0072_Openweathermap_Cron_Update_Scheduled.json
    │   ├── 0161_Openweathermap_Spontit_Update_Scheduled.json
    │   ├── 0196_Openweathermap_Webhook_Automation_Webhook.json
    │   ├── 0751_Openweathermap_Telegram_Automate_Triggered.json
    │   ├── 1101_Openweathermap_Twilio_Automate_Scheduled.json
    │   ├── 1118_Openweathermap_Webhook_Automate_Webhook.json
    │   ├── 1119_Openweathermap_Twilio_Automate_Webhook.json
    │   ├── 1156_Openweathermap_Cron_Update_Scheduled.json
    │   ├── 1163_Openweathermap_Cron_Update_Scheduled.json
    │   ├── 1195_Openweathermap_Pushover_Update_Scheduled.json
    │   └── 1222_Openweathermap_Webhook_Create_Webhook.json
    ├── Paypal/
    │   └── 0965_Paypal_Update_Triggered.json
    ├── Pipedrive/
    │   ├── 0071_Pipedrive_Update_Triggered.json
    │   ├── 0249_Pipedrive_Stickynote_Create_Webhook.json
    │   └── 0251_Pipedrive_Spreadsheetfile_Create_Triggered.json
    ├── Postgres/
    │   ├── 0263_Postgres_Code_Automation_Webhook.json
    │   ├── 0460_Postgres_Filter_Import_Scheduled.json
    │   ├── 0666_Postgres_Webhook_Create_Webhook.json
    │   ├── 1108_Postgres_Googlecloudnaturallanguage_Automation_Scheduled.json
    │   ├── 1144_Postgres_Code_Automation_Triggered.json
    │   ├── 1245_Postgres_Extractfromfile_Automation_Triggered.json
    │   ├── 1249_Postgres_Webhook_Automation_Webhook.json
    │   ├── 1421_Postgres_Googlecloudnaturallanguage_Automation_Scheduled.json
    │   ├── 1752_Postgres_Wordpress_Automation_Webhook.json
    │   ├── 1788_Postgres_Code_Automation_Webhook.json
    │   ├── 1942_Postgres_Wordpress_Automation_Webhook.json
    │   └── 2014_Postgres_Webhook_Automation_Webhook.json
    ├── Postgrestool/
    │   ├── 0404_Postgrestool_Stickynote_Send_Triggered.json
    │   ├── 0656_Postgrestool_Stickynote_Send_Triggered.json
    │   ├── 1251_Postgrestool_Stickynote_Automation_Triggered.json
    │   ├── 1377_Postgrestool_Stickynote_Automation_Triggered.json
    │   └── 1848_Postgrestool_Stickynote_Automation_Triggered.json
    ├── Posthog/
    │   └── 1217_Posthog_Webhook_Automate_Webhook.json
    ├── Postmark/
    │   └── 0968_Postmark_Update_Triggered.json
    ├── Process/
    │   └── 0009_Process.json
    ├── Quickbooks/
    │   ├── 0186_Quickbooks_Onfleet_Create_Triggered.json
    │   └── 1208_Quickbooks_Automate.json
    ├── Raindrop/
    │   └── 1209_Raindrop_Automate.json
    ├── Readbinaryfile/
    │   ├── 0118_Readbinaryfile_Onfleet_Create.json
    │   ├── 0220_Readbinaryfile_Manual_Automate_Triggered.json
    │   ├── 0351_Readbinaryfile_Manual_Automate_Triggered.json
    │   ├── 0352_Readbinaryfile_Spreadsheetfile_Create.json
    │   └── 0749_Readbinaryfile_Movebinarydata_Send_Scheduled.json
    ├── Readbinaryfiles/
    │   ├── 0171_Readbinaryfiles_Code_Automation_Webhook.json
    │   ├── 1583_Readbinaryfiles_Code_Automation_Webhook.json
    │   └── 2036_Readbinaryfiles_Filter_Import_Triggered.json
    ├── Redis/
    │   ├── 0387_Redis_Code_Create_Scheduled.json
    │   ├── 0497_Redis_Schedule_Import_Scheduled.json
    │   └── 1933_Redis_Code_Create_Webhook.json
    ├── Removeduplicates/
    │   └── 1854_Removeduplicates_Converttofile_Automation_Webhook.json
    ├── Respondtowebhook/
    │   ├── 0121_Respondtowebhook_Webhook_Automate_Webhook.json
    │   ├── 0163_Respondtowebhook_Spreadsheetfile_Automate_Webhook.json
    │   ├── 0194_Respondtowebhook_Webhook_Import_Webhook.json
    │   ├── 0232_Respondtowebhook_Stickynote_Create_Webhook.json
    │   ├── 0576_Respondtowebhook_Form_Automation_Webhook.json
    │   ├── 0586_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 0590_Respondtowebhook_Stickynote_Send_Webhook.json
    │   ├── 0597_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 0811_Respondtowebhook_Webhook_Automate_Webhook.json
    │   ├── 0900_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 1266_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1311_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1387_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1455_Respondtowebhook_Form_Automation_Webhook.json
    │   ├── 1466_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1474_Respondtowebhook_Stickynote_Create_Webhook.json
    │   ├── 1476_Respondtowebhook_Stickynote_Import_Webhook.json
    │   ├── 1577_Respondtowebhook_Stickynote_Create_Webhook.json
    │   ├── 1608_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1662_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   ├── 1692_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 1693_Respondtowebhook_Stickynote_Automate_Webhook.json
    │   ├── 1803_Respondtowebhook_Stickynote_Import_Webhook.json
    │   ├── 1953_Respondtowebhook_Stickynote_Monitor_Webhook.json
    │   ├── 1967_Respondtowebhook_Stickynote_Automation_Webhook.json
    │   └── 1997_Respondtowebhook_Stickynote_Automation_Webhook.json
    ├── Rssfeedread/
    │   ├── 0188_Rssfeedread_Telegram_Create_Scheduled.json
    │   ├── 1176_Rssfeedread_Slack_Automation_Scheduled.json
    │   ├── 1180_Rssfeedread_Htmlextract_Create_Scheduled.json
    │   ├── 1186_Rssfeedread_Telegram_Create_Triggered.json
    │   ├── 1536_Rssfeedread_Extractfromfile_Automation_Webhook.json
    │   └── 1659_Rssfeedread_Extractfromfile_Automation_Webhook.json
    ├── Schedule/
    │   ├── 0382_Schedule_Spotify_Create_Scheduled.json
    │   ├── 0402_Schedule_Filter_Update_Scheduled.json
    │   ├── 0412_Schedule_HTTP_Update_Scheduled.json
    │   ├── 0417_Schedule_Gmail_Send_Scheduled.json
    │   ├── 0422_Schedule_HTTP_Send_Webhook.json
    │   ├── 0432_Schedule_Filter_Create_Scheduled.json
    │   ├── 0443_Schedule_Filter_Automation_Scheduled.json
    │   ├── 0448_Schedule_HTTP_Create_Webhook.json
    │   ├── 0474_Schedule_GoogleSheets_Automation_Scheduled.json
    │   ├── 0478_Schedule_HTTP_Create_Webhook.json
    │   ├── 0486_Schedule_Telegram_Create_Scheduled.json
    │   ├── 0487_Schedule_Telegram_Create_Scheduled.json
    │   ├── 0526_Schedule_Slack_Create_Scheduled.json
    │   ├── 0527_Schedule_Manual_Update_Scheduled.json
    │   ├── 0529_Schedule_Slack_Update_Webhook.json
    │   ├── 0539_Schedule_Twilio_Create_Webhook.json
    │   ├── 0563_Schedule_Filter_Update_Scheduled.json
    │   ├── 0631_Schedule_Wordpress_Automate_Scheduled.json
    │   ├── 0711_Schedule_Slack_Create_Scheduled.json
    │   ├── 0720_Schedule_Filter_Create_Scheduled.json
    │   ├── 0729_Schedule_Stickynote_Send_Scheduled.json
    │   ├── 0758_Schedule_Manual_Monitor_Scheduled.json
    │   ├── 0795_Schedule_Mailchimp_Create_Scheduled.json
    │   ├── 0817_Schedule_Removeduplicates_Create_Webhook.json
    │   ├── 0907_Schedule_Removeduplicates_Create_Scheduled.json
    │   ├── 0911_Schedule_Removeduplicates_Create_Scheduled.json
    │   ├── 0912_Schedule_Removeduplicates_Create_Scheduled.json
    │   ├── 1270_Schedule_Manual_Automation_Scheduled.json
    │   ├── 1275_Schedule_Telegram_Automation_Scheduled.json
    │   ├── 1276_Schedule_Telegram_Automation_Scheduled.json
    │   ├── 1345_Schedule_Discord_Automation_Scheduled.json
    │   ├── 1399_Schedule_Slack_Automation_Scheduled.json
    │   ├── 1406_Schedule_Slack_Automation_Scheduled.json
    │   ├── 1418_Schedule_Nocodb_Automation_Scheduled.json
    │   ├── 1492_Schedule_Twilio_Automation_Webhook.json
    │   ├── 1524_Schedule_Manual_Automation_Scheduled.json
    │   ├── 1574_Schedule_Youtube_Create_Scheduled.json
    │   ├── 1602_Schedule_Youtube_Create_Scheduled.json
    │   ├── 1607_Schedule_Notion_Sync_Scheduled.json
    │   ├── 1614_Schedule_HTTP_Send_Webhook.json
    │   ├── 1629_Schedule_Stickynote_Automation_Scheduled.json
    │   ├── 1697_Schedule_HTTP_Monitor_Scheduled.json
    │   ├── 1718_Schedule_Filter_Automation_Scheduled.json
    │   ├── 1738_Schedule_Comparedatasets_Automation_Scheduled.json
    │   ├── 1750_Schedule_Extractfromfile_Import_Scheduled.json
    │   ├── 1820_Schedule_N8N_Automate_Scheduled.json
    │   ├── 1859_Schedule_Slack_Monitor_Scheduled.json
    │   ├── 1867_Schedule_Filter_Sync_Scheduled.json
    │   ├── 1891_Schedule_Slack_Automation_Scheduled.json
    │   ├── 1932_Schedule_Telegram_Send_Scheduled.json
    │   ├── 1952_Schedule_HTTP_Monitor_Webhook.json
    │   └── 2045_Schedule_HTTP_Create_Scheduled.json
    ├── Send/
    │   ├── 0320_Send_Triggered.json
    │   ├── 0804_Send_Triggered.json
    │   └── 1409_Send.json
    ├── Shopify/
    │   ├── 0085_Shopify_Twitter_Create_Triggered.json
    │   ├── 0152_Shopify_Onfleet_Create_Triggered.json
    │   ├── 0185_Shopify_Onfleet_Automation_Triggered.json
    │   ├── 0265_Shopify_HubSpot_Create_Triggered.json
    │   ├── 0268_Shopify_Zendesk_Create_Triggered.json
    │   ├── 0269_Shopify_Zendesk_Create_Triggered.json
    │   ├── 0278_Shopify_Mautic_Create_Triggered.json
    │   ├── 0961_Shopify_Filter_Create_Triggered.json
    │   ├── 1015_Shopify_Automate_Triggered.json
    │   └── 1786_Shopify_Filter_Create_Triggered.json
    ├── Signl4/
    │   └── 0055_Signl4_Interval_Create_Scheduled.json
    ├── Slack/
    │   ├── 0008_Slack_Stripe_Create_Triggered.json
    │   ├── 0109_Slack_Cron_Automate_Scheduled.json
    │   ├── 0124_Slack_Typeform_Create_Triggered.json
    │   ├── 0176_Slack_Onfleet_Send_Triggered.json
    │   ├── 0423_Slack_Hunter_Send_Webhook.json
    │   ├── 0552_Slack_Stickynote_Send_Webhook.json
    │   ├── 0761_Slack_Comparedatasets_Create_Triggered.json
    │   ├── 0940_Slack_Manual_Automation_Scheduled.json
    │   ├── 1063_Slack_Graphql_Automation_Webhook.json
    │   ├── 1082_Slack_Readbinaryfile_Create.json
    │   ├── 1172_Slack_HubSpot_Send_Triggered.json
    │   ├── 1191_Slack_Typeform_Automate_Triggered.json
    │   ├── 1194_Slack_Emailreadimap_Create.json
    │   ├── 1318_Slack_Stickynote_Automation_Triggered.json
    │   ├── 1396_Slack_Stickynote_Automate_Webhook.json
    │   ├── 1592_Slack_Stickynote_Automate_Webhook.json
    │   ├── 1643_Slack_Manual_Automate_Webhook.json
    │   └── 1663_Slack_Stickynote_Automate_Webhook.json
    ├── Splitinbatches/
    │   └── 0070_Splitinbatches_Notion_Export_Scheduled.json
    ├── Splitout/
    │   ├── 0318_Splitout_Limit_Automation_Webhook.json
    │   ├── 0322_Splitout_Code_Send_Triggered.json
    │   ├── 0339_Splitout_Code_Update_Webhook.json
    │   ├── 0386_Splitout_Filter_Update_Scheduled.json
    │   ├── 0418_Splitout_Filter_Export_Scheduled.json
    │   ├── 0421_Splitout_Schedule_Import_Webhook.json
    │   ├── 0428_Splitout_GoogleCalendar_Send_Webhook.json
    │   ├── 0429_Splitout_GoogleCalendar_Send_Webhook.json
    │   ├── 0433_Splitout_Webhook_Update_Webhook.json
    │   ├── 0434_Splitout_Webhook_Automation_Webhook.json
    │   ├── 0435_Splitout_Filter_Create_Webhook.json
    │   ├── 0442_Splitout_Schedule_Send_Scheduled.json
    │   ├── 0445_Splitout_Code_Import_Scheduled.json
    │   ├── 0449_Splitout_Webhook_Create_Webhook.json
    │   ├── 0452_Splitout_Webhook_Create_Webhook.json
    │   ├── 0457_Splitout_Webhook_Create_Webhook.json
    │   ├── 0459_Splitout_Webhook_Update_Webhook.json
    │   ├── 0468_Splitout_Code_Create_Webhook.json
    │   ├── 0500_Splitout_Schedule_Send_Scheduled.json
    │   ├── 0503_Splitout_Code_Create_Scheduled.json
    │   ├── 0512_Splitout_Code_Update_Webhook.json
    │   ├── 0520_Splitout_Filter_Create_Webhook.json
    │   ├── 0528_Splitout_GoogleCalendar_Create_Scheduled.json
    │   ├── 0530_Splitout_GoogleCalendar_Create_Webhook.json
    │   ├── 0532_Splitout_Elasticsearch_Create_Webhook.json
    │   ├── 0554_Splitout_Code_Create_Webhook.json
    │   ├── 0555_Splitout_Code_Export_Webhook.json
    │   ├── 0556_Splitout_Code_Create_Webhook.json
    │   ├── 0560_Splitout_Filter_Import_Webhook.json
    │   ├── 0562_Splitout_Filter_Create_Webhook.json
    │   ├── 0570_Splitout_Datetime_Create_Webhook.json
    │   ├── 0579_Splitout_Editimage_Update_Triggered.json
    │   ├── 0587_Splitout_Filter_Send_Webhook.json
    │   ├── 0607_Splitout_Aggregate_Automate_Triggered.json
    │   ├── 0608_Splitout_Code_Import_Webhook.json
    │   ├── 0613_Splitout_Code_Create_Webhook.json
    │   ├── 0614_Splitout_Manual_Import_Webhook.json
    │   ├── 0618_Splitout_Code_Create_Scheduled.json
    │   ├── 0625_Splitout_Code_Create_Triggered.json
    │   ├── 0634_Splitout_Manual_Export_Webhook.json
    │   ├── 0638_Splitout_Redis_Create_Webhook.json
    │   ├── 0643_Splitout_Snowflake_Import_Scheduled.json
    │   ├── 0645_Splitout_Code_Sync_Webhook.json
    │   ├── 0649_Splitout_GoogleCalendar_Create_Webhook.json
    │   ├── 0650_Splitout_Webhook_Create_Webhook.json
    │   ├── 0652_Splitout_Schedule_Create_Scheduled.json
    │   ├── 0654_Splitout_Code_Create_Webhook.json
    │   ├── 0657_Splitout_Schedule_Update_Webhook.json
    │   ├── 0659_Splitout_Schedule_Create_Scheduled.json
    │   ├── 0663_Splitout_Schedule_Update_Scheduled.json
    │   ├── 0664_Splitout_Limit_Create_Webhook.json
    │   ├── 0680_Splitout_HTTP_Send_Webhook.json
    │   ├── 0698_Splitout_Code_Automation_Triggered.json
    │   ├── 0699_Splitout_Code_Create_Webhook.json
    │   ├── 0712_Splitout_Code_Update_Webhook.json
    │   ├── 0714_Splitout_Zendesk_Update_Triggered.json
    │   ├── 0724_Splitout_Code_Create_Webhook.json
    │   ├── 0725_Splitout_Code_Update_Triggered.json
    │   ├── 0730_Splitout_Noop_Send_Triggered.json
    │   ├── 0731_Splitout_Limit_Create_Webhook.json
    │   ├── 0740_Splitout_Code_Automation_Webhook.json
    │   ├── 0759_Splitout_Comparedatasets_Create_Triggered.json
    │   ├── 0760_Splitout_Code_Send_Webhook.json
    │   ├── 0772_Splitout_Filter_Process_Webhook.json
    │   ├── 0774_Splitout_Code_Automate_Webhook.json
    │   ├── 0780_Splitout_Filter_Process_Webhook.json
    │   ├── 0790_Splitout_Schedule_Create_Webhook.json
    │   ├── 0792_Splitout_Code_Monitor_Scheduled.json
    │   ├── 0793_Splitout_Code_Send_Triggered.json
    │   ├── 0797_Splitout_Code_Monitor_Webhook.json
    │   ├── 0798_Splitout_Code_Automation_Webhook.json
    │   ├── 0799_Splitout_Executecommand_Automate_Scheduled.json
    │   ├── 0810_Splitout_Schedule_Automation_Webhook.json
    │   ├── 0816_Splitout_Code_Automation_Scheduled.json
    │   ├── 0819_Splitout_Schedule_Create_Scheduled.json
    │   ├── 0832_Splitout_Limit_Create_Webhook.json
    │   ├── 0833_Splitout_Schedule_Create_Webhook.json
    │   ├── 0840_Splitout_HTTP_Send_Webhook.json
    │   ├── 0846_Splitout_Code_Create_Webhook.json
    │   ├── 0854_Splitout_Filter_Create_Scheduled.json
    │   ├── 0859_Splitout_Code_Create_Scheduled.json
    │   ├── 0860_Splitout_Limit_Send_Webhook.json
    │   ├── 0877_Splitout_Code_Create_Webhook.json
    │   ├── 0883_Splitout_Code_Create_Webhook.json
    │   ├── 0894_Splitout_Redis_Create_Triggered.json
    │   ├── 0895_Splitout_Code_Create_Webhook.json
    │   ├── 0899_Splitout_GoogleCalendar_Update_Webhook.json
    │   ├── 0902_Splitout_Code_Create_Scheduled.json
    │   ├── 0913_Splitout_Code_Create_Webhook.json
    │   ├── 0915_Splitout_Code_Create_Webhook.json
    │   ├── 0919_Splitout_Extractfromfile_Create_Webhook.json
    │   ├── 0921_Splitout_Code_Send_Scheduled.json
    │   ├── 0923_Splitout_Code_Send_Scheduled.json
    │   ├── 0958_Splitout_Webhook_Automation_Webhook.json
    │   ├── 1058_Splitout_Code_Import_Triggered.json
    │   ├── 1059_Splitout_Code_Automation_Webhook.json
    │   ├── 1143_Splitout_Filter_Automation_Webhook.json
    │   ├── 1146_Splitout_Code_Automation_Webhook.json
    │   ├── 1147_Splitout_GitHub_Automation_Webhook.json
    │   ├── 1169_Splitout_Code_Import_Webhook.json
    │   ├── 1243_Splitout_Limit_Automation_Webhook.json
    │   ├── 1258_Splitout_Code_Automation_Webhook.json
    │   ├── 1260_Splitout_Manual_Automation_Webhook.json
    │   ├── 1283_Splitout_Webhook_Automation_Webhook.json
    │   ├── 1297_Splitout_GoogleCalendar_Automation_Webhook.json
    │   ├── 1306_Splitout_Schedule_Automation_Webhook.json
    │   ├── 1323_Splitout_Code_Automation_Webhook.json
    │   ├── 1325_Splitout_Limit_Automate_Webhook.json
    │   ├── 1329_Splitout_Editimage_Automate_Triggered.json
    │   ├── 1332_Splitout_Zendesk_Send_Triggered.json
    │   ├── 1333_Splitout_GoogleCalendar_Automate_Webhook.json
    │   ├── 1343_Splitout_Editimage_Automation_Webhook.json
    │   ├── 1344_Splitout_Filter_Automation_Webhook.json
    │   ├── 1352_Splitout_Filter_Automate_Triggered.json
    │   ├── 1355_Splitout_Webhook_Automate_Webhook.json
    │   ├── 1363_Splitout_GitHub_Create_Webhook.json
    │   ├── 1381_Splitout_Code_Automation_Webhook.json
    │   ├── 1388_Splitout_Redis_Automation_Webhook.json
    │   ├── 1398_Splitout_Code_Automation_Webhook.json
    │   ├── 1403_Splitout_Datetime_Send_Webhook.json
    │   ├── 1407_Splitout_Schedule_Automation_Scheduled.json
    │   ├── 1408_Splitout_Code_Monitor_Triggered.json
    │   ├── 1412_Splitout_Code_Automation_Scheduled.json
    │   ├── 1425_Splitout_Elasticsearch_Create_Webhook.json
    │   ├── 1437_Splitout_Code_Automation_Triggered.json
    │   ├── 1443_Splitout_Extractfromfile_Automation_Triggered.json
    │   ├── 1451_Splitout_Schedule_Automation_Webhook.json
    │   ├── 1454_Splitout_Schedule_Import_Webhook.json
    │   ├── 1459_Splitout_Converttofile_Create_Webhook.json
    │   ├── 1463_Splitout_Code_Automate_Webhook.json
    │   ├── 1468_Splitout_Code_Automation_Webhook.json
    │   ├── 1471_Splitout_Aggregate_Create_Triggered.json
    │   ├── 1489_Splitout_Code_Automation_Webhook.json
    │   ├── 1495_Splitout_Limit_Import_Webhook.json
    │   ├── 1499_Splitout_Filter_Monitor_Triggered.json
    │   ├── 1531_Splitout_Comparedatasets_Sync_Webhook.json
    │   ├── 1542_Splitout_HTTP_Create_Webhook.json
    │   ├── 1548_Splitout_Code_Automation_Webhook.json
    │   ├── 1556_Splitout_Code_Monitor_Scheduled.json
    │   ├── 1559_Splitout_Code_Automate_Webhook.json
    │   ├── 1560_Splitout_Code_Automation_Webhook.json
    │   ├── 1564_Splitout_Manual_Create_Webhook.json
    │   ├── 1585_Splitout_Code_Update_Webhook.json
    │   ├── 1591_Splitout_Code_Automate_Webhook.json
    │   ├── 1603_Splitout_Manual_Automation_Webhook.json
    │   ├── 1625_Splitout_Schedule_Monitor_Webhook.json
    │   ├── 1627_Splitout_Code_Automation_Triggered.json
    │   ├── 1637_Splitout_Code_Automation_Triggered.json
    │   ├── 1642_Splitout_Code_Automation_Webhook.json
    │   ├── 1647_Splitout_Limit_Automation_Webhook.json
    │   ├── 1648_Splitout_Converttofile_Send_Webhook.json
    │   ├── 1657_Splitout_Schedule_Monitor_Scheduled.json
    │   ├── 1658_Splitout_Schedule_Monitor_Scheduled.json
    │   ├── 1660_Splitout_HTTP_Create_Webhook.json
    │   ├── 1678_Splitout_Code_Automation_Webhook.json
    │   ├── 1721_Splitout_Manual_Automate_Webhook.json
    │   ├── 1731_Splitout_Code_Automation_Webhook.json
    │   ├── 1742_Splitout_Nocodb_Automation_Webhook.json
    │   ├── 1748_Splitout_Code_Automation_Webhook.json
    │   ├── 1753_Splitout_Code_Automation_Webhook.json
    │   ├── 1757_Splitout_Code_Automation_Webhook.json
    │   ├── 1760_Splitout_GitHub_Automate_Webhook.json
    │   ├── 1774_Splitout_Manual_Automation_Webhook.json
    │   ├── 1780_Splitout_Schedule_Automation_Scheduled.json
    │   ├── 1783_Splitout_Postgres_Automation_Triggered.json
    │   ├── 1784_Splitout_Filter_Automation_Triggered.json
    │   ├── 1787_Splitout_Code_Automate_Webhook.json
    │   ├── 1790_Splitout_Summarize_Automation_Triggered.json
    │   ├── 1798_Splitout_GitHub_Create_Webhook.json
    │   ├── 1824_Splitout_Schedule_Import_Scheduled.json
    │   ├── 1830_Splitout_Filter_Create_Webhook.json
    │   ├── 1831_Splitout_Code_Automation_Webhook.json
    │   ├── 1834_Splitout_Code_Automation_Triggered.json
    │   ├── 1840_Splitout_Filter_Automate_Triggered.json
    │   ├── 1880_Splitout_Code_Automation_Webhook.json
    │   ├── 1888_Splitout_Schedule_Automation_Webhook.json
    │   ├── 1889_Splitout_Comparedatasets_Sync_Webhook.json
    │   ├── 1898_Splitout_Code_Automation_Webhook.json
    │   ├── 1903_Splitout_Googledocs_Automation_Webhook.json
    │   ├── 1915_Splitout_Code_Automation_Webhook.json
    │   ├── 1930_Splitout_Code_Automate_Webhook.json
    │   ├── 1934_Splitout_Schedule_Create_Scheduled.json
    │   ├── 1935_Splitout_Extractfromfile_Automation_Triggered.json
    │   ├── 1937_Splitout_Limit_Automation_Triggered.json
    │   ├── 1943_Splitout_Editimage_Automation_Webhook.json
    │   ├── 1946_Splitout_Webhook_Import_Webhook.json
    │   ├── 1970_Splitout_Manual_Sync_Webhook.json
    │   ├── 1980_Splitout_Code_Automation_Webhook.json
    │   ├── 1983_Splitout_Converttofile_Automation_Webhook.json
    │   ├── 1993_Splitout_Code_Automation_Triggered.json
    │   ├── 1998_Splitout_Postgres_Sync_Scheduled.json
    │   ├── 2016_Splitout_Noop_Automation_Webhook.json
    │   ├── 2025_Splitout_Code_Automate_Webhook.json
    │   └── 2041_Splitout_Manual_Automation_Webhook.json
    ├── Sse/
    │   └── 1084_Sse_Automation_Triggered.json
    ├── Stickynote/
    │   ├── 0281_Stickynote_Notion_Create_Webhook.json
    │   ├── 0325_Stickynote_Send_Triggered.json
    │   ├── 0332_Stickynote_Send_Triggered.json
    │   ├── 0368_Stickynote_Webhook_Automate_Webhook.json
    │   ├── 0378_Stickynote_Notion_Automate_Webhook.json
    │   ├── 0407_Stickynote_Send_Triggered.json
    │   ├── 0573_Stickynote_Notion_Send_Webhook.json
    │   ├── 0574_Stickynote_Notion_Create_Triggered.json
    │   ├── 0684_Stickynote_Respondtowebhook_Send_Webhook.json
    │   ├── 0689_Stickynote_Gmail_Create_Triggered.json
    │   ├── 0727_Stickynote_Create_Webhook.json
    │   ├── 0755_Stickynote_Send_Webhook.json
    │   ├── 0796_Stickynote_Gmail_Create_Triggered.json
    │   ├── 0873_Stickynote_Postgrestool_Create_Triggered.json
    │   ├── 0874_Stickynote_Executeworkflow_Create_Triggered.json
    │   ├── 0893_Stickynote_Emailreadimap_Create.json
    │   ├── 0978_Stickynote_GoogleDrive_Automate_Triggered.json
    │   ├── 1104_Stickynote_Create_Triggered.json
    │   ├── 1141_Stickynote_GoogleDrive_Automate_Triggered.json
    │   ├── 1253_Stickynote_Automation_Webhook.json
    │   ├── 1268_Stickynote_Hackernews_Automate_Triggered.json
    │   ├── 1269_Stickynote_Automate_Triggered.json
    │   ├── 1353_Stickynote_Gmail_Send_Triggered.json
    │   ├── 1379_Stickynote_Automation_Triggered.json
    │   ├── 1507_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 1509_Stickynote_Automation_Webhook.json
    │   ├── 1534_Stickynote_Googlecalendartool_Automation_Triggered.json
    │   ├── 1557_Stickynote_Automation_Triggered.json
    │   ├── 1567_Stickynote_Automation_Webhook.json
    │   ├── 1568_Stickynote_Notion_Automation_Triggered.json
    │   ├── 1569_Stickynote_Notion_Automation_Webhook.json
    │   ├── 1624_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 1626_Stickynote_GoogleDrive_Automate_Triggered.json
    │   ├── 1682_Stickynote_Notion_Automation_Triggered.json
    │   ├── 1691_Stickynote_Automation_Triggered.json
    │   ├── 1698_Stickynote_Notion_Automation_Triggered.json
    │   ├── 1703_Stickynote_Webhook_Automation_Webhook.json
    │   ├── 1719_Stickynote_Automation_Triggered.json
    │   ├── 1734_Stickynote_Automation_Triggered.json
    │   ├── 1779_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 1804_Stickynote_Automation_Triggered.json
    │   ├── 1816_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 1846_Stickynote_Executeworkflow_Automate_Triggered.json
    │   ├── 1899_Stickynote_Airtabletool_Create_Triggered.json
    │   ├── 1902_Stickynote_Executeworkflow_Update_Webhook.json
    │   ├── 1907_Stickynote_Converttofile_Automation_Triggered.json
    │   ├── 1926_Stickynote_Splitinbatches_Automation_Triggered.json
    │   ├── 1927_Stickynote_Automation_Triggered.json
    │   ├── 1947_Stickynote_Supabasetool_Automation_Triggered.json
    │   ├── 1986_Stickynote_Jira_Create_Webhook.json
    │   ├── 1987_Stickynote_Airtable_Create_Triggered.json
    │   ├── 2009_Stickynote_Automate_Webhook.json
    │   ├── 2015_Stickynote_Automation_Triggered.json
    │   ├── 2023_Stickynote_Create_Triggered.json
    │   ├── 2027_Stickynote_Executeworkflow_Automation_Webhook.json
    │   ├── 2039_Stickynote_Webhook_Automation_Webhook.json
    │   └── 2048_Stickynote_Automation_Triggered.json
    ├── Stopanderror/
    │   ├── 0331_Stopanderror_Extractfromfile_Send_Webhook.json
    │   ├── 0333_Stopanderror_Webhook_Create_Webhook.json
    │   ├── 0392_Stopanderror_GitHub_Automate_Webhook.json
    │   ├── 0427_Stopanderror_Wait_Monitor_Webhook.json
    │   ├── 0592_Stopanderror_Awss3_Automation_Webhook.json
    │   ├── 0719_Stopanderror_Splitout_Create_Webhook.json
    │   ├── 0743_Stopanderror_Wait_Automation_Triggered.json
    │   ├── 0786_Stopanderror_Stickynote_Create_Webhook.json
    │   ├── 0791_Stopanderror_Splitout_Create_Webhook.json
    │   ├── 0925_Stopanderror_Wait_Automate_Triggered.json
    │   ├── 1061_Stopanderror_Telegram_Automation_Triggered.json
    │   ├── 1164_Stopanderror_Code_Automation_Triggered.json
    │   ├── 1295_Stopanderror_Webhook_Automation_Webhook.json
    │   ├── 1453_Stopanderror_Code_Import_Triggered.json
    │   ├── 1498_Stopanderror_Limit_Sync_Webhook.json
    │   ├── 1504_Stopanderror_Code_Automation_Webhook.json
    │   ├── 1623_Stopanderror_Code_Import_Triggered.json
    │   ├── 1689_Stopanderror_Telegram_Automation_Triggered.json
    │   ├── 1768_Stopanderror_Wait_Automation_Webhook.json
    │   ├── 1785_Stopanderror_Clickup_Automation_Webhook.json
    │   ├── 1823_Stopanderror_Wait_Create_Webhook.json
    │   ├── 1894_Stopanderror_Clickup_Automation_Webhook.json
    │   ├── 1896_Stopanderror_Splitout_Export_Scheduled.json
    │   └── 1963_Stopanderror_Wait_Automation_Triggered.json
    ├── Strapi/
    │   ├── 0183_Strapi_Webhook_Automation_Webhook.json
    │   ├── 0584_Strapi_Splitout_Create_Webhook.json
    │   ├── 1336_Strapi_Webhook_Automate_Webhook.json
    │   └── 1434_Strapi_Splitout_Automation_Webhook.json
    ├── Summarize/
    │   ├── 1582_Summarize_Stickynote_Automation_Triggered.json
    │   ├── 1706_Summarize_Stickynote_Automation_Triggered.json
    │   └── 1829_Summarize_Respondtowebhook_Automation_Webhook.json
    ├── Supabase/
    │   ├── 0564_Supabase_Stickynote_Create_Triggered.json
    │   ├── 1677_Supabase_Stickynote_Automation_Triggered.json
    │   └── 1680_Supabase_Stickynote_Automation_Triggered.json
    ├── Surveymonkey/
    │   └── 1020_Surveymonkey_Automate_Triggered.json
    ├── Taiga/
    │   └── 1114_Taiga_Update_Triggered.json
    ├── Telegram/
    │   ├── 0001_Telegram_Schedule_Automation_Scheduled.json
    │   ├── 0140_Telegram_Webhook_Automation_Webhook.json
    │   ├── 0158_Telegram_Functionitem_Create_Scheduled.json
    │   ├── 0170_Telegram_Wait_Automation_Scheduled.json
    │   ├── 0201_Telegram_Executecommand_Process_Webhook.json
    │   ├── 0231_Telegram_Nasa_Send_Scheduled.json
    │   ├── 0340_Telegram_Automation_Webhook.json
    │   ├── 0346_Telegram_Cron_Automation_Scheduled.json
    │   ├── 0381_Telegram_Code_Update_Webhook.json
    │   ├── 0383_Telegram_Wait_Create_Webhook.json
    │   ├── 0388_Telegram_Code_Create_Triggered.json
    │   ├── 0398_Telegram_Wait_Send_Webhook.json
    │   ├── 0419_Telegram_Automate_Triggered.json
    │   ├── 0425_Telegram_Hunter_Send_Webhook.json
    │   ├── 0462_Telegram_Code_Create_Webhook.json
    │   ├── 0465_Telegram_Filter_Send_Scheduled.json
    │   ├── 0481_Telegram_Code_Automation_Webhook.json
    │   ├── 0488_Telegram_Stickynote_Update_Triggered.json
    │   ├── 0585_Telegram_Splitout_Automation_Webhook.json
    │   ├── 0599_Telegram_Gmailtool_Send_Triggered.json
    │   ├── 0676_Telegram_Splitout_Import_Webhook.json
    │   ├── 0679_Telegram_Splitout_Create_Webhook.json
    │   ├── 0690_Telegram_Webhook_Send_Webhook.json
    │   ├── 0704_Telegram_Automate_Triggered.json
    │   ├── 0705_Telegram_Automate_Triggered.json
    │   ├── 0735_Telegram_GoogleCalendar_Automation_Webhook.json
    │   ├── 0742_Telegram_Splitout_Create_Webhook.json
    │   ├── 0768_Telegram_Stickynote_Create_Triggered.json
    │   ├── 0769_Telegram_Webhook_Send_Webhook.json
    │   ├── 0782_Telegram_Redis_Create_Webhook.json
    │   ├── 0789_Telegram_Code_Create_Triggered.json
    │   ├── 0807_Telegram_Wait_Send_Triggered.json
    │   ├── 0815_Telegram_Code_Update_Triggered.json
    │   ├── 0824_Telegram_Rssfeedread_Monitor_Scheduled.json
    │   ├── 0864_Telegram_Splitout_Create_Triggered.json
    │   ├── 0882_Telegram_Googletaskstool_Create_Triggered.json
    │   ├── 0884_Telegram_Filter_Export_Triggered.json
    │   ├── 0885_Telegram_Mondaycom_Automate_Triggered.json
    │   ├── 0916_Telegram_Gmail_Create_Triggered.json
    │   ├── 0931_Telegram_Splitout_Monitor_Scheduled.json
    │   ├── 0944_Telegram_Rssfeedread_Automation_Scheduled.json
    │   ├── 1001_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1065_Telegram_Webhook_Automation_Webhook.json
    │   ├── 1070_Telegram_Wordpress_Create_Webhook.json
    │   ├── 1113_Telegram_Splitout_Automation_Scheduled.json
    │   ├── 1127_Telegram_Wait_Automate_Triggered.json
    │   ├── 1182_Telegram_Webhook_Automation_Webhook.json
    │   ├── 1185_Telegram_Wait_Automate_Webhook.json
    │   ├── 1244_Telegram_GoogleSheets_Automate_Triggered.json
    │   ├── 1288_Telegram_Wait_Automation_Webhook.json
    │   ├── 1291_Telegram_Code_Automation_Webhook.json
    │   ├── 1300_Telegram_Stickynote_Create_Webhook.json
    │   ├── 1304_Telegram_Code_Monitor_Webhook.json
    │   ├── 1305_Telegram_Splitout_Export_Webhook.json
    │   ├── 1315_Telegram_Gmailtool_Automation_Triggered.json
    │   ├── 1338_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1341_Telegram_Splitout_Automate_Webhook.json
    │   ├── 1347_Telegram_Gmail_Automation_Triggered.json
    │   ├── 1368_Telegram_Limit_Export_Triggered.json
    │   ├── 1375_Telegram_Automate_Triggered.json
    │   ├── 1380_Telegram_Code_Automate_Triggered.json
    │   ├── 1384_Telegram_Stickynote_Create_Triggered.json
    │   ├── 1392_Telegram_Googleanalytics_Automation_Scheduled.json
    │   ├── 1411_Telegram_Wait_Automation_Triggered.json
    │   ├── 1424_Telegram_Code_Automation_Webhook.json
    │   ├── 1439_Telegram_Code_Create_Webhook.json
    │   ├── 1448_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1450_Telegram_Automation_Webhook.json
    │   ├── 1452_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1470_Telegram_Code_Create_Webhook.json
    │   ├── 1482_Telegram_Code_Create_Webhook.json
    │   ├── 1485_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1487_Telegram_Extractfromfile_Automate_Webhook.json
    │   ├── 1490_Telegram_Splitout_Create_Webhook.json
    │   ├── 1496_Telegram_Webhook_Automation_Webhook.json
    │   ├── 1515_Telegram_Stickynote_Send_Triggered.json
    │   ├── 1522_Telegram_Schedule_Send_Webhook.json
    │   ├── 1533_Telegram_Splitout_Automation_Webhook.json
    │   ├── 1539_Telegram_Splitout_Automation_Triggered.json
    │   ├── 1595_Telegram_Schedule_Update_Webhook.json
    │   ├── 1596_Telegram_Code_Automate_Webhook.json
    │   ├── 1606_Telegram_Webhook_Automation_Webhook.json
    │   ├── 1610_Telegram_Googledocs_Automate_Triggered.json
    │   ├── 1679_Telegram_GoogleCalendar_Automation_Scheduled.json
    │   ├── 1686_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1690_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1701_Telegram_Stickynote_Send_Triggered.json
    │   ├── 1708_Telegram_Stickynote_Create_Webhook.json
    │   ├── 1712_Telegram_Automation_Webhook.json
    │   ├── 1741_Telegram_Gumroad_Create_Webhook.json
    │   ├── 1775_Telegram_Code_Import_Triggered.json
    │   ├── 1797_Telegram_GoogleDrive_Create_Triggered.json
    │   ├── 1812_Telegram_Code_Automate_Triggered.json
    │   ├── 1841_Telegram_Manual_Automate_Triggered.json
    │   ├── 1843_Telegram_Code_Automate_Triggered.json
    │   ├── 1856_Telegram_Stickynote_Automation_Webhook.json
    │   ├── 1877_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1878_Telegram_Wait_Create_Webhook.json
    │   ├── 1904_Telegram_Limit_Process_Webhook.json
    │   ├── 1905_Telegram_Googleanalytics_Automation_Webhook.json
    │   ├── 1916_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 1919_Telegram_Splitout_Automate_Webhook.json
    │   ├── 1938_Telegram_Schedule_Automation_Scheduled.json
    │   ├── 1940_Telegram_Limit_Export_Scheduled.json
    │   ├── 1941_Telegram_Stickynote_Automate_Triggered.json
    │   ├── 1945_Telegram_Schedule_Import_Scheduled.json
    │   ├── 1950_Telegram_Googledocs_Automate_Triggered.json
    │   ├── 1975_Telegram_Googledocs_Automation_Webhook.json
    │   ├── 1982_Telegram_Splitout_Automation_Scheduled.json
    │   ├── 2004_Telegram_Stickynote_Automation_Triggered.json
    │   ├── 2005_Telegram_Schedule_Monitor_Webhook.json
    │   ├── 2018_Telegram_Cal_Create_Webhook.json
    │   ├── 2038_Telegram_Extractfromfile_Automate_Webhook.json
    │   ├── 2040_Telegram_Splitout_Automation_Webhook.json
    │   ├── 2044_Telegram_Googledocs_Automation_Webhook.json
    │   ├── 2051_Telegram_Webhook_Automation_Webhook.json
    │   ├── 2052_Telegram_Splitout_Automation_Scheduled.json
    │   ├── 2053_Telegram_Googledocs_Automate_Triggered.json
    │   └── Academic Assistant Chatbot (Telegram + OpenAI).json
    ├── Telegramtool/
    │   └── 1575_Telegramtool_Woocommercetool_Automate_Webhook.json
    ├── Templates/
    │   ├── 9001_Scalable_Webhook_Orchestrator_Webhook.json
    │   ├── 9002_Rapid_ETL_HTTP_Transform_Deliver_Manual.json
    │   ├── 9003_FanOut_Broadcast_and_Merge_Webhook.json
    │   └── 9004_AI_Summarizer_Template_Webhook.json
    ├── Thehive/
    │   └── 0205_Thehive_Update_Triggered.json
    ├── Todoist/
    │   └── 1749_Todoist_Schedule_Send_Scheduled.json
    ├── Toggl/
    │   └── 0147_Toggl_Create_Triggered.json
    ├── Travisci/
    │   └── 0060_Travisci_GitHub_Automate_Triggered.json
    ├── Trello/
    │   ├── 0044_Trello_Googlecloudnaturallanguage_Automate_Triggered.json
    │   ├── 0053_Trello_GoogleCalendar_Create_Scheduled.json
    │   ├── 0076_Trello_Update_Triggered.json
    │   ├── 1298_Trello_Googlecloudnaturallanguage_Create_Triggered.json
    │   └── 1302_Trello_Limit_Automate_Scheduled.json
    ├── Twilio/
    │   ├── 0354_Twilio_Typeform_Send_Triggered.json
    │   ├── 0841_Twilio_Stickynote_Send_Triggered.json
    │   ├── 0842_Twilio_Cron_Send_Scheduled.json
    │   └── 1198_Twilio_Pushcut_Send_Triggered.json
    ├── Twitter/
    │   ├── 1165_Twitter_Telegram_Create_Triggered.json
    │   ├── 1211_Twitter_Strava_Create_Triggered.json
    │   └── 1212_Twitter_Slack_Automation_Scheduled.json
    ├── Twittertool/
    │   └── 1744_Twittertool_Automation_Triggered.json
    ├── Typeform/
    │   ├── 0215_Typeform_Clickup_Automation_Triggered.json
    │   ├── 0262_Typeform_Spreadsheetfile_Automate_Triggered.json
    │   ├── 1018_Typeform_Airtable_Automation_Triggered.json
    │   └── 1207_Typeform_Demio_Automate_Triggered.json
    ├── Uptimerobot/
    │   └── 0050_Uptimerobot_Automate.json
    ├── Wait/
    │   ├── 0090_Wait_Lemlist_Create_Scheduled.json
    │   ├── 0091_Wait_Splitout_Process_Webhook.json
    │   ├── 0092_Wait_Datetime_Automate_Triggered.json
    │   ├── 0101_Wait_Manual_Automation_Webhook.json
    │   ├── 0290_Wait_Code_Update_Webhook.json
    │   ├── 0330_Wait_Webhook_Send_Webhook.json
    │   ├── 0385_Wait_Code_Send_Scheduled.json
    │   ├── 0466_Wait_Filter_Send_Webhook.json
    │   ├── 0498_Wait_Splitout_Process_Scheduled.json
    │   ├── 0523_Wait_Splitout_Create_Webhook.json
    │   ├── 0533_Wait_Code_Export_Webhook.json
    │   ├── 0538_Wait_Splitout_Send_Webhook.json
    │   ├── 0542_Wait_Redis_Create_Triggered.json
    │   ├── 0547_Wait_Splitout_Create_Webhook.json
    │   ├── 0567_Wait_Code_Export_Webhook.json
    │   ├── 0578_Wait_Schedule_Create_Webhook.json
    │   ├── 0582_Wait_Dropbox_Create_Webhook.json
    │   ├── 0583_Wait_Splitout_Create_Webhook.json
    │   ├── 0596_Wait_Code_Import_Webhook.json
    │   ├── 0602_Wait_Splitout_Send_Webhook.json
    │   ├── 0603_Wait_Splitout_Create_Webhook.json
    │   ├── 0609_Wait_Limit_Import_Webhook.json
    │   ├── 0620_Wait_Slack_Automate_Webhook.json
    │   ├── 0621_Wait_Slack_Monitor_Webhook.json
    │   ├── 0627_Wait_Splitout_Create_Scheduled.json
    │   ├── 0629_Wait_Code_Update_Webhook.json
    │   ├── 0639_Wait_Splitout_Send_Webhook.json
    │   ├── 0640_Wait_Splitout_Create_Scheduled.json
    │   ├── 0668_Wait_Splitout_Create_Webhook.json
    │   ├── 0715_Wait_Schedule_Create_Scheduled.json
    │   ├── 0716_Wait_Webhook_Process_Webhook.json
    │   ├── 0763_Wait_Splitout_Create_Webhook.json
    │   ├── 0764_Wait_Splitout_Create_Triggered.json
    │   ├── 0765_Wait_Splitout_Create_Triggered.json
    │   ├── 0766_Wait_Limit_Update_Webhook.json
    │   ├── 0820_Wait_Code_Send_Webhook.json
    │   ├── 0826_Wait_Splitout_Automation_Webhook.json
    │   ├── 0831_Wait_Code_Monitor_Webhook.json
    │   ├── 0836_Wait_Code_Create_Scheduled.json
    │   ├── 0858_Wait_Schedule_Update_Scheduled.json
    │   ├── 0862_Wait_Code_Create_Webhook.json
    │   ├── 0866_Wait_Splitout_Create_Webhook.json
    │   ├── 0867_Wait_Splitout_Create_Webhook.json
    │   ├── 0868_Wait_Filter_Create_Webhook.json
    │   ├── 0869_Wait_Datetime_Send_Scheduled.json
    │   ├── 0871_Wait_HTTP_Create_Webhook.json
    │   ├── 0888_Wait_Code_Send_Webhook.json
    │   ├── 0903_Wait_Redis_Automate_Triggered.json
    │   ├── 0904_Wait_Code_Create_Webhook.json
    │   ├── 0905_Wait_Schedule_Create_Webhook.json
    │   ├── 1135_Wait_Code_Create_Webhook.json
    │   ├── 1145_Wait_Splitout_Automation_Webhook.json
    │   ├── 1282_Wait_Code_Import_Webhook.json
    │   ├── 1293_Wait_Splitout_Automation_Webhook.json
    │   ├── 1312_Wait_Schedule_Create_Webhook.json
    │   ├── 1359_Wait_Splitout_Create_Webhook.json
    │   ├── 1362_Wait_Webhook_Create_Webhook.json
    │   ├── 1366_Wait_Code_Automation_Webhook.json
    │   ├── 1389_Wait_Limit_Import_Webhook.json
    │   ├── 1395_Wait_Code_Create_Webhook.json
    │   ├── 1400_Wait_Code_Automation_Webhook.json
    │   ├── 1405_Wait_Splitout_Automation_Webhook.json
    │   ├── 1431_Wait_Redis_Send_Triggered.json
    │   ├── 1456_Wait_HTTP_Automation_Webhook.json
    │   ├── 1465_Wait_Splitout_Create_Webhook.json
    │   ├── 1469_Wait_Splitout_Automation_Webhook.json
    │   ├── 1484_Wait_Code_Create_Webhook.json
    │   ├── 1508_Wait_Manual_Automation_Webhook.json
    │   ├── 1512_Wait_Splitout_Process_Webhook.json
    │   ├── 1513_Wait_Splitout_Process_Webhook.json
    │   ├── 1549_Wait_Dropbox_Automation_Webhook.json
    │   ├── 1563_Wait_Schedule_Monitor_Scheduled.json
    │   ├── 1566_Wait_Splitout_Automation_Webhook.json
    │   ├── 1572_Wait_Schedule_Automate_Scheduled.json
    │   ├── 1579_Wait_Manual_Automation_Webhook.json
    │   ├── 1589_Wait_Webhook_Automation_Webhook.json
    │   ├── 1600_Wait_Code_Automation_Scheduled.json
    │   ├── 1609_Wait_Schedule_Automation_Scheduled.json
    │   ├── 1638_Wait_Splitout_Send_Webhook.json
    │   ├── 1639_Wait_Webhook_Automation_Webhook.json
    │   ├── 1696_Wait_Code_Automate_Webhook.json
    │   ├── 1705_Wait_Manual_Automate_Webhook.json
    │   ├── 1717_Wait_Code_Automation_Webhook.json
    │   ├── 1727_Wait_Splitout_Create_Webhook.json
    │   ├── 1736_Wait_Schedule_Automation_Webhook.json
    │   ├── 1743_Wait_Code_Sync_Scheduled.json
    │   ├── 1745_Wait_Code_Automation_Webhook.json
    │   ├── 1746_Wait_Code_Monitor_Webhook.json
    │   ├── 1763_Wait_Schedule_Automation_Webhook.json
    │   ├── 1771_Wait_Code_Automate_Webhook.json
    │   ├── 1801_Wait_Code_Automation_Webhook.json
    │   ├── 1805_Wait_Code_Automate_Webhook.json
    │   ├── 1879_Wait_Slack_Monitor_Triggered.json
    │   ├── 1917_Wait_Code_Create_Webhook.json
    │   ├── 1931_Wait_HTTP_Automation_Webhook.json
    │   ├── 1954_Wait_Code_Automation_Webhook.json
    │   ├── 1955_Wait_Splitout_Automation_Scheduled.json
    │   ├── 1977_Wait_Splitout_Automation_Webhook.json
    │   ├── 1990_Wait_Code_Automation_Webhook.json
    │   ├── 1992_Wait_Code_Automation_Webhook.json
    │   ├── 2000_Wait_Code_Automate_Webhook.json
    │   ├── 2010_Wait_Limit_Automation_Webhook.json
    │   ├── 2029_Wait_Code_Automation_Triggered.json
    │   └── 2042_Wait_Webhook_Automation_Webhook.json
    ├── Webflow/
    │   └── 0953_Webflow_Update_Triggered.json
    ├── Webhook/
    │   ├── 0066_Webhook_Cron_Automate_Scheduled.json
    │   ├── 0099_Webhook_Airtable_Automate_Webhook.json
    │   ├── 0165_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0260_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 0270_Webhook_Discord_Automate_Webhook.json
    │   ├── 0295_Webhook_Dropcontact_Create_Webhook.json
    │   ├── 0375_Webhook_Code_Send_Webhook.json
    │   ├── 0376_Webhook_Code_Create_Webhook.json
    │   ├── 0410_Webhook_Filter_Update_Webhook.json
    │   ├── 0414_Webhook_Filter_Create_Webhook.json
    │   ├── 0453_Webhook_Code_Create_Webhook.json
    │   ├── 0467_Webhook_Respondtowebhook_Send_Webhook.json
    │   ├── 0483_Webhook_Extractfromfile_Update_Webhook.json
    │   ├── 0499_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0565_Webhook_Slack_Automation_Webhook.json
    │   ├── 0581_Webhook_Slack_Create_Webhook.json
    │   ├── 0591_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0615_Webhook_Filemaker_Create_Webhook.json
    │   ├── 0619_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0632_Webhook_Manual_Create_Webhook.json
    │   ├── 0644_Webhook_Slack_Create_Webhook.json
    │   ├── 0672_Webhook_Schedule_Update_Webhook.json
    │   ├── 0683_Webhook_Telegram_Create_Webhook.json
    │   ├── 0692_Webhook_Code_Update_Webhook.json
    │   ├── 0702_Webhook_GoogleCalendar_Create_Webhook.json
    │   ├── 0722_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 0802_Webhook_Nocodb_Create_Webhook.json
    │   ├── 0813_Webhook_Respondtowebhook_Process_Webhook.json
    │   ├── 0829_Webhook_Code_Create_Webhook.json
    │   ├── 0834_Webhook_Slack_Create_Webhook.json
    │   ├── 0845_Webhook_Filter_Export_Webhook.json
    │   ├── 0892_Webhook_Code_Create_Webhook.json
    │   ├── 0914_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 0942_Webhook_Signl4_Automation_Webhook.json
    │   ├── 0979_Webhook_Filter_Automation_Webhook.json
    │   ├── 1132_Webhook_Extractfromfile_Process_Webhook.json
    │   ├── 1252_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 1255_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1263_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1274_Webhook_Code_Automate_Webhook.json
    │   ├── 1385_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1410_Webhook_Discord_Automate_Webhook.json
    │   ├── 1415_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 1416_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 1417_Webhook_Respondtowebhook_Create_Webhook.json
    │   ├── 1432_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1433_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1477_Webhook_Slack_Update_Webhook.json
    │   ├── 1502_Webhook_Slack_Automate_Webhook.json
    │   ├── 1525_Webhook_Telegram_Create_Webhook.json
    │   ├── 1541_Webhook_Code_Create_Webhook.json
    │   ├── 1561_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1578_Webhook_Code_Automation_Webhook.json
    │   ├── 1601_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 1612_Webhook_Code_Automate_Webhook.json
    │   ├── 1694_Webhook_HTTP_Automation_Webhook.json
    │   ├── 1722_Webhook_Code_Automation_Webhook.json
    │   ├── 1733_Webhook_Slack_Automate_Webhook.json
    │   ├── 1740_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 1770_Webhook_Extractfromfile_Automation_Webhook.json
    │   ├── 1855_Webhook_Respondtowebhook_Automation_Webhook.json
    │   ├── 1881_Webhook_Code_Automate_Webhook.json
    │   ├── 1887_Webhook_Respondtowebhook_Automate_Webhook.json
    │   ├── 1897_Webhook_Filter_Sync_Webhook.json
    │   └── 2007_Webhook_Graphql_Automate_Webhook.json
    ├── Whatsapp/
    │   ├── 1521_Whatsapp_Stickynote_Automation_Webhook.json
    │   └── 2030_Whatsapp_Respondtowebhook_Automate_Webhook.json
    ├── Wise/
    │   ├── 1229_Wise_Automate.json
    │   └── 1230_Wise_Airtable_Automate_Triggered.json
    ├── Woocommerce/
    │   ├── 1148_Woocommerce_Slack_Create_Triggered.json
    │   ├── 1151_Woocommerce_Slack_Create_Triggered.json
    │   └── 1155_Woocommerce_Slack_Create_Triggered.json
    ├── Woocommercetool/
    │   ├── 1599_Woocommercetool_Manual_Automation_Webhook.json
    │   └── 1857_Woocommercetool_Manual_Automation_Webhook.json
    ├── Wordpress/
    │   ├── 0502_Wordpress_Filter_Update_Scheduled.json
    │   ├── 0721_Wordpress_Converttofile_Process_Triggered.json
    │   ├── 1327_Wordpress_Manual_Automate_Webhook.json
    │   ├── 1550_Wordpress_Manual_Automation_Webhook.json
    │   └── 1949_Wordpress_Manual_Automate_Webhook.json
    ├── Writebinaryfile/
    │   ├── 0010_Writebinaryfile_Create.json
    │   └── 0747_Writebinaryfile_Spreadsheetfile_Automate.json
    ├── Wufoo/
    │   └── 1129_Wufoo_Update_Triggered.json
    ├── Xml/
    │   └── 0081_Xml_Respondtowebhook_Automate_Webhook.json
    ├── Youtube/
    │   └── 0197_Youtube_Telegram_Send_Scheduled.json
    ├── Zendesk/
    │   ├── 0274_Zendesk_Asana_Create_Webhook.json
    │   ├── 0279_Zendesk_GitHub_Create_Webhook.json
    │   ├── 0280_Zendesk_Jira_Create_Webhook.json
    │   ├── 0285_Zendesk_HubSpot_Create_Scheduled.json
    │   ├── 0286_Zendesk_HubSpot_Create_Scheduled.json
    │   └── 0823_Zendesk_Update_Triggered.json
    └── Zohocrm/
        └── 0086_Zohocrm_Trello_Create_Triggered.json
Download .txt
SYMBOL INDEX (383 symbols across 23 files)

FILE: api_server.py
  function check_rate_limit (line 63) | def check_rate_limit(client_ip: str) -> bool:
  function validate_filename (line 81) | def validate_filename(filename: str) -> bool:
  function startup_event (line 141) | async def startup_event():
  class WorkflowSummary (line 155) | class WorkflowSummary(BaseModel):
    class Config (line 169) | class Config:
    method convert_active (line 175) | def convert_active(cls, v):
  class SearchResponse (line 181) | class SearchResponse(BaseModel):
  class StatsResponse (line 191) | class StatsResponse(BaseModel):
  function root (line 203) | async def root():
  function health_check (line 223) | async def health_check():
  function get_stats (line 229) | async def get_stats():
  function search_workflows (line 239) | async def search_workflows(
  function get_workflow_detail (line 309) | async def get_workflow_detail(filename: str, request: Request):
  function download_workflow (line 371) | async def download_workflow(filename: str, request: Request):
  function get_workflow_diagram (line 436) | async def get_workflow_diagram(filename: str, request: Request):
  function generate_mermaid_diagram (line 502) | def generate_mermaid_diagram(nodes: List[Dict], connections: Dict) -> str:
  function reindex_workflows (line 574) | async def reindex_workflows(
  function get_integrations (line 617) | async def get_integrations():
  function get_categories (line 630) | async def get_categories():
  function get_category_mappings (line 667) | async def get_category_mappings():
  function search_workflows_by_category (line 695) | async def search_workflows_by_category(
  function global_exception_handler (line 752) | async def global_exception_handler(request, exc):
  function create_static_directory (line 767) | def create_static_directory():
  function run_server (line 774) | def run_server(host: str = "127.0.0.1", port: int = 8000, reload: bool =...

FILE: docs/js/app.js
  class WorkflowApp (line 6) | class WorkflowApp {
    method constructor (line 7) | constructor() {
    method init (line 11) | init() {
    method setupThemeToggle (line 18) | setupThemeToggle() {
    method setupKeyboardShortcuts (line 26) | setupKeyboardShortcuts() {
    method setupAnalytics (line 48) | setupAnalytics() {
    method setupServiceWorker (line 74) | setupServiceWorker() {
    method debounce (line 82) | debounce(func, wait) {
  method formatNumber (line 100) | formatNumber(num) {
  method debounce (line 113) | debounce(func, wait) {
  method copyToClipboard (line 128) | async copyToClipboard(text) {
  method showNotification (line 147) | showNotification(message, type = 'info', duration = 3000) {

FILE: docs/js/search.js
  class WorkflowSearch (line 6) | class WorkflowSearch {
    method constructor (line 7) | constructor() {
    method init (line 29) | async init() {
    method loadSearchIndex (line 42) | async loadSearchIndex() {
    method setupEventListeners (line 55) | setupEventListeners() {
    method populateFilters (line 76) | populateFilters() {
    method updateStats (line 86) | updateStats() {
    method handleSearch (line 96) | handleSearch() {
    method searchWorkflows (line 108) | searchWorkflows(query, filters = {}) {
    method showFeaturedWorkflows (line 145) | showFeaturedWorkflows() {
    method displayResults (line 158) | displayResults(reset = false) {
    method createWorkflowCard (line 190) | createWorkflowCard(workflow) {
    method openWorkflowDetails (line 233) | openWorkflowDetails(workflow) {
    method createDetailsModal (line 246) | createDetailsModal(workflow) {
    method updateResultsHeader (line 335) | updateResultsHeader(query, filters) {
    method loadMoreResults (line 355) | loadMoreResults() {
    method showLoading (line 359) | showLoading(show) {
    method showNoResults (line 364) | showNoResults() {
    method hideNoResults (line 369) | hideNoResults() {
    method showError (line 373) | showError(message) {
    method escapeHtml (line 390) | escapeHtml(text) {
    method debounce (line 396) | debounce(func, wait) {

FILE: medcards-ai/src/types/database.ts
  type User (line 10) | interface User {
  type UserProgress (line 22) | interface UserProgress {
  type SpecialtyProgress (line 37) | interface SpecialtyProgress {
  type UserPreferences (line 46) | interface UserPreferences {
  type ClinicalCase (line 53) | interface ClinicalCase {
  type PatientData (line 81) | interface PatientData {
  type CaseOption (line 100) | interface CaseOption {
  type Interaction (line 106) | interface Interaction {
  type Hint (line 126) | interface Hint {
  type AIFeedback (line 133) | interface AIFeedback {
  type ChatMessage (line 174) | interface ChatMessage {
  type Badge (line 186) | interface Badge {
  type BadgeCriteria (line 199) | interface BadgeCriteria {
  type UserBadge (line 212) | interface UserBadge {
  type NextCaseResponse (line 224) | interface NextCaseResponse {
  type SubmitAnswerResponse (line 245) | interface SubmitAnswerResponse {
  type DashboardStats (line 253) | interface DashboardStats {
  type SubscriptionStatus (line 288) | type SubscriptionStatus = User['subscription_status'];
  type Specialty (line 289) | type Specialty = string;
  type DifficultyLevel (line 290) | type DifficultyLevel = ClinicalCase['difficulty_level'];
  type BadgeCategory (line 291) | type BadgeCategory = Badge['category'];
  type BadgeRarity (line 292) | type BadgeRarity = Badge['rarity'];
  type CaseFilter (line 298) | interface CaseFilter {
  type InteractionFilter (line 307) | interface InteractionFilter {

FILE: medcards-ai/supabase/schema-network-effects.sql
  type case_difficulty_calibration (line 11) | CREATE TABLE case_difficulty_calibration (
  type idx_calibration_case (line 32) | CREATE INDEX idx_calibration_case ON case_difficulty_calibration(case_id)
  type idx_calibration_updated (line 33) | CREATE INDEX idx_calibration_updated ON case_difficulty_calibration(upda...
  type prediction_model_versions (line 36) | CREATE TABLE prediction_model_versions (
  type idx_model_active (line 67) | CREATE INDEX idx_model_active ON prediction_model_versions(is_active) WH...
  type community_cases (line 73) | CREATE TABLE community_cases (
  type idx_community_cases_creator (line 128) | CREATE INDEX idx_community_cases_creator ON community_cases(created_by_u...
  type idx_community_cases_status (line 129) | CREATE INDEX idx_community_cases_status ON community_cases(status)
  type idx_community_cases_specialty (line 130) | CREATE INDEX idx_community_cases_specialty ON community_cases(specialty)...
  type idx_community_cases_rating (line 131) | CREATE INDEX idx_community_cases_rating ON community_cases(community_rat...
  type case_reviews (line 134) | CREATE TABLE case_reviews (
  type idx_reviews_case (line 162) | CREATE INDEX idx_reviews_case ON case_reviews(case_id)
  type idx_reviews_expert (line 163) | CREATE INDEX idx_reviews_expert ON case_reviews(is_expert_review) WHERE ...
  type case_flags (line 166) | CREATE TABLE case_flags (
  type idx_flags_case (line 189) | CREATE INDEX idx_flags_case ON case_flags(case_id)
  type idx_flags_status (line 190) | CREATE INDEX idx_flags_status ON case_flags(status) WHERE status = 'pend...
  type study_groups (line 196) | CREATE TABLE study_groups (
  type idx_groups_public (line 232) | CREATE INDEX idx_groups_public ON study_groups(is_public) WHERE is_publi...
  type idx_groups_creator (line 233) | CREATE INDEX idx_groups_creator ON study_groups(created_by_user_id)
  type idx_groups_exam (line 234) | CREATE INDEX idx_groups_exam ON study_groups(target_exam) WHERE is_archi...
  type study_group_members (line 236) | CREATE TABLE study_group_members (
  type idx_group_members_user (line 255) | CREATE INDEX idx_group_members_user ON study_group_members(user_id)
  type idx_group_members_active (line 256) | CREATE INDEX idx_group_members_active ON study_group_members(last_active...
  type group_activities (line 259) | CREATE TABLE group_activities (
  type idx_activities_group (line 280) | CREATE INDEX idx_activities_group ON group_activities(group_id, created_...
  type group_challenges (line 286) | CREATE TABLE group_challenges (
  type idx_challenges_group (line 325) | CREATE INDEX idx_challenges_group ON group_challenges(group_id)
  type idx_challenges_status (line 326) | CREATE INDEX idx_challenges_status ON group_challenges(status, start_time)
  type challenge_participants (line 328) | CREATE TABLE challenge_participants (
  type idx_participants_challenge (line 346) | CREATE INDEX idx_participants_challenge ON challenge_participants(challe...
  type idx_participants_user (line 347) | CREATE INDEX idx_participants_user ON challenge_participants(user_id)
  type leaderboards (line 350) | CREATE TABLE leaderboards (
  type idx_leaderboards_type (line 386) | CREATE INDEX idx_leaderboards_type ON leaderboards(leaderboard_type, per...
  type peer_interactions (line 392) | CREATE TABLE peer_interactions (
  type idx_interactions_to_user (line 415) | CREATE INDEX idx_interactions_to_user ON peer_interactions(to_user_id, s...
  type idx_interactions_from_user (line 416) | CREATE INDEX idx_interactions_from_user ON peer_interactions(from_user_id)
  type study_preferences (line 419) | CREATE TABLE study_preferences (
  type idx_preferences_looking (line 449) | CREATE INDEX idx_preferences_looking ON study_preferences(looking_for_bu...
  type idx_preferences_exam (line 450) | CREATE INDEX idx_preferences_exam ON study_preferences(target_exam, exam...
  type study_buddy_matches (line 452) | CREATE TABLE study_buddy_matches (
  type idx_matches_user1 (line 486) | CREATE INDEX idx_matches_user1 ON study_buddy_matches(user1_id, status)
  type idx_matches_user2 (line 487) | CREATE INDEX idx_matches_user2 ON study_buddy_matches(user2_id, status)
  type premium_content (line 493) | CREATE TABLE premium_content (
  type idx_premium_content_creator (line 559) | CREATE INDEX idx_premium_content_creator ON premium_content(creator_user...
  type idx_premium_content_published (line 560) | CREATE INDEX idx_premium_content_published ON premium_content(status, pu...
  type idx_premium_content_featured (line 561) | CREATE INDEX idx_premium_content_featured ON premium_content(is_featured...
  type idx_premium_content_category (line 562) | CREATE INDEX idx_premium_content_category ON premium_content(category, a...
  type content_purchases (line 564) | CREATE TABLE content_purchases (
  type idx_purchases_user (line 591) | CREATE INDEX idx_purchases_user ON content_purchases(user_id)
  type idx_purchases_content (line 592) | CREATE INDEX idx_purchases_content ON content_purchases(content_id)
  type idx_purchases_recent (line 593) | CREATE INDEX idx_purchases_recent ON content_purchases(purchased_at DESC)
  type creator_profiles (line 596) | CREATE TABLE creator_profiles (
  type idx_creators_verified (line 636) | CREATE INDEX idx_creators_verified ON creator_profiles(is_verified_educa...
  type idx_creators_revenue (line 637) | CREATE INDEX idx_creators_revenue ON creator_profiles(total_revenue_earn...
  type creator_followers (line 639) | CREATE TABLE creator_followers (
  type idx_followers_creator (line 649) | CREATE INDEX idx_followers_creator ON creator_followers(creator_user_id)
  type idx_followers_user (line 650) | CREATE INDEX idx_followers_user ON creator_followers(follower_user_id)
  type creator_payouts (line 653) | CREATE TABLE creator_payouts (
  type idx_payouts_creator (line 678) | CREATE INDEX idx_payouts_creator ON creator_payouts(creator_user_id, cre...
  type idx_payouts_status (line 679) | CREATE INDEX idx_payouts_status ON creator_payouts(status) WHERE status ...
  type forum_categories (line 685) | CREATE TABLE forum_categories (
  type forum_posts (line 704) | CREATE TABLE forum_posts (
  type idx_posts_category (line 737) | CREATE INDEX idx_posts_category ON forum_posts(category_id, created_at D...
  type idx_posts_user (line 738) | CREATE INDEX idx_posts_user ON forum_posts(user_id)
  type idx_posts_popular (line 739) | CREATE INDEX idx_posts_popular ON forum_posts(upvote_count DESC, created...
  type idx_posts_case (line 740) | CREATE INDEX idx_posts_case ON forum_posts(related_case_id) WHERE relate...
  type forum_comments (line 742) | CREATE TABLE forum_comments (
  type idx_comments_post (line 764) | CREATE INDEX idx_comments_post ON forum_comments(post_id, created_at)
  type idx_comments_user (line 765) | CREATE INDEX idx_comments_user ON forum_comments(user_id)
  type idx_comments_parent (line 766) | CREATE INDEX idx_comments_parent ON forum_comments(parent_comment_id) WH...
  type forum_votes (line 768) | CREATE TABLE forum_votes (
  type idx_votes_votable (line 781) | CREATE INDEX idx_votes_votable ON forum_votes(votable_type, votable_id)
  function update_group_stats (line 788) | CREATE OR REPLACE FUNCTION update_group_stats()
  function update_creator_stats (line 811) | CREATE OR REPLACE FUNCTION update_creator_stats()
  function update_post_comment_count (line 840) | CREATE OR REPLACE FUNCTION update_post_comment_count()
  type network_metrics_daily (line 951) | CREATE UNIQUE INDEX ON network_metrics_daily(date)

FILE: medcards-ai/supabase/schema.sql
  type users (line 14) | CREATE TABLE users (
  type clinical_cases (line 56) | CREATE TABLE clinical_cases (
  type interactions (line 109) | CREATE TABLE interactions (
  type chat_history (line 159) | CREATE TABLE chat_history (
  type badges (line 182) | CREATE TABLE badges (
  type user_badges (line 211) | CREATE TABLE user_badges (
  type idx_users_email (line 230) | CREATE INDEX idx_users_email ON users(email)
  type idx_users_subscription (line 231) | CREATE INDEX idx_users_subscription ON users(subscription_status) WHERE ...
  type idx_cases_specialty (line 234) | CREATE INDEX idx_cases_specialty ON clinical_cases(specialty)
  type idx_cases_difficulty (line 235) | CREATE INDEX idx_cases_difficulty ON clinical_cases(difficulty_level)
  type idx_cases_active (line 236) | CREATE INDEX idx_cases_active ON clinical_cases(is_active) WHERE is_acti...
  type idx_cases_specialty_difficulty (line 237) | CREATE INDEX idx_cases_specialty_difficulty ON clinical_cases(specialty,...
  type idx_cases_success_rate (line 238) | CREATE INDEX idx_cases_success_rate ON clinical_cases(global_success_rate)
  type idx_interactions_user (line 241) | CREATE INDEX idx_interactions_user ON interactions(user_id)
  type idx_interactions_case (line 242) | CREATE INDEX idx_interactions_case ON interactions(case_id)
  type idx_interactions_user_created (line 243) | CREATE INDEX idx_interactions_user_created ON interactions(user_id, crea...
  type idx_interactions_session (line 244) | CREATE INDEX idx_interactions_session ON interactions(session_id) WHERE ...
  type idx_interactions_user_case (line 245) | CREATE INDEX idx_interactions_user_case ON interactions(user_id, case_id)
  type idx_chat_user (line 248) | CREATE INDEX idx_chat_user ON chat_history(user_id)
  type idx_chat_session (line 249) | CREATE INDEX idx_chat_session ON chat_history(session_id) WHERE session_...
  type idx_chat_user_created (line 250) | CREATE INDEX idx_chat_user_created ON chat_history(user_id, created_at D...
  type idx_user_badges_user (line 253) | CREATE INDEX idx_user_badges_user ON user_badges(user_id)
  type idx_user_badges_badge (line 254) | CREATE INDEX idx_user_badges_badge ON user_badges(badge_id)
  function update_case_statistics (line 305) | CREATE OR REPLACE FUNCTION update_case_statistics()
  function update_updated_at_column (line 329) | CREATE OR REPLACE FUNCTION update_updated_at_column()

FILE: run.py
  function print_banner (line 12) | def print_banner():
  function check_requirements (line 18) | def check_requirements() -> bool:
  function setup_directories (line 46) | def setup_directories():
  function setup_database (line 56) | def setup_database(force_reindex: bool = False, skip_index: bool = False...
  function start_server (line 88) | def start_server(host: str = "127.0.0.1", port: int = 8000, reload: bool...
  function main (line 113) | def main():

FILE: scripts/generate_search_index.py
  function generate_static_search_index (line 19) | def generate_static_search_index(db_path: str, output_dir: str) -> Dict[...
  function load_existing_categories (line 98) | def load_existing_categories() -> Dict[str, str]:
  function get_workflow_category (line 118) | def get_workflow_category(
  function determine_category (line 134) | def determine_category(
  function format_category_name (line 150) | def format_category_name(category_key: str) -> str:
  function get_category_list (line 169) | def get_category_list(categories: Dict[str, List[str]]) -> List[str]:
  function get_popular_integrations (line 192) | def get_popular_integrations(workflows: List[Dict]) -> List[Dict[str, An...
  function extract_folder_from_filename (line 208) | def extract_folder_from_filename(filename: str) -> str:
  function save_search_index (line 218) | def save_search_index(search_index: Dict[str, Any], output_dir: str):
  function main (line 251) | def main():

FILE: scripts/update_github_pages.py
  function update_html_timestamp (line 14) | def update_html_timestamp(html_file: str):
  function update_api_timestamp (line 51) | def update_api_timestamp(api_dir: str):
  function create_github_pages_config (line 88) | def create_github_pages_config():
  function verify_github_pages_structure (line 183) | def verify_github_pages_structure():
  function fix_base_url_references (line 217) | def fix_base_url_references():
  function main (line 261) | def main():

FILE: scripts/update_readme_stats.py
  function get_current_stats (line 19) | def get_current_stats():
  function get_category_list (line 46) | def get_category_list(categories):
  function update_readme_stats (line 89) | def update_readme_stats(stats):
  function main (line 208) | def main():

FILE: src/ai_assistant.py
  class ChatMessage (line 15) | class ChatMessage(BaseModel):
  class AIResponse (line 20) | class AIResponse(BaseModel):
  class WorkflowAssistant (line 27) | class WorkflowAssistant:
    method __init__ (line 28) | def __init__(self, db_path: str = "workflows.db"):
    method get_db_connection (line 32) | def get_db_connection(self):
    method search_workflows_intelligent (line 37) | def search_workflows_intelligent(self, query: str, limit: int = 5) -> ...
    method extract_keywords (line 85) | def extract_keywords(self, query: str) -> List[str]:
    method detect_intent (line 122) | def detect_intent(self, query: str) -> str:
    method generate_response (line 146) | def generate_response(self, query: str, workflows: List[Dict]) -> str:
    method get_suggestions (line 189) | def get_suggestions(self, query: str) -> List[str]:
    method calculate_confidence (line 228) | def calculate_confidence(self, query: str, workflows: List[Dict]) -> f...
  function chat_with_assistant (line 257) | async def chat_with_assistant(message: ChatMessage):
  function chat_interface (line 284) | async def chat_interface():

FILE: src/analytics_engine.py
  class AnalyticsResponse (line 17) | class AnalyticsResponse(BaseModel):
  class WorkflowAnalytics (line 25) | class WorkflowAnalytics:
    method __init__ (line 26) | def __init__(self, db_path: str = "workflows.db"):
    method get_db_connection (line 29) | def get_db_connection(self):
    method get_workflow_analytics (line 34) | def get_workflow_analytics(self) -> Dict[str, Any]:
    method analyze_workflow_patterns (line 127) | def analyze_workflow_patterns(self, conn) -> Dict[str, Any]:
    method categorize_service (line 185) | def categorize_service(self, service: str) -> str:
    method generate_recommendations (line 211) | def generate_recommendations(
    method get_trend_analysis (line 273) | def get_trend_analysis(self, days: int = 30) -> Dict[str, Any]:
    method get_usage_insights (line 294) | def get_usage_insights(self) -> Dict[str, Any]:
  function get_analytics_overview (line 351) | async def get_analytics_overview():
  function get_trend_analysis (line 370) | async def get_trend_analysis(days: int = Query(30, ge=1, le=365)):
  function get_usage_insights (line 379) | async def get_usage_insights():
  function get_analytics_dashboard (line 388) | async def get_analytics_dashboard():

FILE: src/community_features.py
  class WorkflowRating (line 15) | class WorkflowRating:
  class WorkflowStats (line 28) | class WorkflowStats:
  class CommunityFeatures (line 40) | class CommunityFeatures:
    method __init__ (line 43) | def __init__(self, db_path: str = "workflows.db"):
    method init_community_tables (line 48) | def init_community_tables(self):
    method add_rating (line 128) | def add_rating(
    method get_workflow_ratings (line 161) | def get_workflow_ratings(
    method get_workflow_stats (line 196) | def get_workflow_stats(self, workflow_id: str) -> Optional[WorkflowSta...
    method increment_view (line 226) | def increment_view(self, workflow_id: str):
    method increment_download (line 251) | def increment_download(self, workflow_id: str):
    method get_top_rated_workflows (line 276) | def get_top_rated_workflows(self, limit: int = 10) -> List[Dict]:
    method get_most_popular_workflows (line 308) | def get_most_popular_workflows(self, limit: int = 10) -> List[Dict]:
    method create_collection (line 339) | def create_collection(
    method get_user_collections (line 376) | def get_user_collections(self, user_id: str) -> List[Dict]:
    method _update_workflow_stats (line 407) | def _update_workflow_stats(self, workflow_id: str):
  function create_community_api_endpoints (line 439) | def create_community_api_endpoints(app):

FILE: src/database.js
  function getAllJsonFiles (line 6) | async function getAllJsonFiles(dir) {
  class WorkflowDatabase (line 19) | class WorkflowDatabase {
    method constructor (line 20) | constructor(dbPath = "database/workflows.db") {
    method initialize (line 27) | async initialize() {
    method initDatabase (line 33) | async initDatabase() {
    method createTables (line 56) | async createTables() {
    method getFileHash (line 136) | getFileHash(filePath) {
    method formatWorkflowName (line 141) | formatWorkflowName(filename) {
    method analyzeWorkflow (line 171) | analyzeWorkflow(filePath) {
    method analyzeNodes (line 241) | analyzeNodes(nodes) {
    method generateDescription (line 274) | generateDescription(workflow, triggerType, integrations) {
    method indexWorkflows (line 301) | async indexWorkflows(forceReindex = false) {
    method getWorkflowByFilename (line 344) | async getWorkflowByFilename(filename) {
    method upsertWorkflow (line 357) | async upsertWorkflow(workflow) {
    method buildFTSQuery (line 392) | buildFTSQuery(query) {
    method searchWorkflows (line 431) | async searchWorkflows(
    method getStats (line 539) | async getStats() {
    method getWorkflowDetail (line 622) | async getWorkflowDetail(filename) {
    method close (line 663) | close() {

FILE: src/enhanced_api.py
  class WorkflowSearchRequest (line 21) | class WorkflowSearchRequest(BaseModel):
  class WorkflowRecommendationRequest (line 34) | class WorkflowRecommendationRequest(BaseModel):
  class AnalyticsRequest (line 43) | class AnalyticsRequest(BaseModel):
  class EnhancedAPI (line 50) | class EnhancedAPI:
    method __init__ (line 53) | def __init__(self, db_path: str = "workflows.db"):
    method _setup_middleware (line 65) | def _setup_middleware(self):
    method _setup_routes (line 79) | def _setup_routes(self):
    method _search_workflows_enhanced (line 232) | def _search_workflows_enhanced(self, **kwargs) -> List[Dict]:
    method _advanced_search (line 317) | def _advanced_search(self, request: WorkflowSearchRequest) -> List[Dict]:
    method _get_workflow_details (line 332) | def _get_workflow_details(
    method _get_recommendations (line 387) | def _get_recommendations(
    method _get_trending_workflows (line 421) | def _get_trending_workflows(self, limit: int) -> List[Dict]:
    method _get_analytics_overview (line 425) | def _get_analytics_overview(self) -> Dict:
    method _get_custom_analytics (line 456) | def _get_custom_analytics(self, request: AnalyticsRequest) -> Dict:
    method _get_health_status (line 466) | def _get_health_status(self) -> Dict:
    method _get_related_workflows (line 498) | def _get_related_workflows(self, workflow_id: str, limit: int = 5) -> ...
    method run (line 535) | def run(self, host: str = "127.0.0.1", port: int = 8000, debug: bool =...

FILE: src/index-workflows.js
  function printBanner (line 6) | function printBanner() {
  function indexWorkflows (line 11) | async function indexWorkflows(force = false) {
  function main (line 52) | async function main() {

FILE: src/init-db.js
  function initializeDatabase (line 7) | async function initializeDatabase() {

FILE: src/integration_hub.py
  class IntegrationConfig (line 15) | class IntegrationConfig(BaseModel):
  class WebhookPayload (line 22) | class WebhookPayload(BaseModel):
  class IntegrationHub (line 28) | class IntegrationHub:
    method __init__ (line 29) | def __init__(self):
    method register_integration (line 33) | def register_integration(self, config: IntegrationConfig):
    method sync_with_github (line 37) | async def sync_with_github(self, repo: str, token: str) -> Dict[str, A...
    method sync_with_slack (line 65) | async def sync_with_slack(self, webhook_url: str, message: str) -> Dic...
    method sync_with_discord (line 88) | async def sync_with_discord(self, webhook_url: str, message: str) -> D...
    method export_to_airtable (line 107) | async def export_to_airtable(
    method sync_with_notion (line 160) | async def sync_with_notion(
    method register_webhook (line 231) | def register_webhook(self, endpoint: str, handler):
    method handle_webhook (line 235) | async def handle_webhook(self, endpoint: str, payload: WebhookPayload):
  function sync_github (line 251) | async def sync_github(repo: str, token: str):
  function notify_slack (line 261) | async def notify_slack(webhook_url: str, message: str):
  function notify_discord (line 271) | async def notify_discord(webhook_url: str, message: str):
  function export_airtable (line 281) | async def export_airtable(
  function sync_notion (line 295) | async def sync_notion(database_id: str, token: str, workflows: List[Dict]):
  function handle_webhook_endpoint (line 305) | async def handle_webhook_endpoint(endpoint: str, payload: WebhookPayload):
  function get_integration_status (line 315) | async def get_integration_status():
  function get_integration_dashboard (line 325) | async def get_integration_dashboard():

FILE: src/performance_monitor.py
  class PerformanceMetrics (line 21) | class PerformanceMetrics(BaseModel):
  class Alert (line 34) | class Alert(BaseModel):
  class PerformanceMonitor (line 43) | class PerformanceMonitor:
    method __init__ (line 44) | def __init__(self, db_path: str = "workflows.db"):
    method start_monitoring (line 52) | def start_monitoring(self):
    method _monitor_loop (line 59) | def _monitor_loop(self):
    method _collect_metrics (line 82) | def _collect_metrics(self) -> PerformanceMetrics:
    method _measure_api_time (line 139) | def _measure_api_time(self, endpoint: str) -> float:
    method _get_workflow_executions (line 146) | def _get_workflow_executions(self) -> int:
    method _calculate_error_rate (line 153) | def _calculate_error_rate(self) -> float:
    method _check_alerts (line 160) | def _check_alerts(self, metrics: PerformanceMetrics):
    method _create_alert (line 195) | def _create_alert(self, alert_type: str, severity: str, message: str):
    method _broadcast_metrics (line 213) | def _broadcast_metrics(self, metrics: PerformanceMetrics):
    method _broadcast_alert (line 219) | def _broadcast_alert(self, alert: Alert):
    method _broadcast_to_websockets (line 224) | def _broadcast_to_websockets(self, message: dict):
    method get_metrics_summary (line 237) | def get_metrics_summary(self) -> Dict[str, Any]:
    method get_historical_metrics (line 262) | def get_historical_metrics(self, hours: int = 24) -> List[Dict]:
    method resolve_alert (line 273) | def resolve_alert(self, alert_id: str) -> bool:
  function get_current_metrics (line 291) | async def get_current_metrics():
  function get_historical_metrics (line 297) | async def get_historical_metrics(hours: int = 24):
  function get_alerts (line 303) | async def get_alerts():
  function resolve_alert (line 309) | async def resolve_alert(alert_id: str):
  function websocket_endpoint (line 319) | async def websocket_endpoint(websocket: WebSocket):
  function get_monitoring_dashboard (line 333) | async def get_monitoring_dashboard():

FILE: src/server.js
  function generateMermaidDiagram (line 182) | function generateMermaidDiagram(nodes, connections) {
  function sanitizeNodeId (line 213) | function sanitizeNodeId(nodeName) {
  function startServer (line 318) | function startServer(port = 8000, host = '127.0.0.1') {

FILE: src/user_management.py
  class User (line 28) | class User(BaseModel):
  class UserCreate (line 38) | class UserCreate(BaseModel):
  class UserLogin (line 46) | class UserLogin(BaseModel):
  class UserUpdate (line 51) | class UserUpdate(BaseModel):
  class Token (line 58) | class Token(BaseModel):
  class UserManager (line 64) | class UserManager:
    method __init__ (line 65) | def __init__(self, db_path: str = "users.db"):
    method init_database (line 69) | def init_database(self):
    method create_default_admin (line 116) | def create_default_admin(self):
    method hash_password (line 155) | def hash_password(self, password: str) -> str:
    method verify_password (line 159) | def verify_password(self, password: str, hashed: str) -> bool:
    method create_user (line 163) | def create_user(self, user_data: UserCreate) -> User:
    method authenticate_user (line 212) | def authenticate_user(self, username: str, password: str) -> Optional[...
    method create_access_token (line 240) | def create_access_token(self, user: User) -> str:
    method verify_token (line 251) | def verify_token(self, token: str) -> Optional[User]:
    method get_user_by_id (line 266) | def get_user_by_id(self, user_id: int) -> Optional[User]:
    method get_all_users (line 295) | def get_all_users(self) -> List[User]:
    method update_user (line 322) | def update_user(self, user_id: int, update_data: UserUpdate) -> Option...
    method delete_user (line 365) | def delete_user(self, user_id: int) -> bool:
  function get_current_user (line 388) | def get_current_user(
  function require_admin (line 405) | def require_admin(current_user: User = Depends(get_current_user)) -> User:
  function register_user (line 415) | async def register_user(user_data: UserCreate):
  function login_user (line 427) | async def login_user(login_data: UserLogin):
  function get_current_user_info (line 448) | async def get_current_user_info(current_user: User = Depends(get_current...
  function get_all_users (line 454) | async def get_all_users(admin: User = Depends(require_admin)):
  function get_user (line 460) | async def get_user(user_id: int, current_user: User = Depends(get_curren...
  function update_user (line 474) | async def update_user(
  function delete_user (line 496) | async def delete_user(user_id: int, admin: User = Depends(require_admin)):
  function get_auth_dashboard (line 506) | async def get_auth_dashboard():

FILE: test_workflows.py
  function test_sample_workflows (line 11) | def test_sample_workflows():

FILE: workflow_db.py
  class WorkflowDatabase (line 16) | class WorkflowDatabase:
    method __init__ (line 19) | def __init__(self, db_path: str = None):
    method init_database (line 27) | def init_database(self):
    method get_file_hash (line 110) | def get_file_hash(self, file_path: str) -> str:
    method format_workflow_name (line 118) | def format_workflow_name(self, filename: str) -> str:
    method analyze_workflow_file (line 156) | def analyze_workflow_file(self, file_path: str) -> Optional[Dict[str, ...
    method analyze_nodes (line 223) | def analyze_nodes(self, nodes: List[Dict]) -> Tuple[str, set]:
    method generate_description (line 407) | def generate_description(
    method index_all_workflows (line 455) | def index_all_workflows(self, force_reindex: bool = False) -> Dict[str...
    method search_workflows (line 539) | def search_workflows(
    method get_stats (line 626) | def get_stats(self) -> Dict[str, Any]:
    method get_service_categories (line 682) | def get_service_categories(self) -> Dict[str, List[str]]:
    method search_by_category (line 739) | def search_by_category(
  function main (line 795) | def main():
Copy disabled (too large) Download .json
Condensed preview — 2173 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (17,226K chars).
[
  {
    "path": ".devcontainer/Dockerfile",
    "chars": 2211,
    "preview": "FROM node:20\n\nARG TZ\nENV TZ=\"$TZ\"\n\n# Install basic development tools, Python, and iptables/ipset\nRUN apt update && apt i"
  },
  {
    "path": ".devcontainer/devcontainer.json",
    "chars": 1829,
    "preview": "{\n  \"name\": \"n8n Workflows - Claude Code\",\n  \"build\": {\n    \"dockerfile\": \"Dockerfile\",\n    \"args\": {\n      \"TZ\": \"${loc"
  },
  {
    "path": ".devcontainer/init-firewall.sh",
    "chars": 3805,
    "preview": "#!/bin/bash\nset -euo pipefail  # Exit on error, undefined vars, and pipeline failures\nIFS=$'\\n\\t'       # Stricter word "
  },
  {
    "path": ".dockerignore",
    "chars": 1295,
    "preview": "# .dockerignore - Files and directories to exclude from Docker build context\n\n# Git\n.git\n.gitignore\n.gitmodules\n.github/"
  },
  {
    "path": ".github/workflows/ci-cd.yml",
    "chars": 5914,
    "preview": "name: CI/CD Pipeline\n\non:\n  push:\n    branches: [ main, develop ]\n  pull_request:\n    branches: [ main ]\n  release:\n    "
  },
  {
    "path": ".github/workflows/deploy-pages.yml",
    "chars": 1772,
    "preview": "name: Deploy GitHub Pages (Legacy - Disabled)\n\n# This workflow is disabled - using pages-deploy.yml instead\n# The docs f"
  },
  {
    "path": ".github/workflows/docker.yml",
    "chars": 3868,
    "preview": "name: Docker Build and Test\n\non:\n  push:\n    branches: [ main, develop ]\n    paths:\n      - 'Dockerfile'\n      - 'docker"
  },
  {
    "path": ".github/workflows/pages-deploy.yml",
    "chars": 1183,
    "preview": "name: Deploy to GitHub Pages\n\non:\n  # Runs on pushes targeting the default branch\n  push:\n    branches: [\"main\"]\n\n  # Al"
  },
  {
    "path": ".github/workflows/update-readme.yml",
    "chars": 1582,
    "preview": "name: Update README Stats\n\non:\n  push:\n    branches: [ main ]\n    paths:\n      - 'workflows/**'\n  schedule:\n    # Run we"
  },
  {
    "path": ".gitignore",
    "chars": 1224,
    "preview": "# Python\n__pycache__/\n*.py[cod]\n*$py.class\n*.so\n.Python\nbuild/\ndevelop-eggs/\ndist/\ndownloads/\neggs/\n.eggs/\nlib/\nlib64/\np"
  },
  {
    "path": ".trivyignore",
    "chars": 2242,
    "preview": "# Trivy Ignore File\n# Only suppress after verifying the vulnerability is mitigated or false positive\n\n# Python base imag"
  },
  {
    "path": "CLAUDE.md",
    "chars": 4687,
    "preview": "\r\n\r\n# n8n-workflows Repository\r\n\r\n#\r\n\r\n# Overview\r\nThis repository contains a collection of n8n workflow automation file"
  },
  {
    "path": "CLAUDE_ZH.md",
    "chars": 1963,
    "preview": "\n\n# n8n-workflows 仓库\n\n#\n\n# 概述\n\n本仓库包含一系列 n8n 工作流自动化文件。n8n 是一款工作流自动化工具,可通过可视化节点界面创建复杂自动化。每个工作流以 JSON 文件形式存储,包含节点定义、连接和配置信息"
  },
  {
    "path": "DELIVERY-SUMMARY.md",
    "chars": 8627,
    "preview": "# 🎉 AI Automation Stack - Delivery Summary\n\n## ✅ What Was Built\n\nA complete, production-ready AI automation stack with c"
  },
  {
    "path": "DEPLOYMENT.md",
    "chars": 8572,
    "preview": "# N8N Workflows Documentation Platform - Deployment Guide\n\nThis guide covers deploying the N8N Workflows Documentation P"
  },
  {
    "path": "Dockerfile",
    "chars": 2122,
    "preview": "# Use official Python runtime as base image - stable secure version\nFROM python:3.11-slim-bookworm AS base\n\n# Security: "
  },
  {
    "path": "LICENSE",
    "chars": 1063,
    "preview": "MIT License\n\nCopyright (c) 2025 Zie619\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof "
  },
  {
    "path": "README.md",
    "chars": 10361,
    "preview": "# n8n Workflow Collection\r\n\r\n<div align=\"center\">\r\n\r\n![n8n Workflows](https://img.shields.io/badge/n8n-Workflows-orange?"
  },
  {
    "path": "SECURITY.md",
    "chars": 4323,
    "preview": "# Security Policy\n\n## Reporting Security Vulnerabilities\n\nIf you discover a security vulnerability in this project, plea"
  },
  {
    "path": "ai-stack/.env",
    "chars": 628,
    "preview": "# =============================================================================\n# AI Stack Environment Configuration\n# ="
  },
  {
    "path": "ai-stack/.gitignore",
    "chars": 529,
    "preview": "# =============================================================================\n# AI Stack .gitignore\n# ================"
  },
  {
    "path": "ai-stack/CHEAT-SHEET.md",
    "chars": 4768,
    "preview": "# 🎯 AI Stack Cheat Sheet\n**Print this page and keep it handy!**\n\n---\n\n## 🚀 Starting & Stopping\n\n### Windows\n```powershel"
  },
  {
    "path": "ai-stack/EASY-INSTALL.md",
    "chars": 7025,
    "preview": "# 🎮 Super Easy Install Guide\n## AI Automation Stack - Step by Step\n\n---\n\n## 📋 What You Need Before Starting\n\n### ✅ Step "
  },
  {
    "path": "ai-stack/INDEX.md",
    "chars": 5795,
    "preview": "# 📚 AI Stack Documentation Index\n\n## 👋 Welcome!\n\nThis is your complete guide to the AI Automation Stack. Choose the guid"
  },
  {
    "path": "ai-stack/QUICK-START.md",
    "chars": 1636,
    "preview": "# 🚀 Quick Start - 3 Simple Steps\n\n---\n\n## Step 1️⃣: Get Docker\n\n### Windows\n1. Go to: **www.docker.com/products/docker-d"
  },
  {
    "path": "ai-stack/README.md",
    "chars": 9418,
    "preview": "# 🤖 AI Automation Stack\n\n> **Turnkey Local AI Automation: n8n + Agent Zero + ComfyUI**\n\nA single-command deployable stac"
  },
  {
    "path": "ai-stack/SUMMARY.md",
    "chars": 5436,
    "preview": "# 📋 AI Stack Summary\n\n## What You Get\n\n```\n┌─────────────────────────────────────────────────────────────┐\n│            "
  },
  {
    "path": "ai-stack/TROUBLESHOOTING.md",
    "chars": 5884,
    "preview": "# 🔧 Troubleshooting Guide\n\n## Common Problems and How to Fix Them\n\n---\n\n## Problem 1: \"Docker is not installed\"\n\n### Wha"
  },
  {
    "path": "ai-stack/UBUNTU-INSTALL.md",
    "chars": 7551,
    "preview": "# 🐧 Ubuntu Installation Guide\n## AI Automation Stack for Ubuntu/Linux\n\n---\n\n## ✅ Step 1: Install Docker on Ubuntu\n\n### O"
  },
  {
    "path": "ai-stack/docker-compose.yml",
    "chars": 4440,
    "preview": "# =============================================================================\n# Turnkey Local AI Automation Stack\n# n8"
  },
  {
    "path": "ai-stack/start.ps1",
    "chars": 6772,
    "preview": "# =============================================================================\n# AI Stack Startup Script for Windows\n# "
  },
  {
    "path": "ai-stack/start.sh",
    "chars": 7766,
    "preview": "#!/bin/bash\n# =============================================================================\n# AI Stack Startup Script fo"
  },
  {
    "path": "ai-stack/workflows/comfyui-image-generation.json",
    "chars": 11846,
    "preview": "{\n  \"name\": \"ComfyUI Image Generation Pipeline\",\n  \"nodes\": [\n    {\n      \"parameters\": {\n        \"httpMethod\": \"POST\",\n"
  },
  {
    "path": "ai-stack/workflows/comfyui-simple-test.json",
    "chars": 3328,
    "preview": "{\n  \"name\": \"ComfyUI Simple Test\",\n  \"nodes\": [\n    {\n      \"parameters\": {\n        \"httpMethod\": \"GET\",\n        \"path\":"
  },
  {
    "path": "api_server.py",
    "chars": 30081,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nFastAPI Server for N8N Workflow Documentation\nHigh-performance API with sub-100ms response ti"
  },
  {
    "path": "context/def_categories.json",
    "chars": 17056,
    "preview": "[\n    {\n      \"integration\": \"APITemplate.io\",\n      \"category\": \"Creative Design Automation\"\n    },\n    {\n      \"integr"
  },
  {
    "path": "context/search_categories.json",
    "chars": 242389,
    "preview": "[\n  {\n    \"filename\": \"0001_Telegram_Schedule_Automation_Scheduled.json\",\n    \"category\": \"Communication & Messaging\"\n  "
  },
  {
    "path": "context/unique_categories.json",
    "chars": 491,
    "preview": "[\n  \"AI Agent Development\",\n  \"Business Process Automation\",\n  \"CRM & Sales\",\n  \"Cloud Storage & File Management\",\n  \"Co"
  },
  {
    "path": "docker-compose.dev.yml",
    "chars": 1173,
    "preview": "# Development Docker Compose Configuration\n# Usage: docker compose -f docker-compose.yml -f docker-compose.dev.yml up\n\ns"
  },
  {
    "path": "docker-compose.prod.yml",
    "chars": 2108,
    "preview": "services:\n  workflows-docs:\n    restart: always\n    environment:\n      - ENVIRONMENT=production\n      - LOG_LEVEL=warnin"
  },
  {
    "path": "docker-compose.yml",
    "chars": 1554,
    "preview": "services:\n  # N8N Workflows Documentation Service\n  workflows-docs:\n    image: workflows-doc:latest\n    build:\n      con"
  },
  {
    "path": "docs/.nojekyll",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "docs/404.html",
    "chars": 1322,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width"
  },
  {
    "path": "docs/_config.yml",
    "chars": 479,
    "preview": "# GitHub Pages Configuration\ntheme: null\ntitle: N8N Workflows Repository\ndescription: Browse and search 2000+ n8n workfl"
  },
  {
    "path": "docs/api/categories.json",
    "chars": 472,
    "preview": "[\n  \"AI Agent Development\",\n  \"Business Process Automation\",\n  \"CRM & Sales\",\n  \"Cloud Storage & File Management\",\n  \"Co"
  },
  {
    "path": "docs/api/integrations.json",
    "chars": 2658,
    "preview": "[\n  {\n    \"name\": \"Httprequest\",\n    \"count\": 822\n  },\n  {\n    \"name\": \"OpenAI\",\n    \"count\": 573\n  },\n  {\n    \"name\": \""
  },
  {
    "path": "docs/api/metadata.json",
    "chars": 170,
    "preview": "{\n  \"last_updated\": \"2025-11-03T11:28:31.626422\",\n  \"last_updated_readable\": \"November 03, 2025 at 11:28 UTC\",\n  \"versio"
  },
  {
    "path": "docs/api/search-index.json",
    "chars": 2219190,
    "preview": "{\n  \"version\": \"1.0\",\n  \"generated_at\": \"2025-11-03T22:07:53.463983\",\n  \"stats\": {\n    \"total_workflows\": 4343,\n    \"act"
  },
  {
    "path": "docs/api/stats.json",
    "chars": 389,
    "preview": "{\n  \"total_workflows\": 4343,\n  \"active_workflows\": 434,\n  \"inactive_workflows\": 3908,\n  \"total_nodes\": 29528,\n  \"unique_"
  },
  {
    "path": "docs/css/styles.css",
    "chars": 8603,
    "preview": "/* CSS Variables for Theming */\n:root {\n  --primary-color: #ea4b71;\n  --primary-dark: #d63859;\n  --secondary-color: #6b7"
  },
  {
    "path": "docs/index.html",
    "chars": 11681,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width"
  },
  {
    "path": "docs/js/app.js",
    "chars": 6571,
    "preview": "/**\n * Main application script for N8N Workflow Collection\n * Handles additional UI interactions and utilities\n */\n\nclas"
  },
  {
    "path": "docs/js/search.js",
    "chars": 15432,
    "preview": "/**\n * Client-side search functionality for N8N Workflow Collection\n * Handles searching, filtering, and displaying work"
  },
  {
    "path": "helm/workflows-docs/Chart.yaml",
    "chars": 398,
    "preview": "apiVersion: v2\nname: workflows-docs\ndescription: A Helm chart for N8N Workflows Documentation Platform\ntype: application"
  },
  {
    "path": "helm/workflows-docs/templates/_helpers.tpl",
    "chars": 1677,
    "preview": "{{/*\nExpand the name of the chart.\n*/}}\n{{- define \"workflows-docs.name\" -}}\n{{- default .Chart.Name .Values.nameOverrid"
  },
  {
    "path": "helm/workflows-docs/templates/deployment.yaml",
    "chars": 3023,
    "preview": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: {{ include \"workflows-docs.fullname\" . }}\n  labels:\n    {{- inclu"
  },
  {
    "path": "helm/workflows-docs/values.yaml",
    "chars": 2350,
    "preview": "# Default values for workflows-docs.\n# This is a YAML-formatted file.\n\nreplicaCount: 2\n\nimage:\n  repository: ghcr.io/sah"
  },
  {
    "path": "k8s/configmap.yaml",
    "chars": 544,
    "preview": "apiVersion: v1\nkind: ConfigMap\nmetadata:\n  name: workflows-docs-config\n  namespace: n8n-workflows\n  labels:\n    app.kube"
  },
  {
    "path": "k8s/deployment.yaml",
    "chars": 2578,
    "preview": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: workflows-docs\n  namespace: n8n-workflows\n  labels:\n    app.kuber"
  },
  {
    "path": "k8s/ingress.yaml",
    "chars": 1687,
    "preview": "apiVersion: networking.k8s.io/v1\nkind: Ingress\nmetadata:\n  name: workflows-docs-ingress\n  namespace: n8n-workflows\n  lab"
  },
  {
    "path": "k8s/namespace.yaml",
    "chars": 182,
    "preview": "apiVersion: v1\nkind: Namespace\nmetadata:\n  name: n8n-workflows\n  labels:\n    name: n8n-workflows\n    app.kubernetes.io/n"
  },
  {
    "path": "k8s/service.yaml",
    "chars": 955,
    "preview": "apiVersion: v1\nkind: Service\nmetadata:\n  name: workflows-docs-service\n  namespace: n8n-workflows\n  labels:\n    app.kuber"
  },
  {
    "path": "medcards-ai/.gitignore",
    "chars": 350,
    "preview": "# dependencies\n/node_modules\n/.pnp\n.pnp.js\n\n# testing\n/coverage\n\n# next.js\n/.next/\n/out/\n\n# production\n/build\n\n# misc\n.D"
  },
  {
    "path": "medcards-ai/EXECUTIVE_SUMMARY.md",
    "chars": 14885,
    "preview": "# MEDCARDS.AI - Executive Summary\n\n> **Building the unassailable medical education platform for Brazil and beyond**\n\n---"
  },
  {
    "path": "medcards-ai/PRODUCT_STRATEGY.md",
    "chars": 18595,
    "preview": "# MEDCARDS.AI - Product Strategy & Network Effects Architecture\n\n## 🎯 Product Vision: From Tool to Platform\n\n**Current S"
  },
  {
    "path": "medcards-ai/README.md",
    "chars": 10528,
    "preview": "# MEDCARDS.AI 🏥\n\n> AI-powered medical residency exam preparation platform for Brazilian medical students\n\n**MEDCARDS.AI*"
  },
  {
    "path": "medcards-ai/SCALABILITY_ARCHITECTURE.md",
    "chars": 19123,
    "preview": "# MEDCARDS.AI - Scalability Architecture & Technical Infrastructure\n\n## 🎯 Scaling Philosophy\n\n**Build for 10k users, arc"
  },
  {
    "path": "medcards-ai/next.config.ts",
    "chars": 832,
    "preview": "import type { NextConfig } from \"next\";\n\nconst nextConfig: NextConfig = {\n  /* config options here */\n  reactStrictMode:"
  },
  {
    "path": "medcards-ai/package.json",
    "chars": 1553,
    "preview": "{\n  \"name\": \"medcards-ai\",\n  \"version\": \"1.0.0\",\n  \"description\": \"AI-powered medical residency exam preparation platfor"
  },
  {
    "path": "medcards-ai/postcss.config.mjs",
    "chars": 157,
    "preview": "/** @type {import('postcss-load-config').Config} */\nconst config = {\n  plugins: {\n    tailwindcss: {},\n    autoprefixer:"
  },
  {
    "path": "medcards-ai/prompts/coach-prompt.md",
    "chars": 6036,
    "preview": "# MEDCARDS.AI - AI Coach Prompt\n## Role: Adaptive Case Selector & Learning Path Designer\n\nYou are an AI medical educatio"
  },
  {
    "path": "medcards-ai/prompts/feedback-prompt.md",
    "chars": 9330,
    "preview": "# MEDCARDS.AI - AI Feedback Prompt\n## Role: Clinical Reasoning Analyzer & Educational Feedback Generator\n\nYou are an AI "
  },
  {
    "path": "medcards-ai/prompts/tutor-prompt.md",
    "chars": 12950,
    "preview": "# MEDCARDS.AI - AI Tutor Prompt (War Room Chat)\n## Role: Personal Medical Study Companion with Complete Memory\n\nYou are "
  },
  {
    "path": "medcards-ai/src/types/database.ts",
    "chars": 7781,
    "preview": "/**\n * MEDCARDS.AI - Database Types\n * TypeScript interfaces matching Supabase schema\n */\n\n// =========================="
  },
  {
    "path": "medcards-ai/supabase/schema-network-effects.sql",
    "chars": 34876,
    "preview": "-- ============================================================================\n-- MEDCARDS.AI - Network Effects & Socia"
  },
  {
    "path": "medcards-ai/supabase/schema.sql",
    "chars": 16656,
    "preview": "-- ============================================================================\n-- MEDCARDS.AI - Database Schema\n-- Supa"
  },
  {
    "path": "medcards-ai/supabase/seed-cases.sql",
    "chars": 10853,
    "preview": "-- ============================================================================\n-- MEDCARDS.AI - Seed Data: Clinical Cas"
  },
  {
    "path": "medcards-ai/tailwind.config.ts",
    "chars": 4181,
    "preview": "import type { Config } from \"tailwindcss\";\n\nconst config: Config = {\n  darkMode: [\"class\"],\n  content: [\n    \"./src/page"
  },
  {
    "path": "medcards-ai/tsconfig.json",
    "chars": 756,
    "preview": "{\n  \"compilerOptions\": {\n    \"target\": \"ES2020\",\n    \"lib\": [\"dom\", \"dom.iterable\", \"esnext\"],\n    \"allowJs\": true,\n    "
  },
  {
    "path": "requirements.txt",
    "chars": 426,
    "preview": "# N8N Workflows API Dependencies\n# Core API Framework - Stable versions compatible with Python 3.9-3.12\nfastapi==0.109.0"
  },
  {
    "path": "run-as-docker-container.sh",
    "chars": 3000,
    "preview": "#!/bin/bash\n\n# N8N Workflows Documentation - Docker Container Runner\n# Enhanced version with better cross-platform suppo"
  },
  {
    "path": "run.py",
    "chars": 5025,
    "preview": "#!/usr/bin/env python3\n\"\"\"\n🚀 N8N Workflows Search Engine Launcher\nStart the advanced search system with optimized perfor"
  },
  {
    "path": "scripts/backup.sh",
    "chars": 1760,
    "preview": "#!/bin/bash\n\n# N8N Workflows Documentation - Backup Script\n# Usage: ./scripts/backup.sh [backup-name]\n\nset -euo pipefail"
  },
  {
    "path": "scripts/deploy.sh",
    "chars": 8252,
    "preview": "#!/bin/bash\n\n# N8N Workflows Documentation - Production Deployment Script\n# Usage: ./scripts/deploy.sh [environment]\n# E"
  },
  {
    "path": "scripts/generate_search_index.py",
    "chars": 9694,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nGenerate Static Search Index for GitHub Pages\nCreates a lightweight JSON index for client-sid"
  },
  {
    "path": "scripts/health-check.sh",
    "chars": 2839,
    "preview": "#!/bin/bash\n\n# N8N Workflows Documentation - Health Check Script\n# Usage: ./scripts/health-check.sh [endpoint]\n\nset -euo"
  },
  {
    "path": "scripts/update_github_pages.py",
    "chars": 8952,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nUpdate GitHub Pages Files\nFixes the hardcoded timestamp and ensures proper deployment.\nAddres"
  },
  {
    "path": "scripts/update_readme_stats.py",
    "chars": 8542,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nUpdate README.md with current workflow statistics\nReplaces hardcoded numbers with live data f"
  },
  {
    "path": "src/ai_assistant.py",
    "chars": 21388,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nAI Assistant for N8N Workflow Discovery\nIntelligent chat interface for finding and understand"
  },
  {
    "path": "src/analytics_engine.py",
    "chars": 23024,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nAdvanced Analytics Engine for N8N Workflows\nProvides insights, patterns, and usage analytics."
  },
  {
    "path": "src/community_features.py",
    "chars": 15890,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nCommunity Features Module for n8n Workflows Repository\nImplements rating, review, and social "
  },
  {
    "path": "src/database.js",
    "chars": 18897,
    "preview": "const sqlite3 = require(\"sqlite3\").verbose();\nconst path = require(\"path\");\nconst fs = require(\"fs-extra\");\nconst crypto"
  },
  {
    "path": "src/enhanced_api.py",
    "chars": 19285,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nEnhanced API Module for n8n Workflows Repository\nAdvanced features, analytics, and performanc"
  },
  {
    "path": "src/index-workflows.js",
    "chars": 2841,
    "preview": "#!/usr/bin/env node\n\nconst { program } = require('commander');\nconst WorkflowDatabase = require('./database');\n\nfunction"
  },
  {
    "path": "src/init-db.js",
    "chars": 1275,
    "preview": "#!/usr/bin/env node\n\nconst fs = require('fs-extra');\nconst path = require('path');\nconst WorkflowDatabase = require('./d"
  },
  {
    "path": "src/integration_hub.py",
    "chars": 26460,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nIntegration Hub for N8N Workflows\nConnect with external platforms and services.\n\"\"\"\n\nfrom fas"
  },
  {
    "path": "src/performance_monitor.py",
    "chars": 27245,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nPerformance Monitoring System for N8N Workflows\nReal-time metrics, monitoring, and alerting.\n"
  },
  {
    "path": "src/server.js",
    "chars": 10971,
    "preview": "const express = require('express');\nconst cors = require('cors');\nconst compression = require('compression');\nconst helm"
  },
  {
    "path": "src/user_management.py",
    "chars": 30188,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nUser Management System for N8N Workflows\nMulti-user access control and authentication.\n\"\"\"\n\nf"
  },
  {
    "path": "static/index-nodejs.html",
    "chars": 51817,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n\n<head>\n  <meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, i"
  },
  {
    "path": "static/index.html",
    "chars": 58835,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n\n<head>\n  <meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, i"
  },
  {
    "path": "static/mobile-app.html",
    "chars": 12967,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width"
  },
  {
    "path": "static/mobile-interface.html",
    "chars": 18336,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width"
  },
  {
    "path": "templates/README.md",
    "chars": 4084,
    "preview": "\n\n# 🎯 N8N Workflow Templates\n\n#\n\n# Overview\nThis directory contains reusable workflow templates that demonstrate common "
  },
  {
    "path": "templates/communication/telegram-ai-bot-template.json",
    "chars": 4828,
    "preview": "{\n  \"name\": \"Telegram AI Bot Template\",\n  \"nodes\": [\n    {\n      \"parameters\": {\n        \"updates\": [\n          \"message"
  },
  {
    "path": "templates/communication/telegram-ai-bot-template.md",
    "chars": 5846,
    "preview": "\n\n# 🤖 Telegram AI Bot Template\n\n#\n\n# Overview\nA complete Telegram bot template that integrates with OpenAI to provide in"
  },
  {
    "path": "templates/data-processing/google-sheets-automation-template.json",
    "chars": 5983,
    "preview": "{\n  \"name\": \"Google Sheets Data Processing Template\",\n  \"nodes\": [\n    {\n      \"parameters\": {\n        \"operation\": \"get"
  },
  {
    "path": "test_api.sh",
    "chars": 1764,
    "preview": "#!/bin/bash\n\necho \"🔍 Testing API Functionality...\"\necho \"=========================================\"\n\n# Test search\necho "
  },
  {
    "path": "test_security.sh",
    "chars": 1168,
    "preview": "#!/bin/bash\n\necho \"🔒 Testing Path Traversal Protection...\"\necho \"=========================================\"\n\n# Test vari"
  },
  {
    "path": "test_workflows.py",
    "chars": 3815,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nTest Sample Workflows\nValidate that our upgraded workflows are working properly\n\"\"\"\n\nimport j"
  },
  {
    "path": "trivy.yaml",
    "chars": 991,
    "preview": "# Trivy configuration file\n# This controls how Trivy scans the repository\n\n# Scan configuration\nscan:\n  # Skip scanning "
  },
  {
    "path": "workflow_db.py",
    "chars": 30701,
    "preview": "#!/usr/bin/env python3\n\"\"\"\nFast N8N Workflow Database\nSQLite-based workflow indexer and search engine for instant perfor"
  },
  {
    "path": "workflows/Activecampaign/0057_Activecampaign_Create_Triggered.json",
    "chars": 2141,
    "preview": "{\n  \"id\": \"112\",\n  \"name\": \"Receive updates when a new account is added by an admin in ActiveCampaign\",\n  \"nodes\": [\n   "
  },
  {
    "path": "workflows/Acuityscheduling/1002_Acuityscheduling_Automate_Triggered.json",
    "chars": 2001,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Acuity Scheduling Trigger\",\n      \"type\": \"n8n-nodes-base.acuitySchedulingTrigger\",\n"
  },
  {
    "path": "workflows/Affinity/1085_Affinity_Create_Triggered.json",
    "chars": 2077,
    "preview": "{\n  \"id\": \"63\",\n  \"name\": \"Receive updates when a new list is created in Affinity\",\n  \"nodes\": [\n    {\n      \"name\": \"Af"
  },
  {
    "path": "workflows/Aggregate/0472_Aggregate_Gmail_Create_Triggered.json",
    "chars": 20874,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-b4b1d7de\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:41.890"
  },
  {
    "path": "workflows/Aggregate/0480_Aggregate_Telegram_Automate_Triggered.json",
    "chars": 10035,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-c2d342e2\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:41.878"
  },
  {
    "path": "workflows/Aggregate/0681_Aggregate_HTTP_Create_Webhook.json",
    "chars": 56160,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"799d2e0c-29b9-494c-b11a-d79c7ed4a06d\",\n      \"name\": \"OpenAI Chat Model\",\n      \"type\""
  },
  {
    "path": "workflows/Aggregate/0691_Aggregate_Jotform_Create_Triggered.json",
    "chars": 18873,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-404a7011\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:41.898"
  },
  {
    "path": "workflows/Aggregate/0695_Aggregate_Stickynote_Create_Webhook.json",
    "chars": 18781,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-6971bd3a\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:41.918"
  },
  {
    "path": "workflows/Aggregate/0697_Aggregate_Typeform_Create_Triggered.json",
    "chars": 16984,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-5df091bb\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:41.943"
  },
  {
    "path": "workflows/Aggregate/0762_Aggregate_Stickynote_Create_Triggered.json",
    "chars": 65789,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-a058a4df\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:41.926"
  },
  {
    "path": "workflows/Aggregate/0800_Aggregate_Telegram_Automate_Triggered.json",
    "chars": 11109,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-c64cefde\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:41.993"
  },
  {
    "path": "workflows/Aggregate/1324_Aggregate_Gmail_Send_Triggered.json",
    "chars": 13580,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"8141ffad-df2a-403b-a869-799c036f9733\",\n      \"name\": \"Gmail trigger\",\n      \"type\": \"n"
  },
  {
    "path": "workflows/Aggregate/1374_Aggregate_Stickynote_Create_Triggered.json",
    "chars": 9142,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-c2b30210\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:41.970"
  },
  {
    "path": "workflows/Aggregate/1404_Aggregate_Telegram_Automation_Triggered.json",
    "chars": 19295,
    "preview": "{\n  \"name\": \"DSP Agent\",\n  \"nodes\": [\n    {\n      \"parameters\": {\n        \"updates\": [\n          \"message\"\n        ],\n  "
  },
  {
    "path": "workflows/Aggregate/1413_Aggregate_Telegram_Automation_Triggered.json",
    "chars": 19956,
    "preview": "{\n  \"name\": \"Dsp agent\",\n  \"nodes\": [\n    {\n      \"parameters\": {\n        \"updates\": [\n          \"message\"\n        ],\n  "
  },
  {
    "path": "workflows/Aggregate/1430_Aggregate_Schedule_Send_Scheduled.json",
    "chars": 10527,
    "preview": "{\n  \"id\": \"M8oLW9Qd59zNJzg2\",\n  \"meta\": {\n    \"instanceId\": \"workflow-9c21771e\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Aggregate/1506_Aggregate_Telegram_Automation_Triggered.json",
    "chars": 10025,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-b1e4be40\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.040"
  },
  {
    "path": "workflows/Aggregate/1544_Aggregate_Schedule_Send_Scheduled.json",
    "chars": 11580,
    "preview": "{\n  \"id\": \"M8oLW9Qd59zNJzg2\",\n  \"meta\": {\n    \"instanceId\": \"workflow-9b5ad43c\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Aggregate/1576_Aggregate_Stickynote_Automate_Webhook.json",
    "chars": 18021,
    "preview": "{\n  \"id\": \"OO4izN00xPfIPGaB\",\n  \"meta\": {\n    \"instanceId\": \"workflow-b0b07836\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Airtable/0756_Airtable_Create_Triggered.json",
    "chars": 14934,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-ca4dec31\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.096"
  },
  {
    "path": "workflows/Airtable/1120_Airtable_Mindee_Automate_Webhook.json",
    "chars": 3615,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Webhook\",\n      \"type\": \"n8n-nodes-base.webhook\",\n      \"position\": [\n        450,\n "
  },
  {
    "path": "workflows/Airtable/1138_Airtable_Vonage_Automation_Scheduled.json",
    "chars": 6708,
    "preview": "{\n  \"id\": \"7\",\n  \"name\": \"Daily Language Learning\",\n  \"nodes\": [\n    {\n      \"name\": \"Daily trigger\",\n      \"type\": \"n8n"
  },
  {
    "path": "workflows/Airtable/1220_Airtable_Lemlist_Automate.json",
    "chars": 3262,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"trigger-ae6dbb46\",\n      \"name\": \"Manual Trigger\",\n      \"type\": \"n8n-nodes-base.manua"
  },
  {
    "path": "workflows/Airtabletool/1261_Airtabletool_Stickynote_Automation_Triggered.json",
    "chars": 35365,
    "preview": "{\n  \"id\": \"V8ypWn7oaOVS3zH0\",\n  \"meta\": {\n    \"instanceId\": \"workflow-3e73ea1a\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Airtabletool/1723_Airtabletool_Stickynote_Automation_Triggered.json",
    "chars": 35432,
    "preview": "{\n  \"id\": \"V8ypWn7oaOVS3zH0\",\n  \"meta\": {\n    \"instanceId\": \"workflow-76db61f6\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Airtoptool/1681_Airtoptool_Slack_Automation_Triggered.json",
    "chars": 20220,
    "preview": "{\n  \"id\": \"TS1wT16JCcy1Dt9Q\",\n  \"meta\": {\n    \"instanceId\": \"workflow-154c1fed\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Amqp/0138_Amqp_Send_Triggered.json",
    "chars": 1959,
    "preview": "{\n  \"id\": \"135\",\n  \"name\": \"Receive messages for an ActiveMQ queue via AMQP Trigger\",\n  \"nodes\": [\n    {\n      \"name\": \""
  },
  {
    "path": "workflows/Apitemplateio/1224_Apitemplateio_Typeform_Automation_Triggered.json",
    "chars": 2877,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Typeform Trigger\",\n      \"type\": \"n8n-nodes-base.typeformTrigger\",\n      \"position\":"
  },
  {
    "path": "workflows/Asana/0241_Asana_Notion_Create_Triggered.json",
    "chars": 9222,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-76c39dc9\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.113"
  },
  {
    "path": "workflows/Asana/0967_Asana_Update_Triggered.json",
    "chars": 2046,
    "preview": "{\n  \"id\": \"47\",\n  \"name\": \"Receive updates when an event occurs in Asana\",\n  \"nodes\": [\n    {\n      \"name\": \"Asana-Trigg"
  },
  {
    "path": "workflows/Asana/1223_Asana_Webhook_Automate_Webhook.json",
    "chars": 2612,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Asana\",\n      \"type\": \"n8n-nodes-base.asana\",\n      \"position\": [\n        450,\n     "
  },
  {
    "path": "workflows/Automate/1060_Automate_Webhook.json",
    "chars": 11106,
    "preview": "{\n  \"id\": \"5Y8QXJ3N67wnmR2R\",\n  \"meta\": {\n    \"instanceId\": \"workflow-cee44ac3\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Automate/1123_Automate.json",
    "chars": 2498,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"trigger-a3a1cb65\",\n      \"name\": \"Manual Trigger\",\n      \"type\": \"n8n-nodes-base.manua"
  },
  {
    "path": "workflows/Automate/1271_Automate.json",
    "chars": 9851,
    "preview": "{\n  \"\\\"meta\\\"\": \"{\",\n  \"\\\"instanceId\\\"\": \"\\\"e4f78845dfed9ddcfba1945ae00d12e9a7d76eab052afd19299228ce02349d86\\\"\",\n  \"\\\"no"
  },
  {
    "path": "workflows/Automate/1326_Automate.json",
    "chars": 6948,
    "preview": "{\n  \"\\\"meta\\\"\": \"{\",\n  \"\\\"instanceId\\\"\": \"\\\"26ba763460b97c249b82942b23b6384876dfeb9327513332e743c5f6219c2b8e\\\"\",\n  \"\\\"no"
  },
  {
    "path": "workflows/Automate/1911_Automate.json",
    "chars": 4670,
    "preview": "{\n  \"\\\"meta\\\"\": \"{\",\n  \"\\\"instanceId\\\"\": \"\\\"f0a68da631efd4ed052a324b63ff90f7a844426af0398a68338f44245d1dd9e5\\\"\",\n  \"\\\"no"
  },
  {
    "path": "workflows/Automation/1250_Automation.json",
    "chars": 7733,
    "preview": "{\n  \"\\\"nodes\\\"\": \"[\",\n  \"\\\"id\\\"\": \"\\\"vBLHyjEnMK9EaWwQ\\\",\",\n  \"\\\"name\\\"\": \"\\\"Mark OpenAi \\\"\",\n  \"\\\"type\\\"\": \"\\\"main\\\",\",\n"
  },
  {
    "path": "workflows/Automation/1265_Automation_Triggered.json",
    "chars": 5414,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-2528b000\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.167"
  },
  {
    "path": "workflows/Automation/1290_Automation.json",
    "chars": 1617,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"trigger-de33b91f\",\n      \"name\": \"Manual Trigger\",\n      \"type\": \"n8n-nodes-base.manua"
  },
  {
    "path": "workflows/Automation/1497_Automation.json",
    "chars": 12781,
    "preview": "{\n  \"\\\"meta\\\"\": \"{\",\n  \"\\\"instanceId\\\"\": \"\\\"408f9fb9940c3cb18ffdef0e0150fe342d6e655c3a9fac21f0f644e8bedabcd9\\\",\",\n  \"\\\"t"
  },
  {
    "path": "workflows/Automation/1634_Automation.json",
    "chars": 6808,
    "preview": "{\n  \"\\\"meta\\\"\": \"{\",\n  \"\\\"instanceId\\\"\": \"\\\"26ba763460b97c249b82942b23b6384876dfeb9327513332e743c5f6219c2b8e\\\"\",\n  \"\\\"no"
  },
  {
    "path": "workflows/Automation/2047_Automation.json",
    "chars": 8865,
    "preview": "{\n  \"\\\"id\\\"\": \"\\\"wokWVLDQUDi0DC7I\\\",\",\n  \"\\\"meta\\\"\": \"{\",\n  \"\\\"instanceId\\\"\": \"\\\"03907a25f048377a8789a4332f28148522ba31e"
  },
  {
    "path": "workflows/Autopilot/1227_Autopilot_Automate.json",
    "chars": 3752,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"trigger-5d061f6f\",\n      \"name\": \"Manual Trigger\",\n      \"type\": \"n8n-nodes-base.manua"
  },
  {
    "path": "workflows/Autopilot/1228_Autopilot_Airtable_Automate_Triggered.json",
    "chars": 3292,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Autopilot Trigger\",\n      \"type\": \"n8n-nodes-base.autopilotTrigger\",\n      \"position"
  },
  {
    "path": "workflows/Awsrekognition/0150_Awsrekognition_GoogleSheets_Automation_Webhook.json",
    "chars": 4735,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"trigger-61bbb6e8\",\n      \"name\": \"Manual Trigger\",\n      \"type\": \"n8n-nodes-base.manua"
  },
  {
    "path": "workflows/Awss3/0149_Awss3_Wait_Automate_Triggered.json",
    "chars": 6873,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Google Sheets\",\n      \"type\": \"n8n-nodes-base.googleSheets\",\n      \"position\": [\n   "
  },
  {
    "path": "workflows/Awss3/0151_Awss3_GoogleDrive_Import_Triggered.json",
    "chars": 3951,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Google Drive Trigger\",\n      \"type\": \"n8n-nodes-base.googleDriveTrigger\",\n      \"pos"
  },
  {
    "path": "workflows/Awss3/0593_Awss3_Compression_Automate_Triggered.json",
    "chars": 4593,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-c069b442\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.193"
  },
  {
    "path": "workflows/Awssns/0984_Awssns_Automate_Triggered.json",
    "chars": 1889,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"AWS-SNS-Trigger\",\n      \"type\": \"n8n-nodes-base.awsSnsTrigger\",\n      \"position\": [\n"
  },
  {
    "path": "workflows/Awstextract/0148_Awstextract_Telegram_Automate_Triggered.json",
    "chars": 3780,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"AWS Textract\",\n      \"type\": \"n8n-nodes-base.awsTextract\",\n      \"position\": [\n     "
  },
  {
    "path": "workflows/Bannerbear/0525_Bannerbear_Discord_Create_Webhook.json",
    "chars": 19585,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-33824f8e\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.203"
  },
  {
    "path": "workflows/Bannerbear/1665_Bannerbear_Discord_Automation_Webhook.json",
    "chars": 19582,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-86048cc1\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.208"
  },
  {
    "path": "workflows/Baserow/1822_Baserow_Stickynote_Automation_Webhook.json",
    "chars": 8770,
    "preview": "{\n  \"id\": \"cMccNWyyvptrhRt6\",\n  \"meta\": {\n    \"instanceId\": \"workflow-ca256fcf\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Beeminder/0403_Beeminder_Strava_Create_Triggered.json",
    "chars": 2643,
    "preview": "{\n  \"id\": \"208\",\n  \"name\": \"Add a datapoint to Beeminder when new activity is added to Strava\",\n  \"nodes\": [\n    {\n     "
  },
  {
    "path": "workflows/Bitbucket/0999_Bitbucket_Automate_Triggered.json",
    "chars": 2029,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Bitbucket Trigger\",\n      \"type\": \"n8n-nodes-base.bitbucketTrigger\",\n      \"position"
  },
  {
    "path": "workflows/Bitly/0910_Bitly_Datetime_Update_Webhook.json",
    "chars": 66874,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-102d83a0\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.254"
  },
  {
    "path": "workflows/Bitwarden/0003_Bitwarden_Automate.json",
    "chars": 3796,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"trigger-dc988eb5\",\n      \"name\": \"Manual Trigger\",\n      \"type\": \"n8n-nodes-base.manua"
  },
  {
    "path": "workflows/Box/1031_Box_Automate_Triggered.json",
    "chars": 2024,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Box Trigger\",\n      \"type\": \"n8n-nodes-base.boxTrigger\",\n      \"position\": [\n       "
  },
  {
    "path": "workflows/Calcslive/2058_Calcslive_Engineering_Calculations_Manual.json",
    "chars": 7172,
    "preview": "{\n  \"name\": \"CalcsLive Demo Workflow Template\",\n  \"description\": \"Demonstrates @calcslive/n8n-nodes-calcslive custom nod"
  },
  {
    "path": "workflows/Calendly/0039_Calendly_Notion_Automate_Triggered.json",
    "chars": 3467,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Calendly Trigger\",\n      \"type\": \"n8n-nodes-base.calendlyTrigger\",\n      \"position\":"
  },
  {
    "path": "workflows/Calendly/0125_Calendly_Notion_Automate_Triggered.json",
    "chars": 4506,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Notion\",\n      \"type\": \"n8n-nodes-base.notion\",\n      \"position\": [\n        850,\n   "
  },
  {
    "path": "workflows/Calendly/0277_Calendly_Mautic_Create_Triggered.json",
    "chars": 3524,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-2a0dfbc4\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.274"
  },
  {
    "path": "workflows/Calendly/0430_Calendly_Filter_Create_Triggered.json",
    "chars": 15961,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-f9c393a5\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.259"
  },
  {
    "path": "workflows/Calendly/0660_Calendly_Noop_Create_Triggered.json",
    "chars": 27918,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-6bb48f7c\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.284"
  },
  {
    "path": "workflows/Calendly/0661_Calendly_Noop_Create_Triggered.json",
    "chars": 27918,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-cc5741d2\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.276"
  },
  {
    "path": "workflows/Calendly/1009_Calendly_Automate_Triggered.json",
    "chars": 1993,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Calendly Trigger\",\n      \"type\": \"n8n-nodes-base.calendlyTrigger\",\n      \"position\":"
  },
  {
    "path": "workflows/Chargebee/0041_Chargebee_Update_Triggered.json",
    "chars": 1900,
    "preview": "{\n  \"id\": \"108\",\n  \"name\": \"Receive updates for events in Chargebee\",\n  \"nodes\": [\n    {\n      \"name\": \"Chargebee Trigge"
  },
  {
    "path": "workflows/Clickup/0047_Clickup_Update_Triggered.json",
    "chars": 1988,
    "preview": "{\n  \"id\": \"110\",\n  \"name\": \"Receive updates for events in ClickUp\",\n  \"nodes\": [\n    {\n      \"name\": \"ClickUp Trigger\",\n"
  },
  {
    "path": "workflows/Clickup/0282_Clickup_Notion_Update_Triggered.json",
    "chars": 5616,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-655c80c6\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.311"
  },
  {
    "path": "workflows/Clickup/0469_Clickup_Respondtowebhook_Create_Webhook.json",
    "chars": 9967,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-1a1a26d7\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.296"
  },
  {
    "path": "workflows/Clockify/0750_Clockify_Webhook_Sync_Webhook.json",
    "chars": 2292,
    "preview": "{\n  \"id\": \"2\",\n  \"name\": \"Syncro to Clockify\",\n  \"nodes\": [\n    {\n      \"name\": \"Webhook\",\n      \"type\": \"n8n-nodes-base"
  },
  {
    "path": "workflows/Clockify/1005_Clockify_Automate_Triggered.json",
    "chars": 2026,
    "preview": "{\n  \"nodes\": [\n    {\n      \"name\": \"Clockify Trigger\",\n      \"type\": \"n8n-nodes-base.clockifyTrigger\",\n      \"position\":"
  },
  {
    "path": "workflows/Clockify/1923_Clockify_Stickynote_Create_Triggered.json",
    "chars": 4175,
    "preview": "{\n  \"id\": \"mbgpq1PH1SFkHi6w\",\n  \"meta\": {\n    \"instanceId\": \"workflow-c979c4ab\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Code/0034_Code_Filter_Create_Scheduled.json",
    "chars": 22639,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-f83afe85\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.314"
  },
  {
    "path": "workflows/Code/0182_Code_GitHub_Create_Scheduled.json",
    "chars": 21860,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"421824c2-59a2-441b-aacc-7dadf2ec153b\",\n      \"name\": \"On clicking 'execute'\",\n      \"t"
  },
  {
    "path": "workflows/Code/0239_Code_Typeform_Create_Triggered.json",
    "chars": 8281,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-a51d3cba\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.327"
  },
  {
    "path": "workflows/Code/0273_Code_Webhook_Create_Webhook.json",
    "chars": 10185,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-4a6d3656\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.328"
  },
  {
    "path": "workflows/Code/0288_Code_Schedule_Create_Webhook.json",
    "chars": 21838,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-a292e29e\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.335"
  },
  {
    "path": "workflows/Code/0296_Code_Webhook_Create_Webhook.json",
    "chars": 13930,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-70ba7a9d\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.351"
  },
  {
    "path": "workflows/Code/0298_Code_Readpdf_Send_Triggered.json",
    "chars": 13389,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-c3bb2884\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.344"
  },
  {
    "path": "workflows/Code/0299_Code_Webhook_Create_Webhook.json",
    "chars": 90273,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-d9f69e36\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.375"
  },
  {
    "path": "workflows/Code/0307_Code_Postgres_Automate_Triggered.json",
    "chars": 9979,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"678e86bc-2755-4c79-97d6-fa4da1ed9ff9\",\n      \"name\": \"Postgres Trigger\",\n      \"type\":"
  },
  {
    "path": "workflows/Code/0308_Code_Schedule_Automate_Scheduled.json",
    "chars": 20017,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"5eeb368d-737a-4186-afef-3072d0e9a1c7\",\n      \"name\": \"Schedule Trigger\",\n      \"type\":"
  },
  {
    "path": "workflows/Code/0309_Code_Filter_Automate_Triggered.json",
    "chars": 10373,
    "preview": "{\n  \"nodes\": [\n    {\n      \"id\": \"764c42ae-3761-4375-9de4-69ecdaf82b10\",\n      \"name\": \"Sticky Note\",\n      \"type\": \"n8n"
  },
  {
    "path": "workflows/Code/0341_Code_Filter_Import_Webhook.json",
    "chars": 31543,
    "preview": "{\n  \"id\": \"pPtCy6qPfEv1qNRn\",\n  \"meta\": {\n    \"instanceId\": \"workflow-30fad60d\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Code/0362_Code_HTTP_Send_Webhook.json",
    "chars": 19761,
    "preview": "{\n  \"id\": \"1g8EAij2RwhNN70t\",\n  \"meta\": {\n    \"instanceId\": \"workflow-d3b682e5\",\n    \"versionId\": \"1.0.0\",\n    \"createdA"
  },
  {
    "path": "workflows/Code/0365_Code_Manual_Send_Webhook.json",
    "chars": 10759,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-6be05499\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.379"
  },
  {
    "path": "workflows/Code/0366_Code_Manual_Automation_Webhook.json",
    "chars": 10648,
    "preview": "{\n  \"meta\": {\n    \"instanceId\": \"workflow-70c91905\",\n    \"versionId\": \"1.0.0\",\n    \"createdAt\": \"2025-09-29T07:07:42.378"
  }
]

// ... and 1973 more files (download for full content)

About this extraction

This page contains the full source code of the Zie619/n8n-workflows GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 2173 files (38.2 MB), approximately 4.1M tokens, and a symbol index with 383 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!