cyberdesk 2.1.4__py3-none-any.whl → 2.1.6__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.
Potentially problematic release.
This version of cyberdesk might be problematic. Click here for more details.
- cyberdesk/__init__.py +1 -1
- cyberdesk/client.py +73 -0
- {cyberdesk-2.1.4.dist-info → cyberdesk-2.1.6.dist-info}/METADATA +1 -1
- {cyberdesk-2.1.4.dist-info → cyberdesk-2.1.6.dist-info}/RECORD +26 -13
- openapi_client/cyberdesk_cloud_client/api/computer/mouse_scroll_v1_computer_machine_id_input_mouse_scroll_post.py +187 -0
- openapi_client/cyberdesk_cloud_client/api/runs/create_run_chain_v1_runs_chain_post.py +192 -0
- openapi_client/cyberdesk_cloud_client/models/__init__.py +22 -0
- openapi_client/cyberdesk_cloud_client/models/chain_step.py +122 -0
- openapi_client/cyberdesk_cloud_client/models/chain_step_inputs_type_0.py +74 -0
- openapi_client/cyberdesk_cloud_client/models/machine_response.py +30 -0
- openapi_client/cyberdesk_cloud_client/models/machine_update.py +32 -0
- openapi_client/cyberdesk_cloud_client/models/mouse_scroll_request.py +109 -0
- openapi_client/cyberdesk_cloud_client/models/ref_value.py +61 -0
- openapi_client/cyberdesk_cloud_client/models/run_bulk_create.py +85 -0
- openapi_client/cyberdesk_cloud_client/models/run_bulk_create_sensitive_input_values_type_0.py +44 -0
- openapi_client/cyberdesk_cloud_client/models/run_create.py +105 -0
- openapi_client/cyberdesk_cloud_client/models/run_create_sensitive_input_values_type_0.py +44 -0
- openapi_client/cyberdesk_cloud_client/models/run_response.py +83 -0
- openapi_client/cyberdesk_cloud_client/models/run_response_sensitive_input_aliases_type_0.py +44 -0
- openapi_client/cyberdesk_cloud_client/models/workflow_chain_create.py +305 -0
- openapi_client/cyberdesk_cloud_client/models/workflow_chain_create_shared_inputs_type_0.py +44 -0
- openapi_client/cyberdesk_cloud_client/models/workflow_chain_create_shared_sensitive_inputs_type_0.py +44 -0
- openapi_client/cyberdesk_cloud_client/models/workflow_chain_response.py +77 -0
- {cyberdesk-2.1.4.dist-info → cyberdesk-2.1.6.dist-info}/WHEEL +0 -0
- {cyberdesk-2.1.4.dist-info → cyberdesk-2.1.6.dist-info}/licenses/LICENSE +0 -0
- {cyberdesk-2.1.4.dist-info → cyberdesk-2.1.6.dist-info}/top_level.txt +0 -0
cyberdesk/__init__.py
CHANGED
cyberdesk/client.py
CHANGED
|
@@ -41,6 +41,7 @@ from openapi_client.cyberdesk_cloud_client.api.runs import (
|
|
|
41
41
|
update_run_v1_runs_run_id_patch,
|
|
42
42
|
delete_run_v1_runs_run_id_delete,
|
|
43
43
|
bulk_create_runs_v1_runs_bulk_post,
|
|
44
|
+
create_run_chain_v1_runs_chain_post,
|
|
44
45
|
)
|
|
45
46
|
from openapi_client.cyberdesk_cloud_client.api.connections import (
|
|
46
47
|
list_connections_v1_connections_get,
|
|
@@ -85,6 +86,8 @@ from openapi_client.cyberdesk_cloud_client.models import (
|
|
|
85
86
|
RunStatus,
|
|
86
87
|
RunBulkCreate,
|
|
87
88
|
RunBulkCreateResponse,
|
|
89
|
+
WorkflowChainCreate,
|
|
90
|
+
WorkflowChainResponse,
|
|
88
91
|
FileInput,
|
|
89
92
|
ConnectionCreate,
|
|
90
93
|
ConnectionResponse,
|
|
@@ -128,6 +131,8 @@ __all__ = [
|
|
|
128
131
|
"RunStatus",
|
|
129
132
|
"RunBulkCreate",
|
|
130
133
|
"RunBulkCreateResponse",
|
|
134
|
+
"WorkflowChainCreate",
|
|
135
|
+
"WorkflowChainResponse",
|
|
131
136
|
"FileInput",
|
|
132
137
|
"ConnectionCreate",
|
|
133
138
|
"ConnectionResponse",
|
|
@@ -312,6 +317,35 @@ class MachinesAPI:
|
|
|
312
317
|
except Exception as e:
|
|
313
318
|
return ApiResponse(error=e)
|
|
314
319
|
|
|
320
|
+
async def clear_session(self, machine_id: str) -> ApiResponse:
|
|
321
|
+
"""Clear the machine's reserved session (cancels queued/running session runs).
|
|
322
|
+
|
|
323
|
+
This sends reserved_session_id=null per API contract.
|
|
324
|
+
"""
|
|
325
|
+
try:
|
|
326
|
+
update = MachineUpdate(reserved_session_id=None)
|
|
327
|
+
response = await update_machine_v1_machines_machine_id_patch.asyncio(
|
|
328
|
+
client=self.client,
|
|
329
|
+
machine_id=_to_uuid(machine_id),
|
|
330
|
+
body=update
|
|
331
|
+
)
|
|
332
|
+
return ApiResponse(data=response)
|
|
333
|
+
except Exception as e:
|
|
334
|
+
return ApiResponse(error=e)
|
|
335
|
+
|
|
336
|
+
def clear_session_sync(self, machine_id: str) -> ApiResponse:
|
|
337
|
+
"""Clear the machine's reserved session (synchronous)."""
|
|
338
|
+
try:
|
|
339
|
+
update = MachineUpdate(reserved_session_id=None)
|
|
340
|
+
response = update_machine_v1_machines_machine_id_patch.sync(
|
|
341
|
+
client=self.client,
|
|
342
|
+
machine_id=_to_uuid(machine_id),
|
|
343
|
+
body=update
|
|
344
|
+
)
|
|
345
|
+
return ApiResponse(data=response)
|
|
346
|
+
except Exception as e:
|
|
347
|
+
return ApiResponse(error=e)
|
|
348
|
+
|
|
315
349
|
async def delete(self, machine_id: str) -> ApiResponse:
|
|
316
350
|
"""Delete a machine."""
|
|
317
351
|
try:
|
|
@@ -854,6 +888,8 @@ class RunsAPI:
|
|
|
854
888
|
- pool_ids: Optional list of pool IDs (machine must be in ALL specified pools)
|
|
855
889
|
- input_values: Optional input values for workflow variables
|
|
856
890
|
- file_inputs: Optional files to upload to the machine
|
|
891
|
+
- start_session: Optional bool to start a new machine session
|
|
892
|
+
- session_id: Optional UUID to join an existing session
|
|
857
893
|
|
|
858
894
|
Returns:
|
|
859
895
|
ApiResponse with RunResponse
|
|
@@ -877,6 +913,8 @@ class RunsAPI:
|
|
|
877
913
|
- pool_ids: Optional list of pool IDs (machine must be in ALL specified pools)
|
|
878
914
|
- input_values: Optional input values for workflow variables
|
|
879
915
|
- file_inputs: Optional files to upload to the machine
|
|
916
|
+
- start_session: Optional bool to start a new machine session
|
|
917
|
+
- session_id: Optional UUID to join an existing session
|
|
880
918
|
|
|
881
919
|
Returns:
|
|
882
920
|
ApiResponse with RunResponse
|
|
@@ -974,6 +1012,8 @@ class RunsAPI:
|
|
|
974
1012
|
- input_values: Optional input values for workflow variables
|
|
975
1013
|
- file_inputs: Optional files to upload to the machine
|
|
976
1014
|
- count: Number of runs to create (max 1000)
|
|
1015
|
+
- start_session: Optional bool to start a new machine session for all runs
|
|
1016
|
+
- session_id: Optional UUID to join an existing session for all runs
|
|
977
1017
|
|
|
978
1018
|
Returns:
|
|
979
1019
|
ApiResponse with RunBulkCreateResponse containing:
|
|
@@ -1006,6 +1046,8 @@ class RunsAPI:
|
|
|
1006
1046
|
- input_values: Optional input values for workflow variables
|
|
1007
1047
|
- file_inputs: Optional files to upload to the machine
|
|
1008
1048
|
- count: Number of runs to create (max 1000)
|
|
1049
|
+
- start_session: Optional bool to start a new machine session for all runs
|
|
1050
|
+
- session_id: Optional UUID to join an existing session for all runs
|
|
1009
1051
|
|
|
1010
1052
|
Returns:
|
|
1011
1053
|
ApiResponse with RunBulkCreateResponse containing:
|
|
@@ -1022,6 +1064,37 @@ class RunsAPI:
|
|
|
1022
1064
|
except Exception as e:
|
|
1023
1065
|
return ApiResponse(error=e)
|
|
1024
1066
|
|
|
1067
|
+
async def chain(self, data: WorkflowChainCreate) -> ApiResponse:
|
|
1068
|
+
"""Create a multi-step chain that runs on a single reserved session/machine.
|
|
1069
|
+
|
|
1070
|
+
Args:
|
|
1071
|
+
data: WorkflowChainCreate with steps (session_alias, inputs),
|
|
1072
|
+
optional shared_inputs/sensitive/file_inputs, and optional
|
|
1073
|
+
session_id or machine_id/pool_id for session start.
|
|
1074
|
+
|
|
1075
|
+
Returns:
|
|
1076
|
+
ApiResponse with WorkflowChainResponse
|
|
1077
|
+
"""
|
|
1078
|
+
try:
|
|
1079
|
+
response = await create_run_chain_v1_runs_chain_post.asyncio(
|
|
1080
|
+
client=self.client,
|
|
1081
|
+
body=data
|
|
1082
|
+
)
|
|
1083
|
+
return ApiResponse(data=response)
|
|
1084
|
+
except Exception as e:
|
|
1085
|
+
return ApiResponse(error=e)
|
|
1086
|
+
|
|
1087
|
+
def chain_sync(self, data: WorkflowChainCreate) -> ApiResponse:
|
|
1088
|
+
"""Create a multi-step chain (synchronous)."""
|
|
1089
|
+
try:
|
|
1090
|
+
response = create_run_chain_v1_runs_chain_post.sync(
|
|
1091
|
+
client=self.client,
|
|
1092
|
+
body=data
|
|
1093
|
+
)
|
|
1094
|
+
return ApiResponse(data=response)
|
|
1095
|
+
except Exception as e:
|
|
1096
|
+
return ApiResponse(error=e)
|
|
1097
|
+
|
|
1025
1098
|
|
|
1026
1099
|
class ConnectionsAPI:
|
|
1027
1100
|
"""Connections API endpoints."""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
cyberdesk/__init__.py,sha256=
|
|
2
|
-
cyberdesk/client.py,sha256=
|
|
3
|
-
cyberdesk-2.1.
|
|
1
|
+
cyberdesk/__init__.py,sha256=Rw283-Jd5SQp35m80AJj-y0ArPRm_cSPdfq5TFjpFrA,1157
|
|
2
|
+
cyberdesk/client.py,sha256=QbOzRMrqAnCH7_13O0cU5HO0FpQFXbZOyCsfusaWXPc,65112
|
|
3
|
+
cyberdesk-2.1.6.dist-info/licenses/LICENSE,sha256=06Op63FCwGhuUOz__M8IZW5sxd29WxyGC4X5-Uih7IQ,1071
|
|
4
4
|
openapi_client/cyberdesk_cloud_client/__init__.py,sha256=r_uVkNUL-SOK8j7-KiGMIKdinES5X8K1Q250ySX2F-A,158
|
|
5
5
|
openapi_client/cyberdesk_cloud_client/client.py,sha256=o_mdLqyBCQstu5tS1WZFwqIEbGwkvWQ7eQjuCJw_5VY,12419
|
|
6
6
|
openapi_client/cyberdesk_cloud_client/errors.py,sha256=gO8GBmKqmSNgAg-E5oT-oOyxztvp7V_6XG7OUTT15q0,546
|
|
@@ -18,6 +18,7 @@ openapi_client/cyberdesk_cloud_client/api/computer/keyboard_key_v1_computer_mach
|
|
|
18
18
|
openapi_client/cyberdesk_cloud_client/api/computer/keyboard_type_v1_computer_machine_id_input_keyboard_type_post.py,sha256=tVBv4T6cg5UscdZtFuZpV4WJFF1Lqg7jDP97dbpoPnk,4664
|
|
19
19
|
openapi_client/cyberdesk_cloud_client/api/computer/mouse_click_v1_computer_machine_id_input_mouse_click_post.py,sha256=_b8dCyAI0W3Fr0Ra5vo35yJuMb36cS0o41SSlLT1xf8,4984
|
|
20
20
|
openapi_client/cyberdesk_cloud_client/api/computer/mouse_move_v1_computer_machine_id_input_mouse_move_post.py,sha256=CNfIj6oTs8QSRo4674pmHw9kJQIBw7D-u7mKT62tMDg,4704
|
|
21
|
+
openapi_client/cyberdesk_cloud_client/api/computer/mouse_scroll_v1_computer_machine_id_input_mouse_scroll_post.py,sha256=iHi8de7RU7gc1aLzLXlrlNW4HO13M8SigTyMqypA-9s,5024
|
|
21
22
|
openapi_client/cyberdesk_cloud_client/api/computer/powershell_exec_v1_computer_machine_id_shell_powershell_exec_post.py,sha256=iZCvu92FFTVAZfIkw-PIWPllUe4NRuAdjB63IasSxKw,6567
|
|
22
23
|
openapi_client/cyberdesk_cloud_client/api/computer/powershell_session_v1_computer_machine_id_shell_powershell_session_post.py,sha256=Bw-zP9ekElWvHbfts1bGfZX6mkEfrNwZ-A9rajAuzYM,6799
|
|
23
24
|
openapi_client/cyberdesk_cloud_client/api/connections/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
|
|
@@ -65,6 +66,7 @@ openapi_client/cyberdesk_cloud_client/api/run_attachments/list_run_attachments_v
|
|
|
65
66
|
openapi_client/cyberdesk_cloud_client/api/run_attachments/update_run_attachment_v1_run_attachments_attachment_id_put.py,sha256=4jsIek-Z4U5hbKHRMBsnJr0DgfOoY5B2sC22d5Af-UU,5395
|
|
66
67
|
openapi_client/cyberdesk_cloud_client/api/runs/__init__.py,sha256=5vd9uJWAjRqa9xzxzYkLD1yoZ12Ld_bAaNB5WX4fbE8,56
|
|
67
68
|
openapi_client/cyberdesk_cloud_client/api/runs/bulk_create_runs_v1_runs_bulk_post.py,sha256=e89ThcQxPj-PZBzyieS4SC4kswup9aKBSsc3K8btN3U,5809
|
|
69
|
+
openapi_client/cyberdesk_cloud_client/api/runs/create_run_chain_v1_runs_chain_post.py,sha256=rAGFQld5TK5jBfrxkiebNF03t0HuRAMJzsqlHm1OQtg,6163
|
|
68
70
|
openapi_client/cyberdesk_cloud_client/api/runs/create_run_v1_runs_post.py,sha256=GhCe-A0JxVWvTgzA4AyKEJQOlem0uzttLmXBxRLlUys,5451
|
|
69
71
|
openapi_client/cyberdesk_cloud_client/api/runs/delete_run_v1_runs_run_id_delete.py,sha256=dOGd7lAPd9SBn9-13zhTx-wTtM6YQvT3WspjIQjOhHg,4428
|
|
70
72
|
openapi_client/cyberdesk_cloud_client/api/runs/get_run_v1_runs_run_id_get.py,sha256=4mPvnOtAICVqzyXbD5Gdtqq_f1ardg7WpseT8RI3mwQ,4594
|
|
@@ -86,8 +88,10 @@ openapi_client/cyberdesk_cloud_client/api/workflows/get_workflow_v1_workflows_wo
|
|
|
86
88
|
openapi_client/cyberdesk_cloud_client/api/workflows/get_workflow_versions_v1_workflows_workflow_id_versions_get.py,sha256=ax_5V-lIClvOxr50eXSIAPbyhWP-cS4a4DXzwdxkVYs,5889
|
|
87
89
|
openapi_client/cyberdesk_cloud_client/api/workflows/list_workflows_v1_workflows_get.py,sha256=Aszxh1BlUuRqMHjT7lvZf8g6kDCcNUZtuwoJqhDOwlQ,11258
|
|
88
90
|
openapi_client/cyberdesk_cloud_client/api/workflows/update_workflow_v1_workflows_workflow_id_patch.py,sha256=K_tuO6s_FyM8MUOck5AuX_RNIeYqCQcfYx1aDg9xwhE,5737
|
|
89
|
-
openapi_client/cyberdesk_cloud_client/models/__init__.py,sha256=
|
|
91
|
+
openapi_client/cyberdesk_cloud_client/models/__init__.py,sha256=ucZQdTLcqDH1pUOq5qINlsFO6wqwYIa6JKJt3nycrJQ,10262
|
|
90
92
|
openapi_client/cyberdesk_cloud_client/models/attachment_type.py,sha256=zqPOsSd2AmxGNqb5HQ6ZYBAYL8k-0UbWHhfAJYNHoro,161
|
|
93
|
+
openapi_client/cyberdesk_cloud_client/models/chain_step.py,sha256=mdWyUoC-zPXPkNc_JWONbEKao5VH5az2LQNJA3mmG1k,3871
|
|
94
|
+
openapi_client/cyberdesk_cloud_client/models/chain_step_inputs_type_0.py,sha256=fLKmOSl7rEi7pRrXbY1sqiVdbCNg0mGj2cPOb5_7hh4,2368
|
|
91
95
|
openapi_client/cyberdesk_cloud_client/models/connection_create.py,sha256=gCI36DmjJDZxzGFPbykyYw9k4QEf_4dVNz9b-xZfLo4,3288
|
|
92
96
|
openapi_client/cyberdesk_cloud_client/models/connection_response.py,sha256=aFxqJX75wSEw5dZ-kvh3Wgv_haJ6xYJ7o72vSAbEtHY,5247
|
|
93
97
|
openapi_client/cyberdesk_cloud_client/models/connection_status.py,sha256=XTpa-W0TinYhypU7P-LaJEI3I2JsEaT3voUZQ3zoJO0,203
|
|
@@ -108,12 +112,13 @@ openapi_client/cyberdesk_cloud_client/models/keyboard_type_request.py,sha256=Jgz
|
|
|
108
112
|
openapi_client/cyberdesk_cloud_client/models/machine_create.py,sha256=WiSBX-7Sx73C0jVHc6dhl4E0pWQNE2RrJ9DZ3gljZQ4,4449
|
|
109
113
|
openapi_client/cyberdesk_cloud_client/models/machine_pool_assignment.py,sha256=oTctHGs4FQsdRvhc_evjC13vewhiQsaohsztMSWXJ9Q,2011
|
|
110
114
|
openapi_client/cyberdesk_cloud_client/models/machine_pool_update.py,sha256=K1ax3OmPZj2t-VlQ0CsRWYuTR667fBTXsT8hJkZXcWU,1935
|
|
111
|
-
openapi_client/cyberdesk_cloud_client/models/machine_response.py,sha256=
|
|
115
|
+
openapi_client/cyberdesk_cloud_client/models/machine_response.py,sha256=ic1fciSMgg1n1vnbz_24O2Uxm6cT72bw30k5YkHYm3A,10247
|
|
112
116
|
openapi_client/cyberdesk_cloud_client/models/machine_status.py,sha256=mqKyXgK1wcaA2fI6iTo_tS7AMeuVrRN4yE21d2Lsq1I,200
|
|
113
|
-
openapi_client/cyberdesk_cloud_client/models/machine_update.py,sha256=
|
|
117
|
+
openapi_client/cyberdesk_cloud_client/models/machine_update.py,sha256=0rUF8QOMrKLfGc2t1tULmId33sXBr9uwNgJSUD7p6es,8344
|
|
114
118
|
openapi_client/cyberdesk_cloud_client/models/mouse_click_request.py,sha256=GSBn4fg2sNnL4KQQHKly2YIzyRqbfwVgrQXpaalOUxg,3423
|
|
115
119
|
openapi_client/cyberdesk_cloud_client/models/mouse_move_request.py,sha256=D5sWQwnRvs_IvRocctMeE2czciI-KvuuYh73PLutkPo,1548
|
|
116
120
|
openapi_client/cyberdesk_cloud_client/models/mouse_position.py,sha256=t8PW-7xKfyHb3LVnZQglSu4Hrlp7W_xmoqS-UYOqG2U,1530
|
|
121
|
+
openapi_client/cyberdesk_cloud_client/models/mouse_scroll_request.py,sha256=Q0QG8UweABu0BJXOBQVh8HCgMMyCSvHzoXf4Gkm6A5s,2980
|
|
117
122
|
openapi_client/cyberdesk_cloud_client/models/paginated_response.py,sha256=P9bt0Koea8rODsULodX8dDAwm-uP2KRE1mRi8AK-VBY,1988
|
|
118
123
|
openapi_client/cyberdesk_cloud_client/models/paginated_response_connection_response.py,sha256=2WxYXSS1RoBeh2ealxdQeEBSv0pBpllar1m98toeYHs,2527
|
|
119
124
|
openapi_client/cyberdesk_cloud_client/models/paginated_response_machine_response.py,sha256=m_bJGQwSQkqPeJwcQ2UnXglhdmPqsj_tjjx_3S-YZyE,2491
|
|
@@ -130,6 +135,7 @@ openapi_client/cyberdesk_cloud_client/models/power_shell_exec_request.py,sha256=
|
|
|
130
135
|
openapi_client/cyberdesk_cloud_client/models/power_shell_session_request.py,sha256=2Ix3dnjljWXO6KuOTPCykkYJim1at0_vAu1dh4Dahcw,2361
|
|
131
136
|
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,sha256=N496N5sS2XP1dqAvoB3EplU3Dxwtf867Vr8hhh315V8,1813
|
|
132
137
|
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,sha256=pmt2dgp_0v1YoLJqDXTXdpJ29TBenyCC4C_xmUCFGgA,1873
|
|
138
|
+
openapi_client/cyberdesk_cloud_client/models/ref_value.py,sha256=I98XZ2sslo7FPz5Y34isl-6v8gJ3cV5dP75Ng0Trzow,1536
|
|
133
139
|
openapi_client/cyberdesk_cloud_client/models/request_log_create.py,sha256=6CNnBvl9oyGs0J0R994eFn-TIdl6ohsofvCc2SXVfWc,6072
|
|
134
140
|
openapi_client/cyberdesk_cloud_client/models/request_log_response.py,sha256=ar41BvME8lsQOaDCz7KfPSSohj5_r8MYiMzdiIbRTMw,8239
|
|
135
141
|
openapi_client/cyberdesk_cloud_client/models/request_log_update.py,sha256=VcXBNffDOoEYYBjwvdkuSWPz04BW3c8YTcqzlZRb0ns,5677
|
|
@@ -137,16 +143,19 @@ openapi_client/cyberdesk_cloud_client/models/run_attachment_create.py,sha256=w58
|
|
|
137
143
|
openapi_client/cyberdesk_cloud_client/models/run_attachment_download_url_response.py,sha256=CUeh3Zas29uwfpH5oMbQ_hhkpsZ_RH7ZA_RyfRsf8mY,1864
|
|
138
144
|
openapi_client/cyberdesk_cloud_client/models/run_attachment_response.py,sha256=_K4POw4eH_5wYbu8lqH1sHc3oMXFBDPtcqWfkBx3z68,7371
|
|
139
145
|
openapi_client/cyberdesk_cloud_client/models/run_attachment_update.py,sha256=rGXcB21waSTXG0-mt0XhNcwoJI1PhBpBDUkLfp8mM-0,2573
|
|
140
|
-
openapi_client/cyberdesk_cloud_client/models/run_bulk_create.py,sha256=
|
|
146
|
+
openapi_client/cyberdesk_cloud_client/models/run_bulk_create.py,sha256=H5B8_7j6uSH8mN7WswoyjhJJX5Kx7z1AVOAtRxHLuTs,11997
|
|
141
147
|
openapi_client/cyberdesk_cloud_client/models/run_bulk_create_input_values_type_0.py,sha256=JxGOOYKueFx5NtvnXgf9z_sXbMByQrsjjQ3AmU8qG30,1305
|
|
142
148
|
openapi_client/cyberdesk_cloud_client/models/run_bulk_create_response.py,sha256=N9sMykvm6pC2fMMH_XVQI8wVc6-53qAHMb_qbNBo9-c,2886
|
|
149
|
+
openapi_client/cyberdesk_cloud_client/models/run_bulk_create_sensitive_input_values_type_0.py,sha256=gUuuevR9IZLJtqhnVvxvMDKf47JD4tdEEof9kESGWWY,1353
|
|
143
150
|
openapi_client/cyberdesk_cloud_client/models/run_completed_event.py,sha256=JP4okhYCwpnbyORLVz-C9zUMcNt7FlVIjbpuG61bKFo,3415
|
|
144
|
-
openapi_client/cyberdesk_cloud_client/models/run_create.py,sha256=
|
|
151
|
+
openapi_client/cyberdesk_cloud_client/models/run_create.py,sha256=uJrEXwJ1ZBtismGWy-sDoi2dLlQ1pVUVMP9YZFGXdPs,12459
|
|
145
152
|
openapi_client/cyberdesk_cloud_client/models/run_create_input_values_type_0.py,sha256=APV4O0GduU3fhHoJHMMOBk-h92Hf21c1ZU-pIsJoZpg,1282
|
|
146
|
-
openapi_client/cyberdesk_cloud_client/models/
|
|
153
|
+
openapi_client/cyberdesk_cloud_client/models/run_create_sensitive_input_values_type_0.py,sha256=gtmXorTEeOVv2fYJKkHCSFhKCRMvE-6-XjfNfNhiNMY,1330
|
|
154
|
+
openapi_client/cyberdesk_cloud_client/models/run_response.py,sha256=Eopwu4GLjx-6lf0dosYRm02i9HzEge-5KEtAdXS4P4A,17490
|
|
147
155
|
openapi_client/cyberdesk_cloud_client/models/run_response_input_values_type_0.py,sha256=NpMqT3qaMrLGA7mHBjvtS1fnMGc5zxwWLoFWunjjupA,1292
|
|
148
156
|
openapi_client/cyberdesk_cloud_client/models/run_response_output_data_type_0.py,sha256=rO4YJAa26G_83CFtBTQ_ZKCURAxNS7PcvdKbfuvDcrA,1287
|
|
149
157
|
openapi_client/cyberdesk_cloud_client/models/run_response_run_message_history_type_0_item.py,sha256=3x1N3yi3kyc1que3bizmHEuGBn5s7pEirEg4TgBV9FU,1348
|
|
158
|
+
openapi_client/cyberdesk_cloud_client/models/run_response_sensitive_input_aliases_type_0.py,sha256=zKdXtKDOG2iv_1vtqzSGGuAthXP6JR7fKmiabJSvQE0,1345
|
|
150
159
|
openapi_client/cyberdesk_cloud_client/models/run_status.py,sha256=Qbsj-KKplPDamvoJvyOK_sZp7XKj6SPf8J9WnRwOhXk,240
|
|
151
160
|
openapi_client/cyberdesk_cloud_client/models/run_update.py,sha256=EY8zP-Dd3WgGNdUVDy1QUM6UPAZH4rNMEOPYjVej-Mo,9974
|
|
152
161
|
openapi_client/cyberdesk_cloud_client/models/run_update_input_values_type_0.py,sha256=Dg_CSahXf_M8x7go8K0BoUrHWnoKpc6l-IFPeT15DNk,1282
|
|
@@ -163,11 +172,15 @@ openapi_client/cyberdesk_cloud_client/models/trajectory_response_trajectory_data
|
|
|
163
172
|
openapi_client/cyberdesk_cloud_client/models/trajectory_update.py,sha256=EF-O37EgyVd9qmdMZk7frNFsSdiiWC7_ZWEoDGMxWnY,4916
|
|
164
173
|
openapi_client/cyberdesk_cloud_client/models/trajectory_update_trajectory_data_type_0_item.py,sha256=3Zt8-nV3ZHjXzL1y5xKQdrHb-7ILG4EjHvtA4xabde4,1355
|
|
165
174
|
openapi_client/cyberdesk_cloud_client/models/validation_error.py,sha256=ZlK9hbhWr4zSC-dxZh9giERvMiYf9s2k8e1O9Rch_NI,2181
|
|
175
|
+
openapi_client/cyberdesk_cloud_client/models/workflow_chain_create.py,sha256=Ll-4OOO5KJ_-npNtnqXlSLU97dGBATUTF_sw1XGIUEM,11945
|
|
176
|
+
openapi_client/cyberdesk_cloud_client/models/workflow_chain_create_shared_inputs_type_0.py,sha256=DMyjLQZDdL4Ys9S04mswimHNeLowXu6HK4rwcy2EdfY,1340
|
|
177
|
+
openapi_client/cyberdesk_cloud_client/models/workflow_chain_create_shared_sensitive_inputs_type_0.py,sha256=v-q9148uzXRexSOpGbXc1hOY_4qwESiHO8Xt2DSBf6M,1388
|
|
178
|
+
openapi_client/cyberdesk_cloud_client/models/workflow_chain_response.py,sha256=mw3uh4xWu0ATK44f2Qa2xd_H0rWORBnIBERHqrw4gc4,2086
|
|
166
179
|
openapi_client/cyberdesk_cloud_client/models/workflow_create.py,sha256=d0bfNbNBF3RADrNcTiMeGm61NuV0c-6tB-S06ZxFdY4,3928
|
|
167
180
|
openapi_client/cyberdesk_cloud_client/models/workflow_response.py,sha256=k48mouJ6Dcisz2vyM7Rb_cbjU66JudGVPsq4UC7grHA,8977
|
|
168
181
|
openapi_client/cyberdesk_cloud_client/models/workflow_response_old_versions_type_0_item.py,sha256=W9AxxlBlN3rUwLDcoUx5H7MUiYA9UztfX9iEpNGlgAs,1340
|
|
169
182
|
openapi_client/cyberdesk_cloud_client/models/workflow_update.py,sha256=TG2jEitXixS2thtz7lTxTZaE0RBVSWd-apVxWxsvnrg,5333
|
|
170
|
-
cyberdesk-2.1.
|
|
171
|
-
cyberdesk-2.1.
|
|
172
|
-
cyberdesk-2.1.
|
|
173
|
-
cyberdesk-2.1.
|
|
183
|
+
cyberdesk-2.1.6.dist-info/METADATA,sha256=aVFDPkRJsaoGM-SoZNln7gvzVpEDJrY-HX1CGsrO_xI,6791
|
|
184
|
+
cyberdesk-2.1.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
185
|
+
cyberdesk-2.1.6.dist-info/top_level.txt,sha256=qTYHZHVHh3VClNPQsiFFA8p8tmJgFGhq9G1COd-pX_A,25
|
|
186
|
+
cyberdesk-2.1.6.dist-info/RECORD,,
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
from http import HTTPStatus
|
|
2
|
+
from typing import Any, Optional, Union, cast
|
|
3
|
+
|
|
4
|
+
import httpx
|
|
5
|
+
|
|
6
|
+
from ... import errors
|
|
7
|
+
from ...client import AuthenticatedClient, Client
|
|
8
|
+
from ...models.http_validation_error import HTTPValidationError
|
|
9
|
+
from ...models.mouse_scroll_request import MouseScrollRequest
|
|
10
|
+
from ...types import Response
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def _get_kwargs(
|
|
14
|
+
machine_id: str,
|
|
15
|
+
*,
|
|
16
|
+
body: MouseScrollRequest,
|
|
17
|
+
) -> dict[str, Any]:
|
|
18
|
+
headers: dict[str, Any] = {}
|
|
19
|
+
|
|
20
|
+
_kwargs: dict[str, Any] = {
|
|
21
|
+
"method": "post",
|
|
22
|
+
"url": f"/v1/computer/{machine_id}/input/mouse/scroll",
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
_kwargs["json"] = body.to_dict()
|
|
26
|
+
|
|
27
|
+
headers["Content-Type"] = "application/json"
|
|
28
|
+
|
|
29
|
+
_kwargs["headers"] = headers
|
|
30
|
+
return _kwargs
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def _parse_response(
|
|
34
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
35
|
+
) -> Optional[Union[Any, HTTPValidationError]]:
|
|
36
|
+
if response.status_code == 204:
|
|
37
|
+
response_204 = cast(Any, None)
|
|
38
|
+
return response_204
|
|
39
|
+
if response.status_code == 422:
|
|
40
|
+
response_422 = HTTPValidationError.from_dict(response.json())
|
|
41
|
+
|
|
42
|
+
return response_422
|
|
43
|
+
if client.raise_on_unexpected_status:
|
|
44
|
+
raise errors.UnexpectedStatus(response.status_code, response.content)
|
|
45
|
+
else:
|
|
46
|
+
return None
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def _build_response(
|
|
50
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
51
|
+
) -> Response[Union[Any, HTTPValidationError]]:
|
|
52
|
+
return Response(
|
|
53
|
+
status_code=HTTPStatus(response.status_code),
|
|
54
|
+
content=response.content,
|
|
55
|
+
headers=response.headers,
|
|
56
|
+
parsed=_parse_response(client=client, response=response),
|
|
57
|
+
)
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
def sync_detailed(
|
|
61
|
+
machine_id: str,
|
|
62
|
+
*,
|
|
63
|
+
client: AuthenticatedClient,
|
|
64
|
+
body: MouseScrollRequest,
|
|
65
|
+
) -> Response[Union[Any, HTTPValidationError]]:
|
|
66
|
+
"""Scroll mouse wheel
|
|
67
|
+
|
|
68
|
+
Scroll the mouse wheel in the specified direction by a number of steps.
|
|
69
|
+
Optionally moves to (x, y) before scrolling.
|
|
70
|
+
|
|
71
|
+
Args:
|
|
72
|
+
machine_id (str):
|
|
73
|
+
body (MouseScrollRequest):
|
|
74
|
+
|
|
75
|
+
Raises:
|
|
76
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
77
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
78
|
+
|
|
79
|
+
Returns:
|
|
80
|
+
Response[Union[Any, HTTPValidationError]]
|
|
81
|
+
"""
|
|
82
|
+
|
|
83
|
+
kwargs = _get_kwargs(
|
|
84
|
+
machine_id=machine_id,
|
|
85
|
+
body=body,
|
|
86
|
+
)
|
|
87
|
+
|
|
88
|
+
response = client.get_httpx_client().request(
|
|
89
|
+
**kwargs,
|
|
90
|
+
)
|
|
91
|
+
|
|
92
|
+
return _build_response(client=client, response=response)
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
def sync(
|
|
96
|
+
machine_id: str,
|
|
97
|
+
*,
|
|
98
|
+
client: AuthenticatedClient,
|
|
99
|
+
body: MouseScrollRequest,
|
|
100
|
+
) -> Optional[Union[Any, HTTPValidationError]]:
|
|
101
|
+
"""Scroll mouse wheel
|
|
102
|
+
|
|
103
|
+
Scroll the mouse wheel in the specified direction by a number of steps.
|
|
104
|
+
Optionally moves to (x, y) before scrolling.
|
|
105
|
+
|
|
106
|
+
Args:
|
|
107
|
+
machine_id (str):
|
|
108
|
+
body (MouseScrollRequest):
|
|
109
|
+
|
|
110
|
+
Raises:
|
|
111
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
112
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
113
|
+
|
|
114
|
+
Returns:
|
|
115
|
+
Union[Any, HTTPValidationError]
|
|
116
|
+
"""
|
|
117
|
+
|
|
118
|
+
return sync_detailed(
|
|
119
|
+
machine_id=machine_id,
|
|
120
|
+
client=client,
|
|
121
|
+
body=body,
|
|
122
|
+
).parsed
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
async def asyncio_detailed(
|
|
126
|
+
machine_id: str,
|
|
127
|
+
*,
|
|
128
|
+
client: AuthenticatedClient,
|
|
129
|
+
body: MouseScrollRequest,
|
|
130
|
+
) -> Response[Union[Any, HTTPValidationError]]:
|
|
131
|
+
"""Scroll mouse wheel
|
|
132
|
+
|
|
133
|
+
Scroll the mouse wheel in the specified direction by a number of steps.
|
|
134
|
+
Optionally moves to (x, y) before scrolling.
|
|
135
|
+
|
|
136
|
+
Args:
|
|
137
|
+
machine_id (str):
|
|
138
|
+
body (MouseScrollRequest):
|
|
139
|
+
|
|
140
|
+
Raises:
|
|
141
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
142
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
143
|
+
|
|
144
|
+
Returns:
|
|
145
|
+
Response[Union[Any, HTTPValidationError]]
|
|
146
|
+
"""
|
|
147
|
+
|
|
148
|
+
kwargs = _get_kwargs(
|
|
149
|
+
machine_id=machine_id,
|
|
150
|
+
body=body,
|
|
151
|
+
)
|
|
152
|
+
|
|
153
|
+
response = await client.get_async_httpx_client().request(**kwargs)
|
|
154
|
+
|
|
155
|
+
return _build_response(client=client, response=response)
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
async def asyncio(
|
|
159
|
+
machine_id: str,
|
|
160
|
+
*,
|
|
161
|
+
client: AuthenticatedClient,
|
|
162
|
+
body: MouseScrollRequest,
|
|
163
|
+
) -> Optional[Union[Any, HTTPValidationError]]:
|
|
164
|
+
"""Scroll mouse wheel
|
|
165
|
+
|
|
166
|
+
Scroll the mouse wheel in the specified direction by a number of steps.
|
|
167
|
+
Optionally moves to (x, y) before scrolling.
|
|
168
|
+
|
|
169
|
+
Args:
|
|
170
|
+
machine_id (str):
|
|
171
|
+
body (MouseScrollRequest):
|
|
172
|
+
|
|
173
|
+
Raises:
|
|
174
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
175
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
176
|
+
|
|
177
|
+
Returns:
|
|
178
|
+
Union[Any, HTTPValidationError]
|
|
179
|
+
"""
|
|
180
|
+
|
|
181
|
+
return (
|
|
182
|
+
await asyncio_detailed(
|
|
183
|
+
machine_id=machine_id,
|
|
184
|
+
client=client,
|
|
185
|
+
body=body,
|
|
186
|
+
)
|
|
187
|
+
).parsed
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
from http import HTTPStatus
|
|
2
|
+
from typing import Any, Optional, Union
|
|
3
|
+
|
|
4
|
+
import httpx
|
|
5
|
+
|
|
6
|
+
from ... import errors
|
|
7
|
+
from ...client import AuthenticatedClient, Client
|
|
8
|
+
from ...models.http_validation_error import HTTPValidationError
|
|
9
|
+
from ...models.workflow_chain_create import WorkflowChainCreate
|
|
10
|
+
from ...models.workflow_chain_response import WorkflowChainResponse
|
|
11
|
+
from ...types import Response
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
def _get_kwargs(
|
|
15
|
+
*,
|
|
16
|
+
body: WorkflowChainCreate,
|
|
17
|
+
) -> dict[str, Any]:
|
|
18
|
+
headers: dict[str, Any] = {}
|
|
19
|
+
|
|
20
|
+
_kwargs: dict[str, Any] = {
|
|
21
|
+
"method": "post",
|
|
22
|
+
"url": "/v1/runs/chain",
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
_kwargs["json"] = body.to_dict()
|
|
26
|
+
|
|
27
|
+
headers["Content-Type"] = "application/json"
|
|
28
|
+
|
|
29
|
+
_kwargs["headers"] = headers
|
|
30
|
+
return _kwargs
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def _parse_response(
|
|
34
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
35
|
+
) -> Optional[Union[HTTPValidationError, WorkflowChainResponse]]:
|
|
36
|
+
if response.status_code == 201:
|
|
37
|
+
response_201 = WorkflowChainResponse.from_dict(response.json())
|
|
38
|
+
|
|
39
|
+
return response_201
|
|
40
|
+
if response.status_code == 422:
|
|
41
|
+
response_422 = HTTPValidationError.from_dict(response.json())
|
|
42
|
+
|
|
43
|
+
return response_422
|
|
44
|
+
if client.raise_on_unexpected_status:
|
|
45
|
+
raise errors.UnexpectedStatus(response.status_code, response.content)
|
|
46
|
+
else:
|
|
47
|
+
return None
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
def _build_response(
|
|
51
|
+
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
52
|
+
) -> Response[Union[HTTPValidationError, WorkflowChainResponse]]:
|
|
53
|
+
return Response(
|
|
54
|
+
status_code=HTTPStatus(response.status_code),
|
|
55
|
+
content=response.content,
|
|
56
|
+
headers=response.headers,
|
|
57
|
+
parsed=_parse_response(client=client, response=response),
|
|
58
|
+
)
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
def sync_detailed(
|
|
62
|
+
*,
|
|
63
|
+
client: AuthenticatedClient,
|
|
64
|
+
body: WorkflowChainCreate,
|
|
65
|
+
) -> Response[Union[HTTPValidationError, WorkflowChainResponse]]:
|
|
66
|
+
"""Create Run Chain
|
|
67
|
+
|
|
68
|
+
Create a multi-step chain that runs on a single reserved session/machine.
|
|
69
|
+
|
|
70
|
+
- Starts a new session unless session_id is provided (then runs on existing session).
|
|
71
|
+
- Accepts shared_inputs/sensitive/file_inputs and per-step file_inputs.
|
|
72
|
+
- machine_id > pool_id when starting a new session; both ignored if session_id provided.
|
|
73
|
+
|
|
74
|
+
Args:
|
|
75
|
+
body (WorkflowChainCreate): Request to create and run a multi-step chain on a single
|
|
76
|
+
reserved session/machine
|
|
77
|
+
|
|
78
|
+
Raises:
|
|
79
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
80
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
81
|
+
|
|
82
|
+
Returns:
|
|
83
|
+
Response[Union[HTTPValidationError, WorkflowChainResponse]]
|
|
84
|
+
"""
|
|
85
|
+
|
|
86
|
+
kwargs = _get_kwargs(
|
|
87
|
+
body=body,
|
|
88
|
+
)
|
|
89
|
+
|
|
90
|
+
response = client.get_httpx_client().request(
|
|
91
|
+
**kwargs,
|
|
92
|
+
)
|
|
93
|
+
|
|
94
|
+
return _build_response(client=client, response=response)
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
def sync(
|
|
98
|
+
*,
|
|
99
|
+
client: AuthenticatedClient,
|
|
100
|
+
body: WorkflowChainCreate,
|
|
101
|
+
) -> Optional[Union[HTTPValidationError, WorkflowChainResponse]]:
|
|
102
|
+
"""Create Run Chain
|
|
103
|
+
|
|
104
|
+
Create a multi-step chain that runs on a single reserved session/machine.
|
|
105
|
+
|
|
106
|
+
- Starts a new session unless session_id is provided (then runs on existing session).
|
|
107
|
+
- Accepts shared_inputs/sensitive/file_inputs and per-step file_inputs.
|
|
108
|
+
- machine_id > pool_id when starting a new session; both ignored if session_id provided.
|
|
109
|
+
|
|
110
|
+
Args:
|
|
111
|
+
body (WorkflowChainCreate): Request to create and run a multi-step chain on a single
|
|
112
|
+
reserved session/machine
|
|
113
|
+
|
|
114
|
+
Raises:
|
|
115
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
116
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
117
|
+
|
|
118
|
+
Returns:
|
|
119
|
+
Union[HTTPValidationError, WorkflowChainResponse]
|
|
120
|
+
"""
|
|
121
|
+
|
|
122
|
+
return sync_detailed(
|
|
123
|
+
client=client,
|
|
124
|
+
body=body,
|
|
125
|
+
).parsed
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
async def asyncio_detailed(
|
|
129
|
+
*,
|
|
130
|
+
client: AuthenticatedClient,
|
|
131
|
+
body: WorkflowChainCreate,
|
|
132
|
+
) -> Response[Union[HTTPValidationError, WorkflowChainResponse]]:
|
|
133
|
+
"""Create Run Chain
|
|
134
|
+
|
|
135
|
+
Create a multi-step chain that runs on a single reserved session/machine.
|
|
136
|
+
|
|
137
|
+
- Starts a new session unless session_id is provided (then runs on existing session).
|
|
138
|
+
- Accepts shared_inputs/sensitive/file_inputs and per-step file_inputs.
|
|
139
|
+
- machine_id > pool_id when starting a new session; both ignored if session_id provided.
|
|
140
|
+
|
|
141
|
+
Args:
|
|
142
|
+
body (WorkflowChainCreate): Request to create and run a multi-step chain on a single
|
|
143
|
+
reserved session/machine
|
|
144
|
+
|
|
145
|
+
Raises:
|
|
146
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
147
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
148
|
+
|
|
149
|
+
Returns:
|
|
150
|
+
Response[Union[HTTPValidationError, WorkflowChainResponse]]
|
|
151
|
+
"""
|
|
152
|
+
|
|
153
|
+
kwargs = _get_kwargs(
|
|
154
|
+
body=body,
|
|
155
|
+
)
|
|
156
|
+
|
|
157
|
+
response = await client.get_async_httpx_client().request(**kwargs)
|
|
158
|
+
|
|
159
|
+
return _build_response(client=client, response=response)
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
async def asyncio(
|
|
163
|
+
*,
|
|
164
|
+
client: AuthenticatedClient,
|
|
165
|
+
body: WorkflowChainCreate,
|
|
166
|
+
) -> Optional[Union[HTTPValidationError, WorkflowChainResponse]]:
|
|
167
|
+
"""Create Run Chain
|
|
168
|
+
|
|
169
|
+
Create a multi-step chain that runs on a single reserved session/machine.
|
|
170
|
+
|
|
171
|
+
- Starts a new session unless session_id is provided (then runs on existing session).
|
|
172
|
+
- Accepts shared_inputs/sensitive/file_inputs and per-step file_inputs.
|
|
173
|
+
- machine_id > pool_id when starting a new session; both ignored if session_id provided.
|
|
174
|
+
|
|
175
|
+
Args:
|
|
176
|
+
body (WorkflowChainCreate): Request to create and run a multi-step chain on a single
|
|
177
|
+
reserved session/machine
|
|
178
|
+
|
|
179
|
+
Raises:
|
|
180
|
+
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
181
|
+
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
182
|
+
|
|
183
|
+
Returns:
|
|
184
|
+
Union[HTTPValidationError, WorkflowChainResponse]
|
|
185
|
+
"""
|
|
186
|
+
|
|
187
|
+
return (
|
|
188
|
+
await asyncio_detailed(
|
|
189
|
+
client=client,
|
|
190
|
+
body=body,
|
|
191
|
+
)
|
|
192
|
+
).parsed
|