wandelbots_api_client 26.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (740) hide show
  1. wandelbots_api_client/__init__.py +48 -0
  2. wandelbots_api_client/api/__init__.py +63 -0
  3. wandelbots_api_client/api/application_api.py +1514 -0
  4. wandelbots_api_client/api/cell_api.py +1424 -0
  5. wandelbots_api_client/api/controller_api.py +2951 -0
  6. wandelbots_api_client/api/controller_ios_api.py +1205 -0
  7. wandelbots_api_client/api/coordinate_systems_api.py +1267 -0
  8. wandelbots_api_client/api/device_configuration_api.py +1193 -0
  9. wandelbots_api_client/api/library_program_api.py +1326 -0
  10. wandelbots_api_client/api/library_program_metadata_api.py +1090 -0
  11. wandelbots_api_client/api/library_recipe_api.py +1351 -0
  12. wandelbots_api_client/api/library_recipe_metadata_api.py +1050 -0
  13. wandelbots_api_client/api/license_api.py +865 -0
  14. wandelbots_api_client/api/motion_api.py +3596 -0
  15. wandelbots_api_client/api/motion_group_api.py +956 -0
  16. wandelbots_api_client/api/motion_group_infos_api.py +2611 -0
  17. wandelbots_api_client/api/motion_group_jogging_api.py +685 -0
  18. wandelbots_api_client/api/motion_group_kinematic_api.py +1055 -0
  19. wandelbots_api_client/api/program_api.py +1987 -0
  20. wandelbots_api_client/api/program_operator_api.py +1881 -0
  21. wandelbots_api_client/api/program_values_api.py +1444 -0
  22. wandelbots_api_client/api/store_collision_components_api.py +3074 -0
  23. wandelbots_api_client/api/store_collision_scenes_api.py +951 -0
  24. wandelbots_api_client/api/store_object_api.py +1387 -0
  25. wandelbots_api_client/api/system_api.py +1075 -0
  26. wandelbots_api_client/api/version_api.py +237 -0
  27. wandelbots_api_client/api/virtual_robot_api.py +1583 -0
  28. wandelbots_api_client/api/virtual_robot_behavior_api.py +649 -0
  29. wandelbots_api_client/api/virtual_robot_mode_api.py +1467 -0
  30. wandelbots_api_client/api/virtual_robot_setup_api.py +2116 -0
  31. wandelbots_api_client/api_client.py +688 -0
  32. wandelbots_api_client/api_response.py +20 -0
  33. wandelbots_api_client/authorization.py +243 -0
  34. wandelbots_api_client/configuration.py +579 -0
  35. wandelbots_api_client/exceptions.py +216 -0
  36. wandelbots_api_client/models/__init__.py +316 -0
  37. wandelbots_api_client/models/abb_controller.py +112 -0
  38. wandelbots_api_client/models/abb_controller_egm_server.py +87 -0
  39. wandelbots_api_client/models/activate_license_request.py +86 -0
  40. wandelbots_api_client/models/add_request.py +95 -0
  41. wandelbots_api_client/models/all_joint_positions_request.py +96 -0
  42. wandelbots_api_client/models/all_joint_positions_response.py +109 -0
  43. wandelbots_api_client/models/api_version.py +86 -0
  44. wandelbots_api_client/models/app.py +148 -0
  45. wandelbots_api_client/models/array_input.py +114 -0
  46. wandelbots_api_client/models/array_output.py +116 -0
  47. wandelbots_api_client/models/behavior.py +35 -0
  48. wandelbots_api_client/models/blending_auto.py +99 -0
  49. wandelbots_api_client/models/blending_position.py +97 -0
  50. wandelbots_api_client/models/box.py +98 -0
  51. wandelbots_api_client/models/box2.py +112 -0
  52. wandelbots_api_client/models/box3.py +112 -0
  53. wandelbots_api_client/models/capsule.py +87 -0
  54. wandelbots_api_client/models/capsule2.py +97 -0
  55. wandelbots_api_client/models/capsule3.py +101 -0
  56. wandelbots_api_client/models/capture.py +86 -0
  57. wandelbots_api_client/models/cell.py +142 -0
  58. wandelbots_api_client/models/circle.py +99 -0
  59. wandelbots_api_client/models/code_with_arguments.py +108 -0
  60. wandelbots_api_client/models/collection_value.py +322 -0
  61. wandelbots_api_client/models/collider.py +105 -0
  62. wandelbots_api_client/models/collider_input.py +105 -0
  63. wandelbots_api_client/models/collider_output.py +105 -0
  64. wandelbots_api_client/models/collider_output_shape.py +242 -0
  65. wandelbots_api_client/models/collider_shape.py +280 -0
  66. wandelbots_api_client/models/collision.py +110 -0
  67. wandelbots_api_client/models/collision_contact.py +92 -0
  68. wandelbots_api_client/models/collision_motion_group.py +124 -0
  69. wandelbots_api_client/models/collision_motion_group_assembly.py +128 -0
  70. wandelbots_api_client/models/collision_robot_configuration_input.py +121 -0
  71. wandelbots_api_client/models/collision_robot_configuration_output.py +121 -0
  72. wandelbots_api_client/models/collision_scene.py +117 -0
  73. wandelbots_api_client/models/collision_scene_assembly.py +133 -0
  74. wandelbots_api_client/models/command.py +140 -0
  75. wandelbots_api_client/models/command_settings.py +104 -0
  76. wandelbots_api_client/models/comparator.py +39 -0
  77. wandelbots_api_client/models/compound.py +114 -0
  78. wandelbots_api_client/models/container_environment_inner.py +87 -0
  79. wandelbots_api_client/models/container_image.py +122 -0
  80. wandelbots_api_client/models/container_image_secrets_inner.py +86 -0
  81. wandelbots_api_client/models/container_resources.py +89 -0
  82. wandelbots_api_client/models/container_storage.py +97 -0
  83. wandelbots_api_client/models/controller_capabilities.py +89 -0
  84. wandelbots_api_client/models/controller_instance.py +148 -0
  85. wandelbots_api_client/models/controller_instance_list.py +109 -0
  86. wandelbots_api_client/models/convex_hull.py +109 -0
  87. wandelbots_api_client/models/convex_hull2.py +97 -0
  88. wandelbots_api_client/models/convex_hull3.py +97 -0
  89. wandelbots_api_client/models/coordinate_system.py +108 -0
  90. wandelbots_api_client/models/coordinate_systems.py +109 -0
  91. wandelbots_api_client/models/create_program_run200_response.py +88 -0
  92. wandelbots_api_client/models/create_program_run_request.py +86 -0
  93. wandelbots_api_client/models/create_trigger200_response.py +86 -0
  94. wandelbots_api_client/models/create_trigger_request.py +101 -0
  95. wandelbots_api_client/models/cubic_spline.py +109 -0
  96. wandelbots_api_client/models/cubic_spline_cubic_spline_parameter.py +93 -0
  97. wandelbots_api_client/models/cubic_spline_parameter.py +93 -0
  98. wandelbots_api_client/models/cycle_time.py +86 -0
  99. wandelbots_api_client/models/cylinder.py +87 -0
  100. wandelbots_api_client/models/cylinder2.py +95 -0
  101. wandelbots_api_client/models/cylinder3.py +101 -0
  102. wandelbots_api_client/models/devices_inner.py +321 -0
  103. wandelbots_api_client/models/dh_parameter.py +98 -0
  104. wandelbots_api_client/models/direction.py +34 -0
  105. wandelbots_api_client/models/direction_jogging_request.py +136 -0
  106. wandelbots_api_client/models/error.py +87 -0
  107. wandelbots_api_client/models/execute_trajectory_request.py +182 -0
  108. wandelbots_api_client/models/execute_trajectory_response.py +223 -0
  109. wandelbots_api_client/models/execution_result.py +113 -0
  110. wandelbots_api_client/models/external_joint_stream_datapoint.py +96 -0
  111. wandelbots_api_client/models/external_joint_stream_datapoint_value.py +96 -0
  112. wandelbots_api_client/models/fanuc_controller.py +99 -0
  113. wandelbots_api_client/models/feedback_collision.py +126 -0
  114. wandelbots_api_client/models/feedback_joint_limit_exceeded.py +101 -0
  115. wandelbots_api_client/models/feedback_out_of_workspace.py +103 -0
  116. wandelbots_api_client/models/feedback_singularity.py +102 -0
  117. wandelbots_api_client/models/flag.py +86 -0
  118. wandelbots_api_client/models/force_vector.py +103 -0
  119. wandelbots_api_client/models/geometry.py +167 -0
  120. wandelbots_api_client/models/get_all_program_runs200_response.py +109 -0
  121. wandelbots_api_client/models/get_all_triggers200_response.py +109 -0
  122. wandelbots_api_client/models/get_mode_response.py +87 -0
  123. wandelbots_api_client/models/get_trajectory_response.py +112 -0
  124. wandelbots_api_client/models/get_trajectory_sample_response.py +90 -0
  125. wandelbots_api_client/models/google_protobuf_any.py +102 -0
  126. wandelbots_api_client/models/http_exception_response.py +86 -0
  127. wandelbots_api_client/models/http_validation_error.py +109 -0
  128. wandelbots_api_client/models/http_validation_error2.py +109 -0
  129. wandelbots_api_client/models/image_credentials.py +88 -0
  130. wandelbots_api_client/models/info_service_capabilities.py +110 -0
  131. wandelbots_api_client/models/initialize_movement_request.py +111 -0
  132. wandelbots_api_client/models/initialize_movement_response.py +96 -0
  133. wandelbots_api_client/models/initialize_movement_response_init_response.py +89 -0
  134. wandelbots_api_client/models/io.py +105 -0
  135. wandelbots_api_client/models/io_description.py +156 -0
  136. wandelbots_api_client/models/io_value.py +104 -0
  137. wandelbots_api_client/models/ios.py +109 -0
  138. wandelbots_api_client/models/jogging_response.py +117 -0
  139. wandelbots_api_client/models/jogging_service_capabilities.py +87 -0
  140. wandelbots_api_client/models/joint_jogging_request.py +108 -0
  141. wandelbots_api_client/models/joint_limit.py +123 -0
  142. wandelbots_api_client/models/joint_limit_exceeded.py +96 -0
  143. wandelbots_api_client/models/joint_position_request.py +104 -0
  144. wandelbots_api_client/models/joint_trajectory.py +117 -0
  145. wandelbots_api_client/models/joints.py +86 -0
  146. wandelbots_api_client/models/kinematic_service_capabilities.py +96 -0
  147. wandelbots_api_client/models/kuka_controller.py +112 -0
  148. wandelbots_api_client/models/kuka_controller_rsi_server.py +92 -0
  149. wandelbots_api_client/models/license.py +124 -0
  150. wandelbots_api_client/models/license_status.py +88 -0
  151. wandelbots_api_client/models/license_status_enum.py +37 -0
  152. wandelbots_api_client/models/limit_settings.py +223 -0
  153. wandelbots_api_client/models/limits_override.py +132 -0
  154. wandelbots_api_client/models/list_io_descriptions_response.py +109 -0
  155. wandelbots_api_client/models/list_io_values_response.py +109 -0
  156. wandelbots_api_client/models/list_payloads_response.py +109 -0
  157. wandelbots_api_client/models/list_program_metadata_response.py +109 -0
  158. wandelbots_api_client/models/list_recipe_metadata_response.py +109 -0
  159. wandelbots_api_client/models/list_response.py +109 -0
  160. wandelbots_api_client/models/list_tcps_response.py +112 -0
  161. wandelbots_api_client/models/location_inner.py +153 -0
  162. wandelbots_api_client/models/location_inner1.py +142 -0
  163. wandelbots_api_client/models/manufacturer.py +37 -0
  164. wandelbots_api_client/models/mode_change_response.py +97 -0
  165. wandelbots_api_client/models/motion_command.py +109 -0
  166. wandelbots_api_client/models/motion_command_blending.py +164 -0
  167. wandelbots_api_client/models/motion_command_path.py +221 -0
  168. wandelbots_api_client/models/motion_group_behavior_getter.py +87 -0
  169. wandelbots_api_client/models/motion_group_info.py +88 -0
  170. wandelbots_api_client/models/motion_group_infos.py +109 -0
  171. wandelbots_api_client/models/motion_group_instance.py +101 -0
  172. wandelbots_api_client/models/motion_group_instance_list.py +109 -0
  173. wandelbots_api_client/models/motion_group_joints.py +100 -0
  174. wandelbots_api_client/models/motion_group_physical.py +105 -0
  175. wandelbots_api_client/models/motion_group_specification.py +136 -0
  176. wandelbots_api_client/models/motion_group_state.py +180 -0
  177. wandelbots_api_client/models/motion_group_state_joint_limit_reached.py +86 -0
  178. wandelbots_api_client/models/motion_group_state_response.py +103 -0
  179. wandelbots_api_client/models/motion_id.py +88 -0
  180. wandelbots_api_client/models/motion_ids_list_response.py +89 -0
  181. wandelbots_api_client/models/motion_vector.py +103 -0
  182. wandelbots_api_client/models/mounting.py +98 -0
  183. wandelbots_api_client/models/move_request.py +162 -0
  184. wandelbots_api_client/models/move_response.py +91 -0
  185. wandelbots_api_client/models/move_to_trajectory_via_joint_ptp_request.py +107 -0
  186. wandelbots_api_client/models/movement.py +90 -0
  187. wandelbots_api_client/models/movement_error.py +90 -0
  188. wandelbots_api_client/models/movement_error_error.py +86 -0
  189. wandelbots_api_client/models/movement_movement.py +98 -0
  190. wandelbots_api_client/models/op_mode.py +93 -0
  191. wandelbots_api_client/models/opcua_node_value_trigger_config.py +100 -0
  192. wandelbots_api_client/models/opcua_node_value_trigger_config_node_value.py +159 -0
  193. wandelbots_api_client/models/optimizer_setup.py +145 -0
  194. wandelbots_api_client/models/out_of_workspace.py +92 -0
  195. wandelbots_api_client/models/path.py +109 -0
  196. wandelbots_api_client/models/path_cartesian_ptp.py +103 -0
  197. wandelbots_api_client/models/path_circle.py +108 -0
  198. wandelbots_api_client/models/path_cubic_spline.py +118 -0
  199. wandelbots_api_client/models/path_joint_ptp.py +96 -0
  200. wandelbots_api_client/models/path_line.py +103 -0
  201. wandelbots_api_client/models/pause_movement_request.py +95 -0
  202. wandelbots_api_client/models/pause_movement_response.py +96 -0
  203. wandelbots_api_client/models/pause_movement_response_pause_response.py +89 -0
  204. wandelbots_api_client/models/pause_on_io.py +96 -0
  205. wandelbots_api_client/models/payload.py +103 -0
  206. wandelbots_api_client/models/plan_collision_free_ptp_request.py +131 -0
  207. wandelbots_api_client/models/plan_collision_free_ptp_request_target.py +150 -0
  208. wandelbots_api_client/models/plan_failed_on_trajectory_response.py +149 -0
  209. wandelbots_api_client/models/plan_failed_response.py +136 -0
  210. wandelbots_api_client/models/plan_request.py +127 -0
  211. wandelbots_api_client/models/plan_response.py +112 -0
  212. wandelbots_api_client/models/plan_successful_response.py +100 -0
  213. wandelbots_api_client/models/plan_trajectory_failed_response.py +106 -0
  214. wandelbots_api_client/models/plan_trajectory_failed_response_error_feedback.py +209 -0
  215. wandelbots_api_client/models/plan_trajectory_request.py +154 -0
  216. wandelbots_api_client/models/plan_trajectory_response.py +92 -0
  217. wandelbots_api_client/models/plan_trajectory_response_response.py +147 -0
  218. wandelbots_api_client/models/plane2.py +93 -0
  219. wandelbots_api_client/models/plane3.py +93 -0
  220. wandelbots_api_client/models/planned_motion.py +125 -0
  221. wandelbots_api_client/models/planner_pose.py +100 -0
  222. wandelbots_api_client/models/planning_limits.py +168 -0
  223. wandelbots_api_client/models/planning_limits_limit_range.py +87 -0
  224. wandelbots_api_client/models/playback_speed_request.py +94 -0
  225. wandelbots_api_client/models/playback_speed_response.py +96 -0
  226. wandelbots_api_client/models/playback_speed_response_playback_speed_response.py +86 -0
  227. wandelbots_api_client/models/point_cloud.py +86 -0
  228. wandelbots_api_client/models/pose.py +107 -0
  229. wandelbots_api_client/models/pose2.py +93 -0
  230. wandelbots_api_client/models/program_metadata.py +100 -0
  231. wandelbots_api_client/models/program_run.py +168 -0
  232. wandelbots_api_client/models/program_run_object.py +103 -0
  233. wandelbots_api_client/models/program_run_state.py +37 -0
  234. wandelbots_api_client/models/program_runner_reference.py +88 -0
  235. wandelbots_api_client/models/pyjectory_datatypes_core_pose.py +88 -0
  236. wandelbots_api_client/models/pyjectory_datatypes_serializer_orientation.py +87 -0
  237. wandelbots_api_client/models/pyjectory_datatypes_serializer_pose.py +87 -0
  238. wandelbots_api_client/models/pyjectory_datatypes_serializer_position.py +87 -0
  239. wandelbots_api_client/models/pyriphery_etcd_etcd_configuration.py +101 -0
  240. wandelbots_api_client/models/pyriphery_hardware_isaac_isaac_configuration.py +101 -0
  241. wandelbots_api_client/models/pyriphery_opcua_opcua_configuration.py +99 -0
  242. wandelbots_api_client/models/pyriphery_pyrae_controller_controller_configuration.py +107 -0
  243. wandelbots_api_client/models/pyriphery_pyrae_robot_robot_configuration.py +119 -0
  244. wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_input.py +130 -0
  245. wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_output.py +130 -0
  246. wandelbots_api_client/models/pyriphery_robotics_robotcell_timer_configuration.py +102 -0
  247. wandelbots_api_client/models/pyriphery_robotics_simulation_robot_with_view_open3d_configuration.py +99 -0
  248. wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_io_configuration.py +94 -0
  249. wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_opcua_configuration.py +94 -0
  250. wandelbots_api_client/models/quaternion.py +89 -0
  251. wandelbots_api_client/models/recipe_metadata.py +102 -0
  252. wandelbots_api_client/models/rectangle.py +87 -0
  253. wandelbots_api_client/models/rectangle2.py +95 -0
  254. wandelbots_api_client/models/rectangle3.py +101 -0
  255. wandelbots_api_client/models/rectangular_capsule.py +94 -0
  256. wandelbots_api_client/models/rectangular_capsule2.py +103 -0
  257. wandelbots_api_client/models/rectangular_capsule3.py +103 -0
  258. wandelbots_api_client/models/release_channel.py +34 -0
  259. wandelbots_api_client/models/request.py +142 -0
  260. wandelbots_api_client/models/request1.py +140 -0
  261. wandelbots_api_client/models/response_get_devices_devices_get_inner.py +321 -0
  262. wandelbots_api_client/models/response_get_value_programs_values_key_get.py +317 -0
  263. wandelbots_api_client/models/response_get_values_programs_values_get_value.py +322 -0
  264. wandelbots_api_client/models/robot_controller.py +108 -0
  265. wandelbots_api_client/models/robot_controller_configuration.py +262 -0
  266. wandelbots_api_client/models/robot_controller_state.py +191 -0
  267. wandelbots_api_client/models/robot_link_geometry.py +98 -0
  268. wandelbots_api_client/models/robot_state.py +101 -0
  269. wandelbots_api_client/models/robot_system_mode.py +37 -0
  270. wandelbots_api_client/models/robot_tcp.py +104 -0
  271. wandelbots_api_client/models/robot_tcps.py +109 -0
  272. wandelbots_api_client/models/rotation_angle_types.py +58 -0
  273. wandelbots_api_client/models/rotation_angles.py +91 -0
  274. wandelbots_api_client/models/safety_configuration.py +182 -0
  275. wandelbots_api_client/models/safety_setup.py +172 -0
  276. wandelbots_api_client/models/safety_setup_safety_settings.py +106 -0
  277. wandelbots_api_client/models/safety_setup_safety_zone.py +103 -0
  278. wandelbots_api_client/models/safety_zone.py +98 -0
  279. wandelbots_api_client/models/safety_zone_limits.py +96 -0
  280. wandelbots_api_client/models/safety_zone_violation.py +86 -0
  281. wandelbots_api_client/models/service_status.py +96 -0
  282. wandelbots_api_client/models/service_status_phase.py +46 -0
  283. wandelbots_api_client/models/service_status_severity.py +35 -0
  284. wandelbots_api_client/models/service_status_status.py +90 -0
  285. wandelbots_api_client/models/set_io.py +93 -0
  286. wandelbots_api_client/models/set_playback_speed.py +91 -0
  287. wandelbots_api_client/models/single_joint_limit.py +112 -0
  288. wandelbots_api_client/models/singularity.py +110 -0
  289. wandelbots_api_client/models/singularity_type_enum.py +35 -0
  290. wandelbots_api_client/models/sphere.py +86 -0
  291. wandelbots_api_client/models/sphere2.py +94 -0
  292. wandelbots_api_client/models/sphere3.py +96 -0
  293. wandelbots_api_client/models/standstill.py +92 -0
  294. wandelbots_api_client/models/standstill_reason.py +36 -0
  295. wandelbots_api_client/models/standstill_standstill.py +99 -0
  296. wandelbots_api_client/models/start_movement_request.py +135 -0
  297. wandelbots_api_client/models/start_on_io.py +96 -0
  298. wandelbots_api_client/models/status.py +119 -0
  299. wandelbots_api_client/models/stop_response.py +109 -0
  300. wandelbots_api_client/models/store_value.py +349 -0
  301. wandelbots_api_client/models/stream_move_backward.py +90 -0
  302. wandelbots_api_client/models/stream_move_forward.py +90 -0
  303. wandelbots_api_client/models/stream_move_playback_speed.py +92 -0
  304. wandelbots_api_client/models/stream_move_request.py +207 -0
  305. wandelbots_api_client/models/stream_move_response.py +110 -0
  306. wandelbots_api_client/models/stream_move_to_trajectory.py +96 -0
  307. wandelbots_api_client/models/stream_stop.py +90 -0
  308. wandelbots_api_client/models/tcp_pose.py +105 -0
  309. wandelbots_api_client/models/tcp_pose_request.py +106 -0
  310. wandelbots_api_client/models/tool_geometry.py +111 -0
  311. wandelbots_api_client/models/trajectory_sample.py +139 -0
  312. wandelbots_api_client/models/trigger_object.py +110 -0
  313. wandelbots_api_client/models/trigger_type.py +33 -0
  314. wandelbots_api_client/models/universalrobots_controller.py +102 -0
  315. wandelbots_api_client/models/update_nova_version_request.py +87 -0
  316. wandelbots_api_client/models/update_program_metadata_request.py +88 -0
  317. wandelbots_api_client/models/update_recipe_metadata_request.py +88 -0
  318. wandelbots_api_client/models/update_trigger_request.py +100 -0
  319. wandelbots_api_client/models/validation_error.py +113 -0
  320. wandelbots_api_client/models/validation_error2.py +113 -0
  321. wandelbots_api_client/models/value.py +317 -0
  322. wandelbots_api_client/models/vector3d.py +88 -0
  323. wandelbots_api_client/models/version_number.py +113 -0
  324. wandelbots_api_client/models/virtual_controller.py +117 -0
  325. wandelbots_api_client/models/virtual_controller_types.py +153 -0
  326. wandelbots_api_client/models/virtual_robot_configuration.py +91 -0
  327. wandelbots_api_client/models/yaskawa_controller.py +99 -0
  328. wandelbots_api_client/py.typed +0 -0
  329. wandelbots_api_client/rest.py +188 -0
  330. wandelbots_api_client/v2/__init__.py +49 -0
  331. wandelbots_api_client/v2/api/__init__.py +55 -0
  332. wandelbots_api_client/v2/api/application_api.py +1532 -0
  333. wandelbots_api_client/v2/api/bus_inputs_outputs_api.py +4534 -0
  334. wandelbots_api_client/v2/api/cell_api.py +2163 -0
  335. wandelbots_api_client/v2/api/controller_api.py +3238 -0
  336. wandelbots_api_client/v2/api/controller_inputs_outputs_api.py +1244 -0
  337. wandelbots_api_client/v2/api/jogging_api.py +113 -0
  338. wandelbots_api_client/v2/api/kinematics_api.py +815 -0
  339. wandelbots_api_client/v2/api/license_api.py +877 -0
  340. wandelbots_api_client/v2/api/motion_group_api.py +689 -0
  341. wandelbots_api_client/v2/api/motion_group_models_api.py +1222 -0
  342. wandelbots_api_client/v2/api/nova_cloud_api.py +760 -0
  343. wandelbots_api_client/v2/api/program_api.py +988 -0
  344. wandelbots_api_client/v2/api/robot_configurations_api.py +485 -0
  345. wandelbots_api_client/v2/api/store_collision_components_api.py +3479 -0
  346. wandelbots_api_client/v2/api/store_collision_setups_api.py +1169 -0
  347. wandelbots_api_client/v2/api/store_object_api.py +1414 -0
  348. wandelbots_api_client/v2/api/system_api.py +2696 -0
  349. wandelbots_api_client/v2/api/trajectory_caching_api.py +1339 -0
  350. wandelbots_api_client/v2/api/trajectory_execution_api.py +115 -0
  351. wandelbots_api_client/v2/api/trajectory_planning_api.py +1067 -0
  352. wandelbots_api_client/v2/api/version_api.py +240 -0
  353. wandelbots_api_client/v2/api/virtual_controller_api.py +5303 -0
  354. wandelbots_api_client/v2/api/virtual_controller_behavior_api.py +863 -0
  355. wandelbots_api_client/v2/api/virtual_controller_inputs_outputs_api.py +895 -0
  356. wandelbots_api_client/v2/api_client.py +692 -0
  357. wandelbots_api_client/v2/api_response.py +20 -0
  358. wandelbots_api_client/v2/configuration.py +579 -0
  359. wandelbots_api_client/v2/exceptions.py +216 -0
  360. wandelbots_api_client/v2/models/__init__.py +376 -0
  361. wandelbots_api_client/v2/models/abb_controller.py +104 -0
  362. wandelbots_api_client/v2/models/abb_controller_egm_server.py +84 -0
  363. wandelbots_api_client/v2/models/activate_license_request.py +83 -0
  364. wandelbots_api_client/v2/models/add_trajectory_error.py +95 -0
  365. wandelbots_api_client/v2/models/add_trajectory_error_data.py +298 -0
  366. wandelbots_api_client/v2/models/add_trajectory_request.py +97 -0
  367. wandelbots_api_client/v2/models/add_trajectory_response.py +99 -0
  368. wandelbots_api_client/v2/models/add_virtual_controller_motion_group_request.py +147 -0
  369. wandelbots_api_client/v2/models/api_version.py +83 -0
  370. wandelbots_api_client/v2/models/app.py +156 -0
  371. wandelbots_api_client/v2/models/behavior.py +35 -0
  372. wandelbots_api_client/v2/models/blending_auto.py +97 -0
  373. wandelbots_api_client/v2/models/blending_position.py +143 -0
  374. wandelbots_api_client/v2/models/blending_space.py +34 -0
  375. wandelbots_api_client/v2/models/boolean_value.py +91 -0
  376. wandelbots_api_client/v2/models/box.py +109 -0
  377. wandelbots_api_client/v2/models/bus_io_description.py +111 -0
  378. wandelbots_api_client/v2/models/bus_io_modbus_client.py +100 -0
  379. wandelbots_api_client/v2/models/bus_io_modbus_server.py +127 -0
  380. wandelbots_api_client/v2/models/bus_io_modbus_tcp_client.py +98 -0
  381. wandelbots_api_client/v2/models/bus_io_modbus_tcp_server.py +97 -0
  382. wandelbots_api_client/v2/models/bus_io_modbus_virtual.py +90 -0
  383. wandelbots_api_client/v2/models/bus_io_profinet.py +131 -0
  384. wandelbots_api_client/v2/models/bus_io_profinet_default_route.py +84 -0
  385. wandelbots_api_client/v2/models/bus_io_profinet_ip_config.py +85 -0
  386. wandelbots_api_client/v2/models/bus_io_profinet_network.py +101 -0
  387. wandelbots_api_client/v2/models/bus_io_profinet_slot.py +92 -0
  388. wandelbots_api_client/v2/models/bus_io_profinet_virtual.py +90 -0
  389. wandelbots_api_client/v2/models/bus_io_type.py +223 -0
  390. wandelbots_api_client/v2/models/bus_ios_state.py +88 -0
  391. wandelbots_api_client/v2/models/bus_ios_state_enum.py +36 -0
  392. wandelbots_api_client/v2/models/capsule.py +94 -0
  393. wandelbots_api_client/v2/models/cartesian_limits.py +108 -0
  394. wandelbots_api_client/v2/models/cell.py +127 -0
  395. wandelbots_api_client/v2/models/cloud_config_status.py +164 -0
  396. wandelbots_api_client/v2/models/cloud_config_status_configured.py +97 -0
  397. wandelbots_api_client/v2/models/cloud_config_status_not_configured.py +90 -0
  398. wandelbots_api_client/v2/models/cloud_configuration.py +84 -0
  399. wandelbots_api_client/v2/models/cloud_connection_error.py +87 -0
  400. wandelbots_api_client/v2/models/cloud_connection_error_error.py +275 -0
  401. wandelbots_api_client/v2/models/cloud_connection_error_invalid_token.py +102 -0
  402. wandelbots_api_client/v2/models/cloud_connection_error_invalid_token_details.py +95 -0
  403. wandelbots_api_client/v2/models/cloud_connection_error_invalid_token_details_cloud_response.py +90 -0
  404. wandelbots_api_client/v2/models/cloud_connection_error_leafnode_connection_error.py +106 -0
  405. wandelbots_api_client/v2/models/cloud_connection_error_leafnode_connection_error_details.py +83 -0
  406. wandelbots_api_client/v2/models/cloud_connection_error_leafnode_connection_timeout.py +91 -0
  407. wandelbots_api_client/v2/models/cloud_connection_error_leafnode_restart_timeout.py +91 -0
  408. wandelbots_api_client/v2/models/cloud_connection_error_nats_failed.py +102 -0
  409. wandelbots_api_client/v2/models/cloud_connection_error_nats_failed_details.py +84 -0
  410. wandelbots_api_client/v2/models/cloud_connection_error_unexpected_response.py +104 -0
  411. wandelbots_api_client/v2/models/cloud_connection_error_unexpected_response_details.py +95 -0
  412. wandelbots_api_client/v2/models/cloud_connection_error_unexpected_response_details_cloud_response.py +85 -0
  413. wandelbots_api_client/v2/models/cloud_connection_request.py +98 -0
  414. wandelbots_api_client/v2/models/cloud_disconnection_error.py +89 -0
  415. wandelbots_api_client/v2/models/cloud_disconnection_status_disconnected.py +90 -0
  416. wandelbots_api_client/v2/models/cloud_disconnection_status_disconnecting.py +90 -0
  417. wandelbots_api_client/v2/models/cloud_registration_success_response.py +83 -0
  418. wandelbots_api_client/v2/models/collider.py +102 -0
  419. wandelbots_api_client/v2/models/collider_shape.py +278 -0
  420. wandelbots_api_client/v2/models/collision.py +107 -0
  421. wandelbots_api_client/v2/models/collision_contact.py +89 -0
  422. wandelbots_api_client/v2/models/collision_error.py +100 -0
  423. wandelbots_api_client/v2/models/collision_free_algorithm.py +164 -0
  424. wandelbots_api_client/v2/models/collision_motion_group.py +119 -0
  425. wandelbots_api_client/v2/models/collision_setup.py +130 -0
  426. wandelbots_api_client/v2/models/comparator.py +38 -0
  427. wandelbots_api_client/v2/models/configuration_archive_status.py +197 -0
  428. wandelbots_api_client/v2/models/configuration_archive_status_creating.py +94 -0
  429. wandelbots_api_client/v2/models/configuration_archive_status_error.py +91 -0
  430. wandelbots_api_client/v2/models/configuration_archive_status_success.py +90 -0
  431. wandelbots_api_client/v2/models/configuration_resource.py +104 -0
  432. wandelbots_api_client/v2/models/constrained_pose.py +87 -0
  433. wandelbots_api_client/v2/models/container_environment_inner.py +84 -0
  434. wandelbots_api_client/v2/models/container_image.py +110 -0
  435. wandelbots_api_client/v2/models/container_image_secrets_inner.py +83 -0
  436. wandelbots_api_client/v2/models/container_resources.py +87 -0
  437. wandelbots_api_client/v2/models/container_storage.py +94 -0
  438. wandelbots_api_client/v2/models/controller_description.py +97 -0
  439. wandelbots_api_client/v2/models/convex_hull.py +94 -0
  440. wandelbots_api_client/v2/models/coordinate_system.py +115 -0
  441. wandelbots_api_client/v2/models/coordinate_system_data.py +106 -0
  442. wandelbots_api_client/v2/models/cubic_spline_parameter.py +90 -0
  443. wandelbots_api_client/v2/models/cycle_time.py +86 -0
  444. wandelbots_api_client/v2/models/cylinder.py +92 -0
  445. wandelbots_api_client/v2/models/dh_parameter.py +98 -0
  446. wandelbots_api_client/v2/models/direction.py +34 -0
  447. wandelbots_api_client/v2/models/direction_constraint.py +107 -0
  448. wandelbots_api_client/v2/models/error.py +84 -0
  449. wandelbots_api_client/v2/models/error_direction_constraint_not_met.py +93 -0
  450. wandelbots_api_client/v2/models/error_direction_constraint_not_normalized.py +96 -0
  451. wandelbots_api_client/v2/models/error_invalid_joint_count.py +98 -0
  452. wandelbots_api_client/v2/models/error_joint_limit_exceeded.py +103 -0
  453. wandelbots_api_client/v2/models/error_joint_position_collision.py +106 -0
  454. wandelbots_api_client/v2/models/error_max_iterations_exceeded.py +91 -0
  455. wandelbots_api_client/v2/models/error_motion_group_key_mismatch.py +85 -0
  456. wandelbots_api_client/v2/models/error_unsupported_operation.py +90 -0
  457. wandelbots_api_client/v2/models/execute.py +95 -0
  458. wandelbots_api_client/v2/models/execute_details.py +164 -0
  459. wandelbots_api_client/v2/models/execute_jogging_request.py +204 -0
  460. wandelbots_api_client/v2/models/execute_jogging_response.py +246 -0
  461. wandelbots_api_client/v2/models/execute_trajectory_request.py +209 -0
  462. wandelbots_api_client/v2/models/execute_trajectory_response.py +246 -0
  463. wandelbots_api_client/v2/models/external_joint_stream_datapoint.py +93 -0
  464. wandelbots_api_client/v2/models/external_joint_stream_request.py +97 -0
  465. wandelbots_api_client/v2/models/fanuc_controller.py +91 -0
  466. wandelbots_api_client/v2/models/feedback_collision.py +112 -0
  467. wandelbots_api_client/v2/models/feedback_commands_missing.py +90 -0
  468. wandelbots_api_client/v2/models/feedback_cubic_spline_is_not_increasing.py +100 -0
  469. wandelbots_api_client/v2/models/feedback_cubic_spline_not_at_start_pose.py +105 -0
  470. wandelbots_api_client/v2/models/feedback_direction_constraint_no_solution_exists.py +93 -0
  471. wandelbots_api_client/v2/models/feedback_direction_constraint_not_met.py +93 -0
  472. wandelbots_api_client/v2/models/feedback_direction_constraint_not_normalized.py +96 -0
  473. wandelbots_api_client/v2/models/feedback_invalid_dof.py +101 -0
  474. wandelbots_api_client/v2/models/feedback_invalid_nan_value.py +91 -0
  475. wandelbots_api_client/v2/models/feedback_invalid_sampling_time.py +91 -0
  476. wandelbots_api_client/v2/models/feedback_joint_limit_exceeded.py +99 -0
  477. wandelbots_api_client/v2/models/feedback_no_solution_in_current_configuration.py +100 -0
  478. wandelbots_api_client/v2/models/feedback_out_of_workspace.py +100 -0
  479. wandelbots_api_client/v2/models/feedback_singularity.py +99 -0
  480. wandelbots_api_client/v2/models/feedback_start_joints_missing.py +98 -0
  481. wandelbots_api_client/v2/models/feedback_torque_exceeded.py +98 -0
  482. wandelbots_api_client/v2/models/flag.py +83 -0
  483. wandelbots_api_client/v2/models/flange_payload.py +98 -0
  484. wandelbots_api_client/v2/models/float_value.py +91 -0
  485. wandelbots_api_client/v2/models/forward_kinematics422_response.py +97 -0
  486. wandelbots_api_client/v2/models/forward_kinematics_request.py +104 -0
  487. wandelbots_api_client/v2/models/forward_kinematics_response.py +93 -0
  488. wandelbots_api_client/v2/models/forward_kinematics_validation_error.py +107 -0
  489. wandelbots_api_client/v2/models/get_trajectory_response.py +97 -0
  490. wandelbots_api_client/v2/models/http_validation_error.py +93 -0
  491. wandelbots_api_client/v2/models/image_credentials.py +85 -0
  492. wandelbots_api_client/v2/models/inconsistent_trajectory_size_error.py +106 -0
  493. wandelbots_api_client/v2/models/inconsistent_trajectory_size_error_inconsistent_trajectory_size.py +91 -0
  494. wandelbots_api_client/v2/models/initialize_jogging_request.py +95 -0
  495. wandelbots_api_client/v2/models/initialize_jogging_response.py +91 -0
  496. wandelbots_api_client/v2/models/initialize_movement_request.py +112 -0
  497. wandelbots_api_client/v2/models/initialize_movement_request_trajectory.py +164 -0
  498. wandelbots_api_client/v2/models/initialize_movement_response.py +107 -0
  499. wandelbots_api_client/v2/models/integer_value.py +91 -0
  500. wandelbots_api_client/v2/models/invalid_dof_error.py +100 -0
  501. wandelbots_api_client/v2/models/invalid_dof_error_invalid_dof.py +86 -0
  502. wandelbots_api_client/v2/models/inverse_kinematics422_response.py +97 -0
  503. wandelbots_api_client/v2/models/inverse_kinematics_request.py +152 -0
  504. wandelbots_api_client/v2/models/inverse_kinematics_response.py +83 -0
  505. wandelbots_api_client/v2/models/inverse_kinematics_validation_error.py +107 -0
  506. wandelbots_api_client/v2/models/inverse_kinematics_validation_error_all_of_data.py +164 -0
  507. wandelbots_api_client/v2/models/io_boolean_value.py +92 -0
  508. wandelbots_api_client/v2/models/io_boundary.py +183 -0
  509. wandelbots_api_client/v2/models/io_description.py +116 -0
  510. wandelbots_api_client/v2/models/io_direction.py +34 -0
  511. wandelbots_api_client/v2/models/io_float_value.py +92 -0
  512. wandelbots_api_client/v2/models/io_integer_value.py +94 -0
  513. wandelbots_api_client/v2/models/io_origin.py +34 -0
  514. wandelbots_api_client/v2/models/io_value.py +183 -0
  515. wandelbots_api_client/v2/models/io_value_type.py +35 -0
  516. wandelbots_api_client/v2/models/jogging_details.py +97 -0
  517. wandelbots_api_client/v2/models/jogging_details_state.py +275 -0
  518. wandelbots_api_client/v2/models/jogging_paused_by_user.py +90 -0
  519. wandelbots_api_client/v2/models/jogging_paused_near_collision.py +91 -0
  520. wandelbots_api_client/v2/models/jogging_paused_near_joint_limit.py +92 -0
  521. wandelbots_api_client/v2/models/jogging_paused_near_singularity.py +91 -0
  522. wandelbots_api_client/v2/models/jogging_paused_on_io.py +90 -0
  523. wandelbots_api_client/v2/models/jogging_running.py +90 -0
  524. wandelbots_api_client/v2/models/joint_limit_exceeded_error.py +102 -0
  525. wandelbots_api_client/v2/models/joint_limits.py +101 -0
  526. wandelbots_api_client/v2/models/joint_ptp_motion.py +99 -0
  527. wandelbots_api_client/v2/models/joint_trajectory.py +89 -0
  528. wandelbots_api_client/v2/models/joint_type_enum.py +34 -0
  529. wandelbots_api_client/v2/models/joint_velocity_request.py +91 -0
  530. wandelbots_api_client/v2/models/joint_velocity_response.py +91 -0
  531. wandelbots_api_client/v2/models/kinematic_model.py +118 -0
  532. wandelbots_api_client/v2/models/kuka_controller.py +106 -0
  533. wandelbots_api_client/v2/models/kuka_controller_rsi_server.py +89 -0
  534. wandelbots_api_client/v2/models/license.py +121 -0
  535. wandelbots_api_client/v2/models/license_status.py +85 -0
  536. wandelbots_api_client/v2/models/license_status_enum.py +37 -0
  537. wandelbots_api_client/v2/models/limit_range.py +84 -0
  538. wandelbots_api_client/v2/models/limit_set.py +118 -0
  539. wandelbots_api_client/v2/models/limits_override.py +136 -0
  540. wandelbots_api_client/v2/models/list_trajectories_response.py +86 -0
  541. wandelbots_api_client/v2/models/location1_inner.py +153 -0
  542. wandelbots_api_client/v2/models/manufacturer.py +37 -0
  543. wandelbots_api_client/v2/models/merge_trajectories422_response.py +97 -0
  544. wandelbots_api_client/v2/models/merge_trajectories_error.py +97 -0
  545. wandelbots_api_client/v2/models/merge_trajectories_error_error_feedback.py +209 -0
  546. wandelbots_api_client/v2/models/merge_trajectories_request.py +107 -0
  547. wandelbots_api_client/v2/models/merge_trajectories_response.py +109 -0
  548. wandelbots_api_client/v2/models/merge_trajectories_response_feedback_inner.py +147 -0
  549. wandelbots_api_client/v2/models/merge_trajectories_segment.py +126 -0
  550. wandelbots_api_client/v2/models/merge_trajectories_validation_error.py +109 -0
  551. wandelbots_api_client/v2/models/midpoint_insertion_algorithm.py +102 -0
  552. wandelbots_api_client/v2/models/modbus_io.py +109 -0
  553. wandelbots_api_client/v2/models/modbus_io_area.py +37 -0
  554. wandelbots_api_client/v2/models/modbus_io_byte_order.py +37 -0
  555. wandelbots_api_client/v2/models/modbus_io_data.py +105 -0
  556. wandelbots_api_client/v2/models/modbus_io_type_enum.py +36 -0
  557. wandelbots_api_client/v2/models/motion_command.py +106 -0
  558. wandelbots_api_client/v2/models/motion_command_blending.py +164 -0
  559. wandelbots_api_client/v2/models/motion_command_path.py +298 -0
  560. wandelbots_api_client/v2/models/motion_group_description.py +241 -0
  561. wandelbots_api_client/v2/models/motion_group_from_json.py +100 -0
  562. wandelbots_api_client/v2/models/motion_group_from_type.py +96 -0
  563. wandelbots_api_client/v2/models/motion_group_info.py +90 -0
  564. wandelbots_api_client/v2/models/motion_group_joints.py +97 -0
  565. wandelbots_api_client/v2/models/motion_group_setup.py +140 -0
  566. wandelbots_api_client/v2/models/motion_group_state.py +187 -0
  567. wandelbots_api_client/v2/models/motion_group_state_joint_limit_reached.py +83 -0
  568. wandelbots_api_client/v2/models/movement_error_response.py +91 -0
  569. wandelbots_api_client/v2/models/multi_collision_setup.py +115 -0
  570. wandelbots_api_client/v2/models/multi_error_invalid_joint_count.py +101 -0
  571. wandelbots_api_client/v2/models/multi_error_joint_limit_exceeded.py +101 -0
  572. wandelbots_api_client/v2/models/multi_error_joint_position_collision.py +99 -0
  573. wandelbots_api_client/v2/models/multi_joint_trajectory.py +93 -0
  574. wandelbots_api_client/v2/models/multi_search_collision_free422_response.py +97 -0
  575. wandelbots_api_client/v2/models/multi_search_collision_free_request.py +149 -0
  576. wandelbots_api_client/v2/models/multi_search_collision_free_response.py +89 -0
  577. wandelbots_api_client/v2/models/multi_search_collision_free_response_response.py +147 -0
  578. wandelbots_api_client/v2/models/multi_search_collision_free_validation_error.py +109 -0
  579. wandelbots_api_client/v2/models/multi_search_collision_free_validation_error_all_of_data.py +197 -0
  580. wandelbots_api_client/v2/models/nan_value_error.py +100 -0
  581. wandelbots_api_client/v2/models/nan_value_error_nan_value.py +85 -0
  582. wandelbots_api_client/v2/models/network_device.py +85 -0
  583. wandelbots_api_client/v2/models/network_interface.py +86 -0
  584. wandelbots_api_client/v2/models/network_state.py +125 -0
  585. wandelbots_api_client/v2/models/op_mode.py +84 -0
  586. wandelbots_api_client/v2/models/operating_state.py +34 -0
  587. wandelbots_api_client/v2/models/operation_limits.py +106 -0
  588. wandelbots_api_client/v2/models/operation_mode.py +42 -0
  589. wandelbots_api_client/v2/models/orientation_type.py +58 -0
  590. wandelbots_api_client/v2/models/path_cartesian_ptp.py +100 -0
  591. wandelbots_api_client/v2/models/path_circle.py +105 -0
  592. wandelbots_api_client/v2/models/path_cubic_spline.py +106 -0
  593. wandelbots_api_client/v2/models/path_direction_constrained_cartesian_ptp.py +106 -0
  594. wandelbots_api_client/v2/models/path_direction_constrained_joint_ptp.py +102 -0
  595. wandelbots_api_client/v2/models/path_joint_ptp.py +93 -0
  596. wandelbots_api_client/v2/models/path_line.py +100 -0
  597. wandelbots_api_client/v2/models/pause_jogging_request.py +90 -0
  598. wandelbots_api_client/v2/models/pause_jogging_response.py +91 -0
  599. wandelbots_api_client/v2/models/pause_movement_request.py +90 -0
  600. wandelbots_api_client/v2/models/pause_movement_response.py +91 -0
  601. wandelbots_api_client/v2/models/pause_on_io.py +99 -0
  602. wandelbots_api_client/v2/models/payload.py +98 -0
  603. wandelbots_api_client/v2/models/plan422_response.py +93 -0
  604. wandelbots_api_client/v2/models/plan_collision_free_failed_response.py +93 -0
  605. wandelbots_api_client/v2/models/plan_collision_free_request.py +118 -0
  606. wandelbots_api_client/v2/models/plan_collision_free_response.py +89 -0
  607. wandelbots_api_client/v2/models/plan_collision_free_response_response.py +147 -0
  608. wandelbots_api_client/v2/models/plan_trajectory_failed_response.py +105 -0
  609. wandelbots_api_client/v2/models/plan_trajectory_failed_response_error_feedback.py +505 -0
  610. wandelbots_api_client/v2/models/plan_trajectory_request.py +113 -0
  611. wandelbots_api_client/v2/models/plan_trajectory_response.py +89 -0
  612. wandelbots_api_client/v2/models/plan_trajectory_response_response.py +147 -0
  613. wandelbots_api_client/v2/models/plan_validation_error.py +107 -0
  614. wandelbots_api_client/v2/models/plan_validation_error_all_of_data.py +275 -0
  615. wandelbots_api_client/v2/models/plane.py +90 -0
  616. wandelbots_api_client/v2/models/playback_speed_request.py +96 -0
  617. wandelbots_api_client/v2/models/playback_speed_response.py +91 -0
  618. wandelbots_api_client/v2/models/pose.py +90 -0
  619. wandelbots_api_client/v2/models/profinet_description.py +112 -0
  620. wandelbots_api_client/v2/models/profinet_input_output_config.py +98 -0
  621. wandelbots_api_client/v2/models/profinet_io.py +109 -0
  622. wandelbots_api_client/v2/models/profinet_io_data.py +105 -0
  623. wandelbots_api_client/v2/models/profinet_io_direction.py +35 -0
  624. wandelbots_api_client/v2/models/profinet_io_type_enum.py +42 -0
  625. wandelbots_api_client/v2/models/profinet_slot_description.py +106 -0
  626. wandelbots_api_client/v2/models/profinet_sub_slot_description.py +92 -0
  627. wandelbots_api_client/v2/models/program.py +105 -0
  628. wandelbots_api_client/v2/models/program_run.py +124 -0
  629. wandelbots_api_client/v2/models/program_run_state.py +37 -0
  630. wandelbots_api_client/v2/models/program_start_request.py +83 -0
  631. wandelbots_api_client/v2/models/project_joint_position_direction_constraint422_response.py +99 -0
  632. wandelbots_api_client/v2/models/project_joint_position_direction_constraint_request.py +148 -0
  633. wandelbots_api_client/v2/models/project_joint_position_direction_constraint_response.py +85 -0
  634. wandelbots_api_client/v2/models/project_joint_position_direction_constraint_validation_error.py +111 -0
  635. wandelbots_api_client/v2/models/project_joint_position_direction_constraint_validation_error_all_of_data.py +189 -0
  636. wandelbots_api_client/v2/models/rectangle.py +92 -0
  637. wandelbots_api_client/v2/models/rectangular_capsule.py +100 -0
  638. wandelbots_api_client/v2/models/release_channel.py +34 -0
  639. wandelbots_api_client/v2/models/robot_controller.py +105 -0
  640. wandelbots_api_client/v2/models/robot_controller_configuration.py +262 -0
  641. wandelbots_api_client/v2/models/robot_controller_configuration_request.py +99 -0
  642. wandelbots_api_client/v2/models/robot_controller_state.py +138 -0
  643. wandelbots_api_client/v2/models/robot_system_mode.py +37 -0
  644. wandelbots_api_client/v2/models/robot_tcp.py +110 -0
  645. wandelbots_api_client/v2/models/robot_tcp_data.py +108 -0
  646. wandelbots_api_client/v2/models/rrt_connect_algorithm.py +127 -0
  647. wandelbots_api_client/v2/models/safety_geometry.py +125 -0
  648. wandelbots_api_client/v2/models/safety_geometry_box.py +89 -0
  649. wandelbots_api_client/v2/models/safety_geometry_capsule.py +90 -0
  650. wandelbots_api_client/v2/models/safety_geometry_lozenge.py +97 -0
  651. wandelbots_api_client/v2/models/safety_geometry_plane.py +86 -0
  652. wandelbots_api_client/v2/models/safety_geometry_prism.py +88 -0
  653. wandelbots_api_client/v2/models/safety_geometry_sphere.py +87 -0
  654. wandelbots_api_client/v2/models/safety_state_type.py +48 -0
  655. wandelbots_api_client/v2/models/safety_zone.py +111 -0
  656. wandelbots_api_client/v2/models/safety_zone_pose.py +99 -0
  657. wandelbots_api_client/v2/models/safety_zones.py +97 -0
  658. wandelbots_api_client/v2/models/service_group.py +36 -0
  659. wandelbots_api_client/v2/models/service_status.py +96 -0
  660. wandelbots_api_client/v2/models/service_status_phase.py +46 -0
  661. wandelbots_api_client/v2/models/service_status_response.py +100 -0
  662. wandelbots_api_client/v2/models/service_status_severity.py +35 -0
  663. wandelbots_api_client/v2/models/service_status_status.py +87 -0
  664. wandelbots_api_client/v2/models/set_io.py +96 -0
  665. wandelbots_api_client/v2/models/settable_robot_system_mode.py +36 -0
  666. wandelbots_api_client/v2/models/singularity_type_enum.py +35 -0
  667. wandelbots_api_client/v2/models/sphere.py +91 -0
  668. wandelbots_api_client/v2/models/start_movement_request.py +133 -0
  669. wandelbots_api_client/v2/models/start_movement_response.py +91 -0
  670. wandelbots_api_client/v2/models/start_on_io.py +99 -0
  671. wandelbots_api_client/v2/models/stream_io_values_response.py +103 -0
  672. wandelbots_api_client/v2/models/tcp_offset.py +88 -0
  673. wandelbots_api_client/v2/models/tcp_required_error.py +96 -0
  674. wandelbots_api_client/v2/models/tcp_velocity_request.py +110 -0
  675. wandelbots_api_client/v2/models/tcp_velocity_response.py +91 -0
  676. wandelbots_api_client/v2/models/torque_exceeded_error.py +102 -0
  677. wandelbots_api_client/v2/models/torque_exceeded_error_torque_exceeded.py +86 -0
  678. wandelbots_api_client/v2/models/trajectory_data.py +106 -0
  679. wandelbots_api_client/v2/models/trajectory_details.py +106 -0
  680. wandelbots_api_client/v2/models/trajectory_details_state.py +239 -0
  681. wandelbots_api_client/v2/models/trajectory_ended.py +90 -0
  682. wandelbots_api_client/v2/models/trajectory_id.py +93 -0
  683. wandelbots_api_client/v2/models/trajectory_paused_by_user.py +90 -0
  684. wandelbots_api_client/v2/models/trajectory_paused_on_io.py +90 -0
  685. wandelbots_api_client/v2/models/trajectory_running.py +94 -0
  686. wandelbots_api_client/v2/models/trajectory_section.py +84 -0
  687. wandelbots_api_client/v2/models/trajectory_wait_for_io.py +90 -0
  688. wandelbots_api_client/v2/models/unit_type.py +42 -0
  689. wandelbots_api_client/v2/models/universalrobots_controller.py +91 -0
  690. wandelbots_api_client/v2/models/update_cell_version_request.py +84 -0
  691. wandelbots_api_client/v2/models/update_nova_version_request.py +90 -0
  692. wandelbots_api_client/v2/models/validation_error.py +101 -0
  693. wandelbots_api_client/v2/models/validation_error2.py +85 -0
  694. wandelbots_api_client/v2/models/virtual_controller.py +113 -0
  695. wandelbots_api_client/v2/models/virtual_robot_configuration.py +88 -0
  696. wandelbots_api_client/v2/models/wait_for_io_event_request.py +93 -0
  697. wandelbots_api_client/v2/models/yaskawa_controller.py +91 -0
  698. wandelbots_api_client/v2/models/zod_validation_error.py +87 -0
  699. wandelbots_api_client/v2/models/zod_validation_error_error.py +108 -0
  700. wandelbots_api_client/v2/models/zod_validation_error_error_details_inner.py +101 -0
  701. wandelbots_api_client/v2/models/zod_validation_error_error_details_inner_path_inner.py +153 -0
  702. wandelbots_api_client/v2/py.typed +0 -0
  703. wandelbots_api_client/v2/rest.py +188 -0
  704. wandelbots_api_client/v2_pydantic/__init__.py +49 -0
  705. wandelbots_api_client/v2_pydantic/api/__init__.py +55 -0
  706. wandelbots_api_client/v2_pydantic/api/application_api.py +1532 -0
  707. wandelbots_api_client/v2_pydantic/api/bus_inputs_outputs_api.py +4534 -0
  708. wandelbots_api_client/v2_pydantic/api/cell_api.py +2163 -0
  709. wandelbots_api_client/v2_pydantic/api/controller_api.py +3238 -0
  710. wandelbots_api_client/v2_pydantic/api/controller_inputs_outputs_api.py +1244 -0
  711. wandelbots_api_client/v2_pydantic/api/jogging_api.py +113 -0
  712. wandelbots_api_client/v2_pydantic/api/kinematics_api.py +811 -0
  713. wandelbots_api_client/v2_pydantic/api/license_api.py +877 -0
  714. wandelbots_api_client/v2_pydantic/api/motion_group_api.py +689 -0
  715. wandelbots_api_client/v2_pydantic/api/motion_group_models_api.py +1222 -0
  716. wandelbots_api_client/v2_pydantic/api/nova_cloud_api.py +760 -0
  717. wandelbots_api_client/v2_pydantic/api/program_api.py +988 -0
  718. wandelbots_api_client/v2_pydantic/api/robot_configurations_api.py +485 -0
  719. wandelbots_api_client/v2_pydantic/api/store_collision_components_api.py +3479 -0
  720. wandelbots_api_client/v2_pydantic/api/store_collision_setups_api.py +1169 -0
  721. wandelbots_api_client/v2_pydantic/api/store_object_api.py +1414 -0
  722. wandelbots_api_client/v2_pydantic/api/system_api.py +2696 -0
  723. wandelbots_api_client/v2_pydantic/api/trajectory_caching_api.py +1339 -0
  724. wandelbots_api_client/v2_pydantic/api/trajectory_execution_api.py +115 -0
  725. wandelbots_api_client/v2_pydantic/api/trajectory_planning_api.py +1067 -0
  726. wandelbots_api_client/v2_pydantic/api/version_api.py +240 -0
  727. wandelbots_api_client/v2_pydantic/api/virtual_controller_api.py +5303 -0
  728. wandelbots_api_client/v2_pydantic/api/virtual_controller_behavior_api.py +863 -0
  729. wandelbots_api_client/v2_pydantic/api/virtual_controller_inputs_outputs_api.py +895 -0
  730. wandelbots_api_client/v2_pydantic/api_client.py +692 -0
  731. wandelbots_api_client/v2_pydantic/api_response.py +20 -0
  732. wandelbots_api_client/v2_pydantic/configuration.py +579 -0
  733. wandelbots_api_client/v2_pydantic/exceptions.py +216 -0
  734. wandelbots_api_client/v2_pydantic/models/__init__.py +748 -0
  735. wandelbots_api_client/v2_pydantic/models/models.py +5909 -0
  736. wandelbots_api_client/v2_pydantic/py.typed +0 -0
  737. wandelbots_api_client/v2_pydantic/rest.py +188 -0
  738. wandelbots_api_client-26.3.0.dist-info/METADATA +241 -0
  739. wandelbots_api_client-26.3.0.dist-info/RECORD +740 -0
  740. wandelbots_api_client-26.3.0.dist-info/WHEEL +4 -0
@@ -0,0 +1,1067 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Wandelbots NOVA API
5
+
6
+ Interact with robots in an easy and intuitive way.
7
+
8
+ The version of the OpenAPI document: 2.3.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ from furl import furl
15
+ import json
16
+ import humps
17
+ import re
18
+ import warnings
19
+ import websockets
20
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
21
+ from typing import Any, AsyncGenerator, Callable, Dict, List, Optional, Tuple, Union
22
+ from typing_extensions import Annotated
23
+ from urllib.parse import quote
24
+
25
+ from pydantic import Field, StrictStr
26
+ from typing_extensions import Annotated
27
+ from wandelbots_api_client.v2_pydantic.models import MergeTrajectoriesRequest
28
+ from wandelbots_api_client.v2_pydantic.models import MergeTrajectoriesResponse
29
+ from wandelbots_api_client.v2_pydantic.models import MultiSearchCollisionFreeRequest
30
+ from wandelbots_api_client.v2_pydantic.models import MultiSearchCollisionFreeResponse
31
+ from wandelbots_api_client.v2_pydantic.models import PlanCollisionFreeRequest
32
+ from wandelbots_api_client.v2_pydantic.models import PlanCollisionFreeResponse
33
+ from wandelbots_api_client.v2_pydantic.models import PlanTrajectoryRequest
34
+ from wandelbots_api_client.v2_pydantic.models import PlanTrajectoryResponse
35
+
36
+ from wandelbots_api_client.v2_pydantic.api_client import ApiClient, RequestSerialized
37
+ from wandelbots_api_client.v2_pydantic.api_response import ApiResponse
38
+ from wandelbots_api_client.v2_pydantic.rest import RESTResponseType
39
+
40
+
41
+ class TrajectoryPlanningApi:
42
+ """NOTE: This class is auto generated by OpenAPI Generator
43
+ Ref: https://openapi-generator.tech
44
+
45
+ Do not edit the class manually.
46
+ """
47
+
48
+ def __init__(self, api_client=None) -> None:
49
+ if api_client is None:
50
+ api_client = ApiClient.get_default()
51
+ self.api_client = api_client
52
+
53
+ @validate_call
54
+ async def merge_trajectories(
55
+ self,
56
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
57
+ merge_trajectories_request: MergeTrajectoriesRequest,
58
+ _request_timeout: Union[
59
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
60
+ ] = None,
61
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
62
+ _content_type: Optional[StrictStr] = None,
63
+ _headers: Optional[Dict[StrictStr, Any]] = None,
64
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
65
+ ) -> MergeTrajectoriesResponse:
66
+ """Merge Trajectories
67
+
68
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ <!-- theme: danger --> > **Experimental** Merges a list of joint trajectories into a single trajectory with collision-aware blending. This endpoint merges a list of separate trajectories by connecting them via blending. The blending is performed with collision checking to ensure the merged trajectory is safe to execute. Timescaling will be applied to the blended area to ensure all limits are respected.
69
+
70
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
71
+ :type cell: str
72
+ :param merge_trajectories_request: (required)
73
+ :type merge_trajectories_request: MergeTrajectoriesRequest
74
+ :param _request_timeout: timeout setting for this request. If one
75
+ number provided, it will be total request
76
+ timeout. It can also be a pair (tuple) of
77
+ (connection, read) timeouts.
78
+ :type _request_timeout: int, tuple(int, int), optional
79
+ :param _request_auth: set to override the auth_settings for an a single
80
+ request; this effectively ignores the
81
+ authentication in the spec for a single request.
82
+ :type _request_auth: dict, optional
83
+ :param _content_type: force content-type for the request.
84
+ :type _content_type: str, Optional
85
+ :param _headers: set to override the headers for a single
86
+ request; this effectively ignores the headers
87
+ in the spec for a single request.
88
+ :type _headers: dict, optional
89
+ :param _host_index: set to override the host_index for a single
90
+ request; this effectively ignores the host_index
91
+ in the spec for a single request.
92
+ :type _host_index: int, optional
93
+ :return: Returns the result object.
94
+ """ # noqa: E501
95
+
96
+ _param = self._merge_trajectories_serialize(
97
+ cell=cell,
98
+ merge_trajectories_request=merge_trajectories_request,
99
+ _request_auth=_request_auth,
100
+ _content_type=_content_type,
101
+ _headers=_headers,
102
+ _host_index=_host_index,
103
+ )
104
+
105
+ _response_types_map: Dict[str, Optional[str]] = {
106
+ "200": "MergeTrajectoriesResponse",
107
+ "404": None,
108
+ "422": "MergeTrajectories422Response",
109
+ "500": None,
110
+ }
111
+
112
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
113
+ await response_data.read()
114
+ return self.api_client.response_deserialize(
115
+ response_data=response_data,
116
+ response_types_map=_response_types_map,
117
+ ).data
118
+
119
+ @validate_call
120
+ async def merge_trajectories_with_http_info(
121
+ self,
122
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
123
+ merge_trajectories_request: MergeTrajectoriesRequest,
124
+ _request_timeout: Union[
125
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
126
+ ] = None,
127
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
128
+ _content_type: Optional[StrictStr] = None,
129
+ _headers: Optional[Dict[StrictStr, Any]] = None,
130
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
131
+ ) -> ApiResponse[MergeTrajectoriesResponse]:
132
+ """Merge Trajectories
133
+
134
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ <!-- theme: danger --> > **Experimental** Merges a list of joint trajectories into a single trajectory with collision-aware blending. This endpoint merges a list of separate trajectories by connecting them via blending. The blending is performed with collision checking to ensure the merged trajectory is safe to execute. Timescaling will be applied to the blended area to ensure all limits are respected.
135
+
136
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
137
+ :type cell: str
138
+ :param merge_trajectories_request: (required)
139
+ :type merge_trajectories_request: MergeTrajectoriesRequest
140
+ :param _request_timeout: timeout setting for this request. If one
141
+ number provided, it will be total request
142
+ timeout. It can also be a pair (tuple) of
143
+ (connection, read) timeouts.
144
+ :type _request_timeout: int, tuple(int, int), optional
145
+ :param _request_auth: set to override the auth_settings for an a single
146
+ request; this effectively ignores the
147
+ authentication in the spec for a single request.
148
+ :type _request_auth: dict, optional
149
+ :param _content_type: force content-type for the request.
150
+ :type _content_type: str, Optional
151
+ :param _headers: set to override the headers for a single
152
+ request; this effectively ignores the headers
153
+ in the spec for a single request.
154
+ :type _headers: dict, optional
155
+ :param _host_index: set to override the host_index for a single
156
+ request; this effectively ignores the host_index
157
+ in the spec for a single request.
158
+ :type _host_index: int, optional
159
+ :return: Returns the result object.
160
+ """ # noqa: E501
161
+
162
+ _param = self._merge_trajectories_serialize(
163
+ cell=cell,
164
+ merge_trajectories_request=merge_trajectories_request,
165
+ _request_auth=_request_auth,
166
+ _content_type=_content_type,
167
+ _headers=_headers,
168
+ _host_index=_host_index,
169
+ )
170
+
171
+ _response_types_map: Dict[str, Optional[str]] = {
172
+ "200": "MergeTrajectoriesResponse",
173
+ "404": None,
174
+ "422": "MergeTrajectories422Response",
175
+ "500": None,
176
+ }
177
+
178
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
179
+ await response_data.read()
180
+ return self.api_client.response_deserialize(
181
+ response_data=response_data,
182
+ response_types_map=_response_types_map,
183
+ )
184
+
185
+ @validate_call
186
+ async def merge_trajectories_without_preload_content(
187
+ self,
188
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
189
+ merge_trajectories_request: MergeTrajectoriesRequest,
190
+ _request_timeout: Union[
191
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
192
+ ] = None,
193
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
194
+ _content_type: Optional[StrictStr] = None,
195
+ _headers: Optional[Dict[StrictStr, Any]] = None,
196
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
197
+ ) -> RESTResponseType:
198
+ """Merge Trajectories
199
+
200
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ <!-- theme: danger --> > **Experimental** Merges a list of joint trajectories into a single trajectory with collision-aware blending. This endpoint merges a list of separate trajectories by connecting them via blending. The blending is performed with collision checking to ensure the merged trajectory is safe to execute. Timescaling will be applied to the blended area to ensure all limits are respected.
201
+
202
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
203
+ :type cell: str
204
+ :param merge_trajectories_request: (required)
205
+ :type merge_trajectories_request: MergeTrajectoriesRequest
206
+ :param _request_timeout: timeout setting for this request. If one
207
+ number provided, it will be total request
208
+ timeout. It can also be a pair (tuple) of
209
+ (connection, read) timeouts.
210
+ :type _request_timeout: int, tuple(int, int), optional
211
+ :param _request_auth: set to override the auth_settings for an a single
212
+ request; this effectively ignores the
213
+ authentication in the spec for a single request.
214
+ :type _request_auth: dict, optional
215
+ :param _content_type: force content-type for the request.
216
+ :type _content_type: str, Optional
217
+ :param _headers: set to override the headers for a single
218
+ request; this effectively ignores the headers
219
+ in the spec for a single request.
220
+ :type _headers: dict, optional
221
+ :param _host_index: set to override the host_index for a single
222
+ request; this effectively ignores the host_index
223
+ in the spec for a single request.
224
+ :type _host_index: int, optional
225
+ :return: Returns the result object.
226
+ """ # noqa: E501
227
+
228
+ _param = self._merge_trajectories_serialize(
229
+ cell=cell,
230
+ merge_trajectories_request=merge_trajectories_request,
231
+ _request_auth=_request_auth,
232
+ _content_type=_content_type,
233
+ _headers=_headers,
234
+ _host_index=_host_index,
235
+ )
236
+
237
+ _response_types_map: Dict[str, Optional[str]] = {
238
+ "200": "MergeTrajectoriesResponse",
239
+ "404": None,
240
+ "422": "MergeTrajectories422Response",
241
+ "500": None,
242
+ }
243
+
244
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
245
+ return response_data.response
246
+
247
+ def _merge_trajectories_serialize(
248
+ self,
249
+ cell,
250
+ merge_trajectories_request,
251
+ _request_auth,
252
+ _content_type,
253
+ _headers,
254
+ _host_index,
255
+ ) -> RequestSerialized:
256
+
257
+ _host = None
258
+
259
+ _collection_formats: Dict[str, str] = {}
260
+
261
+ _path_params: Dict[str, str] = {}
262
+ _query_params: List[Tuple[str, str]] = []
263
+ _header_params: Dict[str, Optional[str]] = _headers or {}
264
+ _form_params: List[Tuple[str, str]] = []
265
+ _files: Dict[str, Union[str, bytes]] = {}
266
+ _body_params: Optional[bytes] = None
267
+
268
+ # process the path parameters
269
+ if cell is not None:
270
+ _path_params["cell"] = cell
271
+ # process the query parameters
272
+ # process the header parameters
273
+ # process the form parameters
274
+ # process the body parameter
275
+ if merge_trajectories_request is not None:
276
+ _body_params = merge_trajectories_request
277
+
278
+ # set the HTTP header `Accept`
279
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
280
+
281
+ # set the HTTP header `Content-Type`
282
+ if _content_type:
283
+ _header_params["Content-Type"] = _content_type
284
+ else:
285
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
286
+ if _default_content_type is not None:
287
+ _header_params["Content-Type"] = _default_content_type
288
+
289
+ # authentication setting
290
+ _auth_settings: List[str] = ["BearerAuth"]
291
+
292
+ return self.api_client.param_serialize(
293
+ method="POST",
294
+ resource_path="/experimental/cells/{cell}/trajectory-planning/merge-trajectories",
295
+ path_params=_path_params,
296
+ query_params=_query_params,
297
+ header_params=_header_params,
298
+ body=_body_params,
299
+ post_params=_form_params,
300
+ files=_files,
301
+ auth_settings=_auth_settings,
302
+ collection_formats=_collection_formats,
303
+ _host=_host,
304
+ _request_auth=_request_auth,
305
+ )
306
+
307
+ @validate_call
308
+ async def plan_collision_free(
309
+ self,
310
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
311
+ plan_collision_free_request: PlanCollisionFreeRequest,
312
+ _request_timeout: Union[
313
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
314
+ ] = None,
315
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
316
+ _content_type: Optional[StrictStr] = None,
317
+ _headers: Optional[Dict[StrictStr, Any]] = None,
318
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
319
+ ) -> PlanCollisionFreeResponse:
320
+ """Plan Collision-Free Trajectory
321
+
322
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ Plans a collision-free trajectory for a single motion group using point-to-point (PTP) motions. This endpoint is specifically designed for collision-free path planning algorithms that find a trajectory from a start joint position to a target position while avoiding obstacles. Use the following workflow to execute a planned collision-free trajectory: 1. Plan a collision-free trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](#/operations/addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](#/operations/executeTrajectory) endpoint. If the trajectory planning fails due to collision or algorithm constraints, the response will contain error information about the failure.
323
+
324
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
325
+ :type cell: str
326
+ :param plan_collision_free_request: (required)
327
+ :type plan_collision_free_request: PlanCollisionFreeRequest
328
+ :param _request_timeout: timeout setting for this request. If one
329
+ number provided, it will be total request
330
+ timeout. It can also be a pair (tuple) of
331
+ (connection, read) timeouts.
332
+ :type _request_timeout: int, tuple(int, int), optional
333
+ :param _request_auth: set to override the auth_settings for an a single
334
+ request; this effectively ignores the
335
+ authentication in the spec for a single request.
336
+ :type _request_auth: dict, optional
337
+ :param _content_type: force content-type for the request.
338
+ :type _content_type: str, Optional
339
+ :param _headers: set to override the headers for a single
340
+ request; this effectively ignores the headers
341
+ in the spec for a single request.
342
+ :type _headers: dict, optional
343
+ :param _host_index: set to override the host_index for a single
344
+ request; this effectively ignores the host_index
345
+ in the spec for a single request.
346
+ :type _host_index: int, optional
347
+ :return: Returns the result object.
348
+ """ # noqa: E501
349
+
350
+ _param = self._plan_collision_free_serialize(
351
+ cell=cell,
352
+ plan_collision_free_request=plan_collision_free_request,
353
+ _request_auth=_request_auth,
354
+ _content_type=_content_type,
355
+ _headers=_headers,
356
+ _host_index=_host_index,
357
+ )
358
+
359
+ _response_types_map: Dict[str, Optional[str]] = {
360
+ "200": "PlanCollisionFreeResponse",
361
+ "404": None,
362
+ "422": "Plan422Response",
363
+ "500": None,
364
+ }
365
+
366
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
367
+ await response_data.read()
368
+ return self.api_client.response_deserialize(
369
+ response_data=response_data,
370
+ response_types_map=_response_types_map,
371
+ ).data
372
+
373
+ @validate_call
374
+ async def plan_collision_free_with_http_info(
375
+ self,
376
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
377
+ plan_collision_free_request: PlanCollisionFreeRequest,
378
+ _request_timeout: Union[
379
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
380
+ ] = None,
381
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
382
+ _content_type: Optional[StrictStr] = None,
383
+ _headers: Optional[Dict[StrictStr, Any]] = None,
384
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
385
+ ) -> ApiResponse[PlanCollisionFreeResponse]:
386
+ """Plan Collision-Free Trajectory
387
+
388
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ Plans a collision-free trajectory for a single motion group using point-to-point (PTP) motions. This endpoint is specifically designed for collision-free path planning algorithms that find a trajectory from a start joint position to a target position while avoiding obstacles. Use the following workflow to execute a planned collision-free trajectory: 1. Plan a collision-free trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](#/operations/addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](#/operations/executeTrajectory) endpoint. If the trajectory planning fails due to collision or algorithm constraints, the response will contain error information about the failure.
389
+
390
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
391
+ :type cell: str
392
+ :param plan_collision_free_request: (required)
393
+ :type plan_collision_free_request: PlanCollisionFreeRequest
394
+ :param _request_timeout: timeout setting for this request. If one
395
+ number provided, it will be total request
396
+ timeout. It can also be a pair (tuple) of
397
+ (connection, read) timeouts.
398
+ :type _request_timeout: int, tuple(int, int), optional
399
+ :param _request_auth: set to override the auth_settings for an a single
400
+ request; this effectively ignores the
401
+ authentication in the spec for a single request.
402
+ :type _request_auth: dict, optional
403
+ :param _content_type: force content-type for the request.
404
+ :type _content_type: str, Optional
405
+ :param _headers: set to override the headers for a single
406
+ request; this effectively ignores the headers
407
+ in the spec for a single request.
408
+ :type _headers: dict, optional
409
+ :param _host_index: set to override the host_index for a single
410
+ request; this effectively ignores the host_index
411
+ in the spec for a single request.
412
+ :type _host_index: int, optional
413
+ :return: Returns the result object.
414
+ """ # noqa: E501
415
+
416
+ _param = self._plan_collision_free_serialize(
417
+ cell=cell,
418
+ plan_collision_free_request=plan_collision_free_request,
419
+ _request_auth=_request_auth,
420
+ _content_type=_content_type,
421
+ _headers=_headers,
422
+ _host_index=_host_index,
423
+ )
424
+
425
+ _response_types_map: Dict[str, Optional[str]] = {
426
+ "200": "PlanCollisionFreeResponse",
427
+ "404": None,
428
+ "422": "Plan422Response",
429
+ "500": None,
430
+ }
431
+
432
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
433
+ await response_data.read()
434
+ return self.api_client.response_deserialize(
435
+ response_data=response_data,
436
+ response_types_map=_response_types_map,
437
+ )
438
+
439
+ @validate_call
440
+ async def plan_collision_free_without_preload_content(
441
+ self,
442
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
443
+ plan_collision_free_request: PlanCollisionFreeRequest,
444
+ _request_timeout: Union[
445
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
446
+ ] = None,
447
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
448
+ _content_type: Optional[StrictStr] = None,
449
+ _headers: Optional[Dict[StrictStr, Any]] = None,
450
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
451
+ ) -> RESTResponseType:
452
+ """Plan Collision-Free Trajectory
453
+
454
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ Plans a collision-free trajectory for a single motion group using point-to-point (PTP) motions. This endpoint is specifically designed for collision-free path planning algorithms that find a trajectory from a start joint position to a target position while avoiding obstacles. Use the following workflow to execute a planned collision-free trajectory: 1. Plan a collision-free trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](#/operations/addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](#/operations/executeTrajectory) endpoint. If the trajectory planning fails due to collision or algorithm constraints, the response will contain error information about the failure.
455
+
456
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
457
+ :type cell: str
458
+ :param plan_collision_free_request: (required)
459
+ :type plan_collision_free_request: PlanCollisionFreeRequest
460
+ :param _request_timeout: timeout setting for this request. If one
461
+ number provided, it will be total request
462
+ timeout. It can also be a pair (tuple) of
463
+ (connection, read) timeouts.
464
+ :type _request_timeout: int, tuple(int, int), optional
465
+ :param _request_auth: set to override the auth_settings for an a single
466
+ request; this effectively ignores the
467
+ authentication in the spec for a single request.
468
+ :type _request_auth: dict, optional
469
+ :param _content_type: force content-type for the request.
470
+ :type _content_type: str, Optional
471
+ :param _headers: set to override the headers for a single
472
+ request; this effectively ignores the headers
473
+ in the spec for a single request.
474
+ :type _headers: dict, optional
475
+ :param _host_index: set to override the host_index for a single
476
+ request; this effectively ignores the host_index
477
+ in the spec for a single request.
478
+ :type _host_index: int, optional
479
+ :return: Returns the result object.
480
+ """ # noqa: E501
481
+
482
+ _param = self._plan_collision_free_serialize(
483
+ cell=cell,
484
+ plan_collision_free_request=plan_collision_free_request,
485
+ _request_auth=_request_auth,
486
+ _content_type=_content_type,
487
+ _headers=_headers,
488
+ _host_index=_host_index,
489
+ )
490
+
491
+ _response_types_map: Dict[str, Optional[str]] = {
492
+ "200": "PlanCollisionFreeResponse",
493
+ "404": None,
494
+ "422": "Plan422Response",
495
+ "500": None,
496
+ }
497
+
498
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
499
+ return response_data.response
500
+
501
+ def _plan_collision_free_serialize(
502
+ self,
503
+ cell,
504
+ plan_collision_free_request,
505
+ _request_auth,
506
+ _content_type,
507
+ _headers,
508
+ _host_index,
509
+ ) -> RequestSerialized:
510
+
511
+ _host = None
512
+
513
+ _collection_formats: Dict[str, str] = {}
514
+
515
+ _path_params: Dict[str, str] = {}
516
+ _query_params: List[Tuple[str, str]] = []
517
+ _header_params: Dict[str, Optional[str]] = _headers or {}
518
+ _form_params: List[Tuple[str, str]] = []
519
+ _files: Dict[str, Union[str, bytes]] = {}
520
+ _body_params: Optional[bytes] = None
521
+
522
+ # process the path parameters
523
+ if cell is not None:
524
+ _path_params["cell"] = cell
525
+ # process the query parameters
526
+ # process the header parameters
527
+ # process the form parameters
528
+ # process the body parameter
529
+ if plan_collision_free_request is not None:
530
+ _body_params = plan_collision_free_request
531
+
532
+ # set the HTTP header `Accept`
533
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
534
+
535
+ # set the HTTP header `Content-Type`
536
+ if _content_type:
537
+ _header_params["Content-Type"] = _content_type
538
+ else:
539
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
540
+ if _default_content_type is not None:
541
+ _header_params["Content-Type"] = _default_content_type
542
+
543
+ # authentication setting
544
+ _auth_settings: List[str] = ["BearerAuth"]
545
+
546
+ return self.api_client.param_serialize(
547
+ method="POST",
548
+ resource_path="/cells/{cell}/trajectory-planning/plan-collision-free",
549
+ path_params=_path_params,
550
+ query_params=_query_params,
551
+ header_params=_header_params,
552
+ body=_body_params,
553
+ post_params=_form_params,
554
+ files=_files,
555
+ auth_settings=_auth_settings,
556
+ collection_formats=_collection_formats,
557
+ _host=_host,
558
+ _request_auth=_request_auth,
559
+ )
560
+
561
+ @validate_call
562
+ async def plan_trajectory(
563
+ self,
564
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
565
+ plan_trajectory_request: PlanTrajectoryRequest,
566
+ _request_timeout: Union[
567
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
568
+ ] = None,
569
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
570
+ _content_type: Optional[StrictStr] = None,
571
+ _headers: Optional[Dict[StrictStr, Any]] = None,
572
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
573
+ ) -> PlanTrajectoryResponse:
574
+ """Plan Trajectory
575
+
576
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](#/operations/addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](#/operations/executeTrajectory) endpoint. If the trajectory is not executable, the response will contain the joint trajectory up until the error, e.g., all samples until a collision occurs. <!-- theme: info --> > #### Exception > > If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
577
+
578
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
579
+ :type cell: str
580
+ :param plan_trajectory_request: (required)
581
+ :type plan_trajectory_request: PlanTrajectoryRequest
582
+ :param _request_timeout: timeout setting for this request. If one
583
+ number provided, it will be total request
584
+ timeout. It can also be a pair (tuple) of
585
+ (connection, read) timeouts.
586
+ :type _request_timeout: int, tuple(int, int), optional
587
+ :param _request_auth: set to override the auth_settings for an a single
588
+ request; this effectively ignores the
589
+ authentication in the spec for a single request.
590
+ :type _request_auth: dict, optional
591
+ :param _content_type: force content-type for the request.
592
+ :type _content_type: str, Optional
593
+ :param _headers: set to override the headers for a single
594
+ request; this effectively ignores the headers
595
+ in the spec for a single request.
596
+ :type _headers: dict, optional
597
+ :param _host_index: set to override the host_index for a single
598
+ request; this effectively ignores the host_index
599
+ in the spec for a single request.
600
+ :type _host_index: int, optional
601
+ :return: Returns the result object.
602
+ """ # noqa: E501
603
+
604
+ _param = self._plan_trajectory_serialize(
605
+ cell=cell,
606
+ plan_trajectory_request=plan_trajectory_request,
607
+ _request_auth=_request_auth,
608
+ _content_type=_content_type,
609
+ _headers=_headers,
610
+ _host_index=_host_index,
611
+ )
612
+
613
+ _response_types_map: Dict[str, Optional[str]] = {
614
+ "200": "PlanTrajectoryResponse",
615
+ "404": None,
616
+ "422": "Plan422Response",
617
+ "500": None,
618
+ }
619
+
620
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
621
+ await response_data.read()
622
+ return self.api_client.response_deserialize(
623
+ response_data=response_data,
624
+ response_types_map=_response_types_map,
625
+ ).data
626
+
627
+ @validate_call
628
+ async def plan_trajectory_with_http_info(
629
+ self,
630
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
631
+ plan_trajectory_request: PlanTrajectoryRequest,
632
+ _request_timeout: Union[
633
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
634
+ ] = None,
635
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
636
+ _content_type: Optional[StrictStr] = None,
637
+ _headers: Optional[Dict[StrictStr, Any]] = None,
638
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
639
+ ) -> ApiResponse[PlanTrajectoryResponse]:
640
+ """Plan Trajectory
641
+
642
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](#/operations/addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](#/operations/executeTrajectory) endpoint. If the trajectory is not executable, the response will contain the joint trajectory up until the error, e.g., all samples until a collision occurs. <!-- theme: info --> > #### Exception > > If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
643
+
644
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
645
+ :type cell: str
646
+ :param plan_trajectory_request: (required)
647
+ :type plan_trajectory_request: PlanTrajectoryRequest
648
+ :param _request_timeout: timeout setting for this request. If one
649
+ number provided, it will be total request
650
+ timeout. It can also be a pair (tuple) of
651
+ (connection, read) timeouts.
652
+ :type _request_timeout: int, tuple(int, int), optional
653
+ :param _request_auth: set to override the auth_settings for an a single
654
+ request; this effectively ignores the
655
+ authentication in the spec for a single request.
656
+ :type _request_auth: dict, optional
657
+ :param _content_type: force content-type for the request.
658
+ :type _content_type: str, Optional
659
+ :param _headers: set to override the headers for a single
660
+ request; this effectively ignores the headers
661
+ in the spec for a single request.
662
+ :type _headers: dict, optional
663
+ :param _host_index: set to override the host_index for a single
664
+ request; this effectively ignores the host_index
665
+ in the spec for a single request.
666
+ :type _host_index: int, optional
667
+ :return: Returns the result object.
668
+ """ # noqa: E501
669
+
670
+ _param = self._plan_trajectory_serialize(
671
+ cell=cell,
672
+ plan_trajectory_request=plan_trajectory_request,
673
+ _request_auth=_request_auth,
674
+ _content_type=_content_type,
675
+ _headers=_headers,
676
+ _host_index=_host_index,
677
+ )
678
+
679
+ _response_types_map: Dict[str, Optional[str]] = {
680
+ "200": "PlanTrajectoryResponse",
681
+ "404": None,
682
+ "422": "Plan422Response",
683
+ "500": None,
684
+ }
685
+
686
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
687
+ await response_data.read()
688
+ return self.api_client.response_deserialize(
689
+ response_data=response_data,
690
+ response_types_map=_response_types_map,
691
+ )
692
+
693
+ @validate_call
694
+ async def plan_trajectory_without_preload_content(
695
+ self,
696
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
697
+ plan_trajectory_request: PlanTrajectoryRequest,
698
+ _request_timeout: Union[
699
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
700
+ ] = None,
701
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
702
+ _content_type: Optional[StrictStr] = None,
703
+ _headers: Optional[Dict[StrictStr, Any]] = None,
704
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
705
+ ) -> RESTResponseType:
706
+ """Plan Trajectory
707
+
708
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ Plans a new trajectory for a single motion group. Describe the trajectory as a sequence of motion commands that the robots TCP should follow. Use the following workflow to execute a planned trajectory: 1. Plan a trajectory. 2. Optional: Load the planned trajectory into the cache using the [addTrajectory](#/operations/addTrajectory) endpoint. 3. Execute the (cached) trajectory using the [executeTrajectory](#/operations/executeTrajectory) endpoint. If the trajectory is not executable, the response will contain the joint trajectory up until the error, e.g., all samples until a collision occurs. <!-- theme: info --> > #### Exception > > If a CartesianPTP or JointPTP motion command has an invalid target, the response will contain the trajectory up until the start of the invalid PTP motion.
709
+
710
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
711
+ :type cell: str
712
+ :param plan_trajectory_request: (required)
713
+ :type plan_trajectory_request: PlanTrajectoryRequest
714
+ :param _request_timeout: timeout setting for this request. If one
715
+ number provided, it will be total request
716
+ timeout. It can also be a pair (tuple) of
717
+ (connection, read) timeouts.
718
+ :type _request_timeout: int, tuple(int, int), optional
719
+ :param _request_auth: set to override the auth_settings for an a single
720
+ request; this effectively ignores the
721
+ authentication in the spec for a single request.
722
+ :type _request_auth: dict, optional
723
+ :param _content_type: force content-type for the request.
724
+ :type _content_type: str, Optional
725
+ :param _headers: set to override the headers for a single
726
+ request; this effectively ignores the headers
727
+ in the spec for a single request.
728
+ :type _headers: dict, optional
729
+ :param _host_index: set to override the host_index for a single
730
+ request; this effectively ignores the host_index
731
+ in the spec for a single request.
732
+ :type _host_index: int, optional
733
+ :return: Returns the result object.
734
+ """ # noqa: E501
735
+
736
+ _param = self._plan_trajectory_serialize(
737
+ cell=cell,
738
+ plan_trajectory_request=plan_trajectory_request,
739
+ _request_auth=_request_auth,
740
+ _content_type=_content_type,
741
+ _headers=_headers,
742
+ _host_index=_host_index,
743
+ )
744
+
745
+ _response_types_map: Dict[str, Optional[str]] = {
746
+ "200": "PlanTrajectoryResponse",
747
+ "404": None,
748
+ "422": "Plan422Response",
749
+ "500": None,
750
+ }
751
+
752
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
753
+ return response_data.response
754
+
755
+ def _plan_trajectory_serialize(
756
+ self,
757
+ cell,
758
+ plan_trajectory_request,
759
+ _request_auth,
760
+ _content_type,
761
+ _headers,
762
+ _host_index,
763
+ ) -> RequestSerialized:
764
+
765
+ _host = None
766
+
767
+ _collection_formats: Dict[str, str] = {}
768
+
769
+ _path_params: Dict[str, str] = {}
770
+ _query_params: List[Tuple[str, str]] = []
771
+ _header_params: Dict[str, Optional[str]] = _headers or {}
772
+ _form_params: List[Tuple[str, str]] = []
773
+ _files: Dict[str, Union[str, bytes]] = {}
774
+ _body_params: Optional[bytes] = None
775
+
776
+ # process the path parameters
777
+ if cell is not None:
778
+ _path_params["cell"] = cell
779
+ # process the query parameters
780
+ # process the header parameters
781
+ # process the form parameters
782
+ # process the body parameter
783
+ if plan_trajectory_request is not None:
784
+ _body_params = plan_trajectory_request
785
+
786
+ # set the HTTP header `Accept`
787
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
788
+
789
+ # set the HTTP header `Content-Type`
790
+ if _content_type:
791
+ _header_params["Content-Type"] = _content_type
792
+ else:
793
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
794
+ if _default_content_type is not None:
795
+ _header_params["Content-Type"] = _default_content_type
796
+
797
+ # authentication setting
798
+ _auth_settings: List[str] = ["BearerAuth"]
799
+
800
+ return self.api_client.param_serialize(
801
+ method="POST",
802
+ resource_path="/cells/{cell}/trajectory-planning/plan-trajectory",
803
+ path_params=_path_params,
804
+ query_params=_query_params,
805
+ header_params=_header_params,
806
+ body=_body_params,
807
+ post_params=_form_params,
808
+ files=_files,
809
+ auth_settings=_auth_settings,
810
+ collection_formats=_collection_formats,
811
+ _host=_host,
812
+ _request_auth=_request_auth,
813
+ )
814
+
815
+ @validate_call
816
+ async def search_collision_free_multi_motion_group(
817
+ self,
818
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
819
+ multi_search_collision_free_request: MultiSearchCollisionFreeRequest,
820
+ _request_timeout: Union[
821
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
822
+ ] = None,
823
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
824
+ _content_type: Optional[StrictStr] = None,
825
+ _headers: Optional[Dict[StrictStr, Any]] = None,
826
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
827
+ ) -> MultiSearchCollisionFreeResponse:
828
+ """Search Collision-Free Trajectories for Multiple Motion Groups
829
+
830
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ <!-- theme: danger --> > **Experimental** Searches collision-free trajectories for multiple motion groups simultaneously within a cell. This is the multi-robot variant of collision-free path search — it coordinates paths so that several motion groups, e.g., multiple robot arms, can move from start to target positions without colliding with each other or with the environment. The caller provides per-motion-group setups (robot model, cycle time, mounting, TCP offset, limits, payload, collision geometry), per-motion-group point-to-point path definitions (start and target joint positions), optional cross-group collision setups defining which link-chain/tool colliders to consider between groups plus static environment colliders, and optional RRT-Connect algorithm settings (max iterations, step size, smoothing, blending). On success the response contains a time-synchronized trajectory with joint positions per motion group at shared timestamps so their motions are temporally coordinated. On failure it returns feedback indicating why planning failed, e.g., max iterations exceeded.
831
+
832
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
833
+ :type cell: str
834
+ :param multi_search_collision_free_request: (required)
835
+ :type multi_search_collision_free_request: MultiSearchCollisionFreeRequest
836
+ :param _request_timeout: timeout setting for this request. If one
837
+ number provided, it will be total request
838
+ timeout. It can also be a pair (tuple) of
839
+ (connection, read) timeouts.
840
+ :type _request_timeout: int, tuple(int, int), optional
841
+ :param _request_auth: set to override the auth_settings for an a single
842
+ request; this effectively ignores the
843
+ authentication in the spec for a single request.
844
+ :type _request_auth: dict, optional
845
+ :param _content_type: force content-type for the request.
846
+ :type _content_type: str, Optional
847
+ :param _headers: set to override the headers for a single
848
+ request; this effectively ignores the headers
849
+ in the spec for a single request.
850
+ :type _headers: dict, optional
851
+ :param _host_index: set to override the host_index for a single
852
+ request; this effectively ignores the host_index
853
+ in the spec for a single request.
854
+ :type _host_index: int, optional
855
+ :return: Returns the result object.
856
+ """ # noqa: E501
857
+
858
+ _param = self._search_collision_free_multi_motion_group_serialize(
859
+ cell=cell,
860
+ multi_search_collision_free_request=multi_search_collision_free_request,
861
+ _request_auth=_request_auth,
862
+ _content_type=_content_type,
863
+ _headers=_headers,
864
+ _host_index=_host_index,
865
+ )
866
+
867
+ _response_types_map: Dict[str, Optional[str]] = {
868
+ "200": "MultiSearchCollisionFreeResponse",
869
+ "404": None,
870
+ "422": "MultiSearchCollisionFree422Response",
871
+ "500": None,
872
+ }
873
+
874
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
875
+ await response_data.read()
876
+ return self.api_client.response_deserialize(
877
+ response_data=response_data,
878
+ response_types_map=_response_types_map,
879
+ ).data
880
+
881
+ @validate_call
882
+ async def search_collision_free_multi_motion_group_with_http_info(
883
+ self,
884
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
885
+ multi_search_collision_free_request: MultiSearchCollisionFreeRequest,
886
+ _request_timeout: Union[
887
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
888
+ ] = None,
889
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
890
+ _content_type: Optional[StrictStr] = None,
891
+ _headers: Optional[Dict[StrictStr, Any]] = None,
892
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
893
+ ) -> ApiResponse[MultiSearchCollisionFreeResponse]:
894
+ """Search Collision-Free Trajectories for Multiple Motion Groups
895
+
896
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ <!-- theme: danger --> > **Experimental** Searches collision-free trajectories for multiple motion groups simultaneously within a cell. This is the multi-robot variant of collision-free path search — it coordinates paths so that several motion groups, e.g., multiple robot arms, can move from start to target positions without colliding with each other or with the environment. The caller provides per-motion-group setups (robot model, cycle time, mounting, TCP offset, limits, payload, collision geometry), per-motion-group point-to-point path definitions (start and target joint positions), optional cross-group collision setups defining which link-chain/tool colliders to consider between groups plus static environment colliders, and optional RRT-Connect algorithm settings (max iterations, step size, smoothing, blending). On success the response contains a time-synchronized trajectory with joint positions per motion group at shared timestamps so their motions are temporally coordinated. On failure it returns feedback indicating why planning failed, e.g., max iterations exceeded.
897
+
898
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
899
+ :type cell: str
900
+ :param multi_search_collision_free_request: (required)
901
+ :type multi_search_collision_free_request: MultiSearchCollisionFreeRequest
902
+ :param _request_timeout: timeout setting for this request. If one
903
+ number provided, it will be total request
904
+ timeout. It can also be a pair (tuple) of
905
+ (connection, read) timeouts.
906
+ :type _request_timeout: int, tuple(int, int), optional
907
+ :param _request_auth: set to override the auth_settings for an a single
908
+ request; this effectively ignores the
909
+ authentication in the spec for a single request.
910
+ :type _request_auth: dict, optional
911
+ :param _content_type: force content-type for the request.
912
+ :type _content_type: str, Optional
913
+ :param _headers: set to override the headers for a single
914
+ request; this effectively ignores the headers
915
+ in the spec for a single request.
916
+ :type _headers: dict, optional
917
+ :param _host_index: set to override the host_index for a single
918
+ request; this effectively ignores the host_index
919
+ in the spec for a single request.
920
+ :type _host_index: int, optional
921
+ :return: Returns the result object.
922
+ """ # noqa: E501
923
+
924
+ _param = self._search_collision_free_multi_motion_group_serialize(
925
+ cell=cell,
926
+ multi_search_collision_free_request=multi_search_collision_free_request,
927
+ _request_auth=_request_auth,
928
+ _content_type=_content_type,
929
+ _headers=_headers,
930
+ _host_index=_host_index,
931
+ )
932
+
933
+ _response_types_map: Dict[str, Optional[str]] = {
934
+ "200": "MultiSearchCollisionFreeResponse",
935
+ "404": None,
936
+ "422": "MultiSearchCollisionFree422Response",
937
+ "500": None,
938
+ }
939
+
940
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
941
+ await response_data.read()
942
+ return self.api_client.response_deserialize(
943
+ response_data=response_data,
944
+ response_types_map=_response_types_map,
945
+ )
946
+
947
+ @validate_call
948
+ async def search_collision_free_multi_motion_group_without_preload_content(
949
+ self,
950
+ cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")],
951
+ multi_search_collision_free_request: MultiSearchCollisionFreeRequest,
952
+ _request_timeout: Union[
953
+ None, Annotated[StrictFloat, Field(gt=0)], Tuple[Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]]
954
+ ] = None,
955
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
956
+ _content_type: Optional[StrictStr] = None,
957
+ _headers: Optional[Dict[StrictStr, Any]] = None,
958
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
959
+ ) -> RESTResponseType:
960
+ """Search Collision-Free Trajectories for Multiple Motion Groups
961
+
962
+ **Required permissions:** `can_plan_motion` - Plan robot motions and trajectories ___ <!-- theme: danger --> > **Experimental** Searches collision-free trajectories for multiple motion groups simultaneously within a cell. This is the multi-robot variant of collision-free path search — it coordinates paths so that several motion groups, e.g., multiple robot arms, can move from start to target positions without colliding with each other or with the environment. The caller provides per-motion-group setups (robot model, cycle time, mounting, TCP offset, limits, payload, collision geometry), per-motion-group point-to-point path definitions (start and target joint positions), optional cross-group collision setups defining which link-chain/tool colliders to consider between groups plus static environment colliders, and optional RRT-Connect algorithm settings (max iterations, step size, smoothing, blending). On success the response contains a time-synchronized trajectory with joint positions per motion group at shared timestamps so their motions are temporally coordinated. On failure it returns feedback indicating why planning failed, e.g., max iterations exceeded.
963
+
964
+ :param cell: Unique identifier addressing a cell in all API calls. (required)
965
+ :type cell: str
966
+ :param multi_search_collision_free_request: (required)
967
+ :type multi_search_collision_free_request: MultiSearchCollisionFreeRequest
968
+ :param _request_timeout: timeout setting for this request. If one
969
+ number provided, it will be total request
970
+ timeout. It can also be a pair (tuple) of
971
+ (connection, read) timeouts.
972
+ :type _request_timeout: int, tuple(int, int), optional
973
+ :param _request_auth: set to override the auth_settings for an a single
974
+ request; this effectively ignores the
975
+ authentication in the spec for a single request.
976
+ :type _request_auth: dict, optional
977
+ :param _content_type: force content-type for the request.
978
+ :type _content_type: str, Optional
979
+ :param _headers: set to override the headers for a single
980
+ request; this effectively ignores the headers
981
+ in the spec for a single request.
982
+ :type _headers: dict, optional
983
+ :param _host_index: set to override the host_index for a single
984
+ request; this effectively ignores the host_index
985
+ in the spec for a single request.
986
+ :type _host_index: int, optional
987
+ :return: Returns the result object.
988
+ """ # noqa: E501
989
+
990
+ _param = self._search_collision_free_multi_motion_group_serialize(
991
+ cell=cell,
992
+ multi_search_collision_free_request=multi_search_collision_free_request,
993
+ _request_auth=_request_auth,
994
+ _content_type=_content_type,
995
+ _headers=_headers,
996
+ _host_index=_host_index,
997
+ )
998
+
999
+ _response_types_map: Dict[str, Optional[str]] = {
1000
+ "200": "MultiSearchCollisionFreeResponse",
1001
+ "404": None,
1002
+ "422": "MultiSearchCollisionFree422Response",
1003
+ "500": None,
1004
+ }
1005
+
1006
+ response_data = await self.api_client.call_api(*_param, _request_timeout=_request_timeout)
1007
+ return response_data.response
1008
+
1009
+ def _search_collision_free_multi_motion_group_serialize(
1010
+ self,
1011
+ cell,
1012
+ multi_search_collision_free_request,
1013
+ _request_auth,
1014
+ _content_type,
1015
+ _headers,
1016
+ _host_index,
1017
+ ) -> RequestSerialized:
1018
+
1019
+ _host = None
1020
+
1021
+ _collection_formats: Dict[str, str] = {}
1022
+
1023
+ _path_params: Dict[str, str] = {}
1024
+ _query_params: List[Tuple[str, str]] = []
1025
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1026
+ _form_params: List[Tuple[str, str]] = []
1027
+ _files: Dict[str, Union[str, bytes]] = {}
1028
+ _body_params: Optional[bytes] = None
1029
+
1030
+ # process the path parameters
1031
+ if cell is not None:
1032
+ _path_params["cell"] = cell
1033
+ # process the query parameters
1034
+ # process the header parameters
1035
+ # process the form parameters
1036
+ # process the body parameter
1037
+ if multi_search_collision_free_request is not None:
1038
+ _body_params = multi_search_collision_free_request
1039
+
1040
+ # set the HTTP header `Accept`
1041
+ _header_params["Accept"] = self.api_client.select_header_accept(["application/json"])
1042
+
1043
+ # set the HTTP header `Content-Type`
1044
+ if _content_type:
1045
+ _header_params["Content-Type"] = _content_type
1046
+ else:
1047
+ _default_content_type = self.api_client.select_header_content_type(["application/json"])
1048
+ if _default_content_type is not None:
1049
+ _header_params["Content-Type"] = _default_content_type
1050
+
1051
+ # authentication setting
1052
+ _auth_settings: List[str] = ["BearerAuth"]
1053
+
1054
+ return self.api_client.param_serialize(
1055
+ method="POST",
1056
+ resource_path="/experimental/cells/{cell}/trajectory-planning/search-collision-free-multi-motion-group",
1057
+ path_params=_path_params,
1058
+ query_params=_query_params,
1059
+ header_params=_header_params,
1060
+ body=_body_params,
1061
+ post_params=_form_params,
1062
+ files=_files,
1063
+ auth_settings=_auth_settings,
1064
+ collection_formats=_collection_formats,
1065
+ _host=_host,
1066
+ _request_auth=_request_auth,
1067
+ )