{
  "nodes": [
    {
      "id": "1de0b08b-585a-43a9-bf32-34cdd763fbb0",
      "name": "Global Variables",
      "type": "n8n-nodes-base.set",
      "position": [
        1180,
        500
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "6a8a0cbf-bf3e-4702-956e-a35966d8b9c5",
              "name": "base_url",
              "type": "string",
              "value": "https://qualysapi.qg3.apps.qualys.com"
            }
          ]
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.3
    },
    {
      "id": "cc10e116-1a16-4bd9-bdbb-27baa680dc91",
      "name": "Fetch Report IDs",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1400,
        500
      ],
      "parameters": {
        "": "",
        "url": "={{ $json.base_url }}/msp/report_template_list.php",
        "method": "GET",
        "options": {},
        "sendBody": false,
        "sendQuery": false,
        "curlImport": "",
        "infoMessage": "",
        "sendHeaders": false,
        "authentication": "predefinedCredentialType",
        "httpVariantWarning": "",
        "nodeCredentialType": "qualysApi",
        "provideSslCertificates": false
      },
      "credentials": {
        "qualysApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2,
      "extendsCredential": "qualysApi"
    },
    {
      "id": "69e097c2-ba05-4964-af82-ce07fb2a6535",
      "name": "Convert XML To JSON",
      "type": "n8n-nodes-base.xml",
      "position": [
        1580,
        500
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "d2a2001a-4df8-4482-9ecf-62a7aed90a9c",
      "name": "Launch Report",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1760,
        500
      ],
      "parameters": {
        "": "",
        "url": "={{ $('Global Variables').item.json[\"base_url\"] }}/api/2.0/fo/report/",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "sendQuery": true,
        "curlImport": "",
        "contentType": "multipart-form-data",
        "infoMessage": "",
        "sendHeaders": true,
        "specifyQuery": "keypair",
        "authentication": "predefinedCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "template_id",
              "value": "={{ $jmespath($json[\"REPORT_TEMPLATE_LIST\"][\"REPORT_TEMPLATE\"], \"[?TITLE == '\"+$('Global Variables').item.json.template_name+\"'].ID\") | [0] }}",
              "parameterType": "formData"
            },
            {
              "name": "=output_format",
              "value": "={{ $('Global Variables').item.json.output_format }}",
              "parameterType": "formData"
            },
            {
              "name": "report_title",
              "value": "={{ $('Global Variables').item.json.report_title }}",
              "parameterType": "formData"
            }
          ]
        },
        "specifyHeaders": "keypair",
        "queryParameters": {
          "parameters": [
            {
              "name": "action",
              "value": "launch"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "X-Requested-With",
              "value": "n8n"
            }
          ]
        },
        "httpVariantWarning": "",
        "nodeCredentialType": "qualysApi",
        "provideSslCertificates": false
      },
      "credentials": {
        "qualysApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2,
      "extendsCredential": "qualysApi"
    },
    {
      "id": "3f525e48-2866-42ba-a09d-05b8f5aa092d",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        2200,
        480
      ],
      "parameters": {
        "options": {
          "reset": true
        }
      },
      "typeVersion": 3
    },
    {
      "id": "e202aab9-f9fe-4f6e-ac50-4d4b3b30c1f4",
      "name": "Wait 1 Minute",
      "type": "n8n-nodes-base.wait",
      "position": [
        2400,
        500
      ],
      "parameters": {
        "unit": "minutes",
        "amount": 1
      },
      "typeVersion": 1.1
    },
    {
      "id": "eb8db4f0-eacb-4d3d-ae8c-77c096bbb289",
      "name": "Check Status of Report",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2560,
        500
      ],
      "parameters": {
        "": "",
        "url": "={{ $('Global Variables').item.json.base_url }}/api/2.0/fo/report",
        "method": "GET",
        "options": {},
        "sendBody": false,
        "sendQuery": true,
        "curlImport": "",
        "infoMessage": "",
        "sendHeaders": false,
        "specifyQuery": "keypair",
        "authentication": "predefinedCredentialType",
        "queryParameters": {
          "parameters": [
            {
              "name": "action",
              "value": "list"
            },
            {
              "name": "id",
              "value": "={{ $('Convert Report Launch XML to JSON').item.json[\"SIMPLE_RETURN\"][\"RESPONSE\"][\"ITEM_LIST\"][\"ITEM\"][\"VALUE\"] }}"
            }
          ]
        },
        "httpVariantWarning": "",
        "nodeCredentialType": "qualysApi",
        "provideSslCertificates": false
      },
      "credentials": {
        "qualysApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2,
      "extendsCredential": "qualysApi"
    },
    {
      "id": "7cfcaa0c-7b0e-4704-8268-d5869677a58e",
      "name": "Is Report Finished?",
      "type": "n8n-nodes-base.if",
      "position": [
        2900,
        500
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "97935da6-84fa-4756-83e1-4fbf5861baec",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.REPORT_LIST_OUTPUT.RESPONSE.REPORT_LIST.REPORT.STATUS.STATE }}",
              "rightValue": "Finished"
            }
          ]
        }
      },
      "typeVersion": 2
    },
    {
      "id": "b1a1f2bf-ddb1-4343-be2e-929128ed502c",
      "name": "Download Report",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3080,
        500
      ],
      "parameters": {
        "": "",
        "url": "={{ $('Global Variables').item.json.base_url }}/api/2.0/fo/report/",
        "method": "GET",
        "options": {},
        "sendBody": false,
        "sendQuery": true,
        "curlImport": "",
        "infoMessage": "",
        "sendHeaders": false,
        "specifyQuery": "keypair",
        "authentication": "predefinedCredentialType",
        "queryParameters": {
          "parameters": [
            {
              "name": "action",
              "value": "fetch"
            },
            {
              "name": "id",
              "value": "={{ $('Convert Report Launch XML to JSON').item.json.SIMPLE_RETURN.RESPONSE.ITEM_LIST.ITEM.VALUE }}"
            }
          ]
        },
        "httpVariantWarning": "",
        "nodeCredentialType": "qualysApi",
        "provideSslCertificates": false
      },
      "credentials": {
        "qualysApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2,
      "extendsCredential": "qualysApi"
    },
    {
      "id": "aa1bb6b0-12db-4624-a682-d719e7463bdb",
      "name": "Slack",
      "type": "n8n-nodes-base.slack",
      "position": [
        3400,
        540
      ],
      "parameters": {
        "options": {
          "channelId": "=C05LAN72WJK",
          "initialComment": "=\ud83d\udcca *Test Report* (Scan) by `aztec3am1` is ready!\n\n- *ID:* {{ $('Download Report').item.json[\"REPORT_LIST_OUTPUT\"][\"RESPONSE\"][\"REPORT_LIST\"][\"REPORT\"][\"ID\"] }}\n- *Launch Time:* {{ $('Download Report').item.json[\"REPORT_LIST_OUTPUT\"][\"RESPONSE\"][\"REPORT_LIST\"][\"REPORT\"][\"LAUNCH_DATETIME\"] }}\n- *Output Format:* {{ $('Download Report').item.json[\"REPORT_LIST_OUTPUT\"][\"RESPONSE\"][\"REPORT_LIST\"][\"REPORT\"][\"OUTPUT_FORMAT\"] }}\n- *Size:* {{ $('Download Report').item.binary.data.fileSize }}\n- *Status:* \u2705 Finished\n- *Expiration Time:* {{ $('Download Report').item.json[\"REPORT_LIST_OUTPUT\"][\"RESPONSE\"][\"REPORT_LIST\"][\"REPORT\"][\"EXPIRATION_DATETIME\"] }}\n"
        },
        "resource": "file"
      },
      "credentials": {
        "slackApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "3ab2cc79-9634-4a8a-ac72-c8e32370572a",
      "name": "Convert Report Launch XML to JSON",
      "type": "n8n-nodes-base.xml",
      "position": [
        1980,
        500
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "c24e8997-8594-4abc-8313-0198abfc7f5d",
      "name": "Convert Report List to JSON",
      "type": "n8n-nodes-base.xml",
      "position": [
        2740,
        500
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "33fa7420-b65f-4af1-8dad-19840b43e8cc",
      "name": "Execute Workflow Trigger",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        860,
        500
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "2c8b286a-0e00-49e1-81c2-e94ef5b7725e",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        820.9673276258711,
        38.56257011400896
      ],
      "parameters": {
        "color": 7,
        "width": 489.3146851921929,
        "height": 655.6477214487218,
        "content": "![\uc2ac\ub799](https://uploads.n8n.io/templates/slack.png)  \n## Slack \ubd80\ubaa8 \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc5d0\uc11c \ud2b8\ub9ac\uac70\ub428  \n\n\uc774 \uc139\uc158\uc740 \ubd80\ubaa8 n8n \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc778 `Qualys Slack Shortcut Bot`\uc5d0 \uc758\ud574 \ud2b8\ub9ac\uac70\ub429\ub2c8\ub2e4. \uc0ac\uc6a9\uc790\uac00 \uc2ac\ub799 \ubaa8\ub2ec \ud31d\uc5c5\uc5d0 \ub370\uc774\ud130\ub97c \uc785\ub825\ud558\uace0 \uc81c\ucd9c \ubc84\ud2bc\uc744 \ub204\ub97c \ub54c \ud2b8\ub9ac\uac70\ub429\ub2c8\ub2e4.  \n\n\uc774\ub7ec\ud55c \ubaa8\ub2ec\uc740 \ub2e4\uc591\ud55c \uc791\uc5c5\uc744 \uc218\ud589\ud558\ub3c4\ub85d \ucee4\uc2a4\ud130\ub9c8\uc774\uc988\ud560 \uc218 \uc788\uc73c\uba70, \ubaa8\ubc14\uc77c \uce5c\ud654\uc801\uc73c\ub85c \uc124\uacc4\ub418\uc5b4 \uc720\uc5f0\uc131\uacfc \uc0ac\uc6a9 \ud3b8\uc758\uc131\uc744 \ubcf4\uc7a5\ud569\ub2c8\ub2e4.  \n\n### \ucd9c\ub825"
      },
      "typeVersion": 1
    },
    {
      "id": "96cd5a16-f12d-4373-be7b-9ebe1549ccb8",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1320,
        40
      ],
      "parameters": {
        "color": 7,
        "width": 816.4288734746297,
        "height": 662.0100319801938,
        "content": "![Qualys](https://uploads.n8n.io/templates/qualys.png)  \n## \ubcf4\uace0\uc11c ID\uac00 \uac80\uc0c9\ub418\uace0 Qualys\uc5d0\uc11c \uc2a4\uce94 \ubcf4\uace0\uc11c\uac00 \uc694\uccad\ub429\ub2c8\ub2e4  \n\uc774 \uc139\uc158\uc5d0\uc11c \ud504\ub85c\uc138\uc2a4\ub294 \"Fetch Report IDs\" \ub178\ub4dc\uc5d0\uc11c \uc2dc\uc791\ud558\uba70, \uc774 \ub178\ub4dc\ub294 \uc0ac\uc6a9 \uac00\ub2a5\ud55c \ubcf4\uace0\uc11c \ud15c\ud50c\ub9bf \ubaa9\ub85d\uc744 \uac80\uc0c9\ud558\uae30 \uc704\ud574 HTTP GET \uc694\uccad\uc744 \uc218\ud589\ud569\ub2c8\ub2e4.  \n\n\uc774 \uc694\uccad\uc740 \ubbf8\ub9ac \uc815\uc758\ub41c API \uc790\uaca9 \uc99d\uba85\uc744 \uc0ac\uc6a9\ud558\uba70, \ucd9c\ub825\uc740 XML \ud615\uc2dd\uc73c\ub85c, \"Convert XML to JSON\" \ub178\ub4dc\uc5d0 \uc758\ud574 JSON\uc73c\ub85c \ubcc0\ud658\ub418\uc5b4 \ub354 \uc27d\uac8c \uc870\uc791\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uadf8 \ub2e4\uc74c, \"Launch Report\" \ub178\ub4dc\ub294 Qualys\uc5d0 HTTP POST \uc694\uccad\uc744 \ubcf4\ub0b4\uc11c \ud15c\ud50c\ub9bf ID, \ucd9c\ub825 \ud615\uc2dd, \ubcf4\uace0\uc11c \uc81c\ubaa9\uacfc \uac19\uc740 \ub9e4\uac1c\ubcc0\uc218\ub97c \uae30\ubc18\uc73c\ub85c \ubcf4\uace0\uc11c \uc0dd\uc131\uc744 \uc2dc\uc791\ud569\ub2c8\ub2e4. \uc774 \ub9e4\uac1c\ubcc0\uc218\ub294 \uae00\ub85c\ubc8c \ubcc0\uc218\uc5d0\uc11c \ub3d9\uc801\uc73c\ub85c \uac00\uc838\uc635\ub2c8\ub2e4.  \n\n\uc774 \ub178\ub4dc\uc5d0\ub294 \ucffc\ub9ac \ub9e4\uac1c\ubcc0\uc218 \ubc0f \ud5e4\ub354\uc640 \uac19\uc740 \ucd94\uac00 \uad6c\uc131\uc744 \ud3ec\ud568\ud558\uc5ec \uc694\uccad\uc744 \ub9de\ucda4\ud654\ud569\ub2c8\ub2e4. \ub9c8\uc9c0\ub9c9\uc73c\ub85c, \"Convert Report Launch XML to JSON\" \ub178\ub4dc\ub294 \ubcf4\uace0\uc11c \uc2dc\uc791\uc758 XML \uc751\ub2f5\uc744 \ucc98\ub9ac\ud558\uc5ec JSON \ud615\uc2dd\uc73c\ub85c \ubcc0\ud658\ud569\ub2c8\ub2e4. \uc774 \uc21c\uc11c\ub294 Qualys \ub0b4\uc5d0\uc11c \ubcf4\uace0\uc11c \uc0dd\uc131 \uc791\uc5c5\uc744 \uac04\uc18c\ud654\ud558\uace0 \uc790\ub3d9\ud654\ud558\uc5ec \ud6a8\uc728\uc801\uc778 \ub370\uc774\ud130 \ucc98\ub9ac\uc640 \uc6cc\ud06c\ud50c\ub85c \ub0b4 \ud1b5\ud569\uc744 \ucd09\uc9c4\ud569\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "ec51d524-4cef-4d78-a5d0-38dbe6c53825",
      "name": "Sticky Note15",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2140,
        33.01345938069812
      ],
      "parameters": {
        "color": 7,
        "width": 391.7799748314626,
        "height": 664.948136798539,
        "content": "![n8n](https://uploads.n8n.io/templates/n8n.png)\n\n## n8n \ub8e8\ud504 \ub178\ub4dc\n\n\uc774 \ub178\ub4dc\ub294 \ubcf4\uace0\uc11c \uc0c1\ud0dc\ub97c \uc815\uae30\uc801\uc778 \uac04\uaca9(\ub9e4 \ubd84)\uc73c\ub85c \uc870\ud68c\ud558\uc5ec \ubcf4\uace0\uc11c\uac00 \uc644\ub8cc\ub85c \ud45c\uc2dc\ub420 \ub54c\uae4c\uc9c0 \ubc18\ubcf5\ud569\ub2c8\ub2e4. \ubcf4\uace0\uc11c\uac00 \uc644\ub8cc\ub418\uba74 \ub8e8\ud504\uac00 \uc885\ub8cc\ub418\uace0, \uacb0\uacfc\uac00 PDF \ucca8\ubd80 \ud30c\uc77c\ub85c Slack\uc5d0 \uac8c\uc2dc\ub418\uc5b4 \ud300\uc774 \uc989\uc2dc \ud1b5\ubcf4\ub429\ub2c8\ub2e4. \n\nSOC\uc758 \uacbd\uc6b0, \uc9c0\uc18d\uc801\uc778 \ubaa8\ub2c8\ud130\ub9c1\uc740 \uc2dc\uc758\uc801\uc808\ud55c \uc5c5\ub370\uc774\ud2b8\ub97c \ubcf4\uc7a5\ud558\uba70, \ub300\uae30 \uae30\uac04\uc758 \uc790\ub3d9\ud654\ub294 \ubd84\uc11d\uac00\uc758 \uc2dc\uac04\uc744 \ub2e4\ub978 \uc791\uc5c5\uc5d0 \uc0ac\uc6a9\ud560 \uc218 \uc788\uac8c \ud569\ub2c8\ub2e4. Slack\uc5d0 \ub300\ud55c \uc989\uc2dc \uc54c\ub9bc\uc740 \uc644\ub8cc\ub41c \ubcf4\uace0\uc11c\uc5d0 \ub300\ud55c \ube60\ub978 \uc870\uce58\ub97c \uac00\ub2a5\ud558\uac8c \ud558\uc5ec \uc804\uccb4 \ud6a8\uc728\uc131\uc744 \ud5a5\uc0c1\uc2dc\ud0b5\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "894b9ea3-ab3b-4459-8576-49fd107d4c7f",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2540,
        36.092592419318635
      ],
      "parameters": {
        "color": 7,
        "width": 670.8185951020379,
        "height": 655.5577875573053,
        "content": "![Qualys](https://uploads.n8n.io/templates/qualys.png)  \n## Qualys API\uc5d0\uc11c \ubcf4\uace0\uc11c \uc0c1\ud0dc \ud655\uc778  \n\n\uc774 \ub178\ub4dc\ub294 Qualys API\uc5d0\uc11c \ubcf4\uace0\uc11c\uc758 \uc0c1\ud0dc\ub97c \ud655\uc778\ud569\ub2c8\ub2e4. \ubcf4\uace0\uc11c\uac00 \uc644\uc804\ud55c\uc9c0 \ud655\uc778\ud558\uae30 \uc704\ud574 XML \uc751\ub2f5\uc744 \ud30c\uc2f1\ud55c \ud6c4, \ubcf4\uace0\uc11c \uc138\ubd80 \uc815\ubcf4\ub97c Slack\uc5d0 \uc81c\ucd9c\ud569\ub2c8\ub2e4.  \n\n\uc774 \ub2e8\uacc4\ub294 \uc790\ub3d9\ud654\ub418\uace0 \ud6a8\uc728\uc801\uc778 \uc6cc\ud06c\ud50c\ub85c\ub97c \uc720\uc9c0\ud558\ub294 \ub370 \uc911\uc694\ud569\ub2c8\ub2e4. SOC\uc758 \uacbd\uc6b0, \uc790\ub3d9\ud654\ub41c \ubaa8\ub2c8\ud130\ub9c1\uc740 \uc218\ub3d9 \ud655\uc778\uc758 \ud544\uc694\uc131\uc744 \uc904\uc5ec\uc8fc\uba70, \uc644\uc131\ub41c \ubcf4\uace0\uc11c\ub9cc \ucd94\uac00 \ucc98\ub9ac\ub418\ub3c4\ub85d \ud558\uc5ec \ub370\uc774\ud130 \ubb34\uacb0\uc131\uc744 \uc720\uc9c0\ud569\ub2c8\ub2e4.  \n\n\ub610\ud55c, Slack\uacfc \ud1b5\ud569\ud558\uc5ec \ubcf4\uace0\uc11c \uc0c1\ud0dc\ub97c \uc6d0\ud65c\ud558\uac8c \uc804\ub2ec\ud558\uc5ec \uc6b4\uc601\uc744 \uac04\uc18c\ud654\ud569\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "24a96b8a-1ed9-42ee-802b-952000f3cfab",
      "name": "Sticky Note13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3220,
        40
      ],
      "parameters": {
        "color": 7,
        "width": 473.6487484083029,
        "height": 650.1491670103001,
        "content": "![Slack](https://uploads.n8n.io/templates/slack.png)  \n## \ubcf4\uace0\uc11c\ub97c Slack\uc5d0 \uc5c5\ub85c\ub4dc\n\n\uc774 \ub178\ub4dc\ub294 \uc0dd\uc131\ub41c \ubcf4\uace0\uc11c\ub97c \uc9c0\uc815\ub41c Slack \ucc44\ub110\uc5d0 \uc5c5\ub85c\ub4dc\ud558\ub294 \ud504\ub85c\uc138\uc2a4\ub97c \uc790\ub3d9\ud654\ud569\ub2c8\ub2e4. \n\n\ubcf4\uace0\uc11c\uac00 PDF \ub610\ub294 HTML \ud615\uc2dd\uc5d0 \uc0c1\uad00\uc5c6\uc774 \ud300\uc774 \uc27d\uac8c \uc811\uadfc\ud560 \uc218 \uc788\ub3c4\ub85d \ud558\uc5ec, \ucee4\ubba4\ub2c8\ucf00\uc774\uc158\uc744 \uac04\uc18c\ud654\ud558\uace0 \ud611\ub825\uc744 \uac15\ud654\ud569\ub2c8\ub2e4. \n\n\ubcf4\uc548 \uc6b4\uc601 \uc13c\ud130(SOC)\uc758 \uacbd\uc6b0, \uc774 \uae30\ub2a5\uc740 \uc811\uadfc\uc131\uc744 \ud06c\uac8c \ud5a5\uc0c1\uc2dc\ud0a4\uba70, \ud300 \uad6c\uc131\uc6d0\uc774 Slack\uc5d0\uc11c \uc9c1\uc811 \ucd5c\uc2e0 \ubcf4\uace0\uc11c\ub97c \ube60\ub974\uac8c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \n\n\ub610\ud55c \ubcf4\uace0\uc11c\ub97c \uacf5\ud1b5 \ucee4\ubba4\ub2c8\ucf00\uc774\uc158 \ud50c\ub7ab\ud3fc\uc5d0\uc11c \uacf5\uc720\ud558\uc5ec \ud611\ub825\uc744 \uac15\ud654\ud558\uace0, \uc2e4\uc2dc\uac04 \uc5c5\ub370\uc774\ud2b8\ub97c \uc81c\uacf5\ud558\uc5ec \uc801\uc2dc \uac80\ud1a0\uc640 \uc870\uce58\ub97c \uac00\ub2a5\ud558\uac8c \ud569\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "c179e45b-37a8-423f-a542-74e6166b09f0",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        160,
        80
      ],
      "parameters": {
        "width": 646.7396383244529,
        "height": 1327.6335333503064,
        "content": "![n8n](https://uploads.n8n.io/templates/n8n.png)  \n# Qualys \uc2a4\uce94 Slack \ubcf4\uace0\uc11c \uc11c\ube0c\uc6cc\ud06c\ud50c\ub85c\uc6b0 \uc0dd\uc131\n\n## Qualys \ubcf4\uace0\uc11c \uc0dd\uc131 \uc6cc\ud06c\ud50c\ub85c\uc6b0 \uc18c\uac1c\u2014Qualys API\uc5d0\uc11c \ubcf4\uc548 \ubcf4\uace0\uc11c\ub97c \uc0dd\uc131\ud558\uace0 \uac80\uc0c9\ud558\ub294 \uac83\uc744 \uc790\ub3d9\ud654\ud558\ub294 \uac15\ub825\ud55c \uc194\ub8e8\uc158\uc785\ub2c8\ub2e4.\n\n\uc774 \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub294 `Qualys Slack Shortcut Bot` \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc758 \uc11c\ube0c \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc785\ub2c8\ub2e4. \uc774\ub294 `Qualys Slack Shortcut Bot`\uc5d0 \uc758\ud574 \uc0dd\uc131\ub41c Slack \ubaa8\ub2ec \ud31d\uc5c5\uc744 \ub204\uad70\uac00\uac00 \ucc44\uc6b0\uba74 \ud2b8\ub9ac\uac70\ub429\ub2c8\ub2e4.\n\n\uc774 \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub97c \ubc30\ud3ec\ud560 \ub54c, Execute Workflow Trigger\ub97c \ud1b5\ud574 \uc785\ub825\ub418\ub294 \ub370\uc774\ud130\ub97c \uc2dc\ubbac\ub808\uc774\uc158\ud558\uae30 \uc704\ud574 Demo Data \ub178\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc138\uc694. \uadf8 \ub370\uc774\ud130\ub294 Global Variables Node\ub85c \ud750\ub974\uace0, \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc758 \ub098\uba38\uc9c0 \ubd80\ubd84\uc5d0\uc11c \ucc38\uc870\ub429\ub2c8\ub2e4.\n\n\uc774 \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc5d0\ub294 \ubcf4\uace0\uc11c ID\ub97c \uac00\uc838\uc624\ub294 \ub178\ub4dc, \ubcf4\uace0\uc11c\ub97c \uc2dc\uc791\ud558\ub294 \ub178\ub4dc, \ubcf4\uace0\uc11c \uc0c1\ud0dc\ub97c \uc8fc\uae30\uc801\uc73c\ub85c \ud655\uc778\ud558\ub294 \ub178\ub4dc, \uc644\ub8cc\ub41c \ubcf4\uace0\uc11c\ub97c \ub2e4\uc6b4\ub85c\ub4dc\ud558\ub294 \ub178\ub4dc, \uadf8\ub9ac\uace0 \uc774\ub97c Slack\uc5d0 \uac8c\uc2dc\ud558\uc5ec \uc27d\uac8c \uc811\uadfc\ud560 \uc218 \uc788\ub3c4\ub85d \ud558\ub294 \ub178\ub4dc\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.\n\n\ubcf4\uc548 \uc6b4\uc601 \uc13c\ud130(SOCs)\uc5d0\uc11c \uc774 \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub294 \uc9c0\ub8e8\ud55c \uc791\uc5c5\uc744 \uc790\ub3d9\ud654\ud558\uc5ec, \uc801\uc2dc \uc5c5\ub370\uc774\ud2b8\ub97c \ubcf4\uc7a5\ud558\uace0, \ud6a8\uc728\uc801\uc778 \ub370\uc774\ud130 \ucc98\ub9ac\ub97c \ucd09\uc9c4\ud558\uc5ec \uc0c1\ub2f9\ud55c \uc774\uc810\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4.\n\n**\uc791\ub3d9 \uc6d0\ub9ac:**\n\n- **\ubcf4\uace0\uc11c \ud15c\ud50c\ub9bf \uac00\uc838\uc624\uae30:** \"Fetch Report IDs\" \ub178\ub4dc\ub294 Qualys\uc5d0\uc11c \uc0ac\uc6a9 \uac00\ub2a5\ud55c \ubcf4\uace0\uc11c \ud15c\ud50c\ub9bf \ubaa9\ub85d\uc744 \uac00\uc838\uc635\ub2c8\ub2e4. \uc774 \uc790\ub3d9\ud654\ub41c \uac80\uc0c9\uc740 \uc2dc\uac04\uc744 \uc808\uc57d\ud558\uace0 \ucd5c\uc2e0 \ud15c\ud50c\ub9bf\uc744 \uc0ac\uc6a9\ud558\ub3c4\ub85d \ud558\uc5ec \ubcf4\uace0\uc11c\uc758 \uc815\ud655\uc131\uacfc \uad00\ub828\uc131\uc744 \ub192\uc785\ub2c8\ub2e4.\n  \n- **XML\uc744 JSON\uc73c\ub85c \ubcc0\ud658:** \uc751\ub2f5\uc744 JSON \ud615\uc2dd\uc73c\ub85c \ubcc0\ud658\ud558\uc5ec \uc870\uc791\uc744 \uc27d\uac8c \ud569\ub2c8\ub2e4. \uc774 \ub2e8\uacc4\ub294 \ub370\uc774\ud130 \ucc98\ub9ac\ub97c \uac04\uc18c\ud654\ud558\uc5ec SOC \ubd84\uc11d\uac00\ub4e4\uc774 \ub370\uc774\ud130\ub97c \uc27d\uac8c \uc791\uc5c5\ud558\uace0 \ub2e4\ub978 \ub3c4\uad6c\ub098 \ud504\ub85c\uc138\uc2a4\uc5d0 \ud1b5\ud569\ud560 \uc218 \uc788\ub3c4\ub85d \ud569\ub2c8\ub2e4.\n  \n- **\ubcf4\uace0\uc11c \uc2dc\uc791:** \ud15c\ud50c\ub9bf ID\uc640 \ubcf4\uace0\uc11c \uc81c\ubaa9\uacfc \uac19\uc740 \uc9c0\uc815\ub41c \ub9e4\uac1c\ubcc0\uc218\ub97c \uc0ac\uc6a9\ud558\uc5ec Qualys\uc5d0 POST \uc694\uccad\uc744 \ubcf4\ub0b4 \ubcf4\uace0\uc11c \uc0dd\uc131\uc744 \uc2dc\uc791\ud569\ub2c8\ub2e4. \uc774 \ub2e8\uacc4\ub97c \uc790\ub3d9\ud654\ud558\uba74 \uc77c\uad00\uc131\uc744 \uc720\uc9c0\ud558\uace0 \uc778\uac04 \uc624\ub958\uc758 \uac00\ub2a5\uc131\uc744 \uc904\uc5ec \ubcf4\uace0\uc11c\uc758 \uc2e0\ub8b0\uc131\uc744 \ub192\uc785\ub2c8\ub2e4.\n  \n- **\ub8e8\ud504 \ubc0f \uc0c1\ud0dc \ud655\uc778:** \uc6cc\ud06c\ud50c\ub85c\uc6b0\uac00 \ub9e4 \ubd84\ub9c8\ub2e4 \ub8e8\ud504\ub97c \ub3cc\uba70 \ubcf4\uace0\uc11c \uc0dd\uc131\uc774 \uc644\ub8cc\ub418\uc5c8\ub294\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4. \uc9c0\uc18d\uc801\uc778 \ubaa8\ub2c8\ud130\ub9c1\uc740 \ub300\uae30 \uacfc\uc815\uc744 \uc790\ub3d9\ud654\ud558\uc5ec SOC \ubd84\uc11d\uac00\ub4e4\uc774 \ub354 \uc911\uc694\ud55c \uc791\uc5c5\uc5d0 \uc9d1\uc911\ud560 \uc218 \uc788\uac8c \ud558\uba70, \ubcf4\uace0\uc11c\uac00 \uc900\ube44\ub418\uba74 \uc989\uc2dc \uc54c\ub9bc\uc744 \ubc1b\uc744 \uc218 \uc788\ub3c4\ub85d \ud569\ub2c8\ub2e4.\n  \n- **\ubcf4\uace0\uc11c \ub2e4\uc6b4\ub85c\ub4dc:** \ubcf4\uace0\uc11c\uac00 \uc900\ube44\ub418\uba74 Qualys\uc5d0\uc11c \ub2e4\uc6b4\ub85c\ub4dc\ud569\ub2c8\ub2e4. \uc790\ub3d9\ud654\ub41c \ub2e4\uc6b4\ub85c\ub4dc\ub294 \uc218\ub3d9 \uac1c\uc785 \uc5c6\uc774 \ud56d\uc0c1 \ucd5c\uc2e0 \ub370\uc774\ud130\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub3c4\ub85d \ud558\uc5ec \ud6a8\uc728\uc131\uc744 \ub192\uc785\ub2c8\ub2e4.\n  \n- **Slack\uc5d0 \uac8c\uc2dc:** \ucd5c\uc885 \ubcf4\uace0\uc11c\ub97c \uc9c0\uc815\ub41c Slack \ucc44\ub110\uc5d0 \uac8c\uc2dc\ud558\uc5ec \ube60\ub978 \uc811\uadfc\uc744 \uac00\ub2a5\ud558\uac8c \ud569\ub2c8\ub2e4. Slack\uacfc\uc758 \uc774 \ud1b5\ud569\uc740 \ud300\uc774 \ubcf4\uace0\uc11c\ub97c \uc989\uc2dc \uc811\uadfc\ud558\uace0 \uac80\ud1a0\ud560 \uc218 \uc788\ub3c4\ub85d \ud558\uc5ec \uc2e0\uc18d\ud55c \uc870\uce58\uc640 \uc758\uc0ac\uacb0\uc815\uc744 \ucd09\uc9c4\ud569\ub2c8\ub2e4.\n\n**\uc2dc\uc791\ud558\uae30:**\n\n- [Slack](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.slack/?utm_source=n8n_app&utm_medium=node_settings_modal-credential_link&utm_campaign=n8n-nodes-base.slack)\uacfc [Qualys](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/?utm_source=n8n_app&utm_medium=node_settings_modal-credential_link&utm_campaign=n8n-creds-base.qualysApi) \ud1b5\ud569\uc774 \uc81c\ub300\ub85c \uc124\uc815\ub418\uc5c8\ub294\uc9c0 \ud655\uc778\ud558\uc138\uc694.\n- \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub97c \uadc0\ud558\uc758 \ud2b9\uc815 \ubcf4\uace0\uc11c \uc694\uad6c\uc0ac\ud56d\uc5d0 \ub9de\uac8c \ucee4\uc2a4\ud130\ub9c8\uc774\uc988\ud558\uc138\uc694.\n\n**\ub3c4\uc6c0\uc774 \ud544\uc694\ud558\uc2e0\uac00\uc694?**\n\n- \ud3ec\ub7fc\uc5d0\uc11c \ud1a0\ub860\uc5d0 \ucc38\uc5ec\ud558\uac70\ub098 Discord\uc5d0\uc11c \ub9ac\uc18c\uc2a4\ub97c \ud655\uc778\ud558\uc138\uc694!\n\n\uc774 \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub97c \ubc30\ud3ec\ud558\uc5ec \ubcf4\uc548 \ubcf4\uace0\uc11c \uc0dd\uc131 \ud504\ub85c\uc138\uc2a4\ub97c \uac04\uc18c\ud654\ud558\uace0, \uc751\ub2f5 \uc2dc\uac04\uc744 \uac1c\uc120\ud558\uba70, \ubcf4\uc548 \uc6b4\uc601\uc758 \ud6a8\uc728\uc131\uc744 \ub192\uc774\uc138\uc694."
      },
      "typeVersion": 1
    },
    {
      "id": "32479679-791d-4c1d-b0c8-9102c3b879a5",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1420,
        700
      ],
      "parameters": {
        "color": 5,
        "width": 532.5097590794944,
        "height": 726.1144174692245,
        "content": "\uc774 \uc6cc\ud06c\ud50c\ub85c\uc6b0\ub294 \uc774 Slack \ubaa8\ub2ec\uc5d0 \uc758\ud574 \ud2b8\ub9ac\uac70\ub429\ub2c8\ub2e4. \ubcf4\uace0\uc11c \ud15c\ud50c\ub9bf \ub4dc\ub86d\ub2e4\uc6b4\uc740 \ub2e4\ub978 \uc11c\ube0c \uc6cc\ud06c\ud50c\ub85c\uc6b0\uc5d0 \uc758\ud574 \uad6c\ub3d9\ub429\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "0340d311-8b41-4c3e-a023-9ea50301247c",
      "name": "Demo Data",
      "type": "n8n-nodes-base.set",
      "position": [
        1020,
        500
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "47cd1502-3039-4661-a6b1-e20a74056550",
              "name": "report_title",
              "type": "string",
              "value": "Test Report"
            },
            {
              "id": "9a15f4db-f006-4ad8-a2c0-4002dd3e2655",
              "name": "output_format",
              "type": "string",
              "value": "pdf"
            },
            {
              "id": "13978e05-7e7f-42e9-8645-d28803db8cc9",
              "name": "template_name",
              "type": "string",
              "value": "Technical Report"
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "f007312a-ea15-4188-8461-2f69550d9214",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        820,
        700
      ],
      "parameters": {
        "color": 5,
        "width": 596.6847639718076,
        "height": 438.8903816479826,
        "content": "\ud83e\udd16 \uc774 \uc6cc\ud06c\ud50c\ub85c\ub97c \ud2b8\ub9ac\uac70\ud558\ub294 \uac83\uc740 Slack\uc5d0\uc11c \ubc31\uc2ac\ub798\uc2dc\ub97c \uc785\ub825\ud558\uace0 \uc624\ub978\ucabd \ubaa8\ub2ec\uc744 \ucc44\uc6b0\ub294 \ub9cc\ud07c \uc27d\uc2b5\ub2c8\ub2e4."
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Demo Data": {
      "main": [
        [
          {
            "node": "Global Variables",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Launch Report": {
      "main": [
        [
          {
            "node": "Convert Report Launch XML to JSON",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait 1 Minute": {
      "main": [
        [
          {
            "node": "Check Status of Report",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download Report": {
      "main": [
        [
          {
            "node": "Slack",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        null,
        [
          {
            "node": "Wait 1 Minute",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Report IDs": {
      "main": [
        [
          {
            "node": "Convert XML To JSON",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Global Variables": {
      "main": [
        [
          {
            "node": "Fetch Report IDs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert XML To JSON": {
      "main": [
        [
          {
            "node": "Launch Report",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Is Report Finished?": {
      "main": [
        [
          {
            "node": "Download Report",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Status of Report": {
      "main": [
        [
          {
            "node": "Convert Report List to JSON",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Execute Workflow Trigger": {
      "main": [
        [
          {
            "node": "Demo Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert Report List to JSON": {
      "main": [
        [
          {
            "node": "Is Report Finished?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert Report Launch XML to JSON": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}