{
    "name": "Streamline YouTube uploads with AI-generated descriptions and tags from Google Drive",
    "flow": [
        {
            "id": 1,
            "module": "google-drive:watchFilesInAFolder",
            "version": 4,
            "parameters": {
                "limit": 10,
                "select": "create",
                "folderId": "/1R_V8MF2HGYV65XBtkpXEcPOOE0ahb40-",
                "mimeType": "all",
                "destination": "drive"
            },
            "mapper": {},
            "metadata": {
                "designer": {
                    "x": 0,
                    "y": 0
                },
                "restore": {
                    "parameters": {
                        "select": {
                            "label": "By Created Time"
                        },
                        "folderId": {
                            "path": [
                                "edenai invoice"
                            ]
                        },
                        "mimeType": {
                            "label": "All"
                        },
                        "__IMTCONN__": {
                            "data": {
                                "scoped": "true",
                                "connection": "google-restricted"
                            },
                            "label": "My Google Restricted connection (l.govender@make.com)"
                        },
                        "destination": {
                            "label": "My Drive"
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "__IMTCONN__",
                        "type": "account:google-restricted",
                        "label": "Connection"
                    },
                    {
                        "name": "select",
                        "type": "select",
                        "label": "Watch Files",
                        "required": true,
                        "validate": {
                            "enum": [
                                "create",
                                "modify"
                            ]
                        }
                    },
                    {
                        "name": "destination",
                        "type": "select",
                        "label": "Choose a Drive",
                        "required": true,
                        "validate": {
                            "enum": [
                                "drive",
                                "share",
                                "team"
                            ]
                        }
                    },
                    {
                        "name": "mimeType",
                        "type": "select",
                        "label": "File Types to Watch",
                        "required": true,
                        "validate": {
                            "enum": [
                                "all",
                                "document",
                                "spreadsheet",
                                "slide",
                                "drawing"
                            ]
                        }
                    },
                    {
                        "name": "limit",
                        "type": "uinteger",
                        "label": "Limit",
                        "required": true
                    },
                    {
                        "name": "folderId",
                        "type": "folder",
                        "label": "Select the Folder to be Watched",
                        "required": true
                    }
                ]
            }
        },
        {
            "id": 2,
            "module": "google-drive:getAFile",
            "version": 4,
            "parameters": {},
            "mapper": {
                "file": "{{1.id}}",
                "select": "map",
                "formatDrawings": "image/jpeg",
                "formatDocuments": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
                "formatSpreadsheets": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
                "formatPresentations": "application/vnd.openxmlformats-officedocument.presentationml.presentation"
            },
            "metadata": {
                "designer": {
                    "x": 300,
                    "y": 0
                },
                "restore": {
                    "expect": {
                        "select": {
                            "label": "Enter manually"
                        },
                        "formatDrawings": {
                            "label": "JPEG"
                        },
                        "formatDocuments": {
                            "label": "MS Word Document"
                        },
                        "formatSpreadsheets": {
                            "label": "MS Excel"
                        },
                        "formatPresentations": {
                            "label": "MS PowerPoint"
                        }
                    },
                    "parameters": {
                        "__IMTCONN__": {
                            "data": {
                                "scoped": "true",
                                "connection": "google-restricted"
                            },
                            "label": "My Google Restricted connection (l.govender@make.com)"
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "__IMTCONN__",
                        "type": "account:google-restricted",
                        "label": "Connection"
                    }
                ],
                "expect": [
                    {
                        "name": "select",
                        "type": "select",
                        "label": "Enter a File ID",
                        "required": true,
                        "validate": {
                            "enum": [
                                "map",
                                "value"
                            ]
                        }
                    },
                    {
                        "name": "formatDocuments",
                        "type": "select",
                        "label": "Convert Google Documents Files to Format",
                        "required": true,
                        "validate": {
                            "enum": [
                                "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
                                "application/pdf",
                                "application/vnd.oasis.opendocument.text",
                                "text/html",
                                "text/plain",
                                "application/rtf"
                            ]
                        }
                    },
                    {
                        "name": "formatSpreadsheets",
                        "type": "select",
                        "label": "Convert Google Spreadsheets Files to Format",
                        "required": true,
                        "validate": {
                            "enum": [
                                "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
                                "application/x-vnd.oasis.opendocument.spreadsheet",
                                "application/pdf"
                            ]
                        }
                    },
                    {
                        "name": "formatPresentations",
                        "type": "select",
                        "label": "Convert Google Slides Files to Format",
                        "required": true,
                        "validate": {
                            "enum": [
                                "application/vnd.openxmlformats-officedocument.presentationml.presentation",
                                "application/pdf"
                            ]
                        }
                    },
                    {
                        "name": "formatDrawings",
                        "type": "select",
                        "label": "Convert Google Drawings Files to Format",
                        "required": true,
                        "validate": {
                            "enum": [
                                "image/jpeg",
                                "image/png",
                                "image/svg+xml",
                                "application/pdf"
                            ]
                        }
                    },
                    {
                        "name": "file",
                        "type": "text",
                        "label": "File ID",
                        "required": true
                    }
                ]
            }
        },
        {
            "id": 3,
            "module": "openai-gpt-3:CreateCompletion",
            "version": 1,
            "parameters": {},
            "mapper": {
                "model": "gpt-4-0125-preview",
                "top_p": "1",
                "select": "chat",
                "messages": [
                    {
                        "role": "user",
                        "content": "You are a video content specialist.nnPlease provide a single paragraph description for a YouTube video using the following title:n''''{{2.name}}'''nnThen, provide 5 tags from the description.nOutput this as a Json. Do not include any text before the Json structure like ```json."
                    }
                ],
                "max_tokens": "1000",
                "temperature": "1",
                "n_completions": "1",
                "response_format": "text"
            },
            "metadata": {
                "designer": {
                    "x": 600,
                    "y": 0
                },
                "restore": {
                    "expect": {
                        "stop": {
                            "mode": "chose"
                        },
                        "model": {
                            "mode": "chose",
                            "label": "gpt-4-0125-preview (system)"
                        },
                        "select": {
                            "label": "Create a Chat Completion (GPT Models)"
                        },
                        "messages": {
                            "mode": "chose",
                            "items": [
                                {
                                    "role": {
                                        "mode": "chose",
                                        "label": "User"
                                    }
                                }
                            ]
                        },
                        "logit_bias": {
                            "mode": "chose"
                        },
                        "response_format": {
                            "mode": "chose",
                            "label": "Text"
                        },
                        "additionalParameters": {
                            "mode": "chose"
                        }
                    },
                    "parameters": {
                        "__IMTCONN__": {
                            "data": {
                                "scoped": "true",
                                "connection": "openai-gpt-3"
                            },
                            "label": "Make Ent GPT4"
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "__IMTCONN__",
                        "type": "account:openai-gpt-3",
                        "label": "Connection"
                    }
                ],
                "expect": [
                    {
                        "name": "select",
                        "type": "select",
                        "label": "Select Method",
                        "required": true,
                        "validate": {
                            "enum": [
                                "chat",
                                "prompt"
                            ]
                        }
                    },
                    {
                        "name": "max_tokens",
                        "type": "number",
                        "label": "Max Tokens",
                        "required": true
                    },
                    {
                        "name": "temperature",
                        "type": "number",
                        "label": "Temperature",
                        "validate": {
                            "max": 2,
                            "min": 0
                        }
                    },
                    {
                        "name": "top_p",
                        "type": "number",
                        "label": "Top P",
                        "validate": {
                            "max": 1,
                            "min": 0
                        }
                    },
                    {
                        "name": "n_completions",
                        "type": "number",
                        "label": "Number"
                    },
                    {
                        "name": "frequency_penalty",
                        "type": "number",
                        "label": "Frequency Penalty",
                        "validate": {
                            "max": 2,
                            "min": -2
                        }
                    },
                    {
                        "name": "presence_penalty",
                        "type": "number",
                        "label": "Presence Penalty",
                        "validate": {
                            "max": 2,
                            "min": -2
                        }
                    },
                    {
                        "name": "logit_bias",
                        "spec": {
                            "name": "value",
                            "spec": [
                                {
                                    "name": "token",
                                    "type": "text",
                                    "label": "Token ID",
                                    "required": true
                                },
                                {
                                    "name": "probability",
                                    "type": "number",
                                    "label": "Probability",
                                    "required": true,
                                    "validate": {
                                        "max": 100,
                                        "min": -100
                                    }
                                }
                            ],
                            "type": "collection",
                            "label": "Token Probability"
                        },
                        "type": "array",
                        "label": "Token Probability"
                    },
                    {
                        "name": "response_format",
                        "type": "select",
                        "label": "Response Format",
                        "validate": {
                            "enum": [
                                "text",
                                "json_object"
                            ]
                        }
                    },
                    {
                        "name": "seed",
                        "type": "integer",
                        "label": "Seed"
                    },
                    {
                        "name": "stop",
                        "spec": {
                            "name": "value",
                            "type": "text",
                            "label": "Stop Sequence"
                        },
                        "type": "array",
                        "label": "Stop Sequences",
                        "validate": {
                            "maxItems": 4
                        }
                    },
                    {
                        "name": "additionalParameters",
                        "spec": {
                            "name": "value",
                            "spec": [
                                {
                                    "name": "key",
                                    "type": "text",
                                    "label": "Parameter Name",
                                    "required": true
                                },
                                {
                                    "name": "type",
                                    "type": "select",
                                    "label": "Input Type",
                                    "options": [
                                        {
                                            "label": "Text",
                                            "value": "text",
                                            "nested": [
                                                {
                                                    "name": "value",
                                                    "type": "text",
                                                    "label": "Parameter Value"
                                                }
                                            ],
                                            "default": true
                                        },
                                        {
                                            "label": "Number",
                                            "value": "number",
                                            "nested": [
                                                {
                                                    "name": "value",
                                                    "type": "number",
                                                    "label": "Parameter Value"
                                                }
                                            ]
                                        },
                                        {
                                            "label": "Boolean",
                                            "value": "boolean",
                                            "nested": [
                                                {
                                                    "name": "value",
                                                    "type": "boolean",
                                                    "label": "Parameter Value"
                                                }
                                            ]
                                        },
                                        {
                                            "label": "Date",
                                            "value": "date",
                                            "nested": [
                                                {
                                                    "name": "value",
                                                    "type": "date",
                                                    "label": "Parameter Value"
                                                }
                                            ]
                                        },
                                        {
                                            "label": "Any",
                                            "value": "any",
                                            "nested": [
                                                {
                                                    "name": "value",
                                                    "type": "any",
                                                    "label": "Parameter Value"
                                                }
                                            ]
                                        }
                                    ]
                                }
                            ],
                            "type": "collection",
                            "label": "Input Parameter"
                        },
                        "type": "array",
                        "label": "Other Input Parameters"
                    },
                    {
                        "name": "model",
                        "type": "select",
                        "label": "Model",
                        "required": true
                    },
                    {
                        "name": "messages",
                        "spec": {
                            "name": "value",
                            "spec": [
                                {
                                    "name": "role",
                                    "type": "select",
                                    "label": "Role",
                                    "options": [
                                        {
                                            "label": "System",
                                            "value": "system"
                                        },
                                        {
                                            "label": "User",
                                            "value": "user"
                                        },
                                        {
                                            "label": "Assistant",
                                            "value": "assistant"
                                        }
                                    ],
                                    "required": true
                                },
                                {
                                    "name": "content",
                                    "type": "text",
                                    "label": "Message Content"
                                }
                            ],
                            "type": "collection",
                            "label": "Message"
                        },
                        "type": "array",
                        "label": "Messages",
                        "required": true
                    }
                ]
            }
        },
        {
            "id": 4,
            "module": "json:ParseJSON",
            "version": 1,
            "parameters": {
                "type": ""
            },
            "mapper": {
                "json": "{{3.choices[].message.content}}"
            },
            "metadata": {
                "designer": {
                    "x": 900,
                    "y": 0
                },
                "restore": {
                    "parameters": {
                        "type": {
                            "label": "Choose a data structure"
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "type",
                        "type": "udt",
                        "label": "Data structure"
                    }
                ],
                "expect": [
                    {
                        "name": "json",
                        "type": "text",
                        "label": "JSON string",
                        "required": true
                    }
                ]
            }
        },
        {
            "id": 5,
            "module": "youtube:uploadVideo",
            "version": 4,
            "parameters": {},
            "mapper": {
                "data": "{{2.data}}",
                "tags": [
                    "{{4.tags[1]}}",
                    "{{4.tags[2]}}",
                    "{{4.tags[3]}}",
                    "{{4.tags[4]}}",
                    "{{4.tags[5]}}"
                ],
                "title": "{{2.name}}",
                "fileName": "{{2.name}}",
                "categoryId": "10",
                "description": "{{4.description}}",
                "privacyStatus": "private",
                "selfDeclaredMadeForKids": false
            },
            "metadata": {
                "designer": {
                    "x": 1200,
                    "y": 0
                },
                "restore": {
                    "expect": {
                        "tags": {
                            "mode": "chose",
                            "items": [
                                null,
                                null,
                                null,
                                null,
                                null
                            ]
                        },
                        "license": {
                            "mode": "chose",
                            "label": "Empty"
                        },
                        "categoryId": {
                            "mode": "chose",
                            "label": "Music"
                        },
                        "embeddable": {
                            "mode": "chose"
                        },
                        "privacyStatus": {
                            "mode": "chose",
                            "label": "Private"
                        },
                        "notifySubscribers": {
                            "mode": "chose"
                        },
                        "selfDeclaredMadeForKids": {
                            "mode": "chose"
                        }
                    },
                    "parameters": {
                        "__IMTCONN__": {
                            "data": {
                                "scoped": "true",
                                "connection": "youtube"
                            },
                            "label": "new (Wayne Govender )"
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "__IMTCONN__",
                        "type": "account:youtube",
                        "label": "Connection"
                    }
                ],
                "expect": [
                    {
                        "type": "hidden"
                    },
                    {
                        "name": "title",
                        "type": "text",
                        "label": "Title",
                        "required": true,
                        "validate": {
                            "max": 100
                        }
                    },
                    {
                        "name": "fileName",
                        "type": "filename",
                        "label": "File Name",
                        "required": true
                    },
                    {
                        "name": "data",
                        "type": "buffer",
                        "label": "Data",
                        "required": true
                    },
                    {
                        "name": "categoryId",
                        "type": "select",
                        "label": "Video Category",
                        "required": true
                    },
                    {
                        "name": "privacyStatus",
                        "type": "select",
                        "label": "Privacy Status",
                        "required": true,
                        "validate": {
                            "enum": [
                                "private",
                                "unlisted",
                                "public"
                            ]
                        }
                    },
                    {
                        "name": "description",
                        "type": "text",
                        "label": "Description",
                        "validate": {
                            "max": 5000
                        }
                    },
                    {
                        "name": "selfDeclaredMadeForKids",
                        "type": "boolean",
                        "label": "The video is made for kids",
                        "required": true
                    },
                    {
                        "name": "tags",
                        "spec": {
                            "name": "value",
                            "type": "text",
                            "label": "Tag",
                            "required": true,
                            "validate": {
                                "max": 500
                            }
                        },
                        "type": "array",
                        "label": "Tags"
                    },
                    {
                        "name": "recordingDate",
                        "type": "date",
                        "label": "Recording Date"
                    },
                    {
                        "name": "license",
                        "type": "select",
                        "label": "License",
                        "validate": {
                            "enum": [
                                "youtube",
                                "creativeCommon"
                            ]
                        }
                    },
                    {
                        "name": "embeddable",
                        "type": "boolean",
                        "label": "Allow Embedding"
                    },
                    {
                        "name": "notifySubscribers",
                        "type": "boolean",
                        "label": "Notify Subscribers"
                    },
                    {
                        "name": "publishAt",
                        "type": "date",
                        "label": "Publish at"
                    }
                ],
                "advanced": true
            }
        }
    ],
    "metadata": {
        "instant": false,
        "version": 1,
        "scenario": {
            "roundtrips": 1,
            "maxErrors": 3,
            "autoCommit": true,
            "autoCommitTriggerLast": true,
            "sequential": false,
            "slots": null,
            "confidential": false,
            "dataloss": false,
            "dlq": false,
            "freshVariables": false
        },
        "designer": {
            "orphans": []
        },
        "zone": "eu2.make.com",
        "notes": []
    }
}