taegis-sdk-python 1.2.23__tar.gz → 1.2.25__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 (257) hide show
  1. {taegis_sdk_python-1.2.23/taegis_sdk_python.egg-info → taegis_sdk_python-1.2.25}/PKG-INFO +2 -2
  2. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/README.md +1 -1
  3. taegis_sdk_python-1.2.25/taegis_sdk_python/_version.py +1 -0
  4. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/authentication.py +21 -7
  5. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/access_points/mutations.py +1 -0
  6. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/access_points/queries.py +1 -0
  7. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/access_points/subscriptions.py +1 -0
  8. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/access_points/types.py +1 -0
  9. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/agent/mutations.py +1 -0
  10. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/agent/queries.py +1 -0
  11. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/agent/subscriptions.py +1 -0
  12. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/agent/types.py +1 -0
  13. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/alerts/mutations.py +1 -0
  14. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/alerts/queries.py +1 -0
  15. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/alerts/subscriptions.py +1 -0
  16. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/alerts/types.py +35 -31
  17. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets/mutations.py +1 -0
  18. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets/queries.py +1 -0
  19. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets/subscriptions.py +1 -0
  20. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets/types.py +1 -0
  21. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets2/mutations.py +5 -2
  22. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets2/queries.py +1 -0
  23. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets2/subscriptions.py +1 -0
  24. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets2/types.py +11 -1
  25. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/audits/mutations.py +1 -0
  26. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/audits/queries.py +1 -0
  27. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/audits/subscriptions.py +1 -0
  28. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/audits/types.py +1 -0
  29. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/authz/mutations.py +1 -0
  30. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/authz/queries.py +1 -0
  31. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/authz/subscriptions.py +1 -0
  32. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/authz/types.py +1 -0
  33. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/byoti/mutations.py +1 -0
  34. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/byoti/queries.py +1 -0
  35. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/byoti/subscriptions.py +1 -0
  36. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/byoti/types.py +1 -0
  37. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/clients/mutations.py +1 -0
  38. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/clients/queries.py +1 -0
  39. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/clients/subscriptions.py +1 -0
  40. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/clients/types.py +1 -0
  41. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/collector/mutations.py +1 -0
  42. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/collector/queries.py +18 -1
  43. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/collector/subscriptions.py +1 -0
  44. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/collector/types.py +82 -0
  45. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/comments/mutations.py +1 -0
  46. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/comments/queries.py +1 -0
  47. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/comments/subscriptions.py +1 -0
  48. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/comments/types.py +1 -0
  49. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/contracted_endpoint/mutations.py +1 -0
  50. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/contracted_endpoint/queries.py +1 -0
  51. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/contracted_endpoint/subscriptions.py +1 -0
  52. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/contracted_endpoint/types.py +1 -0
  53. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/datasources/mutations.py +1 -0
  54. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/datasources/queries.py +3 -1
  55. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/datasources/subscriptions.py +1 -0
  56. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/datasources/types.py +1 -0
  57. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/detector_registry/mutations.py +1 -0
  58. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/detector_registry/queries.py +1 -0
  59. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/detector_registry/subscriptions.py +1 -0
  60. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/detector_registry/types.py +1 -0
  61. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_command_manager/mutations.py +1 -0
  62. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_command_manager/queries.py +1 -0
  63. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_command_manager/subscriptions.py +1 -0
  64. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_command_manager/types.py +4 -0
  65. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_management_service/mutations.py +1 -0
  66. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_management_service/queries.py +1 -0
  67. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_management_service/subscriptions.py +1 -0
  68. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_management_service/types.py +1 -0
  69. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/event_search/mutations.py +1 -0
  70. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/event_search/queries.py +1 -0
  71. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/event_search/subscriptions.py +1 -0
  72. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/event_search/types.py +1 -0
  73. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/events/mutations.py +1 -0
  74. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/events/queries.py +1 -0
  75. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/events/subscriptions.py +1 -0
  76. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/events/types.py +1 -0
  77. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/exports/mutations.py +1 -0
  78. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/exports/queries.py +1 -0
  79. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/exports/subscriptions.py +1 -0
  80. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/exports/types.py +1 -0
  81. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/fast_ioc/mutations.py +1 -0
  82. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/fast_ioc/queries.py +5 -2
  83. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/fast_ioc/subscriptions.py +1 -0
  84. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/fast_ioc/types.py +1 -0
  85. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/file_info/mutations.py +1 -0
  86. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/file_info/queries.py +1 -0
  87. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/file_info/subscriptions.py +1 -0
  88. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/file_info/types.py +7 -6
  89. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/ingest_stats/mutations.py +1 -0
  90. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/ingest_stats/queries.py +1 -0
  91. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/ingest_stats/subscriptions.py +1 -0
  92. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/ingest_stats/types.py +1 -0
  93. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations/mutations.py +1 -0
  94. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations/queries.py +13 -6
  95. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations/subscriptions.py +1 -0
  96. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations/types.py +10 -9
  97. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations2/mutations.py +15 -7
  98. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations2/queries.py +5 -2
  99. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations2/subscriptions.py +1 -0
  100. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations2/types.py +221 -186
  101. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/isensor/mutations.py +1 -0
  102. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/isensor/queries.py +1 -0
  103. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/isensor/subscriptions.py +1 -0
  104. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/isensor/types.py +8 -0
  105. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/mitre_attack_info/mutations.py +1 -0
  106. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/mitre_attack_info/queries.py +1 -0
  107. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/mitre_attack_info/subscriptions.py +1 -0
  108. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/mitre_attack_info/types.py +1 -0
  109. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_context/mutations.py +1 -0
  110. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_context/queries.py +1 -0
  111. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_context/subscriptions.py +1 -0
  112. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_context/types.py +1 -0
  113. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_ioc/mutations.py +1 -0
  114. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_ioc/queries.py +5 -2
  115. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_ioc/subscriptions.py +1 -0
  116. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_ioc/types.py +1 -0
  117. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/nl_search/mutations.py +1 -0
  118. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/nl_search/queries.py +1 -0
  119. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/nl_search/subscriptions.py +1 -0
  120. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/nl_search/types.py +1 -0
  121. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notebooks/mutations.py +1 -0
  122. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notebooks/queries.py +1 -0
  123. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notebooks/subscriptions.py +1 -0
  124. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notebooks/types.py +1 -0
  125. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notifications/mutations.py +1 -0
  126. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notifications/queries.py +1 -0
  127. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notifications/subscriptions.py +1 -0
  128. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notifications/types.py +1 -0
  129. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/preferences/mutations.py +1 -0
  130. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/preferences/queries.py +1 -0
  131. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/preferences/subscriptions.py +1 -0
  132. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/preferences/types.py +1 -0
  133. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/roadrunner/mutations.py +1 -0
  134. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/roadrunner/queries.py +1 -0
  135. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/roadrunner/subscriptions.py +1 -0
  136. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/roadrunner/types.py +1 -0
  137. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/rules/mutations.py +3 -1
  138. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/rules/queries.py +1 -0
  139. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/rules/subscriptions.py +1 -0
  140. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/rules/types.py +1 -0
  141. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/sharelinks/mutations.py +1 -0
  142. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/sharelinks/queries.py +1 -0
  143. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/sharelinks/subscriptions.py +1 -0
  144. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/sharelinks/types.py +1 -0
  145. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/subjects/mutations.py +1 -0
  146. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/subjects/queries.py +1 -0
  147. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/subjects/subscriptions.py +1 -0
  148. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/subjects/types.py +1 -0
  149. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenant_profiles/mutations.py +1 -0
  150. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenant_profiles/queries.py +1 -0
  151. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenant_profiles/subscriptions.py +1 -0
  152. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenant_profiles/types.py +37 -36
  153. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants/mutations.py +1 -0
  154. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants/queries.py +1 -0
  155. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants/subscriptions.py +1 -0
  156. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants/types.py +7 -0
  157. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants4/mutations.py +1 -0
  158. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants4/queries.py +2 -3
  159. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants4/subscriptions.py +1 -0
  160. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants4/types.py +1 -0
  161. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat/mutations.py +1 -0
  162. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat/queries.py +47 -0
  163. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat/subscriptions.py +1 -0
  164. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat/types.py +229 -0
  165. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat_score/mutations.py +1 -0
  166. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat_score/queries.py +1 -0
  167. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat_score/subscriptions.py +1 -0
  168. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat_score/types.py +1 -0
  169. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trigger_action/mutations.py +1 -0
  170. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trigger_action/queries.py +1 -0
  171. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trigger_action/subscriptions.py +1 -0
  172. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trigger_action/types.py +1 -0
  173. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trip/mutations.py +1 -0
  174. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trip/queries.py +1 -0
  175. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trip/subscriptions.py +1 -0
  176. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trip/types.py +1 -0
  177. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/users/mutations.py +1 -0
  178. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/users/queries.py +3 -1
  179. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/users/subscriptions.py +1 -0
  180. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/users/types.py +19 -0
  181. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/vdr/mutations.py +1 -0
  182. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/vdr/queries.py +51 -3
  183. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/vdr/subscriptions.py +1 -0
  184. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/vdr/types.py +269 -113
  185. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25/taegis_sdk_python.egg-info}/PKG-INFO +2 -2
  186. taegis_sdk_python-1.2.23/taegis_sdk_python/_version.py +0 -1
  187. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/LICENSE +0 -0
  188. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/MANIFEST.in +0 -0
  189. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/requirements-dev.txt +0 -0
  190. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/requirements-test.txt +0 -0
  191. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/requirements.txt +0 -0
  192. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/setup.cfg +0 -0
  193. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/setup.py +0 -0
  194. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/__init__.py +0 -0
  195. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/_consts.py +0 -0
  196. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/config.py +0 -0
  197. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/errors.py +0 -0
  198. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/service_core.py +0 -0
  199. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/__init__.py +0 -0
  200. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/access_points/__init__.py +0 -0
  201. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/agent/__init__.py +0 -0
  202. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/alerts/__init__.py +0 -0
  203. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets/__init__.py +0 -0
  204. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/assets2/__init__.py +0 -0
  205. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/audits/__init__.py +0 -0
  206. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/authz/__init__.py +0 -0
  207. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/byoti/__init__.py +0 -0
  208. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/clients/__init__.py +0 -0
  209. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/collector/__init__.py +0 -0
  210. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/comments/__init__.py +0 -0
  211. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/contracted_endpoint/__init__.py +0 -0
  212. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/datasources/__init__.py +0 -0
  213. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/detector_registry/__init__.py +0 -0
  214. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_command_manager/__init__.py +0 -0
  215. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/endpoint_management_service/__init__.py +0 -0
  216. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/event_search/__init__.py +0 -0
  217. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/events/__init__.py +0 -0
  218. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/exports/__init__.py +0 -0
  219. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/fast_ioc/__init__.py +0 -0
  220. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/file_info/__init__.py +0 -0
  221. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/ingest_stats/__init__.py +0 -0
  222. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations/__init__.py +0 -0
  223. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/investigations2/__init__.py +0 -0
  224. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/isensor/__init__.py +0 -0
  225. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/mitre_attack_info/__init__.py +0 -0
  226. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_context/__init__.py +0 -0
  227. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/multi_tenant_ioc/__init__.py +0 -0
  228. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/nl_search/__init__.py +0 -0
  229. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notebooks/__init__.py +0 -0
  230. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/notifications/__init__.py +0 -0
  231. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/preferences/__init__.py +0 -0
  232. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/queries/__init__.py +0 -0
  233. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/queries/mutations.py +0 -0
  234. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/queries/queries.py +0 -0
  235. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/queries/subscriptions.py +0 -0
  236. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/queries/types.py +0 -0
  237. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/roadrunner/__init__.py +0 -0
  238. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/rules/__init__.py +0 -0
  239. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/sharelinks/__init__.py +0 -0
  240. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/subjects/__init__.py +0 -0
  241. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenant_profiles/__init__.py +0 -0
  242. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants/__init__.py +0 -0
  243. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/tenants4/__init__.py +0 -0
  244. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat/__init__.py +0 -0
  245. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/threat_score/__init__.py +0 -0
  246. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trigger_action/__init__.py +0 -0
  247. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/trip/__init__.py +0 -0
  248. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/users/__init__.py +0 -0
  249. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/services/vdr/__init__.py +0 -0
  250. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/tokens.py +0 -0
  251. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/transport/__init__.py +0 -0
  252. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/transport/aiohttp_websockets.py +0 -0
  253. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python/utils.py +0 -0
  254. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python.egg-info/SOURCES.txt +0 -0
  255. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python.egg-info/dependency_links.txt +0 -0
  256. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/taegis_sdk_python.egg-info/requires.txt +0 -0
  257. {taegis_sdk_python-1.2.23 → taegis_sdk_python-1.2.25}/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.23
3
+ Version: 1.2.25
4
4
  Summary: Taegis Python SDK
5
5
  Home-page: https://github.com/secureworks/taegis-sdk-python
6
6
  Author: Secureworks
@@ -84,7 +84,7 @@ pp(result)
84
84
 
85
85
  ```python
86
86
  results = service.events.subscription.event_query(
87
- query="FROM process EARLIEST=-30d",
87
+ query="FROM process EARLIEST=-1d",
88
88
  options=EventQueryOptions(
89
89
  max_rows=20,
90
90
  page_size=10,
@@ -58,7 +58,7 @@ pp(result)
58
58
 
59
59
  ```python
60
60
  results = service.events.subscription.event_query(
61
- query="FROM process EARLIEST=-30d",
61
+ query="FROM process EARLIEST=-1d",
62
62
  options=EventQueryOptions(
63
63
  max_rows=20,
64
64
  page_size=10,
@@ -0,0 +1 @@
1
+ __version__ = "v1.2.25"
@@ -48,10 +48,10 @@ def check_username(
48
48
  JSON response from username check
49
49
  """
50
50
  logger.debug("Checking login type for username...")
51
- username_endpoint = "/auth/username"
51
+ userlogin_endpoint = "/auth/userLogin"
52
52
 
53
53
  response = post(
54
- f"{request_url}{username_endpoint}", json={"username": username}, timeout=300
54
+ f"{request_url}{userlogin_endpoint}", json={"username": username}, timeout=300
55
55
  )
56
56
  logger.debug(response)
57
57
 
@@ -118,13 +118,22 @@ def get_token(environment: str, request_url: str) -> str: # pragma: no cover
118
118
  else:
119
119
  username = input("Username: ")
120
120
  response = check_username(request_url, username)
121
+ external_provider = response.get("external_provider")
121
122
 
122
- if response.get("login_type") == "username-password":
123
+ if (
124
+ response.get("login_type") == "username-password"
125
+ and external_provider != "COGNITO"
126
+ ):
123
127
  access_token = get_token_by_password_grant(
124
128
  request_url, username
125
129
  )
126
- elif response.get("login_type") == "sso":
127
- access_token = get_token_by_sso_device_code(request_url)
130
+ elif (
131
+ response.get("login_type") == "sso"
132
+ or external_provider == "COGNITO"
133
+ ):
134
+ access_token = get_token_by_device_code_authorization(
135
+ request_url, external_provider
136
+ )
128
137
  else:
129
138
  raise InvalidAuthenticationMethod(
130
139
  message="No known authentication method for user"
@@ -262,8 +271,9 @@ def get_token_by_password_grant(
262
271
  return access_token
263
272
 
264
273
 
265
- def get_token_by_sso_device_code(
274
+ def get_token_by_device_code_authorization(
266
275
  request_url: str,
276
+ external_provider: str,
267
277
  ) -> Union[str, None]: # pragma: no cover
268
278
  """Get a user token via Device Code authorization.
269
279
 
@@ -277,10 +287,14 @@ def get_token_by_sso_device_code(
277
287
  Union[str, None]
278
288
  Access Token
279
289
  """
280
- logger.debug("Trying by SSO device code auth url...")
290
+ logger.debug("Trying by device code auth url...")
281
291
  init_endpoint = "/universal-auth/device/code/auth"
282
292
  token_endpoint = "/universal-auth/device/code/token"
283
293
 
294
+ if external_provider == "COGNITO":
295
+ init_endpoint += "?version=2"
296
+ token_endpoint += "?version=2"
297
+
284
298
  response = post(f"{request_url}{init_endpoint}", timeout=300)
285
299
 
286
300
  try:
@@ -1,4 +1,5 @@
1
1
  """AccessPoints Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """AccessPoints Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """AccessPoints Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """AccessPoints Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -1,4 +1,5 @@
1
1
  """Agent Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Agent Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Agent Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Agent Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -1,4 +1,5 @@
1
1
  """Alerts Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Alerts Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Alerts Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Alerts Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -2006,15 +2007,15 @@ class ImprobableLogonDetailInput:
2006
2007
  source_address: Optional[str] = field(
2007
2008
  default=None, metadata=config(field_name="source_address")
2008
2009
  )
2009
- feature_name: Optional[
2010
- Union[ImprobableLogonDetail_FeatureName, TaegisEnum]
2011
- ] = field(
2012
- default=None,
2013
- metadata=config(
2014
- encoder=encode_enum,
2015
- decoder=lambda x: decode_enum(ImprobableLogonDetail_FeatureName, x),
2016
- field_name="feature_name",
2017
- ),
2010
+ feature_name: Optional[Union[ImprobableLogonDetail_FeatureName, TaegisEnum]] = (
2011
+ field(
2012
+ default=None,
2013
+ metadata=config(
2014
+ encoder=encode_enum,
2015
+ decoder=lambda x: decode_enum(ImprobableLogonDetail_FeatureName, x),
2016
+ field_name="feature_name",
2017
+ ),
2018
+ )
2018
2019
  )
2019
2020
  logon_anomaly: Optional[LogonAnomalyInput] = field(
2020
2021
  default=None, metadata=config(field_name="logon_anomaly")
@@ -2058,15 +2059,15 @@ class ImprobableLogonDetail:
2058
2059
  source_address: Optional[str] = field(
2059
2060
  default=None, metadata=config(field_name="source_address")
2060
2061
  )
2061
- feature_name: Optional[
2062
- Union[ImprobableLogonDetail_FeatureName, TaegisEnum]
2063
- ] = field(
2064
- default=None,
2065
- metadata=config(
2066
- encoder=encode_enum,
2067
- decoder=lambda x: decode_enum(ImprobableLogonDetail_FeatureName, x),
2068
- field_name="feature_name",
2069
- ),
2062
+ feature_name: Optional[Union[ImprobableLogonDetail_FeatureName, TaegisEnum]] = (
2063
+ field(
2064
+ default=None,
2065
+ metadata=config(
2066
+ encoder=encode_enum,
2067
+ decoder=lambda x: decode_enum(ImprobableLogonDetail_FeatureName, x),
2068
+ field_name="feature_name",
2069
+ ),
2070
+ )
2070
2071
  )
2071
2072
  logon_anomaly: Optional[LogonAnomaly] = field(
2072
2073
  default=None, metadata=config(field_name="logon_anomaly")
@@ -2088,15 +2089,17 @@ class AggregateAlertsBySeverityInputInput:
2088
2089
  tenant_service_filters: Optional[List[str]] = field(
2089
2090
  default=None, metadata=config(field_name="tenant_service_filters")
2090
2091
  )
2091
- group_by: Optional[
2092
- Union[AggregateAlertsBySeverityInput_GroupBy, TaegisEnum]
2093
- ] = field(
2094
- default=None,
2095
- metadata=config(
2096
- encoder=encode_enum,
2097
- decoder=lambda x: decode_enum(AggregateAlertsBySeverityInput_GroupBy, x),
2098
- field_name="group_by",
2099
- ),
2092
+ group_by: Optional[Union[AggregateAlertsBySeverityInput_GroupBy, TaegisEnum]] = (
2093
+ field(
2094
+ default=None,
2095
+ metadata=config(
2096
+ encoder=encode_enum,
2097
+ decoder=lambda x: decode_enum(
2098
+ AggregateAlertsBySeverityInput_GroupBy, x
2099
+ ),
2100
+ field_name="group_by",
2101
+ ),
2102
+ )
2100
2103
  )
2101
2104
  earliest: Optional[TimestampInput] = field(
2102
2105
  default=None, metadata=config(field_name="earliest")
@@ -2422,10 +2425,11 @@ class EnrichmentDetail:
2422
2425
  business_email_compromise: Optional[BusinessEmailCompromiseDetail] = field(
2423
2426
  default=None, metadata=config(field_name="business_email_compromise")
2424
2427
  )
2425
- account_compromise_detector_detail: Optional[
2426
- AccountCompromiseDetectorDetail
2427
- ] = field(
2428
- default=None, metadata=config(field_name="account_compromise_detector_detail")
2428
+ account_compromise_detector_detail: Optional[AccountCompromiseDetectorDetail] = (
2429
+ field(
2430
+ default=None,
2431
+ metadata=config(field_name="account_compromise_detector_detail"),
2432
+ )
2429
2433
  )
2430
2434
  file_analysis_detail: Optional[FileAnalysisDetail] = field(
2431
2435
  default=None, metadata=config(field_name="file_analysis_detail")
@@ -1,4 +1,5 @@
1
1
  """Assets Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Assets Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Assets Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Assets Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -1,4 +1,5 @@
1
1
  """Assets2 Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -156,7 +157,8 @@ class TaegisSDKAssets2Mutation:
156
157
  ) -> BulkOpPayloadV2:
157
158
  """Start a job to assign the endpoints matching the filter criteria to the
158
159
  investigation in the input. Use the task ID in the response to poll the
159
- assignBulkAssetsToInvestigationStatus query to determine if the job succeeded.."""
160
+ assignBulkAssetsToInvestigationStatus query to determine if the job succeeded..
161
+ """
160
162
  endpoint = "assignBulkAssetsToInvestigation"
161
163
 
162
164
  result = self.service.execute_mutation(
@@ -177,7 +179,8 @@ class TaegisSDKAssets2Mutation:
177
179
  ) -> BulkOpPayloadV2:
178
180
  """Start a job to delete the provided investigation from the endpoints matching
179
181
  the filter criteria in the input. Use the task ID in the response to poll the
180
- bulkDeleteInvestigationForEndpointsStatus query to determine if the job succeeded.."""
182
+ bulkDeleteInvestigationForEndpointsStatus query to determine if the job succeeded..
183
+ """
181
184
  endpoint = "bulkDeleteInvestigationForEndpoints"
182
185
 
183
186
  result = self.service.execute_mutation(
@@ -1,4 +1,5 @@
1
1
  """Assets2 Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Assets2 Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Assets2 Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -201,7 +202,16 @@ class AutoArchive:
201
202
  """AutoArchive."""
202
203
 
203
204
  enabled: Optional[bool] = field(default=None, metadata=config(field_name="enabled"))
204
- period: Optional[int] = field(default=None, metadata=config(field_name="period"))
205
+ period: Optional[int] = field(
206
+ default=None,
207
+ metadata=config(
208
+ metadata={"deprecated": True, "deprecation_reason": "use periodDays"},
209
+ field_name="period",
210
+ ),
211
+ )
212
+ period_days: Optional[int] = field(
213
+ default=None, metadata=config(field_name="periodDays")
214
+ )
205
215
 
206
216
 
207
217
  @dataclass_json
@@ -1,4 +1,5 @@
1
1
  """Audits Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Audits Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Audits Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Audits Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -1,4 +1,5 @@
1
1
  """Authz Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Authz Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Authz Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Authz Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -1,4 +1,5 @@
1
1
  """Byoti Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Byoti Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Byoti Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Byoti Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -1,4 +1,5 @@
1
1
  """Clients Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Clients Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Clients Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Clients Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -1,4 +1,5 @@
1
1
  """Collector Mutation."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Collector Query."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -640,7 +641,8 @@ class TaegisSDKCollectorQuery:
640
641
  self, cluster_id: Optional[str] = None
641
642
  ) -> LogLastSeenMetrics:
642
643
  """Get last seen metrics for all available log sources for a given cluster.
643
- If no clusterId is specified, this will return all log sources metrics for all existing clusters."""
644
+ If no clusterId is specified, this will return all log sources metrics for all existing clusters.
645
+ """
644
646
  endpoint = "getLogLastSeenMetrics"
645
647
 
646
648
  log.warning(
@@ -727,3 +729,18 @@ class TaegisSDKCollectorQuery:
727
729
  if result.get(endpoint) is not None:
728
730
  return result.get(endpoint)
729
731
  raise GraphQLNoRowsInResultSetError("for query getClustersPasswordHash")
732
+
733
+ def get_data_collectors(self, input_: QlQueryInput) -> DataCollectorResult:
734
+ """Searches and/or aggregates on Data collectors cql schema."""
735
+ endpoint = "getDataCollectors"
736
+
737
+ result = self.service.execute_query(
738
+ endpoint=endpoint,
739
+ variables={
740
+ "input": prepare_input(input_),
741
+ },
742
+ output=build_output_string(DataCollectorResult),
743
+ )
744
+ if result.get(endpoint) is not None:
745
+ return DataCollectorResult.from_dict(result.get(endpoint))
746
+ raise GraphQLNoRowsInResultSetError("for query getDataCollectors")
@@ -1,4 +1,5 @@
1
1
  """Collector Subscription."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code, wildcard-import, unused-wildcard-import, cyclic-import
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Collector Types and Enums."""
2
+
2
3
  # pylint: disable=no-member, unused-argument, too-many-locals, duplicate-code
3
4
 
4
5
  # Autogenerated
@@ -710,6 +711,36 @@ class SyslogMessageCountV2Arguments:
710
711
  )
711
712
 
712
713
 
714
+ @dataclass_json
715
+ @dataclass(order=True, eq=True, frozen=True)
716
+ class QlQueryInput:
717
+ """QlQueryInput."""
718
+
719
+ cql_query: Optional[str] = field(
720
+ default=None, metadata=config(field_name="cqlQuery")
721
+ )
722
+ cursor: Optional[str] = field(default=None, metadata=config(field_name="cursor"))
723
+ count: Optional[int] = field(default=None, metadata=config(field_name="count"))
724
+
725
+
726
+ @dataclass_json
727
+ @dataclass(order=True, eq=True, frozen=True)
728
+ class QLPageCursor:
729
+ """QLPageCursor."""
730
+
731
+ next_cursor: Optional[str] = field(
732
+ default=None, metadata=config(field_name="nextCursor")
733
+ )
734
+ previous_cursor: Optional[str] = field(
735
+ default=None, metadata=config(field_name="previousCursor")
736
+ )
737
+ cursor: Optional[str] = field(default=None, metadata=config(field_name="cursor"))
738
+ count: Optional[int] = field(default=None, metadata=config(field_name="count"))
739
+ total_count: Optional[int] = field(
740
+ default=None, metadata=config(field_name="totalCount")
741
+ )
742
+
743
+
713
744
  @dataclass_json
714
745
  @dataclass(order=True, eq=True, frozen=True)
715
746
  class ScheduledService:
@@ -973,6 +1004,19 @@ class DataSourceMetrics:
973
1004
  )
974
1005
 
975
1006
 
1007
+ @dataclass_json
1008
+ @dataclass(order=True, eq=True, frozen=True)
1009
+ class NodeInfo:
1010
+ """NodeInfo."""
1011
+
1012
+ node_health: Optional[str] = field(
1013
+ default=None, metadata=config(field_name="nodeHealth")
1014
+ )
1015
+ network: Optional[Network] = field(
1016
+ default=None, metadata=config(field_name="network")
1017
+ )
1018
+
1019
+
976
1020
  @dataclass_json
977
1021
  @dataclass(order=True, eq=True, frozen=True)
978
1022
  class ClusterNode:
@@ -1096,6 +1140,41 @@ class Deployment:
1096
1140
  )
1097
1141
 
1098
1142
 
1143
+ @dataclass_json
1144
+ @dataclass(order=True, eq=True, frozen=True)
1145
+ class DataCollector:
1146
+ """DataCollector."""
1147
+
1148
+ id: Optional[str] = field(default=None, metadata=config(field_name="id"))
1149
+ name: Optional[str] = field(default=None, metadata=config(field_name="name"))
1150
+ type: Optional[str] = field(default=None, metadata=config(field_name="type"))
1151
+ collector_health: Optional[str] = field(
1152
+ default=None, metadata=config(field_name="collectorHealth")
1153
+ )
1154
+ is_ha: Optional[bool] = field(default=None, metadata=config(field_name="isHa"))
1155
+ tenant: Optional[str] = field(default=None, metadata=config(field_name="tenant"))
1156
+ nodes: Optional[NodeInfo] = field(default=None, metadata=config(field_name="nodes"))
1157
+ applications: Optional[List[Deployment]] = field(
1158
+ default=None, metadata=config(field_name="applications")
1159
+ )
1160
+
1161
+
1162
+ @dataclass_json
1163
+ @dataclass(order=True, eq=True, frozen=True)
1164
+ class DataCollectorResult:
1165
+ """DataCollectorResult."""
1166
+
1167
+ aggregation: Optional[List[dict]] = field(
1168
+ default=None, metadata=config(field_name="aggregation")
1169
+ )
1170
+ data_collectors: Optional[List[DataCollector]] = field(
1171
+ default=None, metadata=config(field_name="dataCollectors")
1172
+ )
1173
+ pagination: Optional[QLPageCursor] = field(
1174
+ default=None, metadata=config(field_name="pagination")
1175
+ )
1176
+
1177
+
1099
1178
  @dataclass_json
1100
1179
  @dataclass(order=True, eq=True, frozen=True)
1101
1180
  class ClusterImageInput:
@@ -1235,6 +1314,9 @@ class Cluster:
1235
1314
  ha_cidr_block: Optional[str] = field(
1236
1315
  default=None, metadata=config(field_name="haCidrBlock")
1237
1316
  )
1317
+ partner_tenant_name: Optional[str] = field(
1318
+ default=None, metadata=config(field_name="partnerTenantName")
1319
+ )
1238
1320
  cluster_type: Optional[Union[ClusterType, TaegisEnum]] = field(
1239
1321
  default=None,
1240
1322
  metadata=config(