sift-stack-py 0.3.2__py3-none-any.whl

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 (291) hide show
  1. google/__init__.py +1 -0
  2. google/api/__init__.py +0 -0
  3. google/api/annotations_pb2.py +27 -0
  4. google/api/annotations_pb2.pyi +29 -0
  5. google/api/annotations_pb2_grpc.py +4 -0
  6. google/api/annotations_pb2_grpc.pyi +30 -0
  7. google/api/field_behavior_pb2.py +30 -0
  8. google/api/field_behavior_pb2.pyi +175 -0
  9. google/api/field_behavior_pb2_grpc.py +4 -0
  10. google/api/field_behavior_pb2_grpc.pyi +30 -0
  11. google/api/http_pb2.py +31 -0
  12. google/api/http_pb2.pyi +433 -0
  13. google/api/http_pb2_grpc.py +4 -0
  14. google/api/http_pb2_grpc.pyi +30 -0
  15. protoc_gen_openapiv2/__init__.py +0 -0
  16. protoc_gen_openapiv2/options/__init__.py +0 -0
  17. protoc_gen_openapiv2/options/annotations_pb2.py +27 -0
  18. protoc_gen_openapiv2/options/annotations_pb2.pyi +48 -0
  19. protoc_gen_openapiv2/options/annotations_pb2_grpc.py +4 -0
  20. protoc_gen_openapiv2/options/annotations_pb2_grpc.pyi +17 -0
  21. protoc_gen_openapiv2/options/openapiv2_pb2.py +132 -0
  22. protoc_gen_openapiv2/options/openapiv2_pb2.pyi +1533 -0
  23. protoc_gen_openapiv2/options/openapiv2_pb2_grpc.py +4 -0
  24. protoc_gen_openapiv2/options/openapiv2_pb2_grpc.pyi +17 -0
  25. sift/__init__.py +0 -0
  26. sift/annotation_logs/__init__.py +0 -0
  27. sift/annotation_logs/v1/__init__.py +0 -0
  28. sift/annotation_logs/v1/annotation_logs_pb2.py +115 -0
  29. sift/annotation_logs/v1/annotation_logs_pb2.pyi +370 -0
  30. sift/annotation_logs/v1/annotation_logs_pb2_grpc.py +135 -0
  31. sift/annotation_logs/v1/annotation_logs_pb2_grpc.pyi +84 -0
  32. sift/annotations/__init__.py +0 -0
  33. sift/annotations/v1/__init__.py +0 -0
  34. sift/annotations/v1/annotations_pb2.py +180 -0
  35. sift/annotations/v1/annotations_pb2.pyi +539 -0
  36. sift/annotations/v1/annotations_pb2_grpc.py +237 -0
  37. sift/annotations/v1/annotations_pb2_grpc.pyi +144 -0
  38. sift/assets/__init__.py +0 -0
  39. sift/assets/v1/__init__.py +0 -0
  40. sift/assets/v1/assets_pb2.py +90 -0
  41. sift/assets/v1/assets_pb2.pyi +235 -0
  42. sift/assets/v1/assets_pb2_grpc.py +168 -0
  43. sift/assets/v1/assets_pb2_grpc.pyi +101 -0
  44. sift/calculated_channels/__init__.py +0 -0
  45. sift/calculated_channels/v1/__init__.py +0 -0
  46. sift/calculated_channels/v1/calculated_channels_pb2.py +99 -0
  47. sift/calculated_channels/v1/calculated_channels_pb2.pyi +280 -0
  48. sift/calculated_channels/v1/calculated_channels_pb2_grpc.py +101 -0
  49. sift/calculated_channels/v1/calculated_channels_pb2_grpc.pyi +64 -0
  50. sift/campaigns/__init__.py +0 -0
  51. sift/campaigns/v1/__init__.py +0 -0
  52. sift/campaigns/v1/campaigns_pb2.py +144 -0
  53. sift/campaigns/v1/campaigns_pb2.pyi +383 -0
  54. sift/campaigns/v1/campaigns_pb2_grpc.py +169 -0
  55. sift/campaigns/v1/campaigns_pb2_grpc.pyi +104 -0
  56. sift/channel_schemas/__init__.py +0 -0
  57. sift/channel_schemas/v1/__init__.py +0 -0
  58. sift/channel_schemas/v1/channel_schemas_pb2.py +69 -0
  59. sift/channel_schemas/v1/channel_schemas_pb2.pyi +117 -0
  60. sift/channel_schemas/v1/channel_schemas_pb2_grpc.py +101 -0
  61. sift/channel_schemas/v1/channel_schemas_pb2_grpc.pyi +64 -0
  62. sift/channels/__init__.py +0 -0
  63. sift/channels/v2/__init__.py +0 -0
  64. sift/channels/v2/channels_pb2.py +88 -0
  65. sift/channels/v2/channels_pb2.pyi +183 -0
  66. sift/channels/v2/channels_pb2_grpc.py +101 -0
  67. sift/channels/v2/channels_pb2_grpc.pyi +64 -0
  68. sift/common/__init__.py +0 -0
  69. sift/common/type/__init__.py +0 -0
  70. sift/common/type/v1/__init__.py +0 -0
  71. sift/common/type/v1/channel_bit_field_element_pb2.py +34 -0
  72. sift/common/type/v1/channel_bit_field_element_pb2.pyi +33 -0
  73. sift/common/type/v1/channel_bit_field_element_pb2_grpc.py +4 -0
  74. sift/common/type/v1/channel_bit_field_element_pb2_grpc.pyi +17 -0
  75. sift/common/type/v1/channel_data_type_pb2.py +29 -0
  76. sift/common/type/v1/channel_data_type_pb2.pyi +50 -0
  77. sift/common/type/v1/channel_data_type_pb2_grpc.py +4 -0
  78. sift/common/type/v1/channel_data_type_pb2_grpc.pyi +17 -0
  79. sift/common/type/v1/channel_enum_type_pb2.py +32 -0
  80. sift/common/type/v1/channel_enum_type_pb2.pyi +29 -0
  81. sift/common/type/v1/channel_enum_type_pb2_grpc.py +4 -0
  82. sift/common/type/v1/channel_enum_type_pb2_grpc.pyi +17 -0
  83. sift/common/type/v1/organization_pb2.py +27 -0
  84. sift/common/type/v1/organization_pb2.pyi +29 -0
  85. sift/common/type/v1/organization_pb2_grpc.py +4 -0
  86. sift/common/type/v1/organization_pb2_grpc.pyi +17 -0
  87. sift/common/type/v1/resource_identifier_pb2.py +46 -0
  88. sift/common/type/v1/resource_identifier_pb2.pyi +145 -0
  89. sift/common/type/v1/resource_identifier_pb2_grpc.py +4 -0
  90. sift/common/type/v1/resource_identifier_pb2_grpc.pyi +17 -0
  91. sift/common/type/v1/user_pb2.py +33 -0
  92. sift/common/type/v1/user_pb2.pyi +36 -0
  93. sift/common/type/v1/user_pb2_grpc.py +4 -0
  94. sift/common/type/v1/user_pb2_grpc.pyi +17 -0
  95. sift/data/__init__.py +0 -0
  96. sift/data/v1/__init__.py +0 -0
  97. sift/data/v1/data_pb2.py +212 -0
  98. sift/data/v1/data_pb2.pyi +745 -0
  99. sift/data/v1/data_pb2_grpc.py +67 -0
  100. sift/data/v1/data_pb2_grpc.pyi +44 -0
  101. sift/ingest/__init__.py +0 -0
  102. sift/ingest/v1/__init__.py +0 -0
  103. sift/ingest/v1/ingest_pb2.py +35 -0
  104. sift/ingest/v1/ingest_pb2.pyi +118 -0
  105. sift/ingest/v1/ingest_pb2_grpc.py +66 -0
  106. sift/ingest/v1/ingest_pb2_grpc.pyi +41 -0
  107. sift/ingestion_configs/__init__.py +0 -0
  108. sift/ingestion_configs/v1/__init__.py +0 -0
  109. sift/ingestion_configs/v1/ingestion_configs_pb2.py +115 -0
  110. sift/ingestion_configs/v1/ingestion_configs_pb2.pyi +332 -0
  111. sift/ingestion_configs/v1/ingestion_configs_pb2_grpc.py +203 -0
  112. sift/ingestion_configs/v1/ingestion_configs_pb2_grpc.pyi +124 -0
  113. sift/notifications/__init__.py +0 -0
  114. sift/notifications/v1/__init__.py +0 -0
  115. sift/notifications/v1/notifications_pb2.py +64 -0
  116. sift/notifications/v1/notifications_pb2.pyi +225 -0
  117. sift/notifications/v1/notifications_pb2_grpc.py +101 -0
  118. sift/notifications/v1/notifications_pb2_grpc.pyi +64 -0
  119. sift/ping/__init__.py +0 -0
  120. sift/ping/v1/__init__.py +0 -0
  121. sift/ping/v1/ping_pb2.py +38 -0
  122. sift/ping/v1/ping_pb2.pyi +36 -0
  123. sift/ping/v1/ping_pb2_grpc.py +66 -0
  124. sift/ping/v1/ping_pb2_grpc.pyi +41 -0
  125. sift/remote_files/__init__.py +0 -0
  126. sift/remote_files/v1/__init__.py +0 -0
  127. sift/remote_files/v1/remote_files_pb2.py +174 -0
  128. sift/remote_files/v1/remote_files_pb2.pyi +472 -0
  129. sift/remote_files/v1/remote_files_pb2_grpc.py +271 -0
  130. sift/remote_files/v1/remote_files_pb2_grpc.pyi +164 -0
  131. sift/report_templates/__init__.py +0 -0
  132. sift/report_templates/v1/__init__.py +0 -0
  133. sift/report_templates/v1/report_templates_pb2.py +146 -0
  134. sift/report_templates/v1/report_templates_pb2.pyi +381 -0
  135. sift/report_templates/v1/report_templates_pb2_grpc.py +169 -0
  136. sift/report_templates/v1/report_templates_pb2_grpc.pyi +104 -0
  137. sift/reports/__init__.py +0 -0
  138. sift/reports/v1/__init__.py +0 -0
  139. sift/reports/v1/reports_pb2.py +193 -0
  140. sift/reports/v1/reports_pb2.pyi +562 -0
  141. sift/reports/v1/reports_pb2_grpc.py +205 -0
  142. sift/reports/v1/reports_pb2_grpc.pyi +136 -0
  143. sift/rule_evaluation/__init__.py +0 -0
  144. sift/rule_evaluation/v1/__init__.py +0 -0
  145. sift/rule_evaluation/v1/rule_evaluation_pb2.py +89 -0
  146. sift/rule_evaluation/v1/rule_evaluation_pb2.pyi +263 -0
  147. sift/rule_evaluation/v1/rule_evaluation_pb2_grpc.py +101 -0
  148. sift/rule_evaluation/v1/rule_evaluation_pb2_grpc.pyi +64 -0
  149. sift/rules/__init__.py +0 -0
  150. sift/rules/v1/__init__.py +0 -0
  151. sift/rules/v1/rules_pb2.py +420 -0
  152. sift/rules/v1/rules_pb2.pyi +1355 -0
  153. sift/rules/v1/rules_pb2_grpc.py +577 -0
  154. sift/rules/v1/rules_pb2_grpc.pyi +351 -0
  155. sift/runs/__init__.py +0 -0
  156. sift/runs/v2/__init__.py +0 -0
  157. sift/runs/v2/runs_pb2.py +150 -0
  158. sift/runs/v2/runs_pb2.pyi +413 -0
  159. sift/runs/v2/runs_pb2_grpc.py +271 -0
  160. sift/runs/v2/runs_pb2_grpc.pyi +164 -0
  161. sift/saved_searches/__init__.py +0 -0
  162. sift/saved_searches/v1/__init__.py +0 -0
  163. sift/saved_searches/v1/saved_searches_pb2.py +144 -0
  164. sift/saved_searches/v1/saved_searches_pb2.pyi +385 -0
  165. sift/saved_searches/v1/saved_searches_pb2_grpc.py +237 -0
  166. sift/saved_searches/v1/saved_searches_pb2_grpc.pyi +144 -0
  167. sift/tags/__init__.py +0 -0
  168. sift/tags/v1/__init__.py +0 -0
  169. sift/tags/v1/tags_pb2.py +49 -0
  170. sift/tags/v1/tags_pb2.pyi +71 -0
  171. sift/tags/v1/tags_pb2_grpc.py +4 -0
  172. sift/tags/v1/tags_pb2_grpc.pyi +17 -0
  173. sift/users/__init__.py +0 -0
  174. sift/users/v2/__init__.py +0 -0
  175. sift/users/v2/users_pb2.py +61 -0
  176. sift/users/v2/users_pb2.pyi +142 -0
  177. sift/users/v2/users_pb2_grpc.py +135 -0
  178. sift/users/v2/users_pb2_grpc.pyi +84 -0
  179. sift/views/__init__.py +0 -0
  180. sift/views/v1/__init__.py +0 -0
  181. sift/views/v1/views_pb2.py +130 -0
  182. sift/views/v1/views_pb2.pyi +466 -0
  183. sift/views/v1/views_pb2_grpc.py +305 -0
  184. sift/views/v1/views_pb2_grpc.pyi +184 -0
  185. sift_grafana/py.typed +0 -0
  186. sift_grafana/sift_query_model.py +64 -0
  187. sift_py/__init__.py +923 -0
  188. sift_py/_internal/__init__.py +5 -0
  189. sift_py/_internal/cel.py +18 -0
  190. sift_py/_internal/channel.py +42 -0
  191. sift_py/_internal/convert/__init__.py +3 -0
  192. sift_py/_internal/convert/json.py +24 -0
  193. sift_py/_internal/convert/protobuf.py +34 -0
  194. sift_py/_internal/convert/timestamp.py +9 -0
  195. sift_py/_internal/test_util/__init__.py +0 -0
  196. sift_py/_internal/test_util/channel.py +136 -0
  197. sift_py/_internal/test_util/fn.py +14 -0
  198. sift_py/_internal/test_util/server_interceptor.py +62 -0
  199. sift_py/_internal/time.py +48 -0
  200. sift_py/_internal/user.py +39 -0
  201. sift_py/data/__init__.py +171 -0
  202. sift_py/data/_channel.py +38 -0
  203. sift_py/data/_deserialize.py +208 -0
  204. sift_py/data/_deserialize_test.py +134 -0
  205. sift_py/data/_service_test.py +276 -0
  206. sift_py/data/_validate.py +10 -0
  207. sift_py/data/error.py +5 -0
  208. sift_py/data/query.py +299 -0
  209. sift_py/data/service.py +497 -0
  210. sift_py/data_import/__init__.py +130 -0
  211. sift_py/data_import/_config.py +167 -0
  212. sift_py/data_import/_config_test.py +166 -0
  213. sift_py/data_import/_csv_test.py +395 -0
  214. sift_py/data_import/_status_test.py +176 -0
  215. sift_py/data_import/_tdms_test.py +238 -0
  216. sift_py/data_import/ch10.py +157 -0
  217. sift_py/data_import/config.py +19 -0
  218. sift_py/data_import/csv.py +259 -0
  219. sift_py/data_import/status.py +113 -0
  220. sift_py/data_import/tdms.py +206 -0
  221. sift_py/data_import/tempfile.py +30 -0
  222. sift_py/data_import/time_format.py +39 -0
  223. sift_py/error.py +11 -0
  224. sift_py/file_attachment/__init__.py +88 -0
  225. sift_py/file_attachment/_internal/__init__.py +0 -0
  226. sift_py/file_attachment/_internal/download.py +13 -0
  227. sift_py/file_attachment/_internal/upload.py +100 -0
  228. sift_py/file_attachment/_service_test.py +161 -0
  229. sift_py/file_attachment/entity.py +30 -0
  230. sift_py/file_attachment/metadata.py +107 -0
  231. sift_py/file_attachment/service.py +142 -0
  232. sift_py/grpc/__init__.py +15 -0
  233. sift_py/grpc/_async_interceptors/__init__.py +0 -0
  234. sift_py/grpc/_async_interceptors/base.py +72 -0
  235. sift_py/grpc/_async_interceptors/metadata.py +36 -0
  236. sift_py/grpc/_interceptors/__init__.py +0 -0
  237. sift_py/grpc/_interceptors/base.py +61 -0
  238. sift_py/grpc/_interceptors/context.py +25 -0
  239. sift_py/grpc/_interceptors/metadata.py +33 -0
  240. sift_py/grpc/_retry.py +70 -0
  241. sift_py/grpc/keepalive.py +34 -0
  242. sift_py/grpc/transport.py +250 -0
  243. sift_py/grpc/transport_test.py +170 -0
  244. sift_py/ingestion/__init__.py +6 -0
  245. sift_py/ingestion/_internal/__init__.py +6 -0
  246. sift_py/ingestion/_internal/channel.py +12 -0
  247. sift_py/ingestion/_internal/error.py +10 -0
  248. sift_py/ingestion/_internal/ingest.py +350 -0
  249. sift_py/ingestion/_internal/ingest_test.py +357 -0
  250. sift_py/ingestion/_internal/ingestion_config.py +130 -0
  251. sift_py/ingestion/_internal/run.py +46 -0
  252. sift_py/ingestion/_service_test.py +478 -0
  253. sift_py/ingestion/buffer.py +189 -0
  254. sift_py/ingestion/channel.py +422 -0
  255. sift_py/ingestion/config/__init__.py +3 -0
  256. sift_py/ingestion/config/telemetry.py +281 -0
  257. sift_py/ingestion/config/telemetry_test.py +405 -0
  258. sift_py/ingestion/config/yaml/__init__.py +0 -0
  259. sift_py/ingestion/config/yaml/error.py +44 -0
  260. sift_py/ingestion/config/yaml/load.py +126 -0
  261. sift_py/ingestion/config/yaml/spec.py +58 -0
  262. sift_py/ingestion/config/yaml/test_load.py +25 -0
  263. sift_py/ingestion/flow.py +73 -0
  264. sift_py/ingestion/manager.py +99 -0
  265. sift_py/ingestion/rule/__init__.py +4 -0
  266. sift_py/ingestion/rule/config.py +11 -0
  267. sift_py/ingestion/service.py +237 -0
  268. sift_py/py.typed +0 -0
  269. sift_py/report_templates/__init__.py +0 -0
  270. sift_py/report_templates/_config_test.py +34 -0
  271. sift_py/report_templates/_service_test.py +94 -0
  272. sift_py/report_templates/config.py +36 -0
  273. sift_py/report_templates/service.py +171 -0
  274. sift_py/rest.py +29 -0
  275. sift_py/rule/__init__.py +0 -0
  276. sift_py/rule/_config_test.py +109 -0
  277. sift_py/rule/_service_test.py +168 -0
  278. sift_py/rule/config.py +229 -0
  279. sift_py/rule/service.py +484 -0
  280. sift_py/yaml/__init__.py +0 -0
  281. sift_py/yaml/_channel_test.py +169 -0
  282. sift_py/yaml/_rule_test.py +207 -0
  283. sift_py/yaml/channel.py +224 -0
  284. sift_py/yaml/report_templates.py +73 -0
  285. sift_py/yaml/rule.py +321 -0
  286. sift_py/yaml/utils.py +15 -0
  287. sift_stack_py-0.3.2.dist-info/LICENSE +7 -0
  288. sift_stack_py-0.3.2.dist-info/METADATA +109 -0
  289. sift_stack_py-0.3.2.dist-info/RECORD +291 -0
  290. sift_stack_py-0.3.2.dist-info/WHEEL +5 -0
  291. sift_stack_py-0.3.2.dist-info/top_level.txt +5 -0
@@ -0,0 +1,351 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ INTERNAL NOTES FOR MAINTAINERS:
5
+ This protobuf package serves proxying layer for underlying services which still depend on
6
+ protobufs from the `azimuth.rules.v1` package. Any updates to this file need to be ported
7
+ in copy-paste fashion to `azimuth.rules.v1`.
8
+
9
+ Also, be sure to update the following Go package to convert between the new and legacy types.:
10
+ - azimuth.services.repo.rule.v1.pbmapper
11
+ """
12
+
13
+ import abc
14
+ import collections.abc
15
+ import grpc
16
+ import grpc.aio
17
+ import sift.rules.v1.rules_pb2
18
+ import typing
19
+
20
+ _T = typing.TypeVar("_T")
21
+
22
+ class _MaybeAsyncIterator(collections.abc.AsyncIterator[_T], collections.abc.Iterator[_T], metaclass=abc.ABCMeta): ...
23
+
24
+ class _ServicerContext(grpc.ServicerContext, grpc.aio.ServicerContext): # type: ignore[misc, type-arg]
25
+ ...
26
+
27
+ class RuleServiceStub:
28
+ def __init__(self, channel: typing.Union[grpc.Channel, grpc.aio.Channel]) -> None: ...
29
+ SearchRules: grpc.UnaryUnaryMultiCallable[
30
+ sift.rules.v1.rules_pb2.SearchRulesRequest,
31
+ sift.rules.v1.rules_pb2.SearchRulesResponse,
32
+ ]
33
+ """Queries rules based on provided search parameters."""
34
+
35
+ GetRule: grpc.UnaryUnaryMultiCallable[
36
+ sift.rules.v1.rules_pb2.GetRuleRequest,
37
+ sift.rules.v1.rules_pb2.GetRuleResponse,
38
+ ]
39
+ """Retrieves the latest version of a rule."""
40
+
41
+ BatchGetRules: grpc.UnaryUnaryMultiCallable[
42
+ sift.rules.v1.rules_pb2.BatchGetRulesRequest,
43
+ sift.rules.v1.rules_pb2.BatchGetRulesResponse,
44
+ ]
45
+ """Retrieve multiple rules."""
46
+
47
+ CreateRule: grpc.UnaryUnaryMultiCallable[
48
+ sift.rules.v1.rules_pb2.CreateRuleRequest,
49
+ sift.rules.v1.rules_pb2.CreateRuleResponse,
50
+ ]
51
+ """Creates a rule."""
52
+
53
+ UpdateRule: grpc.UnaryUnaryMultiCallable[
54
+ sift.rules.v1.rules_pb2.UpdateRuleRequest,
55
+ sift.rules.v1.rules_pb2.UpdateRuleResponse,
56
+ ]
57
+ """Updates an existing rule."""
58
+
59
+ BatchUpdateRules: grpc.UnaryUnaryMultiCallable[
60
+ sift.rules.v1.rules_pb2.BatchUpdateRulesRequest,
61
+ sift.rules.v1.rules_pb2.BatchUpdateRulesResponse,
62
+ ]
63
+ """Updates existing rules or creates rules that do not exist."""
64
+
65
+ DeleteRule: grpc.UnaryUnaryMultiCallable[
66
+ sift.rules.v1.rules_pb2.DeleteRuleRequest,
67
+ sift.rules.v1.rules_pb2.DeleteRuleResponse,
68
+ ]
69
+ """Deletes a rule"""
70
+
71
+ EvaluateRules: grpc.UnaryUnaryMultiCallable[
72
+ sift.rules.v1.rules_pb2.EvaluateRulesRequest,
73
+ sift.rules.v1.rules_pb2.EvaluateRulesResponse,
74
+ ]
75
+ """Deprecated - use RuleEvaluationService instead."""
76
+
77
+ ViewHumanFriendlyRules: grpc.UnaryUnaryMultiCallable[
78
+ sift.rules.v1.rules_pb2.ViewHumanFriendlyRulesRequest,
79
+ sift.rules.v1.rules_pb2.ViewHumanFriendlyRulesResponse,
80
+ ]
81
+ """Deprecated - use ViewJsonRules instead. Retrieve a JSON object containing all of the rules for a given asset."""
82
+
83
+ ViewJsonRules: grpc.UnaryUnaryMultiCallable[
84
+ sift.rules.v1.rules_pb2.ViewJsonRulesRequest,
85
+ sift.rules.v1.rules_pb2.ViewJsonRulesResponse,
86
+ ]
87
+ """Retrieve a JSON object containing all of the rules for a given asset."""
88
+
89
+ UpdateHumanFriendlyRules: grpc.UnaryUnaryMultiCallable[
90
+ sift.rules.v1.rules_pb2.UpdateHumanFriendlyRulesRequest,
91
+ sift.rules.v1.rules_pb2.UpdateHumanFriendlyRulesResponse,
92
+ ]
93
+ """Deprecated - use UpdateJsonRules instead. Batch update rules given the `rules_json` which is a JSON list of rules."""
94
+
95
+ ValidateJsonRules: grpc.UnaryUnaryMultiCallable[
96
+ sift.rules.v1.rules_pb2.ValidateJsonRulesRequest,
97
+ sift.rules.v1.rules_pb2.ValidateJsonRulesResponse,
98
+ ]
99
+ """Validate a batch update for rules given the `rules_json` which is a JSON list of rules. This is a dry-run operation."""
100
+
101
+ UpdateJsonRules: grpc.UnaryUnaryMultiCallable[
102
+ sift.rules.v1.rules_pb2.UpdateJsonRulesRequest,
103
+ sift.rules.v1.rules_pb2.UpdateJsonRulesResponse,
104
+ ]
105
+ """Batch update rules given the `rules_json` which is a JSON list of rules."""
106
+
107
+ ListRuleVersions: grpc.UnaryUnaryMultiCallable[
108
+ sift.rules.v1.rules_pb2.ListRuleVersionsRequest,
109
+ sift.rules.v1.rules_pb2.ListRuleVersionsResponse,
110
+ ]
111
+ """Retrieves a list of rule versions for the given rule."""
112
+
113
+ GetRuleVersion: grpc.UnaryUnaryMultiCallable[
114
+ sift.rules.v1.rules_pb2.GetRuleVersionRequest,
115
+ sift.rules.v1.rules_pb2.GetRuleVersionResponse,
116
+ ]
117
+ """Retrieves a specific version of a rule."""
118
+
119
+ BatchGetRuleVersions: grpc.UnaryUnaryMultiCallable[
120
+ sift.rules.v1.rules_pb2.BatchGetRuleVersionsRequest,
121
+ sift.rules.v1.rules_pb2.BatchGetRuleVersionsResponse,
122
+ ]
123
+ """Retrieves multiple rules by rule versions."""
124
+
125
+ class RuleServiceAsyncStub:
126
+ SearchRules: grpc.aio.UnaryUnaryMultiCallable[
127
+ sift.rules.v1.rules_pb2.SearchRulesRequest,
128
+ sift.rules.v1.rules_pb2.SearchRulesResponse,
129
+ ]
130
+ """Queries rules based on provided search parameters."""
131
+
132
+ GetRule: grpc.aio.UnaryUnaryMultiCallable[
133
+ sift.rules.v1.rules_pb2.GetRuleRequest,
134
+ sift.rules.v1.rules_pb2.GetRuleResponse,
135
+ ]
136
+ """Retrieves the latest version of a rule."""
137
+
138
+ BatchGetRules: grpc.aio.UnaryUnaryMultiCallable[
139
+ sift.rules.v1.rules_pb2.BatchGetRulesRequest,
140
+ sift.rules.v1.rules_pb2.BatchGetRulesResponse,
141
+ ]
142
+ """Retrieve multiple rules."""
143
+
144
+ CreateRule: grpc.aio.UnaryUnaryMultiCallable[
145
+ sift.rules.v1.rules_pb2.CreateRuleRequest,
146
+ sift.rules.v1.rules_pb2.CreateRuleResponse,
147
+ ]
148
+ """Creates a rule."""
149
+
150
+ UpdateRule: grpc.aio.UnaryUnaryMultiCallable[
151
+ sift.rules.v1.rules_pb2.UpdateRuleRequest,
152
+ sift.rules.v1.rules_pb2.UpdateRuleResponse,
153
+ ]
154
+ """Updates an existing rule."""
155
+
156
+ BatchUpdateRules: grpc.aio.UnaryUnaryMultiCallable[
157
+ sift.rules.v1.rules_pb2.BatchUpdateRulesRequest,
158
+ sift.rules.v1.rules_pb2.BatchUpdateRulesResponse,
159
+ ]
160
+ """Updates existing rules or creates rules that do not exist."""
161
+
162
+ DeleteRule: grpc.aio.UnaryUnaryMultiCallable[
163
+ sift.rules.v1.rules_pb2.DeleteRuleRequest,
164
+ sift.rules.v1.rules_pb2.DeleteRuleResponse,
165
+ ]
166
+ """Deletes a rule"""
167
+
168
+ EvaluateRules: grpc.aio.UnaryUnaryMultiCallable[
169
+ sift.rules.v1.rules_pb2.EvaluateRulesRequest,
170
+ sift.rules.v1.rules_pb2.EvaluateRulesResponse,
171
+ ]
172
+ """Deprecated - use RuleEvaluationService instead."""
173
+
174
+ ViewHumanFriendlyRules: grpc.aio.UnaryUnaryMultiCallable[
175
+ sift.rules.v1.rules_pb2.ViewHumanFriendlyRulesRequest,
176
+ sift.rules.v1.rules_pb2.ViewHumanFriendlyRulesResponse,
177
+ ]
178
+ """Deprecated - use ViewJsonRules instead. Retrieve a JSON object containing all of the rules for a given asset."""
179
+
180
+ ViewJsonRules: grpc.aio.UnaryUnaryMultiCallable[
181
+ sift.rules.v1.rules_pb2.ViewJsonRulesRequest,
182
+ sift.rules.v1.rules_pb2.ViewJsonRulesResponse,
183
+ ]
184
+ """Retrieve a JSON object containing all of the rules for a given asset."""
185
+
186
+ UpdateHumanFriendlyRules: grpc.aio.UnaryUnaryMultiCallable[
187
+ sift.rules.v1.rules_pb2.UpdateHumanFriendlyRulesRequest,
188
+ sift.rules.v1.rules_pb2.UpdateHumanFriendlyRulesResponse,
189
+ ]
190
+ """Deprecated - use UpdateJsonRules instead. Batch update rules given the `rules_json` which is a JSON list of rules."""
191
+
192
+ ValidateJsonRules: grpc.aio.UnaryUnaryMultiCallable[
193
+ sift.rules.v1.rules_pb2.ValidateJsonRulesRequest,
194
+ sift.rules.v1.rules_pb2.ValidateJsonRulesResponse,
195
+ ]
196
+ """Validate a batch update for rules given the `rules_json` which is a JSON list of rules. This is a dry-run operation."""
197
+
198
+ UpdateJsonRules: grpc.aio.UnaryUnaryMultiCallable[
199
+ sift.rules.v1.rules_pb2.UpdateJsonRulesRequest,
200
+ sift.rules.v1.rules_pb2.UpdateJsonRulesResponse,
201
+ ]
202
+ """Batch update rules given the `rules_json` which is a JSON list of rules."""
203
+
204
+ ListRuleVersions: grpc.aio.UnaryUnaryMultiCallable[
205
+ sift.rules.v1.rules_pb2.ListRuleVersionsRequest,
206
+ sift.rules.v1.rules_pb2.ListRuleVersionsResponse,
207
+ ]
208
+ """Retrieves a list of rule versions for the given rule."""
209
+
210
+ GetRuleVersion: grpc.aio.UnaryUnaryMultiCallable[
211
+ sift.rules.v1.rules_pb2.GetRuleVersionRequest,
212
+ sift.rules.v1.rules_pb2.GetRuleVersionResponse,
213
+ ]
214
+ """Retrieves a specific version of a rule."""
215
+
216
+ BatchGetRuleVersions: grpc.aio.UnaryUnaryMultiCallable[
217
+ sift.rules.v1.rules_pb2.BatchGetRuleVersionsRequest,
218
+ sift.rules.v1.rules_pb2.BatchGetRuleVersionsResponse,
219
+ ]
220
+ """Retrieves multiple rules by rule versions."""
221
+
222
+ class RuleServiceServicer(metaclass=abc.ABCMeta):
223
+ @abc.abstractmethod
224
+ def SearchRules(
225
+ self,
226
+ request: sift.rules.v1.rules_pb2.SearchRulesRequest,
227
+ context: _ServicerContext,
228
+ ) -> typing.Union[sift.rules.v1.rules_pb2.SearchRulesResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.SearchRulesResponse]]:
229
+ """Queries rules based on provided search parameters."""
230
+
231
+ @abc.abstractmethod
232
+ def GetRule(
233
+ self,
234
+ request: sift.rules.v1.rules_pb2.GetRuleRequest,
235
+ context: _ServicerContext,
236
+ ) -> typing.Union[sift.rules.v1.rules_pb2.GetRuleResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.GetRuleResponse]]:
237
+ """Retrieves the latest version of a rule."""
238
+
239
+ @abc.abstractmethod
240
+ def BatchGetRules(
241
+ self,
242
+ request: sift.rules.v1.rules_pb2.BatchGetRulesRequest,
243
+ context: _ServicerContext,
244
+ ) -> typing.Union[sift.rules.v1.rules_pb2.BatchGetRulesResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.BatchGetRulesResponse]]:
245
+ """Retrieve multiple rules."""
246
+
247
+ @abc.abstractmethod
248
+ def CreateRule(
249
+ self,
250
+ request: sift.rules.v1.rules_pb2.CreateRuleRequest,
251
+ context: _ServicerContext,
252
+ ) -> typing.Union[sift.rules.v1.rules_pb2.CreateRuleResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.CreateRuleResponse]]:
253
+ """Creates a rule."""
254
+
255
+ @abc.abstractmethod
256
+ def UpdateRule(
257
+ self,
258
+ request: sift.rules.v1.rules_pb2.UpdateRuleRequest,
259
+ context: _ServicerContext,
260
+ ) -> typing.Union[sift.rules.v1.rules_pb2.UpdateRuleResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.UpdateRuleResponse]]:
261
+ """Updates an existing rule."""
262
+
263
+ @abc.abstractmethod
264
+ def BatchUpdateRules(
265
+ self,
266
+ request: sift.rules.v1.rules_pb2.BatchUpdateRulesRequest,
267
+ context: _ServicerContext,
268
+ ) -> typing.Union[sift.rules.v1.rules_pb2.BatchUpdateRulesResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.BatchUpdateRulesResponse]]:
269
+ """Updates existing rules or creates rules that do not exist."""
270
+
271
+ @abc.abstractmethod
272
+ def DeleteRule(
273
+ self,
274
+ request: sift.rules.v1.rules_pb2.DeleteRuleRequest,
275
+ context: _ServicerContext,
276
+ ) -> typing.Union[sift.rules.v1.rules_pb2.DeleteRuleResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.DeleteRuleResponse]]:
277
+ """Deletes a rule"""
278
+
279
+ @abc.abstractmethod
280
+ def EvaluateRules(
281
+ self,
282
+ request: sift.rules.v1.rules_pb2.EvaluateRulesRequest,
283
+ context: _ServicerContext,
284
+ ) -> typing.Union[sift.rules.v1.rules_pb2.EvaluateRulesResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.EvaluateRulesResponse]]:
285
+ """Deprecated - use RuleEvaluationService instead."""
286
+
287
+ @abc.abstractmethod
288
+ def ViewHumanFriendlyRules(
289
+ self,
290
+ request: sift.rules.v1.rules_pb2.ViewHumanFriendlyRulesRequest,
291
+ context: _ServicerContext,
292
+ ) -> typing.Union[sift.rules.v1.rules_pb2.ViewHumanFriendlyRulesResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.ViewHumanFriendlyRulesResponse]]:
293
+ """Deprecated - use ViewJsonRules instead. Retrieve a JSON object containing all of the rules for a given asset."""
294
+
295
+ @abc.abstractmethod
296
+ def ViewJsonRules(
297
+ self,
298
+ request: sift.rules.v1.rules_pb2.ViewJsonRulesRequest,
299
+ context: _ServicerContext,
300
+ ) -> typing.Union[sift.rules.v1.rules_pb2.ViewJsonRulesResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.ViewJsonRulesResponse]]:
301
+ """Retrieve a JSON object containing all of the rules for a given asset."""
302
+
303
+ @abc.abstractmethod
304
+ def UpdateHumanFriendlyRules(
305
+ self,
306
+ request: sift.rules.v1.rules_pb2.UpdateHumanFriendlyRulesRequest,
307
+ context: _ServicerContext,
308
+ ) -> typing.Union[sift.rules.v1.rules_pb2.UpdateHumanFriendlyRulesResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.UpdateHumanFriendlyRulesResponse]]:
309
+ """Deprecated - use UpdateJsonRules instead. Batch update rules given the `rules_json` which is a JSON list of rules."""
310
+
311
+ @abc.abstractmethod
312
+ def ValidateJsonRules(
313
+ self,
314
+ request: sift.rules.v1.rules_pb2.ValidateJsonRulesRequest,
315
+ context: _ServicerContext,
316
+ ) -> typing.Union[sift.rules.v1.rules_pb2.ValidateJsonRulesResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.ValidateJsonRulesResponse]]:
317
+ """Validate a batch update for rules given the `rules_json` which is a JSON list of rules. This is a dry-run operation."""
318
+
319
+ @abc.abstractmethod
320
+ def UpdateJsonRules(
321
+ self,
322
+ request: sift.rules.v1.rules_pb2.UpdateJsonRulesRequest,
323
+ context: _ServicerContext,
324
+ ) -> typing.Union[sift.rules.v1.rules_pb2.UpdateJsonRulesResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.UpdateJsonRulesResponse]]:
325
+ """Batch update rules given the `rules_json` which is a JSON list of rules."""
326
+
327
+ @abc.abstractmethod
328
+ def ListRuleVersions(
329
+ self,
330
+ request: sift.rules.v1.rules_pb2.ListRuleVersionsRequest,
331
+ context: _ServicerContext,
332
+ ) -> typing.Union[sift.rules.v1.rules_pb2.ListRuleVersionsResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.ListRuleVersionsResponse]]:
333
+ """Retrieves a list of rule versions for the given rule."""
334
+
335
+ @abc.abstractmethod
336
+ def GetRuleVersion(
337
+ self,
338
+ request: sift.rules.v1.rules_pb2.GetRuleVersionRequest,
339
+ context: _ServicerContext,
340
+ ) -> typing.Union[sift.rules.v1.rules_pb2.GetRuleVersionResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.GetRuleVersionResponse]]:
341
+ """Retrieves a specific version of a rule."""
342
+
343
+ @abc.abstractmethod
344
+ def BatchGetRuleVersions(
345
+ self,
346
+ request: sift.rules.v1.rules_pb2.BatchGetRuleVersionsRequest,
347
+ context: _ServicerContext,
348
+ ) -> typing.Union[sift.rules.v1.rules_pb2.BatchGetRuleVersionsResponse, collections.abc.Awaitable[sift.rules.v1.rules_pb2.BatchGetRuleVersionsResponse]]:
349
+ """Retrieves multiple rules by rule versions."""
350
+
351
+ def add_RuleServiceServicer_to_server(servicer: RuleServiceServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ...
sift/runs/__init__.py ADDED
File without changes
File without changes
@@ -0,0 +1,150 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: sift/runs/v2/runs.proto
4
+ # Protobuf Python Version: 5.26.1
5
+ """Generated protocol buffer code."""
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ from google.protobuf.internal import builder as _builder
10
+ # @@protoc_insertion_point(imports)
11
+
12
+ _sym_db = _symbol_database.Default()
13
+
14
+
15
+ from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
16
+ from google.api import field_behavior_pb2 as google_dot_api_dot_field__behavior__pb2
17
+ from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2
18
+ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
19
+ from protoc_gen_openapiv2.options import annotations_pb2 as protoc__gen__openapiv2_dot_options_dot_annotations__pb2
20
+
21
+
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17sift/runs/v2/runs.proto\x12\x0csift.runs.v2\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\"\xc8\x05\n\x03Run\x12\x1a\n\x06run_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x05runId\x12\x42\n\x0c\x63reated_date\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12\x30\n\x12\x63reated_by_user_id\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\x05 \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\x12,\n\x0forganization_id\x18\x06 \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId\x12\x43\n\nstart_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01H\x00R\tstartTime\x88\x01\x01\x12\x41\n\tstop_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01H\x01R\x08stopTime\x88\x01\x01\x12 \n\tis_pinned\x18\t \x01(\x08\x42\x03\xe0\x41\x02R\x08isPinned\x12\x17\n\x04name\x18\n \x01(\tB\x03\xe0\x41\x02R\x04name\x12%\n\x0b\x64\x65scription\x18\x0b \x01(\tB\x03\xe0\x41\x02R\x0b\x64\x65scription\x12\x17\n\x04tags\x18\x0c \x03(\tB\x03\xe0\x41\x02R\x04tags\x12/\n\x11\x64\x65\x66\x61ult_report_id\x18\r \x01(\tB\x03\xe0\x41\x01R\x0f\x64\x65\x66\x61ultReportId\x12\'\n\nclient_key\x18\x0e \x01(\tB\x03\xe0\x41\x01H\x02R\tclientKey\x88\x01\x01\x42\r\n\x0b_start_timeB\x0c\n\n_stop_timeB\r\n\x0b_client_key\"+\n\rGetRunRequest\x12\x1a\n\x06run_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x05runId\":\n\x0eGetRunResponse\x12(\n\x03run\x18\x01 \x01(\x0b\x32\x11.sift.runs.v2.RunB\x03\xe0\x41\x02R\x03run\"\x94\x01\n\x0fListRunsRequest\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\"f\n\x10ListRunsResponse\x12*\n\x04runs\x18\x01 \x03(\x0b\x32\x11.sift.runs.v2.RunB\x03\xe0\x41\x02R\x04runs\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xcf\x02\n\x10\x43reateRunRequest\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\x12\x17\n\x04tags\x18\x03 \x03(\tB\x03\xe0\x41\x01R\x04tags\x12>\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01R\tstartTime\x12<\n\tstop_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01R\x08stopTime\x12,\n\x0forganization_id\x18\x07 \x01(\tB\x03\xe0\x41\x01R\x0eorganizationId\x12\'\n\nclient_key\x18\x08 \x01(\tB\x03\xe0\x41\x01H\x00R\tclientKey\x88\x01\x01\x42\r\n\x0b_client_key\"=\n\x11\x43reateRunResponse\x12(\n\x03run\x18\x01 \x01(\x0b\x32\x11.sift.runs.v2.RunB\x03\xe0\x41\x02R\x03run\"~\n\x10UpdateRunRequest\x12(\n\x03run\x18\x01 \x01(\x0b\x32\x11.sift.runs.v2.RunB\x03\xe0\x41\x02R\x03run\x12@\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02R\nupdateMask\"=\n\x11UpdateRunResponse\x12(\n\x03run\x18\x01 \x01(\x0b\x32\x11.sift.runs.v2.RunB\x03\xe0\x41\x02R\x03run\"q\n-CreateAutomaticRunAssociationForAssetsRequest\x12\x1a\n\x06run_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x05runId\x12$\n\x0b\x61sset_names\x18\x02 \x03(\tB\x03\xe0\x41\x02R\nassetNames\"0\n.CreateAutomaticRunAssociationForAssetsResponse\".\n\x10\x44\x65leteRunRequest\x12\x1a\n\x06run_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x05runId\"\x13\n\x11\x44\x65leteRunResponse\",\n\x0eStopRunRequest\x12\x1a\n\x06run_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x05runId\"\x11\n\x0fStopRunResponse2\xcd\x0c\n\nRunService\x12~\n\x06GetRun\x12\x1b.sift.runs.v2.GetRunRequest\x1a\x1c.sift.runs.v2.GetRunResponse\"9\x92\x41\x19\x12\x06GetRun\x1a\x0fRetrieve a run.\x82\xd3\xe4\x93\x02\x17\x12\x15/api/v2/runs/{run_id}\x12\x95\x01\n\x08ListRuns\x12\x1d.sift.runs.v2.ListRunsRequest\x1a\x1e.sift.runs.v2.ListRunsResponse\"J\x92\x41\x33\x12\x08ListRuns\x1a\'Retrieve runs using an optional filter.\x82\xd3\xe4\x93\x02\x0e\x12\x0c/api/v2/runs\x12\x82\x01\n\tCreateRun\x12\x1e.sift.runs.v2.CreateRunRequest\x1a\x1f.sift.runs.v2.CreateRunResponse\"4\x92\x41\x1a\x12\tCreateRun\x1a\rCreate a run.\x82\xd3\xe4\x93\x02\x11\"\x0c/api/v2/runs:\x01*\x12\xc7\x01\n\tUpdateRun\x12\x1e.sift.runs.v2.UpdateRunRequest\x1a\x1f.sift.runs.v2.UpdateRunResponse\"y\x92\x41_\x12\tUpdateRun\x1aRUpdates an existing run using using the list of fields specified in `update_mask`.\x82\xd3\xe4\x93\x02\x11\x32\x0c/api/v2/runs:\x01*\x12\xdc\x01\n\tDeleteRun\x12\x1e.sift.runs.v2.DeleteRunRequest\x1a\x1f.sift.runs.v2.DeleteRunResponse\"\x8d\x01\x92\x41m\x12\tDeleteRun\x1a`Permanently delete a given run. In order for a run to be deleted it must have a set `stop_time`.\x82\xd3\xe4\x93\x02\x17*\x15/api/v2/runs/{run_id}\x12\xe6\x01\n\x07StopRun\x12\x1c.sift.runs.v2.StopRunRequest\x1a\x1d.sift.runs.v2.StopRunResponse\"\x9d\x01\x92\x41~\x12\x07StopRun\x1asSet the stop time of a run to the current time. To set the stop time of a run to an arbitrary time see `UpdateRun`.\x82\xd3\xe4\x93\x02\x16\x32\x11/api/v2/runs:stop:\x01*\x12\xcc\x02\n&CreateAutomaticRunAssociationForAssets\x12;.sift.runs.v2.CreateAutomaticRunAssociationForAssetsRequest\x1a<.sift.runs.v2.CreateAutomaticRunAssociationForAssetsResponse\"\xa6\x01\x92\x41W\x12&CreateAutomaticRunAssociationForAssets\x1a-Associates a list of assets with a given run.\x82\xd3\xe4\x93\x02\x46\"A/api/v2/runs/{run_id}:create-automatic-run-association-for-assets:\x01*\x1a\xc0\x01\x92\x41\xbc\x01\x12@Service to programmatically interact with [runs](/glossary#run).\x1ax\n\x1eRead more about what runs are.\x12Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265454053B\x81\x01\n\x10\x63om.sift.runs.v2B\tRunsProtoP\x01\xa2\x02\x03SRX\xaa\x02\x0cSift.Runs.V2\xca\x02\x0cSift\\Runs\\V2\xe2\x02\x18Sift\\Runs\\V2\\GPBMetadata\xea\x02\x0eSift::Runs::V2\x92\x41\x0f\x12\r\n\x0bRun serviceb\x06proto3')
23
+
24
+ _globals = globals()
25
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
26
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'sift.runs.v2.runs_pb2', _globals)
27
+ if not _descriptor._USE_C_DESCRIPTORS:
28
+ _globals['DESCRIPTOR']._loaded_options = None
29
+ _globals['DESCRIPTOR']._serialized_options = b'\n\020com.sift.runs.v2B\tRunsProtoP\001\242\002\003SRX\252\002\014Sift.Runs.V2\312\002\014Sift\\Runs\\V2\342\002\030Sift\\Runs\\V2\\GPBMetadata\352\002\016Sift::Runs::V2\222A\017\022\r\n\013Run service'
30
+ _globals['_RUN'].fields_by_name['run_id']._loaded_options = None
31
+ _globals['_RUN'].fields_by_name['run_id']._serialized_options = b'\340A\002'
32
+ _globals['_RUN'].fields_by_name['created_date']._loaded_options = None
33
+ _globals['_RUN'].fields_by_name['created_date']._serialized_options = b'\340A\002'
34
+ _globals['_RUN'].fields_by_name['modified_date']._loaded_options = None
35
+ _globals['_RUN'].fields_by_name['modified_date']._serialized_options = b'\340A\002'
36
+ _globals['_RUN'].fields_by_name['created_by_user_id']._loaded_options = None
37
+ _globals['_RUN'].fields_by_name['created_by_user_id']._serialized_options = b'\340A\002'
38
+ _globals['_RUN'].fields_by_name['modified_by_user_id']._loaded_options = None
39
+ _globals['_RUN'].fields_by_name['modified_by_user_id']._serialized_options = b'\340A\002'
40
+ _globals['_RUN'].fields_by_name['organization_id']._loaded_options = None
41
+ _globals['_RUN'].fields_by_name['organization_id']._serialized_options = b'\340A\002'
42
+ _globals['_RUN'].fields_by_name['start_time']._loaded_options = None
43
+ _globals['_RUN'].fields_by_name['start_time']._serialized_options = b'\340A\001'
44
+ _globals['_RUN'].fields_by_name['stop_time']._loaded_options = None
45
+ _globals['_RUN'].fields_by_name['stop_time']._serialized_options = b'\340A\001'
46
+ _globals['_RUN'].fields_by_name['is_pinned']._loaded_options = None
47
+ _globals['_RUN'].fields_by_name['is_pinned']._serialized_options = b'\340A\002'
48
+ _globals['_RUN'].fields_by_name['name']._loaded_options = None
49
+ _globals['_RUN'].fields_by_name['name']._serialized_options = b'\340A\002'
50
+ _globals['_RUN'].fields_by_name['description']._loaded_options = None
51
+ _globals['_RUN'].fields_by_name['description']._serialized_options = b'\340A\002'
52
+ _globals['_RUN'].fields_by_name['tags']._loaded_options = None
53
+ _globals['_RUN'].fields_by_name['tags']._serialized_options = b'\340A\002'
54
+ _globals['_RUN'].fields_by_name['default_report_id']._loaded_options = None
55
+ _globals['_RUN'].fields_by_name['default_report_id']._serialized_options = b'\340A\001'
56
+ _globals['_RUN'].fields_by_name['client_key']._loaded_options = None
57
+ _globals['_RUN'].fields_by_name['client_key']._serialized_options = b'\340A\001'
58
+ _globals['_GETRUNREQUEST'].fields_by_name['run_id']._loaded_options = None
59
+ _globals['_GETRUNREQUEST'].fields_by_name['run_id']._serialized_options = b'\340A\002'
60
+ _globals['_GETRUNRESPONSE'].fields_by_name['run']._loaded_options = None
61
+ _globals['_GETRUNRESPONSE'].fields_by_name['run']._serialized_options = b'\340A\002'
62
+ _globals['_LISTRUNSREQUEST'].fields_by_name['page_size']._loaded_options = None
63
+ _globals['_LISTRUNSREQUEST'].fields_by_name['page_size']._serialized_options = b'\340A\001'
64
+ _globals['_LISTRUNSREQUEST'].fields_by_name['page_token']._loaded_options = None
65
+ _globals['_LISTRUNSREQUEST'].fields_by_name['page_token']._serialized_options = b'\340A\001'
66
+ _globals['_LISTRUNSREQUEST'].fields_by_name['filter']._loaded_options = None
67
+ _globals['_LISTRUNSREQUEST'].fields_by_name['filter']._serialized_options = b'\340A\001'
68
+ _globals['_LISTRUNSREQUEST'].fields_by_name['order_by']._loaded_options = None
69
+ _globals['_LISTRUNSREQUEST'].fields_by_name['order_by']._serialized_options = b'\340A\001'
70
+ _globals['_LISTRUNSRESPONSE'].fields_by_name['runs']._loaded_options = None
71
+ _globals['_LISTRUNSRESPONSE'].fields_by_name['runs']._serialized_options = b'\340A\002'
72
+ _globals['_CREATERUNREQUEST'].fields_by_name['name']._loaded_options = None
73
+ _globals['_CREATERUNREQUEST'].fields_by_name['name']._serialized_options = b'\340A\002'
74
+ _globals['_CREATERUNREQUEST'].fields_by_name['description']._loaded_options = None
75
+ _globals['_CREATERUNREQUEST'].fields_by_name['description']._serialized_options = b'\340A\002'
76
+ _globals['_CREATERUNREQUEST'].fields_by_name['tags']._loaded_options = None
77
+ _globals['_CREATERUNREQUEST'].fields_by_name['tags']._serialized_options = b'\340A\001'
78
+ _globals['_CREATERUNREQUEST'].fields_by_name['start_time']._loaded_options = None
79
+ _globals['_CREATERUNREQUEST'].fields_by_name['start_time']._serialized_options = b'\340A\001'
80
+ _globals['_CREATERUNREQUEST'].fields_by_name['stop_time']._loaded_options = None
81
+ _globals['_CREATERUNREQUEST'].fields_by_name['stop_time']._serialized_options = b'\340A\001'
82
+ _globals['_CREATERUNREQUEST'].fields_by_name['organization_id']._loaded_options = None
83
+ _globals['_CREATERUNREQUEST'].fields_by_name['organization_id']._serialized_options = b'\340A\001'
84
+ _globals['_CREATERUNREQUEST'].fields_by_name['client_key']._loaded_options = None
85
+ _globals['_CREATERUNREQUEST'].fields_by_name['client_key']._serialized_options = b'\340A\001'
86
+ _globals['_CREATERUNRESPONSE'].fields_by_name['run']._loaded_options = None
87
+ _globals['_CREATERUNRESPONSE'].fields_by_name['run']._serialized_options = b'\340A\002'
88
+ _globals['_UPDATERUNREQUEST'].fields_by_name['run']._loaded_options = None
89
+ _globals['_UPDATERUNREQUEST'].fields_by_name['run']._serialized_options = b'\340A\002'
90
+ _globals['_UPDATERUNREQUEST'].fields_by_name['update_mask']._loaded_options = None
91
+ _globals['_UPDATERUNREQUEST'].fields_by_name['update_mask']._serialized_options = b'\340A\002'
92
+ _globals['_UPDATERUNRESPONSE'].fields_by_name['run']._loaded_options = None
93
+ _globals['_UPDATERUNRESPONSE'].fields_by_name['run']._serialized_options = b'\340A\002'
94
+ _globals['_CREATEAUTOMATICRUNASSOCIATIONFORASSETSREQUEST'].fields_by_name['run_id']._loaded_options = None
95
+ _globals['_CREATEAUTOMATICRUNASSOCIATIONFORASSETSREQUEST'].fields_by_name['run_id']._serialized_options = b'\340A\002'
96
+ _globals['_CREATEAUTOMATICRUNASSOCIATIONFORASSETSREQUEST'].fields_by_name['asset_names']._loaded_options = None
97
+ _globals['_CREATEAUTOMATICRUNASSOCIATIONFORASSETSREQUEST'].fields_by_name['asset_names']._serialized_options = b'\340A\002'
98
+ _globals['_DELETERUNREQUEST'].fields_by_name['run_id']._loaded_options = None
99
+ _globals['_DELETERUNREQUEST'].fields_by_name['run_id']._serialized_options = b'\340A\002'
100
+ _globals['_STOPRUNREQUEST'].fields_by_name['run_id']._loaded_options = None
101
+ _globals['_STOPRUNREQUEST'].fields_by_name['run_id']._serialized_options = b'\340A\002'
102
+ _globals['_RUNSERVICE']._loaded_options = None
103
+ _globals['_RUNSERVICE']._serialized_options = b'\222A\274\001\022@Service to programmatically interact with [runs](/glossary#run).\032x\n\036Read more about what runs are.\022Vhttps://customer.support.siftstack.com/servicedesk/customer/portal/2/article/265454053'
104
+ _globals['_RUNSERVICE'].methods_by_name['GetRun']._loaded_options = None
105
+ _globals['_RUNSERVICE'].methods_by_name['GetRun']._serialized_options = b'\222A\031\022\006GetRun\032\017Retrieve a run.\202\323\344\223\002\027\022\025/api/v2/runs/{run_id}'
106
+ _globals['_RUNSERVICE'].methods_by_name['ListRuns']._loaded_options = None
107
+ _globals['_RUNSERVICE'].methods_by_name['ListRuns']._serialized_options = b'\222A3\022\010ListRuns\032\'Retrieve runs using an optional filter.\202\323\344\223\002\016\022\014/api/v2/runs'
108
+ _globals['_RUNSERVICE'].methods_by_name['CreateRun']._loaded_options = None
109
+ _globals['_RUNSERVICE'].methods_by_name['CreateRun']._serialized_options = b'\222A\032\022\tCreateRun\032\rCreate a run.\202\323\344\223\002\021\"\014/api/v2/runs:\001*'
110
+ _globals['_RUNSERVICE'].methods_by_name['UpdateRun']._loaded_options = None
111
+ _globals['_RUNSERVICE'].methods_by_name['UpdateRun']._serialized_options = b'\222A_\022\tUpdateRun\032RUpdates an existing run using using the list of fields specified in `update_mask`.\202\323\344\223\002\0212\014/api/v2/runs:\001*'
112
+ _globals['_RUNSERVICE'].methods_by_name['DeleteRun']._loaded_options = None
113
+ _globals['_RUNSERVICE'].methods_by_name['DeleteRun']._serialized_options = b'\222Am\022\tDeleteRun\032`Permanently delete a given run. In order for a run to be deleted it must have a set `stop_time`.\202\323\344\223\002\027*\025/api/v2/runs/{run_id}'
114
+ _globals['_RUNSERVICE'].methods_by_name['StopRun']._loaded_options = None
115
+ _globals['_RUNSERVICE'].methods_by_name['StopRun']._serialized_options = b'\222A~\022\007StopRun\032sSet the stop time of a run to the current time. To set the stop time of a run to an arbitrary time see `UpdateRun`.\202\323\344\223\002\0262\021/api/v2/runs:stop:\001*'
116
+ _globals['_RUNSERVICE'].methods_by_name['CreateAutomaticRunAssociationForAssets']._loaded_options = None
117
+ _globals['_RUNSERVICE'].methods_by_name['CreateAutomaticRunAssociationForAssets']._serialized_options = b'\222AW\022&CreateAutomaticRunAssociationForAssets\032-Associates a list of assets with a given run.\202\323\344\223\002F\"A/api/v2/runs/{run_id}:create-automatic-run-association-for-assets:\001*'
118
+ _globals['_RUN']._serialized_start=220
119
+ _globals['_RUN']._serialized_end=932
120
+ _globals['_GETRUNREQUEST']._serialized_start=934
121
+ _globals['_GETRUNREQUEST']._serialized_end=977
122
+ _globals['_GETRUNRESPONSE']._serialized_start=979
123
+ _globals['_GETRUNRESPONSE']._serialized_end=1037
124
+ _globals['_LISTRUNSREQUEST']._serialized_start=1040
125
+ _globals['_LISTRUNSREQUEST']._serialized_end=1188
126
+ _globals['_LISTRUNSRESPONSE']._serialized_start=1190
127
+ _globals['_LISTRUNSRESPONSE']._serialized_end=1292
128
+ _globals['_CREATERUNREQUEST']._serialized_start=1295
129
+ _globals['_CREATERUNREQUEST']._serialized_end=1630
130
+ _globals['_CREATERUNRESPONSE']._serialized_start=1632
131
+ _globals['_CREATERUNRESPONSE']._serialized_end=1693
132
+ _globals['_UPDATERUNREQUEST']._serialized_start=1695
133
+ _globals['_UPDATERUNREQUEST']._serialized_end=1821
134
+ _globals['_UPDATERUNRESPONSE']._serialized_start=1823
135
+ _globals['_UPDATERUNRESPONSE']._serialized_end=1884
136
+ _globals['_CREATEAUTOMATICRUNASSOCIATIONFORASSETSREQUEST']._serialized_start=1886
137
+ _globals['_CREATEAUTOMATICRUNASSOCIATIONFORASSETSREQUEST']._serialized_end=1999
138
+ _globals['_CREATEAUTOMATICRUNASSOCIATIONFORASSETSRESPONSE']._serialized_start=2001
139
+ _globals['_CREATEAUTOMATICRUNASSOCIATIONFORASSETSRESPONSE']._serialized_end=2049
140
+ _globals['_DELETERUNREQUEST']._serialized_start=2051
141
+ _globals['_DELETERUNREQUEST']._serialized_end=2097
142
+ _globals['_DELETERUNRESPONSE']._serialized_start=2099
143
+ _globals['_DELETERUNRESPONSE']._serialized_end=2118
144
+ _globals['_STOPRUNREQUEST']._serialized_start=2120
145
+ _globals['_STOPRUNREQUEST']._serialized_end=2164
146
+ _globals['_STOPRUNRESPONSE']._serialized_start=2166
147
+ _globals['_STOPRUNRESPONSE']._serialized_end=2183
148
+ _globals['_RUNSERVICE']._serialized_start=2186
149
+ _globals['_RUNSERVICE']._serialized_end=3799
150
+ # @@protoc_insertion_point(module_scope)