sift-stack-py 0.13.0__tar.gz → 0.14.0__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 (663) hide show
  1. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/PKG-INFO +4 -1
  2. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/annotation_logs/v1/annotation_logs_pb2.pyi +1 -1
  3. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/annotations/v1/annotations_pb2.py +62 -54
  4. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/annotations/v1/annotations_pb2.pyi +30 -5
  5. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/api_keys/v2/api_keys_pb2.py +25 -26
  6. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/calculated_channels/v1/calculated_channels_pb2.py +29 -29
  7. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/calculated_channels/v1/calculated_channels_pb2.pyi +9 -1
  8. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/calculated_channels/v2/calculated_channels_pb2.py +91 -58
  9. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/calculated_channels/v2/calculated_channels_pb2.pyi +120 -3
  10. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/calculated_channels/v2/calculated_channels_pb2_grpc.py +68 -0
  11. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/calculated_channels/v2/calculated_channels_pb2_grpc.pyi +40 -0
  12. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channels/v2/channels_pb2.pyi +2 -2
  13. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channels/v3/channels_pb2.pyi +2 -2
  14. sift_stack_py-0.14.0/lib/sift/common/type/v1/calculated_channels_pb2.py +30 -0
  15. sift_stack_py-0.14.0/lib/sift/common/type/v1/calculated_channels_pb2.pyi +28 -0
  16. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/organization_pb2.py +5 -3
  17. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/organization_pb2.pyi +6 -1
  18. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/user_defined_functions_pb2.py +10 -11
  19. sift_stack_py-0.14.0/lib/sift/common/v1/action_type_pb2.py +27 -0
  20. sift_stack_py-0.14.0/lib/sift/common/v1/action_type_pb2.pyi +75 -0
  21. sift_stack_py-0.14.0/lib/sift/common/v1/resource_type_pb2.py +27 -0
  22. sift_stack_py-0.14.0/lib/sift/common/v1/resource_type_pb2.pyi +59 -0
  23. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data/v2/data_pb2.py +69 -72
  24. sift_stack_py-0.14.0/lib/sift/data_imports/v2/data_imports_pb2.py +190 -0
  25. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data_imports/v2/data_imports_pb2.pyi +337 -13
  26. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/exports/v1/exports_pb2.py +15 -11
  27. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/exports/v1/exports_pb2.pyi +12 -2
  28. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/external_sync/v1/external_sync_pb2.py +11 -3
  29. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/external_sync/v1/external_sync_pb2.pyi +25 -0
  30. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/external_sync/v1/external_sync_pb2_grpc.py +36 -0
  31. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/external_sync/v1/external_sync_pb2_grpc.pyi +29 -0
  32. sift_stack_py-0.14.0/lib/sift/panel_configurations/v1/panel_configuration_pb2.py +94 -0
  33. sift_stack_py-0.14.0/lib/sift/panel_configurations/v1/panel_configuration_pb2.pyi +355 -0
  34. sift_stack_py-0.14.0/lib/sift/panel_configurations/v1/panel_configuration_pb2_grpc.py +169 -0
  35. sift_stack_py-0.14.0/lib/sift/panel_configurations/v1/panel_configuration_pb2_grpc.pyi +104 -0
  36. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/remote_files/v1/remote_files_pb2.py +44 -40
  37. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/remote_files/v1/remote_files_pb2.pyi +33 -2
  38. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/rules/v1/rules_pb2.py +167 -160
  39. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/rules/v1/rules_pb2.pyi +28 -7
  40. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/runs/v2/runs_pb2.py +48 -47
  41. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/runs/v2/runs_pb2.pyi +11 -2
  42. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/saved_searches/v1/saved_searches_pb2.py +34 -32
  43. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/saved_searches/v1/saved_searches_pb2.pyi +8 -3
  44. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/user_defined_functions/v1/user_defined_functions_pb2.py +55 -56
  45. sift_stack_py-0.14.0/lib/sift/user_groups/v2/user_groups_pb2.py +148 -0
  46. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/webhooks/v1/webhooks_pb2.py +80 -81
  47. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/__init__.py +4 -0
  48. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/__init__.py +1 -1
  49. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/_async_interceptors/metadata.py +1 -1
  50. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/_interceptors/metadata.py +2 -2
  51. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/transport.py +11 -6
  52. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/transport_test.py +4 -2
  53. sift_stack_py-0.14.0/lib/sift_client/_internal/low_level_wrappers/_test_results_log.py +215 -0
  54. sift_stack_py-0.14.0/lib/sift_client/_internal/low_level_wrappers/data_imports.py +104 -0
  55. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/remote_files.py +0 -23
  56. sift_stack_py-0.14.0/lib/sift_client/_internal/low_level_wrappers/test_results.py +1269 -0
  57. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/upload.py +2 -4
  58. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/rest.py +1 -1
  59. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/sync_wrapper.py +1 -0
  60. sift_stack_py-0.14.0/lib/sift_client/_internal/util/file.py +183 -0
  61. sift_stack_py-0.14.0/lib/sift_client/_internal/util/hdf5.py +96 -0
  62. sift_stack_py-0.14.0/lib/sift_client/_internal/util/numpy_types.py +38 -0
  63. sift_stack_py-0.14.0/lib/sift_client/_internal/util/tdms.py +203 -0
  64. sift_stack_py-0.14.0/lib/sift_client/_tests/_internal/test_hdf5.py +132 -0
  65. sift_stack_py-0.14.0/lib/sift_client/_tests/_internal/test_tdms.py +380 -0
  66. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/conftest.py +7 -13
  67. sift_stack_py-0.14.0/lib/sift_client/_tests/resources/test_data_imports.py +364 -0
  68. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_exports.py +15 -0
  69. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_jobs.py +71 -0
  70. sift_stack_py-0.14.0/lib/sift_client/_tests/resources/test_test_results.py +772 -0
  71. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_results.py +2 -0
  72. sift_stack_py-0.14.0/lib/sift_client/_tests/util/conftest.py +14 -0
  73. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/util/test_test_results_utils.py +9 -0
  74. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/client.py +7 -0
  75. sift_stack_py-0.14.0/lib/sift_client/config.py +37 -0
  76. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/__init__.py +4 -0
  77. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/_base.py +4 -0
  78. sift_stack_py-0.14.0/lib/sift_client/resources/data_imports.py +340 -0
  79. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/exports.py +1 -1
  80. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/file_attachments.py +9 -4
  81. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/jobs.py +40 -8
  82. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/sync_stubs/__init__.py +3 -0
  83. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/sync_stubs/__init__.pyi +233 -8
  84. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/test_results.py +78 -15
  85. sift_stack_py-0.14.0/lib/sift_client/scripts/import_test_result_log.py +93 -0
  86. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/_base.py +2 -2
  87. sift_stack_py-0.14.0/lib/sift_client/sift_types/data_import.py +812 -0
  88. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/export.py +2 -0
  89. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/job.py +17 -0
  90. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/run.py +41 -0
  91. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/test_report.py +24 -6
  92. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/transport/grpc_transport.py +1 -1
  93. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/util/test_results/__init__.py +13 -7
  94. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/util/test_results/bounds.py +10 -9
  95. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/util/test_results/context_manager.py +127 -8
  96. sift_stack_py-0.14.0/lib/sift_client/util/test_results/pytest_util.py +207 -0
  97. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/util/util.py +4 -0
  98. sift_stack_py-0.14.0/lib/sift_py/yaml/_utils_test.py +109 -0
  99. sift_stack_py-0.14.0/lib/sift_py/yaml/utils.py +82 -0
  100. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_stack_py.egg-info/PKG-INFO +4 -1
  101. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_stack_py.egg-info/SOURCES.txt +50 -68
  102. sift_stack_py-0.14.0/lib/sift_stack_py.egg-info/entry_points.txt +2 -0
  103. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_stack_py.egg-info/requires.txt +3 -0
  104. sift_stack_py-0.14.0/lib/sift_stack_py.egg-info/top_level.txt +3 -0
  105. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/pyproject.toml +28 -7
  106. sift_stack_py-0.13.0/lib/buf/validate/validate_pb2.py +0 -455
  107. sift_stack_py-0.13.0/lib/buf/validate/validate_pb2.pyi +0 -4252
  108. sift_stack_py-0.13.0/lib/buf/validate/validate_pb2_grpc.pyi +0 -45
  109. sift_stack_py-0.13.0/lib/google/__init__.py +0 -1
  110. sift_stack_py-0.13.0/lib/google/api/annotations_pb2.py +0 -27
  111. sift_stack_py-0.13.0/lib/google/api/annotations_pb2.pyi +0 -29
  112. sift_stack_py-0.13.0/lib/google/api/annotations_pb2_grpc.pyi +0 -30
  113. sift_stack_py-0.13.0/lib/google/api/field_behavior_pb2.py +0 -30
  114. sift_stack_py-0.13.0/lib/google/api/field_behavior_pb2.pyi +0 -175
  115. sift_stack_py-0.13.0/lib/google/api/field_behavior_pb2_grpc.pyi +0 -30
  116. sift_stack_py-0.13.0/lib/google/api/http_pb2.py +0 -31
  117. sift_stack_py-0.13.0/lib/google/api/http_pb2.pyi +0 -433
  118. sift_stack_py-0.13.0/lib/google/api/http_pb2_grpc.py +0 -4
  119. sift_stack_py-0.13.0/lib/google/api/http_pb2_grpc.pyi +0 -30
  120. sift_stack_py-0.13.0/lib/protoc_gen_openapiv2/options/annotations_pb2.py +0 -27
  121. sift_stack_py-0.13.0/lib/protoc_gen_openapiv2/options/annotations_pb2.pyi +0 -55
  122. sift_stack_py-0.13.0/lib/protoc_gen_openapiv2/options/annotations_pb2_grpc.py +0 -4
  123. sift_stack_py-0.13.0/lib/protoc_gen_openapiv2/options/openapiv2_pb2.py +0 -138
  124. sift_stack_py-0.13.0/lib/protoc_gen_openapiv2/options/openapiv2_pb2.pyi +0 -1631
  125. sift_stack_py-0.13.0/lib/protoc_gen_openapiv2/options/openapiv2_pb2_grpc.py +0 -4
  126. sift_stack_py-0.13.0/lib/sift/data_imports/v2/data_imports_pb2.py +0 -162
  127. sift_stack_py-0.13.0/lib/sift/options/v1/safe_to_log_pb2.py +0 -26
  128. sift_stack_py-0.13.0/lib/sift/options/v1/safe_to_log_pb2.pyi +0 -14
  129. sift_stack_py-0.13.0/lib/sift/options/v1/safe_to_log_pb2_grpc.py +0 -4
  130. sift_stack_py-0.13.0/lib/sift/policies/v1/policies_pb2.py +0 -133
  131. sift_stack_py-0.13.0/lib/sift/policies/v1/policies_pb2.pyi +0 -360
  132. sift_stack_py-0.13.0/lib/sift/policies/v1/policies_pb2_grpc.py +0 -203
  133. sift_stack_py-0.13.0/lib/sift/policies/v1/policies_pb2_grpc.pyi +0 -124
  134. sift_stack_py-0.13.0/lib/sift/resource_attribute/v1/resource_attribute_pb2.py +0 -401
  135. sift_stack_py-0.13.0/lib/sift/resource_attribute/v1/resource_attribute_pb2.pyi +0 -1229
  136. sift_stack_py-0.13.0/lib/sift/resource_attribute/v1/resource_attribute_pb2_grpc.py +0 -871
  137. sift_stack_py-0.13.0/lib/sift/resource_attribute/v1/resource_attribute_pb2_grpc.pyi +0 -488
  138. sift_stack_py-0.13.0/lib/sift/user_attributes/v1/user_attributes_pb2.py +0 -243
  139. sift_stack_py-0.13.0/lib/sift/user_attributes/v1/user_attributes_pb2.pyi +0 -742
  140. sift_stack_py-0.13.0/lib/sift/user_attributes/v1/user_attributes_pb2_grpc.py +0 -475
  141. sift_stack_py-0.13.0/lib/sift/user_attributes/v1/user_attributes_pb2_grpc.pyi +0 -284
  142. sift_stack_py-0.13.0/lib/sift/user_groups/v2/user_groups_pb2.py +0 -155
  143. sift_stack_py-0.13.0/lib/sift_client/_internal/low_level_wrappers/test_results.py +0 -467
  144. sift_stack_py-0.13.0/lib/sift_client/_internal/util/file.py +0 -63
  145. sift_stack_py-0.13.0/lib/sift_client/_tests/resources/test_test_results.py +0 -400
  146. sift_stack_py-0.13.0/lib/sift_client/util/test_results/pytest_util.py +0 -145
  147. sift_stack_py-0.13.0/lib/sift_py/calculated_channels/__init__.py +0 -0
  148. sift_stack_py-0.13.0/lib/sift_py/file_attachment/_internal/__init__.py +0 -0
  149. sift_stack_py-0.13.0/lib/sift_py/grpc/_async_interceptors/__init__.py +0 -0
  150. sift_stack_py-0.13.0/lib/sift_py/grpc/_interceptors/__init__.py +0 -0
  151. sift_stack_py-0.13.0/lib/sift_py/ingestion/config/yaml/__init__.py +0 -0
  152. sift_stack_py-0.13.0/lib/sift_py/report_templates/__init__.py +0 -0
  153. sift_stack_py-0.13.0/lib/sift_py/rule/__init__.py +0 -0
  154. sift_stack_py-0.13.0/lib/sift_py/yaml/__init__.py +0 -0
  155. sift_stack_py-0.13.0/lib/sift_py/yaml/utils.py +0 -29
  156. sift_stack_py-0.13.0/lib/sift_stack_py.egg-info/top_level.txt +0 -6
  157. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/LICENSE +0 -0
  158. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/README.md +0 -0
  159. {sift_stack_py-0.13.0/lib/buf → sift_stack_py-0.14.0/lib/sift}/__init__.py +0 -0
  160. {sift_stack_py-0.13.0/lib/buf/validate → sift_stack_py-0.14.0/lib/sift/annotation_logs}/__init__.py +0 -0
  161. {sift_stack_py-0.13.0/lib/google/api → sift_stack_py-0.14.0/lib/sift/annotation_logs/v1}/__init__.py +0 -0
  162. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/annotation_logs/v1/annotation_logs_pb2.py +0 -0
  163. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/annotation_logs/v1/annotation_logs_pb2_grpc.py +0 -0
  164. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/annotation_logs/v1/annotation_logs_pb2_grpc.pyi +0 -0
  165. {sift_stack_py-0.13.0/lib/protoc_gen_openapiv2 → sift_stack_py-0.14.0/lib/sift/annotations}/__init__.py +0 -0
  166. {sift_stack_py-0.13.0/lib/protoc_gen_openapiv2/options → sift_stack_py-0.14.0/lib/sift/annotations/v1}/__init__.py +0 -0
  167. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/annotations/v1/annotations_pb2_grpc.py +0 -0
  168. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/annotations/v1/annotations_pb2_grpc.pyi +0 -0
  169. {sift_stack_py-0.13.0/lib/sift → sift_stack_py-0.14.0/lib/sift/api_keys}/__init__.py +0 -0
  170. {sift_stack_py-0.13.0/lib/sift/annotation_logs → sift_stack_py-0.14.0/lib/sift/api_keys/v2}/__init__.py +0 -0
  171. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/api_keys/v2/api_keys_pb2.pyi +0 -0
  172. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/api_keys/v2/api_keys_pb2_grpc.py +0 -0
  173. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/api_keys/v2/api_keys_pb2_grpc.pyi +0 -0
  174. {sift_stack_py-0.13.0/lib/sift/annotation_logs/v1 → sift_stack_py-0.14.0/lib/sift/assets}/__init__.py +0 -0
  175. {sift_stack_py-0.13.0/lib/sift/annotations → sift_stack_py-0.14.0/lib/sift/assets/v1}/__init__.py +0 -0
  176. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/assets/v1/assets_pb2.py +0 -0
  177. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/assets/v1/assets_pb2.pyi +0 -0
  178. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/assets/v1/assets_pb2_grpc.py +0 -0
  179. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/assets/v1/assets_pb2_grpc.pyi +0 -0
  180. {sift_stack_py-0.13.0/lib/sift/annotations/v1 → sift_stack_py-0.14.0/lib/sift/calculated_channels}/__init__.py +0 -0
  181. {sift_stack_py-0.13.0/lib/sift/api_keys → sift_stack_py-0.14.0/lib/sift/calculated_channels/v1}/__init__.py +0 -0
  182. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/calculated_channels/v1/calculated_channels_pb2_grpc.py +0 -0
  183. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/calculated_channels/v1/calculated_channels_pb2_grpc.pyi +0 -0
  184. {sift_stack_py-0.13.0/lib/sift/api_keys → sift_stack_py-0.14.0/lib/sift/calculated_channels}/v2/__init__.py +0 -0
  185. {sift_stack_py-0.13.0/lib/sift/assets → sift_stack_py-0.14.0/lib/sift/campaigns}/__init__.py +0 -0
  186. {sift_stack_py-0.13.0/lib/sift/assets → sift_stack_py-0.14.0/lib/sift/campaigns}/v1/__init__.py +0 -0
  187. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/campaigns/v1/campaigns_pb2.py +0 -0
  188. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/campaigns/v1/campaigns_pb2.pyi +0 -0
  189. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/campaigns/v1/campaigns_pb2_grpc.py +0 -0
  190. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/campaigns/v1/campaigns_pb2_grpc.pyi +0 -0
  191. {sift_stack_py-0.13.0/lib/sift/calculated_channels → sift_stack_py-0.14.0/lib/sift/channel_schemas}/__init__.py +0 -0
  192. {sift_stack_py-0.13.0/lib/sift/calculated_channels → sift_stack_py-0.14.0/lib/sift/channel_schemas}/v1/__init__.py +0 -0
  193. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channel_schemas/v1/channel_schemas_pb2.py +0 -0
  194. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channel_schemas/v1/channel_schemas_pb2.pyi +0 -0
  195. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channel_schemas/v1/channel_schemas_pb2_grpc.py +0 -0
  196. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channel_schemas/v1/channel_schemas_pb2_grpc.pyi +0 -0
  197. {sift_stack_py-0.13.0/lib/sift/calculated_channels → sift_stack_py-0.14.0/lib/sift/channel_schemas}/v2/__init__.py +0 -0
  198. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channel_schemas/v2/channel_schemas_pb2.py +0 -0
  199. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channel_schemas/v2/channel_schemas_pb2.pyi +0 -0
  200. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channel_schemas/v2/channel_schemas_pb2_grpc.py +0 -0
  201. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channel_schemas/v2/channel_schemas_pb2_grpc.pyi +0 -0
  202. {sift_stack_py-0.13.0/lib/sift/campaigns → sift_stack_py-0.14.0/lib/sift/channels}/__init__.py +0 -0
  203. {sift_stack_py-0.13.0/lib/sift/campaigns/v1 → sift_stack_py-0.14.0/lib/sift/channels/v2}/__init__.py +0 -0
  204. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channels/v2/channels_pb2.py +0 -0
  205. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channels/v2/channels_pb2_grpc.py +0 -0
  206. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channels/v2/channels_pb2_grpc.pyi +0 -0
  207. {sift_stack_py-0.13.0/lib/sift/channel_schemas → sift_stack_py-0.14.0/lib/sift/channels/v3}/__init__.py +0 -0
  208. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channels/v3/channels_pb2.py +0 -0
  209. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channels/v3/channels_pb2_grpc.py +0 -0
  210. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/channels/v3/channels_pb2_grpc.pyi +0 -0
  211. {sift_stack_py-0.13.0/lib/sift/channel_schemas/v1 → sift_stack_py-0.14.0/lib/sift/common}/__init__.py +0 -0
  212. {sift_stack_py-0.13.0/lib/sift/channel_schemas/v2 → sift_stack_py-0.14.0/lib/sift/common/type}/__init__.py +0 -0
  213. {sift_stack_py-0.13.0/lib/sift/channels → sift_stack_py-0.14.0/lib/sift/common/type/v1}/__init__.py +0 -0
  214. /sift_stack_py-0.13.0/lib/buf/validate/validate_pb2_grpc.py → /sift_stack_py-0.14.0/lib/sift/common/type/v1/calculated_channels_pb2_grpc.py +0 -0
  215. /sift_stack_py-0.13.0/lib/protoc_gen_openapiv2/options/annotations_pb2_grpc.pyi → /sift_stack_py-0.14.0/lib/sift/common/type/v1/calculated_channels_pb2_grpc.pyi +0 -0
  216. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_bit_field_element_pb2.py +0 -0
  217. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_bit_field_element_pb2.pyi +0 -0
  218. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_bit_field_element_pb2_grpc.py +0 -0
  219. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_bit_field_element_pb2_grpc.pyi +0 -0
  220. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_config_pb2.py +0 -0
  221. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_config_pb2.pyi +0 -0
  222. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_config_pb2_grpc.py +0 -0
  223. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_config_pb2_grpc.pyi +0 -0
  224. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_data_type_pb2.py +0 -0
  225. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_data_type_pb2.pyi +0 -0
  226. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_data_type_pb2_grpc.py +0 -0
  227. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_data_type_pb2_grpc.pyi +0 -0
  228. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_enum_type_pb2.py +0 -0
  229. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_enum_type_pb2.pyi +0 -0
  230. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_enum_type_pb2_grpc.py +0 -0
  231. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/channel_enum_type_pb2_grpc.pyi +0 -0
  232. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/organization_pb2_grpc.py +0 -0
  233. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/organization_pb2_grpc.pyi +0 -0
  234. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/resource_identifier_pb2.py +0 -0
  235. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/resource_identifier_pb2.pyi +0 -0
  236. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/resource_identifier_pb2_grpc.py +0 -0
  237. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/resource_identifier_pb2_grpc.pyi +0 -0
  238. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/resource_ref_pb2.py +0 -0
  239. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/resource_ref_pb2.pyi +0 -0
  240. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/resource_ref_pb2_grpc.py +0 -0
  241. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/resource_ref_pb2_grpc.pyi +0 -0
  242. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/user_defined_functions_pb2.pyi +0 -0
  243. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/user_defined_functions_pb2_grpc.py +0 -0
  244. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/user_defined_functions_pb2_grpc.pyi +0 -0
  245. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/user_pb2.py +0 -0
  246. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/user_pb2.pyi +0 -0
  247. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/user_pb2_grpc.py +0 -0
  248. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/common/type/v1/user_pb2_grpc.pyi +0 -0
  249. {sift_stack_py-0.13.0/lib/sift/channels/v2 → sift_stack_py-0.14.0/lib/sift/common/v1}/__init__.py +0 -0
  250. /sift_stack_py-0.13.0/lib/google/api/annotations_pb2_grpc.py → /sift_stack_py-0.14.0/lib/sift/common/v1/action_type_pb2_grpc.py +0 -0
  251. /sift_stack_py-0.13.0/lib/protoc_gen_openapiv2/options/openapiv2_pb2_grpc.pyi → /sift_stack_py-0.14.0/lib/sift/common/v1/action_type_pb2_grpc.pyi +0 -0
  252. /sift_stack_py-0.13.0/lib/google/api/field_behavior_pb2_grpc.py → /sift_stack_py-0.14.0/lib/sift/common/v1/resource_type_pb2_grpc.py +0 -0
  253. /sift_stack_py-0.13.0/lib/sift/options/v1/safe_to_log_pb2_grpc.pyi → /sift_stack_py-0.14.0/lib/sift/common/v1/resource_type_pb2_grpc.pyi +0 -0
  254. {sift_stack_py-0.13.0/lib/sift/channels/v3 → sift_stack_py-0.14.0/lib/sift/data}/__init__.py +0 -0
  255. {sift_stack_py-0.13.0/lib/sift/common → sift_stack_py-0.14.0/lib/sift/data/v1}/__init__.py +0 -0
  256. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data/v1/data_pb2.py +0 -0
  257. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data/v1/data_pb2.pyi +0 -0
  258. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data/v1/data_pb2_grpc.py +0 -0
  259. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data/v1/data_pb2_grpc.pyi +0 -0
  260. {sift_stack_py-0.13.0/lib/sift/common/type → sift_stack_py-0.14.0/lib/sift/data/v2}/__init__.py +0 -0
  261. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data/v2/data_pb2.pyi +0 -0
  262. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data/v2/data_pb2_grpc.py +0 -0
  263. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data/v2/data_pb2_grpc.pyi +0 -0
  264. {sift_stack_py-0.13.0/lib/sift/common/type/v1 → sift_stack_py-0.14.0/lib/sift/data_imports}/__init__.py +0 -0
  265. {sift_stack_py-0.13.0/lib/sift/data → sift_stack_py-0.14.0/lib/sift/data_imports/v2}/__init__.py +0 -0
  266. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data_imports/v2/data_imports_pb2_grpc.py +0 -0
  267. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/data_imports/v2/data_imports_pb2_grpc.pyi +0 -0
  268. {sift_stack_py-0.13.0/lib/sift/data/v1 → sift_stack_py-0.14.0/lib/sift/dlq_errors}/__init__.py +0 -0
  269. {sift_stack_py-0.13.0/lib/sift/data → sift_stack_py-0.14.0/lib/sift/dlq_errors}/v2/__init__.py +0 -0
  270. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/dlq_errors/v2/dlq_errors_pb2.py +0 -0
  271. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/dlq_errors/v2/dlq_errors_pb2.pyi +0 -0
  272. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/dlq_errors/v2/dlq_errors_pb2_grpc.py +0 -0
  273. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/dlq_errors/v2/dlq_errors_pb2_grpc.pyi +0 -0
  274. {sift_stack_py-0.13.0/lib/sift/data_imports → sift_stack_py-0.14.0/lib/sift/exports}/__init__.py +0 -0
  275. {sift_stack_py-0.13.0/lib/sift/data_imports/v2 → sift_stack_py-0.14.0/lib/sift/exports/v1}/__init__.py +0 -0
  276. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/exports/v1/exports_pb2_grpc.py +0 -0
  277. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/exports/v1/exports_pb2_grpc.pyi +0 -0
  278. {sift_stack_py-0.13.0/lib/sift/dlq_errors → sift_stack_py-0.14.0/lib/sift/external_sync}/__init__.py +0 -0
  279. {sift_stack_py-0.13.0/lib/sift/dlq_errors/v2 → sift_stack_py-0.14.0/lib/sift/external_sync/v1}/__init__.py +0 -0
  280. {sift_stack_py-0.13.0/lib/sift/exports → sift_stack_py-0.14.0/lib/sift/ingest}/__init__.py +0 -0
  281. {sift_stack_py-0.13.0/lib/sift/exports → sift_stack_py-0.14.0/lib/sift/ingest}/v1/__init__.py +0 -0
  282. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingest/v1/ingest_pb2.py +0 -0
  283. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingest/v1/ingest_pb2.pyi +0 -0
  284. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingest/v1/ingest_pb2_grpc.py +0 -0
  285. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingest/v1/ingest_pb2_grpc.pyi +0 -0
  286. {sift_stack_py-0.13.0/lib/sift/external_sync → sift_stack_py-0.14.0/lib/sift/ingestion_configs}/__init__.py +0 -0
  287. {sift_stack_py-0.13.0/lib/sift/external_sync → sift_stack_py-0.14.0/lib/sift/ingestion_configs}/v1/__init__.py +0 -0
  288. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingestion_configs/v1/ingestion_configs_pb2.py +0 -0
  289. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingestion_configs/v1/ingestion_configs_pb2.pyi +0 -0
  290. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingestion_configs/v1/ingestion_configs_pb2_grpc.py +0 -0
  291. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingestion_configs/v1/ingestion_configs_pb2_grpc.pyi +0 -0
  292. {sift_stack_py-0.13.0/lib/sift/ingest → sift_stack_py-0.14.0/lib/sift/ingestion_configs/v2}/__init__.py +0 -0
  293. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingestion_configs/v2/ingestion_configs_pb2.py +0 -0
  294. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingestion_configs/v2/ingestion_configs_pb2.pyi +0 -0
  295. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingestion_configs/v2/ingestion_configs_pb2_grpc.py +0 -0
  296. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ingestion_configs/v2/ingestion_configs_pb2_grpc.pyi +0 -0
  297. {sift_stack_py-0.13.0/lib/sift/ingest/v1 → sift_stack_py-0.14.0/lib/sift/jobs}/__init__.py +0 -0
  298. {sift_stack_py-0.13.0/lib/sift/ingestion_configs → sift_stack_py-0.14.0/lib/sift/jobs/v1}/__init__.py +0 -0
  299. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/jobs/v1/jobs_pb2.py +0 -0
  300. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/jobs/v1/jobs_pb2.pyi +0 -0
  301. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/jobs/v1/jobs_pb2_grpc.py +0 -0
  302. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/jobs/v1/jobs_pb2_grpc.pyi +0 -0
  303. {sift_stack_py-0.13.0/lib/sift/ingestion_configs/v1 → sift_stack_py-0.14.0/lib/sift/me}/__init__.py +0 -0
  304. {sift_stack_py-0.13.0/lib/sift/ingestion_configs → sift_stack_py-0.14.0/lib/sift/me}/v2/__init__.py +0 -0
  305. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/me/v2/me_pb2.py +0 -0
  306. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/me/v2/me_pb2.pyi +0 -0
  307. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/me/v2/me_pb2_grpc.py +0 -0
  308. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/me/v2/me_pb2_grpc.pyi +0 -0
  309. {sift_stack_py-0.13.0/lib/sift/jobs → sift_stack_py-0.14.0/lib/sift/metadata}/__init__.py +0 -0
  310. {sift_stack_py-0.13.0/lib/sift/jobs → sift_stack_py-0.14.0/lib/sift/metadata}/v1/__init__.py +0 -0
  311. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/metadata/v1/metadata_pb2.py +0 -0
  312. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/metadata/v1/metadata_pb2.pyi +0 -0
  313. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/metadata/v1/metadata_pb2_grpc.py +0 -0
  314. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/metadata/v1/metadata_pb2_grpc.pyi +0 -0
  315. {sift_stack_py-0.13.0/lib/sift/me → sift_stack_py-0.14.0/lib/sift/notifications}/__init__.py +0 -0
  316. {sift_stack_py-0.13.0/lib/sift/me/v2 → sift_stack_py-0.14.0/lib/sift/notifications/v1}/__init__.py +0 -0
  317. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/notifications/v1/notifications_pb2.py +0 -0
  318. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/notifications/v1/notifications_pb2.pyi +0 -0
  319. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/notifications/v1/notifications_pb2_grpc.py +0 -0
  320. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/notifications/v1/notifications_pb2_grpc.pyi +0 -0
  321. {sift_stack_py-0.13.0/lib/sift/metadata → sift_stack_py-0.14.0/lib/sift/panel_configurations}/__init__.py +0 -0
  322. {sift_stack_py-0.13.0/lib/sift/metadata → sift_stack_py-0.14.0/lib/sift/panel_configurations}/v1/__init__.py +0 -0
  323. {sift_stack_py-0.13.0/lib/sift/notifications → sift_stack_py-0.14.0/lib/sift/ping}/__init__.py +0 -0
  324. {sift_stack_py-0.13.0/lib/sift/notifications → sift_stack_py-0.14.0/lib/sift/ping}/v1/__init__.py +0 -0
  325. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ping/v1/ping_pb2.py +0 -0
  326. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ping/v1/ping_pb2.pyi +0 -0
  327. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ping/v1/ping_pb2_grpc.py +0 -0
  328. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/ping/v1/ping_pb2_grpc.pyi +0 -0
  329. {sift_stack_py-0.13.0/lib/sift/options → sift_stack_py-0.14.0/lib/sift/protobuf_descriptors}/__init__.py +0 -0
  330. {sift_stack_py-0.13.0/lib/sift/options/v1 → sift_stack_py-0.14.0/lib/sift/protobuf_descriptors/v2}/__init__.py +0 -0
  331. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/protobuf_descriptors/v2/channel_parsing_options_pb2.py +0 -0
  332. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/protobuf_descriptors/v2/channel_parsing_options_pb2.pyi +0 -0
  333. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/protobuf_descriptors/v2/channel_parsing_options_pb2_grpc.py +0 -0
  334. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/protobuf_descriptors/v2/channel_parsing_options_pb2_grpc.pyi +0 -0
  335. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/protobuf_descriptors/v2/protobuf_descriptors_pb2.py +0 -0
  336. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/protobuf_descriptors/v2/protobuf_descriptors_pb2.pyi +0 -0
  337. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/protobuf_descriptors/v2/protobuf_descriptors_pb2_grpc.py +0 -0
  338. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/protobuf_descriptors/v2/protobuf_descriptors_pb2_grpc.pyi +0 -0
  339. {sift_stack_py-0.13.0/lib/sift_client → sift_stack_py-0.14.0/lib/sift}/py.typed +0 -0
  340. {sift_stack_py-0.13.0/lib/sift/ping → sift_stack_py-0.14.0/lib/sift/remote_files}/__init__.py +0 -0
  341. {sift_stack_py-0.13.0/lib/sift/ping → sift_stack_py-0.14.0/lib/sift/remote_files}/v1/__init__.py +0 -0
  342. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/remote_files/v1/remote_files_pb2_grpc.py +0 -0
  343. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/remote_files/v1/remote_files_pb2_grpc.pyi +0 -0
  344. {sift_stack_py-0.13.0/lib/sift/policies → sift_stack_py-0.14.0/lib/sift/report_templates}/__init__.py +0 -0
  345. {sift_stack_py-0.13.0/lib/sift/policies → sift_stack_py-0.14.0/lib/sift/report_templates}/v1/__init__.py +0 -0
  346. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/report_templates/v1/report_templates_pb2.py +0 -0
  347. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/report_templates/v1/report_templates_pb2.pyi +0 -0
  348. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/report_templates/v1/report_templates_pb2_grpc.py +0 -0
  349. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/report_templates/v1/report_templates_pb2_grpc.pyi +0 -0
  350. {sift_stack_py-0.13.0/lib/sift/protobuf_descriptors → sift_stack_py-0.14.0/lib/sift/reports}/__init__.py +0 -0
  351. {sift_stack_py-0.13.0/lib/sift/protobuf_descriptors/v2 → sift_stack_py-0.14.0/lib/sift/reports/v1}/__init__.py +0 -0
  352. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/reports/v1/reports_pb2.py +0 -0
  353. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/reports/v1/reports_pb2.pyi +0 -0
  354. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/reports/v1/reports_pb2_grpc.py +0 -0
  355. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/reports/v1/reports_pb2_grpc.pyi +0 -0
  356. {sift_stack_py-0.13.0/lib/sift/remote_files → sift_stack_py-0.14.0/lib/sift/roles}/__init__.py +0 -0
  357. {sift_stack_py-0.13.0/lib/sift/remote_files/v1 → sift_stack_py-0.14.0/lib/sift/roles/v2}/__init__.py +0 -0
  358. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/roles/v2/roles_pb2.py +0 -0
  359. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/roles/v2/roles_pb2.pyi +0 -0
  360. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/roles/v2/roles_pb2_grpc.py +0 -0
  361. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/roles/v2/roles_pb2_grpc.pyi +0 -0
  362. {sift_stack_py-0.13.0/lib/sift/report_templates → sift_stack_py-0.14.0/lib/sift/rule_evaluation}/__init__.py +0 -0
  363. {sift_stack_py-0.13.0/lib/sift/report_templates → sift_stack_py-0.14.0/lib/sift/rule_evaluation}/v1/__init__.py +0 -0
  364. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/rule_evaluation/v1/rule_evaluation_pb2.py +0 -0
  365. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/rule_evaluation/v1/rule_evaluation_pb2.pyi +0 -0
  366. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/rule_evaluation/v1/rule_evaluation_pb2_grpc.py +0 -0
  367. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/rule_evaluation/v1/rule_evaluation_pb2_grpc.pyi +0 -0
  368. {sift_stack_py-0.13.0/lib/sift/reports → sift_stack_py-0.14.0/lib/sift/rules}/__init__.py +0 -0
  369. {sift_stack_py-0.13.0/lib/sift/reports → sift_stack_py-0.14.0/lib/sift/rules}/v1/__init__.py +0 -0
  370. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/rules/v1/rules_pb2_grpc.py +0 -0
  371. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/rules/v1/rules_pb2_grpc.pyi +0 -0
  372. {sift_stack_py-0.13.0/lib/sift/resource_attribute → sift_stack_py-0.14.0/lib/sift/runs}/__init__.py +0 -0
  373. {sift_stack_py-0.13.0/lib/sift/resource_attribute/v1 → sift_stack_py-0.14.0/lib/sift/runs/v2}/__init__.py +0 -0
  374. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/runs/v2/runs_pb2_grpc.py +0 -0
  375. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/runs/v2/runs_pb2_grpc.pyi +0 -0
  376. {sift_stack_py-0.13.0/lib/sift/roles → sift_stack_py-0.14.0/lib/sift/saved_searches}/__init__.py +0 -0
  377. {sift_stack_py-0.13.0/lib/sift/roles/v2 → sift_stack_py-0.14.0/lib/sift/saved_searches/v1}/__init__.py +0 -0
  378. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/saved_searches/v1/saved_searches_pb2_grpc.py +0 -0
  379. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/saved_searches/v1/saved_searches_pb2_grpc.pyi +0 -0
  380. {sift_stack_py-0.13.0/lib/sift/rule_evaluation → sift_stack_py-0.14.0/lib/sift/tags}/__init__.py +0 -0
  381. {sift_stack_py-0.13.0/lib/sift/rule_evaluation → sift_stack_py-0.14.0/lib/sift/tags}/v1/__init__.py +0 -0
  382. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/tags/v1/tags_pb2.py +0 -0
  383. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/tags/v1/tags_pb2.pyi +0 -0
  384. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/tags/v1/tags_pb2_grpc.py +0 -0
  385. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/tags/v1/tags_pb2_grpc.pyi +0 -0
  386. {sift_stack_py-0.13.0/lib/sift/rules → sift_stack_py-0.14.0/lib/sift/tags/v2}/__init__.py +0 -0
  387. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/tags/v2/tags_pb2.py +0 -0
  388. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/tags/v2/tags_pb2.pyi +0 -0
  389. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/tags/v2/tags_pb2_grpc.py +0 -0
  390. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/tags/v2/tags_pb2_grpc.pyi +0 -0
  391. {sift_stack_py-0.13.0/lib/sift/rules/v1 → sift_stack_py-0.14.0/lib/sift/test_reports}/__init__.py +0 -0
  392. {sift_stack_py-0.13.0/lib/sift/runs → sift_stack_py-0.14.0/lib/sift/test_reports/v1}/__init__.py +0 -0
  393. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/test_reports/v1/test_reports_pb2.py +0 -0
  394. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/test_reports/v1/test_reports_pb2.pyi +0 -0
  395. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/test_reports/v1/test_reports_pb2_grpc.py +0 -0
  396. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/test_reports/v1/test_reports_pb2_grpc.pyi +0 -0
  397. {sift_stack_py-0.13.0/lib/sift/runs/v2 → sift_stack_py-0.14.0/lib/sift/unit}/__init__.py +0 -0
  398. {sift_stack_py-0.13.0/lib/sift/saved_searches → sift_stack_py-0.14.0/lib/sift/unit/v2}/__init__.py +0 -0
  399. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/unit/v2/unit_pb2.py +0 -0
  400. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/unit/v2/unit_pb2.pyi +0 -0
  401. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/unit/v2/unit_pb2_grpc.py +0 -0
  402. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/unit/v2/unit_pb2_grpc.pyi +0 -0
  403. {sift_stack_py-0.13.0/lib/sift/saved_searches/v1 → sift_stack_py-0.14.0/lib/sift/user_defined_functions}/__init__.py +0 -0
  404. {sift_stack_py-0.13.0/lib/sift/tags → sift_stack_py-0.14.0/lib/sift/user_defined_functions/v1}/__init__.py +0 -0
  405. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/user_defined_functions/v1/user_defined_functions_pb2.pyi +0 -0
  406. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/user_defined_functions/v1/user_defined_functions_pb2_grpc.py +0 -0
  407. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/user_defined_functions/v1/user_defined_functions_pb2_grpc.pyi +0 -0
  408. {sift_stack_py-0.13.0/lib/sift/tags/v1 → sift_stack_py-0.14.0/lib/sift/user_groups}/__init__.py +0 -0
  409. {sift_stack_py-0.13.0/lib/sift/tags → sift_stack_py-0.14.0/lib/sift/user_groups}/v2/__init__.py +0 -0
  410. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/user_groups/v2/user_groups_pb2.pyi +0 -0
  411. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/user_groups/v2/user_groups_pb2_grpc.py +0 -0
  412. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/user_groups/v2/user_groups_pb2_grpc.pyi +0 -0
  413. {sift_stack_py-0.13.0/lib/sift/test_reports → sift_stack_py-0.14.0/lib/sift/users}/__init__.py +0 -0
  414. {sift_stack_py-0.13.0/lib/sift/test_reports/v1 → sift_stack_py-0.14.0/lib/sift/users/v2}/__init__.py +0 -0
  415. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/users/v2/users_pb2.py +0 -0
  416. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/users/v2/users_pb2.pyi +0 -0
  417. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/users/v2/users_pb2_grpc.py +0 -0
  418. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/users/v2/users_pb2_grpc.pyi +0 -0
  419. {sift_stack_py-0.13.0/lib/sift/unit → sift_stack_py-0.14.0/lib/sift/views}/__init__.py +0 -0
  420. {sift_stack_py-0.13.0/lib/sift/unit/v2 → sift_stack_py-0.14.0/lib/sift/views/v1}/__init__.py +0 -0
  421. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/views/v1/views_pb2.py +0 -0
  422. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/views/v1/views_pb2.pyi +0 -0
  423. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/views/v1/views_pb2_grpc.py +0 -0
  424. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/views/v1/views_pb2_grpc.pyi +0 -0
  425. {sift_stack_py-0.13.0/lib/sift/user_attributes → sift_stack_py-0.14.0/lib/sift/views/v2}/__init__.py +0 -0
  426. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/views/v2/views_pb2.py +0 -0
  427. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/views/v2/views_pb2.pyi +0 -0
  428. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/views/v2/views_pb2_grpc.py +0 -0
  429. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/views/v2/views_pb2_grpc.pyi +0 -0
  430. {sift_stack_py-0.13.0/lib/sift/user_attributes/v1 → sift_stack_py-0.14.0/lib/sift/webhooks}/__init__.py +0 -0
  431. {sift_stack_py-0.13.0/lib/sift/user_defined_functions → sift_stack_py-0.14.0/lib/sift/webhooks/v1}/__init__.py +0 -0
  432. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/webhooks/v1/webhooks_pb2.pyi +0 -0
  433. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/webhooks/v1/webhooks_pb2_grpc.py +0 -0
  434. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift/webhooks/v1/webhooks_pb2_grpc.pyi +0 -0
  435. {sift_stack_py-0.13.0/lib/sift/user_defined_functions/v1 → sift_stack_py-0.14.0/lib/sift_client/_internal}/__init__.py +0 -0
  436. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/gen_pyi.py +0 -0
  437. {sift_stack_py-0.13.0/lib/sift/user_groups → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport/_async_interceptors}/__init__.py +0 -0
  438. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/_async_interceptors/base.py +0 -0
  439. {sift_stack_py-0.13.0/lib/sift/user_groups/v2 → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport/_interceptors}/__init__.py +0 -0
  440. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/_interceptors/base.py +0 -0
  441. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/_interceptors/context.py +0 -0
  442. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/_retry.py +0 -0
  443. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/keepalive.py +0 -0
  444. {sift_stack_py-0.13.0/lib/sift/users → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport/server_interceptors}/__init__.py +0 -0
  445. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc → sift_stack_py-0.14.0/lib/sift_client/_internal/grpc_transport}/server_interceptors/server_interceptor.py +0 -0
  446. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/__init__.py +0 -0
  447. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/assets.py +0 -0
  448. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/base.py +0 -0
  449. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/calculated_channels.py +0 -0
  450. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/channels.py +0 -0
  451. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/data.py +0 -0
  452. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/exports.py +0 -0
  453. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/ingestion.py +0 -0
  454. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/jobs.py +0 -0
  455. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/ping.py +0 -0
  456. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/reports.py +0 -0
  457. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/rules.py +0 -0
  458. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/runs.py +0 -0
  459. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/low_level_wrappers/tags.py +0 -0
  460. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/time.py +0 -0
  461. {sift_stack_py-0.13.0/lib/sift/users/v2 → sift_stack_py-0.14.0/lib/sift_client/_internal/util}/__init__.py +0 -0
  462. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/util/channels.py +0 -0
  463. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/util/executor.py +0 -0
  464. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/util/timestamp.py +0 -0
  465. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_internal/util/util.py +0 -0
  466. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/__init__.py +0 -0
  467. {sift_stack_py-0.13.0/lib/sift/views → sift_stack_py-0.14.0/lib/sift_client/_tests/_internal}/__init__.py +0 -0
  468. {sift_stack_py-0.13.0/lib/sift/views/v1 → sift_stack_py-0.14.0/lib/sift_client/_tests/_internal/low_level_wrappers}/__init__.py +0 -0
  469. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/_internal/low_level_wrappers/test_base.py +0 -0
  470. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/_internal/low_level_wrappers/test_ingestion.py +0 -0
  471. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/_internal/low_level_wrappers/test_upload.py +0 -0
  472. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/_internal/test_channels.py +0 -0
  473. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/_internal/test_gen_pyi.py +0 -0
  474. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/_internal/test_stub_module/__init__.py +0 -0
  475. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/_internal/test_stub_module/test_py.py +0 -0
  476. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/_internal/test_sync_wrapper.py +0 -0
  477. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/_internal/test_transport.py +0 -0
  478. {sift_stack_py-0.13.0/lib/sift/views/v2 → sift_stack_py-0.14.0/lib/sift_client/_tests/resources}/__init__.py +0 -0
  479. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_assets.py +0 -0
  480. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_calculated_channels.py +0 -0
  481. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_channels.py +0 -0
  482. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_file_attachments.py +0 -0
  483. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_ping.py +0 -0
  484. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_reports.py +0 -0
  485. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_rules.py +0 -0
  486. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_runs.py +0 -0
  487. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/resources/test_tags.py +0 -0
  488. {sift_stack_py-0.13.0/lib/sift/webhooks → sift_stack_py-0.14.0/lib/sift_client/_tests/sift_types}/__init__.py +0 -0
  489. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_asset.py +0 -0
  490. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_base.py +0 -0
  491. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_calculated_channel.py +0 -0
  492. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_channel.py +0 -0
  493. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_ingestion.py +0 -0
  494. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_job.py +0 -0
  495. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_report.py +0 -0
  496. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_rule.py +0 -0
  497. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_run.py +0 -0
  498. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/sift_types/test_tag.py +0 -0
  499. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/test_client.py +0 -0
  500. {sift_stack_py-0.13.0/lib/sift/webhooks/v1 → sift_stack_py-0.14.0/lib/sift_client/_tests/util}/__init__.py +0 -0
  501. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/_tests/util/test_cel_utils.py +0 -0
  502. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/errors.py +0 -0
  503. {sift_stack_py-0.13.0/lib/sift_py → sift_stack_py-0.14.0/lib/sift_client}/py.typed +0 -0
  504. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/assets.py +0 -0
  505. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/calculated_channels.py +0 -0
  506. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/channels.py +0 -0
  507. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/ingestion.py +0 -0
  508. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/ping.py +0 -0
  509. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/py.typed +0 -0
  510. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/reports.py +0 -0
  511. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/rules.py +0 -0
  512. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/runs.py +0 -0
  513. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/sync_stubs/py.typed +0 -0
  514. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/resources/tags.py +0 -0
  515. {sift_stack_py-0.13.0/lib/sift_client/_internal → sift_stack_py-0.14.0/lib/sift_client/scripts}/__init__.py +0 -0
  516. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/__init__.py +0 -0
  517. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc/_async_interceptors → sift_stack_py-0.14.0/lib/sift_client/sift_types/_mixins}/__init__.py +0 -0
  518. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/_mixins/file_attachments.py +0 -0
  519. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/asset.py +0 -0
  520. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/calculated_channel.py +0 -0
  521. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/channel.py +0 -0
  522. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/file_attachment.py +0 -0
  523. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/ingestion.py +0 -0
  524. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/report.py +0 -0
  525. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/rule.py +0 -0
  526. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/sift_types/tag.py +0 -0
  527. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/transport/__init__.py +0 -0
  528. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/transport/base_connection.py +0 -0
  529. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/transport/rest_transport.py +0 -0
  530. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/util/__init__.py +0 -0
  531. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/util/cel_utils.py +0 -0
  532. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_client/util/metadata.py +0 -0
  533. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/__init__.py +0 -0
  534. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/__init__.py +0 -0
  535. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/cel.py +0 -0
  536. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/channel.py +0 -0
  537. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/convert/__init__.py +0 -0
  538. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/convert/json.py +0 -0
  539. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/convert/protobuf.py +0 -0
  540. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/convert/timestamp.py +0 -0
  541. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/metadata.py +0 -0
  542. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/metadata_test.py +0 -0
  543. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc/_interceptors → sift_stack_py-0.14.0/lib/sift_py/_internal/test_util}/__init__.py +0 -0
  544. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/test_util/channel.py +0 -0
  545. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/test_util/fn.py +0 -0
  546. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/test_util/server_interceptor.py +0 -0
  547. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/time.py +0 -0
  548. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_internal/user.py +0 -0
  549. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/_rest_test.py +0 -0
  550. {sift_stack_py-0.13.0/lib/sift_client/_internal/grpc/server_interceptors → sift_stack_py-0.14.0/lib/sift_py/asset}/__init__.py +0 -0
  551. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/asset/_config_test.py +0 -0
  552. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/asset/_internal/shared.py +0 -0
  553. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/asset/_service_test.py +0 -0
  554. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/asset/config.py +0 -0
  555. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/asset/service.py +0 -0
  556. {sift_stack_py-0.13.0/lib/sift_client/_internal/util → sift_stack_py-0.14.0/lib/sift_py/calculated_channels}/__init__.py +0 -0
  557. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/calculated_channels/_service_test.py +0 -0
  558. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/calculated_channels/config.py +0 -0
  559. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/calculated_channels/service.py +0 -0
  560. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data/__init__.py +0 -0
  561. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data/_channel.py +0 -0
  562. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data/_deserialize.py +0 -0
  563. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data/_deserialize_test.py +0 -0
  564. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data/_service_test.py +0 -0
  565. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data/_validate.py +0 -0
  566. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data/error.py +0 -0
  567. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data/query.py +0 -0
  568. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data/service.py +0 -0
  569. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/__init__.py +0 -0
  570. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_config.py +0 -0
  571. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_config_test.py +0 -0
  572. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_csv_test.py +0 -0
  573. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_hdf5_test.py +0 -0
  574. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_parquet_test.py +0 -0
  575. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_ros_channel.py +0 -0
  576. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_rosbag_test.py +0 -0
  577. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_status_test.py +0 -0
  578. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_tdms_test.py +0 -0
  579. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_utils.py +0 -0
  580. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/_utils_test.py +0 -0
  581. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/ch10.py +0 -0
  582. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/config.py +0 -0
  583. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/csv.py +0 -0
  584. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/hdf5.py +0 -0
  585. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/parquet.py +0 -0
  586. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/parquet_complex_types.py +0 -0
  587. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/rosbags.py +0 -0
  588. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/status.py +0 -0
  589. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/tdms.py +0 -0
  590. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/tempfile.py +0 -0
  591. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/data_import/time_format.py +0 -0
  592. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/error.py +0 -0
  593. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/file_attachment/__init__.py +0 -0
  594. {sift_stack_py-0.13.0/lib/sift_client/_tests → sift_stack_py-0.14.0/lib/sift_py/file_attachment}/_internal/__init__.py +0 -0
  595. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/file_attachment/_internal/download.py +0 -0
  596. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/file_attachment/_internal/upload.py +0 -0
  597. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/file_attachment/_service_test.py +0 -0
  598. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/file_attachment/entity.py +0 -0
  599. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/file_attachment/metadata.py +0 -0
  600. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/file_attachment/service.py +0 -0
  601. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/__init__.py +0 -0
  602. {sift_stack_py-0.13.0/lib/sift_client/_tests/_internal/low_level_wrappers → sift_stack_py-0.14.0/lib/sift_py/grpc/_async_interceptors}/__init__.py +0 -0
  603. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/_async_interceptors/base.py +0 -0
  604. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/_async_interceptors/metadata.py +0 -0
  605. {sift_stack_py-0.13.0/lib/sift_client/_tests/resources → sift_stack_py-0.14.0/lib/sift_py/grpc/_interceptors}/__init__.py +0 -0
  606. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/_interceptors/base.py +0 -0
  607. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/_interceptors/context.py +0 -0
  608. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/_interceptors/metadata.py +0 -0
  609. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/_retry.py +0 -0
  610. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/keepalive.py +0 -0
  611. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/transport.py +0 -0
  612. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/grpc/transport_test.py +0 -0
  613. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/__init__.py +0 -0
  614. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/_internal/__init__.py +0 -0
  615. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/_internal/channel.py +0 -0
  616. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/_internal/error.py +0 -0
  617. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/_internal/ingest.py +0 -0
  618. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/_internal/ingest_test.py +0 -0
  619. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/_internal/ingestion_config.py +0 -0
  620. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/_internal/run.py +0 -0
  621. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/_service_test.py +0 -0
  622. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/buffer.py +0 -0
  623. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/channel.py +0 -0
  624. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/config/__init__.py +0 -0
  625. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/config/_telemetry_test.py +0 -0
  626. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/config/telemetry.py +0 -0
  627. {sift_stack_py-0.13.0/lib/sift_client/_tests/sift_types → sift_stack_py-0.14.0/lib/sift_py/ingestion/config/yaml}/__init__.py +0 -0
  628. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/config/yaml/error.py +0 -0
  629. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/config/yaml/load.py +0 -0
  630. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/config/yaml/spec.py +0 -0
  631. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/config/yaml/test_load.py +0 -0
  632. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/flow.py +0 -0
  633. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/manager.py +0 -0
  634. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/rule/__init__.py +0 -0
  635. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/rule/config.py +0 -0
  636. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/ingestion/service.py +0 -0
  637. /sift_stack_py-0.13.0/lib/sift_client/_tests/util/__init__.py → /sift_stack_py-0.14.0/lib/sift_py/py.typed +0 -0
  638. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/report/_report_test.py +0 -0
  639. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/report/service.py +0 -0
  640. {sift_stack_py-0.13.0/lib/sift_client/sift_types/_mixins → sift_stack_py-0.14.0/lib/sift_py/report_templates}/__init__.py +0 -0
  641. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/report_templates/_config_test.py +0 -0
  642. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/report_templates/_service_test.py +0 -0
  643. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/report_templates/config.py +0 -0
  644. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/report_templates/service.py +0 -0
  645. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/rest.py +0 -0
  646. {sift_stack_py-0.13.0/lib/sift_py/_internal/test_util → sift_stack_py-0.14.0/lib/sift_py/rule}/__init__.py +0 -0
  647. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/rule/_config_test.py +0 -0
  648. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/rule/_service_test.py +0 -0
  649. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/rule/config.py +0 -0
  650. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/rule/service.py +0 -0
  651. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/rule_evaluation/_service_test.py +0 -0
  652. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/rule_evaluation/service.py +0 -0
  653. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/tag/_internal/shared.py +0 -0
  654. {sift_stack_py-0.13.0/lib/sift_py/asset → sift_stack_py-0.14.0/lib/sift_py/yaml}/__init__.py +0 -0
  655. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/yaml/_channel_test.py +0 -0
  656. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/yaml/_rule_test.py +0 -0
  657. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/yaml/calculated_channels.py +0 -0
  658. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/yaml/channel.py +0 -0
  659. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/yaml/report_templates.py +0 -0
  660. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_py/yaml/rule.py +0 -0
  661. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/lib/sift_stack_py.egg-info/dependency_links.txt +0 -0
  662. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/setup.cfg +0 -0
  663. {sift_stack_py-0.13.0 → sift_stack_py-0.14.0}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sift_stack_py
3
- Version: 0.13.0
3
+ Version: 0.14.0
4
4
  Summary: Python client library for the Sift API
5
5
  Maintainer-email: Sift Software Engineers <engineering@siftstack.com>
6
6
  License: Copyright (c) 2024 Azimuth Industries Inc.
@@ -29,6 +29,7 @@ Description-Content-Type: text/markdown
29
29
  License-File: LICENSE
30
30
  Requires-Dist: grpcio~=1.13
31
31
  Requires-Dist: PyYAML~=6.0
32
+ Requires-Dist: rapidyaml~=0.11
32
33
  Requires-Dist: pandas<3.1,>=2.0
33
34
  Requires-Dist: protobuf>=5.0
34
35
  Requires-Dist: pydantic~=2.10
@@ -42,6 +43,8 @@ Requires-Dist: types-PyYAML~=6.0
42
43
  Requires-Dist: types-protobuf>=5.0
43
44
  Requires-Dist: typing-extensions~=4.6
44
45
  Requires-Dist: types-requests~=2.25
46
+ Requires-Dist: googleapis-common-protos>=1.60
47
+ Requires-Dist: protoc-gen-openapiv2>=0.0.1
45
48
  Provides-Extra: all
46
49
  Requires-Dist: cffi~=1.14; extra == "all"
47
50
  Requires-Dist: h5py~=3.11; extra == "all"
@@ -161,7 +161,7 @@ class ListAnnotationLogsRequest(google.protobuf.message.Message):
161
161
  Available fields to filter by are `annotation_log_id`, `annotation_id`, `created_by_user_id`,
162
162
  `annotation_id`, `created_date`, `modified_date`, and `kind`.
163
163
  For further information about how to use CELs, please refer to [this guide](https://github.com/google/cel-spec/blob/master/doc/langdef.md#standard-definitions).
164
- For more information about the fields used for filtering, please refer to [this definition](/docs/api/grpc/protocol-buffers/annotation_logs#annotationlogsearchresult). Optional.
164
+ For more information about the fields used for filtering, please refer to [this definition](/api/grpc/protocol-buffers/annotation_logs#annotationlogsearchresult). Optional.
165
165
  """
166
166
  def __init__(
167
167
  self,
@@ -21,7 +21,7 @@ from sift.common.type.v1 import user_pb2 as sift_dot_common_dot_type_dot_v1_dot_
21
21
  from sift.metadata.v1 import metadata_pb2 as sift_dot_metadata_dot_v1_dot_metadata__pb2
22
22
 
23
23
 
24
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n%sift/annotations/v1/annotations.proto\x12\x13sift.annotations.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x1esift/common/type/v1/user.proto\x1a\x1fsift/metadata/v1/metadata.proto\"\x81\r\n\nAnnotation\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12>\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\tstartTime\x12:\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x07\x65ndTime\x12\x30\n\x12\x63reated_by_user_id\x18\x06 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\x07 \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\x12\x42\n\x0c\x63reated_date\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12\x1f\n\x06run_id\x18\n \x01(\tB\x03\xe0\x41\x01H\x00R\x05runId\x88\x01\x01\x12\x44\n\x05state\x18\x0b \x01(\x0e\x32$.sift.annotations.v1.AnnotationStateB\x03\xe0\x41\x01H\x01R\x05state\x88\x01\x01\x12,\n\x0forganization_id\x18\x0c \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId\x12\x32\n\x13\x61ssigned_to_user_id\x18\r \x01(\tB\x03\xe0\x41\x01R\x10\x61ssignedToUserId\x12Q\n\x0f\x61nnotation_type\x18\x0e \x01(\x0e\x32#.sift.annotations.v1.AnnotationTypeB\x03\xe0\x41\x02R\x0e\x61nnotationType\x12\x17\n\x04tags\x18\x0f \x03(\tB\x03\xe0\x41\x02R\x04tags\x12-\n\rlegend_config\x18\x10 \x01(\tB\x03\xe0\x41\x01H\x02R\x0clegendConfig\x88\x01\x01\x12?\n\x17\x63reated_by_condition_id\x18\x11 \x01(\tB\x03\xe0\x41\x01H\x03R\x14\x63reatedByConditionId\x88\x01\x01\x12W\n$created_by_rule_condition_version_id\x18\x12 \x01(\tB\x03\xe0\x41\x01H\x04R\x1f\x63reatedByRuleConditionVersionId\x88\x01\x01\x12=\n\x16report_rule_version_id\x18\x13 \x01(\tB\x03\xe0\x41\x01H\x05R\x13reportRuleVersionId\x88\x01\x01\x12\x1d\n\x07pending\x18\x14 \x01(\x08\x42\x03\xe0\x41\x03R\x07pending\x12H\n\x10\x61ssigned_to_user\x18\x15 \x01(\x0b\x32\x19.sift.common.type.v1.UserB\x03\xe0\x41\x03R\x0e\x61ssignedToUser\x12\x44\n\x0c\x64\x65leted_date\x18\x16 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x05\x18\x01\xe0\x41\x01R\x0b\x64\x65letedDate\x12Z\n\x0flinked_channels\x18\x17 \x03(\x0b\x32,.sift.annotations.v1.AnnotationLinkedChannelB\x03\xe0\x41\x01R\x0elinkedChannels\x12 \n\tasset_ids\x18\x18 \x03(\tB\x03\xe0\x41\x01R\x08\x61ssetIds\x12@\n\x08metadata\x18\x19 \x03(\x0b\x32\x1f.sift.metadata.v1.MetadataValueB\x03\xe0\x41\x01R\x08metadata\x12\x44\n\rarchived_date\x18\x1a \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01R\x0c\x61rchivedDate\x12$\n\x0bis_archived\x18\x1b \x01(\x08\x42\x03\xe0\x41\x02R\nisArchivedB\t\n\x07_run_idB\x08\n\x06_stateB\x10\n\x0e_legend_configB\x1a\n\x18_created_by_condition_idB\'\n%_created_by_rule_condition_version_idB\x19\n\x17_report_rule_version_id\"E\n\x1f\x41nnotationLinkedChannelsChannel\x12\"\n\nchannel_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\tchannelId\"x\n\'AnnotationLinkedChannelsBitFieldElement\x12\"\n\nchannel_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\tchannelId\x12)\n\x0e\x62it_field_name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0c\x62itFieldName\"\xdf\x01\n\x17\x41nnotationLinkedChannel\x12P\n\x07\x63hannel\x18\x01 \x01(\x0b\x32\x34.sift.annotations.v1.AnnotationLinkedChannelsChannelH\x00R\x07\x63hannel\x12j\n\x11\x62it_field_element\x18\x02 \x01(\x0b\x32<.sift.annotations.v1.AnnotationLinkedChannelsBitFieldElementH\x00R\x0f\x62itFieldElementB\x06\n\x04type\"\x91\x08\n\x17\x43reateAnnotationRequest\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x01R\x0b\x64\x65scription\x12>\n\nstart_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\tstartTime\x12:\n\x08\x65nd_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x07\x65ndTime\x12\x1b\n\x06\x61ssets\x18\x05 \x03(\tB\x03\xe0\x41\x01R\x06\x61ssets\x12Z\n\x0flinked_channels\x18\x06 \x03(\x0b\x32,.sift.annotations.v1.AnnotationLinkedChannelB\x03\xe0\x41\x01R\x0elinkedChannels\x12\x17\n\x04tags\x18\x07 \x03(\tB\x03\xe0\x41\x01R\x04tags\x12\x1f\n\x06run_id\x18\x08 \x01(\tB\x03\xe0\x41\x01H\x00R\x05runId\x88\x01\x01\x12\x33\n\x11\x61ssign_to_user_id\x18\t \x01(\tB\x03\xe0\x41\x01H\x01R\x0e\x61ssignToUserId\x88\x01\x01\x12,\n\x0forganization_id\x18\n \x01(\tB\x03\xe0\x41\x01R\x0eorganizationId\x12\x44\n\x05state\x18\x0b \x01(\x0e\x32$.sift.annotations.v1.AnnotationStateB\x03\xe0\x41\x01H\x02R\x05state\x88\x01\x01\x12Q\n\x0f\x61nnotation_type\x18\x0c \x01(\x0e\x32#.sift.annotations.v1.AnnotationTypeB\x03\xe0\x41\x01R\x0e\x61nnotationType\x12?\n\x17\x63reated_by_condition_id\x18\x0e \x01(\tB\x03\xe0\x41\x01H\x03R\x14\x63reatedByConditionId\x88\x01\x01\x12-\n\rlegend_config\x18\r \x01(\tB\x03\xe0\x41\x01H\x04R\x0clegendConfig\x88\x01\x01\x12W\n$created_by_rule_condition_version_id\x18\x0f \x01(\tB\x03\xe0\x41\x01H\x05R\x1f\x63reatedByRuleConditionVersionId\x88\x01\x01\x12@\n\x08metadata\x18\x10 \x03(\x0b\x32\x1f.sift.metadata.v1.MetadataValueB\x03\xe0\x41\x01R\x08metadataB\t\n\x07_run_idB\x14\n\x12_assign_to_user_idB\x08\n\x06_stateB\x1a\n\x18_created_by_condition_idB\x10\n\x0e_legend_configB\'\n%_created_by_rule_condition_version_id\"`\n\x18\x43reateAnnotationResponse\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\"C\n\x17\x44\x65leteAnnotationRequest\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\"\x1a\n\x18\x44\x65leteAnnotationResponse\"K\n\x1d\x42\x61tchDeleteAnnotationsRequest\x12*\n\x0e\x61nnotation_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\rannotationIds\" \n\x1e\x42\x61tchDeleteAnnotationsResponse\"@\n\x14GetAnnotationRequest\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\"]\n\x15GetAnnotationResponse\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\"\xc9\x01\n\x16ListAnnotationsRequest\x12 \n\tpage_size\x18\x01 \x01(\rB\x03\xe0\x41\x01R\x08pageSize\x12\"\n\npage_token\x18\x02 \x01(\tB\x03\xe0\x41\x01R\tpageToken\x12\x1b\n\x06\x66ilter\x18\x03 \x01(\tB\x03\xe0\x41\x01R\x06\x66ilter\x12,\n\x0forganization_id\x18\x04 \x01(\tB\x03\xe0\x41\x01R\x0eorganizationId\x12\x1e\n\x08order_by\x18\x05 \x01(\tB\x03\xe0\x41\x01R\x07orderBy\"\x84\x01\n\x17ListAnnotationsResponse\x12\x41\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32\x1f.sift.annotations.v1.AnnotationR\x0b\x61nnotations\x12&\n\x0fnext_page_token\x18\x05 \x01(\tR\rnextPageToken\"\xa1\x01\n\x17UpdateAnnotationRequest\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\x12@\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02R\nupdateMask\"[\n\x18UpdateAnnotationResponse\x12?\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationR\nannotation\"D\n\x18\x41rchiveAnnotationRequest\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\"a\n\x19\x41rchiveAnnotationResponse\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\"F\n\x1aUnarchiveAnnotationRequest\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\"c\n\x1bUnarchiveAnnotationResponse\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\"L\n\x1e\x42\x61tchArchiveAnnotationsRequest\x12*\n\x0e\x61nnotation_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\rannotationIds\"i\n\x1f\x42\x61tchArchiveAnnotationsResponse\x12\x46\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\x0b\x61nnotations\"N\n BatchUnarchiveAnnotationsRequest\x12*\n\x0e\x61nnotation_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\rannotationIds\"k\n!BatchUnarchiveAnnotationsResponse\x12\x46\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\x0b\x61nnotations*\x8b\x01\n\x0f\x41nnotationState\x12 \n\x1c\x41NNOTATION_STATE_UNSPECIFIED\x10\x00\x12\x19\n\x15\x41NNOTATION_STATE_OPEN\x10\x01\x12\x1c\n\x18\x41NNOTATION_STATE_FLAGGED\x10\x02\x12\x1d\n\x19\x41NNOTATION_STATE_RESOLVED\x10\x03*m\n\x0e\x41nnotationType\x12\x1f\n\x1b\x41NNOTATION_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x1b\x41NNOTATION_TYPE_DATA_REVIEW\x10\x01\x12\x19\n\x15\x41NNOTATION_TYPE_PHASE\x10\x02\x32\x81\x13\n\x11\x41nnotationService\x12\xbc\x01\n\x10\x43reateAnnotation\x12,.sift.annotations.v1.CreateAnnotationRequest\x1a-.sift.annotations.v1.CreateAnnotationResponse\"K\x92\x41*\x12\x10\x43reateAnnotation\x1a\x16\x43reates an annotation.\x82\xd3\xe4\x93\x02\x18\"\x13/api/v1/annotations:\x01*\x12\xcd\x01\n\x10\x44\x65leteAnnotation\x12,.sift.annotations.v1.DeleteAnnotationRequest\x1a-.sift.annotations.v1.DeleteAnnotationResponse\"\\\x88\x02\x01\x92\x41+\x12\x10\x44\x65leteAnnotation\x1a\x17\x41rchives an annotation.\x82\xd3\xe4\x93\x02%*#/api/v1/annotations/{annotation_id}\x12\xd9\x01\n\x11\x41rchiveAnnotation\x12-.sift.annotations.v1.ArchiveAnnotationRequest\x1a..sift.annotations.v1.ArchiveAnnotationResponse\"e\x92\x41,\x12\x11\x41rchiveAnnotation\x1a\x17\x41rchives an annotation.\x82\xd3\xe4\x93\x02\x30\"+/api/v1/annotations/{annotation_id}:archive:\x01*\x12\xe5\x01\n\x13UnarchiveAnnotation\x12/.sift.annotations.v1.UnarchiveAnnotationRequest\x1a\x30.sift.annotations.v1.UnarchiveAnnotationResponse\"k\x92\x41\x30\x12\x13UnarchiveAnnotation\x1a\x19Unarchives an annotation.\x82\xd3\xe4\x93\x02\x32\"-/api/v1/annotations/{annotation_id}:unarchive:\x01*\x12\xe7\x01\n\x16\x42\x61tchDeleteAnnotations\x12\x32.sift.annotations.v1.BatchDeleteAnnotationsRequest\x1a\x33.sift.annotations.v1.BatchDeleteAnnotationsResponse\"d\x88\x02\x01\x92\x41\x34\x12\x15\x42\x61tchDeleteAnnotation\x1a\x1b\x42\x61tch archives annotations.\x82\xd3\xe4\x93\x02$\"\x1f/api/v1/annotations:batchDelete:\x01*\x12\xea\x01\n\x17\x42\x61tchArchiveAnnotations\x12\x33.sift.annotations.v1.BatchArchiveAnnotationsRequest\x1a\x34.sift.annotations.v1.BatchArchiveAnnotationsResponse\"d\x92\x41\x36\x12\x17\x42\x61tchArchiveAnnotations\x1a\x1b\x42\x61tch archives annotations.\x82\xd3\xe4\x93\x02%\" /api/v1/annotations:batchArchive:\x01*\x12\xf6\x01\n\x19\x42\x61tchUnarchiveAnnotations\x12\x35.sift.annotations.v1.BatchUnarchiveAnnotationsRequest\x1a\x36.sift.annotations.v1.BatchUnarchiveAnnotationsResponse\"j\x92\x41:\x12\x19\x42\x61tchUnarchiveAnnotations\x1a\x1d\x42\x61tch unarchives annotations.\x82\xd3\xe4\x93\x02\'\"\"/api/v1/annotations:batchUnarchive:\x01*\x12\xcd\x01\n\x0fListAnnotations\x12+.sift.annotations.v1.ListAnnotationsRequest\x1a,.sift.annotations.v1.ListAnnotationsResponse\"_\x92\x41\x41\x12\x0eListAnnotation\x1a/Retrieves annotations using an optional filter.\x82\xd3\xe4\x93\x02\x15\x12\x13/api/v1/annotations\x12\xbe\x01\n\rGetAnnotation\x12).sift.annotations.v1.GetAnnotationRequest\x1a*.sift.annotations.v1.GetAnnotationResponse\"V\x92\x41(\x12\rGetAnnotation\x1a\x17Retrieves an annotation\x82\xd3\xe4\x93\x02%\x12#/api/v1/annotations/{annotation_id}\x12\x80\x02\n\x10UpdateAnnotation\x12,.sift.annotations.v1.UpdateAnnotationRequest\x1a-.sift.annotations.v1.UpdateAnnotationResponse\"\x8e\x01\x92\x41m\x12\x10UpdateAnnotation\x1aYUpdates an existing annotation using using the list of fields specified in `update_mask`.\x82\xd3\xe4\x93\x02\x18\x32\x13/api/v1/annotations:\x01*\x1a\xb4\x01\x92\x41\xb0\x01\x12\x36Service to programmatically interact with annotations.\x1av\n\x1cRead more about annotations.\x12Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265486685B\xb2\x01\n\x17\x63om.sift.annotations.v1B\x10\x41nnotationsProtoP\x01\xa2\x02\x03SAX\xaa\x02\x13Sift.Annotations.V1\xca\x02\x13Sift\\Annotations\\V1\xe2\x02\x1fSift\\Annotations\\V1\\GPBMetadata\xea\x02\x15Sift::Annotations::V1\x92\x41\x16\x12\x14\n\x12\x41nnotation Serviceb\x06proto3')
24
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n%sift/annotations/v1/annotations.proto\x12\x13sift.annotations.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x1esift/common/type/v1/user.proto\x1a\x1fsift/metadata/v1/metadata.proto\"\xda\r\n\nAnnotation\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12>\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\tstartTime\x12:\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x07\x65ndTime\x12\x30\n\x12\x63reated_by_user_id\x18\x06 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\x07 \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\x12\x42\n\x0c\x63reated_date\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12\x1f\n\x06run_id\x18\n \x01(\tB\x03\xe0\x41\x01H\x00R\x05runId\x88\x01\x01\x12\x44\n\x05state\x18\x0b \x01(\x0e\x32$.sift.annotations.v1.AnnotationStateB\x03\xe0\x41\x01H\x01R\x05state\x88\x01\x01\x12,\n\x0forganization_id\x18\x0c \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId\x12\x32\n\x13\x61ssigned_to_user_id\x18\r \x01(\tB\x03\xe0\x41\x01R\x10\x61ssignedToUserId\x12Q\n\x0f\x61nnotation_type\x18\x0e \x01(\x0e\x32#.sift.annotations.v1.AnnotationTypeB\x03\xe0\x41\x02R\x0e\x61nnotationType\x12\x17\n\x04tags\x18\x0f \x03(\tB\x03\xe0\x41\x02R\x04tags\x12-\n\rlegend_config\x18\x10 \x01(\tB\x03\xe0\x41\x01H\x02R\x0clegendConfig\x88\x01\x01\x12?\n\x17\x63reated_by_condition_id\x18\x11 \x01(\tB\x03\xe0\x41\x01H\x03R\x14\x63reatedByConditionId\x88\x01\x01\x12W\n$created_by_rule_condition_version_id\x18\x12 \x01(\tB\x03\xe0\x41\x01H\x04R\x1f\x63reatedByRuleConditionVersionId\x88\x01\x01\x12=\n\x16report_rule_version_id\x18\x13 \x01(\tB\x03\xe0\x41\x01H\x05R\x13reportRuleVersionId\x88\x01\x01\x12\x1d\n\x07pending\x18\x14 \x01(\x08\x42\x03\xe0\x41\x03R\x07pending\x12H\n\x10\x61ssigned_to_user\x18\x15 \x01(\x0b\x32\x19.sift.common.type.v1.UserB\x03\xe0\x41\x03R\x0e\x61ssignedToUser\x12\x44\n\x0c\x64\x65leted_date\x18\x16 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x05\x18\x01\xe0\x41\x01R\x0b\x64\x65letedDate\x12Z\n\x0flinked_channels\x18\x17 \x03(\x0b\x32,.sift.annotations.v1.AnnotationLinkedChannelB\x03\xe0\x41\x01R\x0elinkedChannels\x12 \n\tasset_ids\x18\x18 \x03(\tB\x03\xe0\x41\x01R\x08\x61ssetIds\x12@\n\x08metadata\x18\x19 \x03(\x0b\x32\x1f.sift.metadata.v1.MetadataValueB\x03\xe0\x41\x01R\x08metadata\x12\x44\n\rarchived_date\x18\x1a \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01R\x0c\x61rchivedDate\x12$\n\x0bis_archived\x18\x1b \x01(\x08\x42\x03\xe0\x41\x02R\nisArchived\x12.\n\x10\x62\x61tched_triggers\x18\x1c \x01(\x05\x42\x03\xe0\x41\x02R\x0f\x62\x61tchedTriggers\x12\'\n\ris_noisy_rule\x18\x1d \x01(\x08\x42\x03\xe0\x41\x01R\x0bisNoisyRuleB\t\n\x07_run_idB\x08\n\x06_stateB\x10\n\x0e_legend_configB\x1a\n\x18_created_by_condition_idB\'\n%_created_by_rule_condition_version_idB\x19\n\x17_report_rule_version_id\"E\n\x1f\x41nnotationLinkedChannelsChannel\x12\"\n\nchannel_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\tchannelId\"x\n\'AnnotationLinkedChannelsBitFieldElement\x12\"\n\nchannel_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\tchannelId\x12)\n\x0e\x62it_field_name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0c\x62itFieldName\"k\n!AnnotationLinkedCalculatedChannel\x12\x46\n\x1d\x63\x61lculated_channel_version_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x1a\x63\x61lculatedChannelVersionId\"\xc8\x02\n\x17\x41nnotationLinkedChannel\x12P\n\x07\x63hannel\x18\x01 \x01(\x0b\x32\x34.sift.annotations.v1.AnnotationLinkedChannelsChannelH\x00R\x07\x63hannel\x12j\n\x11\x62it_field_element\x18\x02 \x01(\x0b\x32<.sift.annotations.v1.AnnotationLinkedChannelsBitFieldElementH\x00R\x0f\x62itFieldElement\x12g\n\x12\x63\x61lculated_channel\x18\x03 \x01(\x0b\x32\x36.sift.annotations.v1.AnnotationLinkedCalculatedChannelH\x00R\x11\x63\x61lculatedChannelB\x06\n\x04type\"\x91\x08\n\x17\x43reateAnnotationRequest\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x01R\x0b\x64\x65scription\x12>\n\nstart_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\tstartTime\x12:\n\x08\x65nd_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x07\x65ndTime\x12\x1b\n\x06\x61ssets\x18\x05 \x03(\tB\x03\xe0\x41\x01R\x06\x61ssets\x12Z\n\x0flinked_channels\x18\x06 \x03(\x0b\x32,.sift.annotations.v1.AnnotationLinkedChannelB\x03\xe0\x41\x01R\x0elinkedChannels\x12\x17\n\x04tags\x18\x07 \x03(\tB\x03\xe0\x41\x01R\x04tags\x12\x1f\n\x06run_id\x18\x08 \x01(\tB\x03\xe0\x41\x01H\x00R\x05runId\x88\x01\x01\x12\x33\n\x11\x61ssign_to_user_id\x18\t \x01(\tB\x03\xe0\x41\x01H\x01R\x0e\x61ssignToUserId\x88\x01\x01\x12,\n\x0forganization_id\x18\n \x01(\tB\x03\xe0\x41\x01R\x0eorganizationId\x12\x44\n\x05state\x18\x0b \x01(\x0e\x32$.sift.annotations.v1.AnnotationStateB\x03\xe0\x41\x01H\x02R\x05state\x88\x01\x01\x12Q\n\x0f\x61nnotation_type\x18\x0c \x01(\x0e\x32#.sift.annotations.v1.AnnotationTypeB\x03\xe0\x41\x01R\x0e\x61nnotationType\x12?\n\x17\x63reated_by_condition_id\x18\x0e \x01(\tB\x03\xe0\x41\x01H\x03R\x14\x63reatedByConditionId\x88\x01\x01\x12-\n\rlegend_config\x18\r \x01(\tB\x03\xe0\x41\x01H\x04R\x0clegendConfig\x88\x01\x01\x12W\n$created_by_rule_condition_version_id\x18\x0f \x01(\tB\x03\xe0\x41\x01H\x05R\x1f\x63reatedByRuleConditionVersionId\x88\x01\x01\x12@\n\x08metadata\x18\x10 \x03(\x0b\x32\x1f.sift.metadata.v1.MetadataValueB\x03\xe0\x41\x01R\x08metadataB\t\n\x07_run_idB\x14\n\x12_assign_to_user_idB\x08\n\x06_stateB\x1a\n\x18_created_by_condition_idB\x10\n\x0e_legend_configB\'\n%_created_by_rule_condition_version_id\"`\n\x18\x43reateAnnotationResponse\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\"C\n\x17\x44\x65leteAnnotationRequest\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\"\x1a\n\x18\x44\x65leteAnnotationResponse\"K\n\x1d\x42\x61tchDeleteAnnotationsRequest\x12*\n\x0e\x61nnotation_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\rannotationIds\" \n\x1e\x42\x61tchDeleteAnnotationsResponse\"@\n\x14GetAnnotationRequest\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\"]\n\x15GetAnnotationResponse\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\"\xc9\x01\n\x16ListAnnotationsRequest\x12 \n\tpage_size\x18\x01 \x01(\rB\x03\xe0\x41\x01R\x08pageSize\x12\"\n\npage_token\x18\x02 \x01(\tB\x03\xe0\x41\x01R\tpageToken\x12\x1b\n\x06\x66ilter\x18\x03 \x01(\tB\x03\xe0\x41\x01R\x06\x66ilter\x12,\n\x0forganization_id\x18\x04 \x01(\tB\x03\xe0\x41\x01R\x0eorganizationId\x12\x1e\n\x08order_by\x18\x05 \x01(\tB\x03\xe0\x41\x01R\x07orderBy\"\x84\x01\n\x17ListAnnotationsResponse\x12\x41\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32\x1f.sift.annotations.v1.AnnotationR\x0b\x61nnotations\x12&\n\x0fnext_page_token\x18\x05 \x01(\tR\rnextPageToken\"\xa1\x01\n\x17UpdateAnnotationRequest\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\x12@\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02R\nupdateMask\"[\n\x18UpdateAnnotationResponse\x12?\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationR\nannotation\"D\n\x18\x41rchiveAnnotationRequest\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\"a\n\x19\x41rchiveAnnotationResponse\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\"F\n\x1aUnarchiveAnnotationRequest\x12(\n\rannotation_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x61nnotationId\"c\n\x1bUnarchiveAnnotationResponse\x12\x44\n\nannotation\x18\x01 \x01(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\nannotation\"L\n\x1e\x42\x61tchArchiveAnnotationsRequest\x12*\n\x0e\x61nnotation_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\rannotationIds\"i\n\x1f\x42\x61tchArchiveAnnotationsResponse\x12\x46\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\x0b\x61nnotations\"N\n BatchUnarchiveAnnotationsRequest\x12*\n\x0e\x61nnotation_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\rannotationIds\"k\n!BatchUnarchiveAnnotationsResponse\x12\x46\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32\x1f.sift.annotations.v1.AnnotationB\x03\xe0\x41\x02R\x0b\x61nnotations*\x8b\x01\n\x0f\x41nnotationState\x12 \n\x1c\x41NNOTATION_STATE_UNSPECIFIED\x10\x00\x12\x19\n\x15\x41NNOTATION_STATE_OPEN\x10\x01\x12\x1c\n\x18\x41NNOTATION_STATE_FLAGGED\x10\x02\x12\x1d\n\x19\x41NNOTATION_STATE_RESOLVED\x10\x03*m\n\x0e\x41nnotationType\x12\x1f\n\x1b\x41NNOTATION_TYPE_UNSPECIFIED\x10\x00\x12\x1f\n\x1b\x41NNOTATION_TYPE_DATA_REVIEW\x10\x01\x12\x19\n\x15\x41NNOTATION_TYPE_PHASE\x10\x02\x32\x81\x13\n\x11\x41nnotationService\x12\xbc\x01\n\x10\x43reateAnnotation\x12,.sift.annotations.v1.CreateAnnotationRequest\x1a-.sift.annotations.v1.CreateAnnotationResponse\"K\x92\x41*\x12\x10\x43reateAnnotation\x1a\x16\x43reates an annotation.\x82\xd3\xe4\x93\x02\x18\"\x13/api/v1/annotations:\x01*\x12\xcd\x01\n\x10\x44\x65leteAnnotation\x12,.sift.annotations.v1.DeleteAnnotationRequest\x1a-.sift.annotations.v1.DeleteAnnotationResponse\"\\\x88\x02\x01\x92\x41+\x12\x10\x44\x65leteAnnotation\x1a\x17\x41rchives an annotation.\x82\xd3\xe4\x93\x02%*#/api/v1/annotations/{annotation_id}\x12\xd9\x01\n\x11\x41rchiveAnnotation\x12-.sift.annotations.v1.ArchiveAnnotationRequest\x1a..sift.annotations.v1.ArchiveAnnotationResponse\"e\x92\x41,\x12\x11\x41rchiveAnnotation\x1a\x17\x41rchives an annotation.\x82\xd3\xe4\x93\x02\x30\"+/api/v1/annotations/{annotation_id}:archive:\x01*\x12\xe5\x01\n\x13UnarchiveAnnotation\x12/.sift.annotations.v1.UnarchiveAnnotationRequest\x1a\x30.sift.annotations.v1.UnarchiveAnnotationResponse\"k\x92\x41\x30\x12\x13UnarchiveAnnotation\x1a\x19Unarchives an annotation.\x82\xd3\xe4\x93\x02\x32\"-/api/v1/annotations/{annotation_id}:unarchive:\x01*\x12\xe7\x01\n\x16\x42\x61tchDeleteAnnotations\x12\x32.sift.annotations.v1.BatchDeleteAnnotationsRequest\x1a\x33.sift.annotations.v1.BatchDeleteAnnotationsResponse\"d\x88\x02\x01\x92\x41\x34\x12\x15\x42\x61tchDeleteAnnotation\x1a\x1b\x42\x61tch archives annotations.\x82\xd3\xe4\x93\x02$\"\x1f/api/v1/annotations:batchDelete:\x01*\x12\xea\x01\n\x17\x42\x61tchArchiveAnnotations\x12\x33.sift.annotations.v1.BatchArchiveAnnotationsRequest\x1a\x34.sift.annotations.v1.BatchArchiveAnnotationsResponse\"d\x92\x41\x36\x12\x17\x42\x61tchArchiveAnnotations\x1a\x1b\x42\x61tch archives annotations.\x82\xd3\xe4\x93\x02%\" /api/v1/annotations:batchArchive:\x01*\x12\xf6\x01\n\x19\x42\x61tchUnarchiveAnnotations\x12\x35.sift.annotations.v1.BatchUnarchiveAnnotationsRequest\x1a\x36.sift.annotations.v1.BatchUnarchiveAnnotationsResponse\"j\x92\x41:\x12\x19\x42\x61tchUnarchiveAnnotations\x1a\x1d\x42\x61tch unarchives annotations.\x82\xd3\xe4\x93\x02\'\"\"/api/v1/annotations:batchUnarchive:\x01*\x12\xcd\x01\n\x0fListAnnotations\x12+.sift.annotations.v1.ListAnnotationsRequest\x1a,.sift.annotations.v1.ListAnnotationsResponse\"_\x92\x41\x41\x12\x0eListAnnotation\x1a/Retrieves annotations using an optional filter.\x82\xd3\xe4\x93\x02\x15\x12\x13/api/v1/annotations\x12\xbe\x01\n\rGetAnnotation\x12).sift.annotations.v1.GetAnnotationRequest\x1a*.sift.annotations.v1.GetAnnotationResponse\"V\x92\x41(\x12\rGetAnnotation\x1a\x17Retrieves an annotation\x82\xd3\xe4\x93\x02%\x12#/api/v1/annotations/{annotation_id}\x12\x80\x02\n\x10UpdateAnnotation\x12,.sift.annotations.v1.UpdateAnnotationRequest\x1a-.sift.annotations.v1.UpdateAnnotationResponse\"\x8e\x01\x92\x41m\x12\x10UpdateAnnotation\x1aYUpdates an existing annotation using using the list of fields specified in `update_mask`.\x82\xd3\xe4\x93\x02\x18\x32\x13/api/v1/annotations:\x01*\x1a\xb4\x01\x92\x41\xb0\x01\x12\x36Service to programmatically interact with annotations.\x1av\n\x1cRead more about annotations.\x12Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265486685B\xb2\x01\n\x17\x63om.sift.annotations.v1B\x10\x41nnotationsProtoP\x01\xa2\x02\x03SAX\xaa\x02\x13Sift.Annotations.V1\xca\x02\x13Sift\\Annotations\\V1\xe2\x02\x1fSift\\Annotations\\V1\\GPBMetadata\xea\x02\x15Sift::Annotations::V1\x92\x41\x16\x12\x14\n\x12\x41nnotation Serviceb\x06proto3')
25
25
 
26
26
  _globals = globals()
27
27
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -83,12 +83,18 @@ if not _descriptor._USE_C_DESCRIPTORS:
83
83
  _globals['_ANNOTATION'].fields_by_name['archived_date']._serialized_options = b'\340A\001'
84
84
  _globals['_ANNOTATION'].fields_by_name['is_archived']._loaded_options = None
85
85
  _globals['_ANNOTATION'].fields_by_name['is_archived']._serialized_options = b'\340A\002'
86
+ _globals['_ANNOTATION'].fields_by_name['batched_triggers']._loaded_options = None
87
+ _globals['_ANNOTATION'].fields_by_name['batched_triggers']._serialized_options = b'\340A\002'
88
+ _globals['_ANNOTATION'].fields_by_name['is_noisy_rule']._loaded_options = None
89
+ _globals['_ANNOTATION'].fields_by_name['is_noisy_rule']._serialized_options = b'\340A\001'
86
90
  _globals['_ANNOTATIONLINKEDCHANNELSCHANNEL'].fields_by_name['channel_id']._loaded_options = None
87
91
  _globals['_ANNOTATIONLINKEDCHANNELSCHANNEL'].fields_by_name['channel_id']._serialized_options = b'\340A\002'
88
92
  _globals['_ANNOTATIONLINKEDCHANNELSBITFIELDELEMENT'].fields_by_name['channel_id']._loaded_options = None
89
93
  _globals['_ANNOTATIONLINKEDCHANNELSBITFIELDELEMENT'].fields_by_name['channel_id']._serialized_options = b'\340A\002'
90
94
  _globals['_ANNOTATIONLINKEDCHANNELSBITFIELDELEMENT'].fields_by_name['bit_field_name']._loaded_options = None
91
95
  _globals['_ANNOTATIONLINKEDCHANNELSBITFIELDELEMENT'].fields_by_name['bit_field_name']._serialized_options = b'\340A\002'
96
+ _globals['_ANNOTATIONLINKEDCALCULATEDCHANNEL'].fields_by_name['calculated_channel_version_id']._loaded_options = None
97
+ _globals['_ANNOTATIONLINKEDCALCULATEDCHANNEL'].fields_by_name['calculated_channel_version_id']._serialized_options = b'\340A\002'
92
98
  _globals['_CREATEANNOTATIONREQUEST'].fields_by_name['name']._loaded_options = None
93
99
  _globals['_CREATEANNOTATIONREQUEST'].fields_by_name['name']._serialized_options = b'\340A\002'
94
100
  _globals['_CREATEANNOTATIONREQUEST'].fields_by_name['description']._loaded_options = None
@@ -183,58 +189,60 @@ if not _descriptor._USE_C_DESCRIPTORS:
183
189
  _globals['_ANNOTATIONSERVICE'].methods_by_name['GetAnnotation']._serialized_options = b'\222A(\022\rGetAnnotation\032\027Retrieves an annotation\202\323\344\223\002%\022#/api/v1/annotations/{annotation_id}'
184
190
  _globals['_ANNOTATIONSERVICE'].methods_by_name['UpdateAnnotation']._loaded_options = None
185
191
  _globals['_ANNOTATIONSERVICE'].methods_by_name['UpdateAnnotation']._serialized_options = b'\222Am\022\020UpdateAnnotation\032YUpdates an existing annotation using using the list of fields specified in `update_mask`.\202\323\344\223\002\0302\023/api/v1/annotations:\001*'
186
- _globals['_ANNOTATIONSTATE']._serialized_start=5216
187
- _globals['_ANNOTATIONSTATE']._serialized_end=5355
188
- _globals['_ANNOTATIONTYPE']._serialized_start=5357
189
- _globals['_ANNOTATIONTYPE']._serialized_end=5466
192
+ _globals['_ANNOTATIONSTATE']._serialized_start=5519
193
+ _globals['_ANNOTATIONSTATE']._serialized_end=5658
194
+ _globals['_ANNOTATIONTYPE']._serialized_start=5660
195
+ _globals['_ANNOTATIONTYPE']._serialized_end=5769
190
196
  _globals['_ANNOTATION']._serialized_start=306
191
- _globals['_ANNOTATION']._serialized_end=1971
192
- _globals['_ANNOTATIONLINKEDCHANNELSCHANNEL']._serialized_start=1973
193
- _globals['_ANNOTATIONLINKEDCHANNELSCHANNEL']._serialized_end=2042
194
- _globals['_ANNOTATIONLINKEDCHANNELSBITFIELDELEMENT']._serialized_start=2044
195
- _globals['_ANNOTATIONLINKEDCHANNELSBITFIELDELEMENT']._serialized_end=2164
196
- _globals['_ANNOTATIONLINKEDCHANNEL']._serialized_start=2167
197
- _globals['_ANNOTATIONLINKEDCHANNEL']._serialized_end=2390
198
- _globals['_CREATEANNOTATIONREQUEST']._serialized_start=2393
199
- _globals['_CREATEANNOTATIONREQUEST']._serialized_end=3434
200
- _globals['_CREATEANNOTATIONRESPONSE']._serialized_start=3436
201
- _globals['_CREATEANNOTATIONRESPONSE']._serialized_end=3532
202
- _globals['_DELETEANNOTATIONREQUEST']._serialized_start=3534
203
- _globals['_DELETEANNOTATIONREQUEST']._serialized_end=3601
204
- _globals['_DELETEANNOTATIONRESPONSE']._serialized_start=3603
205
- _globals['_DELETEANNOTATIONRESPONSE']._serialized_end=3629
206
- _globals['_BATCHDELETEANNOTATIONSREQUEST']._serialized_start=3631
207
- _globals['_BATCHDELETEANNOTATIONSREQUEST']._serialized_end=3706
208
- _globals['_BATCHDELETEANNOTATIONSRESPONSE']._serialized_start=3708
209
- _globals['_BATCHDELETEANNOTATIONSRESPONSE']._serialized_end=3740
210
- _globals['_GETANNOTATIONREQUEST']._serialized_start=3742
211
- _globals['_GETANNOTATIONREQUEST']._serialized_end=3806
212
- _globals['_GETANNOTATIONRESPONSE']._serialized_start=3808
213
- _globals['_GETANNOTATIONRESPONSE']._serialized_end=3901
214
- _globals['_LISTANNOTATIONSREQUEST']._serialized_start=3904
215
- _globals['_LISTANNOTATIONSREQUEST']._serialized_end=4105
216
- _globals['_LISTANNOTATIONSRESPONSE']._serialized_start=4108
217
- _globals['_LISTANNOTATIONSRESPONSE']._serialized_end=4240
218
- _globals['_UPDATEANNOTATIONREQUEST']._serialized_start=4243
219
- _globals['_UPDATEANNOTATIONREQUEST']._serialized_end=4404
220
- _globals['_UPDATEANNOTATIONRESPONSE']._serialized_start=4406
221
- _globals['_UPDATEANNOTATIONRESPONSE']._serialized_end=4497
222
- _globals['_ARCHIVEANNOTATIONREQUEST']._serialized_start=4499
223
- _globals['_ARCHIVEANNOTATIONREQUEST']._serialized_end=4567
224
- _globals['_ARCHIVEANNOTATIONRESPONSE']._serialized_start=4569
225
- _globals['_ARCHIVEANNOTATIONRESPONSE']._serialized_end=4666
226
- _globals['_UNARCHIVEANNOTATIONREQUEST']._serialized_start=4668
227
- _globals['_UNARCHIVEANNOTATIONREQUEST']._serialized_end=4738
228
- _globals['_UNARCHIVEANNOTATIONRESPONSE']._serialized_start=4740
229
- _globals['_UNARCHIVEANNOTATIONRESPONSE']._serialized_end=4839
230
- _globals['_BATCHARCHIVEANNOTATIONSREQUEST']._serialized_start=4841
231
- _globals['_BATCHARCHIVEANNOTATIONSREQUEST']._serialized_end=4917
232
- _globals['_BATCHARCHIVEANNOTATIONSRESPONSE']._serialized_start=4919
233
- _globals['_BATCHARCHIVEANNOTATIONSRESPONSE']._serialized_end=5024
234
- _globals['_BATCHUNARCHIVEANNOTATIONSREQUEST']._serialized_start=5026
235
- _globals['_BATCHUNARCHIVEANNOTATIONSREQUEST']._serialized_end=5104
236
- _globals['_BATCHUNARCHIVEANNOTATIONSRESPONSE']._serialized_start=5106
237
- _globals['_BATCHUNARCHIVEANNOTATIONSRESPONSE']._serialized_end=5213
238
- _globals['_ANNOTATIONSERVICE']._serialized_start=5469
239
- _globals['_ANNOTATIONSERVICE']._serialized_end=7902
197
+ _globals['_ANNOTATION']._serialized_end=2060
198
+ _globals['_ANNOTATIONLINKEDCHANNELSCHANNEL']._serialized_start=2062
199
+ _globals['_ANNOTATIONLINKEDCHANNELSCHANNEL']._serialized_end=2131
200
+ _globals['_ANNOTATIONLINKEDCHANNELSBITFIELDELEMENT']._serialized_start=2133
201
+ _globals['_ANNOTATIONLINKEDCHANNELSBITFIELDELEMENT']._serialized_end=2253
202
+ _globals['_ANNOTATIONLINKEDCALCULATEDCHANNEL']._serialized_start=2255
203
+ _globals['_ANNOTATIONLINKEDCALCULATEDCHANNEL']._serialized_end=2362
204
+ _globals['_ANNOTATIONLINKEDCHANNEL']._serialized_start=2365
205
+ _globals['_ANNOTATIONLINKEDCHANNEL']._serialized_end=2693
206
+ _globals['_CREATEANNOTATIONREQUEST']._serialized_start=2696
207
+ _globals['_CREATEANNOTATIONREQUEST']._serialized_end=3737
208
+ _globals['_CREATEANNOTATIONRESPONSE']._serialized_start=3739
209
+ _globals['_CREATEANNOTATIONRESPONSE']._serialized_end=3835
210
+ _globals['_DELETEANNOTATIONREQUEST']._serialized_start=3837
211
+ _globals['_DELETEANNOTATIONREQUEST']._serialized_end=3904
212
+ _globals['_DELETEANNOTATIONRESPONSE']._serialized_start=3906
213
+ _globals['_DELETEANNOTATIONRESPONSE']._serialized_end=3932
214
+ _globals['_BATCHDELETEANNOTATIONSREQUEST']._serialized_start=3934
215
+ _globals['_BATCHDELETEANNOTATIONSREQUEST']._serialized_end=4009
216
+ _globals['_BATCHDELETEANNOTATIONSRESPONSE']._serialized_start=4011
217
+ _globals['_BATCHDELETEANNOTATIONSRESPONSE']._serialized_end=4043
218
+ _globals['_GETANNOTATIONREQUEST']._serialized_start=4045
219
+ _globals['_GETANNOTATIONREQUEST']._serialized_end=4109
220
+ _globals['_GETANNOTATIONRESPONSE']._serialized_start=4111
221
+ _globals['_GETANNOTATIONRESPONSE']._serialized_end=4204
222
+ _globals['_LISTANNOTATIONSREQUEST']._serialized_start=4207
223
+ _globals['_LISTANNOTATIONSREQUEST']._serialized_end=4408
224
+ _globals['_LISTANNOTATIONSRESPONSE']._serialized_start=4411
225
+ _globals['_LISTANNOTATIONSRESPONSE']._serialized_end=4543
226
+ _globals['_UPDATEANNOTATIONREQUEST']._serialized_start=4546
227
+ _globals['_UPDATEANNOTATIONREQUEST']._serialized_end=4707
228
+ _globals['_UPDATEANNOTATIONRESPONSE']._serialized_start=4709
229
+ _globals['_UPDATEANNOTATIONRESPONSE']._serialized_end=4800
230
+ _globals['_ARCHIVEANNOTATIONREQUEST']._serialized_start=4802
231
+ _globals['_ARCHIVEANNOTATIONREQUEST']._serialized_end=4870
232
+ _globals['_ARCHIVEANNOTATIONRESPONSE']._serialized_start=4872
233
+ _globals['_ARCHIVEANNOTATIONRESPONSE']._serialized_end=4969
234
+ _globals['_UNARCHIVEANNOTATIONREQUEST']._serialized_start=4971
235
+ _globals['_UNARCHIVEANNOTATIONREQUEST']._serialized_end=5041
236
+ _globals['_UNARCHIVEANNOTATIONRESPONSE']._serialized_start=5043
237
+ _globals['_UNARCHIVEANNOTATIONRESPONSE']._serialized_end=5142
238
+ _globals['_BATCHARCHIVEANNOTATIONSREQUEST']._serialized_start=5144
239
+ _globals['_BATCHARCHIVEANNOTATIONSREQUEST']._serialized_end=5220
240
+ _globals['_BATCHARCHIVEANNOTATIONSRESPONSE']._serialized_start=5222
241
+ _globals['_BATCHARCHIVEANNOTATIONSRESPONSE']._serialized_end=5327
242
+ _globals['_BATCHUNARCHIVEANNOTATIONSREQUEST']._serialized_start=5329
243
+ _globals['_BATCHUNARCHIVEANNOTATIONSREQUEST']._serialized_end=5407
244
+ _globals['_BATCHUNARCHIVEANNOTATIONSRESPONSE']._serialized_start=5409
245
+ _globals['_BATCHUNARCHIVEANNOTATIONSRESPONSE']._serialized_end=5516
246
+ _globals['_ANNOTATIONSERVICE']._serialized_start=5772
247
+ _globals['_ANNOTATIONSERVICE']._serialized_end=8205
240
248
  # @@protoc_insertion_point(module_scope)
@@ -90,6 +90,8 @@ class Annotation(google.protobuf.message.Message):
90
90
  METADATA_FIELD_NUMBER: builtins.int
91
91
  ARCHIVED_DATE_FIELD_NUMBER: builtins.int
92
92
  IS_ARCHIVED_FIELD_NUMBER: builtins.int
93
+ BATCHED_TRIGGERS_FIELD_NUMBER: builtins.int
94
+ IS_NOISY_RULE_FIELD_NUMBER: builtins.int
93
95
  annotation_id: builtins.str
94
96
  name: builtins.str
95
97
  description: builtins.str
@@ -110,6 +112,8 @@ class Annotation(google.protobuf.message.Message):
110
112
  """
111
113
  is_archived: builtins.bool
112
114
  """is_archived is a inferred from when archived_date is not null"""
115
+ batched_triggers: builtins.int
116
+ is_noisy_rule: builtins.bool
113
117
  @property
114
118
  def start_time(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
115
119
  @property
@@ -162,9 +166,11 @@ class Annotation(google.protobuf.message.Message):
162
166
  metadata: collections.abc.Iterable[sift.metadata.v1.metadata_pb2.MetadataValue] | None = ...,
163
167
  archived_date: google.protobuf.timestamp_pb2.Timestamp | None = ...,
164
168
  is_archived: builtins.bool = ...,
169
+ batched_triggers: builtins.int = ...,
170
+ is_noisy_rule: builtins.bool = ...,
165
171
  ) -> None: ...
166
172
  def HasField(self, field_name: typing.Literal["_created_by_condition_id", b"_created_by_condition_id", "_created_by_rule_condition_version_id", b"_created_by_rule_condition_version_id", "_legend_config", b"_legend_config", "_report_rule_version_id", b"_report_rule_version_id", "_run_id", b"_run_id", "_state", b"_state", "archived_date", b"archived_date", "assigned_to_user", b"assigned_to_user", "created_by_condition_id", b"created_by_condition_id", "created_by_rule_condition_version_id", b"created_by_rule_condition_version_id", "created_date", b"created_date", "deleted_date", b"deleted_date", "end_time", b"end_time", "legend_config", b"legend_config", "modified_date", b"modified_date", "report_rule_version_id", b"report_rule_version_id", "run_id", b"run_id", "start_time", b"start_time", "state", b"state"]) -> builtins.bool: ...
167
- def ClearField(self, field_name: typing.Literal["_created_by_condition_id", b"_created_by_condition_id", "_created_by_rule_condition_version_id", b"_created_by_rule_condition_version_id", "_legend_config", b"_legend_config", "_report_rule_version_id", b"_report_rule_version_id", "_run_id", b"_run_id", "_state", b"_state", "annotation_id", b"annotation_id", "annotation_type", b"annotation_type", "archived_date", b"archived_date", "asset_ids", b"asset_ids", "assigned_to_user", b"assigned_to_user", "assigned_to_user_id", b"assigned_to_user_id", "created_by_condition_id", b"created_by_condition_id", "created_by_rule_condition_version_id", b"created_by_rule_condition_version_id", "created_by_user_id", b"created_by_user_id", "created_date", b"created_date", "deleted_date", b"deleted_date", "description", b"description", "end_time", b"end_time", "is_archived", b"is_archived", "legend_config", b"legend_config", "linked_channels", b"linked_channels", "metadata", b"metadata", "modified_by_user_id", b"modified_by_user_id", "modified_date", b"modified_date", "name", b"name", "organization_id", b"organization_id", "pending", b"pending", "report_rule_version_id", b"report_rule_version_id", "run_id", b"run_id", "start_time", b"start_time", "state", b"state", "tags", b"tags"]) -> None: ...
173
+ def ClearField(self, field_name: typing.Literal["_created_by_condition_id", b"_created_by_condition_id", "_created_by_rule_condition_version_id", b"_created_by_rule_condition_version_id", "_legend_config", b"_legend_config", "_report_rule_version_id", b"_report_rule_version_id", "_run_id", b"_run_id", "_state", b"_state", "annotation_id", b"annotation_id", "annotation_type", b"annotation_type", "archived_date", b"archived_date", "asset_ids", b"asset_ids", "assigned_to_user", b"assigned_to_user", "assigned_to_user_id", b"assigned_to_user_id", "batched_triggers", b"batched_triggers", "created_by_condition_id", b"created_by_condition_id", "created_by_rule_condition_version_id", b"created_by_rule_condition_version_id", "created_by_user_id", b"created_by_user_id", "created_date", b"created_date", "deleted_date", b"deleted_date", "description", b"description", "end_time", b"end_time", "is_archived", b"is_archived", "is_noisy_rule", b"is_noisy_rule", "legend_config", b"legend_config", "linked_channels", b"linked_channels", "metadata", b"metadata", "modified_by_user_id", b"modified_by_user_id", "modified_date", b"modified_date", "name", b"name", "organization_id", b"organization_id", "pending", b"pending", "report_rule_version_id", b"report_rule_version_id", "run_id", b"run_id", "start_time", b"start_time", "state", b"state", "tags", b"tags"]) -> None: ...
168
174
  @typing.overload
169
175
  def WhichOneof(self, oneof_group: typing.Literal["_created_by_condition_id", b"_created_by_condition_id"]) -> typing.Literal["created_by_condition_id"] | None: ...
170
176
  @typing.overload
@@ -213,25 +219,44 @@ class AnnotationLinkedChannelsBitFieldElement(google.protobuf.message.Message):
213
219
 
214
220
  global___AnnotationLinkedChannelsBitFieldElement = AnnotationLinkedChannelsBitFieldElement
215
221
 
222
+ @typing.final
223
+ class AnnotationLinkedCalculatedChannel(google.protobuf.message.Message):
224
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
225
+
226
+ CALCULATED_CHANNEL_VERSION_ID_FIELD_NUMBER: builtins.int
227
+ calculated_channel_version_id: builtins.str
228
+ def __init__(
229
+ self,
230
+ *,
231
+ calculated_channel_version_id: builtins.str = ...,
232
+ ) -> None: ...
233
+ def ClearField(self, field_name: typing.Literal["calculated_channel_version_id", b"calculated_channel_version_id"]) -> None: ...
234
+
235
+ global___AnnotationLinkedCalculatedChannel = AnnotationLinkedCalculatedChannel
236
+
216
237
  @typing.final
217
238
  class AnnotationLinkedChannel(google.protobuf.message.Message):
218
239
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
219
240
 
220
241
  CHANNEL_FIELD_NUMBER: builtins.int
221
242
  BIT_FIELD_ELEMENT_FIELD_NUMBER: builtins.int
243
+ CALCULATED_CHANNEL_FIELD_NUMBER: builtins.int
222
244
  @property
223
245
  def channel(self) -> global___AnnotationLinkedChannelsChannel: ...
224
246
  @property
225
247
  def bit_field_element(self) -> global___AnnotationLinkedChannelsBitFieldElement: ...
248
+ @property
249
+ def calculated_channel(self) -> global___AnnotationLinkedCalculatedChannel: ...
226
250
  def __init__(
227
251
  self,
228
252
  *,
229
253
  channel: global___AnnotationLinkedChannelsChannel | None = ...,
230
254
  bit_field_element: global___AnnotationLinkedChannelsBitFieldElement | None = ...,
255
+ calculated_channel: global___AnnotationLinkedCalculatedChannel | None = ...,
231
256
  ) -> None: ...
232
- def HasField(self, field_name: typing.Literal["bit_field_element", b"bit_field_element", "channel", b"channel", "type", b"type"]) -> builtins.bool: ...
233
- def ClearField(self, field_name: typing.Literal["bit_field_element", b"bit_field_element", "channel", b"channel", "type", b"type"]) -> None: ...
234
- def WhichOneof(self, oneof_group: typing.Literal["type", b"type"]) -> typing.Literal["channel", "bit_field_element"] | None: ...
257
+ def HasField(self, field_name: typing.Literal["bit_field_element", b"bit_field_element", "calculated_channel", b"calculated_channel", "channel", b"channel", "type", b"type"]) -> builtins.bool: ...
258
+ def ClearField(self, field_name: typing.Literal["bit_field_element", b"bit_field_element", "calculated_channel", b"calculated_channel", "channel", b"channel", "type", b"type"]) -> None: ...
259
+ def WhichOneof(self, oneof_group: typing.Literal["type", b"type"]) -> typing.Literal["channel", "bit_field_element", "calculated_channel"] | None: ...
235
260
 
236
261
  global___AnnotationLinkedChannel = AnnotationLinkedChannel
237
262
 
@@ -481,7 +506,7 @@ class ListAnnotationsRequest(google.protobuf.message.Message):
481
506
  filter: builtins.str
482
507
  """A [Common Expression Language (CEL)](https://github.com/google/cel-spec) filter string.
483
508
  Available fields to filter by are `annotation_id`, `start_time`, `end_time`,
484
- `created_date`, `modified_date`, `run_id`, `name`, `description`, `state`, `created_by_user_id`, `created_by_rule_condition_version_id`,
509
+ `created_date`, `modified_date`, `run_id`, `name`, `description`, `state`, `created_by_user_id`, `created_by_rule_condition_version_id`, `rule_id`,
485
510
  `annotation_type`, `tag_name`, `report_id`, `asset_id`, `asset_name`, `pending`, `assignee`, `campaign_reports`, `metadata`, `archived_date`, and `is_archived`.
486
511
  For further information about how to use CELs, please refer to [this guide](https://github.com/google/cel-spec/blob/master/doc/langdef.md#standard-definitions).
487
512
  For more information about the fields used for filtering, please refer to [this definition](/docs/api/grpc/protocol-buffers/annotations#annotation). Optional.
@@ -12,7 +12,6 @@ from google.protobuf.internal import builder as _builder
12
12
  _sym_db = _symbol_database.Default()
13
13
 
14
14
 
15
- from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
16
15
  from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
17
16
  from google.api import field_behavior_pb2 as google_dot_api_dot_field__behavior__pb2
18
17
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
@@ -20,7 +19,7 @@ from protoc_gen_openapiv2.options import annotations_pb2 as protoc__gen__openapi
20
19
  from sift.common.type.v1 import organization_pb2 as sift_dot_common_dot_type_dot_v1_dot_organization__pb2
21
20
 
22
21
 
23
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fsift/api_keys/v2/api_keys.proto\x12\x10sift.api_keys.v2\x1a\x1b\x62uf/validate/validate.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a&sift/common/type/v1/organization.proto\"\xd8\x01\n\x06\x41piKey\x12!\n\napi_key_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x08\x61piKeyId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x12\x42\n\x0c\x63reated_date\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x30\n\x12\x63reated_by_user_id\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x1c\n\x07user_id\x18\x05 \x01(\tB\x03\xe0\x41\x02R\x06userId\"U\n\x14\x43reateApiKeyResponse\x12=\n\x07\x61pi_key\x18\x01 \x01(\x0b\x32\x1f.sift.api_keys.v2.CreatedApiKeyB\x03\xe0\x41\x02R\x06\x61piKey\"\xf6\x01\n\rCreatedApiKey\x12!\n\napi_key_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x08\x61piKeyId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x12\x15\n\x03key\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x03key\x12\x42\n\x0c\x63reated_date\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x30\n\x12\x63reated_by_user_id\x18\x05 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x1c\n\x07user_id\x18\x06 \x01(\tB\x03\xe0\x41\x02R\x06userId\"\x97\x01\n\x12ListApiKeysRequest\x12 \n\tpage_size\x18\x01 \x01(\rB\x03\xe0\x41\x01R\x08pageSize\x12\"\n\npage_token\x18\x02 \x01(\tB\x03\xe0\x41\x01R\tpageToken\x12\x1b\n\x06\x66ilter\x18\x03 \x01(\tB\x03\xe0\x41\x01R\x06\x66ilter\x12\x1e\n\x08order_by\x18\x04 \x01(\tB\x03\xe0\x41\x01R\x07orderBy\"|\n\x13ListApiKeysResponse\x12\x38\n\x08\x61pi_keys\x18\x01 \x03(\x0b\x32\x18.sift.api_keys.v2.ApiKeyB\x03\xe0\x41\x02R\x07\x61piKeys\x12+\n\x0fnext_page_token\x18\x02 \x01(\tB\x03\xe0\x41\x01R\rnextPageToken\"T\n\x13\x43reateApiKeyRequest\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12$\n\x07user_id\x18\x02 \x01(\tB\x0b\xe0\x41\x02\xbaH\x05r\x03\xb0\x01\x01R\x06userId\"@\n\x13\x44\x65leteApiKeyRequest\x12)\n\napi_key_id\x18\x01 \x01(\tB\x0b\xe0\x41\x02\xbaH\x05r\x03\xb0\x01\x01R\x08\x61piKeyId\"\x16\n\x14\x44\x65leteApiKeyResponse\"\x1b\n\x19\x41piKeyOrganizationRequest\"c\n\x1a\x41piKeyOrganizationResponse\x12\x45\n\x0corganization\x18\x01 \x01(\x0b\x32!.sift.common.type.v1.OrganizationR\x0corganization2\xee\x06\n\rApiKeyService\x12\xcf\x01\n\x0bListApiKeys\x12$.sift.api_keys.v2.ListApiKeysRequest\x1a%.sift.api_keys.v2.ListApiKeysResponse\"s\x92\x41X\x12\x0bListApiKeys\x1a,Retrieves API keys using an optional filter.*\x1b\x41piKeyService_ListApiKeysV2\x82\xd3\xe4\x93\x02\x12\x12\x10/api/v2/api-keys\x12\xbe\x01\n\x0c\x43reateApiKey\x12%.sift.api_keys.v2.CreateApiKeyRequest\x1a&.sift.api_keys.v2.CreateApiKeyResponse\"_\x92\x41\x41\x12\x0c\x43reateApiKey\x1a\x13\x43reates an API key.*\x1c\x41piKeyService_CreateApiKeyV2\x82\xd3\xe4\x93\x02\x15\"\x10/api/v2/api-keys:\x01*\x12\xc8\x01\n\x0c\x44\x65leteApiKey\x12%.sift.api_keys.v2.DeleteApiKeyRequest\x1a&.sift.api_keys.v2.DeleteApiKeyResponse\"i\x92\x41\x41\x12\x0c\x44\x65leteApiKey\x1a\x13\x44\x65letes an API key.*\x1c\x41piKeyService_DeleteApiKeyV2\x82\xd3\xe4\x93\x02\x1f*\x1d/api/v2/api-keys/{api_key_id}\x12\xfe\x01\n\x12\x41piKeyOrganization\x12+.sift.api_keys.v2.ApiKeyOrganizationRequest\x1a,.sift.api_keys.v2.ApiKeyOrganizationResponse\"\x8c\x01\x92\x41\x64\x12\x12\x41piKeyOrganization\x1a*Retrieves the organization for an API key.*\"ApiKeyService_ApiKeyOrganizationV2\x82\xd3\xe4\x93\x02\x1f\x12\x1d/api/v2/api-keys/organizationB\x98\x01\n\x14\x63om.sift.api_keys.v2B\x0c\x41piKeysProtoP\x01\xa2\x02\x03SAX\xaa\x02\x0fSift.ApiKeys.V2\xca\x02\x0fSift\\ApiKeys\\V2\xe2\x02\x1bSift\\ApiKeys\\V2\\GPBMetadata\xea\x02\x11Sift::ApiKeys::V2\x92\x41\x13\x12\x11\n\x0f\x41PI Key Serviceb\x06proto3')
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fsift/api_keys/v2/api_keys.proto\x12\x10sift.api_keys.v2\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a&sift/common/type/v1/organization.proto\"\xd8\x01\n\x06\x41piKey\x12!\n\napi_key_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x08\x61piKeyId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x12\x42\n\x0c\x63reated_date\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x30\n\x12\x63reated_by_user_id\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x1c\n\x07user_id\x18\x05 \x01(\tB\x03\xe0\x41\x02R\x06userId\"U\n\x14\x43reateApiKeyResponse\x12=\n\x07\x61pi_key\x18\x01 \x01(\x0b\x32\x1f.sift.api_keys.v2.CreatedApiKeyB\x03\xe0\x41\x02R\x06\x61piKey\"\xf6\x01\n\rCreatedApiKey\x12!\n\napi_key_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x08\x61piKeyId\x12\x17\n\x04name\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x04name\x12\x15\n\x03key\x18\x03 \x01(\tB\x03\xe0\x41\x02R\x03key\x12\x42\n\x0c\x63reated_date\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x30\n\x12\x63reated_by_user_id\x18\x05 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x1c\n\x07user_id\x18\x06 \x01(\tB\x03\xe0\x41\x02R\x06userId\"\x97\x01\n\x12ListApiKeysRequest\x12 \n\tpage_size\x18\x01 \x01(\rB\x03\xe0\x41\x01R\x08pageSize\x12\"\n\npage_token\x18\x02 \x01(\tB\x03\xe0\x41\x01R\tpageToken\x12\x1b\n\x06\x66ilter\x18\x03 \x01(\tB\x03\xe0\x41\x01R\x06\x66ilter\x12\x1e\n\x08order_by\x18\x04 \x01(\tB\x03\xe0\x41\x01R\x07orderBy\"|\n\x13ListApiKeysResponse\x12\x38\n\x08\x61pi_keys\x18\x01 \x03(\x0b\x32\x18.sift.api_keys.v2.ApiKeyB\x03\xe0\x41\x02R\x07\x61piKeys\x12+\n\x0fnext_page_token\x18\x02 \x01(\tB\x03\xe0\x41\x01R\rnextPageToken\"L\n\x13\x43reateApiKeyRequest\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12\x1c\n\x07user_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x06userId\"8\n\x13\x44\x65leteApiKeyRequest\x12!\n\napi_key_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x08\x61piKeyId\"\x16\n\x14\x44\x65leteApiKeyResponse\"\x1b\n\x19\x41piKeyOrganizationRequest\"c\n\x1a\x41piKeyOrganizationResponse\x12\x45\n\x0corganization\x18\x01 \x01(\x0b\x32!.sift.common.type.v1.OrganizationR\x0corganization2\xee\x06\n\rApiKeyService\x12\xcf\x01\n\x0bListApiKeys\x12$.sift.api_keys.v2.ListApiKeysRequest\x1a%.sift.api_keys.v2.ListApiKeysResponse\"s\x92\x41X\x12\x0bListApiKeys\x1a,Retrieves API keys using an optional filter.*\x1b\x41piKeyService_ListApiKeysV2\x82\xd3\xe4\x93\x02\x12\x12\x10/api/v2/api-keys\x12\xbe\x01\n\x0c\x43reateApiKey\x12%.sift.api_keys.v2.CreateApiKeyRequest\x1a&.sift.api_keys.v2.CreateApiKeyResponse\"_\x92\x41\x41\x12\x0c\x43reateApiKey\x1a\x13\x43reates an API key.*\x1c\x41piKeyService_CreateApiKeyV2\x82\xd3\xe4\x93\x02\x15\"\x10/api/v2/api-keys:\x01*\x12\xc8\x01\n\x0c\x44\x65leteApiKey\x12%.sift.api_keys.v2.DeleteApiKeyRequest\x1a&.sift.api_keys.v2.DeleteApiKeyResponse\"i\x92\x41\x41\x12\x0c\x44\x65leteApiKey\x1a\x13\x44\x65letes an API key.*\x1c\x41piKeyService_DeleteApiKeyV2\x82\xd3\xe4\x93\x02\x1f*\x1d/api/v2/api-keys/{api_key_id}\x12\xfe\x01\n\x12\x41piKeyOrganization\x12+.sift.api_keys.v2.ApiKeyOrganizationRequest\x1a,.sift.api_keys.v2.ApiKeyOrganizationResponse\"\x8c\x01\x92\x41\x64\x12\x12\x41piKeyOrganization\x1a*Retrieves the organization for an API key.*\"ApiKeyService_ApiKeyOrganizationV2\x82\xd3\xe4\x93\x02\x1f\x12\x1d/api/v2/api-keys/organizationB\x98\x01\n\x14\x63om.sift.api_keys.v2B\x0c\x41piKeysProtoP\x01\xa2\x02\x03SAX\xaa\x02\x0fSift.ApiKeys.V2\xca\x02\x0fSift\\ApiKeys\\V2\xe2\x02\x1bSift\\ApiKeys\\V2\\GPBMetadata\xea\x02\x11Sift::ApiKeys::V2\x92\x41\x13\x12\x11\n\x0f\x41PI Key Serviceb\x06proto3')
24
23
 
25
24
  _globals = globals()
26
25
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -67,9 +66,9 @@ if not _descriptor._USE_C_DESCRIPTORS:
67
66
  _globals['_CREATEAPIKEYREQUEST'].fields_by_name['name']._loaded_options = None
68
67
  _globals['_CREATEAPIKEYREQUEST'].fields_by_name['name']._serialized_options = b'\340A\002'
69
68
  _globals['_CREATEAPIKEYREQUEST'].fields_by_name['user_id']._loaded_options = None
70
- _globals['_CREATEAPIKEYREQUEST'].fields_by_name['user_id']._serialized_options = b'\340A\002\272H\005r\003\260\001\001'
69
+ _globals['_CREATEAPIKEYREQUEST'].fields_by_name['user_id']._serialized_options = b'\340A\002'
71
70
  _globals['_DELETEAPIKEYREQUEST'].fields_by_name['api_key_id']._loaded_options = None
72
- _globals['_DELETEAPIKEYREQUEST'].fields_by_name['api_key_id']._serialized_options = b'\340A\002\272H\005r\003\260\001\001'
71
+ _globals['_DELETEAPIKEYREQUEST'].fields_by_name['api_key_id']._serialized_options = b'\340A\002'
73
72
  _globals['_APIKEYSERVICE'].methods_by_name['ListApiKeys']._loaded_options = None
74
73
  _globals['_APIKEYSERVICE'].methods_by_name['ListApiKeys']._serialized_options = b'\222AX\022\013ListApiKeys\032,Retrieves API keys using an optional filter.*\033ApiKeyService_ListApiKeysV2\202\323\344\223\002\022\022\020/api/v2/api-keys'
75
74
  _globals['_APIKEYSERVICE'].methods_by_name['CreateApiKey']._loaded_options = None
@@ -78,26 +77,26 @@ if not _descriptor._USE_C_DESCRIPTORS:
78
77
  _globals['_APIKEYSERVICE'].methods_by_name['DeleteApiKey']._serialized_options = b'\222AA\022\014DeleteApiKey\032\023Deletes an API key.*\034ApiKeyService_DeleteApiKeyV2\202\323\344\223\002\037*\035/api/v2/api-keys/{api_key_id}'
79
78
  _globals['_APIKEYSERVICE'].methods_by_name['ApiKeyOrganization']._loaded_options = None
80
79
  _globals['_APIKEYSERVICE'].methods_by_name['ApiKeyOrganization']._serialized_options = b'\222Ad\022\022ApiKeyOrganization\032*Retrieves the organization for an API key.*\"ApiKeyService_ApiKeyOrganizationV2\202\323\344\223\002\037\022\035/api/v2/api-keys/organization'
81
- _globals['_APIKEY']._serialized_start=267
82
- _globals['_APIKEY']._serialized_end=483
83
- _globals['_CREATEAPIKEYRESPONSE']._serialized_start=485
84
- _globals['_CREATEAPIKEYRESPONSE']._serialized_end=570
85
- _globals['_CREATEDAPIKEY']._serialized_start=573
86
- _globals['_CREATEDAPIKEY']._serialized_end=819
87
- _globals['_LISTAPIKEYSREQUEST']._serialized_start=822
88
- _globals['_LISTAPIKEYSREQUEST']._serialized_end=973
89
- _globals['_LISTAPIKEYSRESPONSE']._serialized_start=975
90
- _globals['_LISTAPIKEYSRESPONSE']._serialized_end=1099
91
- _globals['_CREATEAPIKEYREQUEST']._serialized_start=1101
92
- _globals['_CREATEAPIKEYREQUEST']._serialized_end=1185
93
- _globals['_DELETEAPIKEYREQUEST']._serialized_start=1187
94
- _globals['_DELETEAPIKEYREQUEST']._serialized_end=1251
95
- _globals['_DELETEAPIKEYRESPONSE']._serialized_start=1253
96
- _globals['_DELETEAPIKEYRESPONSE']._serialized_end=1275
97
- _globals['_APIKEYORGANIZATIONREQUEST']._serialized_start=1277
98
- _globals['_APIKEYORGANIZATIONREQUEST']._serialized_end=1304
99
- _globals['_APIKEYORGANIZATIONRESPONSE']._serialized_start=1306
100
- _globals['_APIKEYORGANIZATIONRESPONSE']._serialized_end=1405
101
- _globals['_APIKEYSERVICE']._serialized_start=1408
102
- _globals['_APIKEYSERVICE']._serialized_end=2286
80
+ _globals['_APIKEY']._serialized_start=238
81
+ _globals['_APIKEY']._serialized_end=454
82
+ _globals['_CREATEAPIKEYRESPONSE']._serialized_start=456
83
+ _globals['_CREATEAPIKEYRESPONSE']._serialized_end=541
84
+ _globals['_CREATEDAPIKEY']._serialized_start=544
85
+ _globals['_CREATEDAPIKEY']._serialized_end=790
86
+ _globals['_LISTAPIKEYSREQUEST']._serialized_start=793
87
+ _globals['_LISTAPIKEYSREQUEST']._serialized_end=944
88
+ _globals['_LISTAPIKEYSRESPONSE']._serialized_start=946
89
+ _globals['_LISTAPIKEYSRESPONSE']._serialized_end=1070
90
+ _globals['_CREATEAPIKEYREQUEST']._serialized_start=1072
91
+ _globals['_CREATEAPIKEYREQUEST']._serialized_end=1148
92
+ _globals['_DELETEAPIKEYREQUEST']._serialized_start=1150
93
+ _globals['_DELETEAPIKEYREQUEST']._serialized_end=1206
94
+ _globals['_DELETEAPIKEYRESPONSE']._serialized_start=1208
95
+ _globals['_DELETEAPIKEYRESPONSE']._serialized_end=1230
96
+ _globals['_APIKEYORGANIZATIONREQUEST']._serialized_start=1232
97
+ _globals['_APIKEYORGANIZATIONREQUEST']._serialized_end=1259
98
+ _globals['_APIKEYORGANIZATIONRESPONSE']._serialized_start=1261
99
+ _globals['_APIKEYORGANIZATIONRESPONSE']._serialized_end=1360
100
+ _globals['_APIKEYSERVICE']._serialized_start=1363
101
+ _globals['_APIKEYSERVICE']._serialized_end=2241
103
102
  # @@protoc_insertion_point(module_scope)
@@ -19,7 +19,7 @@ from sift.common.type.v1 import channel_data_type_pb2 as sift_dot_common_dot_typ
19
19
  from sift.common.type.v1 import user_defined_functions_pb2 as sift_dot_common_dot_type_dot_v1_dot_user__defined__functions__pb2
20
20
 
21
21
 
22
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n5sift/calculated_channels/v1/calculated_channels.proto\x12\x1bsift.calculated_channels.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a+sift/common/type/v1/channel_data_type.proto\x1a\x30sift/common/type/v1/user_defined_functions.proto\"r\n\x1a\x45xpressionChannelReference\x12\x30\n\x11\x63hannel_reference\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x10\x63hannelReference\x12\"\n\nchannel_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\tchannelId\"\xd8\x03\n\x11\x45xpressionRequest\x12x\n\x12\x63hannel_references\x18\x01 \x03(\x0b\x32\x45.sift.calculated_channels.v1.ExpressionRequest.ChannelReferencesEntryB\x02\x18\x01R\x11\x63hannelReferences\x12#\n\nexpression\x18\x02 \x01(\tB\x03\xe0\x41\x02R\nexpression\x12{\n\x1d\x65xpression_channel_references\x18\x03 \x03(\x0b\x32\x37.sift.calculated_channels.v1.ExpressionChannelReferenceR\x1b\x65xpressionChannelReferences\x12\x61\n\x15\x66unction_dependencies\x18\x04 \x03(\x0b\x32\'.sift.common.type.v1.FunctionDependencyB\x03\xe0\x41\x01R\x14\x66unctionDependencies\x1a\x44\n\x16\x43hannelReferencesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xa4\x01\n ListExpressionIdentifiersRequest\x12\x1b\n\tpage_size\x18\x01 \x01(\rR\x08pageSize\x12\x1d\n\npage_token\x18\x02 \x01(\tR\tpageToken\x12\x44\n\x04mode\x18\x03 \x01(\x0e\x32+.sift.calculated_channels.v1.ExpressionModeB\x03\xe0\x41\x02R\x04mode\"\xc3\x01\n!ListExpressionIdentifiersResponse\x12X\n\x0bidentifiers\x18\x01 \x03(\x0b\x32\x31.sift.calculated_channels.v1.ExpressionIdentifierB\x03\xe0\x41\x02R\x0bidentifiers\x12\x30\n\x0fnext_page_token\x18\x02 \x01(\tB\x03\xe0\x41\x01H\x00R\rnextPageToken\x88\x01\x01\x42\x12\n\x10_next_page_token\"\xa7\x02\n\x14\x45xpressionIdentifier\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12N\n\x04type\x18\x03 \x01(\x0e\x32\x35.sift.calculated_channels.v1.ExpressionIdentifierTypeB\x03\xe0\x41\x02R\x04type\x12&\n\x0c\x64isplay_name\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x0b\x64isplayName\x12W\n\x07library\x18\x05 \x01(\x0e\x32\x38.sift.calculated_channels.v1.ExpressionIdentifierLibraryB\x03\xe0\x41\x02R\x07library\"\xb6\x01\n\x19ValidateExpressionRequest\x12S\n\nexpression\x18\x01 \x01(\x0b\x32..sift.calculated_channels.v1.ExpressionRequestB\x03\xe0\x41\x02R\nexpression\x12\x44\n\x04mode\x18\x02 \x01(\x0e\x32+.sift.calculated_channels.v1.ExpressionModeB\x03\xe0\x41\x02R\x04mode\"\xd8\x01\n\x1aValidateExpressionResponse\x12T\n\x05\x65rror\x18\x01 \x01(\x0b\x32<.sift.calculated_channels.v1.ErrorValidatingExpressionResultH\x00R\x05\x65rror\x12Z\n\x07success\x18\x02 \x01(\x0b\x32>.sift.calculated_channels.v1.SuccessValidatingExpressionResultH\x00R\x07successB\x08\n\x06result\"K\n\x1f\x45rrorValidatingExpressionResult\x12(\n\rerror_message\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x65rrorMessage\"k\n!SuccessValidatingExpressionResult\x12\x46\n\tdata_type\x18\x01 \x01(\x0e\x32$.sift.common.type.v1.ChannelDataTypeB\x03\xe0\x41\x02R\x08\x64\x61taType*\x9b\x01\n\x18\x45xpressionIdentifierType\x12.\n&EXPRESSION_IDENTIFIER_TYPE_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\'\n#EXPRESSION_IDENTIFIER_TYPE_FUNCTION\x10\x01\x12&\n\"EXPRESSION_IDENTIFIER_TYPE_CHANNEL\x10\x02*\xff\x02\n\x1b\x45xpressionIdentifierLibrary\x12-\n)EXPRESSION_IDENTIFIER_LIBRARY_UNSPECIFIED\x10\x00\x12&\n\"EXPRESSION_IDENTIFIER_LIBRARY_MATH\x10\x01\x12(\n$EXPRESSION_IDENTIFIER_LIBRARY_STRING\x10\x02\x12&\n\"EXPRESSION_IDENTIFIER_LIBRARY_LIST\x10\x03\x12&\n\"EXPRESSION_IDENTIFIER_LIBRARY_ITER\x10\x04\x12*\n&EXPRESSION_IDENTIFIER_LIBRARY_STATEFUL\x10\x05\x12)\n%EXPRESSION_IDENTIFIER_LIBRARY_SUMMARY\x10\x06\x12\x38\n4EXPRESSION_IDENTIFIER_LIBRARY_USER_DEFINED_FUNCTIONS\x10\x07*\xb9\x01\n\x0e\x45xpressionMode\x12#\n\x1b\x45XPRESSION_MODE_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\x19\n\x15\x45XPRESSION_MODE_RULES\x10\x01\x12\'\n#EXPRESSION_MODE_CALCULATED_CHANNELS\x10\x02\x12\x19\n\x15\x45XPRESSION_MODE_RULER\x10\x03\x12#\n\x1f\x45XPRESSION_MODE_STRUCTURED_DATA\x10\x04\x32\xf1\x06\n\x19\x43\x61lculatedChannelsService\x12\xd9\x02\n\x19ListExpressionIdentifiers\x12=.sift.calculated_channels.v1.ListExpressionIdentifiersRequest\x1a>.sift.calculated_channels.v1.ListExpressionIdentifiersResponse\"\xbc\x01\x92\x41\x7f\x12\x19ListExpressionIdentifiers\x1a\x62Retrieves a list of valid identifiers that can be used as part of a calculated channel expression.\x82\xd3\xe4\x93\x02\x34\x12\x32/api/v1/calculated-channels:expression-identifiers\x12\xb0\x02\n\x12ValidateExpression\x12\x36.sift.calculated_channels.v1.ValidateExpressionRequest\x1a\x37.sift.calculated_channels.v1.ValidateExpressionResponse\"\xa8\x01\x92\x41k\x12\x12ValidateExpression\x1aUUsed to validate whether or not an expression used for a calculated channel is valid.\x82\xd3\xe4\x93\x02\x34\"//api/v1/calculated-channels:validate-expression:\x01*\x1a\xc4\x01\x92\x41\xc0\x01\x12>Service to programmatically interact with calculated channels.\x1a~\n$Read more about calculated channels.\x12Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265421153B\xe6\x01\n\x1f\x63om.sift.calculated_channels.v1B\x17\x43\x61lculatedChannelsProtoP\x01\xa2\x02\x03SCX\xaa\x02\x1aSift.CalculatedChannels.V1\xca\x02\x1aSift\\CalculatedChannels\\V1\xe2\x02&Sift\\CalculatedChannels\\V1\\GPBMetadata\xea\x02\x1cSift::CalculatedChannels::V1\x92\x41\x1f\x12\x1d\n\x1b\x43\x61lculated Channels Serviceb\x06proto3')
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n5sift/calculated_channels/v1/calculated_channels.proto\x12\x1bsift.calculated_channels.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a+sift/common/type/v1/channel_data_type.proto\x1a\x30sift/common/type/v1/user_defined_functions.proto\"\xf3\x01\n\x1a\x45xpressionChannelReference\x12\x30\n\x11\x63hannel_reference\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x10\x63hannelReference\x12\"\n\nchannel_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\tchannelId\x12_\n\x12\x63\x61lculated_channel\x18\x04 \x01(\x0b\x32..sift.calculated_channels.v1.ExpressionRequestH\x00R\x11\x63\x61lculatedChannelB\x1e\n\x1c\x63\x61lculated_channel_reference\"\xd8\x03\n\x11\x45xpressionRequest\x12x\n\x12\x63hannel_references\x18\x01 \x03(\x0b\x32\x45.sift.calculated_channels.v1.ExpressionRequest.ChannelReferencesEntryB\x02\x18\x01R\x11\x63hannelReferences\x12#\n\nexpression\x18\x02 \x01(\tB\x03\xe0\x41\x02R\nexpression\x12{\n\x1d\x65xpression_channel_references\x18\x03 \x03(\x0b\x32\x37.sift.calculated_channels.v1.ExpressionChannelReferenceR\x1b\x65xpressionChannelReferences\x12\x61\n\x15\x66unction_dependencies\x18\x04 \x03(\x0b\x32\'.sift.common.type.v1.FunctionDependencyB\x03\xe0\x41\x01R\x14\x66unctionDependencies\x1a\x44\n\x16\x43hannelReferencesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xa4\x01\n ListExpressionIdentifiersRequest\x12\x1b\n\tpage_size\x18\x01 \x01(\rR\x08pageSize\x12\x1d\n\npage_token\x18\x02 \x01(\tR\tpageToken\x12\x44\n\x04mode\x18\x03 \x01(\x0e\x32+.sift.calculated_channels.v1.ExpressionModeB\x03\xe0\x41\x02R\x04mode\"\xc3\x01\n!ListExpressionIdentifiersResponse\x12X\n\x0bidentifiers\x18\x01 \x03(\x0b\x32\x31.sift.calculated_channels.v1.ExpressionIdentifierB\x03\xe0\x41\x02R\x0bidentifiers\x12\x30\n\x0fnext_page_token\x18\x02 \x01(\tB\x03\xe0\x41\x01H\x00R\rnextPageToken\x88\x01\x01\x42\x12\n\x10_next_page_token\"\xa7\x02\n\x14\x45xpressionIdentifier\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12N\n\x04type\x18\x03 \x01(\x0e\x32\x35.sift.calculated_channels.v1.ExpressionIdentifierTypeB\x03\xe0\x41\x02R\x04type\x12&\n\x0c\x64isplay_name\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x0b\x64isplayName\x12W\n\x07library\x18\x05 \x01(\x0e\x32\x38.sift.calculated_channels.v1.ExpressionIdentifierLibraryB\x03\xe0\x41\x02R\x07library\"\xb6\x01\n\x19ValidateExpressionRequest\x12S\n\nexpression\x18\x01 \x01(\x0b\x32..sift.calculated_channels.v1.ExpressionRequestB\x03\xe0\x41\x02R\nexpression\x12\x44\n\x04mode\x18\x02 \x01(\x0e\x32+.sift.calculated_channels.v1.ExpressionModeB\x03\xe0\x41\x02R\x04mode\"\xd8\x01\n\x1aValidateExpressionResponse\x12T\n\x05\x65rror\x18\x01 \x01(\x0b\x32<.sift.calculated_channels.v1.ErrorValidatingExpressionResultH\x00R\x05\x65rror\x12Z\n\x07success\x18\x02 \x01(\x0b\x32>.sift.calculated_channels.v1.SuccessValidatingExpressionResultH\x00R\x07successB\x08\n\x06result\"K\n\x1f\x45rrorValidatingExpressionResult\x12(\n\rerror_message\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x0c\x65rrorMessage\"k\n!SuccessValidatingExpressionResult\x12\x46\n\tdata_type\x18\x01 \x01(\x0e\x32$.sift.common.type.v1.ChannelDataTypeB\x03\xe0\x41\x02R\x08\x64\x61taType*\x9b\x01\n\x18\x45xpressionIdentifierType\x12.\n&EXPRESSION_IDENTIFIER_TYPE_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\'\n#EXPRESSION_IDENTIFIER_TYPE_FUNCTION\x10\x01\x12&\n\"EXPRESSION_IDENTIFIER_TYPE_CHANNEL\x10\x02*\xff\x02\n\x1b\x45xpressionIdentifierLibrary\x12-\n)EXPRESSION_IDENTIFIER_LIBRARY_UNSPECIFIED\x10\x00\x12&\n\"EXPRESSION_IDENTIFIER_LIBRARY_MATH\x10\x01\x12(\n$EXPRESSION_IDENTIFIER_LIBRARY_STRING\x10\x02\x12&\n\"EXPRESSION_IDENTIFIER_LIBRARY_LIST\x10\x03\x12&\n\"EXPRESSION_IDENTIFIER_LIBRARY_ITER\x10\x04\x12*\n&EXPRESSION_IDENTIFIER_LIBRARY_STATEFUL\x10\x05\x12)\n%EXPRESSION_IDENTIFIER_LIBRARY_SUMMARY\x10\x06\x12\x38\n4EXPRESSION_IDENTIFIER_LIBRARY_USER_DEFINED_FUNCTIONS\x10\x07*\xb9\x01\n\x0e\x45xpressionMode\x12#\n\x1b\x45XPRESSION_MODE_UNSPECIFIED\x10\x00\x1a\x02\x08\x01\x12\x19\n\x15\x45XPRESSION_MODE_RULES\x10\x01\x12\'\n#EXPRESSION_MODE_CALCULATED_CHANNELS\x10\x02\x12\x19\n\x15\x45XPRESSION_MODE_RULER\x10\x03\x12#\n\x1f\x45XPRESSION_MODE_STRUCTURED_DATA\x10\x04\x32\xf1\x06\n\x19\x43\x61lculatedChannelsService\x12\xd9\x02\n\x19ListExpressionIdentifiers\x12=.sift.calculated_channels.v1.ListExpressionIdentifiersRequest\x1a>.sift.calculated_channels.v1.ListExpressionIdentifiersResponse\"\xbc\x01\x92\x41\x7f\x12\x19ListExpressionIdentifiers\x1a\x62Retrieves a list of valid identifiers that can be used as part of a calculated channel expression.\x82\xd3\xe4\x93\x02\x34\x12\x32/api/v1/calculated-channels:expression-identifiers\x12\xb0\x02\n\x12ValidateExpression\x12\x36.sift.calculated_channels.v1.ValidateExpressionRequest\x1a\x37.sift.calculated_channels.v1.ValidateExpressionResponse\"\xa8\x01\x92\x41k\x12\x12ValidateExpression\x1aUUsed to validate whether or not an expression used for a calculated channel is valid.\x82\xd3\xe4\x93\x02\x34\"//api/v1/calculated-channels:validate-expression:\x01*\x1a\xc4\x01\x92\x41\xc0\x01\x12>Service to programmatically interact with calculated channels.\x1a~\n$Read more about calculated channels.\x12Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265421153B\xe6\x01\n\x1f\x63om.sift.calculated_channels.v1B\x17\x43\x61lculatedChannelsProtoP\x01\xa2\x02\x03SCX\xaa\x02\x1aSift.CalculatedChannels.V1\xca\x02\x1aSift\\CalculatedChannels\\V1\xe2\x02&Sift\\CalculatedChannels\\V1\\GPBMetadata\xea\x02\x1cSift::CalculatedChannels::V1\x92\x41\x1f\x12\x1d\n\x1b\x43\x61lculated Channels Serviceb\x06proto3')
23
23
 
24
24
  _globals = globals()
25
25
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -73,32 +73,32 @@ if not _descriptor._USE_C_DESCRIPTORS:
73
73
  _globals['_CALCULATEDCHANNELSSERVICE'].methods_by_name['ListExpressionIdentifiers']._serialized_options = b'\222A\177\022\031ListExpressionIdentifiers\032bRetrieves a list of valid identifiers that can be used as part of a calculated channel expression.\202\323\344\223\0024\0222/api/v1/calculated-channels:expression-identifiers'
74
74
  _globals['_CALCULATEDCHANNELSSERVICE'].methods_by_name['ValidateExpression']._loaded_options = None
75
75
  _globals['_CALCULATEDCHANNELSSERVICE'].methods_by_name['ValidateExpression']._serialized_options = b'\222Ak\022\022ValidateExpression\032UUsed to validate whether or not an expression used for a calculated channel is valid.\202\323\344\223\0024\"//api/v1/calculated-channels:validate-expression:\001*'
76
- _globals['_EXPRESSIONIDENTIFIERTYPE']._serialized_start=2137
77
- _globals['_EXPRESSIONIDENTIFIERTYPE']._serialized_end=2292
78
- _globals['_EXPRESSIONIDENTIFIERLIBRARY']._serialized_start=2295
79
- _globals['_EXPRESSIONIDENTIFIERLIBRARY']._serialized_end=2678
80
- _globals['_EXPRESSIONMODE']._serialized_start=2681
81
- _globals['_EXPRESSIONMODE']._serialized_end=2866
82
- _globals['_EXPRESSIONCHANNELREFERENCE']._serialized_start=292
83
- _globals['_EXPRESSIONCHANNELREFERENCE']._serialized_end=406
84
- _globals['_EXPRESSIONREQUEST']._serialized_start=409
85
- _globals['_EXPRESSIONREQUEST']._serialized_end=881
86
- _globals['_EXPRESSIONREQUEST_CHANNELREFERENCESENTRY']._serialized_start=813
87
- _globals['_EXPRESSIONREQUEST_CHANNELREFERENCESENTRY']._serialized_end=881
88
- _globals['_LISTEXPRESSIONIDENTIFIERSREQUEST']._serialized_start=884
89
- _globals['_LISTEXPRESSIONIDENTIFIERSREQUEST']._serialized_end=1048
90
- _globals['_LISTEXPRESSIONIDENTIFIERSRESPONSE']._serialized_start=1051
91
- _globals['_LISTEXPRESSIONIDENTIFIERSRESPONSE']._serialized_end=1246
92
- _globals['_EXPRESSIONIDENTIFIER']._serialized_start=1249
93
- _globals['_EXPRESSIONIDENTIFIER']._serialized_end=1544
94
- _globals['_VALIDATEEXPRESSIONREQUEST']._serialized_start=1547
95
- _globals['_VALIDATEEXPRESSIONREQUEST']._serialized_end=1729
96
- _globals['_VALIDATEEXPRESSIONRESPONSE']._serialized_start=1732
97
- _globals['_VALIDATEEXPRESSIONRESPONSE']._serialized_end=1948
98
- _globals['_ERRORVALIDATINGEXPRESSIONRESULT']._serialized_start=1950
99
- _globals['_ERRORVALIDATINGEXPRESSIONRESULT']._serialized_end=2025
100
- _globals['_SUCCESSVALIDATINGEXPRESSIONRESULT']._serialized_start=2027
101
- _globals['_SUCCESSVALIDATINGEXPRESSIONRESULT']._serialized_end=2134
102
- _globals['_CALCULATEDCHANNELSSERVICE']._serialized_start=2869
103
- _globals['_CALCULATEDCHANNELSSERVICE']._serialized_end=3750
76
+ _globals['_EXPRESSIONIDENTIFIERTYPE']._serialized_start=2267
77
+ _globals['_EXPRESSIONIDENTIFIERTYPE']._serialized_end=2422
78
+ _globals['_EXPRESSIONIDENTIFIERLIBRARY']._serialized_start=2425
79
+ _globals['_EXPRESSIONIDENTIFIERLIBRARY']._serialized_end=2808
80
+ _globals['_EXPRESSIONMODE']._serialized_start=2811
81
+ _globals['_EXPRESSIONMODE']._serialized_end=2996
82
+ _globals['_EXPRESSIONCHANNELREFERENCE']._serialized_start=293
83
+ _globals['_EXPRESSIONCHANNELREFERENCE']._serialized_end=536
84
+ _globals['_EXPRESSIONREQUEST']._serialized_start=539
85
+ _globals['_EXPRESSIONREQUEST']._serialized_end=1011
86
+ _globals['_EXPRESSIONREQUEST_CHANNELREFERENCESENTRY']._serialized_start=943
87
+ _globals['_EXPRESSIONREQUEST_CHANNELREFERENCESENTRY']._serialized_end=1011
88
+ _globals['_LISTEXPRESSIONIDENTIFIERSREQUEST']._serialized_start=1014
89
+ _globals['_LISTEXPRESSIONIDENTIFIERSREQUEST']._serialized_end=1178
90
+ _globals['_LISTEXPRESSIONIDENTIFIERSRESPONSE']._serialized_start=1181
91
+ _globals['_LISTEXPRESSIONIDENTIFIERSRESPONSE']._serialized_end=1376
92
+ _globals['_EXPRESSIONIDENTIFIER']._serialized_start=1379
93
+ _globals['_EXPRESSIONIDENTIFIER']._serialized_end=1674
94
+ _globals['_VALIDATEEXPRESSIONREQUEST']._serialized_start=1677
95
+ _globals['_VALIDATEEXPRESSIONREQUEST']._serialized_end=1859
96
+ _globals['_VALIDATEEXPRESSIONRESPONSE']._serialized_start=1862
97
+ _globals['_VALIDATEEXPRESSIONRESPONSE']._serialized_end=2078
98
+ _globals['_ERRORVALIDATINGEXPRESSIONRESULT']._serialized_start=2080
99
+ _globals['_ERRORVALIDATINGEXPRESSIONRESULT']._serialized_end=2155
100
+ _globals['_SUCCESSVALIDATINGEXPRESSIONRESULT']._serialized_start=2157
101
+ _globals['_SUCCESSVALIDATINGEXPRESSIONRESULT']._serialized_end=2264
102
+ _globals['_CALCULATEDCHANNELSSERVICE']._serialized_start=2999
103
+ _globals['_CALCULATEDCHANNELSSERVICE']._serialized_end=3880
104
104
  # @@protoc_insertion_point(module_scope)
@@ -88,19 +88,27 @@ global___ExpressionMode = ExpressionMode
88
88
 
89
89
  @typing.final
90
90
  class ExpressionChannelReference(google.protobuf.message.Message):
91
+ """Reference to a saved calculated channel with optional asset context."""
92
+
91
93
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
92
94
 
93
95
  CHANNEL_REFERENCE_FIELD_NUMBER: builtins.int
94
96
  CHANNEL_ID_FIELD_NUMBER: builtins.int
97
+ CALCULATED_CHANNEL_FIELD_NUMBER: builtins.int
95
98
  channel_reference: builtins.str
96
99
  channel_id: builtins.str
100
+ @property
101
+ def calculated_channel(self) -> global___ExpressionRequest: ...
97
102
  def __init__(
98
103
  self,
99
104
  *,
100
105
  channel_reference: builtins.str = ...,
101
106
  channel_id: builtins.str = ...,
107
+ calculated_channel: global___ExpressionRequest | None = ...,
102
108
  ) -> None: ...
103
- def ClearField(self, field_name: typing.Literal["channel_id", b"channel_id", "channel_reference", b"channel_reference"]) -> None: ...
109
+ def HasField(self, field_name: typing.Literal["calculated_channel", b"calculated_channel", "calculated_channel_reference", b"calculated_channel_reference"]) -> builtins.bool: ...
110
+ def ClearField(self, field_name: typing.Literal["calculated_channel", b"calculated_channel", "calculated_channel_reference", b"calculated_channel_reference", "channel_id", b"channel_id", "channel_reference", b"channel_reference"]) -> None: ...
111
+ def WhichOneof(self, oneof_group: typing.Literal["calculated_channel_reference", b"calculated_channel_reference"]) -> typing.Literal["calculated_channel"] | None: ...
104
112
 
105
113
  global___ExpressionChannelReference = ExpressionChannelReference
106
114