cyberdesk 1.9.0__tar.gz → 1.10.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of cyberdesk might be problematic. Click here for more details.
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/PKG-INFO +1 -1
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/cyberdesk/__init__.py +3 -1
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/cyberdesk/client.py +174 -5
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/cyberdesk.egg-info/PKG-INFO +1 -1
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/cyberdesk.egg-info/SOURCES.txt +2 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/run_attachments/download_run_attachment_v1_run_attachments_attachment_id_download_get.py +4 -4
- cyberdesk-1.10.0/openapi_client/cyberdesk_cloud_client/api/run_attachments/get_run_attachment_download_url_v1_run_attachments_attachment_id_download_url_get.py +209 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/__init__.py +2 -0
- cyberdesk-1.10.0/openapi_client/cyberdesk_cloud_client/models/run_attachment_download_url_response.py +68 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/pyproject.toml +1 -1
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/LICENSE +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/README.md +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/cyberdesk.egg-info/dependency_links.txt +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/cyberdesk.egg-info/requires.txt +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/cyberdesk.egg-info/top_level.txt +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/fs_list_v1_computer_machine_id_fs_list_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/fs_read_v1_computer_machine_id_fs_read_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/fs_write_v1_computer_machine_id_fs_write_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/get_display_dimensions_v1_computer_machine_id_display_dimensions_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/get_mouse_position_v1_computer_machine_id_input_mouse_position_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/get_screenshot_v1_computer_machine_id_display_screenshot_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/keyboard_key_v1_computer_machine_id_input_keyboard_key_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/keyboard_type_v1_computer_machine_id_input_keyboard_type_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/mouse_click_v1_computer_machine_id_input_mouse_click_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/mouse_move_v1_computer_machine_id_input_mouse_move_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/powershell_exec_v1_computer_machine_id_shell_powershell_exec_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/powershell_session_v1_computer_machine_id_shell_powershell_session_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/connections/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/connections/create_connection_v1_connections_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/connections/delete_connection_v1_connections_connection_id_delete.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/connections/get_connection_v1_connections_connection_id_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/connections/list_connections_v1_connections_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/connections/update_connection_v1_connections_connection_id_patch.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/default/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/default/root_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/health/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/health/database_health_check_v1_health_db_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/health/health_check_v1_health_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/machines/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/machines/create_machine_v1_machines_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/machines/delete_machine_v1_machines_machine_id_delete.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/machines/get_machine_v1_machines_machine_id_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/machines/list_machines_v1_machines_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/machines/update_machine_v1_machines_machine_id_patch.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/request_logs/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/request_logs/create_request_log_v1_request_logs_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/request_logs/delete_request_log_v1_request_logs_log_id_delete.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/request_logs/get_request_log_v1_request_logs_log_id_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/request_logs/list_request_logs_v1_request_logs_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/request_logs/update_request_log_v1_request_logs_log_id_patch.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/run_attachments/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/run_attachments/create_run_attachment_v1_run_attachments_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/run_attachments/delete_run_attachment_v1_run_attachments_attachment_id_delete.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/run_attachments/get_run_attachment_v1_run_attachments_attachment_id_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/run_attachments/list_run_attachments_v1_run_attachments_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/run_attachments/update_run_attachment_v1_run_attachments_attachment_id_put.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/runs/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/runs/create_run_v1_runs_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/runs/delete_run_v1_runs_run_id_delete.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/runs/get_run_v1_runs_run_id_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/runs/list_runs_v1_runs_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/runs/update_run_v1_runs_run_id_patch.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/test/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/test/dummy_test_endpoint_v1_test_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/trajectories/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/trajectories/create_trajectory_v1_trajectories_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/trajectories/delete_trajectory_v1_trajectories_trajectory_id_delete.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/trajectories/get_latest_trajectory_for_workflow_v1_workflows_workflow_id_latest_trajectory_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/trajectories/get_trajectory_v1_trajectories_trajectory_id_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/trajectories/list_trajectories_v1_trajectories_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/trajectories/update_trajectory_v1_trajectories_trajectory_id_patch.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/workflows/__init__.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/workflows/create_workflow_v1_workflows_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/workflows/delete_workflow_v1_workflows_workflow_id_delete.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/workflows/get_workflow_v1_workflows_workflow_id_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/workflows/get_workflow_versions_v1_workflows_workflow_id_versions_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/workflows/list_workflows_v1_workflows_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/workflows/update_workflow_v1_workflows_workflow_id_patch.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/client.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/errors.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/attachment_type.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/connection_create.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/connection_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/connection_status.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/database_health_check_v1_health_db_get_response_database_health_check_v1_health_db_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/display_dimensions.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/dummy_test_endpoint_v1_test_post_response_dummy_test_endpoint_v1_test_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/file_input.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/file_write_request.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/fs_list_v1_computer_machine_id_fs_list_get_response_fs_list_v1_computer_machine_id_fs_list_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/fs_read_v1_computer_machine_id_fs_read_get_response_fs_read_v1_computer_machine_id_fs_read_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/fs_write_v1_computer_machine_id_fs_write_post_response_fs_write_v1_computer_machine_id_fs_write_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/get_workflow_versions_v1_workflows_workflow_id_versions_get_response_200_item.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/health_check_v1_health_get_response_health_check_v1_health_get.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/http_validation_error.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/keyboard_key_request.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/keyboard_type_request.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/machine_create.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/machine_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/machine_status.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/machine_update.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/mouse_click_request.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/mouse_move_request.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/mouse_position.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/paginated_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/paginated_response_connection_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/paginated_response_machine_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/paginated_response_run_attachment_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/paginated_response_run_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/paginated_response_trajectory_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/paginated_response_workflow_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/power_shell_exec_request.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/power_shell_session_request.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/powershell_exec_v1_computer_machine_id_shell_powershell_exec_post_response_powershell_exec_v1_computer_machine_id_shell_powershell_exec_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/powershell_session_v1_computer_machine_id_shell_powershell_session_post_response_powershell_session_v1_computer_machine_id_shell_powershell_session_post.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/request_log_create.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/request_log_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/request_log_update.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_attachment_create.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_attachment_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_attachment_update.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_create.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_create_input_values_type_0.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_response_input_values_type_0.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_response_output_data_type_0.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_response_run_message_history_type_0_item.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_status.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_update.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_update_input_values_type_0.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_update_output_data_type_0.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_update_run_message_history_type_0_item.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_create.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_create_dimensions.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_create_original_input_values_type_0.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_create_trajectory_data_item.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_response_dimensions.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_response_original_input_values_type_0.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_response_trajectory_data_item.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_update.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/trajectory_update_trajectory_data_type_0_item.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/validation_error.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/workflow_create.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/workflow_response.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/workflow_response_old_versions_type_0_item.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/workflow_update.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/py.typed +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/types.py +0 -0
- {cyberdesk-1.9.0 → cyberdesk-1.10.0}/setup.cfg +0 -0
|
@@ -23,10 +23,11 @@ from .client import (
|
|
|
23
23
|
RunAttachmentCreate,
|
|
24
24
|
RunAttachmentUpdate,
|
|
25
25
|
RunAttachmentResponse,
|
|
26
|
+
RunAttachmentDownloadUrlResponse,
|
|
26
27
|
AttachmentType,
|
|
27
28
|
)
|
|
28
29
|
|
|
29
|
-
__version__ = "1.
|
|
30
|
+
__version__ = "1.10.0"
|
|
30
31
|
|
|
31
32
|
__all__ = [
|
|
32
33
|
"CyberdeskClient",
|
|
@@ -51,5 +52,6 @@ __all__ = [
|
|
|
51
52
|
"RunAttachmentCreate",
|
|
52
53
|
"RunAttachmentUpdate",
|
|
53
54
|
"RunAttachmentResponse",
|
|
55
|
+
"RunAttachmentDownloadUrlResponse",
|
|
54
56
|
"AttachmentType",
|
|
55
57
|
]
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"""Cyberdesk Python SDK Client."""
|
|
2
2
|
from typing import Optional, Dict, Any, Union
|
|
3
3
|
from uuid import UUID
|
|
4
|
+
from pathlib import Path
|
|
4
5
|
import httpx
|
|
5
6
|
from dataclasses import dataclass
|
|
6
7
|
|
|
@@ -45,6 +46,7 @@ from openapi_client.cyberdesk_cloud_client.api.run_attachments import (
|
|
|
45
46
|
create_run_attachment_v1_run_attachments_post,
|
|
46
47
|
get_run_attachment_v1_run_attachments_attachment_id_get,
|
|
47
48
|
download_run_attachment_v1_run_attachments_attachment_id_download_get,
|
|
49
|
+
get_run_attachment_download_url_v1_run_attachments_attachment_id_download_url_get,
|
|
48
50
|
update_run_attachment_v1_run_attachments_attachment_id_put,
|
|
49
51
|
delete_run_attachment_v1_run_attachments_attachment_id_delete,
|
|
50
52
|
)
|
|
@@ -72,6 +74,7 @@ from openapi_client.cyberdesk_cloud_client.models import (
|
|
|
72
74
|
RunAttachmentCreate,
|
|
73
75
|
RunAttachmentUpdate,
|
|
74
76
|
RunAttachmentResponse,
|
|
77
|
+
RunAttachmentDownloadUrlResponse,
|
|
75
78
|
AttachmentType,
|
|
76
79
|
PaginatedResponseMachineResponse,
|
|
77
80
|
PaginatedResponseWorkflowResponse,
|
|
@@ -105,6 +108,7 @@ __all__ = [
|
|
|
105
108
|
"RunAttachmentCreate",
|
|
106
109
|
"RunAttachmentUpdate",
|
|
107
110
|
"RunAttachmentResponse",
|
|
111
|
+
"RunAttachmentDownloadUrlResponse",
|
|
108
112
|
"AttachmentType",
|
|
109
113
|
]
|
|
110
114
|
|
|
@@ -847,14 +851,75 @@ class RunAttachmentsAPI:
|
|
|
847
851
|
except Exception as e:
|
|
848
852
|
return ApiResponse(error=e)
|
|
849
853
|
|
|
854
|
+
async def get_download_url(
|
|
855
|
+
self,
|
|
856
|
+
attachment_id: str,
|
|
857
|
+
expires_in: Optional[int] = None
|
|
858
|
+
) -> ApiResponse:
|
|
859
|
+
"""Get a signed download URL for a run attachment.
|
|
860
|
+
|
|
861
|
+
The returned URL will trigger an automatic download when accessed in a browser.
|
|
862
|
+
|
|
863
|
+
Args:
|
|
864
|
+
attachment_id: The ID of the attachment
|
|
865
|
+
expires_in: URL expiration time in seconds (10-3600). Default: 300 (5 minutes)
|
|
866
|
+
|
|
867
|
+
Returns:
|
|
868
|
+
ApiResponse with RunAttachmentDownloadUrlResponse containing:
|
|
869
|
+
- url: The signed download URL
|
|
870
|
+
- expires_in: The expiration time in seconds
|
|
871
|
+
"""
|
|
872
|
+
try:
|
|
873
|
+
response = await get_run_attachment_download_url_v1_run_attachments_attachment_id_download_url_get.asyncio(
|
|
874
|
+
client=self.client,
|
|
875
|
+
attachment_id=_to_uuid(attachment_id),
|
|
876
|
+
expires_in=_to_unset_or_value(expires_in)
|
|
877
|
+
)
|
|
878
|
+
return ApiResponse(data=response)
|
|
879
|
+
except Exception as e:
|
|
880
|
+
return ApiResponse(error=e)
|
|
881
|
+
|
|
882
|
+
def get_download_url_sync(
|
|
883
|
+
self,
|
|
884
|
+
attachment_id: str,
|
|
885
|
+
expires_in: Optional[int] = None
|
|
886
|
+
) -> ApiResponse:
|
|
887
|
+
"""Get a signed download URL for a run attachment (synchronous).
|
|
888
|
+
|
|
889
|
+
The returned URL will trigger an automatic download when accessed in a browser.
|
|
890
|
+
|
|
891
|
+
Args:
|
|
892
|
+
attachment_id: The ID of the attachment
|
|
893
|
+
expires_in: URL expiration time in seconds (10-3600). Default: 300 (5 minutes)
|
|
894
|
+
|
|
895
|
+
Returns:
|
|
896
|
+
ApiResponse with RunAttachmentDownloadUrlResponse containing:
|
|
897
|
+
- url: The signed download URL
|
|
898
|
+
- expires_in: The expiration time in seconds
|
|
899
|
+
"""
|
|
900
|
+
try:
|
|
901
|
+
response = get_run_attachment_download_url_v1_run_attachments_attachment_id_download_url_get.sync(
|
|
902
|
+
client=self.client,
|
|
903
|
+
attachment_id=_to_uuid(attachment_id),
|
|
904
|
+
expires_in=_to_unset_or_value(expires_in)
|
|
905
|
+
)
|
|
906
|
+
return ApiResponse(data=response)
|
|
907
|
+
except Exception as e:
|
|
908
|
+
return ApiResponse(error=e)
|
|
909
|
+
|
|
850
910
|
async def download(self, attachment_id: str) -> ApiResponse:
|
|
851
|
-
"""Download a run attachment file.
|
|
911
|
+
"""Download a run attachment file directly.
|
|
912
|
+
|
|
913
|
+
This method returns the raw file content as bytes. For a download URL instead,
|
|
914
|
+
use get_download_url().
|
|
915
|
+
|
|
916
|
+
Args:
|
|
917
|
+
attachment_id: The ID of the attachment to download
|
|
852
918
|
|
|
853
919
|
Returns:
|
|
854
|
-
ApiResponse with data containing the file bytes
|
|
920
|
+
ApiResponse with data containing the raw file bytes
|
|
855
921
|
"""
|
|
856
922
|
try:
|
|
857
|
-
# The download endpoint typically returns binary data or a redirect URL
|
|
858
923
|
response = await download_run_attachment_v1_run_attachments_attachment_id_download_get.asyncio(
|
|
859
924
|
client=self.client,
|
|
860
925
|
attachment_id=_to_uuid(attachment_id)
|
|
@@ -864,10 +929,16 @@ class RunAttachmentsAPI:
|
|
|
864
929
|
return ApiResponse(error=e)
|
|
865
930
|
|
|
866
931
|
def download_sync(self, attachment_id: str) -> ApiResponse:
|
|
867
|
-
"""Download a run attachment file (synchronous).
|
|
932
|
+
"""Download a run attachment file directly (synchronous).
|
|
933
|
+
|
|
934
|
+
This method returns the raw file content as bytes. For a download URL instead,
|
|
935
|
+
use get_download_url_sync().
|
|
936
|
+
|
|
937
|
+
Args:
|
|
938
|
+
attachment_id: The ID of the attachment to download
|
|
868
939
|
|
|
869
940
|
Returns:
|
|
870
|
-
ApiResponse with data containing the file bytes
|
|
941
|
+
ApiResponse with data containing the raw file bytes
|
|
871
942
|
"""
|
|
872
943
|
try:
|
|
873
944
|
response = download_run_attachment_v1_run_attachments_attachment_id_download_get.sync(
|
|
@@ -923,6 +994,104 @@ class RunAttachmentsAPI:
|
|
|
923
994
|
return ApiResponse(data={"success": True})
|
|
924
995
|
except Exception as e:
|
|
925
996
|
return ApiResponse(error=e)
|
|
997
|
+
|
|
998
|
+
async def save_to_file(
|
|
999
|
+
self,
|
|
1000
|
+
attachment_id: str,
|
|
1001
|
+
output_path: Optional[Union[str, Path]] = None,
|
|
1002
|
+
use_original_filename: bool = True
|
|
1003
|
+
) -> ApiResponse:
|
|
1004
|
+
"""Download and save a run attachment to a file.
|
|
1005
|
+
|
|
1006
|
+
This is a convenience method that combines getting attachment info
|
|
1007
|
+
and downloading the file content.
|
|
1008
|
+
|
|
1009
|
+
Args:
|
|
1010
|
+
attachment_id: The ID of the attachment to download
|
|
1011
|
+
output_path: Path where to save the file. If None and use_original_filename
|
|
1012
|
+
is True, saves to current directory with original filename.
|
|
1013
|
+
use_original_filename: If True and output_path is a directory, uses the
|
|
1014
|
+
attachment's original filename.
|
|
1015
|
+
|
|
1016
|
+
Returns:
|
|
1017
|
+
ApiResponse with data containing the saved file path
|
|
1018
|
+
"""
|
|
1019
|
+
try:
|
|
1020
|
+
# Get attachment info for filename
|
|
1021
|
+
info_response = await self.get(attachment_id)
|
|
1022
|
+
if info_response.error:
|
|
1023
|
+
return info_response
|
|
1024
|
+
|
|
1025
|
+
attachment_info = info_response.data
|
|
1026
|
+
|
|
1027
|
+
# Download the file content
|
|
1028
|
+
download_response = await self.download(attachment_id)
|
|
1029
|
+
if download_response.error:
|
|
1030
|
+
return download_response
|
|
1031
|
+
|
|
1032
|
+
# Determine output path
|
|
1033
|
+
if output_path is None:
|
|
1034
|
+
output_path = Path(attachment_info.filename)
|
|
1035
|
+
else:
|
|
1036
|
+
output_path = Path(output_path)
|
|
1037
|
+
if output_path.is_dir() and use_original_filename:
|
|
1038
|
+
output_path = output_path / attachment_info.filename
|
|
1039
|
+
|
|
1040
|
+
# Save to file
|
|
1041
|
+
output_path.write_bytes(download_response.data)
|
|
1042
|
+
|
|
1043
|
+
return ApiResponse(data={"path": str(output_path), "size": len(download_response.data)})
|
|
1044
|
+
except Exception as e:
|
|
1045
|
+
return ApiResponse(error=e)
|
|
1046
|
+
|
|
1047
|
+
def save_to_file_sync(
|
|
1048
|
+
self,
|
|
1049
|
+
attachment_id: str,
|
|
1050
|
+
output_path: Optional[Union[str, Path]] = None,
|
|
1051
|
+
use_original_filename: bool = True
|
|
1052
|
+
) -> ApiResponse:
|
|
1053
|
+
"""Download and save a run attachment to a file (synchronous).
|
|
1054
|
+
|
|
1055
|
+
This is a convenience method that combines getting attachment info
|
|
1056
|
+
and downloading the file content.
|
|
1057
|
+
|
|
1058
|
+
Args:
|
|
1059
|
+
attachment_id: The ID of the attachment to download
|
|
1060
|
+
output_path: Path where to save the file. If None and use_original_filename
|
|
1061
|
+
is True, saves to current directory with original filename.
|
|
1062
|
+
use_original_filename: If True and output_path is a directory, uses the
|
|
1063
|
+
attachment's original filename.
|
|
1064
|
+
|
|
1065
|
+
Returns:
|
|
1066
|
+
ApiResponse with data containing the saved file path
|
|
1067
|
+
"""
|
|
1068
|
+
try:
|
|
1069
|
+
# Get attachment info for filename
|
|
1070
|
+
info_response = self.get_sync(attachment_id)
|
|
1071
|
+
if info_response.error:
|
|
1072
|
+
return info_response
|
|
1073
|
+
|
|
1074
|
+
attachment_info = info_response.data
|
|
1075
|
+
|
|
1076
|
+
# Download the file content
|
|
1077
|
+
download_response = self.download_sync(attachment_id)
|
|
1078
|
+
if download_response.error:
|
|
1079
|
+
return download_response
|
|
1080
|
+
|
|
1081
|
+
# Determine output path
|
|
1082
|
+
if output_path is None:
|
|
1083
|
+
output_path = Path(attachment_info.filename)
|
|
1084
|
+
else:
|
|
1085
|
+
output_path = Path(output_path)
|
|
1086
|
+
if output_path.is_dir() and use_original_filename:
|
|
1087
|
+
output_path = output_path / attachment_info.filename
|
|
1088
|
+
|
|
1089
|
+
# Save to file
|
|
1090
|
+
output_path.write_bytes(download_response.data)
|
|
1091
|
+
|
|
1092
|
+
return ApiResponse(data={"path": str(output_path), "size": len(download_response.data)})
|
|
1093
|
+
except Exception as e:
|
|
1094
|
+
return ApiResponse(error=e)
|
|
926
1095
|
|
|
927
1096
|
|
|
928
1097
|
class CyberdeskClient:
|
|
@@ -54,6 +54,7 @@ openapi_client/cyberdesk_cloud_client/api/run_attachments/__init__.py
|
|
|
54
54
|
openapi_client/cyberdesk_cloud_client/api/run_attachments/create_run_attachment_v1_run_attachments_post.py
|
|
55
55
|
openapi_client/cyberdesk_cloud_client/api/run_attachments/delete_run_attachment_v1_run_attachments_attachment_id_delete.py
|
|
56
56
|
openapi_client/cyberdesk_cloud_client/api/run_attachments/download_run_attachment_v1_run_attachments_attachment_id_download_get.py
|
|
57
|
+
openapi_client/cyberdesk_cloud_client/api/run_attachments/get_run_attachment_download_url_v1_run_attachments_attachment_id_download_url_get.py
|
|
57
58
|
openapi_client/cyberdesk_cloud_client/api/run_attachments/get_run_attachment_v1_run_attachments_attachment_id_get.py
|
|
58
59
|
openapi_client/cyberdesk_cloud_client/api/run_attachments/list_run_attachments_v1_run_attachments_get.py
|
|
59
60
|
openapi_client/cyberdesk_cloud_client/api/run_attachments/update_run_attachment_v1_run_attachments_attachment_id_put.py
|
|
@@ -119,6 +120,7 @@ openapi_client/cyberdesk_cloud_client/models/request_log_create.py
|
|
|
119
120
|
openapi_client/cyberdesk_cloud_client/models/request_log_response.py
|
|
120
121
|
openapi_client/cyberdesk_cloud_client/models/request_log_update.py
|
|
121
122
|
openapi_client/cyberdesk_cloud_client/models/run_attachment_create.py
|
|
123
|
+
openapi_client/cyberdesk_cloud_client/models/run_attachment_download_url_response.py
|
|
122
124
|
openapi_client/cyberdesk_cloud_client/models/run_attachment_response.py
|
|
123
125
|
openapi_client/cyberdesk_cloud_client/models/run_attachment_update.py
|
|
124
126
|
openapi_client/cyberdesk_cloud_client/models/run_create.py
|
|
@@ -57,7 +57,7 @@ def sync_detailed(
|
|
|
57
57
|
|
|
58
58
|
Download a run attachment file.
|
|
59
59
|
|
|
60
|
-
Returns the file content as a streaming response.
|
|
60
|
+
Returns the raw file content as a streaming response.
|
|
61
61
|
|
|
62
62
|
Args:
|
|
63
63
|
attachment_id (UUID):
|
|
@@ -90,7 +90,7 @@ def sync(
|
|
|
90
90
|
|
|
91
91
|
Download a run attachment file.
|
|
92
92
|
|
|
93
|
-
Returns the file content as a streaming response.
|
|
93
|
+
Returns the raw file content as a streaming response.
|
|
94
94
|
|
|
95
95
|
Args:
|
|
96
96
|
attachment_id (UUID):
|
|
@@ -118,7 +118,7 @@ async def asyncio_detailed(
|
|
|
118
118
|
|
|
119
119
|
Download a run attachment file.
|
|
120
120
|
|
|
121
|
-
Returns the file content as a streaming response.
|
|
121
|
+
Returns the raw file content as a streaming response.
|
|
122
122
|
|
|
123
123
|
Args:
|
|
124
124
|
attachment_id (UUID):
|
|
@@ -149,7 +149,7 @@ async def asyncio(
|
|
|
149
149
|
|
|
150
150
|
Download a run attachment file.
|
|
151
151
|
|
|
152
|
-
Returns the file content as a streaming response.
|
|
152
|
+
Returns the raw file content as a streaming response.
|
|
153
153
|
|
|
154
154
|
Args:
|
|
155
155
|
attachment_id (UUID):
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
from http import HTTPStatus
|
|
2
|
+
from typing import Any, Optional, Union
|
|
3
|
+
from uuid import UUID
|
|
4
|
+
|
|
5
|
+
import httpx
|
|
6
|
+
|
|
7
|
+
from ... import errors
|
|
8
|
+
from ...client import AuthenticatedClient, Client
|
|
9
|
+
from ...models.http_validation_error import HTTPValidationError
|
|
10
|
+
from ...models.run_attachment_download_url_response import RunAttachmentDownloadUrlResponse
|
|
11
|
+
from ...types import UNSET, Response, Unset
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
def _get_kwargs(
|
|
15
|
+
attachment_id: UUID,
|
|
16
|
+
*,
|
|
17
|
+
expires_in: Union[Unset, int] = 300,
|
|
18
|
+
) -> dict[str, Any]:
|
|
19
|
+
params: dict[str, Any] = {}
|
|
20
|
+
|
|
21
|
+
params["expires_in"] = expires_in
|
|
22
|
+
|
|
23
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
|
24
|
+
|
|
25
|
+
_kwargs: dict[str, Any] = {
|
|
26
|
+
"method": "get",
|
|
27
|
+
"url": f"/v1/run-attachments/{attachment_id}/download-url",
|
|
28
|
+
"params": params,
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return _kwargs
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def _parse_response(
|
|
35
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
36
|
+
) -> Optional[Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]]:
|
|
37
|
+
if response.status_code == 200:
|
|
38
|
+
response_200 = RunAttachmentDownloadUrlResponse.from_dict(response.json())
|
|
39
|
+
|
|
40
|
+
return response_200
|
|
41
|
+
if response.status_code == 422:
|
|
42
|
+
response_422 = HTTPValidationError.from_dict(response.json())
|
|
43
|
+
|
|
44
|
+
return response_422
|
|
45
|
+
if client.raise_on_unexpected_status:
|
|
46
|
+
raise errors.UnexpectedStatus(response.status_code, response.content)
|
|
47
|
+
else:
|
|
48
|
+
return None
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def _build_response(
|
|
52
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
53
|
+
) -> Response[Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]]:
|
|
54
|
+
return Response(
|
|
55
|
+
status_code=HTTPStatus(response.status_code),
|
|
56
|
+
content=response.content,
|
|
57
|
+
headers=response.headers,
|
|
58
|
+
parsed=_parse_response(client=client, response=response),
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
def sync_detailed(
|
|
63
|
+
attachment_id: UUID,
|
|
64
|
+
*,
|
|
65
|
+
client: AuthenticatedClient,
|
|
66
|
+
expires_in: Union[Unset, int] = 300,
|
|
67
|
+
) -> Response[Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]]:
|
|
68
|
+
"""Get Run Attachment Download Url
|
|
69
|
+
|
|
70
|
+
Get a signed download URL for a run attachment file.
|
|
71
|
+
|
|
72
|
+
Returns a signed URL that triggers automatic download when accessed.
|
|
73
|
+
|
|
74
|
+
Args:
|
|
75
|
+
attachment_id: The ID of the attachment to download
|
|
76
|
+
expires_in: URL expiration time in seconds (10-3600). Default: 300 (5 minutes)
|
|
77
|
+
|
|
78
|
+
Args:
|
|
79
|
+
attachment_id (UUID):
|
|
80
|
+
expires_in (Union[Unset, int]): URL expiration time in seconds (10-3600) Default: 300.
|
|
81
|
+
|
|
82
|
+
Raises:
|
|
83
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
84
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
85
|
+
|
|
86
|
+
Returns:
|
|
87
|
+
Response[Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]]
|
|
88
|
+
"""
|
|
89
|
+
|
|
90
|
+
kwargs = _get_kwargs(
|
|
91
|
+
attachment_id=attachment_id,
|
|
92
|
+
expires_in=expires_in,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
response = client.get_httpx_client().request(
|
|
96
|
+
**kwargs,
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
return _build_response(client=client, response=response)
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
def sync(
|
|
103
|
+
attachment_id: UUID,
|
|
104
|
+
*,
|
|
105
|
+
client: AuthenticatedClient,
|
|
106
|
+
expires_in: Union[Unset, int] = 300,
|
|
107
|
+
) -> Optional[Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]]:
|
|
108
|
+
"""Get Run Attachment Download Url
|
|
109
|
+
|
|
110
|
+
Get a signed download URL for a run attachment file.
|
|
111
|
+
|
|
112
|
+
Returns a signed URL that triggers automatic download when accessed.
|
|
113
|
+
|
|
114
|
+
Args:
|
|
115
|
+
attachment_id: The ID of the attachment to download
|
|
116
|
+
expires_in: URL expiration time in seconds (10-3600). Default: 300 (5 minutes)
|
|
117
|
+
|
|
118
|
+
Args:
|
|
119
|
+
attachment_id (UUID):
|
|
120
|
+
expires_in (Union[Unset, int]): URL expiration time in seconds (10-3600) Default: 300.
|
|
121
|
+
|
|
122
|
+
Raises:
|
|
123
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
124
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
125
|
+
|
|
126
|
+
Returns:
|
|
127
|
+
Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]
|
|
128
|
+
"""
|
|
129
|
+
|
|
130
|
+
return sync_detailed(
|
|
131
|
+
attachment_id=attachment_id,
|
|
132
|
+
client=client,
|
|
133
|
+
expires_in=expires_in,
|
|
134
|
+
).parsed
|
|
135
|
+
|
|
136
|
+
|
|
137
|
+
async def asyncio_detailed(
|
|
138
|
+
attachment_id: UUID,
|
|
139
|
+
*,
|
|
140
|
+
client: AuthenticatedClient,
|
|
141
|
+
expires_in: Union[Unset, int] = 300,
|
|
142
|
+
) -> Response[Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]]:
|
|
143
|
+
"""Get Run Attachment Download Url
|
|
144
|
+
|
|
145
|
+
Get a signed download URL for a run attachment file.
|
|
146
|
+
|
|
147
|
+
Returns a signed URL that triggers automatic download when accessed.
|
|
148
|
+
|
|
149
|
+
Args:
|
|
150
|
+
attachment_id: The ID of the attachment to download
|
|
151
|
+
expires_in: URL expiration time in seconds (10-3600). Default: 300 (5 minutes)
|
|
152
|
+
|
|
153
|
+
Args:
|
|
154
|
+
attachment_id (UUID):
|
|
155
|
+
expires_in (Union[Unset, int]): URL expiration time in seconds (10-3600) Default: 300.
|
|
156
|
+
|
|
157
|
+
Raises:
|
|
158
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
159
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
160
|
+
|
|
161
|
+
Returns:
|
|
162
|
+
Response[Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]]
|
|
163
|
+
"""
|
|
164
|
+
|
|
165
|
+
kwargs = _get_kwargs(
|
|
166
|
+
attachment_id=attachment_id,
|
|
167
|
+
expires_in=expires_in,
|
|
168
|
+
)
|
|
169
|
+
|
|
170
|
+
response = await client.get_async_httpx_client().request(**kwargs)
|
|
171
|
+
|
|
172
|
+
return _build_response(client=client, response=response)
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
async def asyncio(
|
|
176
|
+
attachment_id: UUID,
|
|
177
|
+
*,
|
|
178
|
+
client: AuthenticatedClient,
|
|
179
|
+
expires_in: Union[Unset, int] = 300,
|
|
180
|
+
) -> Optional[Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]]:
|
|
181
|
+
"""Get Run Attachment Download Url
|
|
182
|
+
|
|
183
|
+
Get a signed download URL for a run attachment file.
|
|
184
|
+
|
|
185
|
+
Returns a signed URL that triggers automatic download when accessed.
|
|
186
|
+
|
|
187
|
+
Args:
|
|
188
|
+
attachment_id: The ID of the attachment to download
|
|
189
|
+
expires_in: URL expiration time in seconds (10-3600). Default: 300 (5 minutes)
|
|
190
|
+
|
|
191
|
+
Args:
|
|
192
|
+
attachment_id (UUID):
|
|
193
|
+
expires_in (Union[Unset, int]): URL expiration time in seconds (10-3600) Default: 300.
|
|
194
|
+
|
|
195
|
+
Raises:
|
|
196
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
197
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
198
|
+
|
|
199
|
+
Returns:
|
|
200
|
+
Union[HTTPValidationError, RunAttachmentDownloadUrlResponse]
|
|
201
|
+
"""
|
|
202
|
+
|
|
203
|
+
return (
|
|
204
|
+
await asyncio_detailed(
|
|
205
|
+
attachment_id=attachment_id,
|
|
206
|
+
client=client,
|
|
207
|
+
expires_in=expires_in,
|
|
208
|
+
)
|
|
209
|
+
).parsed
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/__init__.py
RENAMED
|
@@ -57,6 +57,7 @@ from .request_log_create import RequestLogCreate
|
|
|
57
57
|
from .request_log_response import RequestLogResponse
|
|
58
58
|
from .request_log_update import RequestLogUpdate
|
|
59
59
|
from .run_attachment_create import RunAttachmentCreate
|
|
60
|
+
from .run_attachment_download_url_response import RunAttachmentDownloadUrlResponse
|
|
60
61
|
from .run_attachment_response import RunAttachmentResponse
|
|
61
62
|
from .run_attachment_update import RunAttachmentUpdate
|
|
62
63
|
from .run_create import RunCreate
|
|
@@ -126,6 +127,7 @@ __all__ = (
|
|
|
126
127
|
"RequestLogResponse",
|
|
127
128
|
"RequestLogUpdate",
|
|
128
129
|
"RunAttachmentCreate",
|
|
130
|
+
"RunAttachmentDownloadUrlResponse",
|
|
129
131
|
"RunAttachmentResponse",
|
|
130
132
|
"RunAttachmentUpdate",
|
|
131
133
|
"RunCreate",
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
T = TypeVar("T", bound="RunAttachmentDownloadUrlResponse")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@_attrs_define
|
|
11
|
+
class RunAttachmentDownloadUrlResponse:
|
|
12
|
+
"""Response schema for run attachment download URL
|
|
13
|
+
|
|
14
|
+
Attributes:
|
|
15
|
+
url (str): Signed URL for downloading the attachment
|
|
16
|
+
expires_in (int): Seconds until the URL expires
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
url: str
|
|
20
|
+
expires_in: int
|
|
21
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
|
+
|
|
23
|
+
def to_dict(self) -> dict[str, Any]:
|
|
24
|
+
url = self.url
|
|
25
|
+
|
|
26
|
+
expires_in = self.expires_in
|
|
27
|
+
|
|
28
|
+
field_dict: dict[str, Any] = {}
|
|
29
|
+
field_dict.update(self.additional_properties)
|
|
30
|
+
field_dict.update(
|
|
31
|
+
{
|
|
32
|
+
"url": url,
|
|
33
|
+
"expires_in": expires_in,
|
|
34
|
+
}
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
return field_dict
|
|
38
|
+
|
|
39
|
+
@classmethod
|
|
40
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
41
|
+
d = dict(src_dict)
|
|
42
|
+
url = d.pop("url")
|
|
43
|
+
|
|
44
|
+
expires_in = d.pop("expires_in")
|
|
45
|
+
|
|
46
|
+
run_attachment_download_url_response = cls(
|
|
47
|
+
url=url,
|
|
48
|
+
expires_in=expires_in,
|
|
49
|
+
)
|
|
50
|
+
|
|
51
|
+
run_attachment_download_url_response.additional_properties = d
|
|
52
|
+
return run_attachment_download_url_response
|
|
53
|
+
|
|
54
|
+
@property
|
|
55
|
+
def additional_keys(self) -> list[str]:
|
|
56
|
+
return list(self.additional_properties.keys())
|
|
57
|
+
|
|
58
|
+
def __getitem__(self, key: str) -> Any:
|
|
59
|
+
return self.additional_properties[key]
|
|
60
|
+
|
|
61
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
62
|
+
self.additional_properties[key] = value
|
|
63
|
+
|
|
64
|
+
def __delitem__(self, key: str) -> None:
|
|
65
|
+
del self.additional_properties[key]
|
|
66
|
+
|
|
67
|
+
def __contains__(self, key: str) -> bool:
|
|
68
|
+
return key in self.additional_properties
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/computer/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/default/__init__.py
RENAMED
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/default/root_get.py
RENAMED
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/health/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/machines/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/runs/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/test/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/api/workflows/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/attachment_type.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/file_input.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/machine_create.py
RENAMED
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/machine_status.py
RENAMED
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/machine_update.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/mouse_position.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_create.py
RENAMED
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_response.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_status.py
RENAMED
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/run_update.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/workflow_create.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cyberdesk-1.9.0 → cyberdesk-1.10.0}/openapi_client/cyberdesk_cloud_client/models/workflow_update.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|