taegis-sdk-python 1.6.13__tar.gz → 1.6.15__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/PKG-INFO +1 -1
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/_version.py +1 -1
- taegis_sdk_python-1.6.15/taegis_sdk_python/middlewares/curl/__init__.py +0 -0
- taegis_sdk_python-1.6.15/taegis_sdk_python/middlewares/curl/_default.py +60 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts/mutations.py +106 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts/queries.py +158 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts/subscriptions.py +24 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations2/types.py +100 -25
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants/mutations.py +1 -1
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants4/types.py +3 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_score/types.py +3 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trigger_action/mutations.py +20 -5
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trigger_action/queries.py +50 -12
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trigger_action/types.py +113 -5
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trip/queries.py +22 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trip/types.py +13 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/.gitignore +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/LICENSE +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/README.md +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/pyproject.toml +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/_consts.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/authentication.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/alerts/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/alerts/federated_search.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/alerts/search.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/cases/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/cases/federated_search.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/cases/search.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/events/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/events/search.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/investigations/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/investigations/federated_search.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/investigations/search.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/sharelinks/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/sharelinks/create.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/commons/sharelinks/unfurl.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/config.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/errors.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/middlewares/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/middlewares/logging/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/middlewares/logging/_default.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/middlewares/retry/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/middlewares/retry/_default.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/middlewares/utils.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/service_core.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/access_points/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/access_points/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/access_points/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/access_points/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/access_points/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/agent/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/agent/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/agent/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/agent/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/agent/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts_history/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts_history/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts_history/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts_history/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts_history/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets2/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets2/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets2/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets2/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/assets2/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/audits/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/audits/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/audits/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/audits/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/audits/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/authz/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/authz/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/authz/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/authz/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/authz/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/byoti/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/byoti/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/byoti/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/byoti/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/byoti/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/clients/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/clients/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/clients/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/clients/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/clients/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/collector/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/collector/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/collector/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/collector/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/collector/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/comments/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/comments/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/comments/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/comments/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/comments/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/contracted_endpoint/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/contracted_endpoint/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/contracted_endpoint/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/contracted_endpoint/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/contracted_endpoint/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/cql_metadata/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/cql_metadata/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/cql_metadata/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/cql_metadata/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/cql_metadata/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/datasources/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/datasources/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/datasources/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/datasources/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/datasources/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/detector_registry/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/detector_registry/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/detector_registry/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/detector_registry/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/detector_registry/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_command_manager/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_command_manager/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_command_manager/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_command_manager/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_command_manager/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_management_service/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_management_service/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_management_service/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_management_service/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/endpoint_management_service/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/entity_context/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/entity_context/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/entity_context/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/entity_context/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/entity_context/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/escalation_policies/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/escalation_policies/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/escalation_policies/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/escalation_policies/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/escalation_policies/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/event_search/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/event_search/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/event_search/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/event_search/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/event_search/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/events/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/events/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/events/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/events/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/events/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/exports/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/exports/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/exports/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/exports/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/exports/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/fast_ioc/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/fast_ioc/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/fast_ioc/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/fast_ioc/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/fast_ioc/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/file_info/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/file_info/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/file_info/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/file_info/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/file_info/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ingest_stats/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ingest_stats/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ingest_stats/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ingest_stats/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ingest_stats/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations2/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations2/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations2/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/investigations2/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/isensor/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/isensor/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/isensor/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/isensor/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/isensor/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/llm_service/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/llm_service/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/llm_service/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/llm_service/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/llm_service/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/mitre_attack_info/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/mitre_attack_info/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/mitre_attack_info/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/mitre_attack_info/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/mitre_attack_info/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_context/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_context/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_context/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_context/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_context/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_ioc/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_ioc/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_ioc/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_ioc/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/multi_tenant_ioc/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/nl_search/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/nl_search/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/nl_search/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/nl_search/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/nl_search/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notebooks/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notebooks/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notebooks/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notebooks/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notebooks/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications2/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications2/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications2/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications2/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/notifications2/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/preferences/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/preferences/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/preferences/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/preferences/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/preferences/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/process_trees/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/process_trees/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/process_trees/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/process_trees/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/process_trees/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ql_schemas/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ql_schemas/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ql_schemas/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ql_schemas/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/ql_schemas/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/queries/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/queries/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/queries/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/queries/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/queries/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/roadrunner/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/roadrunner/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/roadrunner/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/roadrunner/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/roadrunner/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/rules/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/rules/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/rules/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/rules/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/rules/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/sharelinks/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/sharelinks/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/sharelinks/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/sharelinks/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/sharelinks/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/subjects/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/subjects/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/subjects/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/subjects/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/subjects/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenant_profiles/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenant_profiles/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenant_profiles/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenant_profiles/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenant_profiles/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants4/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants4/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants4/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants4/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_publications/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_publications/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_publications/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_publications/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_publications/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_score/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_score/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_score/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/threat_score/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trigger_action/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trigger_action/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trip/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trip/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/trip/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/users/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/users/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/users/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/users/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/users/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/vdr/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/vdr/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/vdr/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/vdr/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/vdr/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/xdr_central_connector/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/xdr_central_connector/mutations.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/xdr_central_connector/queries.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/xdr_central_connector/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/xdr_central_connector/types.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/templates/__init__.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/templates/_jinja2.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/tokens.py +0 -0
- {taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: taegis-sdk-python
|
|
3
|
-
Version: 1.6.
|
|
3
|
+
Version: 1.6.15
|
|
4
4
|
Summary: Taegis Python SDK
|
|
5
5
|
Project-URL: Homepage, https://github.com/secureworks/taegis-sdk-python
|
|
6
6
|
Project-URL: Bug Reports, https://github.com/secureworks/taegis-sdk-python/issues
|
|
File without changes
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"""Logs a curl command representation that makes the same HTTP request as the provided request"""
|
|
2
|
+
|
|
3
|
+
import logging
|
|
4
|
+
from shlex import quote
|
|
5
|
+
|
|
6
|
+
from aiohttp import (
|
|
7
|
+
BytesPayload,
|
|
8
|
+
ClientHandlerType,
|
|
9
|
+
ClientRequest,
|
|
10
|
+
ClientResponse,
|
|
11
|
+
)
|
|
12
|
+
|
|
13
|
+
from taegis_sdk_python.middlewares.utils import scrub_dict
|
|
14
|
+
|
|
15
|
+
log = logging.getLogger(__name__)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
async def to_curl(request: ClientRequest, handler: ClientHandlerType) -> ClientResponse:
|
|
19
|
+
"""
|
|
20
|
+
Logs a curl command representation that makes the same HTTP request as
|
|
21
|
+
the provided request object.
|
|
22
|
+
"""
|
|
23
|
+
command = []
|
|
24
|
+
|
|
25
|
+
inferred_method = "GET"
|
|
26
|
+
if request.body is not None:
|
|
27
|
+
inferred_method = "POST"
|
|
28
|
+
if request.method != inferred_method:
|
|
29
|
+
command.append("-X " + quote(request.method))
|
|
30
|
+
|
|
31
|
+
headers = scrub_dict(request.headers)
|
|
32
|
+
|
|
33
|
+
for k, v in headers.items():
|
|
34
|
+
if v:
|
|
35
|
+
command.append("-H " + quote(f"{k}: {v}"))
|
|
36
|
+
else:
|
|
37
|
+
# -H 'Accept:' disables sending the Accept header, use semicolon to send
|
|
38
|
+
# empty header
|
|
39
|
+
command.append("-H " + quote(f"{k};"))
|
|
40
|
+
|
|
41
|
+
if body := request.body:
|
|
42
|
+
if isinstance(body, (bytes, BytesPayload)):
|
|
43
|
+
body = body.decode("utf-8")
|
|
44
|
+
else:
|
|
45
|
+
log.error(f"Unsupported body type for curl middleware: {type(body)}, request.body must be bytes or BytesPayload")
|
|
46
|
+
return await handler(request)
|
|
47
|
+
|
|
48
|
+
data_type = "-d"
|
|
49
|
+
if body.startswith("@"): # -d @filename causes curl to read from file
|
|
50
|
+
data_type = "--data-raw"
|
|
51
|
+
command.append(data_type + " " + quote(body))
|
|
52
|
+
|
|
53
|
+
command.append(quote(str(request.url)))
|
|
54
|
+
|
|
55
|
+
joiner = " "
|
|
56
|
+
if len(command) > 3:
|
|
57
|
+
joiner = " \\\n "
|
|
58
|
+
log.info(f"curl {joiner.join(command)}")
|
|
59
|
+
|
|
60
|
+
return await handler(request)
|
{taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts/mutations.py
RENAMED
|
@@ -165,3 +165,109 @@ class TaegisSDKAlertsMutation:
|
|
|
165
165
|
raise GraphQLNoRowsInResultSetError(
|
|
166
166
|
"for mutation alertsServiceUpdateThreatScoreV2"
|
|
167
167
|
)
|
|
168
|
+
|
|
169
|
+
def detection_update_investigation_info(
|
|
170
|
+
self, in_: Optional[UpdateInvestigationRequestInput] = None
|
|
171
|
+
) -> UpdateInvestigationResponse:
|
|
172
|
+
"""No developer notes."""
|
|
173
|
+
endpoint = "detectionUpdateInvestigationInfo"
|
|
174
|
+
|
|
175
|
+
result = self.service.execute_mutation(
|
|
176
|
+
endpoint=endpoint,
|
|
177
|
+
variables={
|
|
178
|
+
"in": prepare_input(in_),
|
|
179
|
+
},
|
|
180
|
+
output=build_output_string(
|
|
181
|
+
UpdateInvestigationResponse,
|
|
182
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
183
|
+
),
|
|
184
|
+
)
|
|
185
|
+
if result.get(endpoint) is not None:
|
|
186
|
+
return UpdateInvestigationResponse.from_dict(result.get(endpoint))
|
|
187
|
+
raise GraphQLNoRowsInResultSetError(
|
|
188
|
+
"for mutation detectionUpdateInvestigationInfo"
|
|
189
|
+
)
|
|
190
|
+
|
|
191
|
+
def detection_update_resolution_info(
|
|
192
|
+
self, in_: Optional[UpdateResolutionRequestInput] = None
|
|
193
|
+
) -> UpdateResolutionResponse:
|
|
194
|
+
"""Add a resolution or modify an existing resolution for a give list of alert IDs."""
|
|
195
|
+
endpoint = "detectionUpdateResolutionInfo"
|
|
196
|
+
|
|
197
|
+
result = self.service.execute_mutation(
|
|
198
|
+
endpoint=endpoint,
|
|
199
|
+
variables={
|
|
200
|
+
"in": prepare_input(in_),
|
|
201
|
+
},
|
|
202
|
+
output=build_output_string(
|
|
203
|
+
UpdateResolutionResponse,
|
|
204
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
205
|
+
),
|
|
206
|
+
)
|
|
207
|
+
if result.get(endpoint) is not None:
|
|
208
|
+
return UpdateResolutionResponse.from_dict(result.get(endpoint))
|
|
209
|
+
raise GraphQLNoRowsInResultSetError(
|
|
210
|
+
"for mutation detectionUpdateResolutionInfo"
|
|
211
|
+
)
|
|
212
|
+
|
|
213
|
+
def detection_bulk_investigations_processor(
|
|
214
|
+
self, in_: Optional[BulkInvestigationsRequestInput] = None
|
|
215
|
+
) -> BulkInvestigationsResponse:
|
|
216
|
+
"""Bulk add alerts to an existing investigation by providing either a query or list of alert IDs. If a query is provided, then all alerts matching the query will be added to the investigation."""
|
|
217
|
+
endpoint = "detectionBulkInvestigationsProcessor"
|
|
218
|
+
|
|
219
|
+
result = self.service.execute_mutation(
|
|
220
|
+
endpoint=endpoint,
|
|
221
|
+
variables={
|
|
222
|
+
"in": prepare_input(in_),
|
|
223
|
+
},
|
|
224
|
+
output=build_output_string(
|
|
225
|
+
BulkInvestigationsResponse,
|
|
226
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
227
|
+
),
|
|
228
|
+
)
|
|
229
|
+
if result.get(endpoint) is not None:
|
|
230
|
+
return BulkInvestigationsResponse.from_dict(result.get(endpoint))
|
|
231
|
+
raise GraphQLNoRowsInResultSetError(
|
|
232
|
+
"for mutation detectionBulkInvestigationsProcessor"
|
|
233
|
+
)
|
|
234
|
+
|
|
235
|
+
def detection_update_threat_score(
|
|
236
|
+
self, in_: UpdateThreatScoreRequestInput
|
|
237
|
+
) -> UpdateThreatScoreResponse:
|
|
238
|
+
"""Update threat score for a given list of alert IDs."""
|
|
239
|
+
endpoint = "detectionUpdateThreatScore"
|
|
240
|
+
|
|
241
|
+
result = self.service.execute_mutation(
|
|
242
|
+
endpoint=endpoint,
|
|
243
|
+
variables={
|
|
244
|
+
"in": prepare_input(in_),
|
|
245
|
+
},
|
|
246
|
+
output=build_output_string(
|
|
247
|
+
UpdateThreatScoreResponse,
|
|
248
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
249
|
+
),
|
|
250
|
+
)
|
|
251
|
+
if result.get(endpoint) is not None:
|
|
252
|
+
return UpdateThreatScoreResponse.from_dict(result.get(endpoint))
|
|
253
|
+
raise GraphQLNoRowsInResultSetError("for mutation detectionUpdateThreatScore")
|
|
254
|
+
|
|
255
|
+
def detection_update_threat_score_v2(
|
|
256
|
+
self, in_: UpdateThreatScoreV2RequestInput
|
|
257
|
+
) -> UpdateThreatScoreResponse:
|
|
258
|
+
"""Update threat score v2 for a given list of alert IDs."""
|
|
259
|
+
endpoint = "detectionUpdateThreatScoreV2"
|
|
260
|
+
|
|
261
|
+
result = self.service.execute_mutation(
|
|
262
|
+
endpoint=endpoint,
|
|
263
|
+
variables={
|
|
264
|
+
"in": prepare_input(in_),
|
|
265
|
+
},
|
|
266
|
+
output=build_output_string(
|
|
267
|
+
UpdateThreatScoreResponse,
|
|
268
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
269
|
+
),
|
|
270
|
+
)
|
|
271
|
+
if result.get(endpoint) is not None:
|
|
272
|
+
return UpdateThreatScoreResponse.from_dict(result.get(endpoint))
|
|
273
|
+
raise GraphQLNoRowsInResultSetError("for mutation detectionUpdateThreatScoreV2")
|
{taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/alerts/queries.py
RENAMED
|
@@ -199,3 +199,161 @@ class TaegisSDKAlertsQuery:
|
|
|
199
199
|
raise GraphQLNoRowsInResultSetError(
|
|
200
200
|
"for query alertsServiceAggregateAlertsBySeverity"
|
|
201
201
|
)
|
|
202
|
+
|
|
203
|
+
def detection_retrieve_by_id(
|
|
204
|
+
self, in_: Optional[GetByIDRequestInput] = None
|
|
205
|
+
) -> AlertsResponse:
|
|
206
|
+
"""Provide a list of Alert IDs to retrieve each alert's detail."""
|
|
207
|
+
endpoint = "detectionRetrieveById"
|
|
208
|
+
|
|
209
|
+
result = self.service.execute_query(
|
|
210
|
+
endpoint=endpoint,
|
|
211
|
+
variables={
|
|
212
|
+
"in": prepare_input(in_),
|
|
213
|
+
},
|
|
214
|
+
output=build_output_string(
|
|
215
|
+
AlertsResponse,
|
|
216
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
217
|
+
),
|
|
218
|
+
)
|
|
219
|
+
if result.get(endpoint) is not None:
|
|
220
|
+
return AlertsResponse.from_dict(result.get(endpoint))
|
|
221
|
+
raise GraphQLNoRowsInResultSetError("for query detectionRetrieveById")
|
|
222
|
+
|
|
223
|
+
def detection_retrieve_by_host(
|
|
224
|
+
self, in_: Optional[GetByIDRequestInput] = None
|
|
225
|
+
) -> AlertsResponse:
|
|
226
|
+
"""Provide a list of Host IDs to retrieve alert details about each alert that contains those hosts."""
|
|
227
|
+
endpoint = "detectionRetrieveByHost"
|
|
228
|
+
|
|
229
|
+
result = self.service.execute_query(
|
|
230
|
+
endpoint=endpoint,
|
|
231
|
+
variables={
|
|
232
|
+
"in": prepare_input(in_),
|
|
233
|
+
},
|
|
234
|
+
output=build_output_string(
|
|
235
|
+
AlertsResponse,
|
|
236
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
237
|
+
),
|
|
238
|
+
)
|
|
239
|
+
if result.get(endpoint) is not None:
|
|
240
|
+
return AlertsResponse.from_dict(result.get(endpoint))
|
|
241
|
+
raise GraphQLNoRowsInResultSetError("for query detectionRetrieveByHost")
|
|
242
|
+
|
|
243
|
+
def detection_retrieve_by_entity(
|
|
244
|
+
self, in_: Optional[GetByIDRequestInput] = None
|
|
245
|
+
) -> AlertsResponse:
|
|
246
|
+
"""Provide a list of entities to retrieve alert details about each alert that contains those entities."""
|
|
247
|
+
endpoint = "detectionRetrieveByEntity"
|
|
248
|
+
|
|
249
|
+
result = self.service.execute_query(
|
|
250
|
+
endpoint=endpoint,
|
|
251
|
+
variables={
|
|
252
|
+
"in": prepare_input(in_),
|
|
253
|
+
},
|
|
254
|
+
output=build_output_string(
|
|
255
|
+
AlertsResponse,
|
|
256
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
257
|
+
),
|
|
258
|
+
)
|
|
259
|
+
if result.get(endpoint) is not None:
|
|
260
|
+
return AlertsResponse.from_dict(result.get(endpoint))
|
|
261
|
+
raise GraphQLNoRowsInResultSetError("for query detectionRetrieveByEntity")
|
|
262
|
+
|
|
263
|
+
def detection_retrieve_by_group_key(
|
|
264
|
+
self, in_: Optional[GetByIDRequestInput] = None
|
|
265
|
+
) -> AlertsResponse:
|
|
266
|
+
"""Provide a list of entities to retrieve alert details about each alert that contains the group_key. This is used by the service to aid in alert deduplication. This would not commonly be used by a tenant of XDR."""
|
|
267
|
+
endpoint = "detectionRetrieveByGroupKey"
|
|
268
|
+
|
|
269
|
+
result = self.service.execute_query(
|
|
270
|
+
endpoint=endpoint,
|
|
271
|
+
variables={
|
|
272
|
+
"in": prepare_input(in_),
|
|
273
|
+
},
|
|
274
|
+
output=build_output_string(
|
|
275
|
+
AlertsResponse,
|
|
276
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
277
|
+
),
|
|
278
|
+
)
|
|
279
|
+
if result.get(endpoint) is not None:
|
|
280
|
+
return AlertsResponse.from_dict(result.get(endpoint))
|
|
281
|
+
raise GraphQLNoRowsInResultSetError("for query detectionRetrieveByGroupKey")
|
|
282
|
+
|
|
283
|
+
def detection_count_by_tenant(
|
|
284
|
+
self, in_: AlertsCountByTenantInput
|
|
285
|
+
) -> AlertsCountByTenantResponse:
|
|
286
|
+
"""Returns the count of alerts per tenant. Allows a CQL query, but any aggregation or pipe will be ignored."""
|
|
287
|
+
endpoint = "detectionCountByTenant"
|
|
288
|
+
|
|
289
|
+
result = self.service.execute_query(
|
|
290
|
+
endpoint=endpoint,
|
|
291
|
+
variables={
|
|
292
|
+
"in": prepare_input(in_),
|
|
293
|
+
},
|
|
294
|
+
output=build_output_string(
|
|
295
|
+
AlertsCountByTenantResponse,
|
|
296
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
297
|
+
),
|
|
298
|
+
)
|
|
299
|
+
if result.get(endpoint) is not None:
|
|
300
|
+
return AlertsCountByTenantResponse.from_dict(result.get(endpoint))
|
|
301
|
+
raise GraphQLNoRowsInResultSetError("for query detectionCountByTenant")
|
|
302
|
+
|
|
303
|
+
def detection_search(
|
|
304
|
+
self, in_: Optional[SearchRequestInput] = None
|
|
305
|
+
) -> AlertsResponse:
|
|
306
|
+
"""Search alerts using Query Language. This is the same query language provided in Advanced Search page in Taegis XDR."""
|
|
307
|
+
endpoint = "detectionSearch"
|
|
308
|
+
|
|
309
|
+
result = self.service.execute_query(
|
|
310
|
+
endpoint=endpoint,
|
|
311
|
+
variables={
|
|
312
|
+
"in": prepare_input(in_),
|
|
313
|
+
},
|
|
314
|
+
output=build_output_string(
|
|
315
|
+
AlertsResponse,
|
|
316
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
317
|
+
),
|
|
318
|
+
)
|
|
319
|
+
if result.get(endpoint) is not None:
|
|
320
|
+
return AlertsResponse.from_dict(result.get(endpoint))
|
|
321
|
+
raise GraphQLNoRowsInResultSetError("for query detectionSearch")
|
|
322
|
+
|
|
323
|
+
def detection_poll(self, in_: Optional[PollRequestInput] = None) -> AlertsResponse:
|
|
324
|
+
"""Poll for results for a specific `search_id`."""
|
|
325
|
+
endpoint = "detectionPoll"
|
|
326
|
+
|
|
327
|
+
result = self.service.execute_query(
|
|
328
|
+
endpoint=endpoint,
|
|
329
|
+
variables={
|
|
330
|
+
"in": prepare_input(in_),
|
|
331
|
+
},
|
|
332
|
+
output=build_output_string(
|
|
333
|
+
AlertsResponse,
|
|
334
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
335
|
+
),
|
|
336
|
+
)
|
|
337
|
+
if result.get(endpoint) is not None:
|
|
338
|
+
return AlertsResponse.from_dict(result.get(endpoint))
|
|
339
|
+
raise GraphQLNoRowsInResultSetError("for query detectionPoll")
|
|
340
|
+
|
|
341
|
+
def detection_aggregates_by_severity(
|
|
342
|
+
self, in_: Optional[AggregateAlertsBySeverityInputInput] = None
|
|
343
|
+
) -> AlertsAggregateResponse:
|
|
344
|
+
"""Pull alert severity aggregates based on `group_by` parameters: domain, watchlist, hostname, detector, user."""
|
|
345
|
+
endpoint = "detectionAggregatesBySeverity"
|
|
346
|
+
|
|
347
|
+
result = self.service.execute_query(
|
|
348
|
+
endpoint=endpoint,
|
|
349
|
+
variables={
|
|
350
|
+
"in": prepare_input(in_),
|
|
351
|
+
},
|
|
352
|
+
output=build_output_string(
|
|
353
|
+
AlertsAggregateResponse,
|
|
354
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
355
|
+
),
|
|
356
|
+
)
|
|
357
|
+
if result.get(endpoint) is not None:
|
|
358
|
+
return AlertsAggregateResponse.from_dict(result.get(endpoint))
|
|
359
|
+
raise GraphQLNoRowsInResultSetError("for query detectionAggregatesBySeverity")
|
|
@@ -55,3 +55,27 @@ class TaegisSDKAlertsSubscription:
|
|
|
55
55
|
raise GraphQLNoRowsInResultSetError(
|
|
56
56
|
"for subscription alertsServiceBulkResolutionProcessor"
|
|
57
57
|
)
|
|
58
|
+
|
|
59
|
+
def detection_bulk_resolution_processor(
|
|
60
|
+
self, in_: Optional[BulkResolutionRequestInput] = None
|
|
61
|
+
) -> List[BulkResolutionResponse]:
|
|
62
|
+
"""Add a resolution or modify an existing resolution for multiple alerts selected with a CQL query."""
|
|
63
|
+
endpoint = "detectionBulkResolutionProcessor"
|
|
64
|
+
|
|
65
|
+
result = self.service.execute_subscription(
|
|
66
|
+
endpoint=endpoint,
|
|
67
|
+
variables={
|
|
68
|
+
"in": prepare_input(in_),
|
|
69
|
+
},
|
|
70
|
+
output=build_output_string(
|
|
71
|
+
BulkResolutionResponse,
|
|
72
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
73
|
+
),
|
|
74
|
+
)
|
|
75
|
+
if any(r.get(endpoint) for r in result):
|
|
76
|
+
return BulkResolutionResponse.schema().load(
|
|
77
|
+
[r.get(endpoint, {}) or {} for r in result], many=True
|
|
78
|
+
)
|
|
79
|
+
raise GraphQLNoRowsInResultSetError(
|
|
80
|
+
"for subscription detectionBulkResolutionProcessor"
|
|
81
|
+
)
|
|
@@ -223,6 +223,25 @@ class CaseLink:
|
|
|
223
223
|
)
|
|
224
224
|
|
|
225
225
|
|
|
226
|
+
@dataclass_json
|
|
227
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
228
|
+
class PageInfo:
|
|
229
|
+
"""PageInfo."""
|
|
230
|
+
|
|
231
|
+
start_cursor: Optional[str] = field(
|
|
232
|
+
default=None, metadata=config(field_name="startCursor")
|
|
233
|
+
)
|
|
234
|
+
end_cursor: Optional[str] = field(
|
|
235
|
+
default=None, metadata=config(field_name="endCursor")
|
|
236
|
+
)
|
|
237
|
+
has_next_page: Optional[bool] = field(
|
|
238
|
+
default=None, metadata=config(field_name="hasNextPage")
|
|
239
|
+
)
|
|
240
|
+
has_previous_page: Optional[bool] = field(
|
|
241
|
+
default=None, metadata=config(field_name="hasPreviousPage")
|
|
242
|
+
)
|
|
243
|
+
|
|
244
|
+
|
|
226
245
|
@dataclass_json
|
|
227
246
|
@dataclass(order=True, eq=True, frozen=True)
|
|
228
247
|
class AddEvidenceToCaseResult:
|
|
@@ -460,6 +479,21 @@ class TDRUser:
|
|
|
460
479
|
id: Optional[str] = field(default=None, metadata=config(field_name="id"))
|
|
461
480
|
|
|
462
481
|
|
|
482
|
+
@dataclass_json
|
|
483
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
484
|
+
class IncidentAdvisor:
|
|
485
|
+
"""IncidentAdvisor."""
|
|
486
|
+
|
|
487
|
+
id: Optional[str] = field(default=None, metadata=config(field_name="id"))
|
|
488
|
+
email: Optional[str] = field(default=None, metadata=config(field_name="email"))
|
|
489
|
+
given_name: Optional[str] = field(
|
|
490
|
+
default=None, metadata=config(field_name="givenName")
|
|
491
|
+
)
|
|
492
|
+
family_name: Optional[str] = field(
|
|
493
|
+
default=None, metadata=config(field_name="familyName")
|
|
494
|
+
)
|
|
495
|
+
|
|
496
|
+
|
|
463
497
|
@dataclass_json
|
|
464
498
|
@dataclass(order=True, eq=True, frozen=True)
|
|
465
499
|
class InvestigationsAggregation:
|
|
@@ -881,15 +915,22 @@ class CaseArguments:
|
|
|
881
915
|
|
|
882
916
|
@dataclass_json
|
|
883
917
|
@dataclass(order=True, eq=True, frozen=True)
|
|
884
|
-
class
|
|
885
|
-
"""
|
|
918
|
+
class OffsetPagination:
|
|
919
|
+
"""OffsetPagination."""
|
|
886
920
|
|
|
887
|
-
query: Optional[str] = field(default=None, metadata=config(field_name="query"))
|
|
888
921
|
page: Optional[int] = field(default=None, metadata=config(field_name="page"))
|
|
889
922
|
per_page: Optional[int] = field(default=None, metadata=config(field_name="perPage"))
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
923
|
+
|
|
924
|
+
|
|
925
|
+
@dataclass_json
|
|
926
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
927
|
+
class CursorPagination:
|
|
928
|
+
"""CursorPagination."""
|
|
929
|
+
|
|
930
|
+
first: Optional[int] = field(default=None, metadata=config(field_name="first"))
|
|
931
|
+
after: Optional[str] = field(default=None, metadata=config(field_name="after"))
|
|
932
|
+
last: Optional[int] = field(default=None, metadata=config(field_name="last"))
|
|
933
|
+
before: Optional[str] = field(default=None, metadata=config(field_name="before"))
|
|
893
934
|
|
|
894
935
|
|
|
895
936
|
@dataclass_json
|
|
@@ -939,6 +980,7 @@ class CasePrimaryStatusesArguments:
|
|
|
939
980
|
transition_from_id: Optional[str] = field(
|
|
940
981
|
default=None, metadata=config(field_name="transitionFromId")
|
|
941
982
|
)
|
|
983
|
+
case_id: Optional[str] = field(default=None, metadata=config(field_name="caseId"))
|
|
942
984
|
|
|
943
985
|
|
|
944
986
|
@dataclass_json
|
|
@@ -2061,8 +2103,8 @@ class CreateCaseInput:
|
|
|
2061
2103
|
host_ids: Optional[List[str]] = field(
|
|
2062
2104
|
default=None, metadata=config(field_name="hostIds")
|
|
2063
2105
|
)
|
|
2064
|
-
|
|
2065
|
-
default=None, metadata=config(field_name="
|
|
2106
|
+
incident_advisor_id: Optional[str] = field(
|
|
2107
|
+
default=None, metadata=config(field_name="incidentAdvisorId")
|
|
2066
2108
|
)
|
|
2067
2109
|
source_id: Optional[str] = field(
|
|
2068
2110
|
default=None, metadata=config(field_name="sourceId")
|
|
@@ -2114,8 +2156,8 @@ class UpdateCaseInput:
|
|
|
2114
2156
|
assignee_id: Optional[str] = field(
|
|
2115
2157
|
default=None, metadata=config(field_name="assigneeId")
|
|
2116
2158
|
)
|
|
2117
|
-
|
|
2118
|
-
default=None, metadata=config(field_name="
|
|
2159
|
+
incident_advisor_id: Optional[str] = field(
|
|
2160
|
+
default=None, metadata=config(field_name="incidentAdvisorId")
|
|
2119
2161
|
)
|
|
2120
2162
|
close_reason: Optional[str] = field(
|
|
2121
2163
|
default=None, metadata=config(field_name="closeReason")
|
|
@@ -2199,6 +2241,19 @@ class UpdateCaseTemplateInput:
|
|
|
2199
2241
|
)
|
|
2200
2242
|
|
|
2201
2243
|
|
|
2244
|
+
@dataclass_json
|
|
2245
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
2246
|
+
class CasesPagination:
|
|
2247
|
+
"""CasesPagination."""
|
|
2248
|
+
|
|
2249
|
+
offset: Optional[OffsetPagination] = field(
|
|
2250
|
+
default=None, metadata=config(field_name="offset")
|
|
2251
|
+
)
|
|
2252
|
+
cursor: Optional[CursorPagination] = field(
|
|
2253
|
+
default=None, metadata=config(field_name="cursor")
|
|
2254
|
+
)
|
|
2255
|
+
|
|
2256
|
+
|
|
2202
2257
|
@dataclass_json
|
|
2203
2258
|
@dataclass(order=True, eq=True, frozen=True)
|
|
2204
2259
|
class CreateCaseRuleInput:
|
|
@@ -3487,8 +3542,8 @@ class Case:
|
|
|
3487
3542
|
default=None, metadata=config(field_name="riskScore")
|
|
3488
3543
|
)
|
|
3489
3544
|
rule_id: Optional[str] = field(default=None, metadata=config(field_name="ruleId"))
|
|
3490
|
-
|
|
3491
|
-
default=None, metadata=config(field_name="
|
|
3545
|
+
incident_advisor_id: Optional[str] = field(
|
|
3546
|
+
default=None, metadata=config(field_name="incidentAdvisorId")
|
|
3492
3547
|
)
|
|
3493
3548
|
is_created_by_partner: Optional[bool] = field(
|
|
3494
3549
|
default=None, metadata=config(field_name="isCreatedByPartner")
|
|
@@ -3550,6 +3605,9 @@ class Case:
|
|
|
3550
3605
|
field_name="managedBy",
|
|
3551
3606
|
),
|
|
3552
3607
|
)
|
|
3608
|
+
incident_advisor: Optional[IncidentAdvisor] = field(
|
|
3609
|
+
default=None, metadata=config(field_name="incidentAdvisor")
|
|
3610
|
+
)
|
|
3553
3611
|
|
|
3554
3612
|
|
|
3555
3613
|
@dataclass_json
|
|
@@ -3772,19 +3830,6 @@ InvestigationResource = Union[
|
|
|
3772
3830
|
]
|
|
3773
3831
|
|
|
3774
3832
|
|
|
3775
|
-
@dataclass_json
|
|
3776
|
-
@dataclass(order=True, eq=True, frozen=True)
|
|
3777
|
-
class Cases:
|
|
3778
|
-
"""Cases."""
|
|
3779
|
-
|
|
3780
|
-
total_count: Optional[int] = field(
|
|
3781
|
-
default=None, metadata=config(field_name="totalCount")
|
|
3782
|
-
)
|
|
3783
|
-
cases: Optional[List[Case]] = field(
|
|
3784
|
-
default=None, metadata=config(field_name="cases")
|
|
3785
|
-
)
|
|
3786
|
-
|
|
3787
|
-
|
|
3788
3833
|
@dataclass_json
|
|
3789
3834
|
@dataclass(order=True, eq=True, frozen=True)
|
|
3790
3835
|
class CaseTemplates:
|
|
@@ -3943,6 +3988,20 @@ class InvestigationFilesV2:
|
|
|
3943
3988
|
)
|
|
3944
3989
|
|
|
3945
3990
|
|
|
3991
|
+
@dataclass_json
|
|
3992
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
3993
|
+
class CasesArguments:
|
|
3994
|
+
"""CasesArguments."""
|
|
3995
|
+
|
|
3996
|
+
query: Optional[str] = field(default=None, metadata=config(field_name="query"))
|
|
3997
|
+
tenant_service_filters: Optional[List[str]] = field(
|
|
3998
|
+
default=None, metadata=config(field_name="tenantServiceFilters")
|
|
3999
|
+
)
|
|
4000
|
+
pagination: Optional[CasesPagination] = field(
|
|
4001
|
+
default=None, metadata=config(field_name="pagination")
|
|
4002
|
+
)
|
|
4003
|
+
|
|
4004
|
+
|
|
3946
4005
|
@dataclass_json
|
|
3947
4006
|
@dataclass(order=True, eq=True, frozen=True)
|
|
3948
4007
|
class ExportInvestigationResourcesArguments:
|
|
@@ -3953,6 +4012,22 @@ class ExportInvestigationResourcesArguments:
|
|
|
3953
4012
|
)
|
|
3954
4013
|
|
|
3955
4014
|
|
|
4015
|
+
@dataclass_json
|
|
4016
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
4017
|
+
class Cases:
|
|
4018
|
+
"""Cases."""
|
|
4019
|
+
|
|
4020
|
+
total_count: Optional[int] = field(
|
|
4021
|
+
default=None, metadata=config(field_name="totalCount")
|
|
4022
|
+
)
|
|
4023
|
+
cases: Optional[List[Case]] = field(
|
|
4024
|
+
default=None, metadata=config(field_name="cases")
|
|
4025
|
+
)
|
|
4026
|
+
page_info: Optional[PageInfo] = field(
|
|
4027
|
+
default=None, metadata=config(field_name="pageInfo")
|
|
4028
|
+
)
|
|
4029
|
+
|
|
4030
|
+
|
|
3956
4031
|
@dataclass_json
|
|
3957
4032
|
@dataclass(order=True, eq=True, frozen=True)
|
|
3958
4033
|
class InvestigationsV2:
|
|
@@ -350,7 +350,7 @@ class TaegisSDKTenantsMutation:
|
|
|
350
350
|
raise GraphQLNoRowsInResultSetError("for mutation changeTenantHierarchy")
|
|
351
351
|
|
|
352
352
|
def update_tenant_hierarchy(self, input_: UpdateTenantHierarchyInput) -> Tenant:
|
|
353
|
-
"""Updates tenant hierarchy with explicit partner and optional organization. Handles same-partner and cross-partner moves. Requires TenantHierarchy:Update."""
|
|
353
|
+
"""Updates tenant hierarchy with explicit partner and optional organization. Handles same-partner and cross-partner moves. Requires TenantHierarchy:Update (internal role)."""
|
|
354
354
|
endpoint = "updateTenantHierarchy"
|
|
355
355
|
|
|
356
356
|
result = self.service.execute_mutation(
|
{taegis_sdk_python-1.6.13 → taegis_sdk_python-1.6.15}/taegis_sdk_python/services/tenants4/types.py
RENAMED
|
@@ -508,6 +508,9 @@ class TenantV4:
|
|
|
508
508
|
is_partner: Optional[bool] = field(
|
|
509
509
|
default=None, metadata=config(field_name="isPartner")
|
|
510
510
|
)
|
|
511
|
+
is_sophos_mdr_provider: Optional[bool] = field(
|
|
512
|
+
default=None, metadata=config(field_name="isSophosMDRProvider")
|
|
513
|
+
)
|
|
511
514
|
has_support_enabled: Optional[bool] = field(
|
|
512
515
|
default=None, metadata=config(field_name="hasSupportEnabled")
|
|
513
516
|
)
|
|
@@ -69,6 +69,9 @@ class EntityEvidenceData:
|
|
|
69
69
|
blocklist_rate_flag: Optional[bool] = field(
|
|
70
70
|
default=None, metadata=config(field_name="blocklistRateFlag")
|
|
71
71
|
)
|
|
72
|
+
entity_in_past_tpb_or_fp_alert: Optional[bool] = field(
|
|
73
|
+
default=None, metadata=config(field_name="entityInPastTpbOrFpAlert")
|
|
74
|
+
)
|
|
72
75
|
|
|
73
76
|
|
|
74
77
|
@dataclass_json
|
|
@@ -41,7 +41,10 @@ class TaegisSDKTriggerActionMutation:
|
|
|
41
41
|
variables={
|
|
42
42
|
"input": prepare_input(input_),
|
|
43
43
|
},
|
|
44
|
-
output=build_output_string(
|
|
44
|
+
output=build_output_string(
|
|
45
|
+
PlaybookExecution,
|
|
46
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
47
|
+
),
|
|
45
48
|
)
|
|
46
49
|
if result.get(endpoint) is not None:
|
|
47
50
|
return PlaybookExecution.from_dict(result.get(endpoint))
|
|
@@ -56,7 +59,10 @@ class TaegisSDKTriggerActionMutation:
|
|
|
56
59
|
variables={
|
|
57
60
|
"input": prepare_input(input_),
|
|
58
61
|
},
|
|
59
|
-
output=build_output_string(
|
|
62
|
+
output=build_output_string(
|
|
63
|
+
BulkActions,
|
|
64
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
65
|
+
),
|
|
60
66
|
)
|
|
61
67
|
if result.get(endpoint) is not None:
|
|
62
68
|
return BulkActions.from_dict(result.get(endpoint))
|
|
@@ -84,7 +90,10 @@ class TaegisSDKTriggerActionMutation:
|
|
|
84
90
|
"targetResource": prepare_input(target_resource),
|
|
85
91
|
"reason": prepare_input(reason),
|
|
86
92
|
},
|
|
87
|
-
output=build_output_string(
|
|
93
|
+
output=build_output_string(
|
|
94
|
+
PlaybookExecution,
|
|
95
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
96
|
+
),
|
|
88
97
|
)
|
|
89
98
|
if result.get(endpoint) is not None:
|
|
90
99
|
return PlaybookExecution.from_dict(result.get(endpoint))
|
|
@@ -105,7 +114,10 @@ class TaegisSDKTriggerActionMutation:
|
|
|
105
114
|
variables={
|
|
106
115
|
"input": prepare_input(input_),
|
|
107
116
|
},
|
|
108
|
-
output=build_output_string(
|
|
117
|
+
output=build_output_string(
|
|
118
|
+
PlaybookExecution,
|
|
119
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
120
|
+
),
|
|
109
121
|
)
|
|
110
122
|
if result.get(endpoint) is not None:
|
|
111
123
|
return PlaybookExecution.schema().load(
|
|
@@ -128,7 +140,10 @@ class TaegisSDKTriggerActionMutation:
|
|
|
128
140
|
variables={
|
|
129
141
|
"input": prepare_input(input_),
|
|
130
142
|
},
|
|
131
|
-
output=build_output_string(
|
|
143
|
+
output=build_output_string(
|
|
144
|
+
PlaybookExecution,
|
|
145
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
146
|
+
),
|
|
132
147
|
)
|
|
133
148
|
if result.get(endpoint) is not None:
|
|
134
149
|
return PlaybookExecution.schema().load(
|