Add a custom widget to an issue layout ↗
You can add a custom or system widget to a custom issue layout by uploading an auto script and using it in a General Purpose Dynamic Section in your layout.
The following example shows how to add an Indicator Widget Bar. This custom widget script shows the severity of indicators in an issue, as a bar chart.
-
Add the Indicator Widget Bar script to Cortex XSIAM.
- Go to Investigation & Response → Automation → Scripts and upload the following script:
commonfields: id: ee3b9604-324b-4ab5-8164-15ddf6e428ab version: 49 name: IndicatorWidgetBar script: |- # Constants HIGH = 3 SUSPICIOUS = 2 LOW = 1 NONE = 0 indicators = [] scores = {HIGH: 0, SUSPICIOUS: 0, LOW: 0, NONE: 0} incident_id = demisto.incidents()[0].get('id') foundIndicators = demisto.executeCommand("findIndicators", {"query":'investigationIDs:{}'.format(incident_id), 'size':999999})[0]['Contents'] for indicator in foundIndicators: scores[indicator['score']] += 1 data = { "Type": 17, "ContentsFormat": "bar", "Contents": { "stats": [ { "data": [ scores[HIGH] ], "groups": None, "name": "high", "label": "incident.severity.high", "color": "rgb(255, 23, 68)" }, { "data": [ scores[SUSPICIOUS] ], "groups": None, "name": "medium", "label": "incident.severity.medium", "color": "rgb(255, 144, 0)" }, { "data": [ scores[LOW] ], "groups": None, "name": "low", "label": "incident.severity.low", "color": "rgb(0, 205, 51)" }, { "data": [ scores[NONE] ], "groups": None, "name": "unknown", "label": "incident.severity.unknown", "color": "rgb(197, 197, 197)" } ], "params": { "layout": "horizontal" } } } demisto.results(data) type: python tags: - dynamic-section enabled: true scripttarget: 0 subtype: python3 runonce: false dockerimage: demisto/python3:3.7.3.286 runas: DBotWeakRole- Click Save
- Go to Settings → Configurations → Object Setup → Issues → Layout Rules → New Rule.
- Enter a rule name, select the layout to use if the rule is met, and provide a description.
- Search for issues that match the criteria you want to use for the layout rule. For example, you can search for issues from a specific issue source.
- Click Create.
- Repeat as needed to create multiple rules.
- Click Save.