Mostrar detalles de eventos de ServiceNow en Slack mediante comandos de barra

Intermedio

Este es unSupportflujo de automatización del dominio deautomatización que contiene 10 nodos.Utiliza principalmente nodos como Set, Switch, Webhook, ServiceNow, RespondToWebhook. Mostrar detalles de eventos de ServiceNow en Slack con comandos de barra

Requisitos previos
  • Punto final de HTTP Webhook (n8n generará automáticamente)

Categoría

Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "meta": {
    "instanceId": "03e9d14e9196363fe7191ce21dc0bb17387a6e755dcc9acc4f5904752919dca8"
  },
  "nodes": [
    {
      "id": "eece2f27-2a2f-4207-a756-c3b8062c0028",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        0,
        0
      ],
      "webhookId": "f6ec2074-6c23-410e-ad31-ac1eaf7381ad",
      "parameters": {
        "path": "f6ec2074-6c23-410e-ad31-ac1eaf7381ad",
        "options": {},
        "httpMethod": "POST",
        "responseMode": "responseNode"
      },
      "typeVersion": 2
    },
    {
      "id": "3a710d14-a56b-4a9a-a30a-f298de68d92b",
      "name": "Extraer ID de incidente de la respuesta",
      "type": "n8n-nodes-base.set",
      "position": [
        200,
        0
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "38125eed-d2ab-4a69-b48f-97cb8d1905b1",
              "name": "incident_id",
              "type": "string",
              "value": "={{ $json.body.text }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "cf285efd-f722-4c26-9b64-0b91206c739c",
      "name": "Buscar incidente en ServiceNow",
      "type": "n8n-nodes-base.serviceNow",
      "onError": "continueRegularOutput",
      "position": [
        440,
        0
      ],
      "parameters": {
        "options": {
          "sysparm_query": "=GOTOnumber={{ $json.incident_id }}",
          "sysparm_display_value": "true"
        },
        "resource": "incident",
        "operation": "getAll",
        "authentication": "basicAuth"
      },
      "credentials": {
        "serviceNowBasicApi": {
          "id": "wjkWiUNQxo5PzTIb",
          "name": "ServiceNow Basic Auth account"
        }
      },
      "typeVersion": 1,
      "alwaysOutputData": true
    },
    {
      "id": "84fbfbe2-e922-439e-aa33-7c70ebc2215d",
      "name": "Enviar detalles del incidente a Slack",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        960,
        180
      ],
      "parameters": {
        "options": {
          "responseCode": 200,
          "responseHeaders": {
            "entries": [
              {
                "name": "Content-Type",
                "value": "application/json"
              }
            ]
          }
        },
        "respondWith": "json",
        "responseBody": "={\n    \"response_type\": \"in_channel\",\n    \"blocks\": [\n        {\n            \"type\": \"header\",\n            \"text\": {\n                \"type\": \"plain_text\",\n                \"text\": \"ServiceNow Incident Notification\",\n                \"emoji\": true\n            }\n        },\n        {\n            \"type\": \"section\",\n            \"fields\": [\n                {\n                    \"type\": \"mrkdwn\",\n                    \"text\": \"*Incident ID:*\\n{{ $('Search For Incident in ServiceNow').item.json.number }}\"\n                },\n                {\n                    \"type\": \"mrkdwn\",\n                    \"text\": \"*Description:*\\n{{ $('Search For Incident in ServiceNow').item.json.short_description }}\"\n                },\n                {\n                    \"type\": \"mrkdwn\",\n                    \"text\": \"*Severity:*\\n{{ $('Search For Incident in ServiceNow').item.json.severity }}\"\n                },\n                {\n                    \"type\": \"mrkdwn\",\n                    \"text\": \"*Caller:*\\n{{ $('Search For Incident in ServiceNow').item.json.caller_id.display_value }}\"\n                },\n                {\n                    \"type\": \"mrkdwn\",\n                    \"text\": \"*Priority:*\\n{{ $('Search For Incident in ServiceNow').item.json.priority }}\"\n                },\n                {\n                    \"type\": \"mrkdwn\",\n                    \"text\": \"*State:*\\n{{ $('Search For Incident in ServiceNow').item.json.incident_state }}\"\n                },\n                {\n                    \"type\": \"mrkdwn\",\n                    \"text\": \"*Category:*\\n{{ $('Search For Incident in ServiceNow').item.json.category }}\"\n                },\n                {\n                    \"type\": \"mrkdwn\",\n                    \"text\": \"*Date Opened:*\\n{{ $('Search For Incident in ServiceNow').item.json.opened_at }}\"\n                }\n            ]\n        },\n        {\n            \"type\": \"actions\",\n            \"elements\": [\n                {\n                    \"type\": \"button\",\n                    \"text\": {\n                        \"type\": \"plain_text\",\n                        \"text\": \"View Incident\",\n                        \"emoji\": true\n                    },\n                    \"url\": \"https://dev206761.service-now.com/nav_to.do?uri=incident.do?sys_id={{ $('Search For Incident in ServiceNow').item.json.sys_id }}\",\n                    \"action_id\": \"view_incident\"\n                }\n            ]\n        }\n    ]\n}"
      },
      "typeVersion": 1.1
    },
    {
      "id": "2bfefc69-8b4e-4bc2-8fea-1216aa95e58b",
      "name": "Notificar al usuario que no se encontró el incidente",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        960,
        0
      ],
      "parameters": {
        "options": {
          "responseCode": 200,
          "responseHeaders": {
            "entries": [
              {
                "name": "Content-Type",
                "value": "application/json"
              }
            ]
          }
        },
        "respondWith": "json",
        "responseBody": "={\n\t\"blocks\": [\n\t\t{\n\t\t\t\"type\": \"section\",\n\t\t\t\"text\": {\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \":warning: No incident was found with that ID. Please double check and try again. :warning:\"\n\t\t\t}\n\t\t}\n\t]\n}"
      },
      "typeVersion": 1.1
    },
    {
      "id": "47e3fdb0-9824-4b95-b794-972adadcfe5c",
      "name": "Notificar al usuario del error con ServiceNow",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        960,
        -180
      ],
      "parameters": {
        "options": {
          "responseCode": 200,
          "responseHeaders": {
            "entries": [
              {
                "name": "Content-Type",
                "value": "application/json"
              }
            ]
          }
        },
        "respondWith": "json",
        "responseBody": "={\n\t\"blocks\": [\n\t\t{\n\t\t\t\"type\": \"section\",\n\t\t\t\"text\": {\n\t\t\t\t\"type\": \"mrkdwn\",\n\t\t\t\t\"text\": \":rotating_light: Issue connecting to ServiceNow. Please investigate in n8n. :rotating_light:\"\n\t\t\t}\n\t\t}\n\t]\n}"
      },
      "typeVersion": 1.1
    },
    {
      "id": "a64be48f-c318-41f0-950f-d5c545b56001",
      "name": "Nota adhesiva12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        -400
      ],
      "parameters": {
        "color": 7,
        "width": 431.79628558910616,
        "height": 756.5967348425984,
        "content": "![Slack](https://uploads.n8n.io/templates/slack.png)\n## Receive Slack Webhook Slash Command\n\nThis section begins with the `Webhook` node, which listens for incoming Slack Slash Command requests. When triggered, it extracts the incident ID from the request payload using the `Extract Incident ID from Response` node. The incident ID is then passed forward for further processing. This setup allows users to initiate ServiceNow incident lookups directly from Slack.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "1434eb2a-5a9c-47f4-9e69-abaca2047c65",
      "name": "Nota adhesiva2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        378.80172279482787,
        -402.30436380125093
      ],
      "parameters": {
        "color": 7,
        "width": 390.19827720517213,
        "height": 753.3043638012509,
        "content": "![ServiceNow](https://uploads.n8n.io/templates/servicenow.png)\n## Search ServiceNow for Incident\n\nIn this section, the `Search For Incident in ServiceNow` node queries the ServiceNow platform using the extracted incident ID. If the query returns a valid incident, the details are prepared for the Slack response. If no incident is found, the workflow routes this outcome for a corresponding Slack notification. The `Parse ServiceNow Response` node evaluates the outcome of the ServiceNow query. This ensures accurate and responsive communication with ServiceNow.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b5a063f6-3676-4ff0-b1ca-944e8285db0d",
      "name": "Nota adhesiva11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        777,
        -646.1743824166542
      ],
      "parameters": {
        "color": 7,
        "width": 448,
        "height": 998.1743824166542,
        "content": "![Slack](https://uploads.n8n.io/templates/webhook.png)\n## Respond to Slack Webhook\n\nBased on the ServiceNow result:\n- The `Send Incident Details to Slack` node formats and sends detailed incident information to Slack.\n- The `Notify User no Incident was Found` node sends a user-friendly notification indicating the incident ID was invalid.\n- The `Notify User of Error with ServiceNow` node alerts the user if the ServiceNow connection fails.\nThis ensures users receive the right response for every scenario, enabling seamless incident management directly from Slack.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "907e9461-2cf8-4c2a-8d25-38a319861937",
      "name": "Analizar respuesta de ServiceNow",
      "type": "n8n-nodes-base.switch",
      "position": [
        640,
        0
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "ServiceNow Error",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.error }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "Incident Not Found",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "6d9ff397-8bb6-41df-979c-4eb7ef16bfc1",
                    "operator": {
                      "type": "string",
                      "operation": "notExists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.number }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "Incident Found",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "aed034ac-8a45-44d5-9734-813a36aeadaa",
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.number }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    }
  ],
  "pinData": {},
  "connections": {
    "eece2f27-2a2f-4207-a756-c3b8062c0028": {
      "main": [
        [
          {
            "node": "3a710d14-a56b-4a9a-a30a-f298de68d92b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "907e9461-2cf8-4c2a-8d25-38a319861937": {
      "main": [
        [
          {
            "node": "47e3fdb0-9824-4b95-b794-972adadcfe5c",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "2bfefc69-8b4e-4bc2-8fea-1216aa95e58b",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "84fbfbe2-e922-439e-aa33-7c70ebc2215d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3a710d14-a56b-4a9a-a30a-f298de68d92b": {
      "main": [
        [
          {
            "node": "cf285efd-f722-4c26-9b64-0b91206c739c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cf285efd-f722-4c26-9b64-0b91206c739c": {
      "main": [
        [
          {
            "node": "907e9461-2cf8-4c2a-8d25-38a319861937",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿Cómo usar este flujo de trabajo?

Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.

¿En qué escenarios es adecuado este flujo de trabajo?

Intermedio - Soporte

¿Es de pago?

Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.

Información del flujo de trabajo
Nivel de dificultad
Intermedio
Número de nodos10
Categoría1
Tipos de nodos6
Descripción de la dificultad

Adecuado para usuarios con experiencia intermedia, flujos de trabajo de complejidad media con 6-15 nodos

Autor
Angel Menendez

Angel Menendez

@djangelic

Angel Menendez is a Staff Developer Advocate at n8n.io, specializing in low-code tools for cybersecurity workflows. From Puerto Rico, Angel's tech journey began by helping his father translate technical books. He later started a web development business and transitioned from a career as a flight attendant to cybersecurity engineering. His workflows have saved companies significant time. Outside work, Angel enjoys time with his two sons, riding electric bikes, reading, and exploring new places.

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34