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,271 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
5
+ from sift.remote_files.v1 import remote_files_pb2 as sift_dot_remote__files_dot_v1_dot_remote__files__pb2
6
+
7
+
8
+ class RemoteFileServiceStub(object):
9
+ """Missing associated documentation comment in .proto file."""
10
+
11
+ def __init__(self, channel):
12
+ """Constructor.
13
+
14
+ Args:
15
+ channel: A grpc.Channel.
16
+ """
17
+ self.GetRemoteFile = channel.unary_unary(
18
+ '/sift.remote_files.v1.RemoteFileService/GetRemoteFile',
19
+ request_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileRequest.SerializeToString,
20
+ response_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileResponse.FromString,
21
+ )
22
+ self.CreateRemoteFile = channel.unary_unary(
23
+ '/sift.remote_files.v1.RemoteFileService/CreateRemoteFile',
24
+ request_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.CreateRemoteFileRequest.SerializeToString,
25
+ response_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.CreateRemoteFileResponse.FromString,
26
+ )
27
+ self.ListRemoteFiles = channel.unary_unary(
28
+ '/sift.remote_files.v1.RemoteFileService/ListRemoteFiles',
29
+ request_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.ListRemoteFilesRequest.SerializeToString,
30
+ response_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.ListRemoteFilesResponse.FromString,
31
+ )
32
+ self.UpdateRemoteFile = channel.unary_unary(
33
+ '/sift.remote_files.v1.RemoteFileService/UpdateRemoteFile',
34
+ request_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.UpdateRemoteFileRequest.SerializeToString,
35
+ response_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.UpdateRemoteFileResponse.FromString,
36
+ )
37
+ self.DeleteRemoteFile = channel.unary_unary(
38
+ '/sift.remote_files.v1.RemoteFileService/DeleteRemoteFile',
39
+ request_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.DeleteRemoteFileRequest.SerializeToString,
40
+ response_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.DeleteRemoteFileResponse.FromString,
41
+ )
42
+ self.BatchDeleteRemoteFiles = channel.unary_unary(
43
+ '/sift.remote_files.v1.RemoteFileService/BatchDeleteRemoteFiles',
44
+ request_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.BatchDeleteRemoteFilesRequest.SerializeToString,
45
+ response_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.BatchDeleteRemoteFilesResponse.FromString,
46
+ )
47
+ self.GetRemoteFileDownloadUrl = channel.unary_unary(
48
+ '/sift.remote_files.v1.RemoteFileService/GetRemoteFileDownloadUrl',
49
+ request_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileDownloadUrlRequest.SerializeToString,
50
+ response_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileDownloadUrlResponse.FromString,
51
+ )
52
+
53
+
54
+ class RemoteFileServiceServicer(object):
55
+ """Missing associated documentation comment in .proto file."""
56
+
57
+ def GetRemoteFile(self, request, context):
58
+ """Retrieve a remote file.
59
+ """
60
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
61
+ context.set_details('Method not implemented!')
62
+ raise NotImplementedError('Method not implemented!')
63
+
64
+ def CreateRemoteFile(self, request, context):
65
+ """Create a remote file.
66
+ """
67
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
68
+ context.set_details('Method not implemented!')
69
+ raise NotImplementedError('Method not implemented!')
70
+
71
+ def ListRemoteFiles(self, request, context):
72
+ """List remote files.
73
+ """
74
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
75
+ context.set_details('Method not implemented!')
76
+ raise NotImplementedError('Method not implemented!')
77
+
78
+ def UpdateRemoteFile(self, request, context):
79
+ """Updates an existing remote file using using the list of fields specified in `update_mask`.
80
+ """
81
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
82
+ context.set_details('Method not implemented!')
83
+ raise NotImplementedError('Method not implemented!')
84
+
85
+ def DeleteRemoteFile(self, request, context):
86
+ """Delete a remote file.
87
+ """
88
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
89
+ context.set_details('Method not implemented!')
90
+ raise NotImplementedError('Method not implemented!')
91
+
92
+ def BatchDeleteRemoteFiles(self, request, context):
93
+ """Batch deletes remote files. Each batch is limited to 1000 records.
94
+ """
95
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
96
+ context.set_details('Method not implemented!')
97
+ raise NotImplementedError('Method not implemented!')
98
+
99
+ def GetRemoteFileDownloadUrl(self, request, context):
100
+ """Gets a download URL for the remote file.
101
+ """
102
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
103
+ context.set_details('Method not implemented!')
104
+ raise NotImplementedError('Method not implemented!')
105
+
106
+
107
+ def add_RemoteFileServiceServicer_to_server(servicer, server):
108
+ rpc_method_handlers = {
109
+ 'GetRemoteFile': grpc.unary_unary_rpc_method_handler(
110
+ servicer.GetRemoteFile,
111
+ request_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileRequest.FromString,
112
+ response_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileResponse.SerializeToString,
113
+ ),
114
+ 'CreateRemoteFile': grpc.unary_unary_rpc_method_handler(
115
+ servicer.CreateRemoteFile,
116
+ request_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.CreateRemoteFileRequest.FromString,
117
+ response_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.CreateRemoteFileResponse.SerializeToString,
118
+ ),
119
+ 'ListRemoteFiles': grpc.unary_unary_rpc_method_handler(
120
+ servicer.ListRemoteFiles,
121
+ request_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.ListRemoteFilesRequest.FromString,
122
+ response_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.ListRemoteFilesResponse.SerializeToString,
123
+ ),
124
+ 'UpdateRemoteFile': grpc.unary_unary_rpc_method_handler(
125
+ servicer.UpdateRemoteFile,
126
+ request_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.UpdateRemoteFileRequest.FromString,
127
+ response_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.UpdateRemoteFileResponse.SerializeToString,
128
+ ),
129
+ 'DeleteRemoteFile': grpc.unary_unary_rpc_method_handler(
130
+ servicer.DeleteRemoteFile,
131
+ request_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.DeleteRemoteFileRequest.FromString,
132
+ response_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.DeleteRemoteFileResponse.SerializeToString,
133
+ ),
134
+ 'BatchDeleteRemoteFiles': grpc.unary_unary_rpc_method_handler(
135
+ servicer.BatchDeleteRemoteFiles,
136
+ request_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.BatchDeleteRemoteFilesRequest.FromString,
137
+ response_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.BatchDeleteRemoteFilesResponse.SerializeToString,
138
+ ),
139
+ 'GetRemoteFileDownloadUrl': grpc.unary_unary_rpc_method_handler(
140
+ servicer.GetRemoteFileDownloadUrl,
141
+ request_deserializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileDownloadUrlRequest.FromString,
142
+ response_serializer=sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileDownloadUrlResponse.SerializeToString,
143
+ ),
144
+ }
145
+ generic_handler = grpc.method_handlers_generic_handler(
146
+ 'sift.remote_files.v1.RemoteFileService', rpc_method_handlers)
147
+ server.add_generic_rpc_handlers((generic_handler,))
148
+
149
+
150
+ # This class is part of an EXPERIMENTAL API.
151
+ class RemoteFileService(object):
152
+ """Missing associated documentation comment in .proto file."""
153
+
154
+ @staticmethod
155
+ def GetRemoteFile(request,
156
+ target,
157
+ options=(),
158
+ channel_credentials=None,
159
+ call_credentials=None,
160
+ insecure=False,
161
+ compression=None,
162
+ wait_for_ready=None,
163
+ timeout=None,
164
+ metadata=None):
165
+ return grpc.experimental.unary_unary(request, target, '/sift.remote_files.v1.RemoteFileService/GetRemoteFile',
166
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileRequest.SerializeToString,
167
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileResponse.FromString,
168
+ options, channel_credentials,
169
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
170
+
171
+ @staticmethod
172
+ def CreateRemoteFile(request,
173
+ target,
174
+ options=(),
175
+ channel_credentials=None,
176
+ call_credentials=None,
177
+ insecure=False,
178
+ compression=None,
179
+ wait_for_ready=None,
180
+ timeout=None,
181
+ metadata=None):
182
+ return grpc.experimental.unary_unary(request, target, '/sift.remote_files.v1.RemoteFileService/CreateRemoteFile',
183
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.CreateRemoteFileRequest.SerializeToString,
184
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.CreateRemoteFileResponse.FromString,
185
+ options, channel_credentials,
186
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
187
+
188
+ @staticmethod
189
+ def ListRemoteFiles(request,
190
+ target,
191
+ options=(),
192
+ channel_credentials=None,
193
+ call_credentials=None,
194
+ insecure=False,
195
+ compression=None,
196
+ wait_for_ready=None,
197
+ timeout=None,
198
+ metadata=None):
199
+ return grpc.experimental.unary_unary(request, target, '/sift.remote_files.v1.RemoteFileService/ListRemoteFiles',
200
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.ListRemoteFilesRequest.SerializeToString,
201
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.ListRemoteFilesResponse.FromString,
202
+ options, channel_credentials,
203
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
204
+
205
+ @staticmethod
206
+ def UpdateRemoteFile(request,
207
+ target,
208
+ options=(),
209
+ channel_credentials=None,
210
+ call_credentials=None,
211
+ insecure=False,
212
+ compression=None,
213
+ wait_for_ready=None,
214
+ timeout=None,
215
+ metadata=None):
216
+ return grpc.experimental.unary_unary(request, target, '/sift.remote_files.v1.RemoteFileService/UpdateRemoteFile',
217
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.UpdateRemoteFileRequest.SerializeToString,
218
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.UpdateRemoteFileResponse.FromString,
219
+ options, channel_credentials,
220
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
221
+
222
+ @staticmethod
223
+ def DeleteRemoteFile(request,
224
+ target,
225
+ options=(),
226
+ channel_credentials=None,
227
+ call_credentials=None,
228
+ insecure=False,
229
+ compression=None,
230
+ wait_for_ready=None,
231
+ timeout=None,
232
+ metadata=None):
233
+ return grpc.experimental.unary_unary(request, target, '/sift.remote_files.v1.RemoteFileService/DeleteRemoteFile',
234
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.DeleteRemoteFileRequest.SerializeToString,
235
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.DeleteRemoteFileResponse.FromString,
236
+ options, channel_credentials,
237
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
238
+
239
+ @staticmethod
240
+ def BatchDeleteRemoteFiles(request,
241
+ target,
242
+ options=(),
243
+ channel_credentials=None,
244
+ call_credentials=None,
245
+ insecure=False,
246
+ compression=None,
247
+ wait_for_ready=None,
248
+ timeout=None,
249
+ metadata=None):
250
+ return grpc.experimental.unary_unary(request, target, '/sift.remote_files.v1.RemoteFileService/BatchDeleteRemoteFiles',
251
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.BatchDeleteRemoteFilesRequest.SerializeToString,
252
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.BatchDeleteRemoteFilesResponse.FromString,
253
+ options, channel_credentials,
254
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
255
+
256
+ @staticmethod
257
+ def GetRemoteFileDownloadUrl(request,
258
+ target,
259
+ options=(),
260
+ channel_credentials=None,
261
+ call_credentials=None,
262
+ insecure=False,
263
+ compression=None,
264
+ wait_for_ready=None,
265
+ timeout=None,
266
+ metadata=None):
267
+ return grpc.experimental.unary_unary(request, target, '/sift.remote_files.v1.RemoteFileService/GetRemoteFileDownloadUrl',
268
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileDownloadUrlRequest.SerializeToString,
269
+ sift_dot_remote__files_dot_v1_dot_remote__files__pb2.GetRemoteFileDownloadUrlResponse.FromString,
270
+ options, channel_credentials,
271
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -0,0 +1,164 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+
6
+ import abc
7
+ import collections.abc
8
+ import grpc
9
+ import grpc.aio
10
+ import sift.remote_files.v1.remote_files_pb2
11
+ import typing
12
+
13
+ _T = typing.TypeVar("_T")
14
+
15
+ class _MaybeAsyncIterator(collections.abc.AsyncIterator[_T], collections.abc.Iterator[_T], metaclass=abc.ABCMeta): ...
16
+
17
+ class _ServicerContext(grpc.ServicerContext, grpc.aio.ServicerContext): # type: ignore[misc, type-arg]
18
+ ...
19
+
20
+ class RemoteFileServiceStub:
21
+ def __init__(self, channel: typing.Union[grpc.Channel, grpc.aio.Channel]) -> None: ...
22
+ GetRemoteFile: grpc.UnaryUnaryMultiCallable[
23
+ sift.remote_files.v1.remote_files_pb2.GetRemoteFileRequest,
24
+ sift.remote_files.v1.remote_files_pb2.GetRemoteFileResponse,
25
+ ]
26
+ """Retrieve a remote file."""
27
+
28
+ CreateRemoteFile: grpc.UnaryUnaryMultiCallable[
29
+ sift.remote_files.v1.remote_files_pb2.CreateRemoteFileRequest,
30
+ sift.remote_files.v1.remote_files_pb2.CreateRemoteFileResponse,
31
+ ]
32
+ """Create a remote file."""
33
+
34
+ ListRemoteFiles: grpc.UnaryUnaryMultiCallable[
35
+ sift.remote_files.v1.remote_files_pb2.ListRemoteFilesRequest,
36
+ sift.remote_files.v1.remote_files_pb2.ListRemoteFilesResponse,
37
+ ]
38
+ """List remote files."""
39
+
40
+ UpdateRemoteFile: grpc.UnaryUnaryMultiCallable[
41
+ sift.remote_files.v1.remote_files_pb2.UpdateRemoteFileRequest,
42
+ sift.remote_files.v1.remote_files_pb2.UpdateRemoteFileResponse,
43
+ ]
44
+ """Updates an existing remote file using using the list of fields specified in `update_mask`."""
45
+
46
+ DeleteRemoteFile: grpc.UnaryUnaryMultiCallable[
47
+ sift.remote_files.v1.remote_files_pb2.DeleteRemoteFileRequest,
48
+ sift.remote_files.v1.remote_files_pb2.DeleteRemoteFileResponse,
49
+ ]
50
+ """Delete a remote file."""
51
+
52
+ BatchDeleteRemoteFiles: grpc.UnaryUnaryMultiCallable[
53
+ sift.remote_files.v1.remote_files_pb2.BatchDeleteRemoteFilesRequest,
54
+ sift.remote_files.v1.remote_files_pb2.BatchDeleteRemoteFilesResponse,
55
+ ]
56
+ """Batch deletes remote files. Each batch is limited to 1000 records."""
57
+
58
+ GetRemoteFileDownloadUrl: grpc.UnaryUnaryMultiCallable[
59
+ sift.remote_files.v1.remote_files_pb2.GetRemoteFileDownloadUrlRequest,
60
+ sift.remote_files.v1.remote_files_pb2.GetRemoteFileDownloadUrlResponse,
61
+ ]
62
+ """Gets a download URL for the remote file."""
63
+
64
+ class RemoteFileServiceAsyncStub:
65
+ GetRemoteFile: grpc.aio.UnaryUnaryMultiCallable[
66
+ sift.remote_files.v1.remote_files_pb2.GetRemoteFileRequest,
67
+ sift.remote_files.v1.remote_files_pb2.GetRemoteFileResponse,
68
+ ]
69
+ """Retrieve a remote file."""
70
+
71
+ CreateRemoteFile: grpc.aio.UnaryUnaryMultiCallable[
72
+ sift.remote_files.v1.remote_files_pb2.CreateRemoteFileRequest,
73
+ sift.remote_files.v1.remote_files_pb2.CreateRemoteFileResponse,
74
+ ]
75
+ """Create a remote file."""
76
+
77
+ ListRemoteFiles: grpc.aio.UnaryUnaryMultiCallable[
78
+ sift.remote_files.v1.remote_files_pb2.ListRemoteFilesRequest,
79
+ sift.remote_files.v1.remote_files_pb2.ListRemoteFilesResponse,
80
+ ]
81
+ """List remote files."""
82
+
83
+ UpdateRemoteFile: grpc.aio.UnaryUnaryMultiCallable[
84
+ sift.remote_files.v1.remote_files_pb2.UpdateRemoteFileRequest,
85
+ sift.remote_files.v1.remote_files_pb2.UpdateRemoteFileResponse,
86
+ ]
87
+ """Updates an existing remote file using using the list of fields specified in `update_mask`."""
88
+
89
+ DeleteRemoteFile: grpc.aio.UnaryUnaryMultiCallable[
90
+ sift.remote_files.v1.remote_files_pb2.DeleteRemoteFileRequest,
91
+ sift.remote_files.v1.remote_files_pb2.DeleteRemoteFileResponse,
92
+ ]
93
+ """Delete a remote file."""
94
+
95
+ BatchDeleteRemoteFiles: grpc.aio.UnaryUnaryMultiCallable[
96
+ sift.remote_files.v1.remote_files_pb2.BatchDeleteRemoteFilesRequest,
97
+ sift.remote_files.v1.remote_files_pb2.BatchDeleteRemoteFilesResponse,
98
+ ]
99
+ """Batch deletes remote files. Each batch is limited to 1000 records."""
100
+
101
+ GetRemoteFileDownloadUrl: grpc.aio.UnaryUnaryMultiCallable[
102
+ sift.remote_files.v1.remote_files_pb2.GetRemoteFileDownloadUrlRequest,
103
+ sift.remote_files.v1.remote_files_pb2.GetRemoteFileDownloadUrlResponse,
104
+ ]
105
+ """Gets a download URL for the remote file."""
106
+
107
+ class RemoteFileServiceServicer(metaclass=abc.ABCMeta):
108
+ @abc.abstractmethod
109
+ def GetRemoteFile(
110
+ self,
111
+ request: sift.remote_files.v1.remote_files_pb2.GetRemoteFileRequest,
112
+ context: _ServicerContext,
113
+ ) -> typing.Union[sift.remote_files.v1.remote_files_pb2.GetRemoteFileResponse, collections.abc.Awaitable[sift.remote_files.v1.remote_files_pb2.GetRemoteFileResponse]]:
114
+ """Retrieve a remote file."""
115
+
116
+ @abc.abstractmethod
117
+ def CreateRemoteFile(
118
+ self,
119
+ request: sift.remote_files.v1.remote_files_pb2.CreateRemoteFileRequest,
120
+ context: _ServicerContext,
121
+ ) -> typing.Union[sift.remote_files.v1.remote_files_pb2.CreateRemoteFileResponse, collections.abc.Awaitable[sift.remote_files.v1.remote_files_pb2.CreateRemoteFileResponse]]:
122
+ """Create a remote file."""
123
+
124
+ @abc.abstractmethod
125
+ def ListRemoteFiles(
126
+ self,
127
+ request: sift.remote_files.v1.remote_files_pb2.ListRemoteFilesRequest,
128
+ context: _ServicerContext,
129
+ ) -> typing.Union[sift.remote_files.v1.remote_files_pb2.ListRemoteFilesResponse, collections.abc.Awaitable[sift.remote_files.v1.remote_files_pb2.ListRemoteFilesResponse]]:
130
+ """List remote files."""
131
+
132
+ @abc.abstractmethod
133
+ def UpdateRemoteFile(
134
+ self,
135
+ request: sift.remote_files.v1.remote_files_pb2.UpdateRemoteFileRequest,
136
+ context: _ServicerContext,
137
+ ) -> typing.Union[sift.remote_files.v1.remote_files_pb2.UpdateRemoteFileResponse, collections.abc.Awaitable[sift.remote_files.v1.remote_files_pb2.UpdateRemoteFileResponse]]:
138
+ """Updates an existing remote file using using the list of fields specified in `update_mask`."""
139
+
140
+ @abc.abstractmethod
141
+ def DeleteRemoteFile(
142
+ self,
143
+ request: sift.remote_files.v1.remote_files_pb2.DeleteRemoteFileRequest,
144
+ context: _ServicerContext,
145
+ ) -> typing.Union[sift.remote_files.v1.remote_files_pb2.DeleteRemoteFileResponse, collections.abc.Awaitable[sift.remote_files.v1.remote_files_pb2.DeleteRemoteFileResponse]]:
146
+ """Delete a remote file."""
147
+
148
+ @abc.abstractmethod
149
+ def BatchDeleteRemoteFiles(
150
+ self,
151
+ request: sift.remote_files.v1.remote_files_pb2.BatchDeleteRemoteFilesRequest,
152
+ context: _ServicerContext,
153
+ ) -> typing.Union[sift.remote_files.v1.remote_files_pb2.BatchDeleteRemoteFilesResponse, collections.abc.Awaitable[sift.remote_files.v1.remote_files_pb2.BatchDeleteRemoteFilesResponse]]:
154
+ """Batch deletes remote files. Each batch is limited to 1000 records."""
155
+
156
+ @abc.abstractmethod
157
+ def GetRemoteFileDownloadUrl(
158
+ self,
159
+ request: sift.remote_files.v1.remote_files_pb2.GetRemoteFileDownloadUrlRequest,
160
+ context: _ServicerContext,
161
+ ) -> typing.Union[sift.remote_files.v1.remote_files_pb2.GetRemoteFileDownloadUrlResponse, collections.abc.Awaitable[sift.remote_files.v1.remote_files_pb2.GetRemoteFileDownloadUrlResponse]]:
162
+ """Gets a download URL for the remote file."""
163
+
164
+ def add_RemoteFileServiceServicer_to_server(servicer: RemoteFileServiceServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ...
File without changes
File without changes
@@ -0,0 +1,146 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: sift/report_templates/v1/report_templates.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/sift/report_templates/v1/report_templates.proto\x12\x18sift.report_templates.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\"\xda\x05\n\x0eReportTemplate\x12\x31\n\x12report_template_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x10reportTemplateId\x12,\n\x0forganization_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x0eorganizationId\x12\'\n\nclient_key\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00R\tclientKey\x88\x01\x01\x12\x17\n\x04name\x18\x04 \x01(\tB\x03\xe0\x41\x02R\x04name\x12*\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x03\xe0\x41\x01H\x01R\x0b\x64\x65scription\x88\x01\x01\x12I\n\rarchived_date\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01H\x02R\x0c\x61rchivedDate\x88\x01\x01\x12\x30\n\x12\x63reated_by_user_id\x18\x07 \x01(\tB\x03\xe0\x41\x02R\x0f\x63reatedByUserId\x12\x32\n\x13modified_by_user_id\x18\x08 \x01(\tB\x03\xe0\x41\x02R\x10modifiedByUserId\x12\x42\n\x0c\x63reated_date\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0b\x63reatedDate\x12\x44\n\rmodified_date\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x02R\x0cmodifiedDate\x12G\n\x05rules\x18\x0b \x03(\x0b\x32,.sift.report_templates.v1.ReportTemplateRuleB\x03\xe0\x41\x02R\x05rules\x12\x44\n\x04tags\x18\x0c \x03(\x0b\x32+.sift.report_templates.v1.ReportTemplateTagB\x03\xe0\x41\x02R\x04tagsB\r\n\x0b_client_keyB\x0e\n\x0c_descriptionB\x10\n\x0e_archived_date\"\xb8\x01\n\x12ReportTemplateRule\x12\x1c\n\x07rule_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x06ruleId\x12+\n\x0frule_version_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\rruleVersionId\x12\x33\n\x13rule_version_number\x18\x03 \x01(\rB\x03\xe0\x41\x02R\x11ruleVersionNumber\x12\"\n\nclient_key\x18\x04 \x01(\tB\x03\xe0\x41\x01R\tclientKey\"3\n\x11ReportTemplateTag\x12\x1e\n\x08tag_name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x07tagName\"\x9f\x01\n\x18GetReportTemplateRequest\x12\x31\n\x12report_template_id\x18\x01 \x01(\tB\x03\xe0\x41\x01R\x10reportTemplateId\x12\"\n\nclient_key\x18\x02 \x01(\tB\x03\xe0\x41\x01R\tclientKey\x12,\n\x0forganization_id\x18\x03 \x01(\tB\x03\xe0\x41\x01R\x0eorganizationId\"s\n\x19GetReportTemplateResponse\x12V\n\x0freport_template\x18\x01 \x01(\x0b\x32(.sift.report_templates.v1.ReportTemplateB\x03\xe0\x41\x02R\x0ereportTemplate\"\xe0\x03\n\x1b\x43reateReportTemplateRequest\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12\'\n\nclient_key\x18\x02 \x01(\tB\x03\xe0\x41\x01H\x01R\tclientKey\x88\x01\x01\x12*\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x02R\x0b\x64\x65scription\x88\x01\x01\x12 \n\ttag_names\x18\x04 \x03(\tB\x03\xe0\x41\x02R\x08tagNames\x12,\n\x0forganization_id\x18\x06 \x01(\tB\x03\xe0\x41\x01R\x0eorganizationId\x12^\n\x08rule_ids\x18\x07 \x01(\x0b\x32<.sift.report_templates.v1.CreateReportTemplateRequestRuleIdsB\x03\xe0\x41\x01H\x00R\x07ruleIds\x12p\n\x10rule_client_keys\x18\x08 \x01(\x0b\x32?.sift.report_templates.v1.CreateReportTemplateRequestClientKeysB\x03\xe0\x41\x01H\x00R\x0eruleClientKeysB\x12\n\x10rule_identifiersB\r\n\x0b_client_keyB\x0e\n\x0c_description\"D\n\"CreateReportTemplateRequestRuleIds\x12\x1e\n\x08rule_ids\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x07ruleIds\"V\n%CreateReportTemplateRequestClientKeys\x12-\n\x10rule_client_keys\x18\x01 \x03(\tB\x03\xe0\x41\x02R\x0eruleClientKeys\"v\n\x1c\x43reateReportTemplateResponse\x12V\n\x0freport_template\x18\x01 \x01(\x0b\x32(.sift.report_templates.v1.ReportTemplateB\x03\xe0\x41\x02R\x0ereportTemplate\"\xfd\x01\n\x1aListReportTemplatesRequest\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.\n\x10include_archived\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01R\x0fincludeArchived\x12\x1e\n\x08order_by\x18\x06 \x01(\tB\x03\xe0\x41\x01R\x07orderBy\"\x9a\x01\n\x1bListReportTemplatesResponse\x12S\n\x10report_templates\x18\x01 \x03(\x0b\x32(.sift.report_templates.v1.ReportTemplateR\x0freportTemplates\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xb7\x01\n\x1bUpdateReportTemplateRequest\x12V\n\x0freport_template\x18\x01 \x01(\x0b\x32(.sift.report_templates.v1.ReportTemplateB\x03\xe0\x41\x02R\x0ereportTemplate\x12@\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02R\nupdateMask\"v\n\x1cUpdateReportTemplateResponse\x12V\n\x0freport_template\x18\x01 \x01(\x0b\x32(.sift.report_templates.v1.ReportTemplateB\x03\xe0\x41\x02R\x0ereportTemplate2\x9f\x08\n\x15ReportTemplateService\x12\xac\x02\n\x11GetReportTemplate\x12\x32.sift.report_templates.v1.GetReportTemplateRequest\x1a\x33.sift.report_templates.v1.GetReportTemplateResponse\"\xad\x01\x92\x41\x30\x12\x11GetReportTemplate\x1a\x1bRetrieve a report template.\x82\xd3\xe4\x93\x02t\x12-/api/v1/report-templates/{report_template_id}ZC\x12\x41/v1/organizations/{organization_id}/report_templates/{client_key}\x12\xde\x01\n\x14\x43reateReportTemplate\x12\x35.sift.report_templates.v1.CreateReportTemplateRequest\x1a\x36.sift.report_templates.v1.CreateReportTemplateResponse\"W\x92\x41\x31\x12\x14\x43reateReportTemplate\x1a\x19\x43reate a report template.\x82\xd3\xe4\x93\x02\x1d\"\x18/api/v1/report-templates:\x01*\x12\xd4\x01\n\x13ListReportTemplates\x12\x34.sift.report_templates.v1.ListReportTemplatesRequest\x1a\x35.sift.report_templates.v1.ListReportTemplatesResponse\"P\x92\x41-\x12\x13ListReportTemplates\x1a\x16List report templates.\x82\xd3\xe4\x93\x02\x1a\x12\x18/api/v1/report-templates\x12\x9e\x02\n\x14UpdateReportTemplate\x12\x35.sift.report_templates.v1.UpdateReportTemplateRequest\x1a\x36.sift.report_templates.v1.UpdateReportTemplateResponse\"\x96\x01\x92\x41p\x12\x14UpdateReportTemplate\x1aXUpdates an existing report template using the list of fields specified in `update_mask`.\x82\xd3\xe4\x93\x02\x1d\x32\x18/api/v1/report-templates:\x01*B\xcf\x01\n\x1c\x63om.sift.report_templates.v1B\x14ReportTemplatesProtoP\x01\xa2\x02\x03SRX\xaa\x02\x17Sift.ReportTemplates.V1\xca\x02\x17Sift\\ReportTemplates\\V1\xe2\x02#Sift\\ReportTemplates\\V1\\GPBMetadata\xea\x02\x19Sift::ReportTemplates::V1\x92\x41\x1a\x12\x18\n\x16ReportTemplate serviceb\x06proto3')
23
+
24
+ _globals = globals()
25
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
26
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'sift.report_templates.v1.report_templates_pb2', _globals)
27
+ if not _descriptor._USE_C_DESCRIPTORS:
28
+ _globals['DESCRIPTOR']._loaded_options = None
29
+ _globals['DESCRIPTOR']._serialized_options = b'\n\034com.sift.report_templates.v1B\024ReportTemplatesProtoP\001\242\002\003SRX\252\002\027Sift.ReportTemplates.V1\312\002\027Sift\\ReportTemplates\\V1\342\002#Sift\\ReportTemplates\\V1\\GPBMetadata\352\002\031Sift::ReportTemplates::V1\222A\032\022\030\n\026ReportTemplate service'
30
+ _globals['_REPORTTEMPLATE'].fields_by_name['report_template_id']._loaded_options = None
31
+ _globals['_REPORTTEMPLATE'].fields_by_name['report_template_id']._serialized_options = b'\340A\002'
32
+ _globals['_REPORTTEMPLATE'].fields_by_name['organization_id']._loaded_options = None
33
+ _globals['_REPORTTEMPLATE'].fields_by_name['organization_id']._serialized_options = b'\340A\002'
34
+ _globals['_REPORTTEMPLATE'].fields_by_name['client_key']._loaded_options = None
35
+ _globals['_REPORTTEMPLATE'].fields_by_name['client_key']._serialized_options = b'\340A\001'
36
+ _globals['_REPORTTEMPLATE'].fields_by_name['name']._loaded_options = None
37
+ _globals['_REPORTTEMPLATE'].fields_by_name['name']._serialized_options = b'\340A\002'
38
+ _globals['_REPORTTEMPLATE'].fields_by_name['description']._loaded_options = None
39
+ _globals['_REPORTTEMPLATE'].fields_by_name['description']._serialized_options = b'\340A\001'
40
+ _globals['_REPORTTEMPLATE'].fields_by_name['archived_date']._loaded_options = None
41
+ _globals['_REPORTTEMPLATE'].fields_by_name['archived_date']._serialized_options = b'\340A\001'
42
+ _globals['_REPORTTEMPLATE'].fields_by_name['created_by_user_id']._loaded_options = None
43
+ _globals['_REPORTTEMPLATE'].fields_by_name['created_by_user_id']._serialized_options = b'\340A\002'
44
+ _globals['_REPORTTEMPLATE'].fields_by_name['modified_by_user_id']._loaded_options = None
45
+ _globals['_REPORTTEMPLATE'].fields_by_name['modified_by_user_id']._serialized_options = b'\340A\002'
46
+ _globals['_REPORTTEMPLATE'].fields_by_name['created_date']._loaded_options = None
47
+ _globals['_REPORTTEMPLATE'].fields_by_name['created_date']._serialized_options = b'\340A\002'
48
+ _globals['_REPORTTEMPLATE'].fields_by_name['modified_date']._loaded_options = None
49
+ _globals['_REPORTTEMPLATE'].fields_by_name['modified_date']._serialized_options = b'\340A\002'
50
+ _globals['_REPORTTEMPLATE'].fields_by_name['rules']._loaded_options = None
51
+ _globals['_REPORTTEMPLATE'].fields_by_name['rules']._serialized_options = b'\340A\002'
52
+ _globals['_REPORTTEMPLATE'].fields_by_name['tags']._loaded_options = None
53
+ _globals['_REPORTTEMPLATE'].fields_by_name['tags']._serialized_options = b'\340A\002'
54
+ _globals['_REPORTTEMPLATERULE'].fields_by_name['rule_id']._loaded_options = None
55
+ _globals['_REPORTTEMPLATERULE'].fields_by_name['rule_id']._serialized_options = b'\340A\002'
56
+ _globals['_REPORTTEMPLATERULE'].fields_by_name['rule_version_id']._loaded_options = None
57
+ _globals['_REPORTTEMPLATERULE'].fields_by_name['rule_version_id']._serialized_options = b'\340A\002'
58
+ _globals['_REPORTTEMPLATERULE'].fields_by_name['rule_version_number']._loaded_options = None
59
+ _globals['_REPORTTEMPLATERULE'].fields_by_name['rule_version_number']._serialized_options = b'\340A\002'
60
+ _globals['_REPORTTEMPLATERULE'].fields_by_name['client_key']._loaded_options = None
61
+ _globals['_REPORTTEMPLATERULE'].fields_by_name['client_key']._serialized_options = b'\340A\001'
62
+ _globals['_REPORTTEMPLATETAG'].fields_by_name['tag_name']._loaded_options = None
63
+ _globals['_REPORTTEMPLATETAG'].fields_by_name['tag_name']._serialized_options = b'\340A\002'
64
+ _globals['_GETREPORTTEMPLATEREQUEST'].fields_by_name['report_template_id']._loaded_options = None
65
+ _globals['_GETREPORTTEMPLATEREQUEST'].fields_by_name['report_template_id']._serialized_options = b'\340A\001'
66
+ _globals['_GETREPORTTEMPLATEREQUEST'].fields_by_name['client_key']._loaded_options = None
67
+ _globals['_GETREPORTTEMPLATEREQUEST'].fields_by_name['client_key']._serialized_options = b'\340A\001'
68
+ _globals['_GETREPORTTEMPLATEREQUEST'].fields_by_name['organization_id']._loaded_options = None
69
+ _globals['_GETREPORTTEMPLATEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\340A\001'
70
+ _globals['_GETREPORTTEMPLATERESPONSE'].fields_by_name['report_template']._loaded_options = None
71
+ _globals['_GETREPORTTEMPLATERESPONSE'].fields_by_name['report_template']._serialized_options = b'\340A\002'
72
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['name']._loaded_options = None
73
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['name']._serialized_options = b'\340A\002'
74
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['client_key']._loaded_options = None
75
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['client_key']._serialized_options = b'\340A\001'
76
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['description']._loaded_options = None
77
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['description']._serialized_options = b'\340A\001'
78
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['tag_names']._loaded_options = None
79
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['tag_names']._serialized_options = b'\340A\002'
80
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['organization_id']._loaded_options = None
81
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\340A\001'
82
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['rule_ids']._loaded_options = None
83
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['rule_ids']._serialized_options = b'\340A\001'
84
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['rule_client_keys']._loaded_options = None
85
+ _globals['_CREATEREPORTTEMPLATEREQUEST'].fields_by_name['rule_client_keys']._serialized_options = b'\340A\001'
86
+ _globals['_CREATEREPORTTEMPLATEREQUESTRULEIDS'].fields_by_name['rule_ids']._loaded_options = None
87
+ _globals['_CREATEREPORTTEMPLATEREQUESTRULEIDS'].fields_by_name['rule_ids']._serialized_options = b'\340A\002'
88
+ _globals['_CREATEREPORTTEMPLATEREQUESTCLIENTKEYS'].fields_by_name['rule_client_keys']._loaded_options = None
89
+ _globals['_CREATEREPORTTEMPLATEREQUESTCLIENTKEYS'].fields_by_name['rule_client_keys']._serialized_options = b'\340A\002'
90
+ _globals['_CREATEREPORTTEMPLATERESPONSE'].fields_by_name['report_template']._loaded_options = None
91
+ _globals['_CREATEREPORTTEMPLATERESPONSE'].fields_by_name['report_template']._serialized_options = b'\340A\002'
92
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['page_size']._loaded_options = None
93
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['page_size']._serialized_options = b'\340A\001'
94
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['page_token']._loaded_options = None
95
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['page_token']._serialized_options = b'\340A\001'
96
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['filter']._loaded_options = None
97
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['filter']._serialized_options = b'\340A\001'
98
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['organization_id']._loaded_options = None
99
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['organization_id']._serialized_options = b'\340A\001'
100
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['include_archived']._loaded_options = None
101
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['include_archived']._serialized_options = b'\340A\001'
102
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['order_by']._loaded_options = None
103
+ _globals['_LISTREPORTTEMPLATESREQUEST'].fields_by_name['order_by']._serialized_options = b'\340A\001'
104
+ _globals['_UPDATEREPORTTEMPLATEREQUEST'].fields_by_name['report_template']._loaded_options = None
105
+ _globals['_UPDATEREPORTTEMPLATEREQUEST'].fields_by_name['report_template']._serialized_options = b'\340A\002'
106
+ _globals['_UPDATEREPORTTEMPLATEREQUEST'].fields_by_name['update_mask']._loaded_options = None
107
+ _globals['_UPDATEREPORTTEMPLATEREQUEST'].fields_by_name['update_mask']._serialized_options = b'\340A\002'
108
+ _globals['_UPDATEREPORTTEMPLATERESPONSE'].fields_by_name['report_template']._loaded_options = None
109
+ _globals['_UPDATEREPORTTEMPLATERESPONSE'].fields_by_name['report_template']._serialized_options = b'\340A\002'
110
+ _globals['_REPORTTEMPLATESERVICE'].methods_by_name['GetReportTemplate']._loaded_options = None
111
+ _globals['_REPORTTEMPLATESERVICE'].methods_by_name['GetReportTemplate']._serialized_options = b'\222A0\022\021GetReportTemplate\032\033Retrieve a report template.\202\323\344\223\002t\022-/api/v1/report-templates/{report_template_id}ZC\022A/v1/organizations/{organization_id}/report_templates/{client_key}'
112
+ _globals['_REPORTTEMPLATESERVICE'].methods_by_name['CreateReportTemplate']._loaded_options = None
113
+ _globals['_REPORTTEMPLATESERVICE'].methods_by_name['CreateReportTemplate']._serialized_options = b'\222A1\022\024CreateReportTemplate\032\031Create a report template.\202\323\344\223\002\035\"\030/api/v1/report-templates:\001*'
114
+ _globals['_REPORTTEMPLATESERVICE'].methods_by_name['ListReportTemplates']._loaded_options = None
115
+ _globals['_REPORTTEMPLATESERVICE'].methods_by_name['ListReportTemplates']._serialized_options = b'\222A-\022\023ListReportTemplates\032\026List report templates.\202\323\344\223\002\032\022\030/api/v1/report-templates'
116
+ _globals['_REPORTTEMPLATESERVICE'].methods_by_name['UpdateReportTemplate']._loaded_options = None
117
+ _globals['_REPORTTEMPLATESERVICE'].methods_by_name['UpdateReportTemplate']._serialized_options = b'\222Ap\022\024UpdateReportTemplate\032XUpdates an existing report template using the list of fields specified in `update_mask`.\202\323\344\223\002\0352\030/api/v1/report-templates:\001*'
118
+ _globals['_REPORTTEMPLATE']._serialized_start=256
119
+ _globals['_REPORTTEMPLATE']._serialized_end=986
120
+ _globals['_REPORTTEMPLATERULE']._serialized_start=989
121
+ _globals['_REPORTTEMPLATERULE']._serialized_end=1173
122
+ _globals['_REPORTTEMPLATETAG']._serialized_start=1175
123
+ _globals['_REPORTTEMPLATETAG']._serialized_end=1226
124
+ _globals['_GETREPORTTEMPLATEREQUEST']._serialized_start=1229
125
+ _globals['_GETREPORTTEMPLATEREQUEST']._serialized_end=1388
126
+ _globals['_GETREPORTTEMPLATERESPONSE']._serialized_start=1390
127
+ _globals['_GETREPORTTEMPLATERESPONSE']._serialized_end=1505
128
+ _globals['_CREATEREPORTTEMPLATEREQUEST']._serialized_start=1508
129
+ _globals['_CREATEREPORTTEMPLATEREQUEST']._serialized_end=1988
130
+ _globals['_CREATEREPORTTEMPLATEREQUESTRULEIDS']._serialized_start=1990
131
+ _globals['_CREATEREPORTTEMPLATEREQUESTRULEIDS']._serialized_end=2058
132
+ _globals['_CREATEREPORTTEMPLATEREQUESTCLIENTKEYS']._serialized_start=2060
133
+ _globals['_CREATEREPORTTEMPLATEREQUESTCLIENTKEYS']._serialized_end=2146
134
+ _globals['_CREATEREPORTTEMPLATERESPONSE']._serialized_start=2148
135
+ _globals['_CREATEREPORTTEMPLATERESPONSE']._serialized_end=2266
136
+ _globals['_LISTREPORTTEMPLATESREQUEST']._serialized_start=2269
137
+ _globals['_LISTREPORTTEMPLATESREQUEST']._serialized_end=2522
138
+ _globals['_LISTREPORTTEMPLATESRESPONSE']._serialized_start=2525
139
+ _globals['_LISTREPORTTEMPLATESRESPONSE']._serialized_end=2679
140
+ _globals['_UPDATEREPORTTEMPLATEREQUEST']._serialized_start=2682
141
+ _globals['_UPDATEREPORTTEMPLATEREQUEST']._serialized_end=2865
142
+ _globals['_UPDATEREPORTTEMPLATERESPONSE']._serialized_start=2867
143
+ _globals['_UPDATEREPORTTEMPLATERESPONSE']._serialized_end=2985
144
+ _globals['_REPORTTEMPLATESERVICE']._serialized_start=2988
145
+ _globals['_REPORTTEMPLATESERVICE']._serialized_end=4043
146
+ # @@protoc_insertion_point(module_scope)