Workflow: HTTP GitHub Create

Workflow Details

Download Workflow
{
    "nodes": [
        {
            "name": "GitHub Edit",
            "type": "n8n-nodes-base.github",
            "position": [
                1190,
                610
            ],
            "parameters": {
                "owner": "YOUR_USERNAME",
                "filePath": "={{$json[\"data\"][\"name\"]}}.json",
                "resource": "file",
                "operation": "edit",
                "repository": "REPO_NAME",
                "fileContent": "={{JSON.stringify($json[\"data\"])}}",
                "commitMessage": "=[N8N Backup] {{$json.data[\"name\"]}} ({{new Date(Date.now()).toLocaleDateString()}})"
            },
            "credentials": {
                "githubApi": "GitHub@harshil1712"
            },
            "typeVersion": 1
        },
        {
            "name": "Get Files",
            "type": "n8n-nodes-base.github",
            "position": [
                200,
                500
            ],
            "parameters": {
                "owner": "YOUR_USERNAME",
                "filePath": "\/",
                "resource": "file",
                "operation": "get",
                "repository": "REPO",
                "asBinaryProperty": false
            },
            "credentials": {
                "githubApi": "GitHub@harshil1712"
            },
            "executeOnce": true,
            "typeVersion": 1,
            "alwaysOutputData": false
        },
        {
            "name": "Transform",
            "type": "n8n-nodes-base.function",
            "position": [
                400,
                500
            ],
            "parameters": {
                "functionCode": "return items[0].json.map(item => {\n  return {\n    json: item\n  }\n});\n"
            },
            "typeVersion": 1
        },
        {
            "name": "Create file",
            "type": "n8n-nodes-base.github",
            "position": [
                1240,
                280
            ],
            "parameters": {
                "owner": "YOUR_USERNAME",
                "filePath": "={{$json[\"data\"][\"name\"]}}.json",
                "resource": "file",
                "repository": "REPO",
                "fileContent": "={{JSON.stringify($node['Merge'].json[\"data\"])}}",
                "commitMessage": "=[N8N Backup] {{$json.data[\"name\"]}}.json ({{new Date(Date.now()).toLocaleDateString()}})"
            },
            "credentials": {
                "githubApi": "GitHub@harshil1712"
            },
            "typeVersion": 1
        },
        {
            "name": "Merge",
            "type": "n8n-nodes-base.merge",
            "position": [
                930,
                280
            ],
            "parameters": {
                "mode": "removeKeyMatches",
                "propertyName1": "data.name",
                "propertyName2": "data.name"
            },
            "typeVersion": 1
        },
        {
            "name": "Get workflows",
            "type": "n8n-nodes-base.httpRequest",
            "position": [
                200,
                300
            ],
            "parameters": {
                "url": "http:\/\/localhost:5678\/rest\/workflows",
                "options": [],
                "authentication": "basicAuth"
            },
            "credentials": {
                "httpBasicAuth": "n8n instance auth"
            },
            "typeVersion": 1
        },
        {
            "name": "Get workflow data",
            "type": "n8n-nodes-base.httpRequest",
            "position": [
                600,
                300
            ],
            "parameters": {
                "url": "=http:\/\/localhost:5678\/rest\/workflows\/{{$json[\"id\"]}}",
                "options": [],
                "authentication": "basicAuth"
            },
            "credentials": {
                "httpBasicAuth": "n8n instance auth"
            },
            "typeVersion": 1
        },
        {
            "name": "Download Raw Content",
            "type": "n8n-nodes-base.httpRequest",
            "position": [
                600,
                500
            ],
            "parameters": {
                "url": "={{$json[\"download_url\"]}}",
                "options": [],
                "authentication": "headerAuth",
                "responseFormat": "string"
            },
            "credentials": {
                "httpHeaderAuth": "GitHub Token"
            },
            "typeVersion": 1
        },
        {
            "name": "transform",
            "type": "n8n-nodes-base.function",
            "position": [
                390,
                300
            ],
            "parameters": {
                "functionCode": "const newItems = [];\nfor (item of items[0].json.data) {\n  newItems.push({json: item});\n}\nreturn newItems;"
            },
            "typeVersion": 1
        },
        {
            "name": "Daily at 23:59",
            "type": "n8n-nodes-base.cron",
            "position": [
                -20,
                300
            ],
            "parameters": {
                "triggerTimes": {
                    "item": [
                        {
                            "hour": 23,
                            "minute": 59
                        }
                    ]
                }
            },
            "typeVersion": 1
        },
        {
            "name": "Merge1",
            "type": "n8n-nodes-base.merge",
            "position": [
                970,
                610
            ],
            "parameters": {
                "mode": "removeKeyMatches",
                "propertyName1": "data.updatedAt",
                "propertyName2": "data.updatedAt"
            },
            "typeVersion": 1
        }
    ],
    "connections": {
        "Merge": {
            "main": [
                [
                    {
                        "node": "Create file",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Merge1": {
            "main": [
                [
                    {
                        "node": "GitHub Edit",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Get Files": {
            "main": [
                [
                    {
                        "node": "Transform",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Transform": {
            "main": [
                [
                    {
                        "node": "Download Raw Content",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "transform": {
            "main": [
                [
                    {
                        "node": "Get workflow data",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Get workflows": {
            "main": [
                [
                    {
                        "node": "transform",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Daily at 23:59": {
            "main": [
                [
                    {
                        "node": "Get workflows",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Get workflow data": {
            "main": [
                [
                    {
                        "node": "Merge",
                        "type": "main",
                        "index": 0
                    },
                    {
                        "node": "Merge1",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Download Raw Content": {
            "main": [
                [
                    {
                        "node": "Merge",
                        "type": "main",
                        "index": 1
                    },
                    {
                        "node": "Merge1",
                        "type": "main",
                        "index": 1
                    }
                ]
            ]
        }
    }
}
Back to Workflows

Related Workflows

Save new Files received on Telegram to Google Drive
View
Code Itemlists Create Scheduled
View
Datetime Todoist Create Webhook
View
Manual Start Automation Webhook
View
Play with Spotify from Telegram
View
Summarize Glassdoor Company Info with Google Gemini and Bright Data Web Scraper
View
Manual Automate Triggered
View
Translate Telegram audio messages with AI (55 supported languages) v1
View
Google Sheet to Mailchimp
View
HTTP Dropbox Automation Webhook
View