{
  "nodes": [
    {
      "id": "f0913aa6-4e78-4808-b828-7e9953e71764",
      "name": "Get ticket",
      "type": "n8n-nodes-base.zendesk",
      "position": [
        380,
        480
      ],
      "parameters": {
        "id": "={{$node[\"On new Zendesk ticket\"].json[\"body\"][\"id\"]}}",
        "operation": "get"
      },
      "typeVersion": 1
    },
    {
      "id": "f8774217-bc05-4b02-8632-154654f79d5f",
      "name": "IF",
      "type": "n8n-nodes-base.if",
      "position": [
        780,
        480
      ],
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{$node[\"Determine\"].json[\"GitHub Issue Number\"]}}",
              "operation": "isNotEmpty"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "6ae7e40b-b75c-41e2-9ba7-bb299f12911a",
      "name": "Update ticket",
      "type": "n8n-nodes-base.zendesk",
      "notes": "Update the Zendesk ticket by adding the Jira issue key to the \"Jira Issue Key\" field.",
      "position": [
        1180,
        580
      ],
      "parameters": {
        "id": "={{$node[\"On new Zendesk ticket\"].json[\"body\"][\"id\"]}}",
        "operation": "update",
        "updateFields": {
          "customFieldsUi": {
            "customFieldsValues": [
              {
                "id": 6721726848029,
                "value": "={{$node[\"Create issue\"].json[\"number\"]}}"
              }
            ]
          }
        }
      },
      "notesInFlow": true,
      "typeVersion": 1
    },
    {
      "id": "7959986c-cfbf-4ba2-a968-95b62d2aa819",
      "name": "Determine",
      "type": "n8n-nodes-base.function",
      "notes": "if issue was created already in Jira",
      "position": [
        580,
        480
      ],
      "parameters": {
        "functionCode": "/* configure here =========================================================== */\n/*  Zendesk field ID which represents the \"GitHub Issue Number\" field.\n*/\nconst ISSUE_KEY_FIELD_ID = 6721726848029;\n\n/* ========================================================================== */\nnew_items = [];\n\nfor (item of $items(\"Get ticket\")) {\n    \n    // instantiate a new variable for status\n    var custom_fields = item.json[\"custom_fields\"];\n    var github_issue_number = \"\";\n    for (var i = 0; i < custom_fields.length; i++) {\n        if (custom_fields[i].id == ISSUE_KEY_FIELD_ID) {\n            github_issue_number = custom_fields[i].value;\n            break;\n        }\n    }\n\n    // push the new item to the new_items array\n    new_items.push({\n        \"GitHub Issue Number\": github_issue_number\n    });\n}\n\nreturn new_items;"
      },
      "notesInFlow": true,
      "typeVersion": 1
    },
    {
      "id": "a1ca21d3-958f-498c-a896-05d4ecbc286d",
      "name": "Create issue",
      "type": "n8n-nodes-base.github",
      "position": [
        980,
        580
      ],
      "parameters": {
        "owner": "John-n8n",
        "title": "={{$node[\"Get ticket\"].json[\"subject\"]}}",
        "labels": [],
        "assignees": [],
        "repository": "DemoRepo"
      },
      "typeVersion": 1
    },
    {
      "id": "1ad6f536-2cdb-4ecc-85b4-2e960fb84498",
      "name": "Create comment on existing issue",
      "type": "n8n-nodes-base.github",
      "position": [
        980,
        380
      ],
      "parameters": {
        "body": "={{$node[\"On new Zendesk ticket\"].json[\"body\"][\"comment\"]}}",
        "owner": "John-n8n",
        "operation": "createComment",
        "repository": "DemoRepo",
        "issueNumber": "={{$node[\"Determine\"].json[\"GitHub Issue Number\"]}}"
      },
      "typeVersion": 1
    },
    {
      "id": "73e8c380-63de-4e5a-8e57-a17956174869",
      "name": "On new Zendesk ticket",
      "type": "n8n-nodes-base.webhook",
      "position": [
        180,
        480
      ],
      "parameters": {
        "path": "b4253880-b5e2-4d61-bb2a-b0ea335bee14",
        "options": {},
        "httpMethod": "POST"
      },
      "typeVersion": 1
    },
    {
      "id": "55808ab3-f5b2-562f-b642-bab1d9e6e0a4",
      "name": "Publication · Overview and setup",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -800,
        0
      ],
      "parameters": {
        "content": "# get zendesk and update zendesk and github\n\n## Purpose and structure\nThis folder contains the **get zendesk and update zendesk and github** workflow. Its executable nodes use `function`, `github`, `if`, `webhook`, `zendesk`. The table and connection map below are derived from the JSON, not an inferred guarantee of behavior.\n\n## Setup\nImport inactive. Configure your own credentials and replace REPLACE_WITH_* values. Review external destinations and Code nodes before running.\n\n## Entry points\nOn new Zendesk ticket\n\n## Verification\nSanitized source candidate; not runtime-tested. This overview is generated from node metadata. Read the folder README for the connection map, credential types, and license.\n\n## Attribution\nhttps://github.com/Zie619/n8n-workflows/blob/94007c1445d9258a7da116646b79473e7c7c3282/workflows/Zendesk/0279_Zendesk_GitHub_Create_Webhook.json\nMIT; preserve source notices.",
        "width": 700,
        "height": 800,
        "color": 1
      }
    }
  ],
  "connections": {
    "IF": {
      "main": [
        [
          {
            "node": "Create comment on existing issue",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Create issue",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Determine": {
      "main": [
        [
          {
            "node": "IF",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get ticket": {
      "main": [
        [
          {
            "node": "Determine",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create issue": {
      "main": [
        [
          {
            "node": "Update ticket",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "On new Zendesk ticket": {
      "main": [
        [
          {
            "node": "Get ticket",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "active": false
}
