windmill-api 1.544.1__py3-none-any.whl → 1.545.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 windmill-api might be problematic. Click here for more details.
- windmill_api/api/job/cancel_selection.py +20 -1
- windmill_api/api/{teams/sync_teams.py → job/get_started_at_by_ids.py} +64 -20
- windmill_api/api/workspace/list_available_teams_channels.py +40 -5
- windmill_api/api/workspace/list_available_teams_ids.py +21 -1
- windmill_api/models/completed_job_flow_status_failure_module.py +22 -0
- windmill_api/models/completed_job_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/completed_job_flow_status_modules_item.py +22 -0
- windmill_api/models/completed_job_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/completed_job_flow_status_preprocessor_module.py +22 -0
- windmill_api/models/completed_job_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_failure_module.py +24 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_modules_item.py +24 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_preprocessor_module.py +26 -0
- windmill_api/models/delete_completed_job_response_200_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_failure_module.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_modules_item.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_failure_module.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_modules_item.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/flow_status_failure_module.py +18 -0
- windmill_api/models/flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/flow_status_module.py +18 -0
- windmill_api/models/flow_status_module_flow_jobs_duration.py +71 -0
- windmill_api/models/flow_status_modules_item.py +18 -0
- windmill_api/models/flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/flow_status_preprocessor_module.py +20 -0
- windmill_api/models/flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_completed_job_response_200_flow_status_failure_module.py +24 -0
- windmill_api/models/get_completed_job_response_200_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_completed_job_response_200_flow_status_modules_item.py +24 -0
- windmill_api/models/get_completed_job_response_200_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/get_completed_job_response_200_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/get_completed_job_response_200_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_failure_module.py +24 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_modules_item.py +24 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/get_job_response_200_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_failure_module.py +24 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_modules_item.py +24 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/get_job_response_200_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_updates_response_200_flow_status_failure_module.py +24 -0
- windmill_api/models/get_job_updates_response_200_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_updates_response_200_flow_status_modules_item.py +24 -0
- windmill_api/models/get_job_updates_response_200_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/get_job_updates_response_200_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/get_job_updates_response_200_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_failure_module.py +29 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_failure_module_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_modules_item.py +26 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_modules_item_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_preprocessor_module.py +31 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_failure_module.py +29 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_failure_module_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_modules_item.py +26 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_modules_item_flow_jobs_duration.py +73 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_preprocessor_module.py +31 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/job_type_0_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_0_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_1_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_1_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/job_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_available_teams_channels_response_200_item.py +0 -16
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_failure_module.py +24 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_modules_item.py +24 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_preprocessor_module.py +26 -0
- windmill_api/models/list_completed_jobs_response_200_item_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_failure_module.py +31 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_failure_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_modules_item.py +29 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_modules_item_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_preprocessor_module.py +31 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_failure_module.py +31 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_failure_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_modules_item.py +29 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_modules_item_flow_jobs_duration.py +73 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_preprocessor_module.py +31 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +73 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_failure_module.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_modules_item.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_0_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_failure_module.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_modules_item.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/list_jobs_response_200_item_type_1_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_queue_response_200_item_flow_status_failure_module.py +24 -0
- windmill_api/models/list_queue_response_200_item_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/list_queue_response_200_item_flow_status_modules_item.py +24 -0
- windmill_api/models/list_queue_response_200_item_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/list_queue_response_200_item_flow_status_preprocessor_module.py +24 -0
- windmill_api/models/list_queue_response_200_item_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- windmill_api/models/queued_job_flow_status_failure_module.py +22 -0
- windmill_api/models/queued_job_flow_status_failure_module_flow_jobs_duration.py +71 -0
- windmill_api/models/queued_job_flow_status_modules_item.py +22 -0
- windmill_api/models/queued_job_flow_status_modules_item_flow_jobs_duration.py +71 -0
- windmill_api/models/queued_job_flow_status_preprocessor_module.py +22 -0
- windmill_api/models/queued_job_flow_status_preprocessor_module_flow_jobs_duration.py +71 -0
- {windmill_api-1.544.1.dist-info → windmill_api-1.545.0.dist-info}/METADATA +1 -1
- {windmill_api-1.544.1.dist-info → windmill_api-1.545.0.dist-info}/RECORD +125 -67
- windmill_api/models/sync_teams_response_200_item.py +0 -87
- windmill_api/models/sync_teams_response_200_item_channels_item.py +0 -80
- windmill_api/models/upload_file_part.py +0 -65
- {windmill_api-1.544.1.dist-info → windmill_api-1.545.0.dist-info}/LICENSE +0 -0
- {windmill_api-1.544.1.dist-info → windmill_api-1.545.0.dist-info}/WHEEL +0 -0
|
@@ -5,16 +5,22 @@ import httpx
|
|
|
5
5
|
|
|
6
6
|
from ... import errors
|
|
7
7
|
from ...client import AuthenticatedClient, Client
|
|
8
|
-
from ...types import Response
|
|
8
|
+
from ...types import UNSET, Response, Unset
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
def _get_kwargs(
|
|
12
12
|
workspace: str,
|
|
13
13
|
*,
|
|
14
14
|
json_body: List[str],
|
|
15
|
+
force_cancel: Union[Unset, None, bool] = UNSET,
|
|
15
16
|
) -> Dict[str, Any]:
|
|
16
17
|
pass
|
|
17
18
|
|
|
19
|
+
params: Dict[str, Any] = {}
|
|
20
|
+
params["force_cancel"] = force_cancel
|
|
21
|
+
|
|
22
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
|
23
|
+
|
|
18
24
|
json_json_body = json_body
|
|
19
25
|
|
|
20
26
|
return {
|
|
@@ -23,6 +29,7 @@ def _get_kwargs(
|
|
|
23
29
|
workspace=workspace,
|
|
24
30
|
),
|
|
25
31
|
"json": json_json_body,
|
|
32
|
+
"params": params,
|
|
26
33
|
}
|
|
27
34
|
|
|
28
35
|
|
|
@@ -51,11 +58,13 @@ def sync_detailed(
|
|
|
51
58
|
*,
|
|
52
59
|
client: Union[AuthenticatedClient, Client],
|
|
53
60
|
json_body: List[str],
|
|
61
|
+
force_cancel: Union[Unset, None, bool] = UNSET,
|
|
54
62
|
) -> Response[List[str]]:
|
|
55
63
|
"""cancel jobs based on the given uuids
|
|
56
64
|
|
|
57
65
|
Args:
|
|
58
66
|
workspace (str):
|
|
67
|
+
force_cancel (Union[Unset, None, bool]):
|
|
59
68
|
json_body (List[str]):
|
|
60
69
|
|
|
61
70
|
Raises:
|
|
@@ -69,6 +78,7 @@ def sync_detailed(
|
|
|
69
78
|
kwargs = _get_kwargs(
|
|
70
79
|
workspace=workspace,
|
|
71
80
|
json_body=json_body,
|
|
81
|
+
force_cancel=force_cancel,
|
|
72
82
|
)
|
|
73
83
|
|
|
74
84
|
response = client.get_httpx_client().request(
|
|
@@ -83,11 +93,13 @@ def sync(
|
|
|
83
93
|
*,
|
|
84
94
|
client: Union[AuthenticatedClient, Client],
|
|
85
95
|
json_body: List[str],
|
|
96
|
+
force_cancel: Union[Unset, None, bool] = UNSET,
|
|
86
97
|
) -> Optional[List[str]]:
|
|
87
98
|
"""cancel jobs based on the given uuids
|
|
88
99
|
|
|
89
100
|
Args:
|
|
90
101
|
workspace (str):
|
|
102
|
+
force_cancel (Union[Unset, None, bool]):
|
|
91
103
|
json_body (List[str]):
|
|
92
104
|
|
|
93
105
|
Raises:
|
|
@@ -102,6 +114,7 @@ def sync(
|
|
|
102
114
|
workspace=workspace,
|
|
103
115
|
client=client,
|
|
104
116
|
json_body=json_body,
|
|
117
|
+
force_cancel=force_cancel,
|
|
105
118
|
).parsed
|
|
106
119
|
|
|
107
120
|
|
|
@@ -110,11 +123,13 @@ async def asyncio_detailed(
|
|
|
110
123
|
*,
|
|
111
124
|
client: Union[AuthenticatedClient, Client],
|
|
112
125
|
json_body: List[str],
|
|
126
|
+
force_cancel: Union[Unset, None, bool] = UNSET,
|
|
113
127
|
) -> Response[List[str]]:
|
|
114
128
|
"""cancel jobs based on the given uuids
|
|
115
129
|
|
|
116
130
|
Args:
|
|
117
131
|
workspace (str):
|
|
132
|
+
force_cancel (Union[Unset, None, bool]):
|
|
118
133
|
json_body (List[str]):
|
|
119
134
|
|
|
120
135
|
Raises:
|
|
@@ -128,6 +143,7 @@ async def asyncio_detailed(
|
|
|
128
143
|
kwargs = _get_kwargs(
|
|
129
144
|
workspace=workspace,
|
|
130
145
|
json_body=json_body,
|
|
146
|
+
force_cancel=force_cancel,
|
|
131
147
|
)
|
|
132
148
|
|
|
133
149
|
response = await client.get_async_httpx_client().request(**kwargs)
|
|
@@ -140,11 +156,13 @@ async def asyncio(
|
|
|
140
156
|
*,
|
|
141
157
|
client: Union[AuthenticatedClient, Client],
|
|
142
158
|
json_body: List[str],
|
|
159
|
+
force_cancel: Union[Unset, None, bool] = UNSET,
|
|
143
160
|
) -> Optional[List[str]]:
|
|
144
161
|
"""cancel jobs based on the given uuids
|
|
145
162
|
|
|
146
163
|
Args:
|
|
147
164
|
workspace (str):
|
|
165
|
+
force_cancel (Union[Unset, None, bool]):
|
|
148
166
|
json_body (List[str]):
|
|
149
167
|
|
|
150
168
|
Raises:
|
|
@@ -160,5 +178,6 @@ async def asyncio(
|
|
|
160
178
|
workspace=workspace,
|
|
161
179
|
client=client,
|
|
162
180
|
json_body=json_body,
|
|
181
|
+
force_cancel=force_cancel,
|
|
163
182
|
)
|
|
164
183
|
).parsed
|
|
@@ -1,31 +1,41 @@
|
|
|
1
|
+
import datetime
|
|
1
2
|
from http import HTTPStatus
|
|
2
3
|
from typing import Any, Dict, List, Optional, Union
|
|
3
4
|
|
|
4
5
|
import httpx
|
|
6
|
+
from dateutil.parser import isoparse
|
|
5
7
|
|
|
6
8
|
from ... import errors
|
|
7
9
|
from ...client import AuthenticatedClient, Client
|
|
8
|
-
from ...models.sync_teams_response_200_item import SyncTeamsResponse200Item
|
|
9
10
|
from ...types import Response
|
|
10
11
|
|
|
11
12
|
|
|
12
|
-
def _get_kwargs(
|
|
13
|
+
def _get_kwargs(
|
|
14
|
+
workspace: str,
|
|
15
|
+
*,
|
|
16
|
+
json_body: List[str],
|
|
17
|
+
) -> Dict[str, Any]:
|
|
13
18
|
pass
|
|
14
19
|
|
|
20
|
+
json_json_body = json_body
|
|
21
|
+
|
|
15
22
|
return {
|
|
16
23
|
"method": "post",
|
|
17
|
-
"url": "/
|
|
24
|
+
"url": "/w/{workspace}/jobs_u/queue/get_started_at_by_ids".format(
|
|
25
|
+
workspace=workspace,
|
|
26
|
+
),
|
|
27
|
+
"json": json_json_body,
|
|
18
28
|
}
|
|
19
29
|
|
|
20
30
|
|
|
21
31
|
def _parse_response(
|
|
22
32
|
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
23
|
-
) -> Optional[List[
|
|
33
|
+
) -> Optional[List[datetime.datetime]]:
|
|
24
34
|
if response.status_code == HTTPStatus.OK:
|
|
25
35
|
response_200 = []
|
|
26
36
|
_response_200 = response.json()
|
|
27
37
|
for response_200_item_data in _response_200:
|
|
28
|
-
response_200_item =
|
|
38
|
+
response_200_item = isoparse(response_200_item_data)
|
|
29
39
|
|
|
30
40
|
response_200.append(response_200_item)
|
|
31
41
|
|
|
@@ -38,7 +48,7 @@ def _parse_response(
|
|
|
38
48
|
|
|
39
49
|
def _build_response(
|
|
40
50
|
*, client: Union[AuthenticatedClient, Client], response: httpx.Response
|
|
41
|
-
) -> Response[List[
|
|
51
|
+
) -> Response[List[datetime.datetime]]:
|
|
42
52
|
return Response(
|
|
43
53
|
status_code=HTTPStatus(response.status_code),
|
|
44
54
|
content=response.content,
|
|
@@ -48,20 +58,29 @@ def _build_response(
|
|
|
48
58
|
|
|
49
59
|
|
|
50
60
|
def sync_detailed(
|
|
61
|
+
workspace: str,
|
|
51
62
|
*,
|
|
52
63
|
client: Union[AuthenticatedClient, Client],
|
|
53
|
-
|
|
54
|
-
|
|
64
|
+
json_body: List[str],
|
|
65
|
+
) -> Response[List[datetime.datetime]]:
|
|
66
|
+
"""get started at by ids
|
|
67
|
+
|
|
68
|
+
Args:
|
|
69
|
+
workspace (str):
|
|
70
|
+
json_body (List[str]):
|
|
55
71
|
|
|
56
72
|
Raises:
|
|
57
73
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
58
74
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
59
75
|
|
|
60
76
|
Returns:
|
|
61
|
-
Response[List[
|
|
77
|
+
Response[List[datetime.datetime]]
|
|
62
78
|
"""
|
|
63
79
|
|
|
64
|
-
kwargs = _get_kwargs(
|
|
80
|
+
kwargs = _get_kwargs(
|
|
81
|
+
workspace=workspace,
|
|
82
|
+
json_body=json_body,
|
|
83
|
+
)
|
|
65
84
|
|
|
66
85
|
response = client.get_httpx_client().request(
|
|
67
86
|
**kwargs,
|
|
@@ -71,39 +90,56 @@ def sync_detailed(
|
|
|
71
90
|
|
|
72
91
|
|
|
73
92
|
def sync(
|
|
93
|
+
workspace: str,
|
|
74
94
|
*,
|
|
75
95
|
client: Union[AuthenticatedClient, Client],
|
|
76
|
-
|
|
77
|
-
|
|
96
|
+
json_body: List[str],
|
|
97
|
+
) -> Optional[List[datetime.datetime]]:
|
|
98
|
+
"""get started at by ids
|
|
99
|
+
|
|
100
|
+
Args:
|
|
101
|
+
workspace (str):
|
|
102
|
+
json_body (List[str]):
|
|
78
103
|
|
|
79
104
|
Raises:
|
|
80
105
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
81
106
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
82
107
|
|
|
83
108
|
Returns:
|
|
84
|
-
List[
|
|
109
|
+
List[datetime.datetime]
|
|
85
110
|
"""
|
|
86
111
|
|
|
87
112
|
return sync_detailed(
|
|
113
|
+
workspace=workspace,
|
|
88
114
|
client=client,
|
|
115
|
+
json_body=json_body,
|
|
89
116
|
).parsed
|
|
90
117
|
|
|
91
118
|
|
|
92
119
|
async def asyncio_detailed(
|
|
120
|
+
workspace: str,
|
|
93
121
|
*,
|
|
94
122
|
client: Union[AuthenticatedClient, Client],
|
|
95
|
-
|
|
96
|
-
|
|
123
|
+
json_body: List[str],
|
|
124
|
+
) -> Response[List[datetime.datetime]]:
|
|
125
|
+
"""get started at by ids
|
|
126
|
+
|
|
127
|
+
Args:
|
|
128
|
+
workspace (str):
|
|
129
|
+
json_body (List[str]):
|
|
97
130
|
|
|
98
131
|
Raises:
|
|
99
132
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
100
133
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
101
134
|
|
|
102
135
|
Returns:
|
|
103
|
-
Response[List[
|
|
136
|
+
Response[List[datetime.datetime]]
|
|
104
137
|
"""
|
|
105
138
|
|
|
106
|
-
kwargs = _get_kwargs(
|
|
139
|
+
kwargs = _get_kwargs(
|
|
140
|
+
workspace=workspace,
|
|
141
|
+
json_body=json_body,
|
|
142
|
+
)
|
|
107
143
|
|
|
108
144
|
response = await client.get_async_httpx_client().request(**kwargs)
|
|
109
145
|
|
|
@@ -111,21 +147,29 @@ async def asyncio_detailed(
|
|
|
111
147
|
|
|
112
148
|
|
|
113
149
|
async def asyncio(
|
|
150
|
+
workspace: str,
|
|
114
151
|
*,
|
|
115
152
|
client: Union[AuthenticatedClient, Client],
|
|
116
|
-
|
|
117
|
-
|
|
153
|
+
json_body: List[str],
|
|
154
|
+
) -> Optional[List[datetime.datetime]]:
|
|
155
|
+
"""get started at by ids
|
|
156
|
+
|
|
157
|
+
Args:
|
|
158
|
+
workspace (str):
|
|
159
|
+
json_body (List[str]):
|
|
118
160
|
|
|
119
161
|
Raises:
|
|
120
162
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
121
163
|
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
|
122
164
|
|
|
123
165
|
Returns:
|
|
124
|
-
List[
|
|
166
|
+
List[datetime.datetime]
|
|
125
167
|
"""
|
|
126
168
|
|
|
127
169
|
return (
|
|
128
170
|
await asyncio_detailed(
|
|
171
|
+
workspace=workspace,
|
|
129
172
|
client=client,
|
|
173
|
+
json_body=json_body,
|
|
130
174
|
)
|
|
131
175
|
).parsed
|
|
@@ -6,19 +6,30 @@ import httpx
|
|
|
6
6
|
from ... import errors
|
|
7
7
|
from ...client import AuthenticatedClient, Client
|
|
8
8
|
from ...models.list_available_teams_channels_response_200_item import ListAvailableTeamsChannelsResponse200Item
|
|
9
|
-
from ...types import Response
|
|
9
|
+
from ...types import UNSET, Response, Unset
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
def _get_kwargs(
|
|
13
13
|
workspace: str,
|
|
14
|
+
*,
|
|
15
|
+
team_id: str,
|
|
16
|
+
search: Union[Unset, None, str] = UNSET,
|
|
14
17
|
) -> Dict[str, Any]:
|
|
15
18
|
pass
|
|
16
19
|
|
|
20
|
+
params: Dict[str, Any] = {}
|
|
21
|
+
params["team_id"] = team_id
|
|
22
|
+
|
|
23
|
+
params["search"] = search
|
|
24
|
+
|
|
25
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
|
26
|
+
|
|
17
27
|
return {
|
|
18
28
|
"method": "get",
|
|
19
29
|
"url": "/w/{workspace}/workspaces/available_teams_channels".format(
|
|
20
30
|
workspace=workspace,
|
|
21
31
|
),
|
|
32
|
+
"params": params,
|
|
22
33
|
}
|
|
23
34
|
|
|
24
35
|
|
|
@@ -55,11 +66,15 @@ def sync_detailed(
|
|
|
55
66
|
workspace: str,
|
|
56
67
|
*,
|
|
57
68
|
client: Union[AuthenticatedClient, Client],
|
|
69
|
+
team_id: str,
|
|
70
|
+
search: Union[Unset, None, str] = UNSET,
|
|
58
71
|
) -> Response[List["ListAvailableTeamsChannelsResponse200Item"]]:
|
|
59
|
-
"""list available
|
|
72
|
+
"""list available channels for a specific team
|
|
60
73
|
|
|
61
74
|
Args:
|
|
62
75
|
workspace (str):
|
|
76
|
+
team_id (str):
|
|
77
|
+
search (Union[Unset, None, str]):
|
|
63
78
|
|
|
64
79
|
Raises:
|
|
65
80
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
@@ -71,6 +86,8 @@ def sync_detailed(
|
|
|
71
86
|
|
|
72
87
|
kwargs = _get_kwargs(
|
|
73
88
|
workspace=workspace,
|
|
89
|
+
team_id=team_id,
|
|
90
|
+
search=search,
|
|
74
91
|
)
|
|
75
92
|
|
|
76
93
|
response = client.get_httpx_client().request(
|
|
@@ -84,11 +101,15 @@ def sync(
|
|
|
84
101
|
workspace: str,
|
|
85
102
|
*,
|
|
86
103
|
client: Union[AuthenticatedClient, Client],
|
|
104
|
+
team_id: str,
|
|
105
|
+
search: Union[Unset, None, str] = UNSET,
|
|
87
106
|
) -> Optional[List["ListAvailableTeamsChannelsResponse200Item"]]:
|
|
88
|
-
"""list available
|
|
107
|
+
"""list available channels for a specific team
|
|
89
108
|
|
|
90
109
|
Args:
|
|
91
110
|
workspace (str):
|
|
111
|
+
team_id (str):
|
|
112
|
+
search (Union[Unset, None, str]):
|
|
92
113
|
|
|
93
114
|
Raises:
|
|
94
115
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
@@ -101,6 +122,8 @@ def sync(
|
|
|
101
122
|
return sync_detailed(
|
|
102
123
|
workspace=workspace,
|
|
103
124
|
client=client,
|
|
125
|
+
team_id=team_id,
|
|
126
|
+
search=search,
|
|
104
127
|
).parsed
|
|
105
128
|
|
|
106
129
|
|
|
@@ -108,11 +131,15 @@ async def asyncio_detailed(
|
|
|
108
131
|
workspace: str,
|
|
109
132
|
*,
|
|
110
133
|
client: Union[AuthenticatedClient, Client],
|
|
134
|
+
team_id: str,
|
|
135
|
+
search: Union[Unset, None, str] = UNSET,
|
|
111
136
|
) -> Response[List["ListAvailableTeamsChannelsResponse200Item"]]:
|
|
112
|
-
"""list available
|
|
137
|
+
"""list available channels for a specific team
|
|
113
138
|
|
|
114
139
|
Args:
|
|
115
140
|
workspace (str):
|
|
141
|
+
team_id (str):
|
|
142
|
+
search (Union[Unset, None, str]):
|
|
116
143
|
|
|
117
144
|
Raises:
|
|
118
145
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
@@ -124,6 +151,8 @@ async def asyncio_detailed(
|
|
|
124
151
|
|
|
125
152
|
kwargs = _get_kwargs(
|
|
126
153
|
workspace=workspace,
|
|
154
|
+
team_id=team_id,
|
|
155
|
+
search=search,
|
|
127
156
|
)
|
|
128
157
|
|
|
129
158
|
response = await client.get_async_httpx_client().request(**kwargs)
|
|
@@ -135,11 +164,15 @@ async def asyncio(
|
|
|
135
164
|
workspace: str,
|
|
136
165
|
*,
|
|
137
166
|
client: Union[AuthenticatedClient, Client],
|
|
167
|
+
team_id: str,
|
|
168
|
+
search: Union[Unset, None, str] = UNSET,
|
|
138
169
|
) -> Optional[List["ListAvailableTeamsChannelsResponse200Item"]]:
|
|
139
|
-
"""list available
|
|
170
|
+
"""list available channels for a specific team
|
|
140
171
|
|
|
141
172
|
Args:
|
|
142
173
|
workspace (str):
|
|
174
|
+
team_id (str):
|
|
175
|
+
search (Union[Unset, None, str]):
|
|
143
176
|
|
|
144
177
|
Raises:
|
|
145
178
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
@@ -153,5 +186,7 @@ async def asyncio(
|
|
|
153
186
|
await asyncio_detailed(
|
|
154
187
|
workspace=workspace,
|
|
155
188
|
client=client,
|
|
189
|
+
team_id=team_id,
|
|
190
|
+
search=search,
|
|
156
191
|
)
|
|
157
192
|
).parsed
|
|
@@ -6,19 +6,27 @@ import httpx
|
|
|
6
6
|
from ... import errors
|
|
7
7
|
from ...client import AuthenticatedClient, Client
|
|
8
8
|
from ...models.list_available_teams_ids_response_200_item import ListAvailableTeamsIdsResponse200Item
|
|
9
|
-
from ...types import Response
|
|
9
|
+
from ...types import UNSET, Response, Unset
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
def _get_kwargs(
|
|
13
13
|
workspace: str,
|
|
14
|
+
*,
|
|
15
|
+
search: Union[Unset, None, str] = UNSET,
|
|
14
16
|
) -> Dict[str, Any]:
|
|
15
17
|
pass
|
|
16
18
|
|
|
19
|
+
params: Dict[str, Any] = {}
|
|
20
|
+
params["search"] = search
|
|
21
|
+
|
|
22
|
+
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
|
23
|
+
|
|
17
24
|
return {
|
|
18
25
|
"method": "get",
|
|
19
26
|
"url": "/w/{workspace}/workspaces/available_teams_ids".format(
|
|
20
27
|
workspace=workspace,
|
|
21
28
|
),
|
|
29
|
+
"params": params,
|
|
22
30
|
}
|
|
23
31
|
|
|
24
32
|
|
|
@@ -55,11 +63,13 @@ def sync_detailed(
|
|
|
55
63
|
workspace: str,
|
|
56
64
|
*,
|
|
57
65
|
client: Union[AuthenticatedClient, Client],
|
|
66
|
+
search: Union[Unset, None, str] = UNSET,
|
|
58
67
|
) -> Response[List["ListAvailableTeamsIdsResponse200Item"]]:
|
|
59
68
|
"""list available teams ids
|
|
60
69
|
|
|
61
70
|
Args:
|
|
62
71
|
workspace (str):
|
|
72
|
+
search (Union[Unset, None, str]):
|
|
63
73
|
|
|
64
74
|
Raises:
|
|
65
75
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
@@ -71,6 +81,7 @@ def sync_detailed(
|
|
|
71
81
|
|
|
72
82
|
kwargs = _get_kwargs(
|
|
73
83
|
workspace=workspace,
|
|
84
|
+
search=search,
|
|
74
85
|
)
|
|
75
86
|
|
|
76
87
|
response = client.get_httpx_client().request(
|
|
@@ -84,11 +95,13 @@ def sync(
|
|
|
84
95
|
workspace: str,
|
|
85
96
|
*,
|
|
86
97
|
client: Union[AuthenticatedClient, Client],
|
|
98
|
+
search: Union[Unset, None, str] = UNSET,
|
|
87
99
|
) -> Optional[List["ListAvailableTeamsIdsResponse200Item"]]:
|
|
88
100
|
"""list available teams ids
|
|
89
101
|
|
|
90
102
|
Args:
|
|
91
103
|
workspace (str):
|
|
104
|
+
search (Union[Unset, None, str]):
|
|
92
105
|
|
|
93
106
|
Raises:
|
|
94
107
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
@@ -101,6 +114,7 @@ def sync(
|
|
|
101
114
|
return sync_detailed(
|
|
102
115
|
workspace=workspace,
|
|
103
116
|
client=client,
|
|
117
|
+
search=search,
|
|
104
118
|
).parsed
|
|
105
119
|
|
|
106
120
|
|
|
@@ -108,11 +122,13 @@ async def asyncio_detailed(
|
|
|
108
122
|
workspace: str,
|
|
109
123
|
*,
|
|
110
124
|
client: Union[AuthenticatedClient, Client],
|
|
125
|
+
search: Union[Unset, None, str] = UNSET,
|
|
111
126
|
) -> Response[List["ListAvailableTeamsIdsResponse200Item"]]:
|
|
112
127
|
"""list available teams ids
|
|
113
128
|
|
|
114
129
|
Args:
|
|
115
130
|
workspace (str):
|
|
131
|
+
search (Union[Unset, None, str]):
|
|
116
132
|
|
|
117
133
|
Raises:
|
|
118
134
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
@@ -124,6 +140,7 @@ async def asyncio_detailed(
|
|
|
124
140
|
|
|
125
141
|
kwargs = _get_kwargs(
|
|
126
142
|
workspace=workspace,
|
|
143
|
+
search=search,
|
|
127
144
|
)
|
|
128
145
|
|
|
129
146
|
response = await client.get_async_httpx_client().request(**kwargs)
|
|
@@ -135,11 +152,13 @@ async def asyncio(
|
|
|
135
152
|
workspace: str,
|
|
136
153
|
*,
|
|
137
154
|
client: Union[AuthenticatedClient, Client],
|
|
155
|
+
search: Union[Unset, None, str] = UNSET,
|
|
138
156
|
) -> Optional[List["ListAvailableTeamsIdsResponse200Item"]]:
|
|
139
157
|
"""list available teams ids
|
|
140
158
|
|
|
141
159
|
Args:
|
|
142
160
|
workspace (str):
|
|
161
|
+
search (Union[Unset, None, str]):
|
|
143
162
|
|
|
144
163
|
Raises:
|
|
145
164
|
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
|
@@ -153,5 +172,6 @@ async def asyncio(
|
|
|
153
172
|
await asyncio_detailed(
|
|
154
173
|
workspace=workspace,
|
|
155
174
|
client=client,
|
|
175
|
+
search=search,
|
|
156
176
|
)
|
|
157
177
|
).parsed
|
|
@@ -20,6 +20,9 @@ if TYPE_CHECKING:
|
|
|
20
20
|
CompletedJobFlowStatusFailureModuleBranchChosen,
|
|
21
21
|
)
|
|
22
22
|
from ..models.completed_job_flow_status_failure_module_branchall import CompletedJobFlowStatusFailureModuleBranchall
|
|
23
|
+
from ..models.completed_job_flow_status_failure_module_flow_jobs_duration import (
|
|
24
|
+
CompletedJobFlowStatusFailureModuleFlowJobsDuration,
|
|
25
|
+
)
|
|
23
26
|
from ..models.completed_job_flow_status_failure_module_iterator import CompletedJobFlowStatusFailureModuleIterator
|
|
24
27
|
|
|
25
28
|
|
|
@@ -38,6 +41,7 @@ class CompletedJobFlowStatusFailureModule:
|
|
|
38
41
|
iterator (Union[Unset, CompletedJobFlowStatusFailureModuleIterator]):
|
|
39
42
|
flow_jobs (Union[Unset, List[str]]):
|
|
40
43
|
flow_jobs_success (Union[Unset, List[bool]]):
|
|
44
|
+
flow_jobs_duration (Union[Unset, CompletedJobFlowStatusFailureModuleFlowJobsDuration]):
|
|
41
45
|
branch_chosen (Union[Unset, CompletedJobFlowStatusFailureModuleBranchChosen]):
|
|
42
46
|
branchall (Union[Unset, CompletedJobFlowStatusFailureModuleBranchall]):
|
|
43
47
|
approvers (Union[Unset, List['CompletedJobFlowStatusFailureModuleApproversItem']]):
|
|
@@ -57,6 +61,7 @@ class CompletedJobFlowStatusFailureModule:
|
|
|
57
61
|
iterator: Union[Unset, "CompletedJobFlowStatusFailureModuleIterator"] = UNSET
|
|
58
62
|
flow_jobs: Union[Unset, List[str]] = UNSET
|
|
59
63
|
flow_jobs_success: Union[Unset, List[bool]] = UNSET
|
|
64
|
+
flow_jobs_duration: Union[Unset, "CompletedJobFlowStatusFailureModuleFlowJobsDuration"] = UNSET
|
|
60
65
|
branch_chosen: Union[Unset, "CompletedJobFlowStatusFailureModuleBranchChosen"] = UNSET
|
|
61
66
|
branchall: Union[Unset, "CompletedJobFlowStatusFailureModuleBranchall"] = UNSET
|
|
62
67
|
approvers: Union[Unset, List["CompletedJobFlowStatusFailureModuleApproversItem"]] = UNSET
|
|
@@ -98,6 +103,10 @@ class CompletedJobFlowStatusFailureModule:
|
|
|
98
103
|
if not isinstance(self.flow_jobs_success, Unset):
|
|
99
104
|
flow_jobs_success = self.flow_jobs_success
|
|
100
105
|
|
|
106
|
+
flow_jobs_duration: Union[Unset, Dict[str, Any]] = UNSET
|
|
107
|
+
if not isinstance(self.flow_jobs_duration, Unset):
|
|
108
|
+
flow_jobs_duration = self.flow_jobs_duration.to_dict()
|
|
109
|
+
|
|
101
110
|
branch_chosen: Union[Unset, Dict[str, Any]] = UNSET
|
|
102
111
|
if not isinstance(self.branch_chosen, Unset):
|
|
103
112
|
branch_chosen = self.branch_chosen.to_dict()
|
|
@@ -160,6 +169,8 @@ class CompletedJobFlowStatusFailureModule:
|
|
|
160
169
|
field_dict["flow_jobs"] = flow_jobs
|
|
161
170
|
if flow_jobs_success is not UNSET:
|
|
162
171
|
field_dict["flow_jobs_success"] = flow_jobs_success
|
|
172
|
+
if flow_jobs_duration is not UNSET:
|
|
173
|
+
field_dict["flow_jobs_duration"] = flow_jobs_duration
|
|
163
174
|
if branch_chosen is not UNSET:
|
|
164
175
|
field_dict["branch_chosen"] = branch_chosen
|
|
165
176
|
if branchall is not UNSET:
|
|
@@ -196,6 +207,9 @@ class CompletedJobFlowStatusFailureModule:
|
|
|
196
207
|
from ..models.completed_job_flow_status_failure_module_branchall import (
|
|
197
208
|
CompletedJobFlowStatusFailureModuleBranchall,
|
|
198
209
|
)
|
|
210
|
+
from ..models.completed_job_flow_status_failure_module_flow_jobs_duration import (
|
|
211
|
+
CompletedJobFlowStatusFailureModuleFlowJobsDuration,
|
|
212
|
+
)
|
|
199
213
|
from ..models.completed_job_flow_status_failure_module_iterator import (
|
|
200
214
|
CompletedJobFlowStatusFailureModuleIterator,
|
|
201
215
|
)
|
|
@@ -222,6 +236,13 @@ class CompletedJobFlowStatusFailureModule:
|
|
|
222
236
|
|
|
223
237
|
flow_jobs_success = cast(List[bool], d.pop("flow_jobs_success", UNSET))
|
|
224
238
|
|
|
239
|
+
_flow_jobs_duration = d.pop("flow_jobs_duration", UNSET)
|
|
240
|
+
flow_jobs_duration: Union[Unset, CompletedJobFlowStatusFailureModuleFlowJobsDuration]
|
|
241
|
+
if isinstance(_flow_jobs_duration, Unset):
|
|
242
|
+
flow_jobs_duration = UNSET
|
|
243
|
+
else:
|
|
244
|
+
flow_jobs_duration = CompletedJobFlowStatusFailureModuleFlowJobsDuration.from_dict(_flow_jobs_duration)
|
|
245
|
+
|
|
225
246
|
_branch_chosen = d.pop("branch_chosen", UNSET)
|
|
226
247
|
branch_chosen: Union[Unset, CompletedJobFlowStatusFailureModuleBranchChosen]
|
|
227
248
|
if isinstance(_branch_chosen, Unset):
|
|
@@ -288,6 +309,7 @@ class CompletedJobFlowStatusFailureModule:
|
|
|
288
309
|
iterator=iterator,
|
|
289
310
|
flow_jobs=flow_jobs,
|
|
290
311
|
flow_jobs_success=flow_jobs_success,
|
|
312
|
+
flow_jobs_duration=flow_jobs_duration,
|
|
291
313
|
branch_chosen=branch_chosen,
|
|
292
314
|
branchall=branchall,
|
|
293
315
|
approvers=approvers,
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Type, TypeVar, Union, cast
|
|
2
|
+
|
|
3
|
+
from attrs import define as _attrs_define
|
|
4
|
+
from attrs import field as _attrs_field
|
|
5
|
+
|
|
6
|
+
from ..types import UNSET, Unset
|
|
7
|
+
|
|
8
|
+
T = TypeVar("T", bound="CompletedJobFlowStatusFailureModuleFlowJobsDuration")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class CompletedJobFlowStatusFailureModuleFlowJobsDuration:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
started_at (Union[Unset, List[str]]):
|
|
16
|
+
duration_ms (Union[Unset, List[int]]):
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
20
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
21
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
22
|
+
|
|
23
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
24
|
+
started_at: Union[Unset, List[str]] = UNSET
|
|
25
|
+
if not isinstance(self.started_at, Unset):
|
|
26
|
+
started_at = self.started_at
|
|
27
|
+
|
|
28
|
+
duration_ms: Union[Unset, List[int]] = UNSET
|
|
29
|
+
if not isinstance(self.duration_ms, Unset):
|
|
30
|
+
duration_ms = self.duration_ms
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update({})
|
|
35
|
+
if started_at is not UNSET:
|
|
36
|
+
field_dict["started_at"] = started_at
|
|
37
|
+
if duration_ms is not UNSET:
|
|
38
|
+
field_dict["duration_ms"] = duration_ms
|
|
39
|
+
|
|
40
|
+
return field_dict
|
|
41
|
+
|
|
42
|
+
@classmethod
|
|
43
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
44
|
+
d = src_dict.copy()
|
|
45
|
+
started_at = cast(List[str], d.pop("started_at", UNSET))
|
|
46
|
+
|
|
47
|
+
duration_ms = cast(List[int], d.pop("duration_ms", UNSET))
|
|
48
|
+
|
|
49
|
+
completed_job_flow_status_failure_module_flow_jobs_duration = cls(
|
|
50
|
+
started_at=started_at,
|
|
51
|
+
duration_ms=duration_ms,
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
completed_job_flow_status_failure_module_flow_jobs_duration.additional_properties = d
|
|
55
|
+
return completed_job_flow_status_failure_module_flow_jobs_duration
|
|
56
|
+
|
|
57
|
+
@property
|
|
58
|
+
def additional_keys(self) -> List[str]:
|
|
59
|
+
return list(self.additional_properties.keys())
|
|
60
|
+
|
|
61
|
+
def __getitem__(self, key: str) -> Any:
|
|
62
|
+
return self.additional_properties[key]
|
|
63
|
+
|
|
64
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
65
|
+
self.additional_properties[key] = value
|
|
66
|
+
|
|
67
|
+
def __delitem__(self, key: str) -> None:
|
|
68
|
+
del self.additional_properties[key]
|
|
69
|
+
|
|
70
|
+
def __contains__(self, key: str) -> bool:
|
|
71
|
+
return key in self.additional_properties
|