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

Manual Schedule Automation Scheduled
View
Ultimate Personal Assistant
View
Splitout Schedule Create Webhook
View
Search & Summarize Web Data with Perplexity, Gemini AI & Bright Data to Webhooks
View
Code Postgres Automate Triggered
View
HTTP Stickynote Create Webhook
View
YouTube Videos with AI Summaries on Discord
View
Manual Noop Monitor Triggered
View
Telegram Code Automation Webhook
View
Insert data into a new row for a table in Coda
View