n8n Workflow

Automate Assigning Github Issues

This n8n workflow automates tasks using GitHub. Automate Assigning Github Issues - ready to import and run in your n8n instance.

n8n workflow.json

About This Script

This n8n workflow automates tasks using GitHub. Automate Assigning Github Issues - ready to import and run in your n8n instance.
Features:
  • Conditional logic and branching
  • Integrates with GitHub
Source Code
{
    "nodes": [
        {
            "name": "Switch",
            "type": "n8n-nodes-base.switch",
            "position": [
                720,
                360
            ],
            "parameters": {
                "rules": {
                    "rules": [
                        {
                            "value2": "opened"
                        },
                        {
                            "output": 1,
                            "value2": "created"
                        }
                    ]
                },
                "value1": "={{$json[\"body\"][\"action\"]}}",
                "dataType": "string"
            },
            "typeVersion": 1,
            "id": "2983a55a-cbc2-4b23-8a4c-5dda9ff56973"
        },
        {
            "name": "IF no assignee?",
            "type": "n8n-nodes-base.if",
            "position": [
                1120,
                220
            ],
            "parameters": {
                "conditions": {
                    "number": [
                        {
                            "value1": "={{$json[\"body\"][\"issue\"][\"assignees\"].length}}",
                            "operation": "equal"
                        }
                    ],
                    "string": [
                        {
                            "value1": "={{$json[\"body\"][\"issue\"][\"body\"]}}",
                            "value2": "/[a,A]ssign[\\w*\\s*]*me/gm",
                            "operation": "regex"
                        }
                    ]
                }
            },
            "typeVersion": 1,
            "id": "5a1f9947-d6a3-4752-83f2-e279a5fbc977"
        },
        {
            "name": "NoOp",
            "type": "n8n-nodes-base.noOp",
            "position": [
                1320,
                320
            ],
            "parameters": [],
            "typeVersion": 1,
            "id": "fb161e4f-05d9-4720-97f5-3b6b7f8df87a"
        },
        {
            "name": "IF wants to work?",
            "type": "n8n-nodes-base.if",
            "position": [
                920,
                560
            ],
            "parameters": {
                "conditions": {
                    "number": [],
                    "string": [
                        {
                            "value1": "={{$json[\"body\"][\"comment\"][\"body\"]}}",
                            "value2": "/[a,A]ssign[\\w*\\s*]*me/gm",
                            "operation": "regex"
                        }
                    ]
                }
            },
            "typeVersion": 1,
            "id": "cdfbad76-0de9-4b23-82fe-e566534adffa"
        },
        {
            "name": "IF not assigned?",
            "type": "n8n-nodes-base.if",
            "position": [
                1120,
                520
            ],
            "parameters": {
                "conditions": {
                    "number": [
                        {
                            "value1": "={{$json[\"body\"][\"issue\"][\"assignees\"].length}}",
                            "operation": "equal"
                        }
                    ],
                    "string": []
                }
            },
            "typeVersion": 1,
            "id": "09231b00-3133-4bf1-a1f1-9435117b83bc"
        },
        {
            "name": "Assign Issue Creator",
            "type": "n8n-nodes-base.github",
            "position": [
                1320,
                120
            ],
            "parameters": {
                "owner": "={{$node[\"Switch\"].json[\"body\"][\"repository\"][\"owner\"][\"login\"]}}",
                "operation": "edit",
                "editFields": {
                    "labels": [
                        {
                            "label": "assigned"
                        }
                    ],
                    "assignees": [
                        {
                            "assignee": "={{$json.body.issue[\"user\"][\"login\"]}}"
                        }
                    ]
                },
                "repository": "={{$node[\"Switch\"].json[\"body\"][\"repository\"][\"name\"]}}",
                "issueNumber": "={{ $json[\"body\"][\"issue\"][\"number\"] }}",
                "authentication": "oAuth2"
            },
            "credentials": {
                "githubOAuth2Api": {
                    "id": null,
                    "name": "GitHub@Harshil"
                }
            },
            "typeVersion": 1,
            "id": "b27db245-4b81-4250-9e37-22229c63dc15"
        },
        {
            "name": "Add Comment",
            "type": "n8n-nodes-base.github",
            "position": [
                1420,
                660
            ],
            "parameters": {
                "body": "=Hey @{{$json[\"body\"][\"comment\"][\"user\"][\"login\"]}},\n\nThis issue is already assigned to {{$json[\"body\"][\"issue\"][\"assignee\"][\"login\"]}} \ud83d\ude42",
                "owner": "={{$json[\"body\"][\"repository\"][\"owner\"][\"login\"]}}",
                "operation": "createComment",
                "repository": "={{$json[\"body\"][\"repository\"][\"name\"]}}",
                "issueNumber": "={{$json[\"body\"][\"issue\"][\"number\"]}}",
                "authentication": "oAuth2"
            },
            "credentials": {
                "githubOAuth2Api": {
                    "id": null,
                    "name": "GitHub@Harshil"
                }
            },
            "typeVersion": 1,
            "id": "8f699473-a9b4-44f9-af6e-1dc714d43599"
        },
        {
            "name": "NoOp1",
            "type": "n8n-nodes-base.noOp",
            "position": [
                1120,
                720
            ],
            "parameters": [],
            "typeVersion": 1,
            "id": "57228627-fde4-4564-a038-c7e5009f9e0f"
        },
        {
            "name": "Assign Commenter",
            "type": "n8n-nodes-base.github",
            "position": [
                1420,
                460
            ],
            "parameters": {
                "owner": "={{$json[\"body\"][\"repository\"][\"owner\"][\"login\"]}}",
                "operation": "edit",
                "editFields": {
                    "labels": [
                        {
                            "label": "assigned"
                        }
                    ],
                    "assignees": [
                        {
                            "assignee": "={{$json[\"body\"][\"comment\"][\"user\"][\"login\"]}}"
                        }
                    ]
                },
                "repository": "={{$json[\"body\"][\"repository\"][\"name\"]}}",
                "issueNumber": "={{$json[\"body\"][\"issue\"][\"number\"]}}",
                "authentication": "oAuth2"
            },
            "credentials": {
                "githubOAuth2Api": {
                    "id": null,
                    "name": "GitHub@Harshil"
                }
            },
            "typeVersion": 1,
            "id": "76fd5a75-e1fc-4298-9a35-31a9b538e39c"
        },
        {
            "name": "Github Trigger1",
            "type": "n8n-nodes-base.githubTrigger",
            "position": [
                520,
                360
            ],
            "webhookId": "52c5fe44-23ef-4903-b6ae-731edd36127e",
            "parameters": {
                "owner": "harshil1712",
                "events": [
                    "issue_comment",
                    "issues"
                ],
                "repository": "build-discord-bot",
                "authentication": "oAuth2"
            },
            "credentials": {
                "githubOAuth2Api": {
                    "id": null,
                    "name": "GitHub Personal Credentials"
                }
            },
            "typeVersion": 1,
            "id": "396c58c2-25ea-40b1-8b1d-334d745de53b"
        }
    ],
    "connections": {
        "Switch": {
            "main": [
                [
                    {
                        "node": "IF no assignee?",
                        "type": "main",
                        "index": 0
                    }
                ],
                [
                    {
                        "node": "IF wants to work?",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Github Trigger1": {
            "main": [
                [
                    {
                        "node": "Switch",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "IF no assignee?": {
            "main": [
                [
                    {
                        "node": "Assign Issue Creator",
                        "type": "main",
                        "index": 0
                    }
                ],
                [
                    {
                        "node": "NoOp",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "IF not assigned?": {
            "main": [
                [
                    {
                        "node": "Assign Commenter",
                        "type": "main",
                        "index": 0
                    }
                ],
                [
                    {
                        "node": "Add Comment",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "IF wants to work?": {
            "main": [
                [
                    {
                        "node": "IF not assigned?",
                        "type": "main",
                        "index": 0
                    }
                ],
                [
                    {
                        "node": "NoOp1",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        }
    },
    "n8n_version": "1.5.0"
}
Requirements
n8n instance, Github API credentials
Tags
#n8n #automation #workflow
Quick Actions
More in n8n Workflows