taegis-sdk-python 1.6.15__tar.gz → 1.6.16__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.15 → taegis_sdk_python-1.6.16}/PKG-INFO +1 -1
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/_version.py +1 -1
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/middlewares/__init__.py +2 -1
- taegis_sdk_python-1.6.16/taegis_sdk_python/middlewares/curl/__init__.py +5 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/middlewares/curl/_default.py +4 -7
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/__init__.py +18 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/context_summarizer/__init__.py +30 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/context_summarizer/mutations.py +33 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/context_summarizer/queries.py +212 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/context_summarizer/subscriptions.py +33 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/context_summarizer/types.py +187 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/entity_context/mutations.py +17 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/event_stats/__init__.py +30 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/event_stats/mutations.py +33 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/event_stats/queries.py +51 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/event_stats/subscriptions.py +33 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/event_stats/types.py +56 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations2/types.py +357 -306
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/rules/mutations.py +32 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/rules/types.py +39 -0
- taegis_sdk_python-1.6.16/taegis_sdk_python/services/threat_publications/mutations.py +62 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat_publications/types.py +21 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trip/mutations.py +40 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trip/queries.py +18 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trip/types.py +69 -4
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/users/types.py +28 -0
- taegis_sdk_python-1.6.15/taegis_sdk_python/middlewares/curl/__init__.py +0 -0
- taegis_sdk_python-1.6.15/taegis_sdk_python/services/threat_publications/mutations.py +0 -33
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/.gitignore +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/LICENSE +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/README.md +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/pyproject.toml +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/_consts.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/authentication.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/alerts/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/alerts/federated_search.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/alerts/search.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/cases/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/cases/federated_search.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/cases/search.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/events/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/events/search.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/investigations/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/investigations/federated_search.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/investigations/search.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/sharelinks/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/sharelinks/create.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/commons/sharelinks/unfurl.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/config.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/errors.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/middlewares/logging/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/middlewares/logging/_default.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/middlewares/retry/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/middlewares/retry/_default.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/middlewares/utils.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/service_core.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/access_points/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/access_points/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/access_points/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/access_points/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/access_points/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/agent/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/agent/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/agent/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/agent/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/agent/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts/types.py +820 -820
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts_history/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts_history/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts_history/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts_history/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/alerts_history/types.py +198 -198
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets2/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets2/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets2/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets2/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/assets2/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/audits/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/audits/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/audits/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/audits/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/audits/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/authz/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/authz/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/authz/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/authz/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/authz/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/byoti/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/byoti/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/byoti/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/byoti/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/byoti/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/clients/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/clients/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/clients/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/clients/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/clients/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/collector/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/collector/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/collector/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/collector/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/collector/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/comments/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/comments/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/comments/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/comments/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/comments/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/contracted_endpoint/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/contracted_endpoint/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/contracted_endpoint/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/contracted_endpoint/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/contracted_endpoint/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/cql_metadata/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/cql_metadata/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/cql_metadata/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/cql_metadata/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/cql_metadata/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/datasources/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/datasources/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/datasources/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/datasources/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/datasources/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/detector_registry/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/detector_registry/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/detector_registry/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/detector_registry/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/detector_registry/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_command_manager/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_command_manager/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_command_manager/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_command_manager/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_command_manager/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_management_service/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_management_service/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_management_service/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_management_service/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/endpoint_management_service/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/entity_context/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/entity_context/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/entity_context/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/entity_context/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/escalation_policies/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/escalation_policies/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/escalation_policies/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/escalation_policies/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/escalation_policies/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/event_search/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/event_search/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/event_search/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/event_search/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/event_search/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/events/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/events/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/events/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/events/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/events/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/exports/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/exports/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/exports/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/exports/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/exports/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/fast_ioc/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/fast_ioc/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/fast_ioc/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/fast_ioc/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/fast_ioc/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/file_info/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/file_info/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/file_info/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/file_info/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/file_info/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ingest_stats/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ingest_stats/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ingest_stats/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ingest_stats/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ingest_stats/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations2/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations2/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations2/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/investigations2/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/isensor/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/isensor/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/isensor/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/isensor/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/isensor/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/llm_service/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/llm_service/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/llm_service/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/llm_service/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/llm_service/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/mitre_attack_info/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/mitre_attack_info/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/mitre_attack_info/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/mitre_attack_info/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/mitre_attack_info/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_context/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_context/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_context/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_context/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_context/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_ioc/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_ioc/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_ioc/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_ioc/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/multi_tenant_ioc/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/nl_search/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/nl_search/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/nl_search/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/nl_search/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/nl_search/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notebooks/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notebooks/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notebooks/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notebooks/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notebooks/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications2/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications2/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications2/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications2/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/notifications2/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/preferences/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/preferences/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/preferences/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/preferences/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/preferences/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/process_trees/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/process_trees/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/process_trees/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/process_trees/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/process_trees/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ql_schemas/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ql_schemas/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ql_schemas/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ql_schemas/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/ql_schemas/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/queries/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/queries/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/queries/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/queries/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/queries/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/roadrunner/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/roadrunner/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/roadrunner/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/roadrunner/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/roadrunner/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/rules/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/rules/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/rules/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/sharelinks/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/sharelinks/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/sharelinks/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/sharelinks/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/sharelinks/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/subjects/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/subjects/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/subjects/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/subjects/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/subjects/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenant_profiles/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenant_profiles/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenant_profiles/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenant_profiles/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenant_profiles/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants4/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants4/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants4/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants4/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/tenants4/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat_publications/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat_publications/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat_publications/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat_score/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat_score/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat_score/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat_score/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/threat_score/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trigger_action/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trigger_action/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trigger_action/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trigger_action/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trigger_action/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trip/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/trip/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/users/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/users/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/users/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/users/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/vdr/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/vdr/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/vdr/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/vdr/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/vdr/types.py +190 -190
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/xdr_central_connector/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/xdr_central_connector/mutations.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/xdr_central_connector/queries.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/xdr_central_connector/subscriptions.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/xdr_central_connector/types.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/templates/__init__.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/templates/_jinja2.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/tokens.py +0 -0
- {taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/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.16
|
|
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
|
{taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/middlewares/__init__.py
RENAMED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"""Taegis SDK Middlewares."""
|
|
2
2
|
|
|
3
|
+
from taegis_sdk_python.middlewares.curl import to_curl
|
|
3
4
|
from taegis_sdk_python.middlewares.logging import headers_logging_middleware
|
|
4
5
|
from taegis_sdk_python.middlewares.retry import retry_middleware
|
|
5
6
|
|
|
6
|
-
__all__ = ["headers_logging_middleware", "retry_middleware"]
|
|
7
|
+
__all__ = ["headers_logging_middleware", "retry_middleware", "to_curl"]
|
{taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/middlewares/curl/_default.py
RENAMED
|
@@ -3,12 +3,7 @@
|
|
|
3
3
|
import logging
|
|
4
4
|
from shlex import quote
|
|
5
5
|
|
|
6
|
-
from aiohttp import
|
|
7
|
-
BytesPayload,
|
|
8
|
-
ClientHandlerType,
|
|
9
|
-
ClientRequest,
|
|
10
|
-
ClientResponse,
|
|
11
|
-
)
|
|
6
|
+
from aiohttp import BytesPayload, ClientHandlerType, ClientRequest, ClientResponse
|
|
12
7
|
|
|
13
8
|
from taegis_sdk_python.middlewares.utils import scrub_dict
|
|
14
9
|
|
|
@@ -42,7 +37,9 @@ async def to_curl(request: ClientRequest, handler: ClientHandlerType) -> ClientR
|
|
|
42
37
|
if isinstance(body, (bytes, BytesPayload)):
|
|
43
38
|
body = body.decode("utf-8")
|
|
44
39
|
else:
|
|
45
|
-
log.error(
|
|
40
|
+
log.error(
|
|
41
|
+
f"Unsupported body type for curl middleware: {type(body)}, request.body must be bytes or BytesPayload"
|
|
42
|
+
)
|
|
46
43
|
return await handler(request)
|
|
47
44
|
|
|
48
45
|
data_type = "-d"
|
{taegis_sdk_python-1.6.15 → taegis_sdk_python-1.6.16}/taegis_sdk_python/services/__init__.py
RENAMED
|
@@ -34,6 +34,7 @@ from taegis_sdk_python.services.byoti import ByotiService
|
|
|
34
34
|
from taegis_sdk_python.services.clients import ClientsService
|
|
35
35
|
from taegis_sdk_python.services.collector import CollectorService
|
|
36
36
|
from taegis_sdk_python.services.comments import CommentsService
|
|
37
|
+
from taegis_sdk_python.services.context_summarizer import ContextSummarizerService
|
|
37
38
|
from taegis_sdk_python.services.contracted_endpoint import ContractedEndpointService
|
|
38
39
|
from taegis_sdk_python.services.cql_metadata import CqlMetadataService
|
|
39
40
|
from taegis_sdk_python.services.datasources import DatasourcesService
|
|
@@ -47,6 +48,7 @@ from taegis_sdk_python.services.endpoint_management_service import (
|
|
|
47
48
|
from taegis_sdk_python.services.entity_context import EntityContextService
|
|
48
49
|
from taegis_sdk_python.services.escalation_policies import EscalationPoliciesService
|
|
49
50
|
from taegis_sdk_python.services.event_search import EventSearchService
|
|
51
|
+
from taegis_sdk_python.services.event_stats import EventStatsService
|
|
50
52
|
from taegis_sdk_python.services.events import EventsService
|
|
51
53
|
from taegis_sdk_python.services.exports import ExportsService
|
|
52
54
|
from taegis_sdk_python.services.fast_ioc import FastIocService
|
|
@@ -204,6 +206,7 @@ class GraphQLService:
|
|
|
204
206
|
self._clients = None
|
|
205
207
|
self._collector = None
|
|
206
208
|
self._comments = None
|
|
209
|
+
self._context_summarizer = None
|
|
207
210
|
self._contracted_endpoint = None
|
|
208
211
|
self._cql_metadata = None
|
|
209
212
|
self._datasources = None
|
|
@@ -212,6 +215,7 @@ class GraphQLService:
|
|
|
212
215
|
self._endpoint_management_service = None
|
|
213
216
|
self._entity_context = None
|
|
214
217
|
self._event_search = None
|
|
218
|
+
self._event_stats = None
|
|
215
219
|
self._escalation_policies = None
|
|
216
220
|
self._events = None
|
|
217
221
|
self._exports = None
|
|
@@ -584,6 +588,13 @@ class GraphQLService:
|
|
|
584
588
|
self._comments = CommentsService(self)
|
|
585
589
|
return self._comments
|
|
586
590
|
|
|
591
|
+
@property
|
|
592
|
+
def context_summarizer(self):
|
|
593
|
+
"""Context Summarizer Service Endpoint."""
|
|
594
|
+
if not self._context_summarizer:
|
|
595
|
+
self._context_summarizer = ContextSummarizerService(self)
|
|
596
|
+
return self._context_summarizer
|
|
597
|
+
|
|
587
598
|
@property
|
|
588
599
|
def contracted_endpoint(self):
|
|
589
600
|
"""ContractedEndpoint Service Endpoint."""
|
|
@@ -647,6 +658,13 @@ class GraphQLService:
|
|
|
647
658
|
self._event_search = EventSearchService(self)
|
|
648
659
|
return self._event_search
|
|
649
660
|
|
|
661
|
+
@property
|
|
662
|
+
def event_stats(self):
|
|
663
|
+
"""EventStats Service Endpoint."""
|
|
664
|
+
if not self._event_stats:
|
|
665
|
+
self._event_stats = EventStatsService(self)
|
|
666
|
+
return self._event_stats
|
|
667
|
+
|
|
650
668
|
@property
|
|
651
669
|
def events(self):
|
|
652
670
|
"""Events Service Endpoint."""
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"""ContextSummarizer Service."""
|
|
2
|
+
|
|
3
|
+
from taegis_sdk_python.service_core import ServiceCore
|
|
4
|
+
from taegis_sdk_python.services.context_summarizer.mutations import TaegisSDKContextSummarizerMutation
|
|
5
|
+
from taegis_sdk_python.services.context_summarizer.queries import TaegisSDKContextSummarizerQuery
|
|
6
|
+
from taegis_sdk_python.services.context_summarizer.subscriptions import (
|
|
7
|
+
TaegisSDKContextSummarizerSubscription,
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class ContextSummarizerService(ServiceCore):
|
|
12
|
+
"""Taegis ContextSummarizer Service."""
|
|
13
|
+
|
|
14
|
+
@property
|
|
15
|
+
def query(self):
|
|
16
|
+
if not self._queries:
|
|
17
|
+
self._queries = TaegisSDKContextSummarizerQuery(self)
|
|
18
|
+
return self._queries
|
|
19
|
+
|
|
20
|
+
@property
|
|
21
|
+
def mutation(self):
|
|
22
|
+
if not self._mutations:
|
|
23
|
+
self._mutations = TaegisSDKContextSummarizerMutation(self)
|
|
24
|
+
return self._mutations
|
|
25
|
+
|
|
26
|
+
@property
|
|
27
|
+
def subscription(self):
|
|
28
|
+
if not self._subscriptions:
|
|
29
|
+
self._subscriptions = TaegisSDKContextSummarizerSubscription(self)
|
|
30
|
+
return self._subscriptions
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"""ContextSummarizer Mutation."""
|
|
2
|
+
|
|
3
|
+
# pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
# Autogenerated
|
|
7
|
+
# DO NOT MODIFY
|
|
8
|
+
|
|
9
|
+
from __future__ import annotations
|
|
10
|
+
|
|
11
|
+
import logging
|
|
12
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple, Union
|
|
13
|
+
|
|
14
|
+
from taegis_sdk_python import GraphQLNoRowsInResultSetError
|
|
15
|
+
from taegis_sdk_python._consts import TaegisEnum
|
|
16
|
+
from taegis_sdk_python.services.context_summarizer.types import *
|
|
17
|
+
from taegis_sdk_python.utils import (
|
|
18
|
+
build_output_string,
|
|
19
|
+
parse_union_result,
|
|
20
|
+
prepare_input,
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
if TYPE_CHECKING: # pragma: no cover
|
|
24
|
+
from taegis_sdk_python.services.context_summarizer import ContextSummarizerService
|
|
25
|
+
|
|
26
|
+
log = logging.getLogger(__name__)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class TaegisSDKContextSummarizerMutation:
|
|
30
|
+
"""Taegis Context_summarizer Mutation operations."""
|
|
31
|
+
|
|
32
|
+
def __init__(self, service: ContextSummarizerService):
|
|
33
|
+
self.service = service
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
"""ContextSummarizer Query."""
|
|
2
|
+
|
|
3
|
+
# pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
# Autogenerated
|
|
7
|
+
# DO NOT MODIFY
|
|
8
|
+
|
|
9
|
+
from __future__ import annotations
|
|
10
|
+
|
|
11
|
+
import logging
|
|
12
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple, Union
|
|
13
|
+
|
|
14
|
+
from taegis_sdk_python import GraphQLNoRowsInResultSetError
|
|
15
|
+
from taegis_sdk_python._consts import TaegisEnum
|
|
16
|
+
from taegis_sdk_python.services.context_summarizer.types import *
|
|
17
|
+
from taegis_sdk_python.utils import (
|
|
18
|
+
build_output_string,
|
|
19
|
+
parse_union_result,
|
|
20
|
+
prepare_input,
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
if TYPE_CHECKING: # pragma: no cover
|
|
24
|
+
from taegis_sdk_python.services.context_summarizer import ContextSummarizerService
|
|
25
|
+
|
|
26
|
+
log = logging.getLogger(__name__)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class TaegisSDKContextSummarizerQuery:
|
|
30
|
+
"""Taegis Context_summarizer Query operations."""
|
|
31
|
+
|
|
32
|
+
def __init__(self, service: ContextSummarizerService):
|
|
33
|
+
self.service = service
|
|
34
|
+
|
|
35
|
+
def generative_ai_monthly_billing(
|
|
36
|
+
self,
|
|
37
|
+
begin_year: int,
|
|
38
|
+
begin_month: int,
|
|
39
|
+
end_year: Optional[int] = None,
|
|
40
|
+
end_month: Optional[int] = None,
|
|
41
|
+
) -> BillingMonthEstimate:
|
|
42
|
+
"""Estimate the billing for a month, or many months."""
|
|
43
|
+
endpoint = "generativeAIMonthlyBilling"
|
|
44
|
+
|
|
45
|
+
result = self.service.execute_query(
|
|
46
|
+
endpoint=endpoint,
|
|
47
|
+
variables={
|
|
48
|
+
"beginYear": prepare_input(begin_year),
|
|
49
|
+
"beginMonth": prepare_input(begin_month),
|
|
50
|
+
"endYear": prepare_input(end_year),
|
|
51
|
+
"endMonth": prepare_input(end_month),
|
|
52
|
+
},
|
|
53
|
+
output=build_output_string(
|
|
54
|
+
BillingMonthEstimate,
|
|
55
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
56
|
+
),
|
|
57
|
+
)
|
|
58
|
+
if result.get(endpoint) is not None:
|
|
59
|
+
return BillingMonthEstimate.from_dict(result.get(endpoint))
|
|
60
|
+
raise GraphQLNoRowsInResultSetError("for query generativeAIMonthlyBilling")
|
|
61
|
+
|
|
62
|
+
def generative_ai_alert_description(self, alert_id: str) -> str:
|
|
63
|
+
"""Generate better alert descriptions using OpenAI and the alert's event filter rules."""
|
|
64
|
+
endpoint = "generativeAIAlertDescription"
|
|
65
|
+
|
|
66
|
+
result = self.service.execute_query(
|
|
67
|
+
endpoint=endpoint,
|
|
68
|
+
variables={
|
|
69
|
+
"alertId": prepare_input(alert_id),
|
|
70
|
+
},
|
|
71
|
+
output="",
|
|
72
|
+
)
|
|
73
|
+
if result.get(endpoint) is not None:
|
|
74
|
+
return result.get(endpoint)
|
|
75
|
+
raise GraphQLNoRowsInResultSetError("for query generativeAIAlertDescription")
|
|
76
|
+
|
|
77
|
+
def generative_ai_alert_event_explain(self, alert_id: str) -> str:
|
|
78
|
+
"""Explain the alert's events based on their content."""
|
|
79
|
+
endpoint = "generativeAIAlertEventExplain"
|
|
80
|
+
|
|
81
|
+
log.warning(
|
|
82
|
+
f"GraphQL Query `{endpoint}` is deprecated: 'Use generativeAIEventExplain instead'"
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
result = self.service.execute_query(
|
|
86
|
+
endpoint=endpoint,
|
|
87
|
+
variables={
|
|
88
|
+
"alertId": prepare_input(alert_id),
|
|
89
|
+
},
|
|
90
|
+
output="",
|
|
91
|
+
)
|
|
92
|
+
if result.get(endpoint) is not None:
|
|
93
|
+
return result.get(endpoint)
|
|
94
|
+
raise GraphQLNoRowsInResultSetError("for query generativeAIAlertEventExplain")
|
|
95
|
+
|
|
96
|
+
def generative_ai_event_explain(
|
|
97
|
+
self, input_: EventExplanationInput
|
|
98
|
+
) -> List[EventExplanation]:
|
|
99
|
+
"""Explain the alert's events based on their content."""
|
|
100
|
+
endpoint = "generativeAIEventExplain"
|
|
101
|
+
|
|
102
|
+
result = self.service.execute_query(
|
|
103
|
+
endpoint=endpoint,
|
|
104
|
+
variables={
|
|
105
|
+
"input": prepare_input(input_),
|
|
106
|
+
},
|
|
107
|
+
output=build_output_string(
|
|
108
|
+
EventExplanation,
|
|
109
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
110
|
+
),
|
|
111
|
+
)
|
|
112
|
+
if result.get(endpoint) is not None:
|
|
113
|
+
return EventExplanation.schema().load(
|
|
114
|
+
[r or {} for r in result.get(endpoint)], many=True
|
|
115
|
+
)
|
|
116
|
+
raise GraphQLNoRowsInResultSetError("for query generativeAIEventExplain")
|
|
117
|
+
|
|
118
|
+
def explain_command_lines(
|
|
119
|
+
self, input_: CommandLineExplanationInput
|
|
120
|
+
) -> List[CommandLineExplanation]:
|
|
121
|
+
"""Explain the alert's command line events based on their content."""
|
|
122
|
+
endpoint = "explainCommandLines"
|
|
123
|
+
|
|
124
|
+
log.warning(
|
|
125
|
+
f"GraphQL Query `{endpoint}` is deprecated: 'Use generativeAIEventExplain instead'"
|
|
126
|
+
)
|
|
127
|
+
|
|
128
|
+
result = self.service.execute_query(
|
|
129
|
+
endpoint=endpoint,
|
|
130
|
+
variables={
|
|
131
|
+
"input": prepare_input(input_),
|
|
132
|
+
},
|
|
133
|
+
output=build_output_string(
|
|
134
|
+
CommandLineExplanation,
|
|
135
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
136
|
+
),
|
|
137
|
+
)
|
|
138
|
+
if result.get(endpoint) is not None:
|
|
139
|
+
return CommandLineExplanation.schema().load(
|
|
140
|
+
[r or {} for r in result.get(endpoint)], many=True
|
|
141
|
+
)
|
|
142
|
+
raise GraphQLNoRowsInResultSetError("for query explainCommandLines")
|
|
143
|
+
|
|
144
|
+
def generative_ai_alert_analysis(
|
|
145
|
+
self,
|
|
146
|
+
alert_id: str,
|
|
147
|
+
fetch_unconditionally: Optional[bool] = None,
|
|
148
|
+
follow_up_prompt: Optional[str] = None,
|
|
149
|
+
) -> str:
|
|
150
|
+
"""Derive an analysis of the alert from its overall content."""
|
|
151
|
+
endpoint = "generativeAIAlertAnalysis"
|
|
152
|
+
|
|
153
|
+
result = self.service.execute_query(
|
|
154
|
+
endpoint=endpoint,
|
|
155
|
+
variables={
|
|
156
|
+
"alertId": prepare_input(alert_id),
|
|
157
|
+
"fetchUnconditionally": prepare_input(fetch_unconditionally),
|
|
158
|
+
"followUpPrompt": prepare_input(follow_up_prompt),
|
|
159
|
+
},
|
|
160
|
+
output="",
|
|
161
|
+
)
|
|
162
|
+
if result.get(endpoint) is not None:
|
|
163
|
+
return result.get(endpoint)
|
|
164
|
+
raise GraphQLNoRowsInResultSetError("for query generativeAIAlertAnalysis")
|
|
165
|
+
|
|
166
|
+
def generative_ai_case_summary(
|
|
167
|
+
self,
|
|
168
|
+
case_id: str,
|
|
169
|
+
cache_options: Optional[ContextSummarizerCacheOptions] = None,
|
|
170
|
+
) -> ContextSummarizerCaseSummary:
|
|
171
|
+
"""Generate a summary of a Case(formerly, Investigation) based on analyses of its Alerts."""
|
|
172
|
+
endpoint = "generativeAICaseSummary"
|
|
173
|
+
|
|
174
|
+
result = self.service.execute_query(
|
|
175
|
+
endpoint=endpoint,
|
|
176
|
+
variables={
|
|
177
|
+
"caseId": prepare_input(case_id),
|
|
178
|
+
"cacheOptions": prepare_input(cache_options),
|
|
179
|
+
},
|
|
180
|
+
output=build_output_string(
|
|
181
|
+
ContextSummarizerCaseSummary,
|
|
182
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
183
|
+
),
|
|
184
|
+
)
|
|
185
|
+
if result.get(endpoint) is not None:
|
|
186
|
+
return ContextSummarizerCaseSummary.from_dict(result.get(endpoint))
|
|
187
|
+
raise GraphQLNoRowsInResultSetError("for query generativeAICaseSummary")
|
|
188
|
+
|
|
189
|
+
def generative_ai_key_findings(
|
|
190
|
+
self,
|
|
191
|
+
case_id: str,
|
|
192
|
+
cache_options: Optional[ContextSummarizerCacheOptions] = None,
|
|
193
|
+
output_format: Optional[Union[OutputFormat, TaegisEnum]] = None,
|
|
194
|
+
) -> ContextSummarizerKeyFindings:
|
|
195
|
+
"""Generate key findings for a Case based on analyses of its Alerts."""
|
|
196
|
+
endpoint = "generativeAIKeyFindings"
|
|
197
|
+
|
|
198
|
+
result = self.service.execute_query(
|
|
199
|
+
endpoint=endpoint,
|
|
200
|
+
variables={
|
|
201
|
+
"caseId": prepare_input(case_id),
|
|
202
|
+
"cacheOptions": prepare_input(cache_options),
|
|
203
|
+
"outputFormat": prepare_input(output_format),
|
|
204
|
+
},
|
|
205
|
+
output=build_output_string(
|
|
206
|
+
ContextSummarizerKeyFindings,
|
|
207
|
+
exclude_deprecated_output=self.service.exclude_deprecated_output,
|
|
208
|
+
),
|
|
209
|
+
)
|
|
210
|
+
if result.get(endpoint) is not None:
|
|
211
|
+
return ContextSummarizerKeyFindings.from_dict(result.get(endpoint))
|
|
212
|
+
raise GraphQLNoRowsInResultSetError("for query generativeAIKeyFindings")
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"""ContextSummarizer Subscription."""
|
|
2
|
+
|
|
3
|
+
# pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
# Autogenerated
|
|
7
|
+
# DO NOT MODIFY
|
|
8
|
+
|
|
9
|
+
from __future__ import annotations
|
|
10
|
+
|
|
11
|
+
import logging
|
|
12
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple, Union
|
|
13
|
+
|
|
14
|
+
from taegis_sdk_python import GraphQLNoRowsInResultSetError
|
|
15
|
+
from taegis_sdk_python._consts import TaegisEnum
|
|
16
|
+
from taegis_sdk_python.services.context_summarizer.types import *
|
|
17
|
+
from taegis_sdk_python.utils import (
|
|
18
|
+
build_output_string,
|
|
19
|
+
parse_union_result,
|
|
20
|
+
prepare_input,
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
if TYPE_CHECKING: # pragma: no cover
|
|
24
|
+
from taegis_sdk_python.services.context_summarizer import ContextSummarizerService
|
|
25
|
+
|
|
26
|
+
log = logging.getLogger(__name__)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class TaegisSDKContextSummarizerSubscription:
|
|
30
|
+
"""Taegis Context_summarizer Subscription operations."""
|
|
31
|
+
|
|
32
|
+
def __init__(self, service: ContextSummarizerService):
|
|
33
|
+
self.service = service
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
"""ContextSummarizer Types and Enums."""
|
|
2
|
+
|
|
3
|
+
# pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
|
|
4
|
+
|
|
5
|
+
# Autogenerated
|
|
6
|
+
# DO NOT MODIFY
|
|
7
|
+
|
|
8
|
+
from dataclasses import dataclass, field
|
|
9
|
+
from enum import Enum
|
|
10
|
+
from typing import Any, Dict, List, Optional, Tuple, Union
|
|
11
|
+
|
|
12
|
+
from dataclasses_json import config, dataclass_json
|
|
13
|
+
|
|
14
|
+
from taegis_sdk_python._consts import TaegisEnum
|
|
15
|
+
from taegis_sdk_python.utils import decode_enum, encode_enum, parse_union_result
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class CacheState(str, Enum):
|
|
19
|
+
"""CacheState."""
|
|
20
|
+
|
|
21
|
+
IN_PROGRESS = "IN_PROGRESS"
|
|
22
|
+
CACHE_HIT = "CACHE_HIT"
|
|
23
|
+
CACHE_MISS = "CACHE_MISS"
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class ContextSummarizerCacheStyle(str, Enum):
|
|
27
|
+
"""ContextSummarizerCacheStyle."""
|
|
28
|
+
|
|
29
|
+
ONLY = "only"
|
|
30
|
+
FIRST = "first"
|
|
31
|
+
LAST = "last"
|
|
32
|
+
NEVER = "never"
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
class OutputFormat(str, Enum):
|
|
36
|
+
"""OutputFormat."""
|
|
37
|
+
|
|
38
|
+
TEXT = "TEXT"
|
|
39
|
+
MARKDOWN = "MARKDOWN"
|
|
40
|
+
RICH_TEXT = "RICH_TEXT"
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
@dataclass_json
|
|
44
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
45
|
+
class CommandLineExplanationInput:
|
|
46
|
+
"""CommandLineExplanationInput."""
|
|
47
|
+
|
|
48
|
+
events: Optional[List[str]] = field(
|
|
49
|
+
default=None, metadata=config(field_name="events")
|
|
50
|
+
)
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
@dataclass_json
|
|
54
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
55
|
+
class EventExplanationInput:
|
|
56
|
+
"""EventExplanationInput."""
|
|
57
|
+
|
|
58
|
+
events: Optional[List[str]] = field(
|
|
59
|
+
default=None, metadata=config(field_name="events")
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
@dataclass_json
|
|
64
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
65
|
+
class CommandLineExplanation:
|
|
66
|
+
"""CommandLineExplanation."""
|
|
67
|
+
|
|
68
|
+
command: Optional[str] = field(default=None, metadata=config(field_name="command"))
|
|
69
|
+
explanation: Optional[str] = field(
|
|
70
|
+
default=None, metadata=config(field_name="explanation")
|
|
71
|
+
)
|
|
72
|
+
event: Optional[str] = field(default=None, metadata=config(field_name="event"))
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
@dataclass_json
|
|
76
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
77
|
+
class EventExplanation:
|
|
78
|
+
"""EventExplanation."""
|
|
79
|
+
|
|
80
|
+
explanation: Optional[str] = field(
|
|
81
|
+
default=None, metadata=config(field_name="explanation")
|
|
82
|
+
)
|
|
83
|
+
error: Optional[str] = field(default=None, metadata=config(field_name="error"))
|
|
84
|
+
event: Optional[str] = field(default=None, metadata=config(field_name="event"))
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
@dataclass_json
|
|
88
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
89
|
+
class TenantAmount:
|
|
90
|
+
"""TenantAmount."""
|
|
91
|
+
|
|
92
|
+
tenant_id: Optional[str] = field(
|
|
93
|
+
default=None, metadata=config(field_name="tenantId")
|
|
94
|
+
)
|
|
95
|
+
amount: Optional[float] = field(default=None, metadata=config(field_name="amount"))
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
@dataclass_json
|
|
99
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
100
|
+
class BillingMonthEstimate:
|
|
101
|
+
"""BillingMonthEstimate."""
|
|
102
|
+
|
|
103
|
+
begin_year: Optional[int] = field(
|
|
104
|
+
default=None, metadata=config(field_name="beginYear")
|
|
105
|
+
)
|
|
106
|
+
begin_month: Optional[int] = field(
|
|
107
|
+
default=None, metadata=config(field_name="beginMonth")
|
|
108
|
+
)
|
|
109
|
+
end_year: Optional[int] = field(default=None, metadata=config(field_name="endYear"))
|
|
110
|
+
end_month: Optional[int] = field(
|
|
111
|
+
default=None, metadata=config(field_name="endMonth")
|
|
112
|
+
)
|
|
113
|
+
usd_total: Optional[float] = field(
|
|
114
|
+
default=None, metadata=config(field_name="usdTotal")
|
|
115
|
+
)
|
|
116
|
+
usd_per_tenant_id: Optional[List[TenantAmount]] = field(
|
|
117
|
+
default=None, metadata=config(field_name="usdPerTenantId")
|
|
118
|
+
)
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
@dataclass_json
|
|
122
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
123
|
+
class ContextSummarizerCacheResults:
|
|
124
|
+
"""ContextSummarizerCacheResults."""
|
|
125
|
+
|
|
126
|
+
generated_at: Optional[int] = field(
|
|
127
|
+
default=None, metadata=config(field_name="generatedAt")
|
|
128
|
+
)
|
|
129
|
+
generated_at_str: Optional[str] = field(
|
|
130
|
+
default=None, metadata=config(field_name="generatedAtStr")
|
|
131
|
+
)
|
|
132
|
+
cache_state: Optional[Union[CacheState, TaegisEnum]] = field(
|
|
133
|
+
default=None,
|
|
134
|
+
metadata=config(
|
|
135
|
+
encoder=encode_enum,
|
|
136
|
+
decoder=lambda x: decode_enum(CacheState, x),
|
|
137
|
+
field_name="cacheState",
|
|
138
|
+
),
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
@dataclass_json
|
|
143
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
144
|
+
class ContextSummarizerCacheOptions:
|
|
145
|
+
"""ContextSummarizerCacheOptions."""
|
|
146
|
+
|
|
147
|
+
try_cache_how: Optional[Union[ContextSummarizerCacheStyle, TaegisEnum]] = field(
|
|
148
|
+
default=None,
|
|
149
|
+
metadata=config(
|
|
150
|
+
encoder=encode_enum,
|
|
151
|
+
decoder=lambda x: decode_enum(ContextSummarizerCacheStyle, x),
|
|
152
|
+
field_name="tryCacheHow",
|
|
153
|
+
),
|
|
154
|
+
)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
@dataclass_json
|
|
158
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
159
|
+
class ContextSummarizerKeyFindings:
|
|
160
|
+
"""ContextSummarizerKeyFindings."""
|
|
161
|
+
|
|
162
|
+
summary: Optional[str] = field(default=None, metadata=config(field_name="summary"))
|
|
163
|
+
key_findings: Optional[str] = field(
|
|
164
|
+
default=None, metadata=config(field_name="keyFindings")
|
|
165
|
+
)
|
|
166
|
+
cache_results: Optional[ContextSummarizerCacheResults] = field(
|
|
167
|
+
default=None, metadata=config(field_name="cacheResults")
|
|
168
|
+
)
|
|
169
|
+
output_format: Optional[Union[OutputFormat, TaegisEnum]] = field(
|
|
170
|
+
default=None,
|
|
171
|
+
metadata=config(
|
|
172
|
+
encoder=encode_enum,
|
|
173
|
+
decoder=lambda x: decode_enum(OutputFormat, x),
|
|
174
|
+
field_name="outputFormat",
|
|
175
|
+
),
|
|
176
|
+
)
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
@dataclass_json
|
|
180
|
+
@dataclass(order=True, eq=True, frozen=True)
|
|
181
|
+
class ContextSummarizerCaseSummary:
|
|
182
|
+
"""ContextSummarizerCaseSummary."""
|
|
183
|
+
|
|
184
|
+
summary: Optional[str] = field(default=None, metadata=config(field_name="summary"))
|
|
185
|
+
cache_results: Optional[ContextSummarizerCacheResults] = field(
|
|
186
|
+
default=None, metadata=config(field_name="cacheResults")
|
|
187
|
+
)
|
|
@@ -62,3 +62,20 @@ class TaegisSDKEntityContextMutation:
|
|
|
62
62
|
result.get(endpoint)
|
|
63
63
|
)
|
|
64
64
|
raise GraphQLNoRowsInResultSetError("for mutation entityContextAddTo")
|
|
65
|
+
|
|
66
|
+
def entity_context_identity_teardown(self, provider_id: str) -> bool:
|
|
67
|
+
"""No developer notes."""
|
|
68
|
+
endpoint = "entityContextIdentityTeardown"
|
|
69
|
+
|
|
70
|
+
result = self.service.execute_mutation(
|
|
71
|
+
endpoint=endpoint,
|
|
72
|
+
variables={
|
|
73
|
+
"providerID": prepare_input(provider_id),
|
|
74
|
+
},
|
|
75
|
+
output="",
|
|
76
|
+
)
|
|
77
|
+
if result.get(endpoint) is not None:
|
|
78
|
+
return result.get(endpoint)
|
|
79
|
+
raise GraphQLNoRowsInResultSetError(
|
|
80
|
+
"for mutation entityContextIdentityTeardown"
|
|
81
|
+
)
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"""EventStats Service."""
|
|
2
|
+
|
|
3
|
+
from taegis_sdk_python.service_core import ServiceCore
|
|
4
|
+
from taegis_sdk_python.services.event_stats.mutations import TaegisSDKEventStatsMutation
|
|
5
|
+
from taegis_sdk_python.services.event_stats.queries import TaegisSDKEventStatsQuery
|
|
6
|
+
from taegis_sdk_python.services.event_stats.subscriptions import (
|
|
7
|
+
TaegisSDKEventStatsSubscription,
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class EventStatsService(ServiceCore):
|
|
12
|
+
"""Taegis EventStats Service."""
|
|
13
|
+
|
|
14
|
+
@property
|
|
15
|
+
def query(self):
|
|
16
|
+
if not self._queries:
|
|
17
|
+
self._queries = TaegisSDKEventStatsQuery(self)
|
|
18
|
+
return self._queries
|
|
19
|
+
|
|
20
|
+
@property
|
|
21
|
+
def mutation(self):
|
|
22
|
+
if not self._mutations:
|
|
23
|
+
self._mutations = TaegisSDKEventStatsMutation(self)
|
|
24
|
+
return self._mutations
|
|
25
|
+
|
|
26
|
+
@property
|
|
27
|
+
def subscription(self):
|
|
28
|
+
if not self._subscriptions:
|
|
29
|
+
self._subscriptions = TaegisSDKEventStatsSubscription(self)
|
|
30
|
+
return self._subscriptions
|