viam-sdk 0.3.0__py3-none-linux_armv6l.whl → 0.66.0__py3-none-linux_armv6l.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.

Potentially problematic release.


This version of viam-sdk might be problematic. Click here for more details.

Files changed (452) hide show
  1. viam/__init__.py +29 -2
  2. viam/app/_logs.py +34 -0
  3. viam/app/app_client.py +2696 -0
  4. viam/app/billing_client.py +185 -0
  5. viam/app/data_client.py +2231 -0
  6. viam/app/ml_training_client.py +249 -0
  7. viam/app/provisioning_client.py +93 -0
  8. viam/app/viam_client.py +275 -0
  9. viam/components/arm/__init__.py +3 -26
  10. viam/components/arm/arm.py +123 -8
  11. viam/components/arm/client.py +37 -24
  12. viam/components/arm/service.py +35 -32
  13. viam/components/audio_in/__init__.py +24 -0
  14. viam/components/audio_in/audio_in.py +74 -0
  15. viam/components/audio_in/client.py +76 -0
  16. viam/components/audio_in/service.py +83 -0
  17. viam/components/audio_out/__init__.py +21 -0
  18. viam/components/audio_out/audio_out.py +72 -0
  19. viam/components/audio_out/client.py +67 -0
  20. viam/components/audio_out/service.py +63 -0
  21. viam/components/base/__init__.py +6 -11
  22. viam/components/base/base.py +134 -8
  23. viam/components/base/client.py +51 -23
  24. viam/components/base/service.py +33 -30
  25. viam/components/board/__init__.py +3 -12
  26. viam/components/board/board.py +247 -91
  27. viam/components/board/client.py +149 -83
  28. viam/components/board/service.py +63 -33
  29. viam/components/button/__init__.py +10 -0
  30. viam/components/button/button.py +41 -0
  31. viam/components/button/client.py +52 -0
  32. viam/components/button/service.py +46 -0
  33. viam/components/camera/__init__.py +3 -3
  34. viam/components/camera/camera.py +62 -27
  35. viam/components/camera/client.py +59 -27
  36. viam/components/camera/service.py +42 -65
  37. viam/components/component_base.py +28 -5
  38. viam/components/encoder/__init__.py +1 -1
  39. viam/components/encoder/client.py +25 -14
  40. viam/components/encoder/encoder.py +48 -10
  41. viam/components/encoder/service.py +14 -18
  42. viam/components/gantry/__init__.py +1 -13
  43. viam/components/gantry/client.py +80 -25
  44. viam/components/gantry/gantry.py +123 -9
  45. viam/components/gantry/service.py +51 -29
  46. viam/components/generic/__init__.py +1 -1
  47. viam/components/generic/client.py +21 -8
  48. viam/components/generic/generic.py +10 -2
  49. viam/components/generic/service.py +12 -7
  50. viam/components/gripper/__init__.py +3 -13
  51. viam/components/gripper/client.py +69 -21
  52. viam/components/gripper/gripper.py +123 -3
  53. viam/components/gripper/service.py +44 -22
  54. viam/components/input/__init__.py +1 -14
  55. viam/components/input/client.py +55 -23
  56. viam/components/input/input.py +106 -3
  57. viam/components/input/service.py +16 -21
  58. viam/components/motor/__init__.py +1 -21
  59. viam/components/motor/client.py +56 -33
  60. viam/components/motor/motor.py +127 -4
  61. viam/components/motor/service.py +33 -44
  62. viam/components/movement_sensor/__init__.py +1 -1
  63. viam/components/movement_sensor/client.py +102 -45
  64. viam/components/movement_sensor/movement_sensor.py +130 -61
  65. viam/components/movement_sensor/service.py +38 -41
  66. viam/components/pose_tracker/__init__.py +1 -1
  67. viam/components/pose_tracker/client.py +18 -7
  68. viam/components/pose_tracker/pose_tracker.py +4 -2
  69. viam/components/pose_tracker/service.py +12 -10
  70. viam/components/power_sensor/__init__.py +17 -0
  71. viam/components/power_sensor/client.py +86 -0
  72. viam/components/power_sensor/power_sensor.py +104 -0
  73. viam/components/power_sensor/service.py +72 -0
  74. viam/components/sensor/__init__.py +2 -1
  75. viam/components/sensor/client.py +26 -10
  76. viam/components/sensor/sensor.py +22 -4
  77. viam/components/sensor/service.py +20 -11
  78. viam/components/servo/__init__.py +1 -13
  79. viam/components/servo/client.py +47 -21
  80. viam/components/servo/service.py +15 -22
  81. viam/components/servo/servo.py +61 -2
  82. viam/components/switch/__init__.py +10 -0
  83. viam/components/switch/client.py +83 -0
  84. viam/components/switch/service.py +72 -0
  85. viam/components/switch/switch.py +98 -0
  86. viam/errors.py +10 -0
  87. viam/gen/app/agent/v1/agent_grpc.py +29 -0
  88. viam/gen/app/agent/v1/agent_pb2.py +47 -0
  89. viam/gen/app/agent/v1/agent_pb2.pyi +280 -0
  90. viam/gen/app/cloudslam/v1/__init__.py +0 -0
  91. viam/gen/app/cloudslam/v1/cloud_slam_grpc.py +70 -0
  92. viam/gen/app/cloudslam/v1/cloud_slam_pb2.py +54 -0
  93. viam/gen/app/cloudslam/v1/cloud_slam_pb2.pyi +384 -0
  94. viam/gen/app/data/v1/data_grpc.py +197 -8
  95. viam/gen/app/data/v1/data_pb2.py +238 -99
  96. viam/gen/app/data/v1/data_pb2.pyi +1222 -259
  97. viam/gen/app/datapipelines/__init__.py +0 -0
  98. viam/gen/app/datapipelines/v1/__init__.py +0 -0
  99. viam/gen/app/datapipelines/v1/data_pipelines_grpc.py +84 -0
  100. viam/gen/app/datapipelines/v1/data_pipelines_pb2.py +57 -0
  101. viam/gen/app/datapipelines/v1/data_pipelines_pb2.pyi +387 -0
  102. viam/gen/app/dataset/__init__.py +0 -0
  103. viam/gen/app/dataset/v1/__init__.py +0 -0
  104. viam/gen/app/dataset/v1/dataset_grpc.py +68 -0
  105. viam/gen/app/dataset/v1/dataset_pb2.py +44 -0
  106. viam/gen/app/dataset/v1/dataset_pb2.pyi +214 -0
  107. viam/gen/app/datasync/v1/data_sync_grpc.py +21 -4
  108. viam/gen/app/datasync/v1/data_sync_pb2.py +62 -128
  109. viam/gen/app/datasync/v1/data_sync_pb2.pyi +156 -199
  110. viam/gen/app/mlinference/__init__.py +0 -0
  111. viam/gen/app/mlinference/v1/__init__.py +0 -0
  112. viam/gen/app/mlinference/v1/ml_inference_grpc.py +28 -0
  113. viam/gen/app/mlinference/v1/ml_inference_pb2.py +23 -0
  114. viam/gen/app/mlinference/v1/ml_inference_pb2.pyi +63 -0
  115. viam/gen/app/mltraining/v1/ml_training_grpc.py +51 -3
  116. viam/gen/app/mltraining/v1/ml_training_pb2.py +135 -58
  117. viam/gen/app/mltraining/v1/ml_training_pb2.pyi +328 -39
  118. viam/gen/app/packages/v1/packages_grpc.py +15 -1
  119. viam/gen/app/packages/v1/packages_pb2.py +44 -64
  120. viam/gen/app/packages/v1/packages_pb2.pyi +75 -85
  121. viam/gen/app/v1/app_grpc.py +644 -3
  122. viam/gen/app/v1/app_pb2.py +695 -295
  123. viam/gen/app/v1/app_pb2.pyi +4488 -635
  124. viam/gen/app/v1/billing_grpc.py +53 -11
  125. viam/gen/app/v1/billing_pb2.py +94 -39
  126. viam/gen/app/v1/billing_pb2.pyi +391 -191
  127. viam/gen/app/v1/end_user_grpc.py +59 -0
  128. viam/gen/app/v1/end_user_pb2.py +55 -0
  129. viam/gen/app/v1/end_user_pb2.pyi +181 -0
  130. viam/gen/app/v1/robot_grpc.py +16 -1
  131. viam/gen/app/v1/robot_pb2.py +122 -94
  132. viam/gen/app/v1/robot_pb2.pyi +463 -123
  133. viam/gen/common/v1/common_pb2.py +87 -58
  134. viam/gen/common/v1/common_pb2.pyi +456 -149
  135. viam/gen/component/arm/v1/arm_grpc.py +58 -2
  136. viam/gen/component/arm/v1/arm_pb2.py +68 -51
  137. viam/gen/component/arm/v1/arm_pb2.pyi +108 -42
  138. viam/gen/component/audioin/__init__.py +0 -0
  139. viam/gen/component/audioin/v1/__init__.py +0 -0
  140. viam/gen/component/audioin/v1/audioin_grpc.py +54 -0
  141. viam/gen/component/audioin/v1/audioin_pb2.py +34 -0
  142. viam/gen/component/audioin/v1/audioin_pb2.pyi +94 -0
  143. viam/gen/component/audioinput/v1/audioinput_grpc.py +25 -2
  144. viam/gen/component/audioinput/v1/audioinput_pb2.py +36 -31
  145. viam/gen/component/audioinput/v1/audioinput_pb2.pyi +22 -22
  146. viam/gen/component/audioout/__init__.py +0 -0
  147. viam/gen/component/audioout/v1/__init__.py +0 -0
  148. viam/gen/component/audioout/v1/audioout_grpc.py +54 -0
  149. viam/gen/component/audioout/v1/audioout_pb2.py +32 -0
  150. viam/gen/component/audioout/v1/audioout_pb2.pyi +47 -0
  151. viam/gen/component/base/v1/base_grpc.py +42 -2
  152. viam/gen/component/base/v1/base_pb2.py +58 -47
  153. viam/gen/component/base/v1/base_pb2.pyi +65 -30
  154. viam/gen/component/board/v1/board_grpc.py +59 -7
  155. viam/gen/component/board/v1/board_pb2.py +94 -73
  156. viam/gen/component/board/v1/board_pb2.pyi +165 -68
  157. viam/gen/component/button/__init__.py +0 -0
  158. viam/gen/component/button/v1/__init__.py +0 -0
  159. viam/gen/component/button/v1/button_grpc.py +38 -0
  160. viam/gen/component/button/v1/button_pb2.py +28 -0
  161. viam/gen/component/button/v1/button_pb2.pyi +39 -0
  162. viam/gen/component/camera/v1/camera_grpc.py +38 -2
  163. viam/gen/component/camera/v1/camera_pb2.py +60 -43
  164. viam/gen/component/camera/v1/camera_pb2.pyi +191 -37
  165. viam/gen/component/encoder/v1/encoder_grpc.py +25 -2
  166. viam/gen/component/encoder/v1/encoder_pb2.py +36 -31
  167. viam/gen/component/encoder/v1/encoder_pb2.pyi +15 -15
  168. viam/gen/component/gantry/v1/gantry_grpc.py +47 -2
  169. viam/gen/component/gantry/v1/gantry_pb2.py +56 -43
  170. viam/gen/component/gantry/v1/gantry_pb2.pyi +67 -31
  171. viam/gen/component/generic/v1/generic_grpc.py +16 -2
  172. viam/gen/component/generic/v1/generic_pb2.py +16 -11
  173. viam/gen/component/gripper/v1/gripper_grpc.py +44 -2
  174. viam/gen/component/gripper/v1/gripper_pb2.py +48 -35
  175. viam/gen/component/gripper/v1/gripper_pb2.pyi +62 -24
  176. viam/gen/component/inputcontroller/v1/input_controller_grpc.py +28 -2
  177. viam/gen/component/inputcontroller/v1/input_controller_pb2.py +46 -41
  178. viam/gen/component/inputcontroller/v1/input_controller_pb2.pyi +32 -36
  179. viam/gen/component/motor/v1/motor_grpc.py +51 -2
  180. viam/gen/component/motor/v1/motor_pb2.py +78 -67
  181. viam/gen/component/motor/v1/motor_pb2.pyi +75 -46
  182. viam/gen/component/movementsensor/v1/movementsensor_grpc.py +48 -2
  183. viam/gen/component/movementsensor/v1/movementsensor_pb2.py +70 -63
  184. viam/gen/component/movementsensor/v1/movementsensor_pb2.pyi +84 -57
  185. viam/gen/component/posetracker/v1/pose_tracker_grpc.py +19 -2
  186. viam/gen/component/posetracker/v1/pose_tracker_pb2.py +26 -21
  187. viam/gen/component/posetracker/v1/pose_tracker_pb2.pyi +9 -13
  188. viam/gen/component/powersensor/__init__.py +0 -0
  189. viam/gen/component/powersensor/v1/__init__.py +0 -0
  190. viam/gen/component/powersensor/v1/powersensor_grpc.py +62 -0
  191. viam/gen/component/powersensor/v1/powersensor_pb2.py +42 -0
  192. viam/gen/component/powersensor/v1/powersensor_pb2.pyi +124 -0
  193. viam/gen/component/sensor/v1/sensor_grpc.py +21 -5
  194. viam/gen/component/sensor/v1/sensor_pb2.py +18 -22
  195. viam/gen/component/sensor/v1/sensor_pb2.pyi +1 -69
  196. viam/gen/component/servo/v1/servo_grpc.py +28 -2
  197. viam/gen/component/servo/v1/servo_pb2.py +42 -37
  198. viam/gen/component/servo/v1/servo_pb2.pyi +22 -26
  199. viam/gen/component/switch/__init__.py +0 -0
  200. viam/gen/component/switch/v1/__init__.py +0 -0
  201. viam/gen/component/switch/v1/switch_grpc.py +54 -0
  202. viam/gen/component/switch/v1/switch_pb2.py +40 -0
  203. viam/gen/component/switch/v1/switch_pb2.pyi +116 -0
  204. viam/gen/component/testecho/v1/testecho_grpc.py +15 -0
  205. viam/gen/component/testecho/v1/testecho_pb2.py +29 -26
  206. viam/gen/component/testecho/v1/testecho_pb2.pyi +16 -20
  207. viam/gen/module/v1/module_grpc.py +18 -0
  208. viam/gen/module/v1/module_pb2.py +36 -33
  209. viam/gen/module/v1/module_pb2.pyi +39 -34
  210. viam/gen/opentelemetry/__init__.py +0 -0
  211. viam/gen/opentelemetry/proto/__init__.py +0 -0
  212. viam/gen/opentelemetry/proto/common/__init__.py +0 -0
  213. viam/gen/opentelemetry/proto/common/v1/__init__.py +0 -0
  214. viam/gen/opentelemetry/proto/common/v1/common_grpc.py +0 -0
  215. viam/gen/opentelemetry/proto/common/v1/common_pb2.py +27 -0
  216. viam/gen/opentelemetry/proto/common/v1/common_pb2.pyi +208 -0
  217. viam/gen/opentelemetry/proto/resource/__init__.py +0 -0
  218. viam/gen/opentelemetry/proto/resource/v1/__init__.py +0 -0
  219. viam/gen/opentelemetry/proto/resource/v1/resource_grpc.py +0 -0
  220. viam/gen/opentelemetry/proto/resource/v1/resource_pb2.py +18 -0
  221. viam/gen/opentelemetry/proto/resource/v1/resource_pb2.pyi +59 -0
  222. viam/gen/opentelemetry/proto/trace/__init__.py +0 -0
  223. viam/gen/opentelemetry/proto/trace/v1/__init__.py +0 -0
  224. viam/gen/opentelemetry/proto/trace/v1/trace_grpc.py +0 -0
  225. viam/gen/opentelemetry/proto/trace/v1/trace_pb2.py +37 -0
  226. viam/gen/opentelemetry/proto/trace/v1/trace_pb2.pyi +402 -0
  227. viam/gen/proto/rpc/examples/echo/v1/echo_grpc.py +12 -0
  228. viam/gen/proto/rpc/examples/echo/v1/echo_pb2.py +25 -22
  229. viam/gen/proto/rpc/examples/echo/v1/echo_pb2.pyi +13 -17
  230. viam/gen/proto/rpc/examples/echoresource/v1/echoresource_grpc.py +12 -0
  231. viam/gen/proto/rpc/examples/echoresource/v1/echoresource_pb2.py +23 -20
  232. viam/gen/proto/rpc/examples/echoresource/v1/echoresource_pb2.pyi +13 -17
  233. viam/gen/proto/rpc/v1/auth_grpc.py +11 -0
  234. viam/gen/proto/rpc/v1/auth_pb2.py +27 -24
  235. viam/gen/proto/rpc/v1/auth_pb2.pyi +12 -16
  236. viam/gen/proto/rpc/webrtc/v1/grpc_pb2.py +35 -32
  237. viam/gen/proto/rpc/webrtc/v1/grpc_pb2.pyi +37 -41
  238. viam/gen/proto/rpc/webrtc/v1/signaling_grpc.py +15 -0
  239. viam/gen/proto/rpc/webrtc/v1/signaling_pb2.py +62 -57
  240. viam/gen/proto/rpc/webrtc/v1/signaling_pb2.pyi +78 -69
  241. viam/gen/provisioning/__init__.py +0 -0
  242. viam/gen/provisioning/v1/__init__.py +0 -0
  243. viam/gen/provisioning/v1/provisioning_grpc.py +59 -0
  244. viam/gen/provisioning/v1/provisioning_pb2.py +45 -0
  245. viam/gen/provisioning/v1/provisioning_pb2.pyi +229 -0
  246. viam/gen/robot/v1/robot_grpc.py +144 -15
  247. viam/gen/robot/v1/robot_pb2.py +193 -119
  248. viam/gen/robot/v1/robot_pb2.pyi +565 -137
  249. viam/gen/service/datamanager/v1/data_manager_grpc.py +20 -2
  250. viam/gen/service/datamanager/v1/data_manager_pb2.py +27 -17
  251. viam/gen/service/datamanager/v1/data_manager_pb2.pyi +52 -10
  252. viam/gen/service/discovery/__init__.py +0 -0
  253. viam/gen/service/discovery/v1/__init__.py +0 -0
  254. viam/gen/service/discovery/v1/discovery_grpc.py +39 -0
  255. viam/gen/service/discovery/v1/discovery_pb2.py +29 -0
  256. viam/gen/service/discovery/v1/discovery_pb2.pyi +51 -0
  257. viam/gen/service/generic/__init__.py +0 -0
  258. viam/gen/service/generic/v1/__init__.py +0 -0
  259. viam/gen/service/generic/v1/generic_grpc.py +29 -0
  260. viam/gen/service/generic/v1/generic_pb2.py +21 -0
  261. viam/gen/service/generic/v1/generic_pb2.pyi +6 -0
  262. viam/gen/service/mlmodel/v1/mlmodel_grpc.py +9 -0
  263. viam/gen/service/mlmodel/v1/mlmodel_pb2.py +76 -29
  264. viam/gen/service/mlmodel/v1/mlmodel_pb2.pyi +307 -28
  265. viam/gen/service/motion/v1/motion_grpc.py +42 -4
  266. viam/gen/service/motion/v1/motion_pb2.py +119 -51
  267. viam/gen/service/motion/v1/motion_pb2.pyi +595 -120
  268. viam/gen/service/navigation/v1/navigation_grpc.py +49 -1
  269. viam/gen/service/navigation/v1/navigation_pb2.py +76 -51
  270. viam/gen/service/navigation/v1/navigation_pb2.pyi +188 -33
  271. viam/gen/service/sensors/v1/sensors_grpc.py +12 -0
  272. viam/gen/service/sensors/v1/sensors_pb2.py +60 -29
  273. viam/gen/service/sensors/v1/sensors_pb2.pyi +18 -21
  274. viam/gen/service/shell/v1/shell_grpc.py +27 -1
  275. viam/gen/service/shell/v1/shell_pb2.py +37 -15
  276. viam/gen/service/shell/v1/shell_pb2.pyi +260 -7
  277. viam/gen/service/slam/v1/slam_grpc.py +24 -2
  278. viam/gen/service/slam/v1/slam_pb2.py +44 -30
  279. viam/gen/service/slam/v1/slam_pb2.pyi +128 -27
  280. viam/gen/service/video/__init__.py +0 -0
  281. viam/gen/service/video/v1/__init__.py +0 -0
  282. viam/gen/service/video/v1/video_grpc.py +39 -0
  283. viam/gen/service/video/v1/video_pb2.py +29 -0
  284. viam/gen/service/video/v1/video_pb2.pyi +72 -0
  285. viam/gen/service/vision/v1/vision_grpc.py +39 -1
  286. viam/gen/service/vision/v1/vision_pb2.py +61 -45
  287. viam/gen/service/vision/v1/vision_pb2.pyi +180 -41
  288. viam/gen/service/worldstatestore/__init__.py +0 -0
  289. viam/gen/service/worldstatestore/v1/__init__.py +0 -0
  290. viam/gen/service/worldstatestore/v1/world_state_store_grpc.py +55 -0
  291. viam/gen/service/worldstatestore/v1/world_state_store_pb2.py +39 -0
  292. viam/gen/service/worldstatestore/v1/world_state_store_pb2.pyi +171 -0
  293. viam/gen/stream/__init__.py +0 -0
  294. viam/gen/stream/v1/__init__.py +0 -0
  295. viam/gen/stream/v1/stream_grpc.py +59 -0
  296. viam/gen/stream/v1/stream_pb2.py +39 -0
  297. viam/gen/stream/v1/stream_pb2.pyi +161 -0
  298. viam/gen/tagger/v1/tagger_pb2.py +9 -8
  299. viam/logging.py +160 -17
  300. viam/media/__init__.py +0 -9
  301. viam/media/audio.py +22 -10
  302. viam/media/utils/__init__.py +0 -0
  303. viam/media/utils/pil/__init__.py +55 -0
  304. viam/media/{viam_rgba_plugin.py → utils/pil/viam_rgba_plugin.py} +10 -16
  305. viam/media/viam_rgba.py +10 -0
  306. viam/media/video.py +197 -73
  307. viam/module/module.py +191 -44
  308. viam/module/resource_data_consumer.py +41 -0
  309. viam/module/service.py +9 -1
  310. viam/module/types.py +4 -5
  311. viam/operations.py +4 -3
  312. viam/proto/app/__init__.py +361 -5
  313. viam/proto/app/agent/__init__.py +28 -0
  314. viam/proto/app/billing.py +51 -27
  315. viam/proto/app/cloudslam/__init__.py +48 -0
  316. viam/proto/app/data/__init__.py +103 -17
  317. viam/proto/app/datapipelines/__init__.py +56 -0
  318. viam/proto/app/dataset/__init__.py +40 -0
  319. viam/proto/app/datasync/__init__.py +11 -5
  320. viam/proto/app/end_user.py +34 -0
  321. viam/proto/app/mlinference/__init__.py +15 -0
  322. viam/proto/app/mltraining/__init__.py +25 -1
  323. viam/proto/app/packages/__init__.py +3 -3
  324. viam/proto/app/robot.py +19 -1
  325. viam/proto/common/__init__.py +35 -8
  326. viam/proto/component/arm/__init__.py +9 -1
  327. viam/proto/component/audioin/__init__.py +16 -0
  328. viam/proto/component/audioinput/__init__.py +3 -1
  329. viam/proto/component/audioout/__init__.py +15 -0
  330. viam/proto/component/base/__init__.py +7 -1
  331. viam/proto/component/board/__init__.py +13 -5
  332. viam/proto/component/button/__init__.py +15 -0
  333. viam/proto/component/camera/__init__.py +9 -1
  334. viam/proto/component/encoder/__init__.py +3 -1
  335. viam/proto/component/gantry/__init__.py +7 -1
  336. viam/proto/component/generic/__init__.py +3 -1
  337. viam/proto/component/gripper/__init__.py +7 -1
  338. viam/proto/component/inputcontroller/__init__.py +7 -1
  339. viam/proto/component/motor/__init__.py +7 -1
  340. viam/proto/component/movementsensor/__init__.py +7 -1
  341. viam/proto/component/posetracker/__init__.py +7 -1
  342. viam/proto/component/powersensor/__init__.py +30 -0
  343. viam/proto/component/sensor/__init__.py +3 -4
  344. viam/proto/component/servo/__init__.py +3 -1
  345. viam/proto/component/switch/__init__.py +26 -0
  346. viam/proto/component/testecho/__init__.py +3 -1
  347. viam/proto/module/__init__.py +3 -1
  348. viam/proto/opentelemetry/__init__.py +0 -0
  349. viam/proto/opentelemetry/proto/__init__.py +0 -0
  350. viam/proto/opentelemetry/proto/common/__init__.py +15 -0
  351. viam/proto/opentelemetry/proto/resource/__init__.py +10 -0
  352. viam/proto/opentelemetry/proto/trace/__init__.py +15 -0
  353. viam/proto/provisioning/__init__.py +42 -0
  354. viam/proto/robot/__init__.py +57 -9
  355. viam/proto/rpc/auth.py +11 -1
  356. viam/proto/rpc/examples/echo/__init__.py +3 -1
  357. viam/proto/rpc/examples/echoresource/__init__.py +7 -1
  358. viam/proto/rpc/webrtc/grpc.py +3 -1
  359. viam/proto/rpc/webrtc/signaling.py +5 -1
  360. viam/proto/service/datamanager/__init__.py +15 -2
  361. viam/proto/service/discovery/__init__.py +15 -0
  362. viam/proto/service/generic/__init__.py +12 -0
  363. viam/proto/service/mlmodel/__init__.py +27 -1
  364. viam/proto/service/motion/__init__.py +35 -5
  365. viam/proto/service/navigation/__init__.py +19 -1
  366. viam/proto/service/sensors/__init__.py +3 -1
  367. viam/proto/service/shell/__init__.py +25 -2
  368. viam/proto/service/slam/__init__.py +13 -1
  369. viam/proto/service/video/__init__.py +15 -0
  370. viam/proto/service/vision/__init__.py +11 -1
  371. viam/proto/service/worldstatestore/__init__.py +32 -0
  372. viam/proto/stream/__init__.py +36 -0
  373. viam/py.typed +0 -0
  374. viam/resource/base.py +45 -8
  375. viam/resource/easy_resource.py +149 -0
  376. viam/resource/manager.py +35 -14
  377. viam/resource/registry.py +40 -52
  378. viam/resource/rpc_client_base.py +33 -1
  379. viam/resource/rpc_service_base.py +15 -8
  380. viam/resource/types.py +39 -26
  381. viam/robot/client.py +458 -91
  382. viam/robot/service.py +13 -107
  383. viam/rpc/dial.py +133 -15
  384. viam/rpc/libviam_rust_utils.so +0 -0
  385. viam/rpc/server.py +59 -15
  386. viam/rpc/types.py +2 -4
  387. viam/services/discovery/__init__.py +12 -0
  388. viam/services/discovery/client.py +55 -0
  389. viam/services/discovery/discovery.py +52 -0
  390. viam/services/discovery/service.py +43 -0
  391. viam/services/generic/__init__.py +18 -0
  392. viam/services/generic/client.py +58 -0
  393. viam/services/generic/generic.py +58 -0
  394. viam/services/generic/service.py +29 -0
  395. viam/services/mlmodel/__init__.py +15 -1
  396. viam/services/mlmodel/client.py +20 -15
  397. viam/services/mlmodel/mlmodel.py +44 -7
  398. viam/services/mlmodel/service.py +9 -13
  399. viam/services/mlmodel/utils.py +101 -0
  400. viam/services/motion/__init__.py +15 -3
  401. viam/services/motion/client.py +109 -150
  402. viam/services/motion/motion.py +380 -0
  403. viam/services/motion/service.py +132 -0
  404. viam/services/navigation/__init__.py +11 -0
  405. viam/services/navigation/client.py +99 -0
  406. viam/services/navigation/navigation.py +250 -0
  407. viam/services/navigation/service.py +137 -0
  408. viam/services/service_base.py +43 -4
  409. viam/services/service_client_base.py +4 -4
  410. viam/services/slam/__init__.py +4 -1
  411. viam/services/slam/client.py +21 -11
  412. viam/services/slam/service.py +16 -19
  413. viam/services/slam/slam.py +66 -5
  414. viam/services/vision/__init__.py +8 -0
  415. viam/services/vision/client.py +115 -111
  416. viam/services/vision/service.py +143 -0
  417. viam/services/vision/vision.py +317 -0
  418. viam/services/worldstatestore/__init__.py +18 -0
  419. viam/services/worldstatestore/client.py +94 -0
  420. viam/services/worldstatestore/service.py +55 -0
  421. viam/services/worldstatestore/worldstatestore.py +90 -0
  422. viam/sessions_client.py +254 -0
  423. viam/streams.py +44 -0
  424. viam/utils.py +143 -15
  425. viam/version_metadata.py +4 -0
  426. viam_sdk-0.66.0.dist-info/METADATA +157 -0
  427. viam_sdk-0.66.0.dist-info/RECORD +531 -0
  428. {viam_sdk-0.3.0.dist-info → viam_sdk-0.66.0.dist-info}/WHEEL +1 -1
  429. viam/components/audio_input/__init__.py +0 -18
  430. viam/components/audio_input/audio_input.py +0 -79
  431. viam/components/audio_input/client.py +0 -60
  432. viam/components/audio_input/service.py +0 -118
  433. viam/components/types.py +0 -5
  434. viam/gen/app/model/v1/model_grpc.py +0 -39
  435. viam/gen/app/model/v1/model_pb2.py +0 -71
  436. viam/gen/app/model/v1/model_pb2.pyi +0 -285
  437. viam/gen/proto/rpc/examples/fileupload/v1/fileupload_grpc.py +0 -21
  438. viam/gen/proto/rpc/examples/fileupload/v1/fileupload_pb2.py +0 -18
  439. viam/gen/proto/rpc/examples/fileupload/v1/fileupload_pb2.pyi +0 -49
  440. viam/media/media.py +0 -53
  441. viam/proto/app/model/__init__.py +0 -40
  442. viam/proto/rpc/examples/fileupload/__init__.py +0 -13
  443. viam/services/sensors/__init__.py +0 -5
  444. viam/services/sensors/client.py +0 -63
  445. viam_sdk-0.3.0.dist-info/LICENSE +0 -202
  446. viam_sdk-0.3.0.dist-info/METADATA +0 -122
  447. viam_sdk-0.3.0.dist-info/RECORD +0 -372
  448. /viam/{gen/app/model → app}/__init__.py +0 -0
  449. /viam/gen/app/{model/v1 → agent}/__init__.py +0 -0
  450. /viam/gen/{proto/rpc/examples/fileupload → app/agent/v1}/__init__.py +0 -0
  451. /viam/gen/{proto/rpc/examples/fileupload/v1 → app/cloudslam}/__init__.py +0 -0
  452. /LICENSE → /viam_sdk-0.66.0.dist-info/licenses/LICENSE +0 -0
@@ -30,29 +30,12 @@ class _OrderEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumType
30
30
  ORDER_ASCENDING: _Order.ValueType
31
31
 
32
32
  class Order(_Order, metaclass=_OrderEnumTypeWrapper):
33
- ...
33
+ """Order specifies the order in which data is returned."""
34
34
  ORDER_UNSPECIFIED: Order.ValueType
35
35
  ORDER_DESCENDING: Order.ValueType
36
36
  ORDER_ASCENDING: Order.ValueType
37
37
  global___Order = Order
38
38
 
39
- class _Status:
40
- ValueType = typing.NewType('ValueType', builtins.int)
41
- V: typing_extensions.TypeAlias = ValueType
42
-
43
- class _StatusEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_Status.ValueType], builtins.type):
44
- DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
45
- STATUS_UNSPECIFIED: _Status.ValueType
46
- STATUS_PARTIAL_SUCCESS: _Status.ValueType
47
- STATUS_SUCCESS: _Status.ValueType
48
-
49
- class Status(_Status, metaclass=_StatusEnumTypeWrapper):
50
- ...
51
- STATUS_UNSPECIFIED: Status.ValueType
52
- STATUS_PARTIAL_SUCCESS: Status.ValueType
53
- STATUS_SUCCESS: Status.ValueType
54
- global___Status = Status
55
-
56
39
  class _TagsFilterType:
57
40
  ValueType = typing.NewType('ValueType', builtins.int)
58
41
  V: typing_extensions.TypeAlias = ValueType
@@ -61,97 +44,152 @@ class _TagsFilterTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper.
61
44
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
62
45
  TAGS_FILTER_TYPE_UNSPECIFIED: _TagsFilterType.ValueType
63
46
  TAGS_FILTER_TYPE_MATCH_BY_OR: _TagsFilterType.ValueType
64
- 'TAGS_FILTER_TYPE_MATCH_BY_OR specifies documents matched (using logical OR) on the tags field in the TagsFilter'
47
+ 'TAGS_FILTER_TYPE_MATCH_BY_OR specifies documents matched (using logical OR) on the tags field in the TagsFilter.'
65
48
  TAGS_FILTER_TYPE_TAGGED: _TagsFilterType.ValueType
66
- 'TAGS_FILTER_TYPE_TAGGED specifies that all tagged documents should be returned'
49
+ 'TAGS_FILTER_TYPE_TAGGED specifies that all tagged documents should be returned.'
67
50
  TAGS_FILTER_TYPE_UNTAGGED: _TagsFilterType.ValueType
68
- 'TAGS_FILTER_TYPE_UNTAGGED specifes that all untagged documents should be returned'
51
+ 'TAGS_FILTER_TYPE_UNTAGGED specifes that all untagged documents should be returned.'
69
52
 
70
53
  class TagsFilterType(_TagsFilterType, metaclass=_TagsFilterTypeEnumTypeWrapper):
71
- """TagsFilterType specifies how data can be filtered based on tags"""
54
+ """TagsFilterType specifies how data can be filtered based on tags."""
72
55
  TAGS_FILTER_TYPE_UNSPECIFIED: TagsFilterType.ValueType
73
56
  TAGS_FILTER_TYPE_MATCH_BY_OR: TagsFilterType.ValueType
74
- 'TAGS_FILTER_TYPE_MATCH_BY_OR specifies documents matched (using logical OR) on the tags field in the TagsFilter'
57
+ 'TAGS_FILTER_TYPE_MATCH_BY_OR specifies documents matched (using logical OR) on the tags field in the TagsFilter.'
75
58
  TAGS_FILTER_TYPE_TAGGED: TagsFilterType.ValueType
76
- 'TAGS_FILTER_TYPE_TAGGED specifies that all tagged documents should be returned'
59
+ 'TAGS_FILTER_TYPE_TAGGED specifies that all tagged documents should be returned.'
77
60
  TAGS_FILTER_TYPE_UNTAGGED: TagsFilterType.ValueType
78
- 'TAGS_FILTER_TYPE_UNTAGGED specifes that all untagged documents should be returned'
61
+ 'TAGS_FILTER_TYPE_UNTAGGED specifes that all untagged documents should be returned.'
79
62
  global___TagsFilterType = TagsFilterType
80
63
 
81
- @typing_extensions.final
82
- class Result(google.protobuf.message.Message):
83
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
84
- STATUS_FIELD_NUMBER: builtins.int
85
- MESSAGE_FIELD_NUMBER: builtins.int
86
- status: global___Status.ValueType
87
- message: builtins.str
88
- 'message is an aggregated error message string'
64
+ class _TabularDataSourceType:
65
+ ValueType = typing.NewType('ValueType', builtins.int)
66
+ V: typing_extensions.TypeAlias = ValueType
89
67
 
90
- def __init__(self, *, status: global___Status.ValueType=..., message: builtins.str=...) -> None:
91
- ...
68
+ class _TabularDataSourceTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_TabularDataSourceType.ValueType], builtins.type):
69
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
70
+ TABULAR_DATA_SOURCE_TYPE_UNSPECIFIED: _TabularDataSourceType.ValueType
71
+ TABULAR_DATA_SOURCE_TYPE_STANDARD: _TabularDataSourceType.ValueType
72
+ 'TABULAR_DATA_SOURCE_TYPE_STANDARD indicates reading from standard storage. This is\n the default option and available for all data synced to Viam.\n '
73
+ TABULAR_DATA_SOURCE_TYPE_HOT_STORAGE: _TabularDataSourceType.ValueType
74
+ 'TABULAR_DATA_SOURCE_TYPE_HOT_STORAGE indicates reading from hot storage. This is a\n premium feature requiring opting in specific data sources.\n See docs at https://docs.viam.com/data-ai/capture-data/advanced/advanced-data-capture-sync/#capture-to-the-hot-data-store\n '
75
+ TABULAR_DATA_SOURCE_TYPE_PIPELINE_SINK: _TabularDataSourceType.ValueType
76
+ 'TABULAR_DATA_SOURCE_TYPE_PIPELINE_SINK indicates reading the output data of\n a data pipeline. When using this, a pipeline ID needs to be specified.\n '
77
+
78
+ class TabularDataSourceType(_TabularDataSourceType, metaclass=_TabularDataSourceTypeEnumTypeWrapper):
79
+ """TabularDataSourceType specifies the data source type for TabularDataByMQL queries."""
80
+ TABULAR_DATA_SOURCE_TYPE_UNSPECIFIED: TabularDataSourceType.ValueType
81
+ TABULAR_DATA_SOURCE_TYPE_STANDARD: TabularDataSourceType.ValueType
82
+ 'TABULAR_DATA_SOURCE_TYPE_STANDARD indicates reading from standard storage. This is\nthe default option and available for all data synced to Viam.\n'
83
+ TABULAR_DATA_SOURCE_TYPE_HOT_STORAGE: TabularDataSourceType.ValueType
84
+ 'TABULAR_DATA_SOURCE_TYPE_HOT_STORAGE indicates reading from hot storage. This is a\npremium feature requiring opting in specific data sources.\nSee docs at https://docs.viam.com/data-ai/capture-data/advanced/advanced-data-capture-sync/#capture-to-the-hot-data-store\n'
85
+ TABULAR_DATA_SOURCE_TYPE_PIPELINE_SINK: TabularDataSourceType.ValueType
86
+ 'TABULAR_DATA_SOURCE_TYPE_PIPELINE_SINK indicates reading the output data of\na data pipeline. When using this, a pipeline ID needs to be specified.\n'
87
+ global___TabularDataSourceType = TabularDataSourceType
88
+
89
+ class _IndexableCollection:
90
+ ValueType = typing.NewType('ValueType', builtins.int)
91
+ V: typing_extensions.TypeAlias = ValueType
92
92
 
93
- def ClearField(self, field_name: typing_extensions.Literal['message', b'message', 'status', b'status']) -> None:
94
- ...
95
- global___Result = Result
93
+ class _IndexableCollectionEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_IndexableCollection.ValueType], builtins.type):
94
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
95
+ INDEXABLE_COLLECTION_UNSPECIFIED: _IndexableCollection.ValueType
96
+ INDEXABLE_COLLECTION_HOT_STORE: _IndexableCollection.ValueType
97
+ INDEXABLE_COLLECTION_PIPELINE_SINK: _IndexableCollection.ValueType
98
+
99
+ class IndexableCollection(_IndexableCollection, metaclass=_IndexableCollectionEnumTypeWrapper):
100
+ """IndexableCollection specifies the types of collections available for custom indexes"""
101
+ INDEXABLE_COLLECTION_UNSPECIFIED: IndexableCollection.ValueType
102
+ INDEXABLE_COLLECTION_HOT_STORE: IndexableCollection.ValueType
103
+ INDEXABLE_COLLECTION_PIPELINE_SINK: IndexableCollection.ValueType
104
+ global___IndexableCollection = IndexableCollection
105
+
106
+ class _IndexCreator:
107
+ ValueType = typing.NewType('ValueType', builtins.int)
108
+ V: typing_extensions.TypeAlias = ValueType
96
109
 
97
- @typing_extensions.final
110
+ class _IndexCreatorEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_IndexCreator.ValueType], builtins.type):
111
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
112
+ INDEX_CREATOR_UNSPECIFIED: _IndexCreator.ValueType
113
+ INDEX_CREATOR_VIAM: _IndexCreator.ValueType
114
+ INDEX_CREATOR_CUSTOMER: _IndexCreator.ValueType
115
+
116
+ class IndexCreator(_IndexCreator, metaclass=_IndexCreatorEnumTypeWrapper):
117
+ """IndexCreator specifies the entity that originally created the index"""
118
+ INDEX_CREATOR_UNSPECIFIED: IndexCreator.ValueType
119
+ INDEX_CREATOR_VIAM: IndexCreator.ValueType
120
+ INDEX_CREATOR_CUSTOMER: IndexCreator.ValueType
121
+ global___IndexCreator = IndexCreator
122
+
123
+ @typing.final
98
124
  class DataRequest(google.protobuf.message.Message):
125
+ """DataRequest encapsulates the filter for the data, a limit on the maximum results returned,
126
+ a last string associated with the last returned document, and the sorting order by time.
127
+ last is returned in the responses TabularDataByFilterResponse and BinaryDataByFilterResponse
128
+ from the API calls TabularDataByFilter and BinaryDataByFilter, respectively.
129
+ We can then use the last string from the previous API calls in the subsequent request
130
+ to get the next set of ordered documents.
131
+ """
99
132
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
100
133
  FILTER_FIELD_NUMBER: builtins.int
101
134
  LIMIT_FIELD_NUMBER: builtins.int
102
135
  LAST_FIELD_NUMBER: builtins.int
103
136
  SORT_ORDER_FIELD_NUMBER: builtins.int
137
+ limit: builtins.int
138
+ last: builtins.str
139
+ sort_order: global___Order.ValueType
104
140
 
105
141
  @property
106
142
  def filter(self) -> global___Filter:
107
143
  ...
108
- limit: builtins.int
109
- last: builtins.str
110
- sort_order: global___Order.ValueType
111
144
 
112
145
  def __init__(self, *, filter: global___Filter | None=..., limit: builtins.int=..., last: builtins.str=..., sort_order: global___Order.ValueType=...) -> None:
113
146
  ...
114
147
 
115
- def HasField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> builtins.bool:
148
+ def HasField(self, field_name: typing.Literal['filter', b'filter']) -> builtins.bool:
116
149
  ...
117
150
 
118
- def ClearField(self, field_name: typing_extensions.Literal['filter', b'filter', 'last', b'last', 'limit', b'limit', 'sort_order', b'sort_order']) -> None:
151
+ def ClearField(self, field_name: typing.Literal['filter', b'filter', 'last', b'last', 'limit', b'limit', 'sort_order', b'sort_order']) -> None:
119
152
  ...
120
153
  global___DataRequest = DataRequest
121
154
 
122
- @typing_extensions.final
155
+ @typing.final
123
156
  class Filter(google.protobuf.message.Message):
157
+ """Filter defines the fields over which we can filter data using a logic AND.
158
+ For example, if component_type and robot_id are specified, only data from that `robot_id` of
159
+ type `component_type` is returned. However, we logical OR over the specified tags and bounding
160
+ box labels, such that if component_type, robot_id, tagA, tagB are specified,
161
+ we return data from that `robot_id` of type `component_type` with `tagA` or `tagB`.
162
+ """
124
163
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
125
164
  COMPONENT_NAME_FIELD_NUMBER: builtins.int
126
165
  COMPONENT_TYPE_FIELD_NUMBER: builtins.int
127
- COMPONENT_MODEL_FIELD_NUMBER: builtins.int
128
166
  METHOD_FIELD_NUMBER: builtins.int
129
167
  ROBOT_NAME_FIELD_NUMBER: builtins.int
130
168
  ROBOT_ID_FIELD_NUMBER: builtins.int
131
169
  PART_NAME_FIELD_NUMBER: builtins.int
132
170
  PART_ID_FIELD_NUMBER: builtins.int
133
171
  LOCATION_IDS_FIELD_NUMBER: builtins.int
134
- ORG_IDS_FIELD_NUMBER: builtins.int
172
+ ORGANIZATION_IDS_FIELD_NUMBER: builtins.int
135
173
  MIME_TYPE_FIELD_NUMBER: builtins.int
136
174
  INTERVAL_FIELD_NUMBER: builtins.int
137
175
  TAGS_FILTER_FIELD_NUMBER: builtins.int
138
176
  BBOX_LABELS_FIELD_NUMBER: builtins.int
139
- TAGS_FIELD_NUMBER: builtins.int
177
+ DATASET_ID_FIELD_NUMBER: builtins.int
140
178
  component_name: builtins.str
141
179
  component_type: builtins.str
142
- component_model: builtins.str
143
180
  method: builtins.str
144
181
  robot_name: builtins.str
145
182
  robot_id: builtins.str
146
183
  part_name: builtins.str
147
184
  part_id: builtins.str
185
+ dataset_id: builtins.str
148
186
 
149
187
  @property
150
188
  def location_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
151
189
  ...
152
190
 
153
191
  @property
154
- def org_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
192
+ def organization_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
155
193
  ...
156
194
 
157
195
  @property
@@ -168,24 +206,21 @@ class Filter(google.protobuf.message.Message):
168
206
 
169
207
  @property
170
208
  def bbox_labels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
171
- ...
172
-
173
- @property
174
- def tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
175
- ...
209
+ """bbox_labels are used to match documents with the specified bounding box labels (using logical OR)."""
176
210
 
177
- def __init__(self, *, component_name: builtins.str=..., component_type: builtins.str=..., component_model: builtins.str=..., method: builtins.str=..., robot_name: builtins.str=..., robot_id: builtins.str=..., part_name: builtins.str=..., part_id: builtins.str=..., location_ids: collections.abc.Iterable[builtins.str] | None=..., org_ids: collections.abc.Iterable[builtins.str] | None=..., mime_type: collections.abc.Iterable[builtins.str] | None=..., interval: global___CaptureInterval | None=..., tags_filter: global___TagsFilter | None=..., bbox_labels: collections.abc.Iterable[builtins.str] | None=..., tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
211
+ def __init__(self, *, component_name: builtins.str=..., component_type: builtins.str=..., method: builtins.str=..., robot_name: builtins.str=..., robot_id: builtins.str=..., part_name: builtins.str=..., part_id: builtins.str=..., location_ids: collections.abc.Iterable[builtins.str] | None=..., organization_ids: collections.abc.Iterable[builtins.str] | None=..., mime_type: collections.abc.Iterable[builtins.str] | None=..., interval: global___CaptureInterval | None=..., tags_filter: global___TagsFilter | None=..., bbox_labels: collections.abc.Iterable[builtins.str] | None=..., dataset_id: builtins.str=...) -> None:
178
212
  ...
179
213
 
180
- def HasField(self, field_name: typing_extensions.Literal['interval', b'interval', 'tags_filter', b'tags_filter']) -> builtins.bool:
214
+ def HasField(self, field_name: typing.Literal['interval', b'interval', 'tags_filter', b'tags_filter']) -> builtins.bool:
181
215
  ...
182
216
 
183
- def ClearField(self, field_name: typing_extensions.Literal['bbox_labels', b'bbox_labels', 'component_model', b'component_model', 'component_name', b'component_name', 'component_type', b'component_type', 'interval', b'interval', 'location_ids', b'location_ids', 'method', b'method', 'mime_type', b'mime_type', 'org_ids', b'org_ids', 'part_id', b'part_id', 'part_name', b'part_name', 'robot_id', b'robot_id', 'robot_name', b'robot_name', 'tags', b'tags', 'tags_filter', b'tags_filter']) -> None:
217
+ def ClearField(self, field_name: typing.Literal['bbox_labels', b'bbox_labels', 'component_name', b'component_name', 'component_type', b'component_type', 'dataset_id', b'dataset_id', 'interval', b'interval', 'location_ids', b'location_ids', 'method', b'method', 'mime_type', b'mime_type', 'organization_ids', b'organization_ids', 'part_id', b'part_id', 'part_name', b'part_name', 'robot_id', b'robot_id', 'robot_name', b'robot_name', 'tags_filter', b'tags_filter']) -> None:
184
218
  ...
185
219
  global___Filter = Filter
186
220
 
187
- @typing_extensions.final
221
+ @typing.final
188
222
  class TagsFilter(google.protobuf.message.Message):
223
+ """TagsFilter defines the type of filtering and, if applicable, over which tags to perform a logical OR."""
189
224
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
190
225
  TYPE_FIELD_NUMBER: builtins.int
191
226
  TAGS_FIELD_NUMBER: builtins.int
@@ -193,21 +228,21 @@ class TagsFilter(google.protobuf.message.Message):
193
228
 
194
229
  @property
195
230
  def tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
196
- """Tags are used to match documents if `type` is UNSPECIFIED or MATCH_BY_ORG"""
231
+ """Tags are used to match documents if `type` is UNSPECIFIED or MATCH_BY_OR."""
197
232
 
198
233
  def __init__(self, *, type: global___TagsFilterType.ValueType=..., tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
199
234
  ...
200
235
 
201
- def ClearField(self, field_name: typing_extensions.Literal['tags', b'tags', 'type', b'type']) -> None:
236
+ def ClearField(self, field_name: typing.Literal['tags', b'tags', 'type', b'type']) -> None:
202
237
  ...
203
238
  global___TagsFilter = TagsFilter
204
239
 
205
- @typing_extensions.final
240
+ @typing.final
206
241
  class CaptureMetadata(google.protobuf.message.Message):
207
- """CaptureMetadata contains information on the settings used for the data capture"""
242
+ """CaptureMetadata contains information on the settings used for the data capture."""
208
243
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
209
244
 
210
- @typing_extensions.final
245
+ @typing.final
211
246
  class MethodParametersEntry(google.protobuf.message.Message):
212
247
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
213
248
  KEY_FIELD_NUMBER: builtins.int
@@ -221,34 +256,33 @@ class CaptureMetadata(google.protobuf.message.Message):
221
256
  def __init__(self, *, key: builtins.str=..., value: google.protobuf.any_pb2.Any | None=...) -> None:
222
257
  ...
223
258
 
224
- def HasField(self, field_name: typing_extensions.Literal['value', b'value']) -> builtins.bool:
259
+ def HasField(self, field_name: typing.Literal['value', b'value']) -> builtins.bool:
225
260
  ...
226
261
 
227
- def ClearField(self, field_name: typing_extensions.Literal['key', b'key', 'value', b'value']) -> None:
262
+ def ClearField(self, field_name: typing.Literal['key', b'key', 'value', b'value']) -> None:
228
263
  ...
229
- ORG_ID_FIELD_NUMBER: builtins.int
264
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
230
265
  LOCATION_ID_FIELD_NUMBER: builtins.int
231
266
  ROBOT_NAME_FIELD_NUMBER: builtins.int
232
267
  ROBOT_ID_FIELD_NUMBER: builtins.int
233
268
  PART_NAME_FIELD_NUMBER: builtins.int
234
269
  PART_ID_FIELD_NUMBER: builtins.int
235
270
  COMPONENT_TYPE_FIELD_NUMBER: builtins.int
236
- COMPONENT_MODEL_FIELD_NUMBER: builtins.int
237
271
  COMPONENT_NAME_FIELD_NUMBER: builtins.int
238
272
  METHOD_NAME_FIELD_NUMBER: builtins.int
239
273
  METHOD_PARAMETERS_FIELD_NUMBER: builtins.int
240
274
  TAGS_FIELD_NUMBER: builtins.int
241
275
  MIME_TYPE_FIELD_NUMBER: builtins.int
242
- org_id: builtins.str
276
+ organization_id: builtins.str
243
277
  location_id: builtins.str
244
278
  robot_name: builtins.str
245
279
  robot_id: builtins.str
246
280
  part_name: builtins.str
247
281
  part_id: builtins.str
248
282
  component_type: builtins.str
249
- component_model: builtins.str
250
283
  component_name: builtins.str
251
284
  method_name: builtins.str
285
+ mime_type: builtins.str
252
286
 
253
287
  @property
254
288
  def method_parameters(self) -> google.protobuf.internal.containers.MessageMap[builtins.str, google.protobuf.any_pb2.Any]:
@@ -257,18 +291,17 @@ class CaptureMetadata(google.protobuf.message.Message):
257
291
  @property
258
292
  def tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
259
293
  ...
260
- mime_type: builtins.str
261
294
 
262
- def __init__(self, *, org_id: builtins.str=..., location_id: builtins.str=..., robot_name: builtins.str=..., robot_id: builtins.str=..., part_name: builtins.str=..., part_id: builtins.str=..., component_type: builtins.str=..., component_model: builtins.str=..., component_name: builtins.str=..., method_name: builtins.str=..., method_parameters: collections.abc.Mapping[builtins.str, google.protobuf.any_pb2.Any] | None=..., tags: collections.abc.Iterable[builtins.str] | None=..., mime_type: builtins.str=...) -> None:
295
+ def __init__(self, *, organization_id: builtins.str=..., location_id: builtins.str=..., robot_name: builtins.str=..., robot_id: builtins.str=..., part_name: builtins.str=..., part_id: builtins.str=..., component_type: builtins.str=..., component_name: builtins.str=..., method_name: builtins.str=..., method_parameters: collections.abc.Mapping[builtins.str, google.protobuf.any_pb2.Any] | None=..., tags: collections.abc.Iterable[builtins.str] | None=..., mime_type: builtins.str=...) -> None:
263
296
  ...
264
297
 
265
- def ClearField(self, field_name: typing_extensions.Literal['component_model', b'component_model', 'component_name', b'component_name', 'component_type', b'component_type', 'location_id', b'location_id', 'method_name', b'method_name', 'method_parameters', b'method_parameters', 'mime_type', b'mime_type', 'org_id', b'org_id', 'part_id', b'part_id', 'part_name', b'part_name', 'robot_id', b'robot_id', 'robot_name', b'robot_name', 'tags', b'tags']) -> None:
298
+ def ClearField(self, field_name: typing.Literal['component_name', b'component_name', 'component_type', b'component_type', 'location_id', b'location_id', 'method_name', b'method_name', 'method_parameters', b'method_parameters', 'mime_type', b'mime_type', 'organization_id', b'organization_id', 'part_id', b'part_id', 'part_name', b'part_name', 'robot_id', b'robot_id', 'robot_name', b'robot_name', 'tags', b'tags']) -> None:
266
299
  ...
267
300
  global___CaptureMetadata = CaptureMetadata
268
301
 
269
- @typing_extensions.final
302
+ @typing.final
270
303
  class CaptureInterval(google.protobuf.message.Message):
271
- """CaptureInterval describes the start and end time of the capture in this file"""
304
+ """CaptureInterval describes the start and end time of the capture in this file."""
272
305
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
273
306
  START_FIELD_NUMBER: builtins.int
274
307
  END_FIELD_NUMBER: builtins.int
@@ -284,44 +317,49 @@ class CaptureInterval(google.protobuf.message.Message):
284
317
  def __init__(self, *, start: google.protobuf.timestamp_pb2.Timestamp | None=..., end: google.protobuf.timestamp_pb2.Timestamp | None=...) -> None:
285
318
  ...
286
319
 
287
- def HasField(self, field_name: typing_extensions.Literal['end', b'end', 'start', b'start']) -> builtins.bool:
320
+ def HasField(self, field_name: typing.Literal['end', b'end', 'start', b'start']) -> builtins.bool:
288
321
  ...
289
322
 
290
- def ClearField(self, field_name: typing_extensions.Literal['end', b'end', 'start', b'start']) -> None:
323
+ def ClearField(self, field_name: typing.Literal['end', b'end', 'start', b'start']) -> None:
291
324
  ...
292
325
  global___CaptureInterval = CaptureInterval
293
326
 
294
- @typing_extensions.final
327
+ @typing.final
295
328
  class TabularDataByFilterRequest(google.protobuf.message.Message):
296
- """TabularDataByFilterRequest requests tabular data based on filter values"""
329
+ """TabularDataByFilterRequest requests tabular data based on filter values."""
297
330
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
298
331
  DATA_REQUEST_FIELD_NUMBER: builtins.int
299
332
  COUNT_ONLY_FIELD_NUMBER: builtins.int
333
+ INCLUDE_INTERNAL_DATA_FIELD_NUMBER: builtins.int
334
+ count_only: builtins.bool
335
+ include_internal_data: builtins.bool
300
336
 
301
337
  @property
302
338
  def data_request(self) -> global___DataRequest:
303
339
  ...
304
- count_only: builtins.bool
305
340
 
306
- def __init__(self, *, data_request: global___DataRequest | None=..., count_only: builtins.bool=...) -> None:
341
+ def __init__(self, *, data_request: global___DataRequest | None=..., count_only: builtins.bool=..., include_internal_data: builtins.bool=...) -> None:
307
342
  ...
308
343
 
309
- def HasField(self, field_name: typing_extensions.Literal['data_request', b'data_request']) -> builtins.bool:
344
+ def HasField(self, field_name: typing.Literal['data_request', b'data_request']) -> builtins.bool:
310
345
  ...
311
346
 
312
- def ClearField(self, field_name: typing_extensions.Literal['count_only', b'count_only', 'data_request', b'data_request']) -> None:
347
+ def ClearField(self, field_name: typing.Literal['count_only', b'count_only', 'data_request', b'data_request', 'include_internal_data', b'include_internal_data']) -> None:
313
348
  ...
314
349
  global___TabularDataByFilterRequest = TabularDataByFilterRequest
315
350
 
316
- @typing_extensions.final
351
+ @typing.final
317
352
  class TabularDataByFilterResponse(google.protobuf.message.Message):
318
- """TabularDataByFilterResponse provides the data and metadata of tabular data"""
353
+ """TabularDataByFilterResponse provides the data and metadata of tabular data."""
319
354
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
320
355
  METADATA_FIELD_NUMBER: builtins.int
321
356
  DATA_FIELD_NUMBER: builtins.int
322
357
  COUNT_FIELD_NUMBER: builtins.int
323
358
  LAST_FIELD_NUMBER: builtins.int
324
359
  TOTAL_SIZE_BYTES_FIELD_NUMBER: builtins.int
360
+ count: builtins.int
361
+ last: builtins.str
362
+ total_size_bytes: builtins.int
325
363
 
326
364
  @property
327
365
  def metadata(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CaptureMetadata]:
@@ -330,29 +368,27 @@ class TabularDataByFilterResponse(google.protobuf.message.Message):
330
368
  @property
331
369
  def data(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TabularData]:
332
370
  ...
333
- count: builtins.int
334
- last: builtins.str
335
- total_size_bytes: builtins.int
336
371
 
337
372
  def __init__(self, *, metadata: collections.abc.Iterable[global___CaptureMetadata] | None=..., data: collections.abc.Iterable[global___TabularData] | None=..., count: builtins.int=..., last: builtins.str=..., total_size_bytes: builtins.int=...) -> None:
338
373
  ...
339
374
 
340
- def ClearField(self, field_name: typing_extensions.Literal['count', b'count', 'data', b'data', 'last', b'last', 'metadata', b'metadata', 'total_size_bytes', b'total_size_bytes']) -> None:
375
+ def ClearField(self, field_name: typing.Literal['count', b'count', 'data', b'data', 'last', b'last', 'metadata', b'metadata', 'total_size_bytes', b'total_size_bytes']) -> None:
341
376
  ...
342
377
  global___TabularDataByFilterResponse = TabularDataByFilterResponse
343
378
 
344
- @typing_extensions.final
379
+ @typing.final
345
380
  class TabularData(google.protobuf.message.Message):
381
+ """TabularData contains data and metadata associated with tabular data."""
346
382
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
347
383
  DATA_FIELD_NUMBER: builtins.int
348
384
  METADATA_INDEX_FIELD_NUMBER: builtins.int
349
385
  TIME_REQUESTED_FIELD_NUMBER: builtins.int
350
386
  TIME_RECEIVED_FIELD_NUMBER: builtins.int
387
+ metadata_index: builtins.int
351
388
 
352
389
  @property
353
390
  def data(self) -> google.protobuf.struct_pb2.Struct:
354
391
  ...
355
- metadata_index: builtins.int
356
392
 
357
393
  @property
358
394
  def time_requested(self) -> google.protobuf.timestamp_pb2.Timestamp:
@@ -365,15 +401,292 @@ class TabularData(google.protobuf.message.Message):
365
401
  def __init__(self, *, data: google.protobuf.struct_pb2.Struct | None=..., metadata_index: builtins.int=..., time_requested: google.protobuf.timestamp_pb2.Timestamp | None=..., time_received: google.protobuf.timestamp_pb2.Timestamp | None=...) -> None:
366
402
  ...
367
403
 
368
- def HasField(self, field_name: typing_extensions.Literal['data', b'data', 'time_received', b'time_received', 'time_requested', b'time_requested']) -> builtins.bool:
404
+ def HasField(self, field_name: typing.Literal['data', b'data', 'time_received', b'time_received', 'time_requested', b'time_requested']) -> builtins.bool:
369
405
  ...
370
406
 
371
- def ClearField(self, field_name: typing_extensions.Literal['data', b'data', 'metadata_index', b'metadata_index', 'time_received', b'time_received', 'time_requested', b'time_requested']) -> None:
407
+ def ClearField(self, field_name: typing.Literal['data', b'data', 'metadata_index', b'metadata_index', 'time_received', b'time_received', 'time_requested', b'time_requested']) -> None:
372
408
  ...
373
409
  global___TabularData = TabularData
374
410
 
375
- @typing_extensions.final
411
+ @typing.final
412
+ class TabularDataBySQLRequest(google.protobuf.message.Message):
413
+ """TabularDataBySQLRequest requests tabular data using a SQL query."""
414
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
415
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
416
+ SQL_QUERY_FIELD_NUMBER: builtins.int
417
+ organization_id: builtins.str
418
+ sql_query: builtins.str
419
+ 'sql_query accepts any valid SQL SELECT statement. Tabular data is held in a database\n called "sensorData" and a table called readings, so queries should select from "readings"\n or "sensorData.readings".\n '
420
+
421
+ def __init__(self, *, organization_id: builtins.str=..., sql_query: builtins.str=...) -> None:
422
+ ...
423
+
424
+ def ClearField(self, field_name: typing.Literal['organization_id', b'organization_id', 'sql_query', b'sql_query']) -> None:
425
+ ...
426
+ global___TabularDataBySQLRequest = TabularDataBySQLRequest
427
+
428
+ @typing.final
429
+ class TabularDataBySQLResponse(google.protobuf.message.Message):
430
+ """TabularDataBySQLResponse provides unified tabular data and metadata, queried with SQL."""
431
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
432
+ RAW_DATA_FIELD_NUMBER: builtins.int
433
+
434
+ @property
435
+ def raw_data(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]:
436
+ ...
437
+
438
+ def __init__(self, *, raw_data: collections.abc.Iterable[builtins.bytes] | None=...) -> None:
439
+ ...
440
+
441
+ def ClearField(self, field_name: typing.Literal['raw_data', b'raw_data']) -> None:
442
+ ...
443
+ global___TabularDataBySQLResponse = TabularDataBySQLResponse
444
+
445
+ @typing.final
446
+ class TabularDataSource(google.protobuf.message.Message):
447
+ """TabularDataSource specifies the data source for user queries to execute on."""
448
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
449
+ TYPE_FIELD_NUMBER: builtins.int
450
+ PIPELINE_ID_FIELD_NUMBER: builtins.int
451
+ type: global___TabularDataSourceType.ValueType
452
+ pipeline_id: builtins.str
453
+ 'pipeline_id is the ID of the pipeline to query. Required when using\n TABULAR_DATA_SOURCE_TYPE_PIPELINE_SINK.\n '
454
+
455
+ def __init__(self, *, type: global___TabularDataSourceType.ValueType=..., pipeline_id: builtins.str | None=...) -> None:
456
+ ...
457
+
458
+ def HasField(self, field_name: typing.Literal['_pipeline_id', b'_pipeline_id', 'pipeline_id', b'pipeline_id']) -> builtins.bool:
459
+ ...
460
+
461
+ def ClearField(self, field_name: typing.Literal['_pipeline_id', b'_pipeline_id', 'pipeline_id', b'pipeline_id', 'type', b'type']) -> None:
462
+ ...
463
+
464
+ def WhichOneof(self, oneof_group: typing.Literal['_pipeline_id', b'_pipeline_id']) -> typing.Literal['pipeline_id'] | None:
465
+ ...
466
+ global___TabularDataSource = TabularDataSource
467
+
468
+ @typing.final
469
+ class TabularDataByMQLRequest(google.protobuf.message.Message):
470
+ """TabularDataByMQLRequest requests tabular data using an MQL query."""
471
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
472
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
473
+ MQL_BINARY_FIELD_NUMBER: builtins.int
474
+ USE_RECENT_DATA_FIELD_NUMBER: builtins.int
475
+ DATA_SOURCE_FIELD_NUMBER: builtins.int
476
+ QUERY_PREFIX_NAME_FIELD_NUMBER: builtins.int
477
+ organization_id: builtins.str
478
+ use_recent_data: builtins.bool
479
+ 'Deprecated, please use TABULAR_DATA_SOURCE_TYPE_HOT_STORAGE instead.'
480
+ query_prefix_name: builtins.str
481
+ 'query_prefix_name is an optional field that can be used to specify a saved query to run'
482
+
483
+ @property
484
+ def mql_binary(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]:
485
+ """mql_binary accepts a MongoDB aggregation pipeline as a list of BSON documents, where each
486
+ document is one stage in the pipeline. The pipeline is run on the "sensorData.readings"
487
+ namespace, which holds the Viam organization's tabular data.
488
+ """
489
+
490
+ @property
491
+ def data_source(self) -> global___TabularDataSource:
492
+ """data_source is an optional field that can be used to specify the data source for the query.
493
+ If not specified, the query will run on "standard" storage.
494
+ """
495
+
496
+ def __init__(self, *, organization_id: builtins.str=..., mql_binary: collections.abc.Iterable[builtins.bytes] | None=..., use_recent_data: builtins.bool | None=..., data_source: global___TabularDataSource | None=..., query_prefix_name: builtins.str | None=...) -> None:
497
+ ...
498
+
499
+ def HasField(self, field_name: typing.Literal['_data_source', b'_data_source', '_query_prefix_name', b'_query_prefix_name', '_use_recent_data', b'_use_recent_data', 'data_source', b'data_source', 'query_prefix_name', b'query_prefix_name', 'use_recent_data', b'use_recent_data']) -> builtins.bool:
500
+ ...
501
+
502
+ def ClearField(self, field_name: typing.Literal['_data_source', b'_data_source', '_query_prefix_name', b'_query_prefix_name', '_use_recent_data', b'_use_recent_data', 'data_source', b'data_source', 'mql_binary', b'mql_binary', 'organization_id', b'organization_id', 'query_prefix_name', b'query_prefix_name', 'use_recent_data', b'use_recent_data']) -> None:
503
+ ...
504
+
505
+ @typing.overload
506
+ def WhichOneof(self, oneof_group: typing.Literal['_data_source', b'_data_source']) -> typing.Literal['data_source'] | None:
507
+ ...
508
+
509
+ @typing.overload
510
+ def WhichOneof(self, oneof_group: typing.Literal['_query_prefix_name', b'_query_prefix_name']) -> typing.Literal['query_prefix_name'] | None:
511
+ ...
512
+
513
+ @typing.overload
514
+ def WhichOneof(self, oneof_group: typing.Literal['_use_recent_data', b'_use_recent_data']) -> typing.Literal['use_recent_data'] | None:
515
+ ...
516
+ global___TabularDataByMQLRequest = TabularDataByMQLRequest
517
+
518
+ @typing.final
519
+ class TabularDataByMQLResponse(google.protobuf.message.Message):
520
+ """TabularDataByMQLResponse provides unified tabular data and metadata, queried with MQL."""
521
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
522
+ RAW_DATA_FIELD_NUMBER: builtins.int
523
+
524
+ @property
525
+ def raw_data(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]:
526
+ ...
527
+
528
+ def __init__(self, *, raw_data: collections.abc.Iterable[builtins.bytes] | None=...) -> None:
529
+ ...
530
+
531
+ def ClearField(self, field_name: typing.Literal['raw_data', b'raw_data']) -> None:
532
+ ...
533
+ global___TabularDataByMQLResponse = TabularDataByMQLResponse
534
+
535
+ @typing.final
536
+ class ExportTabularDataRequest(google.protobuf.message.Message):
537
+ """ExportTabularDataRequest requests tabular data from the specified data source."""
538
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
539
+ PART_ID_FIELD_NUMBER: builtins.int
540
+ RESOURCE_NAME_FIELD_NUMBER: builtins.int
541
+ RESOURCE_SUBTYPE_FIELD_NUMBER: builtins.int
542
+ METHOD_NAME_FIELD_NUMBER: builtins.int
543
+ INTERVAL_FIELD_NUMBER: builtins.int
544
+ ADDITIONAL_PARAMETERS_FIELD_NUMBER: builtins.int
545
+ part_id: builtins.str
546
+ resource_name: builtins.str
547
+ resource_subtype: builtins.str
548
+ method_name: builtins.str
549
+
550
+ @property
551
+ def interval(self) -> global___CaptureInterval:
552
+ ...
553
+
554
+ @property
555
+ def additional_parameters(self) -> google.protobuf.struct_pb2.Struct:
556
+ ...
557
+
558
+ def __init__(self, *, part_id: builtins.str=..., resource_name: builtins.str=..., resource_subtype: builtins.str=..., method_name: builtins.str=..., interval: global___CaptureInterval | None=..., additional_parameters: google.protobuf.struct_pb2.Struct | None=...) -> None:
559
+ ...
560
+
561
+ def HasField(self, field_name: typing.Literal['_additional_parameters', b'_additional_parameters', 'additional_parameters', b'additional_parameters', 'interval', b'interval']) -> builtins.bool:
562
+ ...
563
+
564
+ def ClearField(self, field_name: typing.Literal['_additional_parameters', b'_additional_parameters', 'additional_parameters', b'additional_parameters', 'interval', b'interval', 'method_name', b'method_name', 'part_id', b'part_id', 'resource_name', b'resource_name', 'resource_subtype', b'resource_subtype']) -> None:
565
+ ...
566
+
567
+ def WhichOneof(self, oneof_group: typing.Literal['_additional_parameters', b'_additional_parameters']) -> typing.Literal['additional_parameters'] | None:
568
+ ...
569
+ global___ExportTabularDataRequest = ExportTabularDataRequest
570
+
571
+ @typing.final
572
+ class ExportTabularDataResponse(google.protobuf.message.Message):
573
+ """ExportTabularDataResponse provides unified tabular data and metadata for a single data point from the specified data source."""
574
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
575
+ PART_ID_FIELD_NUMBER: builtins.int
576
+ RESOURCE_NAME_FIELD_NUMBER: builtins.int
577
+ RESOURCE_SUBTYPE_FIELD_NUMBER: builtins.int
578
+ METHOD_NAME_FIELD_NUMBER: builtins.int
579
+ TIME_CAPTURED_FIELD_NUMBER: builtins.int
580
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
581
+ LOCATION_ID_FIELD_NUMBER: builtins.int
582
+ ROBOT_NAME_FIELD_NUMBER: builtins.int
583
+ ROBOT_ID_FIELD_NUMBER: builtins.int
584
+ PART_NAME_FIELD_NUMBER: builtins.int
585
+ METHOD_PARAMETERS_FIELD_NUMBER: builtins.int
586
+ TAGS_FIELD_NUMBER: builtins.int
587
+ PAYLOAD_FIELD_NUMBER: builtins.int
588
+ part_id: builtins.str
589
+ resource_name: builtins.str
590
+ resource_subtype: builtins.str
591
+ method_name: builtins.str
592
+ organization_id: builtins.str
593
+ location_id: builtins.str
594
+ robot_name: builtins.str
595
+ robot_id: builtins.str
596
+ part_name: builtins.str
597
+
598
+ @property
599
+ def time_captured(self) -> google.protobuf.timestamp_pb2.Timestamp:
600
+ ...
601
+
602
+ @property
603
+ def method_parameters(self) -> google.protobuf.struct_pb2.Struct:
604
+ ...
605
+
606
+ @property
607
+ def tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
608
+ ...
609
+
610
+ @property
611
+ def payload(self) -> google.protobuf.struct_pb2.Struct:
612
+ ...
613
+
614
+ def __init__(self, *, part_id: builtins.str=..., resource_name: builtins.str=..., resource_subtype: builtins.str=..., method_name: builtins.str=..., time_captured: google.protobuf.timestamp_pb2.Timestamp | None=..., organization_id: builtins.str=..., location_id: builtins.str=..., robot_name: builtins.str=..., robot_id: builtins.str=..., part_name: builtins.str=..., method_parameters: google.protobuf.struct_pb2.Struct | None=..., tags: collections.abc.Iterable[builtins.str] | None=..., payload: google.protobuf.struct_pb2.Struct | None=...) -> None:
615
+ ...
616
+
617
+ def HasField(self, field_name: typing.Literal['method_parameters', b'method_parameters', 'payload', b'payload', 'time_captured', b'time_captured']) -> builtins.bool:
618
+ ...
619
+
620
+ def ClearField(self, field_name: typing.Literal['location_id', b'location_id', 'method_name', b'method_name', 'method_parameters', b'method_parameters', 'organization_id', b'organization_id', 'part_id', b'part_id', 'part_name', b'part_name', 'payload', b'payload', 'resource_name', b'resource_name', 'resource_subtype', b'resource_subtype', 'robot_id', b'robot_id', 'robot_name', b'robot_name', 'tags', b'tags', 'time_captured', b'time_captured']) -> None:
621
+ ...
622
+ global___ExportTabularDataResponse = ExportTabularDataResponse
623
+
624
+ @typing.final
625
+ class GetLatestTabularDataRequest(google.protobuf.message.Message):
626
+ """GetLatestTabularDataRequest requests the most recent tabular data captured from the specified data source."""
627
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
628
+ PART_ID_FIELD_NUMBER: builtins.int
629
+ RESOURCE_NAME_FIELD_NUMBER: builtins.int
630
+ METHOD_NAME_FIELD_NUMBER: builtins.int
631
+ RESOURCE_SUBTYPE_FIELD_NUMBER: builtins.int
632
+ ADDITIONAL_PARAMETERS_FIELD_NUMBER: builtins.int
633
+ part_id: builtins.str
634
+ resource_name: builtins.str
635
+ method_name: builtins.str
636
+ resource_subtype: builtins.str
637
+
638
+ @property
639
+ def additional_parameters(self) -> google.protobuf.struct_pb2.Struct:
640
+ ...
641
+
642
+ def __init__(self, *, part_id: builtins.str=..., resource_name: builtins.str=..., method_name: builtins.str=..., resource_subtype: builtins.str=..., additional_parameters: google.protobuf.struct_pb2.Struct | None=...) -> None:
643
+ ...
644
+
645
+ def HasField(self, field_name: typing.Literal['_additional_parameters', b'_additional_parameters', 'additional_parameters', b'additional_parameters']) -> builtins.bool:
646
+ ...
647
+
648
+ def ClearField(self, field_name: typing.Literal['_additional_parameters', b'_additional_parameters', 'additional_parameters', b'additional_parameters', 'method_name', b'method_name', 'part_id', b'part_id', 'resource_name', b'resource_name', 'resource_subtype', b'resource_subtype']) -> None:
649
+ ...
650
+
651
+ def WhichOneof(self, oneof_group: typing.Literal['_additional_parameters', b'_additional_parameters']) -> typing.Literal['additional_parameters'] | None:
652
+ ...
653
+ global___GetLatestTabularDataRequest = GetLatestTabularDataRequest
654
+
655
+ @typing.final
656
+ class GetLatestTabularDataResponse(google.protobuf.message.Message):
657
+ """GetLatestTabularDataResponse provides the data, time synced, and time captured of the most recent tabular data captured
658
+ from the requested data source, as long as it was synced within the last year.
659
+ """
660
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
661
+ TIME_CAPTURED_FIELD_NUMBER: builtins.int
662
+ TIME_SYNCED_FIELD_NUMBER: builtins.int
663
+ PAYLOAD_FIELD_NUMBER: builtins.int
664
+
665
+ @property
666
+ def time_captured(self) -> google.protobuf.timestamp_pb2.Timestamp:
667
+ ...
668
+
669
+ @property
670
+ def time_synced(self) -> google.protobuf.timestamp_pb2.Timestamp:
671
+ ...
672
+
673
+ @property
674
+ def payload(self) -> google.protobuf.struct_pb2.Struct:
675
+ ...
676
+
677
+ def __init__(self, *, time_captured: google.protobuf.timestamp_pb2.Timestamp | None=..., time_synced: google.protobuf.timestamp_pb2.Timestamp | None=..., payload: google.protobuf.struct_pb2.Struct | None=...) -> None:
678
+ ...
679
+
680
+ def HasField(self, field_name: typing.Literal['payload', b'payload', 'time_captured', b'time_captured', 'time_synced', b'time_synced']) -> builtins.bool:
681
+ ...
682
+
683
+ def ClearField(self, field_name: typing.Literal['payload', b'payload', 'time_captured', b'time_captured', 'time_synced', b'time_synced']) -> None:
684
+ ...
685
+ global___GetLatestTabularDataResponse = GetLatestTabularDataResponse
686
+
687
+ @typing.final
376
688
  class BinaryData(google.protobuf.message.Message):
689
+ """BinaryData contains data and metadata associated with binary data."""
377
690
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
378
691
  BINARY_FIELD_NUMBER: builtins.int
379
692
  METADATA_FIELD_NUMBER: builtins.int
@@ -386,98 +699,124 @@ class BinaryData(google.protobuf.message.Message):
386
699
  def __init__(self, *, binary: builtins.bytes=..., metadata: global___BinaryMetadata | None=...) -> None:
387
700
  ...
388
701
 
389
- def HasField(self, field_name: typing_extensions.Literal['metadata', b'metadata']) -> builtins.bool:
702
+ def HasField(self, field_name: typing.Literal['metadata', b'metadata']) -> builtins.bool:
390
703
  ...
391
704
 
392
- def ClearField(self, field_name: typing_extensions.Literal['binary', b'binary', 'metadata', b'metadata']) -> None:
705
+ def ClearField(self, field_name: typing.Literal['binary', b'binary', 'metadata', b'metadata']) -> None:
393
706
  ...
394
707
  global___BinaryData = BinaryData
395
708
 
396
- @typing_extensions.final
709
+ @typing.final
397
710
  class BinaryDataByFilterRequest(google.protobuf.message.Message):
398
- """BinaryDataByFilterRequest requests the data and metadata of binary (image + file) data when a filter is provided"""
711
+ """BinaryDataByFilterRequest requests the data and metadata of binary (image + file) data when a filter is provided."""
399
712
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
400
713
  DATA_REQUEST_FIELD_NUMBER: builtins.int
401
714
  INCLUDE_BINARY_FIELD_NUMBER: builtins.int
402
715
  COUNT_ONLY_FIELD_NUMBER: builtins.int
716
+ INCLUDE_INTERNAL_DATA_FIELD_NUMBER: builtins.int
717
+ include_binary: builtins.bool
718
+ count_only: builtins.bool
719
+ include_internal_data: builtins.bool
403
720
 
404
721
  @property
405
722
  def data_request(self) -> global___DataRequest:
406
723
  ...
407
- include_binary: builtins.bool
408
- count_only: builtins.bool
409
724
 
410
- def __init__(self, *, data_request: global___DataRequest | None=..., include_binary: builtins.bool=..., count_only: builtins.bool=...) -> None:
725
+ def __init__(self, *, data_request: global___DataRequest | None=..., include_binary: builtins.bool=..., count_only: builtins.bool=..., include_internal_data: builtins.bool=...) -> None:
411
726
  ...
412
727
 
413
- def HasField(self, field_name: typing_extensions.Literal['data_request', b'data_request']) -> builtins.bool:
728
+ def HasField(self, field_name: typing.Literal['data_request', b'data_request']) -> builtins.bool:
414
729
  ...
415
730
 
416
- def ClearField(self, field_name: typing_extensions.Literal['count_only', b'count_only', 'data_request', b'data_request', 'include_binary', b'include_binary']) -> None:
731
+ def ClearField(self, field_name: typing.Literal['count_only', b'count_only', 'data_request', b'data_request', 'include_binary', b'include_binary', 'include_internal_data', b'include_internal_data']) -> None:
417
732
  ...
418
733
  global___BinaryDataByFilterRequest = BinaryDataByFilterRequest
419
734
 
420
- @typing_extensions.final
735
+ @typing.final
421
736
  class BinaryDataByFilterResponse(google.protobuf.message.Message):
422
- """BinaryDataByFilterResponse provides the data and metadata of binary (image + file) data when a filter is provided"""
737
+ """BinaryDataByFilterResponse provides the data and metadata of binary (image + file) data when a filter is provided."""
423
738
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
424
739
  DATA_FIELD_NUMBER: builtins.int
425
740
  COUNT_FIELD_NUMBER: builtins.int
426
741
  LAST_FIELD_NUMBER: builtins.int
742
+ TOTAL_SIZE_BYTES_FIELD_NUMBER: builtins.int
743
+ count: builtins.int
744
+ last: builtins.str
745
+ total_size_bytes: builtins.int
427
746
 
428
747
  @property
429
748
  def data(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BinaryData]:
430
749
  ...
431
- count: builtins.int
432
- last: builtins.str
433
750
 
434
- def __init__(self, *, data: collections.abc.Iterable[global___BinaryData] | None=..., count: builtins.int=..., last: builtins.str=...) -> None:
751
+ def __init__(self, *, data: collections.abc.Iterable[global___BinaryData] | None=..., count: builtins.int=..., last: builtins.str=..., total_size_bytes: builtins.int=...) -> None:
435
752
  ...
436
753
 
437
- def ClearField(self, field_name: typing_extensions.Literal['count', b'count', 'data', b'data', 'last', b'last']) -> None:
754
+ def ClearField(self, field_name: typing.Literal['count', b'count', 'data', b'data', 'last', b'last', 'total_size_bytes', b'total_size_bytes']) -> None:
438
755
  ...
439
756
  global___BinaryDataByFilterResponse = BinaryDataByFilterResponse
440
757
 
441
- @typing_extensions.final
758
+ @typing.final
759
+ class BinaryID(google.protobuf.message.Message):
760
+ """BinaryID is the unique identifier for a file that one can request to be retrieved or modified."""
761
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
762
+ FILE_ID_FIELD_NUMBER: builtins.int
763
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
764
+ LOCATION_ID_FIELD_NUMBER: builtins.int
765
+ file_id: builtins.str
766
+ organization_id: builtins.str
767
+ location_id: builtins.str
768
+
769
+ def __init__(self, *, file_id: builtins.str=..., organization_id: builtins.str=..., location_id: builtins.str=...) -> None:
770
+ ...
771
+
772
+ def ClearField(self, field_name: typing.Literal['file_id', b'file_id', 'location_id', b'location_id', 'organization_id', b'organization_id']) -> None:
773
+ ...
774
+ global___BinaryID = BinaryID
775
+
776
+ @typing.final
442
777
  class BinaryDataByIDsRequest(google.protobuf.message.Message):
443
- """BinaryDataByFilterRequest requests the data and metadata of binary (image + file) data by file ids"""
778
+ """BinaryDataByFilterRequest requests the data and metadata of binary (image + file) data by binary ids."""
444
779
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
445
- FILE_IDS_FIELD_NUMBER: builtins.int
446
780
  INCLUDE_BINARY_FIELD_NUMBER: builtins.int
781
+ BINARY_IDS_FIELD_NUMBER: builtins.int
782
+ BINARY_DATA_IDS_FIELD_NUMBER: builtins.int
783
+ include_binary: builtins.bool
447
784
 
448
785
  @property
449
- def file_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
786
+ def binary_ids(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BinaryID]:
787
+ ...
788
+
789
+ @property
790
+ def binary_data_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
450
791
  ...
451
- include_binary: builtins.bool
452
- 'by default'
453
792
 
454
- def __init__(self, *, file_ids: collections.abc.Iterable[builtins.str] | None=..., include_binary: builtins.bool=...) -> None:
793
+ def __init__(self, *, include_binary: builtins.bool=..., binary_ids: collections.abc.Iterable[global___BinaryID] | None=..., binary_data_ids: collections.abc.Iterable[builtins.str] | None=...) -> None:
455
794
  ...
456
795
 
457
- def ClearField(self, field_name: typing_extensions.Literal['file_ids', b'file_ids', 'include_binary', b'include_binary']) -> None:
796
+ def ClearField(self, field_name: typing.Literal['binary_data_ids', b'binary_data_ids', 'binary_ids', b'binary_ids', 'include_binary', b'include_binary']) -> None:
458
797
  ...
459
798
  global___BinaryDataByIDsRequest = BinaryDataByIDsRequest
460
799
 
461
- @typing_extensions.final
800
+ @typing.final
462
801
  class BinaryDataByIDsResponse(google.protobuf.message.Message):
463
- """BinaryDataByIDsResponse provides the data and metadata of binary (image + file) data when a filter is provided"""
802
+ """BinaryDataByIDsResponse provides the data and metadata of binary (image + file) data when a filter is provided."""
464
803
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
465
804
  DATA_FIELD_NUMBER: builtins.int
466
805
  COUNT_FIELD_NUMBER: builtins.int
806
+ count: builtins.int
467
807
 
468
808
  @property
469
809
  def data(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BinaryData]:
470
810
  ...
471
- count: builtins.int
472
811
 
473
812
  def __init__(self, *, data: collections.abc.Iterable[global___BinaryData] | None=..., count: builtins.int=...) -> None:
474
813
  ...
475
814
 
476
- def ClearField(self, field_name: typing_extensions.Literal['count', b'count', 'data', b'data']) -> None:
815
+ def ClearField(self, field_name: typing.Literal['count', b'count', 'data', b'data']) -> None:
477
816
  ...
478
817
  global___BinaryDataByIDsResponse = BinaryDataByIDsResponse
479
818
 
480
- @typing_extensions.final
819
+ @typing.final
481
820
  class BoundingBox(google.protobuf.message.Message):
482
821
  """BoundingBox represents a labeled bounding box on an image.
483
822
  x and y values are normalized ratios between 0 and 1.
@@ -489,39 +828,79 @@ class BoundingBox(google.protobuf.message.Message):
489
828
  Y_MIN_NORMALIZED_FIELD_NUMBER: builtins.int
490
829
  X_MAX_NORMALIZED_FIELD_NUMBER: builtins.int
491
830
  Y_MAX_NORMALIZED_FIELD_NUMBER: builtins.int
831
+ CONFIDENCE_FIELD_NUMBER: builtins.int
492
832
  id: builtins.str
493
833
  label: builtins.str
494
834
  x_min_normalized: builtins.float
495
835
  y_min_normalized: builtins.float
496
836
  x_max_normalized: builtins.float
497
837
  y_max_normalized: builtins.float
838
+ confidence: builtins.float
839
+ 'confidence is an optional range from 0 - 1'
498
840
 
499
- def __init__(self, *, id: builtins.str=..., label: builtins.str=..., x_min_normalized: builtins.float=..., y_min_normalized: builtins.float=..., x_max_normalized: builtins.float=..., y_max_normalized: builtins.float=...) -> None:
841
+ def __init__(self, *, id: builtins.str=..., label: builtins.str=..., x_min_normalized: builtins.float=..., y_min_normalized: builtins.float=..., x_max_normalized: builtins.float=..., y_max_normalized: builtins.float=..., confidence: builtins.float | None=...) -> None:
500
842
  ...
501
843
 
502
- def ClearField(self, field_name: typing_extensions.Literal['id', b'id', 'label', b'label', 'x_max_normalized', b'x_max_normalized', 'x_min_normalized', b'x_min_normalized', 'y_max_normalized', b'y_max_normalized', 'y_min_normalized', b'y_min_normalized']) -> None:
844
+ def HasField(self, field_name: typing.Literal['_confidence', b'_confidence', 'confidence', b'confidence']) -> builtins.bool:
845
+ ...
846
+
847
+ def ClearField(self, field_name: typing.Literal['_confidence', b'_confidence', 'confidence', b'confidence', 'id', b'id', 'label', b'label', 'x_max_normalized', b'x_max_normalized', 'x_min_normalized', b'x_min_normalized', 'y_max_normalized', b'y_max_normalized', 'y_min_normalized', b'y_min_normalized']) -> None:
848
+ ...
849
+
850
+ def WhichOneof(self, oneof_group: typing.Literal['_confidence', b'_confidence']) -> typing.Literal['confidence'] | None:
503
851
  ...
504
852
  global___BoundingBox = BoundingBox
505
853
 
506
- @typing_extensions.final
854
+ @typing.final
855
+ class Classification(google.protobuf.message.Message):
856
+ """Classification represents a confidence score with a label."""
857
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
858
+ ID_FIELD_NUMBER: builtins.int
859
+ LABEL_FIELD_NUMBER: builtins.int
860
+ CONFIDENCE_FIELD_NUMBER: builtins.int
861
+ id: builtins.str
862
+ label: builtins.str
863
+ confidence: builtins.float
864
+ 'confidence is an optional range from 0 - 1'
865
+
866
+ def __init__(self, *, id: builtins.str=..., label: builtins.str=..., confidence: builtins.float | None=...) -> None:
867
+ ...
868
+
869
+ def HasField(self, field_name: typing.Literal['_confidence', b'_confidence', 'confidence', b'confidence']) -> builtins.bool:
870
+ ...
871
+
872
+ def ClearField(self, field_name: typing.Literal['_confidence', b'_confidence', 'confidence', b'confidence', 'id', b'id', 'label', b'label']) -> None:
873
+ ...
874
+
875
+ def WhichOneof(self, oneof_group: typing.Literal['_confidence', b'_confidence']) -> typing.Literal['confidence'] | None:
876
+ ...
877
+ global___Classification = Classification
878
+
879
+ @typing.final
507
880
  class Annotations(google.protobuf.message.Message):
508
881
  """Annotations are data annotations used for machine learning."""
509
882
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
510
883
  BBOXES_FIELD_NUMBER: builtins.int
884
+ CLASSIFICATIONS_FIELD_NUMBER: builtins.int
511
885
 
512
886
  @property
513
887
  def bboxes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BoundingBox]:
514
888
  ...
515
889
 
516
- def __init__(self, *, bboxes: collections.abc.Iterable[global___BoundingBox] | None=...) -> None:
890
+ @property
891
+ def classifications(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Classification]:
892
+ ...
893
+
894
+ def __init__(self, *, bboxes: collections.abc.Iterable[global___BoundingBox] | None=..., classifications: collections.abc.Iterable[global___Classification] | None=...) -> None:
517
895
  ...
518
896
 
519
- def ClearField(self, field_name: typing_extensions.Literal['bboxes', b'bboxes']) -> None:
897
+ def ClearField(self, field_name: typing.Literal['bboxes', b'bboxes', 'classifications', b'classifications']) -> None:
520
898
  ...
521
899
  global___Annotations = Annotations
522
900
 
523
- @typing_extensions.final
901
+ @typing.final
524
902
  class BinaryMetadata(google.protobuf.message.Message):
903
+ """BinaryMetadata is the metadata associated with binary data."""
525
904
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
526
905
  ID_FIELD_NUMBER: builtins.int
527
906
  CAPTURE_METADATA_FIELD_NUMBER: builtins.int
@@ -531,7 +910,13 @@ class BinaryMetadata(google.protobuf.message.Message):
531
910
  FILE_EXT_FIELD_NUMBER: builtins.int
532
911
  URI_FIELD_NUMBER: builtins.int
533
912
  ANNOTATIONS_FIELD_NUMBER: builtins.int
913
+ DATASET_IDS_FIELD_NUMBER: builtins.int
914
+ BINARY_DATA_ID_FIELD_NUMBER: builtins.int
534
915
  id: builtins.str
916
+ file_name: builtins.str
917
+ file_ext: builtins.str
918
+ uri: builtins.str
919
+ binary_data_id: builtins.str
535
920
 
536
921
  @property
537
922
  def capture_metadata(self) -> global___CaptureMetadata:
@@ -544,180 +929,171 @@ class BinaryMetadata(google.protobuf.message.Message):
544
929
  @property
545
930
  def time_received(self) -> google.protobuf.timestamp_pb2.Timestamp:
546
931
  ...
547
- file_name: builtins.str
548
- file_ext: builtins.str
549
- uri: builtins.str
550
932
 
551
933
  @property
552
934
  def annotations(self) -> global___Annotations:
553
935
  ...
554
936
 
555
- def __init__(self, *, id: builtins.str=..., capture_metadata: global___CaptureMetadata | None=..., time_requested: google.protobuf.timestamp_pb2.Timestamp | None=..., time_received: google.protobuf.timestamp_pb2.Timestamp | None=..., file_name: builtins.str=..., file_ext: builtins.str=..., uri: builtins.str=..., annotations: global___Annotations | None=...) -> None:
937
+ @property
938
+ def dataset_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
556
939
  ...
557
940
 
558
- def HasField(self, field_name: typing_extensions.Literal['annotations', b'annotations', 'capture_metadata', b'capture_metadata', 'time_received', b'time_received', 'time_requested', b'time_requested']) -> builtins.bool:
941
+ def __init__(self, *, id: builtins.str=..., capture_metadata: global___CaptureMetadata | None=..., time_requested: google.protobuf.timestamp_pb2.Timestamp | None=..., time_received: google.protobuf.timestamp_pb2.Timestamp | None=..., file_name: builtins.str=..., file_ext: builtins.str=..., uri: builtins.str=..., annotations: global___Annotations | None=..., dataset_ids: collections.abc.Iterable[builtins.str] | None=..., binary_data_id: builtins.str=...) -> None:
559
942
  ...
560
943
 
561
- def ClearField(self, field_name: typing_extensions.Literal['annotations', b'annotations', 'capture_metadata', b'capture_metadata', 'file_ext', b'file_ext', 'file_name', b'file_name', 'id', b'id', 'time_received', b'time_received', 'time_requested', b'time_requested', 'uri', b'uri']) -> None:
944
+ def HasField(self, field_name: typing.Literal['annotations', b'annotations', 'capture_metadata', b'capture_metadata', 'time_received', b'time_received', 'time_requested', b'time_requested']) -> builtins.bool:
562
945
  ...
563
- global___BinaryMetadata = BinaryMetadata
564
-
565
- @typing_extensions.final
566
- class DeleteTabularDataByFilterRequest(google.protobuf.message.Message):
567
- """DeleteTabularDataByFilterRequest deletes the data and metadata of tabular data when a filter is provided"""
568
- DESCRIPTOR: google.protobuf.descriptor.Descriptor
569
- FILTER_FIELD_NUMBER: builtins.int
570
946
 
571
- @property
572
- def filter(self) -> global___Filter:
947
+ def ClearField(self, field_name: typing.Literal['annotations', b'annotations', 'binary_data_id', b'binary_data_id', 'capture_metadata', b'capture_metadata', 'dataset_ids', b'dataset_ids', 'file_ext', b'file_ext', 'file_name', b'file_name', 'id', b'id', 'time_received', b'time_received', 'time_requested', b'time_requested', 'uri', b'uri']) -> None:
573
948
  ...
949
+ global___BinaryMetadata = BinaryMetadata
574
950
 
575
- def __init__(self, *, filter: global___Filter | None=...) -> None:
576
- ...
951
+ @typing.final
952
+ class DeleteTabularDataRequest(google.protobuf.message.Message):
953
+ """DeleteTabularDataRequest deletes the data from the organization that is older than `delete_older_than_days`
954
+ in UTC time. For example, if delete_older_than_days=1 and the request is made at 1AM EST on March 11
955
+ (March 11 5AM UTC), this deletes all data captured through March 10 11:59:59PM UTC.
956
+ If the request is at 10PM EST on March 11 (March 12 2AM UTC), this deletes all data captured
957
+ through March 11 11:59:59PM UTC.
958
+ If delete_older_than_days is 0, all existing data is deleted.
959
+ """
960
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
961
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
962
+ DELETE_OLDER_THAN_DAYS_FIELD_NUMBER: builtins.int
963
+ organization_id: builtins.str
964
+ delete_older_than_days: builtins.int
577
965
 
578
- def HasField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> builtins.bool:
966
+ def __init__(self, *, organization_id: builtins.str=..., delete_older_than_days: builtins.int=...) -> None:
579
967
  ...
580
968
 
581
- def ClearField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> None:
969
+ def ClearField(self, field_name: typing.Literal['delete_older_than_days', b'delete_older_than_days', 'organization_id', b'organization_id']) -> None:
582
970
  ...
583
- global___DeleteTabularDataByFilterRequest = DeleteTabularDataByFilterRequest
971
+ global___DeleteTabularDataRequest = DeleteTabularDataRequest
584
972
 
585
- @typing_extensions.final
586
- class DeleteTabularDataByFilterResponse(google.protobuf.message.Message):
587
- """DeleteBinaryDataByFilterResponse returns the number of tabular datapoints deleted when a filter is provided"""
973
+ @typing.final
974
+ class DeleteTabularDataResponse(google.protobuf.message.Message):
975
+ """DeleteBinaryDataResponse returns the number of tabular datapoints deleted."""
588
976
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
589
977
  DELETED_COUNT_FIELD_NUMBER: builtins.int
590
- RESULT_FIELD_NUMBER: builtins.int
591
978
  deleted_count: builtins.int
592
979
 
593
- @property
594
- def result(self) -> global___Result:
595
- ...
596
-
597
- def __init__(self, *, deleted_count: builtins.int=..., result: global___Result | None=...) -> None:
598
- ...
599
-
600
- def HasField(self, field_name: typing_extensions.Literal['result', b'result']) -> builtins.bool:
980
+ def __init__(self, *, deleted_count: builtins.int=...) -> None:
601
981
  ...
602
982
 
603
- def ClearField(self, field_name: typing_extensions.Literal['deleted_count', b'deleted_count', 'result', b'result']) -> None:
983
+ def ClearField(self, field_name: typing.Literal['deleted_count', b'deleted_count']) -> None:
604
984
  ...
605
- global___DeleteTabularDataByFilterResponse = DeleteTabularDataByFilterResponse
985
+ global___DeleteTabularDataResponse = DeleteTabularDataResponse
606
986
 
607
- @typing_extensions.final
987
+ @typing.final
608
988
  class DeleteBinaryDataByFilterRequest(google.protobuf.message.Message):
609
- """DeleteBinaryDataByFilterRequest deletes the data and metadata of binary data when a filter is provided"""
989
+ """DeleteBinaryDataByFilterRequest deletes the data and metadata of binary data when a filter is provided."""
610
990
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
611
991
  FILTER_FIELD_NUMBER: builtins.int
992
+ INCLUDE_INTERNAL_DATA_FIELD_NUMBER: builtins.int
993
+ include_internal_data: builtins.bool
612
994
 
613
995
  @property
614
996
  def filter(self) -> global___Filter:
615
997
  ...
616
998
 
617
- def __init__(self, *, filter: global___Filter | None=...) -> None:
999
+ def __init__(self, *, filter: global___Filter | None=..., include_internal_data: builtins.bool=...) -> None:
618
1000
  ...
619
1001
 
620
- def HasField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> builtins.bool:
1002
+ def HasField(self, field_name: typing.Literal['filter', b'filter']) -> builtins.bool:
621
1003
  ...
622
1004
 
623
- def ClearField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> None:
1005
+ def ClearField(self, field_name: typing.Literal['filter', b'filter', 'include_internal_data', b'include_internal_data']) -> None:
624
1006
  ...
625
1007
  global___DeleteBinaryDataByFilterRequest = DeleteBinaryDataByFilterRequest
626
1008
 
627
- @typing_extensions.final
1009
+ @typing.final
628
1010
  class DeleteBinaryDataByFilterResponse(google.protobuf.message.Message):
629
- """DeleteBinaryDataByFilterResponse returns the number of binary files deleted when a filter is provided"""
1011
+ """DeleteBinaryDataByFilterResponse returns the number of binary files deleted when a filter is provided."""
630
1012
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
631
1013
  DELETED_COUNT_FIELD_NUMBER: builtins.int
632
- RESULT_FIELD_NUMBER: builtins.int
633
1014
  deleted_count: builtins.int
634
1015
 
635
- @property
636
- def result(self) -> global___Result:
637
- ...
638
-
639
- def __init__(self, *, deleted_count: builtins.int=..., result: global___Result | None=...) -> None:
640
- ...
641
-
642
- def HasField(self, field_name: typing_extensions.Literal['result', b'result']) -> builtins.bool:
1016
+ def __init__(self, *, deleted_count: builtins.int=...) -> None:
643
1017
  ...
644
1018
 
645
- def ClearField(self, field_name: typing_extensions.Literal['deleted_count', b'deleted_count', 'result', b'result']) -> None:
1019
+ def ClearField(self, field_name: typing.Literal['deleted_count', b'deleted_count']) -> None:
646
1020
  ...
647
1021
  global___DeleteBinaryDataByFilterResponse = DeleteBinaryDataByFilterResponse
648
1022
 
649
- @typing_extensions.final
1023
+ @typing.final
650
1024
  class DeleteBinaryDataByIDsRequest(google.protobuf.message.Message):
651
- """DeleteBinaryDataByIDsRequest deletes the data and metadata of binary data when file ids are provided"""
1025
+ """DeleteBinaryDataByIDsRequest deletes the data and metadata of binary data when binary ids are provided."""
652
1026
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
653
- FILE_IDS_FIELD_NUMBER: builtins.int
1027
+ BINARY_IDS_FIELD_NUMBER: builtins.int
1028
+ BINARY_DATA_IDS_FIELD_NUMBER: builtins.int
654
1029
 
655
1030
  @property
656
- def file_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
1031
+ def binary_ids(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BinaryID]:
657
1032
  ...
658
1033
 
659
- def __init__(self, *, file_ids: collections.abc.Iterable[builtins.str] | None=...) -> None:
1034
+ @property
1035
+ def binary_data_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
660
1036
  ...
661
1037
 
662
- def ClearField(self, field_name: typing_extensions.Literal['file_ids', b'file_ids']) -> None:
1038
+ def __init__(self, *, binary_ids: collections.abc.Iterable[global___BinaryID] | None=..., binary_data_ids: collections.abc.Iterable[builtins.str] | None=...) -> None:
1039
+ ...
1040
+
1041
+ def ClearField(self, field_name: typing.Literal['binary_data_ids', b'binary_data_ids', 'binary_ids', b'binary_ids']) -> None:
663
1042
  ...
664
1043
  global___DeleteBinaryDataByIDsRequest = DeleteBinaryDataByIDsRequest
665
1044
 
666
- @typing_extensions.final
1045
+ @typing.final
667
1046
  class DeleteBinaryDataByIDsResponse(google.protobuf.message.Message):
668
- """DeleteBinaryDataByIDsResponse returns the number of binary files deleted when file ids are provided"""
1047
+ """DeleteBinaryDataByIDsResponse returns the number of binary files deleted when binary ids are provided."""
669
1048
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
670
1049
  DELETED_COUNT_FIELD_NUMBER: builtins.int
671
- RESULT_FIELD_NUMBER: builtins.int
672
1050
  deleted_count: builtins.int
673
1051
 
674
- @property
675
- def result(self) -> global___Result:
676
- ...
677
-
678
- def __init__(self, *, deleted_count: builtins.int=..., result: global___Result | None=...) -> None:
679
- ...
680
-
681
- def HasField(self, field_name: typing_extensions.Literal['result', b'result']) -> builtins.bool:
1052
+ def __init__(self, *, deleted_count: builtins.int=...) -> None:
682
1053
  ...
683
1054
 
684
- def ClearField(self, field_name: typing_extensions.Literal['deleted_count', b'deleted_count', 'result', b'result']) -> None:
1055
+ def ClearField(self, field_name: typing.Literal['deleted_count', b'deleted_count']) -> None:
685
1056
  ...
686
1057
  global___DeleteBinaryDataByIDsResponse = DeleteBinaryDataByIDsResponse
687
1058
 
688
- @typing_extensions.final
689
- class AddTagsToBinaryDataByFileIDsRequest(google.protobuf.message.Message):
690
- """AddTagsToBinaryDataByFileIDsRequest requests adding all specified tags to each of the files when file IDs are provided"""
1059
+ @typing.final
1060
+ class AddTagsToBinaryDataByIDsRequest(google.protobuf.message.Message):
1061
+ """AddTagsToBinaryDataByIDsRequest requests adding all specified tags to each of the files when binary ids are provided."""
691
1062
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
692
- FILE_IDS_FIELD_NUMBER: builtins.int
1063
+ BINARY_IDS_FIELD_NUMBER: builtins.int
1064
+ BINARY_DATA_IDS_FIELD_NUMBER: builtins.int
693
1065
  TAGS_FIELD_NUMBER: builtins.int
694
1066
 
695
1067
  @property
696
- def file_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
1068
+ def binary_ids(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BinaryID]:
1069
+ ...
1070
+
1071
+ @property
1072
+ def binary_data_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
697
1073
  ...
698
1074
 
699
1075
  @property
700
1076
  def tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
701
1077
  ...
702
1078
 
703
- def __init__(self, *, file_ids: collections.abc.Iterable[builtins.str] | None=..., tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
1079
+ def __init__(self, *, binary_ids: collections.abc.Iterable[global___BinaryID] | None=..., binary_data_ids: collections.abc.Iterable[builtins.str] | None=..., tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
704
1080
  ...
705
1081
 
706
- def ClearField(self, field_name: typing_extensions.Literal['file_ids', b'file_ids', 'tags', b'tags']) -> None:
1082
+ def ClearField(self, field_name: typing.Literal['binary_data_ids', b'binary_data_ids', 'binary_ids', b'binary_ids', 'tags', b'tags']) -> None:
707
1083
  ...
708
- global___AddTagsToBinaryDataByFileIDsRequest = AddTagsToBinaryDataByFileIDsRequest
1084
+ global___AddTagsToBinaryDataByIDsRequest = AddTagsToBinaryDataByIDsRequest
709
1085
 
710
- @typing_extensions.final
711
- class AddTagsToBinaryDataByFileIDsResponse(google.protobuf.message.Message):
1086
+ @typing.final
1087
+ class AddTagsToBinaryDataByIDsResponse(google.protobuf.message.Message):
712
1088
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
713
1089
 
714
1090
  def __init__(self) -> None:
715
1091
  ...
716
- global___AddTagsToBinaryDataByFileIDsResponse = AddTagsToBinaryDataByFileIDsResponse
1092
+ global___AddTagsToBinaryDataByIDsResponse = AddTagsToBinaryDataByIDsResponse
717
1093
 
718
- @typing_extensions.final
1094
+ @typing.final
719
1095
  class AddTagsToBinaryDataByFilterRequest(google.protobuf.message.Message):
720
- """AddTagsToBinaryDataByFilterRequest requests adding all specified tags to each of the files when a filter is provided"""
1096
+ """AddTagsToBinaryDataByFilterRequest requests adding all specified tags to each of the files when a filter is provided."""
721
1097
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
722
1098
  FILTER_FIELD_NUMBER: builtins.int
723
1099
  TAGS_FIELD_NUMBER: builtins.int
@@ -733,14 +1109,14 @@ class AddTagsToBinaryDataByFilterRequest(google.protobuf.message.Message):
733
1109
  def __init__(self, *, filter: global___Filter | None=..., tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
734
1110
  ...
735
1111
 
736
- def HasField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> builtins.bool:
1112
+ def HasField(self, field_name: typing.Literal['filter', b'filter']) -> builtins.bool:
737
1113
  ...
738
1114
 
739
- def ClearField(self, field_name: typing_extensions.Literal['filter', b'filter', 'tags', b'tags']) -> None:
1115
+ def ClearField(self, field_name: typing.Literal['filter', b'filter', 'tags', b'tags']) -> None:
740
1116
  ...
741
1117
  global___AddTagsToBinaryDataByFilterRequest = AddTagsToBinaryDataByFilterRequest
742
1118
 
743
- @typing_extensions.final
1119
+ @typing.final
744
1120
  class AddTagsToBinaryDataByFilterResponse(google.protobuf.message.Message):
745
1121
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
746
1122
 
@@ -748,31 +1124,36 @@ class AddTagsToBinaryDataByFilterResponse(google.protobuf.message.Message):
748
1124
  ...
749
1125
  global___AddTagsToBinaryDataByFilterResponse = AddTagsToBinaryDataByFilterResponse
750
1126
 
751
- @typing_extensions.final
752
- class RemoveTagsFromBinaryDataByFileIDsRequest(google.protobuf.message.Message):
753
- """RemoveTagsFromBinaryDataByFileIDsRequest requests removing the given tags value from each file when file IDs are provided"""
1127
+ @typing.final
1128
+ class RemoveTagsFromBinaryDataByIDsRequest(google.protobuf.message.Message):
1129
+ """RemoveTagsFromBinaryDataByIDsRequest requests removing the given tags value from each file when binary ids are provided."""
754
1130
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
755
- FILE_IDS_FIELD_NUMBER: builtins.int
1131
+ BINARY_IDS_FIELD_NUMBER: builtins.int
1132
+ BINARY_DATA_IDS_FIELD_NUMBER: builtins.int
756
1133
  TAGS_FIELD_NUMBER: builtins.int
757
1134
 
758
1135
  @property
759
- def file_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
1136
+ def binary_ids(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BinaryID]:
1137
+ ...
1138
+
1139
+ @property
1140
+ def binary_data_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
760
1141
  ...
761
1142
 
762
1143
  @property
763
1144
  def tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
764
1145
  ...
765
1146
 
766
- def __init__(self, *, file_ids: collections.abc.Iterable[builtins.str] | None=..., tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
1147
+ def __init__(self, *, binary_ids: collections.abc.Iterable[global___BinaryID] | None=..., binary_data_ids: collections.abc.Iterable[builtins.str] | None=..., tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
767
1148
  ...
768
1149
 
769
- def ClearField(self, field_name: typing_extensions.Literal['file_ids', b'file_ids', 'tags', b'tags']) -> None:
1150
+ def ClearField(self, field_name: typing.Literal['binary_data_ids', b'binary_data_ids', 'binary_ids', b'binary_ids', 'tags', b'tags']) -> None:
770
1151
  ...
771
- global___RemoveTagsFromBinaryDataByFileIDsRequest = RemoveTagsFromBinaryDataByFileIDsRequest
1152
+ global___RemoveTagsFromBinaryDataByIDsRequest = RemoveTagsFromBinaryDataByIDsRequest
772
1153
 
773
- @typing_extensions.final
774
- class RemoveTagsFromBinaryDataByFileIDsResponse(google.protobuf.message.Message):
775
- """RemoveTagsFromBinaryDataByFileIDsResponse returns the number of binary files which had tags removed"""
1154
+ @typing.final
1155
+ class RemoveTagsFromBinaryDataByIDsResponse(google.protobuf.message.Message):
1156
+ """RemoveTagsFromBinaryDataByIDsResponse returns the number of binary files which had tags removed"""
776
1157
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
777
1158
  DELETED_COUNT_FIELD_NUMBER: builtins.int
778
1159
  deleted_count: builtins.int
@@ -780,13 +1161,13 @@ class RemoveTagsFromBinaryDataByFileIDsResponse(google.protobuf.message.Message)
780
1161
  def __init__(self, *, deleted_count: builtins.int=...) -> None:
781
1162
  ...
782
1163
 
783
- def ClearField(self, field_name: typing_extensions.Literal['deleted_count', b'deleted_count']) -> None:
1164
+ def ClearField(self, field_name: typing.Literal['deleted_count', b'deleted_count']) -> None:
784
1165
  ...
785
- global___RemoveTagsFromBinaryDataByFileIDsResponse = RemoveTagsFromBinaryDataByFileIDsResponse
1166
+ global___RemoveTagsFromBinaryDataByIDsResponse = RemoveTagsFromBinaryDataByIDsResponse
786
1167
 
787
- @typing_extensions.final
1168
+ @typing.final
788
1169
  class RemoveTagsFromBinaryDataByFilterRequest(google.protobuf.message.Message):
789
- """RemoveTagsFromBinaryDataByFilterRequest requests removing the given tags value from each file when a filter is provided"""
1170
+ """RemoveTagsFromBinaryDataByFilterRequest requests removing the given tags value from each file when a filter is provided."""
790
1171
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
791
1172
  FILTER_FIELD_NUMBER: builtins.int
792
1173
  TAGS_FIELD_NUMBER: builtins.int
@@ -802,16 +1183,16 @@ class RemoveTagsFromBinaryDataByFilterRequest(google.protobuf.message.Message):
802
1183
  def __init__(self, *, filter: global___Filter | None=..., tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
803
1184
  ...
804
1185
 
805
- def HasField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> builtins.bool:
1186
+ def HasField(self, field_name: typing.Literal['filter', b'filter']) -> builtins.bool:
806
1187
  ...
807
1188
 
808
- def ClearField(self, field_name: typing_extensions.Literal['filter', b'filter', 'tags', b'tags']) -> None:
1189
+ def ClearField(self, field_name: typing.Literal['filter', b'filter', 'tags', b'tags']) -> None:
809
1190
  ...
810
1191
  global___RemoveTagsFromBinaryDataByFilterRequest = RemoveTagsFromBinaryDataByFilterRequest
811
1192
 
812
- @typing_extensions.final
1193
+ @typing.final
813
1194
  class RemoveTagsFromBinaryDataByFilterResponse(google.protobuf.message.Message):
814
- """RemoveTagsFromBinaryDataByFilterResponse returns the number of binary files which had tags removed"""
1195
+ """RemoveTagsFromBinaryDataByFilterResponse returns the number of binary files which had tags removed."""
815
1196
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
816
1197
  DELETED_COUNT_FIELD_NUMBER: builtins.int
817
1198
  deleted_count: builtins.int
@@ -819,13 +1200,13 @@ class RemoveTagsFromBinaryDataByFilterResponse(google.protobuf.message.Message):
819
1200
  def __init__(self, *, deleted_count: builtins.int=...) -> None:
820
1201
  ...
821
1202
 
822
- def ClearField(self, field_name: typing_extensions.Literal['deleted_count', b'deleted_count']) -> None:
1203
+ def ClearField(self, field_name: typing.Literal['deleted_count', b'deleted_count']) -> None:
823
1204
  ...
824
1205
  global___RemoveTagsFromBinaryDataByFilterResponse = RemoveTagsFromBinaryDataByFilterResponse
825
1206
 
826
- @typing_extensions.final
1207
+ @typing.final
827
1208
  class TagsByFilterRequest(google.protobuf.message.Message):
828
- """TagsByFilterRequest requests the unique tags from data based on given filter"""
1209
+ """TagsByFilterRequest requests the unique tags from data based on given filter."""
829
1210
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
830
1211
  FILTER_FIELD_NUMBER: builtins.int
831
1212
 
@@ -836,16 +1217,16 @@ class TagsByFilterRequest(google.protobuf.message.Message):
836
1217
  def __init__(self, *, filter: global___Filter | None=...) -> None:
837
1218
  ...
838
1219
 
839
- def HasField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> builtins.bool:
1220
+ def HasField(self, field_name: typing.Literal['filter', b'filter']) -> builtins.bool:
840
1221
  ...
841
1222
 
842
- def ClearField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> None:
1223
+ def ClearField(self, field_name: typing.Literal['filter', b'filter']) -> None:
843
1224
  ...
844
1225
  global___TagsByFilterRequest = TagsByFilterRequest
845
1226
 
846
- @typing_extensions.final
1227
+ @typing.final
847
1228
  class TagsByFilterResponse(google.protobuf.message.Message):
848
- """TagsByFilterResponse returns the unique tags from data based on given filter"""
1229
+ """TagsByFilterResponse returns the unique tags from data based on given filter."""
849
1230
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
850
1231
  TAGS_FIELD_NUMBER: builtins.int
851
1232
 
@@ -856,35 +1237,47 @@ class TagsByFilterResponse(google.protobuf.message.Message):
856
1237
  def __init__(self, *, tags: collections.abc.Iterable[builtins.str] | None=...) -> None:
857
1238
  ...
858
1239
 
859
- def ClearField(self, field_name: typing_extensions.Literal['tags', b'tags']) -> None:
1240
+ def ClearField(self, field_name: typing.Literal['tags', b'tags']) -> None:
860
1241
  ...
861
1242
  global___TagsByFilterResponse = TagsByFilterResponse
862
1243
 
863
- @typing_extensions.final
1244
+ @typing.final
864
1245
  class AddBoundingBoxToImageByIDRequest(google.protobuf.message.Message):
1246
+ """AddBoundingBoxToImageByIDRequest specifies the binary ID to which a bounding box
1247
+ with the associated label and position in normalized coordinates will be added.
1248
+ """
865
1249
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
866
- FILE_ID_FIELD_NUMBER: builtins.int
1250
+ BINARY_ID_FIELD_NUMBER: builtins.int
1251
+ BINARY_DATA_ID_FIELD_NUMBER: builtins.int
867
1252
  LABEL_FIELD_NUMBER: builtins.int
868
1253
  X_MIN_NORMALIZED_FIELD_NUMBER: builtins.int
869
1254
  Y_MIN_NORMALIZED_FIELD_NUMBER: builtins.int
870
1255
  X_MAX_NORMALIZED_FIELD_NUMBER: builtins.int
871
1256
  Y_MAX_NORMALIZED_FIELD_NUMBER: builtins.int
872
- file_id: builtins.str
1257
+ binary_data_id: builtins.str
873
1258
  label: builtins.str
874
1259
  x_min_normalized: builtins.float
875
1260
  y_min_normalized: builtins.float
876
1261
  x_max_normalized: builtins.float
877
1262
  y_max_normalized: builtins.float
878
1263
 
879
- def __init__(self, *, file_id: builtins.str=..., label: builtins.str=..., x_min_normalized: builtins.float=..., y_min_normalized: builtins.float=..., x_max_normalized: builtins.float=..., y_max_normalized: builtins.float=...) -> None:
1264
+ @property
1265
+ def binary_id(self) -> global___BinaryID:
1266
+ ...
1267
+
1268
+ def __init__(self, *, binary_id: global___BinaryID | None=..., binary_data_id: builtins.str=..., label: builtins.str=..., x_min_normalized: builtins.float=..., y_min_normalized: builtins.float=..., x_max_normalized: builtins.float=..., y_max_normalized: builtins.float=...) -> None:
880
1269
  ...
881
1270
 
882
- def ClearField(self, field_name: typing_extensions.Literal['file_id', b'file_id', 'label', b'label', 'x_max_normalized', b'x_max_normalized', 'x_min_normalized', b'x_min_normalized', 'y_max_normalized', b'y_max_normalized', 'y_min_normalized', b'y_min_normalized']) -> None:
1271
+ def HasField(self, field_name: typing.Literal['binary_id', b'binary_id']) -> builtins.bool:
1272
+ ...
1273
+
1274
+ def ClearField(self, field_name: typing.Literal['binary_data_id', b'binary_data_id', 'binary_id', b'binary_id', 'label', b'label', 'x_max_normalized', b'x_max_normalized', 'x_min_normalized', b'x_min_normalized', 'y_max_normalized', b'y_max_normalized', 'y_min_normalized', b'y_min_normalized']) -> None:
883
1275
  ...
884
1276
  global___AddBoundingBoxToImageByIDRequest = AddBoundingBoxToImageByIDRequest
885
1277
 
886
- @typing_extensions.final
1278
+ @typing.final
887
1279
  class AddBoundingBoxToImageByIDResponse(google.protobuf.message.Message):
1280
+ """AddBoundingBoxToImageByIDResponse returns the bounding box ID of the successfully added bounding box."""
888
1281
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
889
1282
  BBOX_ID_FIELD_NUMBER: builtins.int
890
1283
  bbox_id: builtins.str
@@ -892,26 +1285,35 @@ class AddBoundingBoxToImageByIDResponse(google.protobuf.message.Message):
892
1285
  def __init__(self, *, bbox_id: builtins.str=...) -> None:
893
1286
  ...
894
1287
 
895
- def ClearField(self, field_name: typing_extensions.Literal['bbox_id', b'bbox_id']) -> None:
1288
+ def ClearField(self, field_name: typing.Literal['bbox_id', b'bbox_id']) -> None:
896
1289
  ...
897
1290
  global___AddBoundingBoxToImageByIDResponse = AddBoundingBoxToImageByIDResponse
898
1291
 
899
- @typing_extensions.final
1292
+ @typing.final
900
1293
  class RemoveBoundingBoxFromImageByIDRequest(google.protobuf.message.Message):
1294
+ """RemoveBoundingBoxFromImageByIDRequest removes the bounding box with specified bounding box ID for the file represented by the binary ID."""
901
1295
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
902
- FILE_ID_FIELD_NUMBER: builtins.int
1296
+ BINARY_ID_FIELD_NUMBER: builtins.int
1297
+ BINARY_DATA_ID_FIELD_NUMBER: builtins.int
903
1298
  BBOX_ID_FIELD_NUMBER: builtins.int
904
- file_id: builtins.str
1299
+ binary_data_id: builtins.str
905
1300
  bbox_id: builtins.str
906
1301
 
907
- def __init__(self, *, file_id: builtins.str=..., bbox_id: builtins.str=...) -> None:
1302
+ @property
1303
+ def binary_id(self) -> global___BinaryID:
908
1304
  ...
909
1305
 
910
- def ClearField(self, field_name: typing_extensions.Literal['bbox_id', b'bbox_id', 'file_id', b'file_id']) -> None:
1306
+ def __init__(self, *, binary_id: global___BinaryID | None=..., binary_data_id: builtins.str=..., bbox_id: builtins.str=...) -> None:
1307
+ ...
1308
+
1309
+ def HasField(self, field_name: typing.Literal['binary_id', b'binary_id']) -> builtins.bool:
1310
+ ...
1311
+
1312
+ def ClearField(self, field_name: typing.Literal['bbox_id', b'bbox_id', 'binary_data_id', b'binary_data_id', 'binary_id', b'binary_id']) -> None:
911
1313
  ...
912
1314
  global___RemoveBoundingBoxFromImageByIDRequest = RemoveBoundingBoxFromImageByIDRequest
913
1315
 
914
- @typing_extensions.final
1316
+ @typing.final
915
1317
  class RemoveBoundingBoxFromImageByIDResponse(google.protobuf.message.Message):
916
1318
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
917
1319
 
@@ -919,8 +1321,71 @@ class RemoveBoundingBoxFromImageByIDResponse(google.protobuf.message.Message):
919
1321
  ...
920
1322
  global___RemoveBoundingBoxFromImageByIDResponse = RemoveBoundingBoxFromImageByIDResponse
921
1323
 
922
- @typing_extensions.final
1324
+ @typing.final
1325
+ class UpdateBoundingBoxRequest(google.protobuf.message.Message):
1326
+ """UpdateBoundingBoxRequest updates the bounding box with specified bounding box ID for the file represented by the binary ID."""
1327
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1328
+ BINARY_ID_FIELD_NUMBER: builtins.int
1329
+ BINARY_DATA_ID_FIELD_NUMBER: builtins.int
1330
+ BBOX_ID_FIELD_NUMBER: builtins.int
1331
+ LABEL_FIELD_NUMBER: builtins.int
1332
+ X_MIN_NORMALIZED_FIELD_NUMBER: builtins.int
1333
+ Y_MIN_NORMALIZED_FIELD_NUMBER: builtins.int
1334
+ X_MAX_NORMALIZED_FIELD_NUMBER: builtins.int
1335
+ Y_MAX_NORMALIZED_FIELD_NUMBER: builtins.int
1336
+ binary_data_id: builtins.str
1337
+ bbox_id: builtins.str
1338
+ label: builtins.str
1339
+ x_min_normalized: builtins.float
1340
+ y_min_normalized: builtins.float
1341
+ x_max_normalized: builtins.float
1342
+ y_max_normalized: builtins.float
1343
+
1344
+ @property
1345
+ def binary_id(self) -> global___BinaryID:
1346
+ ...
1347
+
1348
+ def __init__(self, *, binary_id: global___BinaryID | None=..., binary_data_id: builtins.str=..., bbox_id: builtins.str=..., label: builtins.str | None=..., x_min_normalized: builtins.float | None=..., y_min_normalized: builtins.float | None=..., x_max_normalized: builtins.float | None=..., y_max_normalized: builtins.float | None=...) -> None:
1349
+ ...
1350
+
1351
+ def HasField(self, field_name: typing.Literal['_label', b'_label', '_x_max_normalized', b'_x_max_normalized', '_x_min_normalized', b'_x_min_normalized', '_y_max_normalized', b'_y_max_normalized', '_y_min_normalized', b'_y_min_normalized', 'binary_id', b'binary_id', 'label', b'label', 'x_max_normalized', b'x_max_normalized', 'x_min_normalized', b'x_min_normalized', 'y_max_normalized', b'y_max_normalized', 'y_min_normalized', b'y_min_normalized']) -> builtins.bool:
1352
+ ...
1353
+
1354
+ def ClearField(self, field_name: typing.Literal['_label', b'_label', '_x_max_normalized', b'_x_max_normalized', '_x_min_normalized', b'_x_min_normalized', '_y_max_normalized', b'_y_max_normalized', '_y_min_normalized', b'_y_min_normalized', 'bbox_id', b'bbox_id', 'binary_data_id', b'binary_data_id', 'binary_id', b'binary_id', 'label', b'label', 'x_max_normalized', b'x_max_normalized', 'x_min_normalized', b'x_min_normalized', 'y_max_normalized', b'y_max_normalized', 'y_min_normalized', b'y_min_normalized']) -> None:
1355
+ ...
1356
+
1357
+ @typing.overload
1358
+ def WhichOneof(self, oneof_group: typing.Literal['_label', b'_label']) -> typing.Literal['label'] | None:
1359
+ ...
1360
+
1361
+ @typing.overload
1362
+ def WhichOneof(self, oneof_group: typing.Literal['_x_max_normalized', b'_x_max_normalized']) -> typing.Literal['x_max_normalized'] | None:
1363
+ ...
1364
+
1365
+ @typing.overload
1366
+ def WhichOneof(self, oneof_group: typing.Literal['_x_min_normalized', b'_x_min_normalized']) -> typing.Literal['x_min_normalized'] | None:
1367
+ ...
1368
+
1369
+ @typing.overload
1370
+ def WhichOneof(self, oneof_group: typing.Literal['_y_max_normalized', b'_y_max_normalized']) -> typing.Literal['y_max_normalized'] | None:
1371
+ ...
1372
+
1373
+ @typing.overload
1374
+ def WhichOneof(self, oneof_group: typing.Literal['_y_min_normalized', b'_y_min_normalized']) -> typing.Literal['y_min_normalized'] | None:
1375
+ ...
1376
+ global___UpdateBoundingBoxRequest = UpdateBoundingBoxRequest
1377
+
1378
+ @typing.final
1379
+ class UpdateBoundingBoxResponse(google.protobuf.message.Message):
1380
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1381
+
1382
+ def __init__(self) -> None:
1383
+ ...
1384
+ global___UpdateBoundingBoxResponse = UpdateBoundingBoxResponse
1385
+
1386
+ @typing.final
923
1387
  class BoundingBoxLabelsByFilterRequest(google.protobuf.message.Message):
1388
+ """BoundingBoxLabelsByFilterRequest requests all the labels of the bounding boxes from files from a given filter."""
924
1389
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
925
1390
  FILTER_FIELD_NUMBER: builtins.int
926
1391
 
@@ -931,15 +1396,16 @@ class BoundingBoxLabelsByFilterRequest(google.protobuf.message.Message):
931
1396
  def __init__(self, *, filter: global___Filter | None=...) -> None:
932
1397
  ...
933
1398
 
934
- def HasField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> builtins.bool:
1399
+ def HasField(self, field_name: typing.Literal['filter', b'filter']) -> builtins.bool:
935
1400
  ...
936
1401
 
937
- def ClearField(self, field_name: typing_extensions.Literal['filter', b'filter']) -> None:
1402
+ def ClearField(self, field_name: typing.Literal['filter', b'filter']) -> None:
938
1403
  ...
939
1404
  global___BoundingBoxLabelsByFilterRequest = BoundingBoxLabelsByFilterRequest
940
1405
 
941
- @typing_extensions.final
1406
+ @typing.final
942
1407
  class BoundingBoxLabelsByFilterResponse(google.protobuf.message.Message):
1408
+ """BoundingBoxLabelsByFilterRequest returns all the labels of the bounding boxes from files from a given filter."""
943
1409
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
944
1410
  LABELS_FIELD_NUMBER: builtins.int
945
1411
 
@@ -950,6 +1416,503 @@ class BoundingBoxLabelsByFilterResponse(google.protobuf.message.Message):
950
1416
  def __init__(self, *, labels: collections.abc.Iterable[builtins.str] | None=...) -> None:
951
1417
  ...
952
1418
 
953
- def ClearField(self, field_name: typing_extensions.Literal['labels', b'labels']) -> None:
1419
+ def ClearField(self, field_name: typing.Literal['labels', b'labels']) -> None:
1420
+ ...
1421
+ global___BoundingBoxLabelsByFilterResponse = BoundingBoxLabelsByFilterResponse
1422
+
1423
+ @typing.final
1424
+ class ConfigureDatabaseUserRequest(google.protobuf.message.Message):
1425
+ """ConfigureDatabaseUserRequest accepts a Viam organization ID and a password for the database user
1426
+ being configured. Viam uses gRPC over TLS, so the entire request will be encrypted while in
1427
+ flight, including the password.
1428
+ """
1429
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1430
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
1431
+ PASSWORD_FIELD_NUMBER: builtins.int
1432
+ organization_id: builtins.str
1433
+ password: builtins.str
1434
+
1435
+ def __init__(self, *, organization_id: builtins.str=..., password: builtins.str=...) -> None:
1436
+ ...
1437
+
1438
+ def ClearField(self, field_name: typing.Literal['organization_id', b'organization_id', 'password', b'password']) -> None:
1439
+ ...
1440
+ global___ConfigureDatabaseUserRequest = ConfigureDatabaseUserRequest
1441
+
1442
+ @typing.final
1443
+ class ConfigureDatabaseUserResponse(google.protobuf.message.Message):
1444
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1445
+
1446
+ def __init__(self) -> None:
1447
+ ...
1448
+ global___ConfigureDatabaseUserResponse = ConfigureDatabaseUserResponse
1449
+
1450
+ @typing.final
1451
+ class GetDatabaseConnectionRequest(google.protobuf.message.Message):
1452
+ """GetDatabaseConnectionRequest requests the database connection hostname."""
1453
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1454
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
1455
+ organization_id: builtins.str
1456
+
1457
+ def __init__(self, *, organization_id: builtins.str=...) -> None:
1458
+ ...
1459
+
1460
+ def ClearField(self, field_name: typing.Literal['organization_id', b'organization_id']) -> None:
1461
+ ...
1462
+ global___GetDatabaseConnectionRequest = GetDatabaseConnectionRequest
1463
+
1464
+ @typing.final
1465
+ class GetDatabaseConnectionResponse(google.protobuf.message.Message):
1466
+ """GetDatabaseConnectionResponse returns the database connection hostname endpoint. It also returns
1467
+ a URI that can be used to connect to the database instance through MongoDB clients, as well as
1468
+ information on whether the Viam organization has a database user configured.
1469
+ """
1470
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1471
+ HOSTNAME_FIELD_NUMBER: builtins.int
1472
+ MONGODB_URI_FIELD_NUMBER: builtins.int
1473
+ HAS_DATABASE_USER_FIELD_NUMBER: builtins.int
1474
+ hostname: builtins.str
1475
+ mongodb_uri: builtins.str
1476
+ has_database_user: builtins.bool
1477
+
1478
+ def __init__(self, *, hostname: builtins.str=..., mongodb_uri: builtins.str=..., has_database_user: builtins.bool=...) -> None:
1479
+ ...
1480
+
1481
+ def ClearField(self, field_name: typing.Literal['has_database_user', b'has_database_user', 'hostname', b'hostname', 'mongodb_uri', b'mongodb_uri']) -> None:
1482
+ ...
1483
+ global___GetDatabaseConnectionResponse = GetDatabaseConnectionResponse
1484
+
1485
+ @typing.final
1486
+ class AddBinaryDataToDatasetByIDsRequest(google.protobuf.message.Message):
1487
+ """AddBinaryDataToDatasetByIDsRequest adds the binary data with the given binary IDs to a dataset with dataset_id."""
1488
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1489
+ BINARY_IDS_FIELD_NUMBER: builtins.int
1490
+ BINARY_DATA_IDS_FIELD_NUMBER: builtins.int
1491
+ DATASET_ID_FIELD_NUMBER: builtins.int
1492
+ dataset_id: builtins.str
1493
+
1494
+ @property
1495
+ def binary_ids(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BinaryID]:
1496
+ ...
1497
+
1498
+ @property
1499
+ def binary_data_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
1500
+ ...
1501
+
1502
+ def __init__(self, *, binary_ids: collections.abc.Iterable[global___BinaryID] | None=..., binary_data_ids: collections.abc.Iterable[builtins.str] | None=..., dataset_id: builtins.str=...) -> None:
1503
+ ...
1504
+
1505
+ def ClearField(self, field_name: typing.Literal['binary_data_ids', b'binary_data_ids', 'binary_ids', b'binary_ids', 'dataset_id', b'dataset_id']) -> None:
1506
+ ...
1507
+ global___AddBinaryDataToDatasetByIDsRequest = AddBinaryDataToDatasetByIDsRequest
1508
+
1509
+ @typing.final
1510
+ class AddBinaryDataToDatasetByIDsResponse(google.protobuf.message.Message):
1511
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1512
+
1513
+ def __init__(self) -> None:
1514
+ ...
1515
+ global___AddBinaryDataToDatasetByIDsResponse = AddBinaryDataToDatasetByIDsResponse
1516
+
1517
+ @typing.final
1518
+ class RemoveBinaryDataFromDatasetByIDsRequest(google.protobuf.message.Message):
1519
+ """RemoveBinaryDataFromDatasetByIDsRequest removes the specified binary IDs from a dataset with dataset_id."""
1520
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1521
+ BINARY_IDS_FIELD_NUMBER: builtins.int
1522
+ BINARY_DATA_IDS_FIELD_NUMBER: builtins.int
1523
+ DATASET_ID_FIELD_NUMBER: builtins.int
1524
+ dataset_id: builtins.str
1525
+
1526
+ @property
1527
+ def binary_ids(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BinaryID]:
1528
+ ...
1529
+
1530
+ @property
1531
+ def binary_data_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
1532
+ ...
1533
+
1534
+ def __init__(self, *, binary_ids: collections.abc.Iterable[global___BinaryID] | None=..., binary_data_ids: collections.abc.Iterable[builtins.str] | None=..., dataset_id: builtins.str=...) -> None:
1535
+ ...
1536
+
1537
+ def ClearField(self, field_name: typing.Literal['binary_data_ids', b'binary_data_ids', 'binary_ids', b'binary_ids', 'dataset_id', b'dataset_id']) -> None:
1538
+ ...
1539
+ global___RemoveBinaryDataFromDatasetByIDsRequest = RemoveBinaryDataFromDatasetByIDsRequest
1540
+
1541
+ @typing.final
1542
+ class RemoveBinaryDataFromDatasetByIDsResponse(google.protobuf.message.Message):
1543
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1544
+
1545
+ def __init__(self) -> None:
1546
+ ...
1547
+ global___RemoveBinaryDataFromDatasetByIDsResponse = RemoveBinaryDataFromDatasetByIDsResponse
1548
+
1549
+ @typing.final
1550
+ class CreateIndexRequest(google.protobuf.message.Message):
1551
+ """CreateIndexRequest starts a custom index build"""
1552
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1553
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
1554
+ COLLECTION_TYPE_FIELD_NUMBER: builtins.int
1555
+ PIPELINE_NAME_FIELD_NUMBER: builtins.int
1556
+ INDEX_SPEC_FIELD_NUMBER: builtins.int
1557
+ organization_id: builtins.str
1558
+ collection_type: global___IndexableCollection.ValueType
1559
+ pipeline_name: builtins.str
1560
+
1561
+ @property
1562
+ def index_spec(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]:
1563
+ """index_spec accepts a MongoDB index specification defined in JSON format"""
1564
+
1565
+ def __init__(self, *, organization_id: builtins.str=..., collection_type: global___IndexableCollection.ValueType=..., pipeline_name: builtins.str | None=..., index_spec: collections.abc.Iterable[builtins.bytes] | None=...) -> None:
1566
+ ...
1567
+
1568
+ def HasField(self, field_name: typing.Literal['_pipeline_name', b'_pipeline_name', 'pipeline_name', b'pipeline_name']) -> builtins.bool:
1569
+ ...
1570
+
1571
+ def ClearField(self, field_name: typing.Literal['_pipeline_name', b'_pipeline_name', 'collection_type', b'collection_type', 'index_spec', b'index_spec', 'organization_id', b'organization_id', 'pipeline_name', b'pipeline_name']) -> None:
1572
+ ...
1573
+
1574
+ def WhichOneof(self, oneof_group: typing.Literal['_pipeline_name', b'_pipeline_name']) -> typing.Literal['pipeline_name'] | None:
1575
+ ...
1576
+ global___CreateIndexRequest = CreateIndexRequest
1577
+
1578
+ @typing.final
1579
+ class CreateIndexResponse(google.protobuf.message.Message):
1580
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1581
+
1582
+ def __init__(self) -> None:
1583
+ ...
1584
+ global___CreateIndexResponse = CreateIndexResponse
1585
+
1586
+ @typing.final
1587
+ class DeleteIndexRequest(google.protobuf.message.Message):
1588
+ """DeleteIndexRequest drops the specified custom index from a collection"""
1589
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1590
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
1591
+ COLLECTION_TYPE_FIELD_NUMBER: builtins.int
1592
+ PIPELINE_NAME_FIELD_NUMBER: builtins.int
1593
+ INDEX_NAME_FIELD_NUMBER: builtins.int
1594
+ organization_id: builtins.str
1595
+ collection_type: global___IndexableCollection.ValueType
1596
+ pipeline_name: builtins.str
1597
+ index_name: builtins.str
1598
+
1599
+ def __init__(self, *, organization_id: builtins.str=..., collection_type: global___IndexableCollection.ValueType=..., pipeline_name: builtins.str | None=..., index_name: builtins.str=...) -> None:
1600
+ ...
1601
+
1602
+ def HasField(self, field_name: typing.Literal['_pipeline_name', b'_pipeline_name', 'pipeline_name', b'pipeline_name']) -> builtins.bool:
1603
+ ...
1604
+
1605
+ def ClearField(self, field_name: typing.Literal['_pipeline_name', b'_pipeline_name', 'collection_type', b'collection_type', 'index_name', b'index_name', 'organization_id', b'organization_id', 'pipeline_name', b'pipeline_name']) -> None:
1606
+ ...
1607
+
1608
+ def WhichOneof(self, oneof_group: typing.Literal['_pipeline_name', b'_pipeline_name']) -> typing.Literal['pipeline_name'] | None:
1609
+ ...
1610
+ global___DeleteIndexRequest = DeleteIndexRequest
1611
+
1612
+ @typing.final
1613
+ class DeleteIndexResponse(google.protobuf.message.Message):
1614
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1615
+
1616
+ def __init__(self) -> None:
1617
+ ...
1618
+ global___DeleteIndexResponse = DeleteIndexResponse
1619
+
1620
+ @typing.final
1621
+ class ListIndexesRequest(google.protobuf.message.Message):
1622
+ """ListIndexesRequest returns all the indexes for a given collection"""
1623
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1624
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
1625
+ COLLECTION_TYPE_FIELD_NUMBER: builtins.int
1626
+ PIPELINE_NAME_FIELD_NUMBER: builtins.int
1627
+ organization_id: builtins.str
1628
+ collection_type: global___IndexableCollection.ValueType
1629
+ pipeline_name: builtins.str
1630
+
1631
+ def __init__(self, *, organization_id: builtins.str=..., collection_type: global___IndexableCollection.ValueType=..., pipeline_name: builtins.str | None=...) -> None:
1632
+ ...
1633
+
1634
+ def HasField(self, field_name: typing.Literal['_pipeline_name', b'_pipeline_name', 'pipeline_name', b'pipeline_name']) -> builtins.bool:
1635
+ ...
1636
+
1637
+ def ClearField(self, field_name: typing.Literal['_pipeline_name', b'_pipeline_name', 'collection_type', b'collection_type', 'organization_id', b'organization_id', 'pipeline_name', b'pipeline_name']) -> None:
1638
+ ...
1639
+
1640
+ def WhichOneof(self, oneof_group: typing.Literal['_pipeline_name', b'_pipeline_name']) -> typing.Literal['pipeline_name'] | None:
1641
+ ...
1642
+ global___ListIndexesRequest = ListIndexesRequest
1643
+
1644
+ @typing.final
1645
+ class ListIndexesResponse(google.protobuf.message.Message):
1646
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1647
+ INDEXES_FIELD_NUMBER: builtins.int
1648
+
1649
+ @property
1650
+ def indexes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Index]:
1651
+ ...
1652
+
1653
+ def __init__(self, *, indexes: collections.abc.Iterable[global___Index] | None=...) -> None:
1654
+ ...
1655
+
1656
+ def ClearField(self, field_name: typing.Literal['indexes', b'indexes']) -> None:
1657
+ ...
1658
+ global___ListIndexesResponse = ListIndexesResponse
1659
+
1660
+ @typing.final
1661
+ class Index(google.protobuf.message.Message):
1662
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1663
+ COLLECTION_TYPE_FIELD_NUMBER: builtins.int
1664
+ PIPELINE_NAME_FIELD_NUMBER: builtins.int
1665
+ INDEX_NAME_FIELD_NUMBER: builtins.int
1666
+ INDEX_SPEC_FIELD_NUMBER: builtins.int
1667
+ CREATED_BY_FIELD_NUMBER: builtins.int
1668
+ collection_type: global___IndexableCollection.ValueType
1669
+ pipeline_name: builtins.str
1670
+ index_name: builtins.str
1671
+ created_by: global___IndexCreator.ValueType
1672
+
1673
+ @property
1674
+ def index_spec(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]:
1675
+ """index_spec defines a MongoDB index in JSON format"""
1676
+
1677
+ def __init__(self, *, collection_type: global___IndexableCollection.ValueType=..., pipeline_name: builtins.str | None=..., index_name: builtins.str=..., index_spec: collections.abc.Iterable[builtins.bytes] | None=..., created_by: global___IndexCreator.ValueType=...) -> None:
1678
+ ...
1679
+
1680
+ def HasField(self, field_name: typing.Literal['_pipeline_name', b'_pipeline_name', 'pipeline_name', b'pipeline_name']) -> builtins.bool:
1681
+ ...
1682
+
1683
+ def ClearField(self, field_name: typing.Literal['_pipeline_name', b'_pipeline_name', 'collection_type', b'collection_type', 'created_by', b'created_by', 'index_name', b'index_name', 'index_spec', b'index_spec', 'pipeline_name', b'pipeline_name']) -> None:
1684
+ ...
1685
+
1686
+ def WhichOneof(self, oneof_group: typing.Literal['_pipeline_name', b'_pipeline_name']) -> typing.Literal['pipeline_name'] | None:
1687
+ ...
1688
+ global___Index = Index
1689
+
1690
+ @typing.final
1691
+ class CreateSavedQueryRequest(google.protobuf.message.Message):
1692
+ """CreateSavedQueryRequest saves a mql query."""
1693
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1694
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
1695
+ NAME_FIELD_NUMBER: builtins.int
1696
+ MQL_BINARY_FIELD_NUMBER: builtins.int
1697
+ organization_id: builtins.str
1698
+ name: builtins.str
1699
+
1700
+ @property
1701
+ def mql_binary(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]:
1702
+ ...
1703
+
1704
+ def __init__(self, *, organization_id: builtins.str=..., name: builtins.str=..., mql_binary: collections.abc.Iterable[builtins.bytes] | None=...) -> None:
1705
+ ...
1706
+
1707
+ def ClearField(self, field_name: typing.Literal['mql_binary', b'mql_binary', 'name', b'name', 'organization_id', b'organization_id']) -> None:
1708
+ ...
1709
+ global___CreateSavedQueryRequest = CreateSavedQueryRequest
1710
+
1711
+ @typing.final
1712
+ class CreateSavedQueryResponse(google.protobuf.message.Message):
1713
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1714
+ ID_FIELD_NUMBER: builtins.int
1715
+ id: builtins.str
1716
+
1717
+ def __init__(self, *, id: builtins.str=...) -> None:
1718
+ ...
1719
+
1720
+ def ClearField(self, field_name: typing.Literal['id', b'id']) -> None:
1721
+ ...
1722
+ global___CreateSavedQueryResponse = CreateSavedQueryResponse
1723
+
1724
+ @typing.final
1725
+ class Query(google.protobuf.message.Message):
1726
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1727
+ ID_FIELD_NUMBER: builtins.int
1728
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
1729
+ NAME_FIELD_NUMBER: builtins.int
1730
+ MQL_BINARY_FIELD_NUMBER: builtins.int
1731
+ CREATED_ON_FIELD_NUMBER: builtins.int
1732
+ UPDATED_AT_FIELD_NUMBER: builtins.int
1733
+ id: builtins.str
1734
+ organization_id: builtins.str
1735
+ name: builtins.str
1736
+
1737
+ @property
1738
+ def mql_binary(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]:
1739
+ ...
1740
+
1741
+ @property
1742
+ def created_on(self) -> google.protobuf.timestamp_pb2.Timestamp:
1743
+ ...
1744
+
1745
+ @property
1746
+ def updated_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
1747
+ ...
1748
+
1749
+ def __init__(self, *, id: builtins.str=..., organization_id: builtins.str=..., name: builtins.str=..., mql_binary: collections.abc.Iterable[builtins.bytes] | None=..., created_on: google.protobuf.timestamp_pb2.Timestamp | None=..., updated_at: google.protobuf.timestamp_pb2.Timestamp | None=...) -> None:
1750
+ ...
1751
+
1752
+ def HasField(self, field_name: typing.Literal['created_on', b'created_on', 'updated_at', b'updated_at']) -> builtins.bool:
1753
+ ...
1754
+
1755
+ def ClearField(self, field_name: typing.Literal['created_on', b'created_on', 'id', b'id', 'mql_binary', b'mql_binary', 'name', b'name', 'organization_id', b'organization_id', 'updated_at', b'updated_at']) -> None:
1756
+ ...
1757
+ global___Query = Query
1758
+
1759
+ @typing.final
1760
+ class DeleteSavedQueryRequest(google.protobuf.message.Message):
1761
+ """DeleteSavedQuery deletes a saved query based on the given id."""
1762
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1763
+ ID_FIELD_NUMBER: builtins.int
1764
+ id: builtins.str
1765
+
1766
+ def __init__(self, *, id: builtins.str=...) -> None:
1767
+ ...
1768
+
1769
+ def ClearField(self, field_name: typing.Literal['id', b'id']) -> None:
1770
+ ...
1771
+ global___DeleteSavedQueryRequest = DeleteSavedQueryRequest
1772
+
1773
+ @typing.final
1774
+ class DeleteSavedQueryResponse(google.protobuf.message.Message):
1775
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1776
+
1777
+ def __init__(self) -> None:
1778
+ ...
1779
+ global___DeleteSavedQueryResponse = DeleteSavedQueryResponse
1780
+
1781
+ @typing.final
1782
+ class GetSavedQueryRequest(google.protobuf.message.Message):
1783
+ """GetSavedQuery retrieves a saved query by id."""
1784
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1785
+ ID_FIELD_NUMBER: builtins.int
1786
+ id: builtins.str
1787
+
1788
+ def __init__(self, *, id: builtins.str=...) -> None:
1789
+ ...
1790
+
1791
+ def ClearField(self, field_name: typing.Literal['id', b'id']) -> None:
1792
+ ...
1793
+ global___GetSavedQueryRequest = GetSavedQueryRequest
1794
+
1795
+ @typing.final
1796
+ class GetSavedQueryResponse(google.protobuf.message.Message):
1797
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1798
+ SAVED_QUERY_FIELD_NUMBER: builtins.int
1799
+
1800
+ @property
1801
+ def saved_query(self) -> global___Query:
1802
+ ...
1803
+
1804
+ def __init__(self, *, saved_query: global___Query | None=...) -> None:
1805
+ ...
1806
+
1807
+ def HasField(self, field_name: typing.Literal['saved_query', b'saved_query']) -> builtins.bool:
1808
+ ...
1809
+
1810
+ def ClearField(self, field_name: typing.Literal['saved_query', b'saved_query']) -> None:
1811
+ ...
1812
+ global___GetSavedQueryResponse = GetSavedQueryResponse
1813
+
1814
+ @typing.final
1815
+ class UpdateSavedQueryRequest(google.protobuf.message.Message):
1816
+ """UpdateSavedQuery updates the saved query with the given id."""
1817
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1818
+ ID_FIELD_NUMBER: builtins.int
1819
+ NAME_FIELD_NUMBER: builtins.int
1820
+ MQL_BINARY_FIELD_NUMBER: builtins.int
1821
+ id: builtins.str
1822
+ name: builtins.str
1823
+
1824
+ @property
1825
+ def mql_binary(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.bytes]:
1826
+ ...
1827
+
1828
+ def __init__(self, *, id: builtins.str=..., name: builtins.str=..., mql_binary: collections.abc.Iterable[builtins.bytes] | None=...) -> None:
1829
+ ...
1830
+
1831
+ def ClearField(self, field_name: typing.Literal['id', b'id', 'mql_binary', b'mql_binary', 'name', b'name']) -> None:
1832
+ ...
1833
+ global___UpdateSavedQueryRequest = UpdateSavedQueryRequest
1834
+
1835
+ @typing.final
1836
+ class UpdateSavedQueryResponse(google.protobuf.message.Message):
1837
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1838
+
1839
+ def __init__(self) -> None:
1840
+ ...
1841
+ global___UpdateSavedQueryResponse = UpdateSavedQueryResponse
1842
+
1843
+ @typing.final
1844
+ class ListSavedQueriesRequest(google.protobuf.message.Message):
1845
+ """ListSavedQueries lists saved queries for a given organization."""
1846
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1847
+ ORGANIZATION_ID_FIELD_NUMBER: builtins.int
1848
+ LIMIT_FIELD_NUMBER: builtins.int
1849
+ organization_id: builtins.str
1850
+ limit: builtins.int
1851
+
1852
+ def __init__(self, *, organization_id: builtins.str=..., limit: builtins.int=...) -> None:
1853
+ ...
1854
+
1855
+ def ClearField(self, field_name: typing.Literal['limit', b'limit', 'organization_id', b'organization_id']) -> None:
1856
+ ...
1857
+ global___ListSavedQueriesRequest = ListSavedQueriesRequest
1858
+
1859
+ @typing.final
1860
+ class ListSavedQueriesResponse(google.protobuf.message.Message):
1861
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1862
+ QUERIES_FIELD_NUMBER: builtins.int
1863
+
1864
+ @property
1865
+ def queries(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Query]:
1866
+ ...
1867
+
1868
+ def __init__(self, *, queries: collections.abc.Iterable[global___Query] | None=...) -> None:
1869
+ ...
1870
+
1871
+ def ClearField(self, field_name: typing.Literal['queries', b'queries']) -> None:
1872
+ ...
1873
+ global___ListSavedQueriesResponse = ListSavedQueriesResponse
1874
+
1875
+ @typing.final
1876
+ class CreateBinaryDataSignedURLRequest(google.protobuf.message.Message):
1877
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1878
+ BINARY_DATA_ID_FIELD_NUMBER: builtins.int
1879
+ EXPIRATION_MINUTES_FIELD_NUMBER: builtins.int
1880
+ binary_data_id: builtins.str
1881
+ 'The binary data ID of the file to create a signed URL for.'
1882
+ expiration_minutes: builtins.int
1883
+ 'Expiration time in minutes. Defaults to 15 minutes if not specified.\n Maximum allowed is 10080 minutes (7 days).\n '
1884
+
1885
+ def __init__(self, *, binary_data_id: builtins.str=..., expiration_minutes: builtins.int | None=...) -> None:
1886
+ ...
1887
+
1888
+ def HasField(self, field_name: typing.Literal['_expiration_minutes', b'_expiration_minutes', 'expiration_minutes', b'expiration_minutes']) -> builtins.bool:
1889
+ ...
1890
+
1891
+ def ClearField(self, field_name: typing.Literal['_expiration_minutes', b'_expiration_minutes', 'binary_data_id', b'binary_data_id', 'expiration_minutes', b'expiration_minutes']) -> None:
1892
+ ...
1893
+
1894
+ def WhichOneof(self, oneof_group: typing.Literal['_expiration_minutes', b'_expiration_minutes']) -> typing.Literal['expiration_minutes'] | None:
1895
+ ...
1896
+ global___CreateBinaryDataSignedURLRequest = CreateBinaryDataSignedURLRequest
1897
+
1898
+ @typing.final
1899
+ class CreateBinaryDataSignedURLResponse(google.protobuf.message.Message):
1900
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1901
+ SIGNED_URL_FIELD_NUMBER: builtins.int
1902
+ EXPIRES_AT_FIELD_NUMBER: builtins.int
1903
+ signed_url: builtins.str
1904
+ 'The signed URL for the binary data file.'
1905
+
1906
+ @property
1907
+ def expires_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
1908
+ """Expiration time of the signed URL token."""
1909
+
1910
+ def __init__(self, *, signed_url: builtins.str=..., expires_at: google.protobuf.timestamp_pb2.Timestamp | None=...) -> None:
1911
+ ...
1912
+
1913
+ def HasField(self, field_name: typing.Literal['expires_at', b'expires_at']) -> builtins.bool:
1914
+ ...
1915
+
1916
+ def ClearField(self, field_name: typing.Literal['expires_at', b'expires_at', 'signed_url', b'signed_url']) -> None:
954
1917
  ...
955
- global___BoundingBoxLabelsByFilterResponse = BoundingBoxLabelsByFilterResponse
1918
+ global___CreateBinaryDataSignedURLResponse = CreateBinaryDataSignedURLResponse