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,67 @@
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.data.v1 import data_pb2 as sift_dot_data_dot_v1_dot_data__pb2
6
+
7
+
8
+ class DataServiceStub(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.GetData = channel.unary_unary(
18
+ '/sift.data.v1.DataService/GetData',
19
+ request_serializer=sift_dot_data_dot_v1_dot_data__pb2.GetDataRequest.SerializeToString,
20
+ response_deserializer=sift_dot_data_dot_v1_dot_data__pb2.GetDataResponse.FromString,
21
+ )
22
+
23
+
24
+ class DataServiceServicer(object):
25
+ """Missing associated documentation comment in .proto file."""
26
+
27
+ def GetData(self, request, context):
28
+ """Query data
29
+ """
30
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
31
+ context.set_details('Method not implemented!')
32
+ raise NotImplementedError('Method not implemented!')
33
+
34
+
35
+ def add_DataServiceServicer_to_server(servicer, server):
36
+ rpc_method_handlers = {
37
+ 'GetData': grpc.unary_unary_rpc_method_handler(
38
+ servicer.GetData,
39
+ request_deserializer=sift_dot_data_dot_v1_dot_data__pb2.GetDataRequest.FromString,
40
+ response_serializer=sift_dot_data_dot_v1_dot_data__pb2.GetDataResponse.SerializeToString,
41
+ ),
42
+ }
43
+ generic_handler = grpc.method_handlers_generic_handler(
44
+ 'sift.data.v1.DataService', rpc_method_handlers)
45
+ server.add_generic_rpc_handlers((generic_handler,))
46
+
47
+
48
+ # This class is part of an EXPERIMENTAL API.
49
+ class DataService(object):
50
+ """Missing associated documentation comment in .proto file."""
51
+
52
+ @staticmethod
53
+ def GetData(request,
54
+ target,
55
+ options=(),
56
+ channel_credentials=None,
57
+ call_credentials=None,
58
+ insecure=False,
59
+ compression=None,
60
+ wait_for_ready=None,
61
+ timeout=None,
62
+ metadata=None):
63
+ return grpc.experimental.unary_unary(request, target, '/sift.data.v1.DataService/GetData',
64
+ sift_dot_data_dot_v1_dot_data__pb2.GetDataRequest.SerializeToString,
65
+ sift_dot_data_dot_v1_dot_data__pb2.GetDataResponse.FromString,
66
+ options, channel_credentials,
67
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -0,0 +1,44 @@
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.data.v1.data_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 DataServiceStub:
21
+ def __init__(self, channel: typing.Union[grpc.Channel, grpc.aio.Channel]) -> None: ...
22
+ GetData: grpc.UnaryUnaryMultiCallable[
23
+ sift.data.v1.data_pb2.GetDataRequest,
24
+ sift.data.v1.data_pb2.GetDataResponse,
25
+ ]
26
+ """Query data"""
27
+
28
+ class DataServiceAsyncStub:
29
+ GetData: grpc.aio.UnaryUnaryMultiCallable[
30
+ sift.data.v1.data_pb2.GetDataRequest,
31
+ sift.data.v1.data_pb2.GetDataResponse,
32
+ ]
33
+ """Query data"""
34
+
35
+ class DataServiceServicer(metaclass=abc.ABCMeta):
36
+ @abc.abstractmethod
37
+ def GetData(
38
+ self,
39
+ request: sift.data.v1.data_pb2.GetDataRequest,
40
+ context: _ServicerContext,
41
+ ) -> typing.Union[sift.data.v1.data_pb2.GetDataResponse, collections.abc.Awaitable[sift.data.v1.data_pb2.GetDataResponse]]:
42
+ """Query data"""
43
+
44
+ def add_DataServiceServicer_to_server(servicer: DataServiceServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ...
File without changes
File without changes
@@ -0,0 +1,35 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: sift/ingest/v1/ingest.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.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
16
+ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
17
+
18
+
19
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1bsift/ingest/v1/ingest.proto\x12\x0esift.ingest.v1\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xfe\x02\n!IngestWithConfigDataStreamRequest\x12.\n\x13ingestion_config_id\x18\x01 \x01(\tR\x11ingestionConfigId\x12\x12\n\x04\x66low\x18\x02 \x01(\tR\x04\x66low\x12\x38\n\ttimestamp\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ttimestamp\x12W\n\x0e\x63hannel_values\x18\x04 \x03(\x0b\x32\x30.sift.ingest.v1.IngestWithConfigDataChannelValueR\rchannelValues\x12\x15\n\x06run_id\x18\x05 \x01(\tR\x05runId\x12\x42\n\x1e\x65nd_stream_on_validation_error\x18\x06 \x01(\x08R\x1a\x65ndStreamOnValidationError\x12\'\n\x0forganization_id\x18\x07 \x01(\tR\x0eorganizationId\"$\n\"IngestWithConfigDataStreamResponse\"\xd5\x02\n IngestWithConfigDataChannelValue\x12\x18\n\x06string\x18\x01 \x01(\tH\x00R\x06string\x12\x18\n\x06\x64ouble\x18\x02 \x01(\x01H\x00R\x06\x64ouble\x12\x16\n\x05\x66loat\x18\x03 \x01(\x02H\x00R\x05\x66loat\x12\x14\n\x04\x62ool\x18\x04 \x01(\x08H\x00R\x04\x62ool\x12\x16\n\x05int32\x18\x05 \x01(\x05H\x00R\x05int32\x12\x18\n\x06uint32\x18\x06 \x01(\rH\x00R\x06uint32\x12\x16\n\x05int64\x18\x07 \x01(\x03H\x00R\x05int64\x12\x18\n\x06uint64\x18\x08 \x01(\x04H\x00R\x06uint64\x12\x1d\n\tbit_field\x18\t \x01(\x0cH\x00R\x08\x62itField\x12\x14\n\x04\x65num\x18\n \x01(\rH\x00R\x04\x65num\x12.\n\x05\x65mpty\x18\x0b \x01(\x0b\x32\x16.google.protobuf.EmptyH\x00R\x05\x65mptyB\x06\n\x04type2\x97\x01\n\rIngestService\x12\x85\x01\n\x1aIngestWithConfigDataStream\x12\x31.sift.ingest.v1.IngestWithConfigDataStreamRequest\x1a\x32.sift.ingest.v1.IngestWithConfigDataStreamResponse(\x01\x42{\n\x12\x63om.sift.ingest.v1B\x0bIngestProtoP\x01\xa2\x02\x03SIX\xaa\x02\x0eSift.Ingest.V1\xca\x02\x0eSift\\Ingest\\V1\xe2\x02\x1aSift\\Ingest\\V1\\GPBMetadata\xea\x02\x10Sift::Ingest::V1b\x06proto3')
20
+
21
+ _globals = globals()
22
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
23
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'sift.ingest.v1.ingest_pb2', _globals)
24
+ if not _descriptor._USE_C_DESCRIPTORS:
25
+ _globals['DESCRIPTOR']._loaded_options = None
26
+ _globals['DESCRIPTOR']._serialized_options = b'\n\022com.sift.ingest.v1B\013IngestProtoP\001\242\002\003SIX\252\002\016Sift.Ingest.V1\312\002\016Sift\\Ingest\\V1\342\002\032Sift\\Ingest\\V1\\GPBMetadata\352\002\020Sift::Ingest::V1'
27
+ _globals['_INGESTWITHCONFIGDATASTREAMREQUEST']._serialized_start=110
28
+ _globals['_INGESTWITHCONFIGDATASTREAMREQUEST']._serialized_end=492
29
+ _globals['_INGESTWITHCONFIGDATASTREAMRESPONSE']._serialized_start=494
30
+ _globals['_INGESTWITHCONFIGDATASTREAMRESPONSE']._serialized_end=530
31
+ _globals['_INGESTWITHCONFIGDATACHANNELVALUE']._serialized_start=533
32
+ _globals['_INGESTWITHCONFIGDATACHANNELVALUE']._serialized_end=874
33
+ _globals['_INGESTSERVICE']._serialized_start=877
34
+ _globals['_INGESTSERVICE']._serialized_end=1028
35
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,118 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+
6
+ import builtins
7
+ import collections.abc
8
+ import google.protobuf.descriptor
9
+ import google.protobuf.empty_pb2
10
+ import google.protobuf.internal.containers
11
+ import google.protobuf.message
12
+ import google.protobuf.timestamp_pb2
13
+ import typing
14
+
15
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
16
+
17
+ @typing.final
18
+ class IngestWithConfigDataStreamRequest(google.protobuf.message.Message):
19
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
20
+
21
+ INGESTION_CONFIG_ID_FIELD_NUMBER: builtins.int
22
+ FLOW_FIELD_NUMBER: builtins.int
23
+ TIMESTAMP_FIELD_NUMBER: builtins.int
24
+ CHANNEL_VALUES_FIELD_NUMBER: builtins.int
25
+ RUN_ID_FIELD_NUMBER: builtins.int
26
+ END_STREAM_ON_VALIDATION_ERROR_FIELD_NUMBER: builtins.int
27
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
28
+ ingestion_config_id: builtins.str
29
+ flow: builtins.str
30
+ run_id: builtins.str
31
+ """The run_id MUST be included if this data is part of a run."""
32
+ end_stream_on_validation_error: builtins.bool
33
+ """By default, if this request contains any channel values that do not match
34
+ the supplied ingestion config, the request is stored in an error queue and
35
+ the stream continues to accept data. This ensures all data is saved, but
36
+ only valid data is fully ingested. If this is set to `true`, any validation
37
+ errors end the stream and return the error to the client.
38
+ """
39
+ organization_id: builtins.str
40
+ @property
41
+ def timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
42
+ @property
43
+ def channel_values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___IngestWithConfigDataChannelValue]: ...
44
+ def __init__(
45
+ self,
46
+ *,
47
+ ingestion_config_id: builtins.str = ...,
48
+ flow: builtins.str = ...,
49
+ timestamp: google.protobuf.timestamp_pb2.Timestamp | None = ...,
50
+ channel_values: collections.abc.Iterable[global___IngestWithConfigDataChannelValue] | None = ...,
51
+ run_id: builtins.str = ...,
52
+ end_stream_on_validation_error: builtins.bool = ...,
53
+ organization_id: builtins.str = ...,
54
+ ) -> None: ...
55
+ def HasField(self, field_name: typing.Literal["timestamp", b"timestamp"]) -> builtins.bool: ...
56
+ def ClearField(self, field_name: typing.Literal["channel_values", b"channel_values", "end_stream_on_validation_error", b"end_stream_on_validation_error", "flow", b"flow", "ingestion_config_id", b"ingestion_config_id", "organization_id", b"organization_id", "run_id", b"run_id", "timestamp", b"timestamp"]) -> None: ...
57
+
58
+ global___IngestWithConfigDataStreamRequest = IngestWithConfigDataStreamRequest
59
+
60
+ @typing.final
61
+ class IngestWithConfigDataStreamResponse(google.protobuf.message.Message):
62
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
63
+
64
+ def __init__(
65
+ self,
66
+ ) -> None: ...
67
+
68
+ global___IngestWithConfigDataStreamResponse = IngestWithConfigDataStreamResponse
69
+
70
+ @typing.final
71
+ class IngestWithConfigDataChannelValue(google.protobuf.message.Message):
72
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
73
+
74
+ STRING_FIELD_NUMBER: builtins.int
75
+ DOUBLE_FIELD_NUMBER: builtins.int
76
+ FLOAT_FIELD_NUMBER: builtins.int
77
+ BOOL_FIELD_NUMBER: builtins.int
78
+ INT32_FIELD_NUMBER: builtins.int
79
+ UINT32_FIELD_NUMBER: builtins.int
80
+ INT64_FIELD_NUMBER: builtins.int
81
+ UINT64_FIELD_NUMBER: builtins.int
82
+ BIT_FIELD_FIELD_NUMBER: builtins.int
83
+ ENUM_FIELD_NUMBER: builtins.int
84
+ EMPTY_FIELD_NUMBER: builtins.int
85
+ string: builtins.str
86
+ double: builtins.float
87
+ float: builtins.float
88
+ bool: builtins.bool
89
+ int32: builtins.int
90
+ uint32: builtins.int
91
+ int64: builtins.int
92
+ uint64: builtins.int
93
+ bit_field: builtins.bytes
94
+ enum: builtins.int
95
+ @property
96
+ def empty(self) -> google.protobuf.empty_pb2.Empty:
97
+ """If there's not a new data point for a channel at the given timestamp, pass empty to skip it"""
98
+
99
+ def __init__(
100
+ self,
101
+ *,
102
+ string: builtins.str = ...,
103
+ double: builtins.float = ...,
104
+ float: builtins.float = ...,
105
+ bool: builtins.bool = ...,
106
+ int32: builtins.int = ...,
107
+ uint32: builtins.int = ...,
108
+ int64: builtins.int = ...,
109
+ uint64: builtins.int = ...,
110
+ bit_field: builtins.bytes = ...,
111
+ enum: builtins.int = ...,
112
+ empty: google.protobuf.empty_pb2.Empty | None = ...,
113
+ ) -> None: ...
114
+ def HasField(self, field_name: typing.Literal["bit_field", b"bit_field", "bool", b"bool", "double", b"double", "empty", b"empty", "enum", b"enum", "float", b"float", "int32", b"int32", "int64", b"int64", "string", b"string", "type", b"type", "uint32", b"uint32", "uint64", b"uint64"]) -> builtins.bool: ...
115
+ def ClearField(self, field_name: typing.Literal["bit_field", b"bit_field", "bool", b"bool", "double", b"double", "empty", b"empty", "enum", b"enum", "float", b"float", "int32", b"int32", "int64", b"int64", "string", b"string", "type", b"type", "uint32", b"uint32", "uint64", b"uint64"]) -> None: ...
116
+ def WhichOneof(self, oneof_group: typing.Literal["type", b"type"]) -> typing.Literal["string", "double", "float", "bool", "int32", "uint32", "int64", "uint64", "bit_field", "enum", "empty"] | None: ...
117
+
118
+ global___IngestWithConfigDataChannelValue = IngestWithConfigDataChannelValue
@@ -0,0 +1,66 @@
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.ingest.v1 import ingest_pb2 as sift_dot_ingest_dot_v1_dot_ingest__pb2
6
+
7
+
8
+ class IngestServiceStub(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.IngestWithConfigDataStream = channel.stream_unary(
18
+ '/sift.ingest.v1.IngestService/IngestWithConfigDataStream',
19
+ request_serializer=sift_dot_ingest_dot_v1_dot_ingest__pb2.IngestWithConfigDataStreamRequest.SerializeToString,
20
+ response_deserializer=sift_dot_ingest_dot_v1_dot_ingest__pb2.IngestWithConfigDataStreamResponse.FromString,
21
+ )
22
+
23
+
24
+ class IngestServiceServicer(object):
25
+ """Missing associated documentation comment in .proto file."""
26
+
27
+ def IngestWithConfigDataStream(self, request_iterator, context):
28
+ """Missing associated documentation comment in .proto file."""
29
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
30
+ context.set_details('Method not implemented!')
31
+ raise NotImplementedError('Method not implemented!')
32
+
33
+
34
+ def add_IngestServiceServicer_to_server(servicer, server):
35
+ rpc_method_handlers = {
36
+ 'IngestWithConfigDataStream': grpc.stream_unary_rpc_method_handler(
37
+ servicer.IngestWithConfigDataStream,
38
+ request_deserializer=sift_dot_ingest_dot_v1_dot_ingest__pb2.IngestWithConfigDataStreamRequest.FromString,
39
+ response_serializer=sift_dot_ingest_dot_v1_dot_ingest__pb2.IngestWithConfigDataStreamResponse.SerializeToString,
40
+ ),
41
+ }
42
+ generic_handler = grpc.method_handlers_generic_handler(
43
+ 'sift.ingest.v1.IngestService', rpc_method_handlers)
44
+ server.add_generic_rpc_handlers((generic_handler,))
45
+
46
+
47
+ # This class is part of an EXPERIMENTAL API.
48
+ class IngestService(object):
49
+ """Missing associated documentation comment in .proto file."""
50
+
51
+ @staticmethod
52
+ def IngestWithConfigDataStream(request_iterator,
53
+ target,
54
+ options=(),
55
+ channel_credentials=None,
56
+ call_credentials=None,
57
+ insecure=False,
58
+ compression=None,
59
+ wait_for_ready=None,
60
+ timeout=None,
61
+ metadata=None):
62
+ return grpc.experimental.stream_unary(request_iterator, target, '/sift.ingest.v1.IngestService/IngestWithConfigDataStream',
63
+ sift_dot_ingest_dot_v1_dot_ingest__pb2.IngestWithConfigDataStreamRequest.SerializeToString,
64
+ sift_dot_ingest_dot_v1_dot_ingest__pb2.IngestWithConfigDataStreamResponse.FromString,
65
+ options, channel_credentials,
66
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -0,0 +1,41 @@
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.ingest.v1.ingest_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 IngestServiceStub:
21
+ def __init__(self, channel: typing.Union[grpc.Channel, grpc.aio.Channel]) -> None: ...
22
+ IngestWithConfigDataStream: grpc.StreamUnaryMultiCallable[
23
+ sift.ingest.v1.ingest_pb2.IngestWithConfigDataStreamRequest,
24
+ sift.ingest.v1.ingest_pb2.IngestWithConfigDataStreamResponse,
25
+ ]
26
+
27
+ class IngestServiceAsyncStub:
28
+ IngestWithConfigDataStream: grpc.aio.StreamUnaryMultiCallable[
29
+ sift.ingest.v1.ingest_pb2.IngestWithConfigDataStreamRequest,
30
+ sift.ingest.v1.ingest_pb2.IngestWithConfigDataStreamResponse,
31
+ ]
32
+
33
+ class IngestServiceServicer(metaclass=abc.ABCMeta):
34
+ @abc.abstractmethod
35
+ def IngestWithConfigDataStream(
36
+ self,
37
+ request_iterator: _MaybeAsyncIterator[sift.ingest.v1.ingest_pb2.IngestWithConfigDataStreamRequest],
38
+ context: _ServicerContext,
39
+ ) -> typing.Union[sift.ingest.v1.ingest_pb2.IngestWithConfigDataStreamResponse, collections.abc.Awaitable[sift.ingest.v1.ingest_pb2.IngestWithConfigDataStreamResponse]]: ...
40
+
41
+ def add_IngestServiceServicer_to_server(servicer: IngestServiceServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ...
File without changes
File without changes
@@ -0,0 +1,115 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: sift/ingestion_configs/v1/ingestion_configs.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 protoc_gen_openapiv2.options import annotations_pb2 as protoc__gen__openapiv2_dot_options_dot_annotations__pb2
18
+ from sift.common.type.v1 import channel_bit_field_element_pb2 as sift_dot_common_dot_type_dot_v1_dot_channel__bit__field__element__pb2
19
+ from sift.common.type.v1 import channel_data_type_pb2 as sift_dot_common_dot_type_dot_v1_dot_channel__data__type__pb2
20
+ from sift.common.type.v1 import channel_enum_type_pb2 as sift_dot_common_dot_type_dot_v1_dot_channel__enum__type__pb2
21
+
22
+
23
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n1sift/ingestion_configs/v1/ingestion_configs.proto\x12\x19sift.ingestion_configs.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x33sift/common/type/v1/channel_bit_field_element.proto\x1a+sift/common/type/v1/channel_data_type.proto\x1a+sift/common/type/v1/channel_enum_type.proto\"\x8a\x01\n\x0fIngestionConfig\x12\x33\n\x13ingestion_config_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x11ingestionConfigId\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tB\x03\xe0\x41\x02R\x07\x61ssetId\x12\"\n\nclient_key\x18\x03 \x01(\tB\x03\xe0\x41\x01R\tclientKey\"k\n\nFlowConfig\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12\x44\n\x08\x63hannels\x18\x02 \x03(\x0b\x32(.sift.ingestion_configs.v1.ChannelConfigR\x08\x63hannels\"\xf3\x02\n\rChannelConfig\x12\x17\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x04name\x12!\n\tcomponent\x18\x02 \x01(\tB\x03\xe0\x41\x01R\tcomponent\x12\x17\n\x04unit\x18\x03 \x01(\tB\x03\xe0\x41\x01R\x04unit\x12%\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x03\xe0\x41\x01R\x0b\x64\x65scription\x12\x46\n\tdata_type\x18\x05 \x01(\x0e\x32$.sift.common.type.v1.ChannelDataTypeB\x03\xe0\x41\x02R\x08\x64\x61taType\x12\x43\n\nenum_types\x18\x06 \x03(\x0b\x32$.sift.common.type.v1.ChannelEnumTypeR\tenumTypes\x12Y\n\x12\x62it_field_elements\x18\x07 \x03(\x0b\x32+.sift.common.type.v1.ChannelBitFieldElementR\x10\x62itFieldElements\"P\n\x19GetIngestionConfigRequest\x12\x33\n\x13ingestion_config_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x11ingestionConfigId\"x\n\x1aGetIngestionConfigResponse\x12Z\n\x10ingestion_config\x18\x01 \x01(\x0b\x32*.sift.ingestion_configs.v1.IngestionConfigB\x03\xe0\x41\x02R\x0fingestionConfig\"\xd1\x01\n\x1c\x43reateIngestionConfigRequest\x12\"\n\nasset_name\x18\x01 \x01(\tB\x03\xe0\x41\x02R\tassetName\x12;\n\x05\x66lows\x18\x02 \x03(\x0b\x32%.sift.ingestion_configs.v1.FlowConfigR\x05\x66lows\x12,\n\x0forganization_id\x18\x03 \x01(\tB\x03\xe0\x41\x01R\x0eorganizationId\x12\"\n\nclient_key\x18\x04 \x01(\tB\x03\xe0\x41\x01R\tclientKey\"{\n\x1d\x43reateIngestionConfigResponse\x12Z\n\x10ingestion_config\x18\x01 \x01(\x0b\x32*.sift.ingestion_configs.v1.IngestionConfigB\x03\xe0\x41\x02R\x0fingestionConfig\"\x80\x01\n\x1bListIngestionConfigsRequest\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\"\x9f\x01\n\x1cListIngestionConfigsResponse\x12W\n\x11ingestion_configs\x18\x01 \x03(\x0b\x32*.sift.ingestion_configs.v1.IngestionConfigR\x10ingestionConfigs\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\x90\x01\n!CreateIngestionConfigFlowsRequest\x12.\n\x13ingestion_config_id\x18\x01 \x01(\tR\x11ingestionConfigId\x12;\n\x05\x66lows\x18\x02 \x03(\x0b\x32%.sift.ingestion_configs.v1.FlowConfigR\x05\x66lows\"$\n\"CreateIngestionConfigFlowsResponse\"\xb9\x01\n\x1fListIngestionConfigFlowsRequest\x12\x33\n\x13ingestion_config_id\x18\x01 \x01(\tB\x03\xe0\x41\x02R\x11ingestionConfigId\x12 \n\tpage_size\x18\x02 \x01(\rB\x03\xe0\x41\x01R\x08pageSize\x12\"\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01R\tpageToken\x12\x1b\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01R\x06\x66ilter\"\x87\x01\n ListIngestionConfigFlowsResponse\x12;\n\x05\x66lows\x18\x01 \x03(\x0b\x32%.sift.ingestion_configs.v1.FlowConfigR\x05\x66lows\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken2\x95\x0c\n\x16IngestionConfigService\x12\xf1\x01\n\x12GetIngestionConfig\x12\x34.sift.ingestion_configs.v1.GetIngestionConfigRequest\x1a\x35.sift.ingestion_configs.v1.GetIngestionConfigResponse\"n\x92\x41\x34\x12\x12GetIngestionConfig\x1a\x1eRetrieves an ingestion config.\x82\xd3\xe4\x93\x02\x31\x12//api/v1/ingestion-configs/{ingestion_config_id}\x12\xe7\x01\n\x15\x43reateIngestionConfig\x12\x37.sift.ingestion_configs.v1.CreateIngestionConfigRequest\x1a\x38.sift.ingestion_configs.v1.CreateIngestionConfigResponse\"[\x92\x41\x34\x12\x15\x43reateIngestionConfig\x1a\x1b\x43reate an ingestion config.\x82\xd3\xe4\x93\x02\x1e\"\x19/api/v1/ingestion-configs:\x01*\x12\xf5\x01\n\x14ListIngestionConfigs\x12\x36.sift.ingestion_configs.v1.ListIngestionConfigsRequest\x1a\x37.sift.ingestion_configs.v1.ListIngestionConfigsResponse\"l\x92\x41H\x12\x14ListIngestionConfigs\x1a\x30List ingestion configs using an optional filter.\x82\xd3\xe4\x93\x02\x1b\x12\x19/api/v1/ingestion-configs\x12\xaa\x02\n\x1a\x43reateIngestionConfigFlows\x12<.sift.ingestion_configs.v1.CreateIngestionConfigFlowsRequest\x1a=.sift.ingestion_configs.v1.CreateIngestionConfigFlowsResponse\"\x8e\x01\x92\x41N\x12\x1a\x43reateIngestionConfigFlows\x1a\x30\x43reate ingestion config [flows](/glossary#flow).\x82\xd3\xe4\x93\x02\x37\"5/api/v1/ingestion-configs/{ingestion_config_id}/flows\x12\xb9\x02\n\x18ListIngestionConfigFlows\x12:.sift.ingestion_configs.v1.ListIngestionConfigFlowsRequest\x1a;.sift.ingestion_configs.v1.ListIngestionConfigFlowsResponse\"\xa3\x01\x92\x41\x63\x12\x18ListIngestionConfigFlows\x1aGList ingestion config [flows](/glossary#flow) using an optional filter.\x82\xd3\xe4\x93\x02\x37\x12\x35/api/v1/ingestion-configs/{ingestion_config_id}/flows\x1a\xbb\x01\x92\x41\xb7\x01\x12ZService to programmatically interact with [ingestion configs](/glossary#ingestion-config).\x1aY\n+Read more about what ingestion configs are.\x12*/ingestion/creating-amend-ingestion-configB\xd7\x01\n\x1d\x63om.sift.ingestion_configs.v1B\x15IngestionConfigsProtoP\x01\xa2\x02\x03SIX\xaa\x02\x18Sift.IngestionConfigs.V1\xca\x02\x18Sift\\IngestionConfigs\\V1\xe2\x02$Sift\\IngestionConfigs\\V1\\GPBMetadata\xea\x02\x1aSift::IngestionConfigs::V1\x92\x41\x1c\x12\x1a\n\x18Ingestion Config Serviceb\x06proto3')
24
+
25
+ _globals = globals()
26
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
27
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'sift.ingestion_configs.v1.ingestion_configs_pb2', _globals)
28
+ if not _descriptor._USE_C_DESCRIPTORS:
29
+ _globals['DESCRIPTOR']._loaded_options = None
30
+ _globals['DESCRIPTOR']._serialized_options = b'\n\035com.sift.ingestion_configs.v1B\025IngestionConfigsProtoP\001\242\002\003SIX\252\002\030Sift.IngestionConfigs.V1\312\002\030Sift\\IngestionConfigs\\V1\342\002$Sift\\IngestionConfigs\\V1\\GPBMetadata\352\002\032Sift::IngestionConfigs::V1\222A\034\022\032\n\030Ingestion Config Service'
31
+ _globals['_INGESTIONCONFIG'].fields_by_name['ingestion_config_id']._loaded_options = None
32
+ _globals['_INGESTIONCONFIG'].fields_by_name['ingestion_config_id']._serialized_options = b'\340A\002'
33
+ _globals['_INGESTIONCONFIG'].fields_by_name['asset_id']._loaded_options = None
34
+ _globals['_INGESTIONCONFIG'].fields_by_name['asset_id']._serialized_options = b'\340A\002'
35
+ _globals['_INGESTIONCONFIG'].fields_by_name['client_key']._loaded_options = None
36
+ _globals['_INGESTIONCONFIG'].fields_by_name['client_key']._serialized_options = b'\340A\001'
37
+ _globals['_FLOWCONFIG'].fields_by_name['name']._loaded_options = None
38
+ _globals['_FLOWCONFIG'].fields_by_name['name']._serialized_options = b'\340A\002'
39
+ _globals['_CHANNELCONFIG'].fields_by_name['name']._loaded_options = None
40
+ _globals['_CHANNELCONFIG'].fields_by_name['name']._serialized_options = b'\340A\002'
41
+ _globals['_CHANNELCONFIG'].fields_by_name['component']._loaded_options = None
42
+ _globals['_CHANNELCONFIG'].fields_by_name['component']._serialized_options = b'\340A\001'
43
+ _globals['_CHANNELCONFIG'].fields_by_name['unit']._loaded_options = None
44
+ _globals['_CHANNELCONFIG'].fields_by_name['unit']._serialized_options = b'\340A\001'
45
+ _globals['_CHANNELCONFIG'].fields_by_name['description']._loaded_options = None
46
+ _globals['_CHANNELCONFIG'].fields_by_name['description']._serialized_options = b'\340A\001'
47
+ _globals['_CHANNELCONFIG'].fields_by_name['data_type']._loaded_options = None
48
+ _globals['_CHANNELCONFIG'].fields_by_name['data_type']._serialized_options = b'\340A\002'
49
+ _globals['_GETINGESTIONCONFIGREQUEST'].fields_by_name['ingestion_config_id']._loaded_options = None
50
+ _globals['_GETINGESTIONCONFIGREQUEST'].fields_by_name['ingestion_config_id']._serialized_options = b'\340A\002'
51
+ _globals['_GETINGESTIONCONFIGRESPONSE'].fields_by_name['ingestion_config']._loaded_options = None
52
+ _globals['_GETINGESTIONCONFIGRESPONSE'].fields_by_name['ingestion_config']._serialized_options = b'\340A\002'
53
+ _globals['_CREATEINGESTIONCONFIGREQUEST'].fields_by_name['asset_name']._loaded_options = None
54
+ _globals['_CREATEINGESTIONCONFIGREQUEST'].fields_by_name['asset_name']._serialized_options = b'\340A\002'
55
+ _globals['_CREATEINGESTIONCONFIGREQUEST'].fields_by_name['organization_id']._loaded_options = None
56
+ _globals['_CREATEINGESTIONCONFIGREQUEST'].fields_by_name['organization_id']._serialized_options = b'\340A\001'
57
+ _globals['_CREATEINGESTIONCONFIGREQUEST'].fields_by_name['client_key']._loaded_options = None
58
+ _globals['_CREATEINGESTIONCONFIGREQUEST'].fields_by_name['client_key']._serialized_options = b'\340A\001'
59
+ _globals['_CREATEINGESTIONCONFIGRESPONSE'].fields_by_name['ingestion_config']._loaded_options = None
60
+ _globals['_CREATEINGESTIONCONFIGRESPONSE'].fields_by_name['ingestion_config']._serialized_options = b'\340A\002'
61
+ _globals['_LISTINGESTIONCONFIGSREQUEST'].fields_by_name['page_size']._loaded_options = None
62
+ _globals['_LISTINGESTIONCONFIGSREQUEST'].fields_by_name['page_size']._serialized_options = b'\340A\001'
63
+ _globals['_LISTINGESTIONCONFIGSREQUEST'].fields_by_name['page_token']._loaded_options = None
64
+ _globals['_LISTINGESTIONCONFIGSREQUEST'].fields_by_name['page_token']._serialized_options = b'\340A\001'
65
+ _globals['_LISTINGESTIONCONFIGSREQUEST'].fields_by_name['filter']._loaded_options = None
66
+ _globals['_LISTINGESTIONCONFIGSREQUEST'].fields_by_name['filter']._serialized_options = b'\340A\001'
67
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST'].fields_by_name['ingestion_config_id']._loaded_options = None
68
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST'].fields_by_name['ingestion_config_id']._serialized_options = b'\340A\002'
69
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST'].fields_by_name['page_size']._loaded_options = None
70
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST'].fields_by_name['page_size']._serialized_options = b'\340A\001'
71
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST'].fields_by_name['page_token']._loaded_options = None
72
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST'].fields_by_name['page_token']._serialized_options = b'\340A\001'
73
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST'].fields_by_name['filter']._loaded_options = None
74
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST'].fields_by_name['filter']._serialized_options = b'\340A\001'
75
+ _globals['_INGESTIONCONFIGSERVICE']._loaded_options = None
76
+ _globals['_INGESTIONCONFIGSERVICE']._serialized_options = b'\222A\267\001\022ZService to programmatically interact with [ingestion configs](/glossary#ingestion-config).\032Y\n+Read more about what ingestion configs are.\022*/ingestion/creating-amend-ingestion-config'
77
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['GetIngestionConfig']._loaded_options = None
78
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['GetIngestionConfig']._serialized_options = b'\222A4\022\022GetIngestionConfig\032\036Retrieves an ingestion config.\202\323\344\223\0021\022//api/v1/ingestion-configs/{ingestion_config_id}'
79
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['CreateIngestionConfig']._loaded_options = None
80
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['CreateIngestionConfig']._serialized_options = b'\222A4\022\025CreateIngestionConfig\032\033Create an ingestion config.\202\323\344\223\002\036\"\031/api/v1/ingestion-configs:\001*'
81
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['ListIngestionConfigs']._loaded_options = None
82
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['ListIngestionConfigs']._serialized_options = b'\222AH\022\024ListIngestionConfigs\0320List ingestion configs using an optional filter.\202\323\344\223\002\033\022\031/api/v1/ingestion-configs'
83
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['CreateIngestionConfigFlows']._loaded_options = None
84
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['CreateIngestionConfigFlows']._serialized_options = b'\222AN\022\032CreateIngestionConfigFlows\0320Create ingestion config [flows](/glossary#flow).\202\323\344\223\0027\"5/api/v1/ingestion-configs/{ingestion_config_id}/flows'
85
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['ListIngestionConfigFlows']._loaded_options = None
86
+ _globals['_INGESTIONCONFIGSERVICE'].methods_by_name['ListIngestionConfigFlows']._serialized_options = b'\222Ac\022\030ListIngestionConfigFlows\032GList ingestion config [flows](/glossary#flow) using an optional filter.\202\323\344\223\0027\0225/api/v1/ingestion-configs/{ingestion_config_id}/flows'
87
+ _globals['_INGESTIONCONFIG']._serialized_start=335
88
+ _globals['_INGESTIONCONFIG']._serialized_end=473
89
+ _globals['_FLOWCONFIG']._serialized_start=475
90
+ _globals['_FLOWCONFIG']._serialized_end=582
91
+ _globals['_CHANNELCONFIG']._serialized_start=585
92
+ _globals['_CHANNELCONFIG']._serialized_end=956
93
+ _globals['_GETINGESTIONCONFIGREQUEST']._serialized_start=958
94
+ _globals['_GETINGESTIONCONFIGREQUEST']._serialized_end=1038
95
+ _globals['_GETINGESTIONCONFIGRESPONSE']._serialized_start=1040
96
+ _globals['_GETINGESTIONCONFIGRESPONSE']._serialized_end=1160
97
+ _globals['_CREATEINGESTIONCONFIGREQUEST']._serialized_start=1163
98
+ _globals['_CREATEINGESTIONCONFIGREQUEST']._serialized_end=1372
99
+ _globals['_CREATEINGESTIONCONFIGRESPONSE']._serialized_start=1374
100
+ _globals['_CREATEINGESTIONCONFIGRESPONSE']._serialized_end=1497
101
+ _globals['_LISTINGESTIONCONFIGSREQUEST']._serialized_start=1500
102
+ _globals['_LISTINGESTIONCONFIGSREQUEST']._serialized_end=1628
103
+ _globals['_LISTINGESTIONCONFIGSRESPONSE']._serialized_start=1631
104
+ _globals['_LISTINGESTIONCONFIGSRESPONSE']._serialized_end=1790
105
+ _globals['_CREATEINGESTIONCONFIGFLOWSREQUEST']._serialized_start=1793
106
+ _globals['_CREATEINGESTIONCONFIGFLOWSREQUEST']._serialized_end=1937
107
+ _globals['_CREATEINGESTIONCONFIGFLOWSRESPONSE']._serialized_start=1939
108
+ _globals['_CREATEINGESTIONCONFIGFLOWSRESPONSE']._serialized_end=1975
109
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST']._serialized_start=1978
110
+ _globals['_LISTINGESTIONCONFIGFLOWSREQUEST']._serialized_end=2163
111
+ _globals['_LISTINGESTIONCONFIGFLOWSRESPONSE']._serialized_start=2166
112
+ _globals['_LISTINGESTIONCONFIGFLOWSRESPONSE']._serialized_end=2301
113
+ _globals['_INGESTIONCONFIGSERVICE']._serialized_start=2304
114
+ _globals['_INGESTIONCONFIGSERVICE']._serialized_end=3861
115
+ # @@protoc_insertion_point(module_scope)