← All N8N workflows
AI & researchExecute Workflow TriggerHTTP RequestIfManual TriggerMerge

Trigger scan on Qualys agent

Configured with Execute Workflow Trigger, HTTP Request, Slack, Loop Over Items, and additional nodes. Review the connections and setup before adapting this template.

Workflow preview
Web / APIStart VM Scan in QualysHTTP RequestTransformConvert XML to JSONXmlWeb / APIFetch Scan ResultsHTTP RequestRoutingLoop Over ItemsLoop Over ItemsWaitWait 5 MinWaitTransformConvert XML to JSON1XmlRoutingCheck if Scan FinishedIfTriggerExecute WorkflowTriggerExecute Workflow TriggerMessagingPost ReceiptSlackMessagingConfirm WaitingSlackMessagingDelete ReceiptSlackTransformDemo DataEdit FieldsTransformMergeMergeMessagingPost Vulnerability ScanSummary to SlackSlackTriggerWhen clicking "Testworkflow"Manual TriggerRoutingBegin Wait LoopNo OpTransformMerge1MergeTransformSave receipt messagetimestampEdit FieldsTransformGlobal Variables &Slack ChannelEdit Fields

Node categories in this workflow

  • Web / API
  • Transform
  • Routing
  • Wait
  • Trigger
  • Messaging

Icons describe general node roles, inferred from node types. Inspect the parameters for the configured action.

Drag to pan; use + and − to zoom. Reconstructed from the exported node positions; nothing runs here. Dashed lines represent non-main connections. Full node names and notes appear below.

How it works

The exported workflow contains the following configured nodes. Their connections are shown above; inspect the JSON for the complete logic, expressions, and external actions.

Workflow node names, types, and operations
NodeCategoryTypeOperation
Start VM Scan in QualysWeb / APIHTTP RequestPOST
Convert XML to JSONTransformXmlSee node parameters
Fetch Scan ResultsWeb / APIHTTP RequestGET
Loop Over ItemsRoutingLoop Over ItemsSee node parameters
Wait 5 MinWaitWaitSee node parameters
Convert XML to JSON1TransformXmlSee node parameters
Check if Scan FinishedRoutingIfSee node parameters
Execute Workflow TriggerTriggerExecute Workflow TriggerSee node parameters
Post ReceiptMessagingSlackSee node parameters
Confirm WaitingMessagingSlackupdate
Delete ReceiptMessagingSlackdelete
Demo DataTransformEdit FieldsSee node parameters
MergeTransformMergeSee node parameters
Post Vulnerability Scan Summary to SlackMessagingSlackSee node parameters
When clicking "Test workflow"TriggerManual TriggerSee node parameters
Begin Wait LoopRoutingNo OpSee node parameters
Merge1TransformMergeSee node parameters
Save receipt message timestampTransformEdit FieldsSee node parameters
Global Variables & Slack ChannelTransformEdit FieldsSee node parameters

Setup

  1. Download the JSON and import it into an isolated n8n instance. Leave the workflow inactive.
  2. Connect your own credentials through n8n’s credential store. Replace REPLACE_WITH_* values with your resource identifiers.
  3. Inspect API destinations, Code nodes, database queries, file paths, and outbound actions.
  4. Run with synthetic data and harmless destinations. Enable triggers only after checking the actual outputs.

Requirements

An n8n instance with the listed node types and compatible versions. Service-connected workflows may require accounts, credentials, or paid APIs.

Credential types declared in the source

  • qualysApi
  • slackApi

Workflow notes

Sticky Note2

For more information about the query that is being performed on the Qualys end, check out the Manage Scans Documentation. The results are returned in XML, which n8n can natively convert to JSON. This allows for easy checking of the status in n8n.

Trigger scan on Qualys agent

Trigger scan on Qualys agent

For more information on launching a scan, visit the Launch Documentation. The responses from Qualys are in XML, which n8n makes short work of.

Triggered from Slack Parent Workflow

Triggered from Slack Parent Workflow

The workflow begins with the execute workflow trigger, but the manual execution trigger was left in to test it manually. Make sure to turn of the execute workflow trigger when running it manually. Make sure to set your Slack Channel ID in the Edit node to ensure that the same channel is set across all slack nodes. From there, n8n sends a message to slack to let the user know that their request is being processed. The two threads are then merged to ensure only one thing is done at a time. Don't forget to set your Platform URL in the Global Variables. More information about that can be found at Qualys's Platform Documentation page.

n8n Loop Node

n8n Loop Node

The report objects are queried then loops every 5 min until the report returns a finished status. We have found that a report can take 40 minutes or more to complete. This is where n8n steps in and checks for us every 5 minutes. When the status of the scan changes to finished, the loop ends and the results are posted to Slack along with a link back to the scan results.

Upload Report to Slack

Upload Report to Slack

Once the scan is completed, the summary of the report and a link to report object is posted to Slack for easy retrieval. Additionally the original receipt message is deleted to ensure the new message generates a Slack notification.

Let user's know that it's time to wait

Let user's know that it's time to wait

Good customer service comes from communication. And that's what this section does, it alerts the user that the scan was triggered successfully, and now it is time to wait for it to finish. Feel free to change this message to better suit your needs. It will be deleted when the results are posted.

Qualys Vulnerability Trigger Scan Workflow

Qualys Vulnerability Trigger Scan Workflow

This workflow is triggered by a parent workflow initiated via a Slack shortcut. Upon activation, it collects input from a modal window in Slack and initiates a vulnerability scan using the Qualys API.

Key Features:

  • Trigger: Launched by a parent workflow through a Slack shortcut with modal input.
  • API Integration: Utilizes the Qualys API for vulnerability scanning.
  • Data Conversion: Converts XML scan results to JSON for further processing.
  • Loop Mechanism: Continuously checks the scan status until completion.
  • Slack Notifications: Posts scan summary and detailed results to a specified Slack channel.

Workflow Nodes:

  1. Start VM Scan in Qualys: Initiates the scan with specified parameters.
  2. Convert XML to JSON: Converts the scan results from XML format to JSON.
  3. Fetch Scan Results: Retrieves scan results from Qualys.
  4. Check if Scan Finished: Verifies whether the scan is complete.
  5. Loop Mechanism: Handles the repetitive checking of the scan status.
  6. Slack Notifications: Posts updates and results to Slack.

Relevant Links:

🔄The data input into this Modal will be processed in this workflow

🔄The data input into this Modal will be processed in this workflow

🤖 Triggering this workflow is as easy as typing a backslash in Slack and filling out the modal on the right

🤖 Triggering this workflow is as easy as typing a backslash in Slack and filling out the modal on the right

Trigger scan on Qualys agent

Trigger scan on Qualys agent

Purpose and structure

This folder contains the Trigger scan on Qualys agent workflow. Its executable nodes use executeWorkflowTrigger, httpRequest, if, manualTrigger, merge, noOp, set, slack, splitInBatches, wait, xml. The table and connection map below are derived from the JSON, not an inferred guarantee of behavior.

Setup

Import inactive. Configure your own credentials and replace REPLACE_WITH_* values. Review external destinations and Code nodes before running.

Entry points

Execute Workflow Trigger, When clicking "Test workflow"

Verification

Sanitized source candidate; not runtime-tested. This overview is generated from node metadata. Read the folder README for the connection map, credential types, and license.

Attribution

https://github.com/Zie619/n8n-workflows/blob/94007c1445d9258a7da116646b79473e7c7c3282/workflows/Wait/0620_Wait_Slack_Automate_Webhook.json MIT; preserve source notices.

More in AI & research