wandelbots-api-client 25.6.0.dev7__py3-none-any.whl → 25.10.0rc2__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 (658) hide show
  1. wandelbots_api_client/__init__.py +2 -3
  2. wandelbots_api_client/api/__init__.py +2 -0
  3. wandelbots_api_client/api/application_api.py +1 -2
  4. wandelbots_api_client/api/cell_api.py +1 -2
  5. wandelbots_api_client/api/controller_api.py +13 -8
  6. wandelbots_api_client/api/controller_ios_api.py +3 -6
  7. wandelbots_api_client/api/coordinate_systems_api.py +1 -2
  8. wandelbots_api_client/api/device_configuration_api.py +1 -2
  9. wandelbots_api_client/api/library_program_api.py +1 -2
  10. wandelbots_api_client/api/library_program_metadata_api.py +1 -2
  11. wandelbots_api_client/api/library_recipe_api.py +1 -2
  12. wandelbots_api_client/api/library_recipe_metadata_api.py +1 -2
  13. wandelbots_api_client/api/license_api.py +1 -2
  14. wandelbots_api_client/api/motion_api.py +59 -8
  15. wandelbots_api_client/api/motion_group_api.py +1 -2
  16. wandelbots_api_client/api/motion_group_infos_api.py +3 -2
  17. wandelbots_api_client/api/motion_group_jogging_api.py +53 -8
  18. wandelbots_api_client/api/motion_group_kinematic_api.py +1 -2
  19. wandelbots_api_client/api/program_api.py +1 -2
  20. wandelbots_api_client/api/program_operator_api.py +1 -2
  21. wandelbots_api_client/api/program_values_api.py +1 -2
  22. wandelbots_api_client/api/store_collision_components_api.py +10 -8
  23. wandelbots_api_client/api/store_collision_scenes_api.py +1 -2
  24. wandelbots_api_client/api/store_object_api.py +1 -2
  25. wandelbots_api_client/api/system_api.py +1 -2
  26. wandelbots_api_client/api/version_api.py +284 -0
  27. wandelbots_api_client/api/virtual_robot_api.py +1 -2
  28. wandelbots_api_client/api/virtual_robot_behavior_api.py +27 -5
  29. wandelbots_api_client/api/virtual_robot_mode_api.py +1 -2
  30. wandelbots_api_client/api/virtual_robot_setup_api.py +16 -17
  31. wandelbots_api_client/api_client.py +14 -7
  32. wandelbots_api_client/authorization.py +244 -0
  33. wandelbots_api_client/configuration.py +18 -7
  34. wandelbots_api_client/exceptions.py +1 -1
  35. wandelbots_api_client/models/__init__.py +3 -4
  36. wandelbots_api_client/models/abb_controller.py +5 -5
  37. wandelbots_api_client/models/abb_controller_egm_server.py +3 -3
  38. wandelbots_api_client/models/activate_license_request.py +2 -2
  39. wandelbots_api_client/models/add_request.py +3 -3
  40. wandelbots_api_client/models/all_joint_positions_request.py +3 -3
  41. wandelbots_api_client/models/all_joint_positions_response.py +2 -2
  42. wandelbots_api_client/{v2/models/error2.py → models/api_version.py} +10 -10
  43. wandelbots_api_client/models/app.py +8 -8
  44. wandelbots_api_client/models/array_input.py +2 -2
  45. wandelbots_api_client/models/array_output.py +2 -2
  46. wandelbots_api_client/models/behavior.py +1 -1
  47. wandelbots_api_client/models/blending_auto.py +3 -3
  48. wandelbots_api_client/models/blending_position.py +3 -3
  49. wandelbots_api_client/models/box.py +5 -5
  50. wandelbots_api_client/models/box2.py +6 -6
  51. wandelbots_api_client/models/box3.py +6 -6
  52. wandelbots_api_client/models/capsule.py +3 -3
  53. wandelbots_api_client/models/capsule2.py +4 -4
  54. wandelbots_api_client/models/capsule3.py +4 -4
  55. wandelbots_api_client/models/capture.py +2 -2
  56. wandelbots_api_client/models/cell.py +4 -4
  57. wandelbots_api_client/models/circle.py +3 -3
  58. wandelbots_api_client/models/code_with_arguments.py +7 -6
  59. wandelbots_api_client/models/collection_value.py +1 -1
  60. wandelbots_api_client/models/collider.py +4 -4
  61. wandelbots_api_client/models/collider_input.py +4 -4
  62. wandelbots_api_client/models/collider_output.py +4 -4
  63. wandelbots_api_client/models/collider_output_shape.py +1 -1
  64. wandelbots_api_client/models/collider_shape.py +1 -41
  65. wandelbots_api_client/models/collision.py +7 -7
  66. wandelbots_api_client/models/collision_contact.py +3 -3
  67. wandelbots_api_client/models/collision_motion_group.py +7 -6
  68. wandelbots_api_client/models/collision_motion_group_assembly.py +9 -8
  69. wandelbots_api_client/models/collision_robot_configuration_input.py +12 -10
  70. wandelbots_api_client/models/collision_robot_configuration_output.py +12 -10
  71. wandelbots_api_client/models/collision_scene.py +11 -9
  72. wandelbots_api_client/models/collision_scene_assembly.py +14 -12
  73. wandelbots_api_client/models/command.py +7 -7
  74. wandelbots_api_client/models/command_settings.py +4 -4
  75. wandelbots_api_client/models/comparator.py +1 -1
  76. wandelbots_api_client/models/compound.py +2 -2
  77. wandelbots_api_client/models/container_environment_inner.py +3 -3
  78. wandelbots_api_client/models/container_image.py +4 -4
  79. wandelbots_api_client/models/container_image_secrets_inner.py +2 -2
  80. wandelbots_api_client/models/container_resources.py +2 -2
  81. wandelbots_api_client/models/container_storage.py +3 -3
  82. wandelbots_api_client/models/controller_capabilities.py +3 -3
  83. wandelbots_api_client/models/controller_instance.py +9 -9
  84. wandelbots_api_client/models/controller_instance_list.py +2 -2
  85. wandelbots_api_client/models/convex_hull.py +2 -2
  86. wandelbots_api_client/models/convex_hull2.py +3 -3
  87. wandelbots_api_client/models/convex_hull3.py +3 -3
  88. wandelbots_api_client/models/coordinate_system.py +6 -6
  89. wandelbots_api_client/models/coordinate_systems.py +2 -2
  90. wandelbots_api_client/models/create_device_request_inner.py +1 -1
  91. wandelbots_api_client/models/create_program_run200_response.py +2 -2
  92. wandelbots_api_client/models/create_program_run_request.py +2 -2
  93. wandelbots_api_client/models/create_trigger200_response.py +2 -2
  94. wandelbots_api_client/models/create_trigger_request.py +7 -7
  95. wandelbots_api_client/models/cubic_spline.py +2 -2
  96. wandelbots_api_client/models/cubic_spline_cubic_spline_parameter.py +3 -3
  97. wandelbots_api_client/models/cubic_spline_parameter.py +3 -3
  98. wandelbots_api_client/models/cycle_time.py +2 -2
  99. wandelbots_api_client/models/cylinder.py +3 -3
  100. wandelbots_api_client/models/cylinder2.py +4 -4
  101. wandelbots_api_client/models/cylinder3.py +4 -4
  102. wandelbots_api_client/models/dh_parameter.py +6 -6
  103. wandelbots_api_client/models/direction.py +1 -1
  104. wandelbots_api_client/models/direction_jogging_request.py +10 -10
  105. wandelbots_api_client/models/error.py +3 -3
  106. wandelbots_api_client/models/execute_trajectory_request.py +1 -1
  107. wandelbots_api_client/models/execute_trajectory_response.py +1 -1
  108. wandelbots_api_client/models/execution_result.py +4 -4
  109. wandelbots_api_client/models/external_joint_stream_datapoint.py +3 -3
  110. wandelbots_api_client/models/external_joint_stream_datapoint_value.py +5 -5
  111. wandelbots_api_client/models/fanuc_controller.py +3 -3
  112. wandelbots_api_client/models/feedback_collision.py +5 -5
  113. wandelbots_api_client/models/feedback_joint_limit_exceeded.py +4 -4
  114. wandelbots_api_client/models/feedback_out_of_workspace.py +3 -3
  115. wandelbots_api_client/models/feedback_singularity.py +4 -4
  116. wandelbots_api_client/models/flag.py +2 -2
  117. wandelbots_api_client/models/force_vector.py +4 -4
  118. wandelbots_api_client/models/geometry.py +12 -12
  119. wandelbots_api_client/models/get_all_program_runs200_response.py +2 -2
  120. wandelbots_api_client/models/get_all_triggers200_response.py +2 -2
  121. wandelbots_api_client/models/get_mode_response.py +2 -2
  122. wandelbots_api_client/models/get_trajectory_response.py +2 -2
  123. wandelbots_api_client/models/get_trajectory_sample_response.py +2 -2
  124. wandelbots_api_client/models/google_protobuf_any.py +2 -2
  125. wandelbots_api_client/models/http_exception_response.py +2 -2
  126. wandelbots_api_client/models/http_validation_error.py +2 -2
  127. wandelbots_api_client/models/http_validation_error2.py +2 -2
  128. wandelbots_api_client/models/image_credentials.py +4 -4
  129. wandelbots_api_client/models/info_service_capabilities.py +8 -8
  130. wandelbots_api_client/models/initialize_movement_request.py +6 -6
  131. wandelbots_api_client/models/initialize_movement_response.py +2 -2
  132. wandelbots_api_client/models/initialize_movement_response_init_response.py +3 -3
  133. wandelbots_api_client/models/io.py +6 -6
  134. wandelbots_api_client/models/io_description.py +10 -10
  135. wandelbots_api_client/models/io_value.py +5 -5
  136. wandelbots_api_client/models/ios.py +2 -2
  137. wandelbots_api_client/models/jogging_response.py +4 -4
  138. wandelbots_api_client/models/jogging_service_capabilities.py +3 -3
  139. wandelbots_api_client/models/joint_jogging_request.py +6 -6
  140. wandelbots_api_client/models/joint_limit.py +5 -5
  141. wandelbots_api_client/models/joint_limit_exceeded.py +3 -3
  142. wandelbots_api_client/models/joint_position_request.py +4 -4
  143. wandelbots_api_client/models/joint_trajectory.py +4 -4
  144. wandelbots_api_client/models/joints.py +2 -2
  145. wandelbots_api_client/models/kinematic_service_capabilities.py +4 -4
  146. wandelbots_api_client/models/kuka_controller.py +10 -8
  147. wandelbots_api_client/models/kuka_controller_rsi_server.py +3 -3
  148. wandelbots_api_client/models/license.py +11 -11
  149. wandelbots_api_client/models/license_status.py +3 -3
  150. wandelbots_api_client/models/license_status_enum.py +1 -1
  151. wandelbots_api_client/models/limit_settings.py +13 -13
  152. wandelbots_api_client/models/limits_override.py +7 -7
  153. wandelbots_api_client/models/list_devices200_response_inner.py +1 -1
  154. wandelbots_api_client/models/list_io_descriptions_response.py +2 -2
  155. wandelbots_api_client/models/list_io_values_response.py +2 -2
  156. wandelbots_api_client/models/list_payloads_response.py +2 -2
  157. wandelbots_api_client/models/list_program_metadata_response.py +2 -2
  158. wandelbots_api_client/models/list_recipe_metadata_response.py +2 -2
  159. wandelbots_api_client/models/list_response.py +2 -2
  160. wandelbots_api_client/models/list_tcps_response.py +2 -2
  161. wandelbots_api_client/models/manufacturer.py +1 -1
  162. wandelbots_api_client/models/mode_change_response.py +5 -5
  163. wandelbots_api_client/models/motion_command.py +4 -4
  164. wandelbots_api_client/models/motion_command_blending.py +1 -1
  165. wandelbots_api_client/models/motion_command_path.py +1 -1
  166. wandelbots_api_client/models/motion_group_behavior_getter.py +2 -2
  167. wandelbots_api_client/models/motion_group_info.py +4 -4
  168. wandelbots_api_client/models/motion_group_infos.py +2 -2
  169. wandelbots_api_client/models/motion_group_instance.py +6 -6
  170. wandelbots_api_client/models/motion_group_instance_list.py +2 -2
  171. wandelbots_api_client/models/motion_group_joints.py +5 -5
  172. wandelbots_api_client/models/motion_group_physical.py +6 -6
  173. wandelbots_api_client/models/motion_group_specification.py +3 -3
  174. wandelbots_api_client/models/motion_group_state.py +13 -13
  175. wandelbots_api_client/models/motion_group_state_joint_limit_reached.py +2 -2
  176. wandelbots_api_client/models/motion_group_state_response.py +3 -3
  177. wandelbots_api_client/models/motion_id.py +2 -2
  178. wandelbots_api_client/models/motion_ids_list_response.py +2 -2
  179. wandelbots_api_client/models/motion_vector.py +4 -4
  180. wandelbots_api_client/models/mounting.py +3 -3
  181. wandelbots_api_client/models/move_request.py +9 -9
  182. wandelbots_api_client/models/move_response.py +3 -3
  183. wandelbots_api_client/models/move_to_trajectory_via_joint_ptp_request.py +5 -5
  184. wandelbots_api_client/models/movement.py +2 -2
  185. wandelbots_api_client/models/movement_error.py +2 -2
  186. wandelbots_api_client/models/movement_error_error.py +2 -2
  187. wandelbots_api_client/models/movement_movement.py +4 -4
  188. wandelbots_api_client/models/op_mode.py +2 -2
  189. wandelbots_api_client/models/opcua_node_value_trigger_config.py +4 -4
  190. wandelbots_api_client/models/opcua_node_value_trigger_config_node_value.py +1 -1
  191. wandelbots_api_client/models/optimizer_setup.py +8 -8
  192. wandelbots_api_client/models/out_of_workspace.py +2 -2
  193. wandelbots_api_client/models/path.py +2 -2
  194. wandelbots_api_client/models/path_cartesian_ptp.py +3 -3
  195. wandelbots_api_client/models/path_circle.py +4 -4
  196. wandelbots_api_client/models/path_cubic_spline.py +3 -3
  197. wandelbots_api_client/models/path_joint_ptp.py +3 -3
  198. wandelbots_api_client/models/path_line.py +3 -3
  199. wandelbots_api_client/models/pause_movement_request.py +3 -3
  200. wandelbots_api_client/models/pause_movement_response.py +2 -2
  201. wandelbots_api_client/models/pause_movement_response_pause_response.py +3 -3
  202. wandelbots_api_client/models/pause_on_io.py +3 -3
  203. wandelbots_api_client/models/payload.py +5 -5
  204. wandelbots_api_client/models/plan_collision_free_ptp_request.py +10 -9
  205. wandelbots_api_client/models/plan_collision_free_ptp_request_target.py +1 -1
  206. wandelbots_api_client/models/plan_failed_on_trajectory_response.py +10 -10
  207. wandelbots_api_client/models/plan_failed_response.py +8 -8
  208. wandelbots_api_client/models/plan_request.py +6 -6
  209. wandelbots_api_client/models/plan_response.py +4 -4
  210. wandelbots_api_client/models/plan_successful_response.py +3 -3
  211. wandelbots_api_client/models/plan_trajectory_failed_response.py +4 -4
  212. wandelbots_api_client/models/plan_trajectory_failed_response_error_feedback.py +1 -1
  213. wandelbots_api_client/models/plan_trajectory_request.py +10 -9
  214. wandelbots_api_client/models/plan_trajectory_response.py +2 -2
  215. wandelbots_api_client/models/plan_trajectory_response_response.py +1 -1
  216. wandelbots_api_client/models/plane2.py +2 -2
  217. wandelbots_api_client/models/plane3.py +2 -2
  218. wandelbots_api_client/models/planned_motion.py +6 -6
  219. wandelbots_api_client/models/planner_pose.py +3 -3
  220. wandelbots_api_client/models/planning_limits.py +13 -13
  221. wandelbots_api_client/models/planning_limits_limit_range.py +3 -3
  222. wandelbots_api_client/models/playback_speed_request.py +3 -3
  223. wandelbots_api_client/models/playback_speed_response.py +2 -2
  224. wandelbots_api_client/models/playback_speed_response_playback_speed_response.py +2 -2
  225. wandelbots_api_client/models/point_cloud.py +2 -2
  226. wandelbots_api_client/models/pose.py +4 -4
  227. wandelbots_api_client/models/pose2.py +3 -3
  228. wandelbots_api_client/models/program_metadata.py +7 -7
  229. wandelbots_api_client/models/program_run.py +15 -14
  230. wandelbots_api_client/models/program_run_object.py +7 -7
  231. wandelbots_api_client/models/program_run_state.py +1 -1
  232. wandelbots_api_client/models/program_runner_reference.py +3 -3
  233. wandelbots_api_client/models/pyjectory_datatypes_core_pose.py +3 -3
  234. wandelbots_api_client/models/pyjectory_datatypes_serializer_orientation.py +2 -2
  235. wandelbots_api_client/models/pyjectory_datatypes_serializer_pose.py +2 -2
  236. wandelbots_api_client/models/pyjectory_datatypes_serializer_position.py +2 -2
  237. wandelbots_api_client/models/pyriphery_etcd_etcd_configuration.py +5 -5
  238. wandelbots_api_client/models/pyriphery_hardware_isaac_isaac_configuration.py +5 -5
  239. wandelbots_api_client/models/pyriphery_opcua_opcua_configuration.py +4 -4
  240. wandelbots_api_client/models/pyriphery_pyrae_controller_controller_configuration.py +7 -7
  241. wandelbots_api_client/models/pyriphery_pyrae_robot_robot_configuration.py +8 -8
  242. wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_input.py +13 -11
  243. wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_output.py +13 -11
  244. wandelbots_api_client/models/pyriphery_robotics_robotcell_timer_configuration.py +3 -3
  245. wandelbots_api_client/models/pyriphery_robotics_simulation_robot_with_view_open3d_configuration.py +4 -4
  246. wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_io_configuration.py +3 -3
  247. wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_opcua_configuration.py +3 -3
  248. wandelbots_api_client/models/quaternion.py +5 -5
  249. wandelbots_api_client/models/recipe_metadata.py +8 -8
  250. wandelbots_api_client/models/rectangle.py +3 -3
  251. wandelbots_api_client/models/rectangle2.py +4 -4
  252. wandelbots_api_client/models/rectangle3.py +4 -4
  253. wandelbots_api_client/models/rectangular_capsule.py +4 -4
  254. wandelbots_api_client/models/rectangular_capsule2.py +5 -5
  255. wandelbots_api_client/models/rectangular_capsule3.py +5 -5
  256. wandelbots_api_client/models/release_channel.py +1 -1
  257. wandelbots_api_client/models/request.py +1 -1
  258. wandelbots_api_client/models/request1.py +1 -1
  259. wandelbots_api_client/models/response_get_value_programs_values_key_get.py +1 -1
  260. wandelbots_api_client/models/response_get_values_programs_values_get_value.py +1 -1
  261. wandelbots_api_client/models/robot_controller.py +3 -3
  262. wandelbots_api_client/models/robot_controller_configuration.py +1 -1
  263. wandelbots_api_client/models/robot_controller_state.py +8 -8
  264. wandelbots_api_client/models/robot_link_geometry.py +3 -3
  265. wandelbots_api_client/models/robot_state.py +3 -3
  266. wandelbots_api_client/models/robot_system_mode.py +1 -1
  267. wandelbots_api_client/models/robot_tcp.py +5 -5
  268. wandelbots_api_client/models/robot_tcps.py +2 -2
  269. wandelbots_api_client/models/rotation_angle_types.py +1 -1
  270. wandelbots_api_client/models/rotation_angles.py +3 -3
  271. wandelbots_api_client/models/safety_configuration.py +6 -6
  272. wandelbots_api_client/models/safety_setup.py +5 -5
  273. wandelbots_api_client/models/safety_setup_safety_settings.py +3 -3
  274. wandelbots_api_client/models/safety_setup_safety_zone.py +5 -5
  275. wandelbots_api_client/models/safety_zone.py +4 -4
  276. wandelbots_api_client/models/safety_zone_limits.py +3 -3
  277. wandelbots_api_client/models/safety_zone_violation.py +2 -2
  278. wandelbots_api_client/models/service_status.py +3 -3
  279. wandelbots_api_client/models/service_status_phase.py +1 -1
  280. wandelbots_api_client/models/service_status_severity.py +1 -1
  281. wandelbots_api_client/models/service_status_status.py +4 -4
  282. wandelbots_api_client/models/set_io.py +3 -3
  283. wandelbots_api_client/models/set_playback_speed.py +3 -3
  284. wandelbots_api_client/models/single_joint_limit.py +3 -3
  285. wandelbots_api_client/models/singularity.py +3 -3
  286. wandelbots_api_client/models/singularity_type_enum.py +1 -1
  287. wandelbots_api_client/models/sphere.py +2 -2
  288. wandelbots_api_client/models/sphere2.py +3 -3
  289. wandelbots_api_client/models/sphere3.py +3 -3
  290. wandelbots_api_client/models/standstill.py +2 -2
  291. wandelbots_api_client/models/standstill_reason.py +1 -1
  292. wandelbots_api_client/models/standstill_standstill.py +4 -4
  293. wandelbots_api_client/models/start_movement_request.py +6 -6
  294. wandelbots_api_client/models/start_on_io.py +3 -3
  295. wandelbots_api_client/models/status.py +4 -4
  296. wandelbots_api_client/models/stop_response.py +4 -4
  297. wandelbots_api_client/models/store_value.py +1 -1
  298. wandelbots_api_client/models/stream_move_backward.py +2 -2
  299. wandelbots_api_client/models/stream_move_forward.py +2 -2
  300. wandelbots_api_client/models/stream_move_playback_speed.py +2 -2
  301. wandelbots_api_client/models/stream_move_request.py +1 -1
  302. wandelbots_api_client/models/stream_move_response.py +4 -4
  303. wandelbots_api_client/models/stream_move_to_trajectory.py +2 -2
  304. wandelbots_api_client/models/stream_stop.py +2 -2
  305. wandelbots_api_client/models/tcp_pose.py +5 -5
  306. wandelbots_api_client/models/tcp_pose_request.py +5 -5
  307. wandelbots_api_client/models/tool_geometry.py +3 -3
  308. wandelbots_api_client/models/trajectory_sample.py +12 -12
  309. wandelbots_api_client/models/trigger_object.py +11 -11
  310. wandelbots_api_client/models/trigger_type.py +1 -1
  311. wandelbots_api_client/models/universalrobots_controller.py +3 -3
  312. wandelbots_api_client/models/update_nova_version_request.py +2 -2
  313. wandelbots_api_client/models/update_program_metadata_request.py +4 -4
  314. wandelbots_api_client/models/update_recipe_metadata_request.py +4 -4
  315. wandelbots_api_client/models/update_trigger_request.py +6 -6
  316. wandelbots_api_client/models/validation_error.py +4 -4
  317. wandelbots_api_client/models/validation_error2.py +4 -4
  318. wandelbots_api_client/models/validation_error2_loc_inner.py +1 -1
  319. wandelbots_api_client/models/validation_error_loc_inner.py +1 -1
  320. wandelbots_api_client/models/value.py +1 -1
  321. wandelbots_api_client/models/vector3d.py +4 -4
  322. wandelbots_api_client/models/version_number.py +9 -9
  323. wandelbots_api_client/models/virtual_controller.py +7 -7
  324. wandelbots_api_client/models/virtual_controller_types.py +17 -2
  325. wandelbots_api_client/models/virtual_robot_configuration.py +3 -3
  326. wandelbots_api_client/models/yaskawa_controller.py +3 -3
  327. wandelbots_api_client/rest.py +3 -2
  328. wandelbots_api_client/v2/__init__.py +3 -4
  329. wandelbots_api_client/v2/api/__init__.py +16 -16
  330. wandelbots_api_client/v2/api/application_api.py +11 -12
  331. wandelbots_api_client/v2/api/bus_inputs_outputs_api.py +4555 -0
  332. wandelbots_api_client/v2/api/cell_api.py +8 -9
  333. wandelbots_api_client/v2/api/controller_api.py +206 -202
  334. wandelbots_api_client/v2/api/controller_inputs_outputs_api.py +45 -44
  335. wandelbots_api_client/v2/api/jogging_api.py +33 -11
  336. wandelbots_api_client/v2/api/kinematics_api.py +636 -0
  337. wandelbots_api_client/v2/api/license_api.py +8 -9
  338. wandelbots_api_client/v2/api/motion_group_api.py +61 -31
  339. wandelbots_api_client/v2/api/motion_group_models_api.py +557 -0
  340. wandelbots_api_client/v2/api/program_api.py +167 -1308
  341. wandelbots_api_client/v2/api/store_collision_components_api.py +823 -50
  342. wandelbots_api_client/v2/api/store_collision_setups_api.py +1404 -0
  343. wandelbots_api_client/v2/api/store_object_api.py +11 -12
  344. wandelbots_api_client/v2/api/system_api.py +282 -18
  345. wandelbots_api_client/v2/api/trajectory_caching_api.py +94 -20
  346. wandelbots_api_client/v2/api/trajectory_execution_api.py +33 -11
  347. wandelbots_api_client/v2/api/trajectory_planning_api.py +68 -323
  348. wandelbots_api_client/v2/api/{inverse_kinematics_api.py → version_api.py} +24 -81
  349. wandelbots_api_client/v2/api/virtual_controller_api.py +4565 -0
  350. wandelbots_api_client/v2/api/virtual_controller_behavior_api.py +982 -0
  351. wandelbots_api_client/v2/api/virtual_controller_inputs_outputs_api.py +1003 -0
  352. wandelbots_api_client/v2/api_client.py +15 -8
  353. wandelbots_api_client/v2/configuration.py +19 -8
  354. wandelbots_api_client/v2/exceptions.py +2 -2
  355. wandelbots_api_client/v2/models/__init__.py +210 -159
  356. wandelbots_api_client/v2/models/abb_controller.py +8 -11
  357. wandelbots_api_client/v2/models/abb_controller_egm_server.py +4 -4
  358. wandelbots_api_client/v2/models/activate_license_request.py +3 -3
  359. wandelbots_api_client/v2/models/add_trajectory_error.py +5 -5
  360. wandelbots_api_client/v2/models/add_trajectory_error_data.py +66 -66
  361. wandelbots_api_client/v2/models/add_trajectory_request.py +5 -5
  362. wandelbots_api_client/v2/models/add_trajectory_response.py +4 -4
  363. wandelbots_api_client/v2/models/{jogging_error_response_error.py → api_version.py} +9 -9
  364. wandelbots_api_client/v2/models/app.py +19 -11
  365. wandelbots_api_client/v2/models/behavior.py +3 -3
  366. wandelbots_api_client/v2/models/blending_auto.py +6 -5
  367. wandelbots_api_client/v2/models/blending_position.py +4 -4
  368. wandelbots_api_client/v2/models/boolean_value.py +7 -10
  369. wandelbots_api_client/v2/models/box.py +7 -7
  370. wandelbots_api_client/v2/models/{program_run_object.py → bus_io_description.py} +31 -20
  371. wandelbots_api_client/v2/models/{jogging_error_response.py → bus_io_modbus_client.py} +23 -14
  372. wandelbots_api_client/v2/models/bus_io_modbus_server.py +115 -0
  373. wandelbots_api_client/v2/models/bus_io_modbus_tcp_client.py +106 -0
  374. wandelbots_api_client/v2/models/bus_io_modbus_tcp_server.py +104 -0
  375. wandelbots_api_client/v2/models/{movement_error_error.py → bus_io_modbus_virtual.py} +17 -10
  376. wandelbots_api_client/v2/models/bus_io_profinet.py +114 -0
  377. wandelbots_api_client/v2/models/{motion_group_behavior_getter.py → bus_io_profinet_default_route.py} +12 -11
  378. wandelbots_api_client/v2/models/bus_io_profinet_ip_config.py +95 -0
  379. wandelbots_api_client/v2/models/{update_trigger_request.py → bus_io_profinet_network.py} +18 -18
  380. wandelbots_api_client/v2/models/bus_io_profinet_virtual.py +98 -0
  381. wandelbots_api_client/v2/models/bus_io_type.py +212 -0
  382. wandelbots_api_client/v2/models/{create_trigger200_response.py → bus_ios_state.py} +12 -9
  383. wandelbots_api_client/v2/models/bus_ios_state_enum.py +39 -0
  384. wandelbots_api_client/v2/models/capsule.py +5 -5
  385. wandelbots_api_client/v2/models/{robot_state.py → cartesian_limits.py} +15 -15
  386. wandelbots_api_client/v2/models/cell.py +7 -7
  387. wandelbots_api_client/v2/models/collider.py +5 -5
  388. wandelbots_api_client/v2/models/collider_shape.py +2 -42
  389. wandelbots_api_client/v2/models/collision.py +11 -11
  390. wandelbots_api_client/v2/models/collision_contact.py +6 -6
  391. wandelbots_api_client/v2/models/{collision2.py → collision_error.py} +7 -7
  392. wandelbots_api_client/v2/models/collision_free_algorithm.py +155 -0
  393. wandelbots_api_client/v2/models/{collision_motion_group_assembly.py → collision_setup.py} +32 -18
  394. wandelbots_api_client/v2/models/comparator.py +2 -2
  395. wandelbots_api_client/v2/models/configuration_archive_status.py +174 -0
  396. wandelbots_api_client/v2/models/{joints.py → configuration_archive_status_creating.py} +20 -10
  397. wandelbots_api_client/v2/models/configuration_archive_status_error.py +100 -0
  398. wandelbots_api_client/v2/models/configuration_archive_status_success.py +98 -0
  399. wandelbots_api_client/v2/models/configuration_resource.py +5 -5
  400. wandelbots_api_client/v2/models/container_environment_inner.py +4 -4
  401. wandelbots_api_client/v2/models/container_image.py +5 -5
  402. wandelbots_api_client/v2/models/container_image_secrets_inner.py +3 -3
  403. wandelbots_api_client/v2/models/{create_program_operator_run200_response.py → container_resources.py} +12 -9
  404. wandelbots_api_client/v2/models/container_storage.py +4 -4
  405. wandelbots_api_client/v2/models/{create_trigger_request.py → controller_description.py} +16 -21
  406. wandelbots_api_client/v2/models/convex_hull.py +4 -4
  407. wandelbots_api_client/v2/models/coordinate_system.py +11 -11
  408. wandelbots_api_client/v2/models/coordinate_system_data.py +101 -0
  409. wandelbots_api_client/v2/models/cubic_spline_parameter.py +4 -4
  410. wandelbots_api_client/v2/models/cycle_time.py +5 -4
  411. wandelbots_api_client/v2/models/cylinder.py +5 -5
  412. wandelbots_api_client/v2/models/dh_parameter.py +7 -7
  413. wandelbots_api_client/v2/models/direction.py +2 -2
  414. wandelbots_api_client/v2/models/error.py +4 -4
  415. wandelbots_api_client/v2/models/{jogging_paused_collision.py → error_invalid_joint_count.py} +21 -14
  416. wandelbots_api_client/v2/models/error_joint_limit_exceeded.py +103 -0
  417. wandelbots_api_client/v2/models/{coordinate_systems.py → error_joint_position_collision.py} +30 -19
  418. wandelbots_api_client/v2/models/error_max_iterations_exceeded.py +100 -0
  419. wandelbots_api_client/v2/models/execute.py +97 -0
  420. wandelbots_api_client/v2/models/{set_io_values_request_inner.py → execute_details.py} +47 -43
  421. wandelbots_api_client/v2/models/execute_jogging_request.py +52 -10
  422. wandelbots_api_client/v2/models/execute_jogging_response.py +87 -26
  423. wandelbots_api_client/v2/models/execute_trajectory_request.py +30 -2
  424. wandelbots_api_client/v2/models/execute_trajectory_response.py +61 -42
  425. wandelbots_api_client/v2/models/external_joint_stream_datapoint.py +6 -6
  426. wandelbots_api_client/v2/models/{robot_tcps.py → external_joint_stream_request.py} +17 -17
  427. wandelbots_api_client/v2/models/fanuc_controller.py +6 -9
  428. wandelbots_api_client/v2/models/feedback_collision.py +6 -6
  429. wandelbots_api_client/v2/models/feedback_joint_limit_exceeded.py +7 -6
  430. wandelbots_api_client/v2/models/feedback_out_of_workspace.py +4 -4
  431. wandelbots_api_client/v2/models/feedback_singularity.py +5 -5
  432. wandelbots_api_client/v2/models/flag.py +3 -3
  433. wandelbots_api_client/v2/models/float_value.py +8 -11
  434. wandelbots_api_client/v2/models/{get_all_triggers200_response.py → forward_kinematics422_response.py} +17 -17
  435. wandelbots_api_client/v2/models/forward_kinematics_request.py +104 -0
  436. wandelbots_api_client/v2/models/{controllers_list.py → forward_kinematics_response.py} +18 -18
  437. wandelbots_api_client/v2/models/{list_coordinate_systems_response.py → forward_kinematics_validation_error.py} +30 -18
  438. wandelbots_api_client/v2/models/get_trajectory_response.py +5 -5
  439. wandelbots_api_client/v2/models/http_validation_error.py +5 -5
  440. wandelbots_api_client/v2/models/image_credentials.py +5 -5
  441. wandelbots_api_client/v2/models/{inconsitent_trajectory_size.py → inconsistent_trajectory_size_error.py} +9 -9
  442. wandelbots_api_client/v2/models/{inconsitent_trajectory_size_inconsistent_trajectory_size.py → inconsistent_trajectory_size_error_inconsistent_trajectory_size.py} +9 -9
  443. wandelbots_api_client/v2/models/initialize_jogging_request.py +9 -16
  444. wandelbots_api_client/v2/models/initialize_jogging_response.py +17 -12
  445. wandelbots_api_client/v2/models/initialize_movement_request.py +7 -12
  446. wandelbots_api_client/v2/models/initialize_movement_request_trajectory.py +2 -2
  447. wandelbots_api_client/v2/models/initialize_movement_response.py +22 -11
  448. wandelbots_api_client/v2/models/integer_value.py +8 -11
  449. wandelbots_api_client/v2/models/{invalid_dof.py → invalid_dof_error.py} +9 -9
  450. wandelbots_api_client/v2/models/{invalid_dof_invalid_dof.py → invalid_dof_error_invalid_dof.py} +8 -8
  451. wandelbots_api_client/v2/models/{motion_group_infos.py → inverse_kinematics422_response.py} +18 -18
  452. wandelbots_api_client/v2/models/inverse_kinematics_request.py +51 -31
  453. wandelbots_api_client/v2/models/inverse_kinematics_response.py +3 -3
  454. wandelbots_api_client/v2/models/inverse_kinematics_validation_error.py +120 -0
  455. wandelbots_api_client/v2/models/inverse_kinematics_validation_error_all_of_data.py +155 -0
  456. wandelbots_api_client/v2/models/io_boolean_value.py +8 -11
  457. wandelbots_api_client/v2/models/{io_description_min.py → io_boundary.py} +10 -25
  458. wandelbots_api_client/v2/models/io_description.py +15 -15
  459. wandelbots_api_client/v2/models/io_direction.py +2 -2
  460. wandelbots_api_client/v2/models/io_float_value.py +9 -12
  461. wandelbots_api_client/v2/models/io_integer_value.py +9 -12
  462. wandelbots_api_client/v2/models/{trigger_type.py → io_origin.py} +7 -6
  463. wandelbots_api_client/v2/models/{set_output_values_request_inner.py → io_value.py} +10 -25
  464. wandelbots_api_client/v2/models/io_value_type.py +2 -2
  465. wandelbots_api_client/v2/models/{movement_movement.py → jogging_details.py} +21 -16
  466. wandelbots_api_client/v2/models/{jogging_state.py → jogging_details_state.py} +76 -43
  467. wandelbots_api_client/v2/models/{program_run_reference.py → jogging_paused_by_user.py} +17 -13
  468. wandelbots_api_client/v2/models/{jogging_paused_collision_paused_near_collision.py → jogging_paused_near_collision.py} +19 -10
  469. wandelbots_api_client/v2/models/{jogging_paused_joint_limit_paused_near_joint_limit.py → jogging_paused_near_joint_limit.py} +20 -10
  470. wandelbots_api_client/v2/models/jogging_paused_on_io.py +14 -7
  471. wandelbots_api_client/v2/models/jogging_running.py +14 -7
  472. wandelbots_api_client/v2/models/{joint_limit_exceeded.py → joint_limit_exceeded_error.py} +7 -7
  473. wandelbots_api_client/v2/models/joint_limits.py +101 -0
  474. wandelbots_api_client/v2/models/joint_trajectory.py +6 -23
  475. wandelbots_api_client/v2/models/joint_velocity_request.py +7 -14
  476. wandelbots_api_client/v2/models/joint_velocity_response.py +100 -0
  477. wandelbots_api_client/v2/models/kuka_controller.py +12 -13
  478. wandelbots_api_client/v2/models/kuka_controller_rsi_server.py +4 -4
  479. wandelbots_api_client/v2/models/license.py +12 -12
  480. wandelbots_api_client/v2/models/license_status.py +4 -4
  481. wandelbots_api_client/v2/models/license_status_enum.py +2 -2
  482. wandelbots_api_client/v2/models/{planning_limits_limit_range.py → limit_range.py} +8 -8
  483. wandelbots_api_client/v2/models/limit_set.py +129 -0
  484. wandelbots_api_client/v2/models/limits_override.py +8 -8
  485. wandelbots_api_client/v2/models/list_trajectories_response.py +3 -3
  486. wandelbots_api_client/v2/models/manufacturer.py +2 -2
  487. wandelbots_api_client/v2/models/midpoint_insertion_algorithm.py +101 -0
  488. wandelbots_api_client/v2/models/modbus_io.py +105 -0
  489. wandelbots_api_client/v2/models/modbus_io_area.py +40 -0
  490. wandelbots_api_client/v2/models/modbus_io_byte_order.py +40 -0
  491. wandelbots_api_client/v2/models/modbus_io_data.py +103 -0
  492. wandelbots_api_client/v2/models/modbus_io_type_enum.py +39 -0
  493. wandelbots_api_client/v2/models/motion_command.py +5 -5
  494. wandelbots_api_client/v2/models/motion_command_blending.py +2 -2
  495. wandelbots_api_client/v2/models/motion_command_path.py +2 -2
  496. wandelbots_api_client/v2/models/{planning_parameters.py → motion_group_description.py} +40 -35
  497. wandelbots_api_client/v2/models/motion_group_info.py +7 -6
  498. wandelbots_api_client/v2/models/motion_group_joints.py +6 -6
  499. wandelbots_api_client/v2/models/{robot_setup.py → motion_group_setup.py} +33 -35
  500. wandelbots_api_client/v2/models/motion_group_state.py +32 -44
  501. wandelbots_api_client/v2/models/motion_group_state_joint_limit_reached.py +3 -3
  502. wandelbots_api_client/v2/models/movement_error_response.py +100 -0
  503. wandelbots_api_client/v2/models/{nan_value.py → nan_value_error.py} +9 -9
  504. wandelbots_api_client/v2/models/{nan_value_nan_value.py → nan_value_error_nan_value.py} +6 -6
  505. wandelbots_api_client/v2/models/op_mode.py +3 -3
  506. wandelbots_api_client/v2/models/operating_state.py +2 -2
  507. wandelbots_api_client/v2/models/operation_limits.py +110 -0
  508. wandelbots_api_client/v2/models/operation_mode.py +2 -2
  509. wandelbots_api_client/v2/models/orientation_type.py +2 -2
  510. wandelbots_api_client/v2/models/path_cartesian_ptp.py +4 -4
  511. wandelbots_api_client/v2/models/path_circle.py +5 -5
  512. wandelbots_api_client/v2/models/path_cubic_spline.py +4 -4
  513. wandelbots_api_client/v2/models/path_joint_ptp.py +4 -4
  514. wandelbots_api_client/v2/models/path_line.py +4 -4
  515. wandelbots_api_client/v2/models/pause_jogging_request.py +98 -0
  516. wandelbots_api_client/v2/models/{initialize_jogging_response_init_response.py → pause_jogging_response.py} +19 -12
  517. wandelbots_api_client/v2/models/pause_movement_request.py +7 -12
  518. wandelbots_api_client/v2/models/pause_movement_response.py +17 -12
  519. wandelbots_api_client/v2/models/pause_on_io.py +11 -8
  520. wandelbots_api_client/v2/models/payload.py +6 -6
  521. wandelbots_api_client/v2/models/{http_validation_error2.py → plan422_response.py} +9 -9
  522. wandelbots_api_client/v2/models/{movement.py → plan_collision_free_failed_response.py} +13 -13
  523. wandelbots_api_client/v2/models/{jogging_response_jogging.py → plan_collision_free_request.py} +25 -21
  524. wandelbots_api_client/v2/models/{standstill.py → plan_collision_free_response.py} +13 -13
  525. wandelbots_api_client/{models/create_trigger_request_config.py → v2/models/plan_collision_free_response_response.py} +34 -20
  526. wandelbots_api_client/v2/models/plan_trajectory_failed_response.py +5 -5
  527. wandelbots_api_client/v2/models/plan_trajectory_failed_response_error_feedback.py +2 -2
  528. wandelbots_api_client/v2/models/plan_trajectory_request.py +11 -11
  529. wandelbots_api_client/v2/models/plan_trajectory_response.py +3 -3
  530. wandelbots_api_client/v2/models/plan_trajectory_response_response.py +2 -2
  531. wandelbots_api_client/v2/models/{get_all_program_operator_runs200_response.py → plan_validation_error.py} +30 -18
  532. wandelbots_api_client/v2/models/plan_validation_error_all_of_data.py +174 -0
  533. wandelbots_api_client/v2/models/plane.py +3 -3
  534. wandelbots_api_client/v2/models/playback_speed_request.py +7 -9
  535. wandelbots_api_client/v2/models/playback_speed_response.py +17 -12
  536. wandelbots_api_client/v2/models/pose.py +4 -4
  537. wandelbots_api_client/v2/models/profinet_description.py +120 -0
  538. wandelbots_api_client/v2/models/{opcua_node_value_trigger_config.py → profinet_input_output_config.py} +14 -17
  539. wandelbots_api_client/v2/models/profinet_io.py +104 -0
  540. wandelbots_api_client/v2/models/{program_request.py → profinet_io_data.py} +20 -39
  541. wandelbots_api_client/v2/models/profinet_io_direction.py +38 -0
  542. wandelbots_api_client/v2/models/profinet_io_type_enum.py +45 -0
  543. wandelbots_api_client/v2/models/{list_io_descriptions_response.py → profinet_slot_description.py} +23 -18
  544. wandelbots_api_client/v2/models/profinet_sub_slot_description.py +96 -0
  545. wandelbots_api_client/v2/models/program.py +109 -0
  546. wandelbots_api_client/v2/models/program_run.py +23 -35
  547. wandelbots_api_client/v2/models/program_run_state.py +8 -8
  548. wandelbots_api_client/v2/models/{jogging_paused_user_request.py → program_start_request.py} +10 -10
  549. wandelbots_api_client/v2/models/rectangle.py +5 -5
  550. wandelbots_api_client/v2/models/rectangular_capsule.py +6 -6
  551. wandelbots_api_client/v2/models/release_channel.py +2 -2
  552. wandelbots_api_client/v2/models/robot_controller.py +4 -4
  553. wandelbots_api_client/v2/models/robot_controller_configuration.py +2 -2
  554. wandelbots_api_client/v2/models/robot_controller_state.py +17 -11
  555. wandelbots_api_client/v2/models/robot_system_mode.py +8 -8
  556. wandelbots_api_client/v2/models/robot_tcp.py +10 -10
  557. wandelbots_api_client/v2/models/{motion_vector.py → robot_tcp_data.py} +16 -13
  558. wandelbots_api_client/v2/models/rrt_connect_algorithm.py +109 -0
  559. wandelbots_api_client/v2/models/safety_state_type.py +2 -2
  560. wandelbots_api_client/v2/models/service_group.py +2 -2
  561. wandelbots_api_client/v2/models/service_status.py +5 -5
  562. wandelbots_api_client/v2/models/service_status_phase.py +2 -2
  563. wandelbots_api_client/v2/models/service_status_response.py +4 -4
  564. wandelbots_api_client/v2/models/service_status_severity.py +2 -2
  565. wandelbots_api_client/v2/models/service_status_status.py +5 -5
  566. wandelbots_api_client/v2/models/{standstill_standstill.py → set_io.py} +17 -17
  567. wandelbots_api_client/v2/models/settable_robot_system_mode.py +2 -2
  568. wandelbots_api_client/v2/models/singularity_type_enum.py +2 -2
  569. wandelbots_api_client/v2/models/sphere.py +4 -4
  570. wandelbots_api_client/v2/models/start_movement_request.py +14 -15
  571. wandelbots_api_client/v2/models/start_movement_response.py +100 -0
  572. wandelbots_api_client/v2/models/start_on_io.py +11 -8
  573. wandelbots_api_client/v2/models/{list_io_values_response.py → stream_io_values_response.py} +17 -11
  574. wandelbots_api_client/v2/models/tcp_offset.py +4 -4
  575. wandelbots_api_client/v2/models/{tcp_required.py → tcp_required_error.py} +6 -6
  576. wandelbots_api_client/v2/models/tcp_velocity_request.py +6 -9
  577. wandelbots_api_client/v2/models/tcp_velocity_response.py +100 -0
  578. wandelbots_api_client/v2/models/{torque_exceeded.py → torque_exceeded_error.py} +9 -9
  579. wandelbots_api_client/v2/models/{torque_exceeded_torque_exceeded.py → torque_exceeded_error_torque_exceeded.py} +8 -8
  580. wandelbots_api_client/v2/models/trajectory_data.py +6 -6
  581. wandelbots_api_client/v2/models/trajectory_details.py +108 -0
  582. wandelbots_api_client/v2/models/trajectory_details_state.py +212 -0
  583. wandelbots_api_client/v2/models/trajectory_ended.py +98 -0
  584. wandelbots_api_client/v2/models/trajectory_id.py +4 -4
  585. wandelbots_api_client/v2/models/{get_mode_response.py → trajectory_paused_by_user.py} +17 -11
  586. wandelbots_api_client/v2/models/trajectory_paused_on_io.py +98 -0
  587. wandelbots_api_client/v2/models/trajectory_running.py +101 -0
  588. wandelbots_api_client/v2/models/{create_program_operator_run_request.py → trajectory_wait_for_io.py} +17 -10
  589. wandelbots_api_client/v2/models/unit_type.py +3 -3
  590. wandelbots_api_client/v2/models/universalrobots_controller.py +6 -9
  591. wandelbots_api_client/v2/models/update_nova_version_request.py +3 -3
  592. wandelbots_api_client/v2/models/validation_error.py +9 -7
  593. wandelbots_api_client/v2/models/validation_error2.py +6 -6
  594. wandelbots_api_client/v2/models/validation_error_loc_inner.py +2 -2
  595. wandelbots_api_client/v2/models/virtual_controller.py +11 -14
  596. wandelbots_api_client/v2/models/virtual_controller_types.py +18 -3
  597. wandelbots_api_client/v2/models/virtual_robot_configuration.py +4 -4
  598. wandelbots_api_client/v2/models/wait_for_io_event_request.py +6 -6
  599. wandelbots_api_client/v2/models/yaskawa_controller.py +6 -9
  600. wandelbots_api_client/v2/rest.py +4 -3
  601. wandelbots_api_client/v2_pydantic/__init__.py +50 -0
  602. wandelbots_api_client/v2_pydantic/api/__init__.py +51 -0
  603. wandelbots_api_client/{v2/api/virtual_robot_api.py → v2_pydantic/api/application_api.py} +327 -426
  604. wandelbots_api_client/v2_pydantic/api/bus_inputs_outputs_api.py +4603 -0
  605. wandelbots_api_client/{v2/api/virtual_robot_setup_api.py → v2_pydantic/api/cell_api.py} +291 -771
  606. wandelbots_api_client/v2_pydantic/api/controller_api.py +3721 -0
  607. wandelbots_api_client/v2_pydantic/api/controller_inputs_outputs_api.py +1395 -0
  608. wandelbots_api_client/v2_pydantic/api/jogging_api.py +125 -0
  609. wandelbots_api_client/v2_pydantic/api/kinematics_api.py +642 -0
  610. wandelbots_api_client/{v2/api/store_collision_scenes_api.py → v2_pydantic/api/license_api.py} +158 -248
  611. wandelbots_api_client/{v2/api/virtual_robot_behavior_api.py → v2_pydantic/api/motion_group_api.py} +156 -131
  612. wandelbots_api_client/v2_pydantic/api/motion_group_models_api.py +563 -0
  613. wandelbots_api_client/{v2/api/store_program_api.py → v2_pydantic/api/program_api.py} +191 -181
  614. wandelbots_api_client/v2_pydantic/api/store_collision_components_api.py +4170 -0
  615. wandelbots_api_client/v2_pydantic/api/store_collision_setups_api.py +1419 -0
  616. wandelbots_api_client/v2_pydantic/api/store_object_api.py +1719 -0
  617. wandelbots_api_client/{v2/api/program_operator_api.py → v2_pydantic/api/system_api.py} +625 -476
  618. wandelbots_api_client/{v2/api/virtual_robot_mode_api.py → v2_pydantic/api/trajectory_caching_api.py} +208 -162
  619. wandelbots_api_client/v2_pydantic/api/trajectory_execution_api.py +125 -0
  620. wandelbots_api_client/v2_pydantic/api/trajectory_planning_api.py +642 -0
  621. wandelbots_api_client/v2_pydantic/api/version_api.py +287 -0
  622. wandelbots_api_client/v2_pydantic/api/virtual_controller_api.py +4610 -0
  623. wandelbots_api_client/v2_pydantic/api/virtual_controller_behavior_api.py +991 -0
  624. wandelbots_api_client/v2_pydantic/api/virtual_controller_inputs_outputs_api.py +1012 -0
  625. wandelbots_api_client/v2_pydantic/api_client.py +809 -0
  626. wandelbots_api_client/v2_pydantic/api_response.py +21 -0
  627. wandelbots_api_client/v2_pydantic/configuration.py +606 -0
  628. wandelbots_api_client/v2_pydantic/exceptions.py +216 -0
  629. wandelbots_api_client/v2_pydantic/models.py +4561 -0
  630. wandelbots_api_client/v2_pydantic/py.typed +0 -0
  631. wandelbots_api_client/v2_pydantic/rest.py +213 -0
  632. wandelbots_api_client-25.10.0rc2.dist-info/METADATA +62 -0
  633. wandelbots_api_client-25.10.0rc2.dist-info/RECORD +640 -0
  634. {wandelbots_api_client-25.6.0.dev7.dist-info → wandelbots_api_client-25.10.0rc2.dist-info}/WHEEL +2 -1
  635. wandelbots_api_client-25.10.0rc2.dist-info/top_level.txt +1 -0
  636. wandelbots_api_client/v2/models/collision_motion_group.py +0 -121
  637. wandelbots_api_client/v2/models/collision_scene.py +0 -119
  638. wandelbots_api_client/v2/models/collision_scene_assembly.py +0 -129
  639. wandelbots_api_client/v2/models/controller.py +0 -132
  640. wandelbots_api_client/v2/models/external_joint_stream_datapoint_value.py +0 -97
  641. wandelbots_api_client/v2/models/initialize_movement_response_init_response.py +0 -93
  642. wandelbots_api_client/v2/models/jogging_paused_joint_limit.py +0 -95
  643. wandelbots_api_client/v2/models/jogging_response.py +0 -95
  644. wandelbots_api_client/v2/models/motion_group_instance.py +0 -101
  645. wandelbots_api_client/v2/models/motion_group_state_without_payload.py +0 -146
  646. wandelbots_api_client/v2/models/movement_error.py +0 -95
  647. wandelbots_api_client/v2/models/opcua_node_value_trigger_config_node_value.py +0 -160
  648. wandelbots_api_client/v2/models/pause_movement_response_pause_response.py +0 -93
  649. wandelbots_api_client/v2/models/planning_limits.py +0 -130
  650. wandelbots_api_client/v2/models/playback_speed_response_playback_speed_response.py +0 -91
  651. wandelbots_api_client/v2/models/program_run_result.py +0 -108
  652. wandelbots_api_client/v2/models/single_motion_group_collision_scene.py +0 -135
  653. wandelbots_api_client/v2/models/standstill_reason.py +0 -39
  654. wandelbots_api_client/v2/models/trigger_object.py +0 -111
  655. wandelbots_api_client/v2/models/version_number.py +0 -105
  656. wandelbots_api_client-25.6.0.dev7.dist-info/METADATA +0 -63
  657. wandelbots_api_client-25.6.0.dev7.dist-info/RECORD +0 -580
  658. {wandelbots_api_client-25.6.0.dev7.dist-info → wandelbots_api_client-25.10.0rc2.dist-info/licenses}/LICENSE +0 -0
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Wandelbots NOVA API
5
5
 
6
- Interact with robots in an easy and intuitive way. > **Note:** API version 2 is experimental and will experience functional changes.
6
+ Interact with robots in an easy and intuitive way.
7
7
 
8
- The version of the OpenAPI document: 2.0.0 beta
8
+ The version of the OpenAPI document: 2.1.0 dev
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -17,32 +17,33 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
+ from typing_extensions import Annotated
22
23
  from wandelbots_api_client.v2.models.collider import Collider
23
24
  from wandelbots_api_client.v2.models.dh_parameter import DHParameter
25
+ from wandelbots_api_client.v2.models.operation_limits import OperationLimits
24
26
  from wandelbots_api_client.v2.models.payload import Payload
25
- from wandelbots_api_client.v2.models.planning_limits import PlanningLimits
26
27
  from wandelbots_api_client.v2.models.pose import Pose
27
28
  from wandelbots_api_client.v2.models.tcp_offset import TcpOffset
28
29
  from typing import Optional, Set
29
30
  from typing_extensions import Self
30
31
 
31
- class PlanningParameters(BaseModel):
32
+ class MotionGroupDescription(BaseModel):
32
33
  """
33
34
  The configuration of a motion-group used for motion planning.
34
35
  """ # noqa: E501
35
- motion_group_type: StrictStr = Field(description="String identifiying the model of a motion group.")
36
- mounting: Pose = Field(description="The offset from the world frame to the motion group base.")
37
- tcps: Dict[str, TcpOffset] = Field(description="Maps a TCP name to its offset relative to the flange coordinate system. Key must be a TCP identifier. Values are TcpOffsets. ")
38
- safety_zones: Optional[Dict[str, Collider]] = Field(default=None, description="A collection of identifiable colliders.")
39
- safety_link_colliders: Optional[List[Dict[str, Collider]]] = Field(default=None, description="The shape of the MotionGroups links to validate against safety zones. Indexed along the kinematic chain, starting with a static base shape before first joint. ")
40
- safety_tool_colliders: Optional[Dict[str, Dict[str, Collider]]] = Field(default=None, description="Maps a TCP name to its tool collider. Key must be a TCP identifier. Values are ColliderDictionaries that make up the shape of one tool to validate against safety zones. ")
41
- global_limits: PlanningLimits
42
- payloads: Optional[Dict[str, Payload]] = Field(default=None, description="Maps a payload name to its configuration. Key must be a payload identifier. Values are payload objects. ")
43
- cycle_time: Optional[StrictInt] = Field(default=None, description="[ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.")
44
- dh_parameters: Optional[List[DHParameter]] = Field(default=None, description="The DH parameters describing the motion group geometry, starting from base.")
45
- __properties: ClassVar[List[str]] = ["motion_group_type", "mounting", "tcps", "safety_zones", "safety_link_colliders", "safety_tool_colliders", "global_limits", "payloads", "cycle_time", "dh_parameters"]
36
+ motion_group_model: StrictStr = Field(description="String identifiying the model of a motion group.")
37
+ mounting: Optional[Pose] = Field(default=None, description="The offset from the world frame to the motion group base.")
38
+ tcps: Optional[Dict[str, TcpOffset]] = Field(default=None, description="Maps a TCP name to its offset relative to the flange coordinate system. Key must be a TCP identifier. Values are TcpOffsets. ")
39
+ safety_zones: Optional[Dict[str, Collider]] = Field(default=None, description="A collection of identifiable colliders.")
40
+ safety_link_colliders: Optional[List[Dict[str, Collider]]] = Field(default=None, description="The shape of the MotionGroups links to validate against safety zones. Indexed along the kinematic chain, starting with a static base shape before first joint. ")
41
+ safety_tool_colliders: Optional[Dict[str, Dict[str, Collider]]] = Field(default=None, description="Maps a TCP name to its tool collider. Key must be a TCP identifier. Values are ColliderDictionaries that make up the shape of one tool to validate against safety zones. ")
42
+ operation_limits: OperationLimits
43
+ payloads: Optional[Dict[str, Payload]] = Field(default=None, description="Maps a payload name to its configuration. Key must be a payload identifier. Values are payload objects. ")
44
+ cycle_time: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=0)]] = Field(default=None, description="[ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.")
45
+ dh_parameters: Optional[List[DHParameter]] = Field(default=None, description="The DH parameters describing the motion group geometry, starting from base.")
46
+ __properties: ClassVar[List[str]] = ["motion_group_model", "mounting", "tcps", "safety_zones", "safety_link_colliders", "safety_tool_colliders", "operation_limits", "payloads", "cycle_time", "dh_parameters"]
46
47
 
47
48
  model_config = ConfigDict(
48
49
  populate_by_name=True,
@@ -66,7 +67,7 @@ class PlanningParameters(BaseModel):
66
67
 
67
68
  @classmethod
68
69
  def from_json(cls, json_str: str) -> Optional[Self]:
69
- """Create an instance of PlanningParameters from a JSON string"""
70
+ """Create an instance of MotionGroupDescription from a JSON string"""
70
71
  return cls.from_dict(json.loads(json_str))
71
72
 
72
73
  def to_dict(self) -> Dict[str, Any]:
@@ -91,18 +92,20 @@ class PlanningParameters(BaseModel):
91
92
  if self.mounting:
92
93
  _dict['mounting'] = self.mounting.to_dict()
93
94
  # override the default output from pydantic by calling `to_dict()` of each value in tcps (dict)
94
- _field_dict = {}
95
+ # >>> Modified from openapi template
95
96
  if self.tcps:
96
- for _key in self.tcps:
97
+ _field_dict = {}
98
+ for _key, _value in self.tcps.items():
97
99
  if self.tcps[_key]:
98
- _field_dict[_key] = self.tcps[_key].to_dict()
100
+ _field_dict[_key] = _value.to_dict()
99
101
  _dict['tcps'] = _field_dict
100
102
  # override the default output from pydantic by calling `to_dict()` of each value in safety_zones (dict)
101
- _field_dict = {}
103
+ # >>> Modified from openapi template
102
104
  if self.safety_zones:
103
- for _key in self.safety_zones:
105
+ _field_dict = {}
106
+ for _key, _value in self.safety_zones.items():
104
107
  if self.safety_zones[_key]:
105
- _field_dict[_key] = self.safety_zones[_key].to_dict()
108
+ _field_dict[_key] = _value.to_dict()
106
109
  _dict['safety_zones'] = _field_dict
107
110
  # override the default output from pydantic by calling `to_dict()` of each item in safety_link_colliders (list)
108
111
  _items = []
@@ -114,21 +117,23 @@ class PlanningParameters(BaseModel):
114
117
  # <<< End modification
115
118
  _dict['safety_link_colliders'] = _items
116
119
  # override the default output from pydantic by calling `to_dict()` of each value in safety_tool_colliders (dict)
117
- _field_dict = {}
120
+ # >>> Modified from openapi template
118
121
  if self.safety_tool_colliders:
119
- for _key in self.safety_tool_colliders:
122
+ _field_dict = {}
123
+ for _key, _value in self.safety_tool_colliders.items():
120
124
  if self.safety_tool_colliders[_key]:
121
- _field_dict[_key] = self.safety_tool_colliders[_key].to_dict()
125
+ _field_dict[_key] = {_nested_key: _nested_value.to_dict() for _nested_key, _nested_value in _value.items()}
122
126
  _dict['safety_tool_colliders'] = _field_dict
123
- # override the default output from pydantic by calling `to_dict()` of global_limits
124
- if self.global_limits:
125
- _dict['global_limits'] = self.global_limits.to_dict()
127
+ # override the default output from pydantic by calling `to_dict()` of operation_limits
128
+ if self.operation_limits:
129
+ _dict['operation_limits'] = self.operation_limits.to_dict()
126
130
  # override the default output from pydantic by calling `to_dict()` of each value in payloads (dict)
127
- _field_dict = {}
131
+ # >>> Modified from openapi template
128
132
  if self.payloads:
129
- for _key in self.payloads:
133
+ _field_dict = {}
134
+ for _key, _value in self.payloads.items():
130
135
  if self.payloads[_key]:
131
- _field_dict[_key] = self.payloads[_key].to_dict()
136
+ _field_dict[_key] = _value.to_dict()
132
137
  _dict['payloads'] = _field_dict
133
138
  # override the default output from pydantic by calling `to_dict()` of each item in dh_parameters (list)
134
139
  _items = []
@@ -144,7 +149,7 @@ class PlanningParameters(BaseModel):
144
149
 
145
150
  @classmethod
146
151
  def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
147
- """Create an instance of PlanningParameters from a dict"""
152
+ """Create an instance of MotionGroupDescription from a dict"""
148
153
  if obj is None:
149
154
  return None
150
155
 
@@ -152,7 +157,7 @@ class PlanningParameters(BaseModel):
152
157
  return cls.model_validate(obj)
153
158
 
154
159
  _obj = cls.model_validate({
155
- "motion_group_type": obj.get("motion_group_type"),
160
+ "motion_group_model": obj.get("motion_group_model"),
156
161
  "mounting": Pose.from_dict(obj["mounting"]) if obj.get("mounting") is not None else None,
157
162
  "tcps": dict(
158
163
  (_k, TcpOffset.from_dict(_v))
@@ -185,7 +190,7 @@ class PlanningParameters(BaseModel):
185
190
  )
186
191
  if obj.get("safety_tool_colliders") is not None
187
192
  else None,
188
- "global_limits": PlanningLimits.from_dict(obj["global_limits"]) if obj.get("global_limits") is not None else None,
193
+ "operation_limits": OperationLimits.from_dict(obj["operation_limits"]) if obj.get("operation_limits") is not None else None,
189
194
  "payloads": dict(
190
195
  (_k, Payload.from_dict(_v))
191
196
  for _k, _v in obj["payloads"].items()
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Wandelbots NOVA API
5
5
 
6
- Interact with robots in an easy and intuitive way. > **Note:** API version 2 is experimental and will experience functional changes.
6
+ Interact with robots in an easy and intuitive way.
7
7
 
8
- The version of the OpenAPI document: 2.0.0 beta
8
+ The version of the OpenAPI document: 2.1.0 dev
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -17,8 +17,9 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List
22
+ from typing_extensions import Annotated
22
23
  from typing import Optional, Set
23
24
  from typing_extensions import Self
24
25
 
@@ -26,9 +27,9 @@ class MotionGroupInfo(BaseModel):
26
27
  """
27
28
  MotionGroupInfo
28
29
  """ # noqa: E501
29
- motion_group: StrictStr = Field(description="The unique identifier of the motion group. Use it to refer to the motion group in other calls. ")
30
- name: StrictStr = Field(description="The name of the motion group for display purposes. ")
31
- dof: StrictInt = Field(description="The number of joints aka degrees of freedom in the motion group. ")
30
+ motion_group: StrictStr = Field(description="The unique identifier of the motion group. Use it to refer to the motion group in other calls. ")
31
+ name: StrictStr = Field(description="The name of the motion group for display purposes. ")
32
+ dof: Annotated[int, Field(le=2147483647, strict=True, ge=0)] = Field(description="The number of joints aka degrees of freedom in the motion group. ")
32
33
  __properties: ClassVar[List[str]] = ["motion_group", "name", "dof"]
33
34
 
34
35
  model_config = ConfigDict(
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Wandelbots NOVA API
5
5
 
6
- Interact with robots in an easy and intuitive way. > **Note:** API version 2 is experimental and will experience functional changes.
6
+ Interact with robots in an easy and intuitive way.
7
7
 
8
- The version of the OpenAPI document: 2.0.0 beta
8
+ The version of the OpenAPI document: 2.1.0 dev
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -26,10 +26,10 @@ class MotionGroupJoints(BaseModel):
26
26
  """
27
27
  Ensure to provide one value for each joint. See [getMotionGroups](getMotionGroups) for the number of joints. Everything but positions is optional.
28
28
  """ # noqa: E501
29
- positions: List[Union[StrictFloat, StrictInt]] = Field(description="The joint positions of the motion group. ")
30
- velocities: Optional[List[Union[StrictFloat, StrictInt]]] = Field(default=None, description="The joint velocities of the motion group. ")
31
- accelerations: Optional[List[Union[StrictFloat, StrictInt]]] = Field(default=None, description="The joint accelerations of the motion group. ")
32
- torques: Optional[List[Union[StrictFloat, StrictInt]]] = Field(default=None, description="The joint torques of the motion group. ")
29
+ positions: List[Union[StrictFloat, StrictInt]] = Field(description="The joint positions of the motion group. ")
30
+ velocities: Optional[List[Union[StrictFloat, StrictInt]]] = Field(default=None, description="The joint velocities of the motion group. ")
31
+ accelerations: Optional[List[Union[StrictFloat, StrictInt]]] = Field(default=None, description="The joint accelerations of the motion group. ")
32
+ torques: Optional[List[Union[StrictFloat, StrictInt]]] = Field(default=None, description="The joint torques of the motion group. ")
33
33
  __properties: ClassVar[List[str]] = ["positions", "velocities", "accelerations", "torques"]
34
34
 
35
35
  model_config = ConfigDict(
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Wandelbots NOVA API
5
5
 
6
- Interact with robots in an easy and intuitive way. > **Note:** API version 2 is experimental and will experience functional changes.
6
+ Interact with robots in an easy and intuitive way.
7
7
 
8
- The version of the OpenAPI document: 2.0.0 beta
8
+ The version of the OpenAPI document: 2.1.0 dev
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -17,27 +17,28 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
+ from typing_extensions import Annotated
23
+ from wandelbots_api_client.v2.models.collision_setup import CollisionSetup
24
+ from wandelbots_api_client.v2.models.limit_set import LimitSet
22
25
  from wandelbots_api_client.v2.models.payload import Payload
23
- from wandelbots_api_client.v2.models.planning_limits import PlanningLimits
24
26
  from wandelbots_api_client.v2.models.pose import Pose
25
- from wandelbots_api_client.v2.models.single_motion_group_collision_scene import SingleMotionGroupCollisionScene
26
27
  from typing import Optional, Set
27
28
  from typing_extensions import Self
28
29
 
29
- class RobotSetup(BaseModel):
30
+ class MotionGroupSetup(BaseModel):
30
31
  """
31
- RobotSetup
32
+ MotionGroupSetup
32
33
  """ # noqa: E501
33
- motion_group_model: StrictStr = Field(description="String identifiying the model of a motion group.")
34
- cycle_time: StrictInt = Field(description="[ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.")
35
- mounting: Optional[Pose] = Field(default=None, description="The offset from the world frame to the motion group base.")
36
- tcp_offset: Optional[Pose] = None
37
- global_limits: Optional[PlanningLimits] = None
38
- payload: Optional[Payload] = None
39
- collision_scenes: Optional[List[SingleMotionGroupCollisionScene]] = Field(default=None, description="Collision scenes to be respected by the motion planner. Each contains the single motion group which is planned for. Every scene is checked individually along the trajectory and independent of the other scenes. To respect the safety zones of the controller, fetch the safety zones, link and tool shapes from the controller and add one scene made up of those. ")
40
- __properties: ClassVar[List[str]] = ["motion_group_model", "cycle_time", "mounting", "tcp_offset", "global_limits", "payload", "collision_scenes"]
34
+ motion_group_model: StrictStr = Field(description="String identifiying the model of a motion group.")
35
+ cycle_time: Annotated[int, Field(le=2147483647, strict=True, ge=0)] = Field(description="[ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.")
36
+ mounting: Optional[Pose] = Field(default=None, description="The offset from the world frame to the motion group base.")
37
+ tcp_offset: Optional[Pose] = None
38
+ global_limits: Optional[LimitSet] = None
39
+ payload: Optional[Payload] = None
40
+ collision_setups: Optional[Dict[str, CollisionSetup]] = Field(default=None, description="Collision layers to be respected by the motion planner when planning for a single motion group. Each setup represents one layer, e.g., the safety zones and shapes or a fine grained tool and workpiece model. Layers are checked individually along the trajectory and independently of other layers. To respect the safety zones of the controller and check for collision: 1. Fetch the safety zones, link and tool shapes from the controller. 2. Add the fetched zones, links and tools to a layer. 3. Create other layers from your own 3D data as needed. 4. Plan trajectory. 5. The response highlights the layer in which a collision was detected by key. ")
41
+ __properties: ClassVar[List[str]] = ["motion_group_model", "cycle_time", "mounting", "tcp_offset", "global_limits", "payload", "collision_setups"]
41
42
 
42
43
  model_config = ConfigDict(
43
44
  populate_by_name=True,
@@ -61,7 +62,7 @@ class RobotSetup(BaseModel):
61
62
 
62
63
  @classmethod
63
64
  def from_json(cls, json_str: str) -> Optional[Self]:
64
- """Create an instance of RobotSetup from a JSON string"""
65
+ """Create an instance of MotionGroupSetup from a JSON string"""
65
66
  return cls.from_dict(json.loads(json_str))
66
67
 
67
68
  def to_dict(self) -> Dict[str, Any]:
@@ -94,21 +95,19 @@ class RobotSetup(BaseModel):
94
95
  # override the default output from pydantic by calling `to_dict()` of payload
95
96
  if self.payload:
96
97
  _dict['payload'] = self.payload.to_dict()
97
- # override the default output from pydantic by calling `to_dict()` of each item in collision_scenes (list)
98
- _items = []
99
- if self.collision_scenes:
100
- for _item in self.collision_scenes:
101
- # >>> Modified from https://github.com/OpenAPITools/openapi-generator/blob/v7.6.0/modules/openapi-generator/src/main/resources/python/model_generic.mustache
102
- # to not drop empty elements in lists
103
- if _item is not None:
104
- _items.append(_item.to_dict())
105
- # <<< End modification
106
- _dict['collision_scenes'] = _items
98
+ # override the default output from pydantic by calling `to_dict()` of each value in collision_setups (dict)
99
+ # >>> Modified from openapi template
100
+ if self.collision_setups:
101
+ _field_dict = {}
102
+ for _key, _value in self.collision_setups.items():
103
+ if self.collision_setups[_key]:
104
+ _field_dict[_key] = _value.to_dict()
105
+ _dict['collision_setups'] = _field_dict
107
106
  return _dict
108
107
 
109
108
  @classmethod
110
109
  def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
111
- """Create an instance of RobotSetup from a dict"""
110
+ """Create an instance of MotionGroupSetup from a dict"""
112
111
  if obj is None:
113
112
  return None
114
113
 
@@ -120,15 +119,14 @@ class RobotSetup(BaseModel):
120
119
  "cycle_time": obj.get("cycle_time"),
121
120
  "mounting": Pose.from_dict(obj["mounting"]) if obj.get("mounting") is not None else None,
122
121
  "tcp_offset": Pose.from_dict(obj["tcp_offset"]) if obj.get("tcp_offset") is not None else None,
123
- "global_limits": PlanningLimits.from_dict(obj["global_limits"]) if obj.get("global_limits") is not None else None,
122
+ "global_limits": LimitSet.from_dict(obj["global_limits"]) if obj.get("global_limits") is not None else None,
124
123
  "payload": Payload.from_dict(obj["payload"]) if obj.get("payload") is not None else None,
125
- "collision_scenes": [
126
- # >>> Modified from https://github.com/OpenAPITools/openapi-generator/blob/v7.6.0/modules/openapi-generator/src/main/resources/python/model_generic.mustache
127
- # to allow dicts in lists
128
- SingleMotionGroupCollisionScene.from_dict(_item) if hasattr(SingleMotionGroupCollisionScene, 'from_dict') else _item
129
- # <<< End modification
130
- for _item in obj["collision_scenes"]
131
- ] if obj.get("collision_scenes") is not None else None
124
+ "collision_setups": dict(
125
+ (_k, CollisionSetup.from_dict(_v))
126
+ for _k, _v in obj["collision_setups"].items()
127
+ )
128
+ if obj.get("collision_setups") is not None
129
+ else None
132
130
  })
133
131
  return _obj
134
132
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Wandelbots NOVA API
5
5
 
6
- Interact with robots in an easy and intuitive way. > **Note:** API version 2 is experimental and will experience functional changes.
6
+ Interact with robots in an easy and intuitive way.
7
7
 
8
- The version of the OpenAPI document: 2.0.0 beta
8
+ The version of the OpenAPI document: 2.1.0 dev
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -18,35 +18,35 @@ import re # noqa: F401
18
18
  import json
19
19
 
20
20
  from datetime import datetime
21
- from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
22
- from typing import Any, ClassVar, Dict, List, Optional
23
- from wandelbots_api_client.v2.models.joints import Joints
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictFloat, StrictInt, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional, Union
23
+ from typing_extensions import Annotated
24
+ from wandelbots_api_client.v2.models.execute import Execute
24
25
  from wandelbots_api_client.v2.models.motion_group_state_joint_limit_reached import MotionGroupStateJointLimitReached
25
- from wandelbots_api_client.v2.models.motion_vector import MotionVector
26
26
  from wandelbots_api_client.v2.models.pose import Pose
27
27
  from typing import Optional, Set
28
28
  from typing_extensions import Self
29
29
 
30
30
  class MotionGroupState(BaseModel):
31
31
  """
32
- MotionGroupState
32
+ Presents the current state of the motion group.
33
33
  """ # noqa: E501
34
- timestamp: Optional[datetime] = Field(default=None, description="Timestamp indicating when the represented information was received from the robot controller.")
35
- sequence_number: StrictInt = Field(description="Sequence number of the controller state. It starts with 0 upon establishing the connection with a physical controller. The sequence number is reset when the connection to the physical controller is closed and re-established. ")
36
- motion_group: StrictStr = Field(description="Identifier of the motion group.")
37
- controller: StrictStr = Field(description="Convenience: Identifier of the robot controller the motion group is attached to.")
38
- joint_position: Joints = Field(description="Current joint position of each joint in [rad] ")
39
- joint_limit_reached: MotionGroupStateJointLimitReached = Field(description="Indicates whether the joint is in a limit for all joints of the motion group. ")
40
- joint_velocity: Joints = Field(description="Current joint velocity of each joint in [rad/s] ")
41
- joint_torque: Optional[Joints] = Field(default=None, description="Current joint torque of each joint in [Nm]. Is only available if the robot controller supports it (e.g. available for UR Controllers). ")
42
- joint_current: Optional[Joints] = Field(default=None, description="Current Current at TCP in [A]. Is only available if the robot controller supports it, e.g. available for UR Controllers. ")
43
- flange_pose: Optional[Pose] = Field(default=None, description="Pose of the Flange (last point of the motion group before the endeffector starts). Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system that is specified in the request. For robot arms a flange pose is always returned, for positioners the flange might not be available, depending on the model. ")
44
- tcp: StrictStr = Field(description="Unique identifier addressing the TCP currently set. ")
45
- tcp_pose: Pose = Field(description="Pose of the TCP currently selected on the robot control panel. Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system that is specified in the request. ")
46
- tcp_velocity: MotionVector = Field(description="Current velocity at TCP in [mm/s]. If `tcp` is not specified, the velocity at the flange is returned. The velocity is relative to the response_coordinate_system specified in the request. ")
47
- coordinate_system: StrictStr = Field(description="Unique identifier addressing the reference coordinate system of the cartesian data. Default is the world coordinate system of corresponding controller. ")
48
- payload: Optional[StrictStr] = Field(default=None, description="Unique identifier addressing the Payload currently set. Only fetchable via GET endpoint, not available in WebSocket. ")
49
- __properties: ClassVar[List[str]] = ["timestamp", "sequence_number", "motion_group", "controller", "joint_position", "joint_limit_reached", "joint_velocity", "joint_torque", "joint_current", "flange_pose", "tcp", "tcp_pose", "tcp_velocity", "coordinate_system", "payload"]
34
+ timestamp: datetime = Field(description="Timestamp for when data was received from the robot controller.")
35
+ sequence_number: Annotated[int, Field(le=4294967295, strict=True, ge=0)] = Field(description="Sequence number of the controller state. It starts with 0 upon establishing the connection with a physical controller. The sequence number is reset when the connection to the physical controller is closed and re-established. ")
36
+ motion_group: StrictStr = Field(description="Identifier of the motion group.")
37
+ controller: StrictStr = Field(description="Convenience: Identifier of the robot controller the motion group is attached to.")
38
+ joint_position: List[Union[StrictFloat, StrictInt]] = Field(description="This structure describes a set of joint values, e.g., positions, currents, torques, of a motion group. Float precision is the default. ")
39
+ joint_limit_reached: MotionGroupStateJointLimitReached = Field(description="Indicates whether the joint is in a limit for all joints of the motion group. ")
40
+ joint_torque: Optional[List[Union[StrictFloat, StrictInt]]] = Field(default=None, description="This structure describes a set of joint values, e.g., positions, currents, torques, of a motion group. Float precision is the default. ")
41
+ joint_current: Optional[List[Union[StrictFloat, StrictInt]]] = Field(default=None, description="This structure describes a set of joint values, e.g., positions, currents, torques, of a motion group. Float precision is the default. ")
42
+ flange_pose: Optional[Pose] = Field(default=None, description="Pose of the flange. Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system specified in the request. For robot arms a flange pose is always returned, for positioners the flange might not be available, depending on the model. ")
43
+ tcp: Optional[StrictStr] = Field(default=None, description="Unique identifier addressing the active TCP. Might not be returned for positioners as some do not support TCPs, depending on the model. ")
44
+ tcp_pose: Optional[Pose] = Field(default=None, description="Pose of the TCP selected on the robot control panel. Positions are in [mm]. Oriantations are in [rad]. The pose is relative to the response_coordinate_system specified in the request. Might not be returned for positioners as some do not support TCPs, depending on the model. ")
45
+ coordinate_system: Optional[StrictStr] = Field(default=None, description="Unique identifier addressing the reference coordinate system of the cartesian data. Might not be returned for positioners as some do not support TCPs, depending on the model. Default: world coordinate system of corresponding controller. ")
46
+ payload: Optional[StrictStr] = Field(default=None, description="Unique identifier addressing the active payload. Only fetchable via GET endpoint, not available in WebSocket. ")
47
+ standstill: StrictBool = Field(description="Indicates whether the motion group is in standstill. Convenience: Signals that NOVA treats measured joint velocities as 0. ")
48
+ execute: Optional[Execute] = Field(default=None, description="Data that was commanded to the motion group. Includes additional data on NOVA's execution components for executing trajectories and jogging. This is a convenience field to indicate the last command sent to the motion group. It is not available in all cases, e.g., if the motion group is not moved by NOVA. ")
49
+ __properties: ClassVar[List[str]] = ["timestamp", "sequence_number", "motion_group", "controller", "joint_position", "joint_limit_reached", "joint_torque", "joint_current", "flange_pose", "tcp", "tcp_pose", "coordinate_system", "payload", "standstill", "execute"]
50
50
 
51
51
  model_config = ConfigDict(
52
52
  populate_by_name=True,
@@ -91,30 +91,18 @@ class MotionGroupState(BaseModel):
91
91
  exclude=excluded_fields,
92
92
  exclude_none=True,
93
93
  )
94
- # override the default output from pydantic by calling `to_dict()` of joint_position
95
- if self.joint_position:
96
- _dict['joint_position'] = self.joint_position.to_dict()
97
94
  # override the default output from pydantic by calling `to_dict()` of joint_limit_reached
98
95
  if self.joint_limit_reached:
99
96
  _dict['joint_limit_reached'] = self.joint_limit_reached.to_dict()
100
- # override the default output from pydantic by calling `to_dict()` of joint_velocity
101
- if self.joint_velocity:
102
- _dict['joint_velocity'] = self.joint_velocity.to_dict()
103
- # override the default output from pydantic by calling `to_dict()` of joint_torque
104
- if self.joint_torque:
105
- _dict['joint_torque'] = self.joint_torque.to_dict()
106
- # override the default output from pydantic by calling `to_dict()` of joint_current
107
- if self.joint_current:
108
- _dict['joint_current'] = self.joint_current.to_dict()
109
97
  # override the default output from pydantic by calling `to_dict()` of flange_pose
110
98
  if self.flange_pose:
111
99
  _dict['flange_pose'] = self.flange_pose.to_dict()
112
100
  # override the default output from pydantic by calling `to_dict()` of tcp_pose
113
101
  if self.tcp_pose:
114
102
  _dict['tcp_pose'] = self.tcp_pose.to_dict()
115
- # override the default output from pydantic by calling `to_dict()` of tcp_velocity
116
- if self.tcp_velocity:
117
- _dict['tcp_velocity'] = self.tcp_velocity.to_dict()
103
+ # override the default output from pydantic by calling `to_dict()` of execute
104
+ if self.execute:
105
+ _dict['execute'] = self.execute.to_dict()
118
106
  return _dict
119
107
 
120
108
  @classmethod
@@ -131,17 +119,17 @@ class MotionGroupState(BaseModel):
131
119
  "sequence_number": obj.get("sequence_number"),
132
120
  "motion_group": obj.get("motion_group"),
133
121
  "controller": obj.get("controller"),
134
- "joint_position": Joints.from_dict(obj["joint_position"]) if obj.get("joint_position") is not None else None,
122
+ "joint_position": obj.get("joint_position"),
135
123
  "joint_limit_reached": MotionGroupStateJointLimitReached.from_dict(obj["joint_limit_reached"]) if obj.get("joint_limit_reached") is not None else None,
136
- "joint_velocity": Joints.from_dict(obj["joint_velocity"]) if obj.get("joint_velocity") is not None else None,
137
- "joint_torque": Joints.from_dict(obj["joint_torque"]) if obj.get("joint_torque") is not None else None,
138
- "joint_current": Joints.from_dict(obj["joint_current"]) if obj.get("joint_current") is not None else None,
124
+ "joint_torque": obj.get("joint_torque"),
125
+ "joint_current": obj.get("joint_current"),
139
126
  "flange_pose": Pose.from_dict(obj["flange_pose"]) if obj.get("flange_pose") is not None else None,
140
127
  "tcp": obj.get("tcp"),
141
128
  "tcp_pose": Pose.from_dict(obj["tcp_pose"]) if obj.get("tcp_pose") is not None else None,
142
- "tcp_velocity": MotionVector.from_dict(obj["tcp_velocity"]) if obj.get("tcp_velocity") is not None else None,
143
129
  "coordinate_system": obj.get("coordinate_system"),
144
- "payload": obj.get("payload")
130
+ "payload": obj.get("payload"),
131
+ "standstill": obj.get("standstill"),
132
+ "execute": Execute.from_dict(obj["execute"]) if obj.get("execute") is not None else None
145
133
  })
146
134
  return _obj
147
135
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Wandelbots NOVA API
5
5
 
6
- Interact with robots in an easy and intuitive way. > **Note:** API version 2 is experimental and will experience functional changes.
6
+ Interact with robots in an easy and intuitive way.
7
7
 
8
- The version of the OpenAPI document: 2.0.0 beta
8
+ The version of the OpenAPI document: 2.1.0 dev
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -26,7 +26,7 @@ class MotionGroupStateJointLimitReached(BaseModel):
26
26
  """
27
27
  Indicates which joint of the motion group is in a limit. If a joint is in its limit, only this joint can be moved. Movements that affect any other joints are not executed.
28
28
  """ # noqa: E501
29
- limit_reached: List[StrictBool] = Field(description="If true, operational (soft) jointLimit is reached for specific joint.")
29
+ limit_reached: List[StrictBool] = Field(description="If true, operational (soft) jointLimit is reached for specific joint.")
30
30
  __properties: ClassVar[List[str]] = ["limit_reached"]
31
31
 
32
32
  model_config = ConfigDict(
@@ -0,0 +1,100 @@
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.1.0 dev
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
21
+ from typing import Any, ClassVar, Dict, List
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
24
+
25
+ class MovementErrorResponse(BaseModel):
26
+ """
27
+ Error message in case an error occurs during movement execution.
28
+ """ # noqa: E501
29
+ message: StrictStr = Field(description="Detailed error message describing the issue encountered during movement execution.")
30
+ kind: str = "MOTION_ERROR"
31
+ __properties: ClassVar[List[str]] = ["message", "kind"]
32
+
33
+ @field_validator('kind')
34
+ def kind_validate_enum(cls, value):
35
+ """Validates the enum"""
36
+ if value not in set(['MOTION_ERROR']):
37
+ raise ValueError("must be one of enum values ('MOTION_ERROR')")
38
+ return value
39
+
40
+ model_config = ConfigDict(
41
+ populate_by_name=True,
42
+ validate_assignment=True,
43
+ protected_namespaces=(),
44
+ )
45
+
46
+
47
+ def to_str(self) -> str:
48
+ """Returns the string representation of the model using alias"""
49
+ return pprint.pformat(self.model_dump(by_alias=True, exclude_none=True))
50
+
51
+ def to_json(self) -> str:
52
+ """
53
+ Returns the JSON representation of the model using alias
54
+
55
+ Do not use pydantic v2 .model_dump_json(by_alias=True, exclude_unset=True) here!
56
+ It is unable to resolve nested types generated by openapi-generator.
57
+ """
58
+ return json.dumps(self.to_dict())
59
+
60
+ @classmethod
61
+ def from_json(cls, json_str: str) -> Optional[Self]:
62
+ """Create an instance of MovementErrorResponse from a JSON string"""
63
+ return cls.from_dict(json.loads(json_str))
64
+
65
+ def to_dict(self) -> Dict[str, Any]:
66
+ """Return the dictionary representation of the model using alias.
67
+
68
+ This has the following differences from calling pydantic's
69
+ `self.model_dump(by_alias=True)`:
70
+
71
+ * `None` is only added to the output dict for nullable fields that
72
+ were set at model initialization. Other fields with value `None`
73
+ are ignored.
74
+ """
75
+ excluded_fields: Set[str] = set([
76
+ ])
77
+
78
+ _dict = self.model_dump(
79
+ by_alias=True,
80
+ exclude=excluded_fields,
81
+ exclude_none=True,
82
+ )
83
+ return _dict
84
+
85
+ @classmethod
86
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
87
+ """Create an instance of MovementErrorResponse from a dict"""
88
+ if obj is None:
89
+ return None
90
+
91
+ if not isinstance(obj, dict):
92
+ return cls.model_validate(obj)
93
+
94
+ _obj = cls.model_validate({
95
+ "message": obj.get("message"),
96
+ "kind": obj.get("kind")
97
+ })
98
+ return _obj
99
+
100
+