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.
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.
| Node | Category | Type | Operation |
|---|---|---|---|
| Start VM Scan in Qualys | Web / API | HTTP Request | POST |
| Convert XML to JSON | Transform | Xml | See node parameters |
| Fetch Scan Results | Web / API | HTTP Request | GET |
| Loop Over Items | Routing | Loop Over Items | See node parameters |
| Wait 5 Min | Wait | Wait | See node parameters |
| Convert XML to JSON1 | Transform | Xml | See node parameters |
| Check if Scan Finished | Routing | If | See node parameters |
| Execute Workflow Trigger | Trigger | Execute Workflow Trigger | See node parameters |
| Post Receipt | Messaging | Slack | See node parameters |
| Confirm Waiting | Messaging | Slack | update |
| Delete Receipt | Messaging | Slack | delete |
| Demo Data | Transform | Edit Fields | See node parameters |
| Merge | Transform | Merge | See node parameters |
| Post Vulnerability Scan Summary to Slack | Messaging | Slack | See node parameters |
| When clicking "Test workflow" | Trigger | Manual Trigger | See node parameters |
| Begin Wait Loop | Routing | No Op | See node parameters |
| Merge1 | Transform | Merge | See node parameters |
| Save receipt message timestamp | Transform | Edit Fields | See node parameters |
| Global Variables & Slack Channel | Transform | Edit Fields | See node parameters |
Setup
- Download the JSON and import it into an isolated n8n instance. Leave the workflow inactive.
- Connect your own credentials through n8n’s credential store. Replace
REPLACE_WITH_*values with your resource identifiers. - Inspect API destinations, Code nodes, database queries, file paths, and outbound actions.
- 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
qualysApislackApi
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:
- Start VM Scan in Qualys: Initiates the scan with specified parameters.
- Convert XML to JSON: Converts the scan results from XML format to JSON.
- Fetch Scan Results: Retrieves scan results from Qualys.
- Check if Scan Finished: Verifies whether the scan is complete.
- Loop Mechanism: Handles the repetitive checking of the scan status.
- 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.