Skip to content
This repository was archived by the owner on Dec 5, 2025. It is now read-only.

Commit decd7ee

Browse files
authored
[client] add force_validation to send_stix2_bundle (#9760)
1 parent 24ea6d9 commit decd7ee

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

pycti/connector/opencti_connector_helper.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,13 +259,16 @@ def _data_handler(self, json_data) -> None:
259259
entity_id = event_data.get("entity_id")
260260
entity_type = event_data.get("entity_type")
261261
validation_mode = event_data.get("validation_mode", "workbench")
262+
force_validation = event_data.get("force_validation", False)
262263
# Set the API headers
263264
internal_data = json_data["internal"]
264265
work_id = internal_data["work_id"]
265266
draft_id = internal_data.get("draft_id", "")
266267
self.helper.work_id = work_id
267268

268269
self.helper.validation_mode = validation_mode
270+
self.helper.force_validation = force_validation
271+
269272
self._set_draft_id(draft_id)
270273

271274
self.helper.playbook = None
@@ -969,6 +972,7 @@ def __init__(self, config: Dict, playbook_compatible=False) -> None:
969972
)
970973
self.work_id = None
971974
self.validation_mode = "workbench"
975+
self.force_validation = False
972976
self.draft_id = None
973977
self.playbook = None
974978
self.enrichment_shared_organizations = None
@@ -1595,6 +1599,7 @@ def send_stix2_bundle(self, bundle: str, **kwargs) -> list:
15951599
update = kwargs.get("update", False)
15961600
event_version = kwargs.get("event_version", None)
15971601
bypass_validation = kwargs.get("bypass_validation", False)
1602+
force_validation = kwargs.get("force_validation", self.force_validation)
15981603
entity_id = kwargs.get("entity_id", None)
15991604
file_markings = kwargs.get("file_markings", None)
16001605
file_name = kwargs.get("file_name", None)
@@ -1657,7 +1662,11 @@ def send_stix2_bundle(self, bundle: str, **kwargs) -> list:
16571662
if not file_name and work_id:
16581663
file_name = f"{work_id}.json"
16591664

1660-
if self.connect_validate_before_import and not bypass_validation and file_name:
1665+
if (
1666+
(self.connect_validate_before_import or force_validation)
1667+
and not bypass_validation
1668+
and file_name
1669+
):
16611670
if validation_mode == "workbench":
16621671
self.api.upload_pending_file(
16631672
file_name=file_name,

0 commit comments

Comments
 (0)