taegis-sdk-python 1.2.6__tar.gz → 1.2.7__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.
Files changed (230) hide show
  1. {taegis_sdk_python-1.2.6/taegis_sdk_python.egg-info → taegis_sdk_python-1.2.7}/PKG-INFO +1 -1
  2. taegis_sdk_python-1.2.7/taegis_sdk_python/_version.py +1 -0
  3. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/__init__.py +5 -4
  4. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations2/mutations.py +85 -41
  5. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations2/queries.py +17 -12
  6. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations2/types.py +309 -205
  7. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenants/types.py +5 -0
  8. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7/taegis_sdk_python.egg-info}/PKG-INFO +1 -1
  9. taegis_sdk_python-1.2.6/taegis_sdk_python/_version.py +0 -1
  10. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/LICENSE +0 -0
  11. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/MANIFEST.in +0 -0
  12. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/README.md +0 -0
  13. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/requirements-dev.txt +0 -0
  14. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/requirements-test.txt +0 -0
  15. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/requirements.txt +0 -0
  16. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/setup.cfg +0 -0
  17. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/setup.py +0 -0
  18. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/__init__.py +0 -0
  19. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/_consts.py +0 -0
  20. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/authentication.py +0 -0
  21. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/config.py +0 -0
  22. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/errors.py +0 -0
  23. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/service_core.py +0 -0
  24. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/access_points/__init__.py +0 -0
  25. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/access_points/mutations.py +0 -0
  26. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/access_points/queries.py +0 -0
  27. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/access_points/subscriptions.py +0 -0
  28. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/access_points/types.py +0 -0
  29. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/agent/__init__.py +0 -0
  30. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/agent/mutations.py +0 -0
  31. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/agent/queries.py +0 -0
  32. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/agent/subscriptions.py +0 -0
  33. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/agent/types.py +0 -0
  34. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/alerts/__init__.py +0 -0
  35. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/alerts/mutations.py +0 -0
  36. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/alerts/queries.py +0 -0
  37. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/alerts/subscriptions.py +0 -0
  38. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/alerts/types.py +0 -0
  39. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets/__init__.py +0 -0
  40. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets/mutations.py +0 -0
  41. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets/queries.py +0 -0
  42. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets/subscriptions.py +0 -0
  43. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets/types.py +0 -0
  44. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets2/__init__.py +0 -0
  45. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets2/mutations.py +0 -0
  46. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets2/queries.py +0 -0
  47. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets2/subscriptions.py +0 -0
  48. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/assets2/types.py +0 -0
  49. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/audits/__init__.py +0 -0
  50. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/audits/mutations.py +0 -0
  51. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/audits/queries.py +0 -0
  52. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/audits/subscriptions.py +0 -0
  53. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/audits/types.py +0 -0
  54. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/authz/__init__.py +0 -0
  55. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/authz/mutations.py +0 -0
  56. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/authz/queries.py +0 -0
  57. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/authz/subscriptions.py +0 -0
  58. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/authz/types.py +0 -0
  59. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/byoti/__init__.py +0 -0
  60. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/byoti/mutations.py +0 -0
  61. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/byoti/queries.py +0 -0
  62. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/byoti/subscriptions.py +0 -0
  63. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/byoti/types.py +0 -0
  64. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/clients/__init__.py +0 -0
  65. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/clients/mutations.py +0 -0
  66. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/clients/queries.py +0 -0
  67. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/clients/subscriptions.py +0 -0
  68. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/clients/types.py +0 -0
  69. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/collector/__init__.py +0 -0
  70. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/collector/mutations.py +0 -0
  71. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/collector/queries.py +0 -0
  72. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/collector/subscriptions.py +0 -0
  73. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/collector/types.py +0 -0
  74. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/comments/__init__.py +0 -0
  75. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/comments/mutations.py +0 -0
  76. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/comments/queries.py +0 -0
  77. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/comments/subscriptions.py +0 -0
  78. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/comments/types.py +0 -0
  79. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/contracted_endpoint/__init__.py +0 -0
  80. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/contracted_endpoint/mutations.py +0 -0
  81. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/contracted_endpoint/queries.py +0 -0
  82. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/contracted_endpoint/subscriptions.py +0 -0
  83. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/contracted_endpoint/types.py +0 -0
  84. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/datasources/__init__.py +0 -0
  85. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/datasources/mutations.py +0 -0
  86. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/datasources/queries.py +0 -0
  87. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/datasources/subscriptions.py +0 -0
  88. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/datasources/types.py +0 -0
  89. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/detector_registry/__init__.py +0 -0
  90. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/detector_registry/mutations.py +0 -0
  91. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/detector_registry/queries.py +0 -0
  92. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/detector_registry/subscriptions.py +0 -0
  93. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/detector_registry/types.py +0 -0
  94. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_command_manager/__init__.py +0 -0
  95. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_command_manager/mutations.py +0 -0
  96. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_command_manager/queries.py +0 -0
  97. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_command_manager/subscriptions.py +0 -0
  98. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_command_manager/types.py +0 -0
  99. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_management_service/__init__.py +0 -0
  100. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_management_service/mutations.py +0 -0
  101. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_management_service/queries.py +0 -0
  102. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_management_service/subscriptions.py +0 -0
  103. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/endpoint_management_service/types.py +0 -0
  104. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/event_search/__init__.py +0 -0
  105. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/event_search/mutations.py +0 -0
  106. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/event_search/queries.py +0 -0
  107. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/event_search/subscriptions.py +0 -0
  108. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/event_search/types.py +0 -0
  109. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/events/__init__.py +0 -0
  110. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/events/mutations.py +0 -0
  111. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/events/queries.py +0 -0
  112. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/events/subscriptions.py +0 -0
  113. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/events/types.py +0 -0
  114. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/exports/__init__.py +0 -0
  115. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/exports/mutations.py +0 -0
  116. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/exports/queries.py +0 -0
  117. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/exports/subscriptions.py +0 -0
  118. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/exports/types.py +0 -0
  119. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/fast_ioc/__init__.py +0 -0
  120. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/fast_ioc/mutations.py +0 -0
  121. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/fast_ioc/queries.py +0 -0
  122. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/fast_ioc/subscriptions.py +0 -0
  123. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/fast_ioc/types.py +0 -0
  124. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/file_info/__init__.py +0 -0
  125. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/file_info/mutations.py +0 -0
  126. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/file_info/queries.py +0 -0
  127. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/file_info/subscriptions.py +0 -0
  128. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/file_info/types.py +0 -0
  129. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/ingest_stats/__init__.py +0 -0
  130. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/ingest_stats/mutations.py +0 -0
  131. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/ingest_stats/queries.py +0 -0
  132. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/ingest_stats/subscriptions.py +0 -0
  133. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/ingest_stats/types.py +0 -0
  134. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations/__init__.py +0 -0
  135. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations/mutations.py +0 -0
  136. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations/queries.py +0 -0
  137. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations/subscriptions.py +0 -0
  138. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations/types.py +0 -0
  139. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations2/__init__.py +0 -0
  140. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/investigations2/subscriptions.py +0 -0
  141. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/mitre_attack_info/__init__.py +0 -0
  142. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/mitre_attack_info/mutations.py +0 -0
  143. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/mitre_attack_info/queries.py +0 -0
  144. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/mitre_attack_info/subscriptions.py +0 -0
  145. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/mitre_attack_info/types.py +0 -0
  146. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_context/__init__.py +0 -0
  147. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_context/mutations.py +0 -0
  148. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_context/queries.py +0 -0
  149. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_context/subscriptions.py +0 -0
  150. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_context/types.py +0 -0
  151. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_ioc/__init__.py +0 -0
  152. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_ioc/mutations.py +0 -0
  153. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_ioc/queries.py +0 -0
  154. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_ioc/subscriptions.py +0 -0
  155. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/multi_tenant_ioc/types.py +0 -0
  156. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notebooks/__init__.py +0 -0
  157. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notebooks/mutations.py +0 -0
  158. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notebooks/queries.py +0 -0
  159. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notebooks/subscriptions.py +0 -0
  160. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notebooks/types.py +0 -0
  161. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notifications/__init__.py +0 -0
  162. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notifications/mutations.py +0 -0
  163. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notifications/queries.py +0 -0
  164. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notifications/subscriptions.py +0 -0
  165. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/notifications/types.py +0 -0
  166. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/preferences/__init__.py +0 -0
  167. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/preferences/mutations.py +0 -0
  168. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/preferences/queries.py +0 -0
  169. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/preferences/subscriptions.py +0 -0
  170. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/preferences/types.py +0 -0
  171. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/queries/__init__.py +0 -0
  172. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/queries/mutations.py +0 -0
  173. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/queries/queries.py +0 -0
  174. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/queries/subscriptions.py +0 -0
  175. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/queries/types.py +0 -0
  176. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/roadrunner/__init__.py +0 -0
  177. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/roadrunner/mutations.py +0 -0
  178. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/roadrunner/queries.py +0 -0
  179. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/roadrunner/subscriptions.py +0 -0
  180. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/roadrunner/types.py +0 -0
  181. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/rules/__init__.py +0 -0
  182. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/rules/mutations.py +0 -0
  183. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/rules/queries.py +0 -0
  184. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/rules/subscriptions.py +0 -0
  185. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/rules/types.py +0 -0
  186. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/sharelinks/__init__.py +0 -0
  187. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/sharelinks/mutations.py +0 -0
  188. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/sharelinks/queries.py +0 -0
  189. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/sharelinks/subscriptions.py +0 -0
  190. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/sharelinks/types.py +0 -0
  191. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/subjects/__init__.py +0 -0
  192. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/subjects/mutations.py +0 -0
  193. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/subjects/queries.py +0 -0
  194. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/subjects/subscriptions.py +0 -0
  195. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/subjects/types.py +0 -0
  196. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenant_profiles/__init__.py +0 -0
  197. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenant_profiles/mutations.py +0 -0
  198. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenant_profiles/queries.py +0 -0
  199. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenant_profiles/subscriptions.py +0 -0
  200. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenant_profiles/types.py +0 -0
  201. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenants/__init__.py +0 -0
  202. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenants/mutations.py +0 -0
  203. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenants/queries.py +0 -0
  204. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/tenants/subscriptions.py +0 -0
  205. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat/__init__.py +0 -0
  206. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat/mutations.py +0 -0
  207. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat/queries.py +0 -0
  208. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat/subscriptions.py +0 -0
  209. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat/types.py +0 -0
  210. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat_score/__init__.py +0 -0
  211. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat_score/mutations.py +0 -0
  212. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat_score/queries.py +0 -0
  213. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat_score/subscriptions.py +0 -0
  214. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/threat_score/types.py +0 -0
  215. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/trip/__init__.py +0 -0
  216. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/trip/mutations.py +0 -0
  217. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/trip/queries.py +0 -0
  218. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/trip/subscriptions.py +0 -0
  219. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/trip/types.py +0 -0
  220. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/users/__init__.py +0 -0
  221. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/users/mutations.py +0 -0
  222. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/users/queries.py +0 -0
  223. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/users/subscriptions.py +0 -0
  224. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/services/users/types.py +0 -0
  225. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/tokens.py +0 -0
  226. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python/utils.py +0 -0
  227. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python.egg-info/SOURCES.txt +0 -0
  228. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python.egg-info/dependency_links.txt +0 -0
  229. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python.egg-info/requires.txt +0 -0
  230. {taegis_sdk_python-1.2.6 → taegis_sdk_python-1.2.7}/taegis_sdk_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: taegis-sdk-python
3
- Version: 1.2.6
3
+ Version: 1.2.7
4
4
  Summary: Taegis Python SDK
5
5
  Home-page: https://github.com/secureworks/taegis-sdk-python
6
6
  Author: Secureworks
@@ -0,0 +1 @@
1
+ __version__ = "v1.2.7"
@@ -166,11 +166,12 @@ class GraphQLService:
166
166
  return self
167
167
 
168
168
  def __exit__(self, exc_type, exc_val, exc_tb):
169
- if self._context_kwargs[threading.get_ident()]:
170
- self._context_kwargs[threading.get_ident()].pop()
169
+ if threading.get_ident() in self._context_kwargs:
170
+ if self._context_kwargs[threading.get_ident()]:
171
+ self._context_kwargs[threading.get_ident()].pop()
171
172
 
172
- else:
173
- del self._context_kwargs[threading.get_ident()]
173
+ else:
174
+ del self._context_kwargs[threading.get_ident()]
174
175
 
175
176
  @property
176
177
  def _context_manager(self):
@@ -33,7 +33,7 @@ class TaegisSDKInvestigations2Mutation:
33
33
  def create_investigation_v2(
34
34
  self, input_: CreateInvestigationInput
35
35
  ) -> InvestigationV2:
36
- """Create new investigation."""
36
+ """createInvestigationV2 creates new investigation with the provided arguments.."""
37
37
  endpoint = "createInvestigationV2"
38
38
 
39
39
  result = self.service.execute_mutation(
@@ -50,7 +50,9 @@ class TaegisSDKInvestigations2Mutation:
50
50
  def update_investigation_v2(
51
51
  self, input_: UpdateInvestigationV2Input
52
52
  ) -> InvestigationV2:
53
- """Update an existing investigation."""
53
+ """updateInvestigationV2 updates an existing investigation.
54
+ This is a PATCH style mutation, only fields that are send in the input will be updated..
55
+ """
54
56
  endpoint = "updateInvestigationV2"
55
57
 
56
58
  result = self.service.execute_mutation(
@@ -67,11 +69,17 @@ class TaegisSDKInvestigations2Mutation:
67
69
  def add_evidence_to_investigation(
68
70
  self, input_: AddEvidenceToInvestigationInput
69
71
  ) -> AddEvidenceToInvestigationResult:
70
- """Add more evidence to an existing investigation
72
+ """addEvidenceToInvestigation will add more evidence to an existing investigation.
73
+ Evidence added through this mutation will not be considered genesis evidence.
74
+ The response will include the evidence that the service will attempt to add to the investigation.
71
75
 
72
- This is a background job, it will be pretty quick, but added alerts/events will likely not show up in the returned investigation
73
- The processing status will reflect where the the investigation is at in the processing job.
74
- """
76
+ Adding evidence to investigations is an asynchronous operation.
77
+ It will typically finish pretty quickly, but added alerts/events will may not show up in the returned investigation until the async job is fully complete.
78
+ The processing status, that is found on the investigation type will reflect the state of the processing job.
79
+ Once the status is set to 'SUCCESS' the background job is complete and requesting the investigation will return the related evidence.
80
+
81
+ Adding, removing or updating evidence (closing an investigation) while other jobs are processing for a given investigation will cause the jobs to queue.
82
+ Jobs will be worked through in the order they were received.."""
75
83
  endpoint = "addEvidenceToInvestigation"
76
84
 
77
85
  result = self.service.execute_mutation(
@@ -88,11 +96,16 @@ class TaegisSDKInvestigations2Mutation:
88
96
  def remove_evidence_from_investigation(
89
97
  self, input_: RemoveEvidenceFromInvestigationInput
90
98
  ) -> RemoveEvidenceFromInvestigationResult:
91
- """Remove evidence from an existing investigation
99
+ """removeEvidenceFromInvestigation will remove evidence from an existing investigation.
100
+ The response will include the evidence that the service will attempt to remove from the investigation.
92
101
 
93
- This is a background job, it will be pretty quick, but removed alerts/events will likely still be present in the returned investigation
94
- The processing status will reflect where the the investigation is at in the processing job.
95
- """
102
+ Removing evidence from investigations is an asynchronous operation.
103
+ It will typically finish pretty quickly, but removed alerts/events will can remain attached to the investigation until the async job is fully complete.
104
+ The processing status, that is found on the investigation type will reflect the state of the processing job.
105
+ Once the status is set to 'SUCCESS' the background job is complete and requesting the investigation will only return evidence that was not removed.
106
+
107
+ Adding, removing or updating evidence (closing an investigation) while other jobs are processing for a given investigation will cause the jobs to queue.
108
+ Jobs will be worked through in the order they were received.."""
96
109
  endpoint = "removeEvidenceFromInvestigation"
97
110
 
98
111
  result = self.service.execute_mutation(
@@ -108,10 +121,36 @@ class TaegisSDKInvestigations2Mutation:
108
121
  "for mutation removeEvidenceFromInvestigation"
109
122
  )
110
123
 
124
+ def close_investigation(self, input_: CloseInvestigationInput) -> InvestigationV2:
125
+ """closeInvestigation will close an existing investigation.
126
+ If the investigation has alerts attached to it, the alertsResolutionStatus field is required and alerts will be resolved based on the provided status.
127
+ Once an investigation is closed, it can no longer be edited or have evidence added to it while in the closed state, it can only be archived.
128
+ A closed investigation can be reopened if changes are needed after closing.
129
+
130
+ Resolving evidence in an investigation is an asynchronous operation.
131
+ It will typically finish pretty quickly, but resolving alerts will may not reflect the updated status until the async job is fully complete.
132
+ The processing status, that is found on the investigation type will reflect the state of the processing job.
133
+ Once the status is set to 'SUCCESS' the background job is complete and the alerts will have been updated.
134
+
135
+ Adding, removing or updating evidence (closing an investigation) while other jobs are processing for a given investigation will cause the jobs to queue.
136
+ Jobs will be worked through in the order they were received.."""
137
+ endpoint = "closeInvestigation"
138
+
139
+ result = self.service.execute_mutation(
140
+ endpoint=endpoint,
141
+ variables={
142
+ "input": prepare_input(input_),
143
+ },
144
+ output=build_output_string(InvestigationV2),
145
+ )
146
+ if result.get(endpoint) is not None:
147
+ return InvestigationV2.from_dict(result.get(endpoint))
148
+ raise GraphQLNoRowsInResultSetError("for mutation closeInvestigation")
149
+
111
150
  def create_investigation_rule(
112
151
  self, input_: CreateInvestigationRuleInput
113
152
  ) -> InvestigationRule:
114
- """Create a new investigation rule."""
153
+ """createInvestigationRule accepts input to create a new auto-investigation rule.."""
115
154
  endpoint = "createInvestigationRule"
116
155
 
117
156
  result = self.service.execute_mutation(
@@ -128,7 +167,7 @@ class TaegisSDKInvestigations2Mutation:
128
167
  def update_investigation_rule(
129
168
  self, input_: UpdateInvestigationRuleInput
130
169
  ) -> InvestigationRule:
131
- """Update an existing investigation rule."""
170
+ """updateInvestigationRule accepts input to update an existing auto-investigation rule.."""
132
171
  endpoint = "updateInvestigationRule"
133
172
 
134
173
  result = self.service.execute_mutation(
@@ -145,7 +184,8 @@ class TaegisSDKInvestigations2Mutation:
145
184
  def delete_investigation_rule(
146
185
  self, input_: DeleteInvestigationRuleInput
147
186
  ) -> InvestigationRule:
148
- """Delete an existing investigation rule - this is a hard delete at this time. Data will not be recoverable.."""
187
+ """deleteInvestigationRule removes an existing investigation rule.
188
+ This is a hard delete. Data will not be recoverable.."""
149
189
  endpoint = "deleteInvestigationRule"
150
190
 
151
191
  result = self.service.execute_mutation(
@@ -162,7 +202,7 @@ class TaegisSDKInvestigations2Mutation:
162
202
  def create_investigation_template(
163
203
  self, input_: CreateInvestigationTemplateInput
164
204
  ) -> InvestigationTemplate:
165
- """Create a new investigation template."""
205
+ """createInvestigationTemplate accepts input to create a new auto-investigation template.."""
166
206
  endpoint = "createInvestigationTemplate"
167
207
 
168
208
  result = self.service.execute_mutation(
@@ -179,7 +219,7 @@ class TaegisSDKInvestigations2Mutation:
179
219
  def update_investigation_template(
180
220
  self, input_: UpdateInvestigationTemplateInput
181
221
  ) -> InvestigationTemplate:
182
- """Update an existing investigation template."""
222
+ """updateInvestigationTemplate accepts input to update an existing auto-investigation template.."""
183
223
  endpoint = "updateInvestigationTemplate"
184
224
 
185
225
  result = self.service.execute_mutation(
@@ -196,7 +236,8 @@ class TaegisSDKInvestigations2Mutation:
196
236
  def delete_investigation_template(
197
237
  self, input_: DeleteInvestigationTemplateInput
198
238
  ) -> InvestigationTemplate:
199
- """Delete an existing investigation template - this is a hard delete. Data will not be recoverable.."""
239
+ """deleteInvestigationTemplate removes an existing investigation template.
240
+ This is a hard delete. Data will not be recoverable.."""
200
241
  endpoint = "deleteInvestigationTemplate"
201
242
 
202
243
  result = self.service.execute_mutation(
@@ -213,7 +254,9 @@ class TaegisSDKInvestigations2Mutation:
213
254
  def import_investigation_resources(
214
255
  self, input_: ImportInvestigationResourcesInput
215
256
  ) -> List[InvestigationResource]:
216
- """Create or update investigation resource(s)."""
257
+ """importInvestigationResources will import investigation resources (rules & templates) from a YAML file.
258
+ The input YAML structure can be retrieved from a YAML string exported from the exportInvestigationResources query..
259
+ """
217
260
  endpoint = "importInvestigationResources"
218
261
 
219
262
  result = self.service.execute_mutation(
@@ -233,7 +276,7 @@ class TaegisSDKInvestigations2Mutation:
233
276
  def add_comment_to_investigation(
234
277
  self, input_: AddCommentToInvestigationInput
235
278
  ) -> CommentV2:
236
- """Add new comment to the provided investigation id."""
279
+ """addCommentToInvestigation adds a comment to an existing investigation.."""
237
280
  endpoint = "addCommentToInvestigation"
238
281
 
239
282
  result = self.service.execute_mutation(
@@ -250,7 +293,11 @@ class TaegisSDKInvestigations2Mutation:
250
293
  def update_investigation_comment(
251
294
  self, input_: UpdateInvestigationCommentInput
252
295
  ) -> CommentV2:
253
- """Update existing comment."""
296
+ """updateInvestigationComment updates an existing comment on an investigation.
297
+ This is a PATCH style mutation, only fields that are send in the input will be updated.
298
+ Only the user who created the comment can update it.
299
+ Updating a comment and adding new @mentions will trigger new notifications but will not send notifications to @mentions that are already present in the comment..
300
+ """
254
301
  endpoint = "updateInvestigationComment"
255
302
 
256
303
  result = self.service.execute_mutation(
@@ -267,7 +314,8 @@ class TaegisSDKInvestigations2Mutation:
267
314
  def delete_investigation_comment(
268
315
  self, input_: DeleteInvestigationCommentInput
269
316
  ) -> CommentV2:
270
- """Delete an investigation comment- this is a hard delete at this time. Data will not be recoverable.."""
317
+ """deleteInvestigationComment removes an existing comment from an investigation.
318
+ This is a hard delete. Data will not be recoverable.."""
271
319
  endpoint = "deleteInvestigationComment"
272
320
 
273
321
  result = self.service.execute_mutation(
@@ -281,25 +329,13 @@ class TaegisSDKInvestigations2Mutation:
281
329
  return CommentV2.from_dict(result.get(endpoint))
282
330
  raise GraphQLNoRowsInResultSetError("for mutation deleteInvestigationComment")
283
331
 
284
- def close_investigation(self, input_: CloseInvestigationInput) -> InvestigationV2:
285
- """Close an investigation and resolve associated alerts (if exists) asynchronously."""
286
- endpoint = "closeInvestigation"
287
-
288
- result = self.service.execute_mutation(
289
- endpoint=endpoint,
290
- variables={
291
- "input": prepare_input(input_),
292
- },
293
- output=build_output_string(InvestigationV2),
294
- )
295
- if result.get(endpoint) is not None:
296
- return InvestigationV2.from_dict(result.get(endpoint))
297
- raise GraphQLNoRowsInResultSetError("for mutation closeInvestigation")
298
-
299
332
  def archive_investigation_v2(
300
333
  self, input_: ArchiveInvestigationInput
301
334
  ) -> InvestigationV2:
302
- """Archive investigation."""
335
+ """archiveInvestigationV2 archives an existing investigation.
336
+ Only investigations that are closed can be archived.
337
+ There may be some investigations that are archived but not in closed states, these are legacy investigations that were archived before the "closed" requirement was introduced..
338
+ """
303
339
  endpoint = "archiveInvestigationV2"
304
340
 
305
341
  result = self.service.execute_mutation(
@@ -316,7 +352,7 @@ class TaegisSDKInvestigations2Mutation:
316
352
  def unarchive_investigation_v2(
317
353
  self, input_: UnarchiveInvestigationInput
318
354
  ) -> InvestigationV2:
319
- """Unarchive investigation."""
355
+ """unarchiveInvestigationV2 unarchives an archived investigation.."""
320
356
  endpoint = "unarchiveInvestigationV2"
321
357
 
322
358
  result = self.service.execute_mutation(
@@ -333,7 +369,10 @@ class TaegisSDKInvestigations2Mutation:
333
369
  def archive_investigations_v2(
334
370
  self, input_: ArchiveInvestigationsInput
335
371
  ) -> ArchivedInvestigations:
336
- """Bulk archive investigations."""
372
+ """archiveInvestigationsV2 archives a set of existing investigations.
373
+ Only investigations that are closed can be archived.
374
+ The response will include the ids of the investigations that were successfully archived and will not return errors for investigations that could not be archived..
375
+ """
337
376
  endpoint = "archiveInvestigationsV2"
338
377
 
339
378
  result = self.service.execute_mutation(
@@ -350,7 +389,9 @@ class TaegisSDKInvestigations2Mutation:
350
389
  def unarchive_investigations_v2(
351
390
  self, input_: UnarchiveInvestigationsInput
352
391
  ) -> UnarchivedInvestigations:
353
- """Bulk unarchive investigations."""
392
+ """unarchiveInvestigationsV2 unarchives a set of archived investigations.
393
+ The response will include the ids of the investigations that were successfully unarchived and will not return errors for investigations that could not be unarchived..
394
+ """
354
395
  endpoint = "unarchiveInvestigationsV2"
355
396
 
356
397
  result = self.service.execute_mutation(
@@ -367,7 +408,9 @@ class TaegisSDKInvestigations2Mutation:
367
408
  def init_investigation_file_upload(
368
409
  self, input_: InitInvestigationFileUploadInput
369
410
  ) -> InvestigationFileUpload:
370
- """Initialize file upload to get Presigned URL to upload file."""
411
+ """initInvestigationFileUpload initializes a file upload for an investigation.
412
+ The response will include a pre-signed URL that can be used to upload a file to the investigation..
413
+ """
371
414
  endpoint = "initInvestigationFileUpload"
372
415
 
373
416
  result = self.service.execute_mutation(
@@ -384,7 +427,8 @@ class TaegisSDKInvestigations2Mutation:
384
427
  def delete_investigation_file(
385
428
  self, input_: DeleteInvestigationFileInput
386
429
  ) -> InvestigationFileV2:
387
- """Delete investigation file."""
430
+ """deleteInvestigationFile removes an existing file from an investigation.
431
+ This is a hard delete. Data will not be recoverable.."""
388
432
  endpoint = "deleteInvestigationFile"
389
433
 
390
434
  result = self.service.execute_mutation(
@@ -31,7 +31,7 @@ class TaegisSDKInvestigations2Query:
31
31
  self.service = service
32
32
 
33
33
  def investigation_v2(self, arguments: InvestigationV2Arguments) -> InvestigationV2:
34
- """Get an Investigation."""
34
+ """investigationV2 gets a single Investigation.."""
35
35
  endpoint = "investigationV2"
36
36
 
37
37
  result = self.service.execute_query(
@@ -48,7 +48,7 @@ class TaegisSDKInvestigations2Query:
48
48
  def investigations_v2(
49
49
  self, arguments: InvestigationsV2Arguments
50
50
  ) -> InvestigationsV2:
51
- """Search investigations."""
51
+ """investigationsV2 returns a list of investigations matching the provided arguments.."""
52
52
  endpoint = "investigationsV2"
53
53
 
54
54
  result = self.service.execute_query(
@@ -65,7 +65,7 @@ class TaegisSDKInvestigations2Query:
65
65
  def investigation_rule(
66
66
  self, arguments: InvestigationRuleArguments
67
67
  ) -> InvestigationRule:
68
- """Get an auto-investigation rule."""
68
+ """investigationRule gets an auto-investigation rule."""
69
69
  endpoint = "investigationRule"
70
70
 
71
71
  result = self.service.execute_query(
@@ -82,7 +82,7 @@ class TaegisSDKInvestigations2Query:
82
82
  def investigation_rules(
83
83
  self, arguments: InvestigationRulesArguments
84
84
  ) -> InvestigationRules:
85
- """Get auto-investigation rules."""
85
+ """investigationRules returns a list of investigation rules matching the provided arguments.."""
86
86
  endpoint = "investigationRules"
87
87
 
88
88
  result = self.service.execute_query(
@@ -99,7 +99,7 @@ class TaegisSDKInvestigations2Query:
99
99
  def investigation_template(
100
100
  self, arguments: InvestigationTemplateArguments
101
101
  ) -> InvestigationTemplate:
102
- """Get an auto-investigation template."""
102
+ """investigationTemplate gets an auto-investigation template."""
103
103
  endpoint = "investigationTemplate"
104
104
 
105
105
  result = self.service.execute_query(
@@ -116,7 +116,7 @@ class TaegisSDKInvestigations2Query:
116
116
  def investigation_templates(
117
117
  self, arguments: InvestigationTemplatesArguments
118
118
  ) -> InvestigationTemplates:
119
- """Get auto-investigation templates."""
119
+ """investigationTemplates returns a list of investigation templates matching the provided arguments.."""
120
120
  endpoint = "investigationTemplates"
121
121
 
122
122
  result = self.service.execute_query(
@@ -133,7 +133,9 @@ class TaegisSDKInvestigations2Query:
133
133
  def export_investigation_resources(
134
134
  self, arguments: ExportInvestigationResourcesArguments
135
135
  ) -> InvestigationResourceExport:
136
- """Get the yaml string for auto-investigation resources (rules & templates)."""
136
+ """exportInvestigationResources returns a YAML string representation for auto-investigation resources (rules & templates).
137
+ The returned string can be saved into a file and imported back into the system using importInvestigationResources..
138
+ """
137
139
  endpoint = "exportInvestigationResources"
138
140
 
139
141
  result = self.service.execute_query(
@@ -150,7 +152,7 @@ class TaegisSDKInvestigations2Query:
150
152
  def investigation_v2_timeline(
151
153
  self, arguments: InvestigationV2TimelineArguments
152
154
  ) -> InvestigationV2Timeline:
153
- """Get the investigation timeline."""
155
+ """investigationV2Timeline returns an investigation timeline detailing the order of alerts, events and other actions taken in relation to an investigation.."""
154
156
  endpoint = "investigationV2Timeline"
155
157
 
156
158
  result = self.service.execute_query(
@@ -165,7 +167,7 @@ class TaegisSDKInvestigations2Query:
165
167
  raise GraphQLNoRowsInResultSetError("for query investigationV2Timeline")
166
168
 
167
169
  def comments_v2(self, arguments: CommentsV2Arguments) -> CommentsV2:
168
- """Get all investigation comments."""
170
+ """commentsV2 returns all the comments for an investigation."""
169
171
  endpoint = "commentsV2"
170
172
 
171
173
  result = self.service.execute_query(
@@ -180,7 +182,7 @@ class TaegisSDKInvestigations2Query:
180
182
  raise GraphQLNoRowsInResultSetError("for query commentsV2")
181
183
 
182
184
  def investigation_v2_types(self) -> List[InvestigationV2Type]:
183
- """Get investigation types list based on user."""
185
+ """investigationV2Types returns the available investigation types for a given user and the current tenant's service level."""
184
186
  endpoint = "investigationV2Types"
185
187
 
186
188
  result = self.service.execute_query(
@@ -197,7 +199,8 @@ class TaegisSDKInvestigations2Query:
197
199
  def investigation_file_v2(
198
200
  self, arguments: InvestigationFileV2Arguments
199
201
  ) -> InvestigationFileV2:
200
- """Get investigation file meta details - includes presigned download url."""
202
+ """investigationFileV2 returns file details for a single file attached to an investigation based on the arguments provided.
203
+ The result will also include a pre-signed download url.."""
201
204
  endpoint = "investigationFileV2"
202
205
 
203
206
  result = self.service.execute_query(
@@ -214,7 +217,9 @@ class TaegisSDKInvestigations2Query:
214
217
  def investigation_files_v2(
215
218
  self, arguments: InvestigationFilesV2Arguments
216
219
  ) -> InvestigationFilesV2:
217
- """Get investigation files meta details - does not include presigned download urls."""
220
+ """investigationFilesV2 returns file details for all files matching the arguments provided.
221
+ The results will not include pre-signed download urls for each file metadata returned..
222
+ """
218
223
  endpoint = "investigationFilesV2"
219
224
 
220
225
  result = self.service.execute_query(