Workflow: Update all Zammad Roles to default values
Integrations: convertToFile, httpRequest, if, manualTrigger, set, zammad

{"id": "cDmsWx8ASzIxE3zw", "meta": {"instanceId": "workflow-48d79be2", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:50.156959", "updatedAt": "2025-09-29T07:07:50.156975", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production"}, "name": "Update all Zammad Roles to default values", "tags": ["automation", "n8n", "production-ready", "excellent", "optimized"], "nodes": [{"id": "32904945-fd7b-413f-898c-62b04406dfb0", "name": "When clicking \u2018Test workflow\u2019", "type": "n8n-nodes-base.manualTrigger", "position": [-920, 160], "parameters": {}, "typeVersion": 1, "notes": "This manualTrigger node performs automated tasks as part of the workflow."}, {"id": "cbb0abd2-e153-477a-9346-00eaa1628c78", "name": "Zammad Univeral User Object", "type": "n8n-nodes-base.set", "position": [100, 220], "parameters": {"values": {"number": [{"name": "user_id", "value": "={{ $json.id }}"}, {"name": "organization_id", "value": "={{ $json.organization_id }}"}], "string": [{"name": "email", "value": "={{ $json.email }}"}, {"name": "firstname", "value": "={{ $json.firstname }}"}, {"name": "lastname", "value": "={{ $json.lastname }}"}, {"name": "role_ids", "value": "={{ $json.role_ids.join() }}\n"}, {"name": "groups", "value": "={{ $json.group_ids }}"}, {"name": "active", "value": "={{ $json.active }}"}]}, "options": {}, "keepOnlySet": true}, "typeVersion": 1, "notes": "This set node performs automated tasks as part of the workflow."}, {"id": "bbf82b69-07b5-4dff-afec-ee65eeedd037", "name": "Get all Users", "type": "n8n-nodes-base.zammad", "position": [-220, 220], "parameters": {"filters": {}, "operation": "getAll", "returnAll": true}, "credentials": {"zammadTokenAuthApi": {"id": "fj5GuzcJuNLQeMxz", "name": "Zammad Token Auth account"}}, "typeVersion": 1, "notes": "This zammad node performs automated tasks as part of the workflow."}, {"id": "0c122c6b-22a7-41f5-8ea1-c9a32cd12ed6", "name": "If Node", "type": "n8n-nodes-base.if", "position": [400, 220], "parameters": {"options": {}, "conditions": {"options": {"version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict"}, "combinator": "and", "conditions": [{"id": "0be03c44-5017-4db6-87cd-91838b953d09", "operator": {"type": "array", "operation": "notContains", "rightType": "any"}, "leftValue": "={{ $('Basic Variables').item.json.exclude_zammad_users_by_id }}", "rightValue": "={{ $json.user_id }}"}, {"id": "6a730e91-fa40-4e8a-b6cb-894f2cb367c5", "operator": {"type": "boolean", "operation": "true", "singleValue": true}, "leftValue": "={{ $json.active }}", "rightValue": ""}, {"id": "b3d13440-f3fc-4172-b16d-e191f050a2bf", "operator": {"name": "filter.operator.equals", "type": "string", "operation": "equals"}, "leftValue": "", "rightValue": ""}]}}, "typeVersion": 2.2, "notes": "This if node performs automated tasks as part of the workflow."}, {"id": "63f98607-1f56-4f83-93be-aa3b271da11b", "name": "Get all Roles", "type": "n8n-nodes-base.httpRequest", "position": [-220, -20], "parameters": {"url": "{{ $env.BASE_URL }}", "options": {}, "sendHeaders": true, "headerParameters": {"parameters": [{"name": "Authorization", "value": "=Bearer {{ $json.zammad_api_key }}"}]}}, "typeVersion": 4.2, "notes": "This httpRequest node performs automated tasks as part of the workflow."}, {"id": "961bf663-30be-45b4-87f0-d7ec94c3435b", "name": "Basic Variables", "type": "n8n-nodes-base.set", "position": [-620, 160], "parameters": {"options": {}, "assignments": {"assignments": [{"id": "68b32087-5e23-4590-8042-0061234ce479", "name": "zammad_base_url", "type": "string", "value": "-put-your-zammad-base-url-"}, {"id": "7db7572e-2524-4f2a-a1d6-b44330662c30", "name": "zammad_api_key", "type": "string", "value": "-put-your-api-key-"}, {"id": "7cd0a1d2-8898-47c7-a1c6-195ff6162bb9", "name": "default_roles", "type": "array", "value": "={{ [-put-in-the-default-roles-ids-separated-by-comma-] }}"}, {"id": "4628705c-4875-4d42-90d1-692b9b44fc24", "name": "exclude_zammad_users_by_id", "type": "array", "value": "={{ [-put-in-the-user-ids-separated-by-comma-] }}"}]}}, "typeVersion": 3.4, "notes": "This set node performs automated tasks as part of the workflow."}, {"id": "a86577aa-1eb2-48e6-b941-bdfb37b58073", "name": "Zammad Univeral Role Object", "type": "n8n-nodes-base.set", "position": [100, -20], "parameters": {"values": {"number": [{"name": "role_id", "value": "={{ $json.id }}"}, {"name": "name", "value": "={{ $json.name }}"}]}, "options": {}, "keepOnlySet": true}, "typeVersion": 1, "notes": "This set node performs automated tasks as part of the workflow."}, {"id": "ecc387b3-092d-43c9-9187-784f07c4df77", "name": "Convert to Excel Roles", "type": "n8n-nodes-base.convertToFile", "position": [760, -40], "parameters": {"options": {"fileName": "Zammad_Roles.xlsx"}, "operation": "xlsx"}, "typeVersion": 1.1, "notes": "This convertToFile node performs automated tasks as part of the workflow."}, {"id": "e8055ae6-78d8-4736-adee-4b8c883b4000", "name": "Filter Roles if needed", "type": "n8n-nodes-base.if", "position": [400, -20], "parameters": {"options": {}, "conditions": {"options": {"version": 2, "leftValue": "", "caseSensitive": true, "typeValidation": "strict"}, "combinator": "and", "conditions": [{"id": "0ca9d3a3-b726-4396-8cec-4a74c8e3949b", "operator": {"type": "object", "operation": "exists", "singleValue": true}, "leftValue": "={{ $json }}", "rightValue": 1781}]}}, "typeVersion": 2.2, "notes": "This if node performs automated tasks as part of the workflow."}, {"id": "45b01919-ba58-4c7a-a97f-d169cb361855", "name": "Update Users to default Role(s)", "type": "n8n-nodes-base.httpRequest", "onError": "continueErrorOutput", "position": [760, 200], "parameters": {"url": "{{ $env.BASE_URL }}", "method": "PUT", "options": {}, "jsonBody": "={\n  \"role_ids\": [\n    {{ $('Basic Variables').item.json.default_roles }}\n  ]\n} ", "sendBody": true, "sendHeaders": true, "specifyBody": "json", "headerParameters": {"parameters": [{"name": "Authorization", "value": "=Bearer {{ $('Basic Variables').item.json.zammad_api_key }}"}]}}, "typeVersion": 4.2, "notes": "This httpRequest node performs automated tasks as part of the workflow."}], "active": false, "pinData": {}, "settings": {"executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000}, "versionId": "4fa55089-104d-477e-8a93-c8cb0caf7bed", "connections": {"63f98607-1f56-4f83-93be-aa3b271da11b": {"main": [[{"node": "error-handler-63f98607-1f56-4f83-93be-aa3b271da11b", "type": "main", "index": 0}], [{"node": "error-handler-63f98607-1f56-4f83-93be-aa3b271da11b-4beddcaa", "type": "main", "index": 0}], [{"node": "error-handler-63f98607-1f56-4f83-93be-aa3b271da11b-108fae68", "type": "main", "index": 0}], [{"node": "error-handler-63f98607-1f56-4f83-93be-aa3b271da11b-d72d5185", "type": "main", "index": 0}], [{"node": "error-handler-63f98607-1f56-4f83-93be-aa3b271da11b-b804f4d6", "type": "main", "index": 0}], [{"node": "error-handler-63f98607-1f56-4f83-93be-aa3b271da11b-d8c3450a", "type": "main", "index": 0}], [{"node": "error-handler-63f98607-1f56-4f83-93be-aa3b271da11b-213acf9e", "type": "main", "index": 0}], [{"node": "error-handler-63f98607-1f56-4f83-93be-aa3b271da11b-5429f1ac", "type": "main", "index": 0}], [{"node": "error-handler-63f98607-1f56-4f83-93be-aa3b271da11b-7cf04bfd", "type": "main", "index": 0}]]}, "45b01919-ba58-4c7a-a97f-d169cb361855": {"main": [[{"node": "error-handler-45b01919-ba58-4c7a-a97f-d169cb361855", "type": "main", "index": 0}], [{"node": "error-handler-45b01919-ba58-4c7a-a97f-d169cb361855-18af2aae", "type": "main", "index": 0}], [{"node": "error-handler-45b01919-ba58-4c7a-a97f-d169cb361855-2d1a3a24", "type": "main", "index": 0}], [{"node": "error-handler-45b01919-ba58-4c7a-a97f-d169cb361855-46094320", "type": "main", "index": 0}], [{"node": "error-handler-45b01919-ba58-4c7a-a97f-d169cb361855-5fc9dc15", "type": "main", "index": 0}], [{"node": "error-handler-45b01919-ba58-4c7a-a97f-d169cb361855-fdefa5bf", "type": "main", "index": 0}], [{"node": "error-handler-45b01919-ba58-4c7a-a97f-d169cb361855-898082d3", "type": "main", "index": 0}], [{"node": "error-handler-45b01919-ba58-4c7a-a97f-d169cb361855-96e2151b", "type": "main", "index": 0}], [{"node": "error-handler-45b01919-ba58-4c7a-a97f-d169cb361855-91a476c4", "type": "main", "index": 0}]]}, "ecc387b3-092d-43c9-9187-784f07c4df77": {"main": [[{"node": "error-handler-ecc387b3-092d-43c9-9187-784f07c4df77-776877a7", "type": "main", "index": 0}]]}}, "description": "Automated workflow: Update all Zammad Roles to default values. This workflow processes data and performs automated tasks.", "notes": "Excellent quality workflow: Update all Zammad Roles to default values. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}