Workflow: If Workflow
Integrations: function, if, jira, webhook, zendesk

{"meta": {"instanceId": "workflow-46c8ed28", "versionId": "1.0.0", "createdAt": "2025-09-29T07:08:01.723336", "updatedAt": "2025-09-29T07:08:01.723354", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production"}, "nodes": [{"id": "b374f136-0050-40ea-b889-03c1e20a161e", "name": "If Node", "type": "n8n-nodes-base.if", "position": [1000, 300], "parameters": {"conditions": {"string": [{"value1": "={{$node[\"Determine\"].json[\"Jira issue key\"]}}", "operation": "isNotEmpty"}]}}, "typeVersion": 1, "notes": "This if node performs automated tasks as part of the workflow."}, {"id": "52e85300-9a2f-45e9-973e-0fda49a50bf1", "name": "Create issue", "type": "n8n-nodes-base.jira", "position": [1180, 400], "parameters": {"project": "10000", "summary": "={{$node[\"Get ticket\"].json[\"subject\"]}}", "issueType": "10003", "additionalFields": {"description": "=See Zendesk issue at: {{ $env.WEBHOOK_URL }}{{$node[\"Get ticket\"].json[\"id\"]}}"}}, "credentials": {"jiraSoftwareCloudApi": {"id": "{{ $credentials.jiraSoftwareCloudApi.id }}", "name": "[UPDATE ME]"}}, "typeVersion": 1, "notes": "This jira node performs automated tasks as part of the workflow."}, {"id": "85c93002-95d3-434d-b9e9-10ef714432b1", "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": [1360, 400], "parameters": {"id": "={{$node[\"On new Zendesk ticket\"].json[\"body\"][\"id\"]}}", "operation": "update", "updateFields": {"customFieldsUi": {"customFieldsValues": [{"id": 6689934837021, "value": "={{$node[\"Create issue\"].json[\"key\"]}}"}]}}}, "credentials": {"zendeskApi": {"id": "{{ $credentials.zendeskApi.id }}", "name": "[UPDATE ME]"}}, "notesInFlow": true, "typeVersion": 1}, {"id": "3aa0dff6-f4a5-47c1-9843-271b78bfbf36", "name": "Get ticket", "type": "n8n-nodes-base.zendesk", "position": [640, 300], "parameters": {"id": "={{$node[\"On new Zendesk ticket\"].json[\"body\"][\"id\"]}}", "operation": "get"}, "credentials": {"zendeskApi": {"id": "{{ $credentials.zendeskApi.id }}", "name": "[UPDATE ME]"}}, "typeVersion": 1, "notes": "This zendesk node performs automated tasks as part of the workflow."}, {"id": "efd1f838-226f-4869-83f8-086d31f8a9bc", "name": "Determine", "type": "n8n-nodes-base.function", "notes": "if issue was created already in Jira", "position": [820, 300], "parameters": {"functionCode": "/* configure here =========================================================== */\n/*  Zendesk field ID which represents the \"Jira Issue Key\" field.\n*/\nconst ISSUE_KEY_FIELD_ID = 6689934837021;\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 jira_issue_key = \"\";\n    for (var i = 0; i < custom_fields.length; i++) {\n        if (custom_fields[i].id == ISSUE_KEY_FIELD_ID) {\n            jira_issue_key = custom_fields[i].value;\n            break;\n        }\n    }\n\n    // push the new item to the new_items array\n    new_items.push({\n        \"Jira issue key\": jira_issue_key\n    });\n}\n\nreturn new_items;"}, "notesInFlow": true, "typeVersion": 1}, {"id": "41a1c04b-561b-41e3-be6e-fc953319abc1", "name": "Create comment to existing issue", "type": "n8n-nodes-base.jira", "position": [1180, 200], "parameters": {"comment": "={{$node[\"On new Zendesk ticket\"].json[\"body\"][\"comment\"]}}", "options": {}, "issueKey": "YOUR_CREDENTIAL_HERE", "resource": "issueComment"}, "credentials": {"jiraSoftwareCloudApi": {"id": "{{ $credentials.jiraSoftwareCloudApi.id }}", "name": "[UPDATE ME]"}}, "typeVersion": 1, "notes": "This jira node performs automated tasks as part of the workflow."}, {"id": "33e0121e-703d-4c60-b257-a89a99db771a", "name": "On new Zendesk ticket", "type": "n8n-nodes-base.webhook", "position": [460, 300], "webhookId": "d596c0c6-7377-4a17-9ed5-6ee953f072b9", "parameters": {"path": "d596c0c6-7377-4a17-9ed5-6ee953f072b9", "options": {}, "httpMethod": "POST"}, "typeVersion": 1, "notes": "This webhook node performs automated tasks as part of the workflow."}], "connections": {"33e0121e-703d-4c60-b257-a89a99db771a": {"main": [[{"node": "error-handler-33e0121e-703d-4c60-b257-a89a99db771a", "type": "main", "index": 0}], [{"node": "error-handler-33e0121e-703d-4c60-b257-a89a99db771a-f5a307b9", "type": "main", "index": 0}], [{"node": "error-handler-33e0121e-703d-4c60-b257-a89a99db771a-0050001d", "type": "main", "index": 0}], [{"node": "error-handler-33e0121e-703d-4c60-b257-a89a99db771a-5490e08e", "type": "main", "index": 0}], [{"node": "error-handler-33e0121e-703d-4c60-b257-a89a99db771a-afdce832", "type": "main", "index": 0}], [{"node": "error-handler-33e0121e-703d-4c60-b257-a89a99db771a-19aab5cb", "type": "main", "index": 0}], [{"node": "error-handler-33e0121e-703d-4c60-b257-a89a99db771a-785f53d4", "type": "main", "index": 0}], [{"node": "error-handler-33e0121e-703d-4c60-b257-a89a99db771a-2ff74ea5", "type": "main", "index": 0}], [{"node": "error-handler-33e0121e-703d-4c60-b257-a89a99db771a-b645b1dc", "type": "main", "index": 0}]]}}, "name": "If Workflow", "description": "Automated workflow: If Workflow. This workflow processes data and performs automated tasks.", "settings": {"executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000}, "tags": ["automation", "n8n", "production-ready", "excellent", "optimized"], "notes": "Excellent quality workflow: If Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}