Skip to content

Commit ba24c19

Browse files
committed
actually use alert_config
1 parent 0c8a6ce commit ba24c19

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

nightfall/alerts.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,10 @@ class AlertConfig:
6363
def as_dict(self):
6464
result = {}
6565
if self.slack:
66-
result["slack"] = {"target": self.slack.target}
66+
result["slack"] = self.slack.as_dict()
6767
if self.email:
68-
result["email"] = {"address": self.email.address}
68+
result["email"] = self.email.as_dict()
6969
if self.url:
70-
result["url"] = {"address": self.url.address}
70+
result["url"] = self.url.as_dict()
7171
return result
7272

nightfall/api.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,8 @@ def scan_text(self, texts: List[str], policy_uuids: List[str] = None, detection_
101101
policy["contextBytes"] = context_bytes
102102
if default_redaction_config:
103103
policy["defaultRedactionConfig"] = default_redaction_config.as_dict()
104+
if alert_config:
105+
policy["alertConfig"] = alert_config.as_dict()
104106

105107
request_body = {
106108
"payload": texts
@@ -175,7 +177,8 @@ def scan_file(self, location: str, webhook_url: Optional[str] = None, policy_uui
175177
detection_rules=detection_rules,
176178
detection_rule_uuids=detection_rule_uuids,
177179
webhook_url=webhook_url, policy_uuid=policy_uuid,
178-
request_metadata=request_metadata)
180+
request_metadata=request_metadata,
181+
alert_config=alert_config)
179182
_validate_response(response, 200)
180183
parsed_response = response.json()
181184

@@ -222,7 +225,8 @@ def _file_scan_finalize(self, session_id: str):
222225

223226
def _file_scan_scan(self, session_id: str, detection_rules: Optional[List[DetectionRule]] = None,
224227
detection_rule_uuids: Optional[List[str]] = None, webhook_url: Optional[str] = None,
225-
policy_uuid: Optional[str] = None, request_metadata: Optional[str] = None) -> requests.Response:
228+
policy_uuid: Optional[str] = None, request_metadata: Optional[str] = None,
229+
alert_config: Optional[AlertConfig] = None) -> requests.Response:
226230
if policy_uuid:
227231
data = {"policyUUID": policy_uuid}
228232
else:
@@ -231,6 +235,8 @@ def _file_scan_scan(self, session_id: str, detection_rules: Optional[List[Detect
231235
data["policy"]["detectionRuleUUIDs"] = detection_rule_uuids
232236
if detection_rules:
233237
data["policy"]["detectionRules"] = [d.as_dict() for d in detection_rules]
238+
if alert_config:
239+
data["policy"]["alertConfig"] = alert_config.as_dict()
234240

235241
if request_metadata:
236242
data["requestMetadata"] = request_metadata

0 commit comments

Comments
 (0)