cyberdesk 1.2.0__py3-none-any.whl → 1.4.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of cyberdesk might be problematic. Click here for more details.

cyberdesk/__init__.py CHANGED
@@ -21,7 +21,7 @@ from .client import (
21
21
  TrajectoryResponse,
22
22
  )
23
23
 
24
- __version__ = "1.2.0"
24
+ __version__ = "1.4.0"
25
25
 
26
26
  __all__ = [
27
27
  "CyberdeskClient",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cyberdesk
3
- Version: 1.2.0
3
+ Version: 1.4.0
4
4
  Summary: The official Python SDK for Cyberdesk
5
5
  Author-email: Cyberdesk Team <dev@cyberdesk.io>
6
6
  License-Expression: MIT
@@ -1,6 +1,6 @@
1
- cyberdesk/__init__.py,sha256=mE003TRV9gxZuUc9mlXDH9jzufI92wWnjhQEKIvffq4,845
1
+ cyberdesk/__init__.py,sha256=ijBLlFxZPH7XzJ6hFoPLx5al5LX-WKUJ8-LM9DRZcZQ,845
2
2
  cyberdesk/client.py,sha256=f3kT8v_ip5b49IYVoxNRgILd0SVLs_8MH5OiAkGF_IU,27713
3
- cyberdesk-1.2.0.dist-info/licenses/LICENSE,sha256=06Op63FCwGhuUOz__M8IZW5sxd29WxyGC4X5-Uih7IQ,1071
3
+ cyberdesk-1.4.0.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
@@ -72,11 +72,11 @@ openapi_client/cyberdesk_cloud_client/models/health_check_v1_health_get_response
72
72
  openapi_client/cyberdesk_cloud_client/models/http_validation_error.py,sha256=OvQ-alRPbtXXwrQunI1Cp1-BWf7ZkVHkigk-YVMFXN0,2213
73
73
  openapi_client/cyberdesk_cloud_client/models/keyboard_key_request.py,sha256=iZ2uFo_pgZ59xX04hJZpl49dfVLqTchtAYVUWZX8MEM,1475
74
74
  openapi_client/cyberdesk_cloud_client/models/keyboard_type_request.py,sha256=Jgzt14kcl8kfdEJYI3BSnHgxVbFnUIUjBQDF1ly-vIY,1480
75
- openapi_client/cyberdesk_cloud_client/models/machine_create.py,sha256=kl5nlMlT_q5XsAvZo5iJ3BhYRKj76bPL-DQcX3amZ_U,3831
76
- openapi_client/cyberdesk_cloud_client/models/machine_response.py,sha256=1bz4gcACOw3dsYZ-C_zTtrClTvoym3R8tikfh4439IE,5207
75
+ openapi_client/cyberdesk_cloud_client/models/machine_create.py,sha256=WiSBX-7Sx73C0jVHc6dhl4E0pWQNE2RrJ9DZ3gljZQ4,4449
76
+ openapi_client/cyberdesk_cloud_client/models/machine_response.py,sha256=-5NI7IN8W0cAWGqCZLpOVIzU6oKwMnPkiTsWg-vkHVc,5825
77
77
  openapi_client/cyberdesk_cloud_client/models/machine_status.py,sha256=mqKyXgK1wcaA2fI6iTo_tS7AMeuVrRN4yE21d2Lsq1I,200
78
- openapi_client/cyberdesk_cloud_client/models/machine_update.py,sha256=B-Aj3GJTUZxI1Tn7sjnFJPJprpGg5IgLCDqZIfD_PD4,6355
79
- openapi_client/cyberdesk_cloud_client/models/mouse_click_request.py,sha256=BejXDmpRainLcult1SHUxaMfktXPA7rWY-MESEy7tSo,2988
78
+ openapi_client/cyberdesk_cloud_client/models/machine_update.py,sha256=906MebM_AUetLZtTyeoZ40TPMORx4yyZPHmJ_j_tg9A,6973
79
+ openapi_client/cyberdesk_cloud_client/models/mouse_click_request.py,sha256=h7MvQtDqZQVGmxO64qkZ1VLZzjYVJCDZLo-6gT-icRc,3368
80
80
  openapi_client/cyberdesk_cloud_client/models/mouse_move_request.py,sha256=D5sWQwnRvs_IvRocctMeE2czciI-KvuuYh73PLutkPo,1548
81
81
  openapi_client/cyberdesk_cloud_client/models/mouse_position.py,sha256=t8PW-7xKfyHb3LVnZQglSu4Hrlp7W_xmoqS-UYOqG2U,1530
82
82
  openapi_client/cyberdesk_cloud_client/models/paginated_response.py,sha256=P9bt0Koea8rODsULodX8dDAwm-uP2KRE1mRi8AK-VBY,1988
@@ -103,11 +103,11 @@ openapi_client/cyberdesk_cloud_client/models/trajectory_response_trajectory_data
103
103
  openapi_client/cyberdesk_cloud_client/models/trajectory_update.py,sha256=dzqD6zAT-jySWaASRi833gpHmahpkXd_r3LMD3-M8Lw,3568
104
104
  openapi_client/cyberdesk_cloud_client/models/trajectory_update_trajectory_data_type_0_item.py,sha256=3Zt8-nV3ZHjXzL1y5xKQdrHb-7ILG4EjHvtA4xabde4,1355
105
105
  openapi_client/cyberdesk_cloud_client/models/validation_error.py,sha256=ZlK9hbhWr4zSC-dxZh9giERvMiYf9s2k8e1O9Rch_NI,2181
106
- openapi_client/cyberdesk_cloud_client/models/workflow_create.py,sha256=sAFW17R2QPJY_h9HaKFrBP8NonT9OpuwwnSX7vqxdxY,2378
107
- openapi_client/cyberdesk_cloud_client/models/workflow_response.py,sha256=5cUseglGVDybsDvpyxFPBu43Lkcc8ZTGbtfD_gxr9ak,5362
106
+ openapi_client/cyberdesk_cloud_client/models/workflow_create.py,sha256=w1Fd1hmG5IuuqlND6rfHH8YafM09pAcqLThgleagG6E,2996
107
+ openapi_client/cyberdesk_cloud_client/models/workflow_response.py,sha256=fmRdhwuZOJyxFrkyXaSqWkeBsOQd1qa2V8sj8NGAweo,5980
108
108
  openapi_client/cyberdesk_cloud_client/models/workflow_response_old_versions_type_0_item.py,sha256=W9AxxlBlN3rUwLDcoUx5H7MUiYA9UztfX9iEpNGlgAs,1340
109
- openapi_client/cyberdesk_cloud_client/models/workflow_update.py,sha256=Y9DX6Es4mWk-jPKrbumT9qv3Zi1zQWJNVO1o_PVt0rM,2861
110
- cyberdesk-1.2.0.dist-info/METADATA,sha256=sD8uHSGdJGQNNCRk8d4T_OIYDk-7-YwwI8C2mvGcgrM,6051
111
- cyberdesk-1.2.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
112
- cyberdesk-1.2.0.dist-info/top_level.txt,sha256=qTYHZHVHh3VClNPQsiFFA8p8tmJgFGhq9G1COd-pX_A,25
113
- cyberdesk-1.2.0.dist-info/RECORD,,
109
+ openapi_client/cyberdesk_cloud_client/models/workflow_update.py,sha256=aU_nG_GKjsZwQQNI8lCs-iujcW76BZfj8BdWCwPuaHc,3479
110
+ cyberdesk-1.4.0.dist-info/METADATA,sha256=BT4x9jvoGik7IpQqeXKyrXKtkO0F7KvmAHuxUdl7Inc,6051
111
+ cyberdesk-1.4.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
112
+ cyberdesk-1.4.0.dist-info/top_level.txt,sha256=qTYHZHVHh3VClNPQsiFFA8p8tmJgFGhq9G1COd-pX_A,25
113
+ cyberdesk-1.4.0.dist-info/RECORD,,
@@ -16,6 +16,7 @@ class MachineCreate:
16
16
  Attributes:
17
17
  fingerprint (str):
18
18
  unkey_key_id (str):
19
+ name (Union[None, Unset, str]):
19
20
  version (Union[None, Unset, str]):
20
21
  hostname (Union[None, Unset, str]):
21
22
  os_info (Union[None, Unset, str]):
@@ -23,6 +24,7 @@ class MachineCreate:
23
24
 
24
25
  fingerprint: str
25
26
  unkey_key_id: str
27
+ name: Union[None, Unset, str] = UNSET
26
28
  version: Union[None, Unset, str] = UNSET
27
29
  hostname: Union[None, Unset, str] = UNSET
28
30
  os_info: Union[None, Unset, str] = UNSET
@@ -33,6 +35,12 @@ class MachineCreate:
33
35
 
34
36
  unkey_key_id = self.unkey_key_id
35
37
 
38
+ name: Union[None, Unset, str]
39
+ if isinstance(self.name, Unset):
40
+ name = UNSET
41
+ else:
42
+ name = self.name
43
+
36
44
  version: Union[None, Unset, str]
37
45
  if isinstance(self.version, Unset):
38
46
  version = UNSET
@@ -59,6 +67,8 @@ class MachineCreate:
59
67
  "unkey_key_id": unkey_key_id,
60
68
  }
61
69
  )
70
+ if name is not UNSET:
71
+ field_dict["name"] = name
62
72
  if version is not UNSET:
63
73
  field_dict["version"] = version
64
74
  if hostname is not UNSET:
@@ -75,6 +85,15 @@ class MachineCreate:
75
85
 
76
86
  unkey_key_id = d.pop("unkey_key_id")
77
87
 
88
+ def _parse_name(data: object) -> Union[None, Unset, str]:
89
+ if data is None:
90
+ return data
91
+ if isinstance(data, Unset):
92
+ return data
93
+ return cast(Union[None, Unset, str], data)
94
+
95
+ name = _parse_name(d.pop("name", UNSET))
96
+
78
97
  def _parse_version(data: object) -> Union[None, Unset, str]:
79
98
  if data is None:
80
99
  return data
@@ -105,6 +124,7 @@ class MachineCreate:
105
124
  machine_create = cls(
106
125
  fingerprint=fingerprint,
107
126
  unkey_key_id=unkey_key_id,
127
+ name=name,
108
128
  version=version,
109
129
  hostname=hostname,
110
130
  os_info=os_info,
@@ -26,6 +26,7 @@ class MachineResponse:
26
26
  is_available (bool):
27
27
  created_at (datetime.datetime):
28
28
  last_seen (datetime.datetime):
29
+ name (Union[None, Unset, str]):
29
30
  version (Union[None, Unset, str]):
30
31
  hostname (Union[None, Unset, str]):
31
32
  os_info (Union[None, Unset, str]):
@@ -39,6 +40,7 @@ class MachineResponse:
39
40
  is_available: bool
40
41
  created_at: datetime.datetime
41
42
  last_seen: datetime.datetime
43
+ name: Union[None, Unset, str] = UNSET
42
44
  version: Union[None, Unset, str] = UNSET
43
45
  hostname: Union[None, Unset, str] = UNSET
44
46
  os_info: Union[None, Unset, str] = UNSET
@@ -61,6 +63,12 @@ class MachineResponse:
61
63
 
62
64
  last_seen = self.last_seen.isoformat()
63
65
 
66
+ name: Union[None, Unset, str]
67
+ if isinstance(self.name, Unset):
68
+ name = UNSET
69
+ else:
70
+ name = self.name
71
+
64
72
  version: Union[None, Unset, str]
65
73
  if isinstance(self.version, Unset):
66
74
  version = UNSET
@@ -93,6 +101,8 @@ class MachineResponse:
93
101
  "last_seen": last_seen,
94
102
  }
95
103
  )
104
+ if name is not UNSET:
105
+ field_dict["name"] = name
96
106
  if version is not UNSET:
97
107
  field_dict["version"] = version
98
108
  if hostname is not UNSET:
@@ -121,6 +131,15 @@ class MachineResponse:
121
131
 
122
132
  last_seen = isoparse(d.pop("last_seen"))
123
133
 
134
+ def _parse_name(data: object) -> Union[None, Unset, str]:
135
+ if data is None:
136
+ return data
137
+ if isinstance(data, Unset):
138
+ return data
139
+ return cast(Union[None, Unset, str], data)
140
+
141
+ name = _parse_name(d.pop("name", UNSET))
142
+
124
143
  def _parse_version(data: object) -> Union[None, Unset, str]:
125
144
  if data is None:
126
145
  return data
@@ -157,6 +176,7 @@ class MachineResponse:
157
176
  is_available=is_available,
158
177
  created_at=created_at,
159
178
  last_seen=last_seen,
179
+ name=name,
160
180
  version=version,
161
181
  hostname=hostname,
162
182
  os_info=os_info,
@@ -17,6 +17,7 @@ class MachineUpdate:
17
17
  """Schema for updating a machine
18
18
 
19
19
  Attributes:
20
+ name (Union[None, Unset, str]):
20
21
  version (Union[None, Unset, str]):
21
22
  hostname (Union[None, Unset, str]):
22
23
  os_info (Union[None, Unset, str]):
@@ -25,6 +26,7 @@ class MachineUpdate:
25
26
  last_seen (Union[None, Unset, datetime.datetime]):
26
27
  """
27
28
 
29
+ name: Union[None, Unset, str] = UNSET
28
30
  version: Union[None, Unset, str] = UNSET
29
31
  hostname: Union[None, Unset, str] = UNSET
30
32
  os_info: Union[None, Unset, str] = UNSET
@@ -34,6 +36,12 @@ class MachineUpdate:
34
36
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
35
37
 
36
38
  def to_dict(self) -> dict[str, Any]:
39
+ name: Union[None, Unset, str]
40
+ if isinstance(self.name, Unset):
41
+ name = UNSET
42
+ else:
43
+ name = self.name
44
+
37
45
  version: Union[None, Unset, str]
38
46
  if isinstance(self.version, Unset):
39
47
  version = UNSET
@@ -77,6 +85,8 @@ class MachineUpdate:
77
85
  field_dict: dict[str, Any] = {}
78
86
  field_dict.update(self.additional_properties)
79
87
  field_dict.update({})
88
+ if name is not UNSET:
89
+ field_dict["name"] = name
80
90
  if version is not UNSET:
81
91
  field_dict["version"] = version
82
92
  if hostname is not UNSET:
@@ -96,6 +106,15 @@ class MachineUpdate:
96
106
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
97
107
  d = dict(src_dict)
98
108
 
109
+ def _parse_name(data: object) -> Union[None, Unset, str]:
110
+ if data is None:
111
+ return data
112
+ if isinstance(data, Unset):
113
+ return data
114
+ return cast(Union[None, Unset, str], data)
115
+
116
+ name = _parse_name(d.pop("name", UNSET))
117
+
99
118
  def _parse_version(data: object) -> Union[None, Unset, str]:
100
119
  if data is None:
101
120
  return data
@@ -167,6 +186,7 @@ class MachineUpdate:
167
186
  last_seen = _parse_last_seen(d.pop("last_seen", UNSET))
168
187
 
169
188
  machine_update = cls(
189
+ name=name,
170
190
  version=version,
171
191
  hostname=hostname,
172
192
  os_info=os_info,
@@ -16,13 +16,13 @@ class MouseClickRequest:
16
16
  x (Union[None, Unset, int]):
17
17
  y (Union[None, Unset, int]):
18
18
  button (Union[Unset, str]): Default: 'left'.
19
- down (Union[Unset, bool]): Default: False.
19
+ down (Union[None, Unset, bool]):
20
20
  """
21
21
 
22
22
  x: Union[None, Unset, int] = UNSET
23
23
  y: Union[None, Unset, int] = UNSET
24
24
  button: Union[Unset, str] = "left"
25
- down: Union[Unset, bool] = False
25
+ down: Union[None, Unset, bool] = UNSET
26
26
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
27
27
 
28
28
  def to_dict(self) -> dict[str, Any]:
@@ -40,7 +40,11 @@ class MouseClickRequest:
40
40
 
41
41
  button = self.button
42
42
 
43
- down = self.down
43
+ down: Union[None, Unset, bool]
44
+ if isinstance(self.down, Unset):
45
+ down = UNSET
46
+ else:
47
+ down = self.down
44
48
 
45
49
  field_dict: dict[str, Any] = {}
46
50
  field_dict.update(self.additional_properties)
@@ -80,7 +84,14 @@ class MouseClickRequest:
80
84
 
81
85
  button = d.pop("button", UNSET)
82
86
 
83
- down = d.pop("down", UNSET)
87
+ def _parse_down(data: object) -> Union[None, Unset, bool]:
88
+ if data is None:
89
+ return data
90
+ if isinstance(data, Unset):
91
+ return data
92
+ return cast(Union[None, Unset, bool], data)
93
+
94
+ down = _parse_down(d.pop("down", UNSET))
84
95
 
85
96
  mouse_click_request = cls(
86
97
  x=x,
@@ -15,16 +15,24 @@ class WorkflowCreate:
15
15
 
16
16
  Attributes:
17
17
  main_prompt (str):
18
+ name (Union[None, Unset, str]):
18
19
  cleanup_prompt (Union[None, Unset, str]):
19
20
  """
20
21
 
21
22
  main_prompt: str
23
+ name: Union[None, Unset, str] = UNSET
22
24
  cleanup_prompt: Union[None, Unset, str] = UNSET
23
25
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
24
26
 
25
27
  def to_dict(self) -> dict[str, Any]:
26
28
  main_prompt = self.main_prompt
27
29
 
30
+ name: Union[None, Unset, str]
31
+ if isinstance(self.name, Unset):
32
+ name = UNSET
33
+ else:
34
+ name = self.name
35
+
28
36
  cleanup_prompt: Union[None, Unset, str]
29
37
  if isinstance(self.cleanup_prompt, Unset):
30
38
  cleanup_prompt = UNSET
@@ -38,6 +46,8 @@ class WorkflowCreate:
38
46
  "main_prompt": main_prompt,
39
47
  }
40
48
  )
49
+ if name is not UNSET:
50
+ field_dict["name"] = name
41
51
  if cleanup_prompt is not UNSET:
42
52
  field_dict["cleanup_prompt"] = cleanup_prompt
43
53
 
@@ -48,6 +58,15 @@ class WorkflowCreate:
48
58
  d = dict(src_dict)
49
59
  main_prompt = d.pop("main_prompt")
50
60
 
61
+ def _parse_name(data: object) -> Union[None, Unset, str]:
62
+ if data is None:
63
+ return data
64
+ if isinstance(data, Unset):
65
+ return data
66
+ return cast(Union[None, Unset, str], data)
67
+
68
+ name = _parse_name(d.pop("name", UNSET))
69
+
51
70
  def _parse_cleanup_prompt(data: object) -> Union[None, Unset, str]:
52
71
  if data is None:
53
72
  return data
@@ -59,6 +78,7 @@ class WorkflowCreate:
59
78
 
60
79
  workflow_create = cls(
61
80
  main_prompt=main_prompt,
81
+ name=name,
62
82
  cleanup_prompt=cleanup_prompt,
63
83
  )
64
84
 
@@ -26,6 +26,7 @@ class WorkflowResponse:
26
26
  user_id (UUID):
27
27
  created_at (datetime.datetime):
28
28
  updated_at (datetime.datetime):
29
+ name (Union[None, Unset, str]):
29
30
  cleanup_prompt (Union[None, Unset, str]):
30
31
  old_versions (Union[None, Unset, list['WorkflowResponseOldVersionsType0Item']]):
31
32
  """
@@ -35,6 +36,7 @@ class WorkflowResponse:
35
36
  user_id: UUID
36
37
  created_at: datetime.datetime
37
38
  updated_at: datetime.datetime
39
+ name: Union[None, Unset, str] = UNSET
38
40
  cleanup_prompt: Union[None, Unset, str] = UNSET
39
41
  old_versions: Union[None, Unset, list["WorkflowResponseOldVersionsType0Item"]] = UNSET
40
42
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
@@ -50,6 +52,12 @@ class WorkflowResponse:
50
52
 
51
53
  updated_at = self.updated_at.isoformat()
52
54
 
55
+ name: Union[None, Unset, str]
56
+ if isinstance(self.name, Unset):
57
+ name = UNSET
58
+ else:
59
+ name = self.name
60
+
53
61
  cleanup_prompt: Union[None, Unset, str]
54
62
  if isinstance(self.cleanup_prompt, Unset):
55
63
  cleanup_prompt = UNSET
@@ -79,6 +87,8 @@ class WorkflowResponse:
79
87
  "updated_at": updated_at,
80
88
  }
81
89
  )
90
+ if name is not UNSET:
91
+ field_dict["name"] = name
82
92
  if cleanup_prompt is not UNSET:
83
93
  field_dict["cleanup_prompt"] = cleanup_prompt
84
94
  if old_versions is not UNSET:
@@ -101,6 +111,15 @@ class WorkflowResponse:
101
111
 
102
112
  updated_at = isoparse(d.pop("updated_at"))
103
113
 
114
+ def _parse_name(data: object) -> Union[None, Unset, str]:
115
+ if data is None:
116
+ return data
117
+ if isinstance(data, Unset):
118
+ return data
119
+ return cast(Union[None, Unset, str], data)
120
+
121
+ name = _parse_name(d.pop("name", UNSET))
122
+
104
123
  def _parse_cleanup_prompt(data: object) -> Union[None, Unset, str]:
105
124
  if data is None:
106
125
  return data
@@ -140,6 +159,7 @@ class WorkflowResponse:
140
159
  user_id=user_id,
141
160
  created_at=created_at,
142
161
  updated_at=updated_at,
162
+ name=name,
143
163
  cleanup_prompt=cleanup_prompt,
144
164
  old_versions=old_versions,
145
165
  )
@@ -14,15 +14,23 @@ class WorkflowUpdate:
14
14
  """Schema for updating a workflow
15
15
 
16
16
  Attributes:
17
+ name (Union[None, Unset, str]):
17
18
  main_prompt (Union[None, Unset, str]):
18
19
  cleanup_prompt (Union[None, Unset, str]):
19
20
  """
20
21
 
22
+ name: Union[None, Unset, str] = UNSET
21
23
  main_prompt: Union[None, Unset, str] = UNSET
22
24
  cleanup_prompt: Union[None, Unset, str] = UNSET
23
25
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
24
26
 
25
27
  def to_dict(self) -> dict[str, Any]:
28
+ name: Union[None, Unset, str]
29
+ if isinstance(self.name, Unset):
30
+ name = UNSET
31
+ else:
32
+ name = self.name
33
+
26
34
  main_prompt: Union[None, Unset, str]
27
35
  if isinstance(self.main_prompt, Unset):
28
36
  main_prompt = UNSET
@@ -38,6 +46,8 @@ class WorkflowUpdate:
38
46
  field_dict: dict[str, Any] = {}
39
47
  field_dict.update(self.additional_properties)
40
48
  field_dict.update({})
49
+ if name is not UNSET:
50
+ field_dict["name"] = name
41
51
  if main_prompt is not UNSET:
42
52
  field_dict["main_prompt"] = main_prompt
43
53
  if cleanup_prompt is not UNSET:
@@ -49,6 +59,15 @@ class WorkflowUpdate:
49
59
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
50
60
  d = dict(src_dict)
51
61
 
62
+ def _parse_name(data: object) -> Union[None, Unset, str]:
63
+ if data is None:
64
+ return data
65
+ if isinstance(data, Unset):
66
+ return data
67
+ return cast(Union[None, Unset, str], data)
68
+
69
+ name = _parse_name(d.pop("name", UNSET))
70
+
52
71
  def _parse_main_prompt(data: object) -> Union[None, Unset, str]:
53
72
  if data is None:
54
73
  return data
@@ -68,6 +87,7 @@ class WorkflowUpdate:
68
87
  cleanup_prompt = _parse_cleanup_prompt(d.pop("cleanup_prompt", UNSET))
69
88
 
70
89
  workflow_update = cls(
90
+ name=name,
71
91
  main_prompt=main_prompt,
72
92
  cleanup_prompt=cleanup_prompt,
73
93
  )