windmill-api 1.440.1__py3-none-any.whl → 1.450.1__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/capture/{get_capture.py → delete_capture.py} +12 -14
- windmill_api/api/capture/get_capture_configs.py +186 -0
- windmill_api/api/capture/list_captures.py +241 -0
- windmill_api/api/capture/ping_capture_config.py +121 -0
- windmill_api/api/capture/set_capture_config.py +107 -0
- windmill_api/api/input_/get_input_history.py +15 -0
- windmill_api/api/job/get_slack_approval_payload.py +171 -0
- windmill_api/api/nats_trigger/__init__.py +0 -0
- windmill_api/api/nats_trigger/create_nats_trigger.py +105 -0
- windmill_api/api/{capture/create_capture.py → nats_trigger/delete_nats_trigger.py} +4 -6
- windmill_api/api/nats_trigger/exists_nats_trigger.py +160 -0
- windmill_api/api/nats_trigger/get_nats_trigger.py +166 -0
- windmill_api/api/nats_trigger/list_nats_triggers.py +237 -0
- windmill_api/api/nats_trigger/set_nats_trigger_enabled.py +113 -0
- windmill_api/api/nats_trigger/update_nats_trigger.py +113 -0
- windmill_api/api/postgres_trigger/__init__.py +0 -0
- windmill_api/api/postgres_trigger/create_postgres_publication.py +121 -0
- windmill_api/api/postgres_trigger/create_postgres_replication_slot.py +113 -0
- windmill_api/api/postgres_trigger/create_postgres_trigger.py +105 -0
- windmill_api/api/postgres_trigger/create_template_script.py +105 -0
- windmill_api/api/postgres_trigger/delete_postgres_publication.py +109 -0
- windmill_api/api/postgres_trigger/delete_postgres_replication_slot.py +113 -0
- windmill_api/api/{capture/update_capture.py → postgres_trigger/delete_postgres_trigger.py} +4 -6
- windmill_api/api/postgres_trigger/exists_postgres_trigger.py +160 -0
- windmill_api/api/postgres_trigger/get_postgres_publication.py +180 -0
- windmill_api/api/postgres_trigger/get_postgres_trigger.py +166 -0
- windmill_api/api/postgres_trigger/get_template_script.py +101 -0
- windmill_api/api/postgres_trigger/is_valid_postgres_configuration.py +160 -0
- windmill_api/api/postgres_trigger/list_postgres_publication.py +161 -0
- windmill_api/api/postgres_trigger/list_postgres_replication_slot.py +171 -0
- windmill_api/api/postgres_trigger/list_postgres_triggers.py +237 -0
- windmill_api/api/postgres_trigger/set_postgres_trigger_enabled.py +113 -0
- windmill_api/api/postgres_trigger/update_postgres_publication.py +121 -0
- windmill_api/api/postgres_trigger/update_postgres_trigger.py +113 -0
- windmill_api/api/teams/__init__.py +0 -0
- windmill_api/api/teams/sync_teams.py +131 -0
- windmill_api/api/worker/get_custom_tags.py +50 -4
- windmill_api/api/workspace/change_workspace_color.py +105 -0
- windmill_api/api/workspace/get_threshold_alert.py +152 -0
- windmill_api/api/workspace/set_threshold_alert.py +105 -0
- windmill_api/api/workspace/update_operator_settings.py +109 -0
- windmill_api/models/add_granular_acls_kind.py +2 -0
- windmill_api/models/archive_script_by_hash_response_200.py +8 -0
- windmill_api/models/archive_script_by_hash_response_200_kind.py +1 -0
- windmill_api/models/archive_script_by_hash_response_200_language.py +1 -0
- windmill_api/models/capture.py +94 -0
- windmill_api/models/capture_config.py +95 -0
- windmill_api/models/capture_config_trigger_kind.py +13 -0
- windmill_api/models/capture_trigger_kind.py +13 -0
- windmill_api/models/change_workspace_color_json_body.py +58 -0
- windmill_api/models/channel_info.py +80 -0
- windmill_api/models/completed_job_language.py +1 -0
- windmill_api/models/create_nats_trigger_json_body.py +120 -0
- windmill_api/models/create_postgres_publication_json_body.py +90 -0
- windmill_api/models/create_postgres_publication_json_body_table_to_track_item.py +86 -0
- windmill_api/models/create_postgres_publication_json_body_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/create_postgres_replication_slot_json_body.py +58 -0
- windmill_api/models/create_postgres_trigger_json_body.py +125 -0
- windmill_api/models/create_postgres_trigger_json_body_publication.py +92 -0
- windmill_api/models/create_postgres_trigger_json_body_publication_table_to_track_item.py +86 -0
- windmill_api/models/create_postgres_trigger_json_body_publication_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/create_script_json_body.py +8 -0
- windmill_api/models/create_script_json_body_kind.py +1 -0
- windmill_api/models/create_script_json_body_language.py +1 -0
- windmill_api/models/create_template_script_json_body.py +90 -0
- windmill_api/models/create_template_script_json_body_language.py +8 -0
- windmill_api/models/create_template_script_json_body_relations_item.py +86 -0
- windmill_api/models/create_template_script_json_body_relations_item_table_to_track_item.py +79 -0
- windmill_api/models/create_websocket_trigger_json_body.py +42 -29
- windmill_api/models/create_workspace.py +8 -0
- windmill_api/models/create_workspace_json_body.py +8 -0
- windmill_api/models/delete_completed_job_response_200_language.py +1 -0
- windmill_api/models/delete_postgres_replication_slot_json_body.py +58 -0
- windmill_api/models/delete_script_by_hash_response_200.py +8 -0
- windmill_api/models/delete_script_by_hash_response_200_kind.py +1 -0
- windmill_api/models/delete_script_by_hash_response_200_language.py +1 -0
- windmill_api/models/edit_nats_trigger.py +112 -0
- windmill_api/models/edit_postgres_trigger.py +123 -0
- windmill_api/models/edit_postgres_trigger_publication.py +90 -0
- windmill_api/models/edit_postgres_trigger_publication_table_to_track_item.py +86 -0
- windmill_api/models/edit_postgres_trigger_publication_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/edit_websocket_trigger.py +35 -21
- windmill_api/models/extended_jobs_jobs_item_type_0_language.py +1 -0
- windmill_api/models/extended_jobs_jobs_item_type_1_language.py +1 -0
- windmill_api/models/flow_metadata.py +8 -0
- windmill_api/models/flow_module_value_2_type_0_language.py +1 -0
- windmill_api/models/get_capture_configs_response_200_item.py +95 -0
- windmill_api/models/get_capture_configs_response_200_item_trigger_kind.py +13 -0
- windmill_api/models/get_capture_configs_runnable_kind.py +9 -0
- windmill_api/models/get_completed_job_response_200_language.py +1 -0
- windmill_api/models/get_flow_by_path_response_200.py +8 -0
- windmill_api/models/get_flow_by_path_with_draft_response_200_draft.py +8 -0
- windmill_api/models/get_flow_version_response_200.py +8 -0
- windmill_api/models/get_granular_acls_kind.py +2 -0
- windmill_api/models/get_http_trigger_response_200.py +36 -36
- windmill_api/models/get_job_response_200_type_0_language.py +1 -0
- windmill_api/models/get_job_response_200_type_1_language.py +1 -0
- windmill_api/models/get_nats_trigger_response_200.py +196 -0
- windmill_api/models/get_nats_trigger_response_200_extra_perms.py +44 -0
- windmill_api/models/get_postgres_publication_response_200.py +90 -0
- windmill_api/models/get_postgres_publication_response_200_table_to_track_item.py +86 -0
- windmill_api/models/get_postgres_publication_response_200_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/get_postgres_trigger_response_200.py +178 -0
- windmill_api/models/get_postgres_trigger_response_200_extra_perms.py +44 -0
- windmill_api/models/get_premium_info_response_200.py +7 -0
- windmill_api/models/get_script_by_hash_response_200.py +8 -0
- windmill_api/models/get_script_by_hash_response_200_kind.py +1 -0
- windmill_api/models/get_script_by_hash_response_200_language.py +1 -0
- windmill_api/models/get_script_by_path_response_200.py +8 -0
- windmill_api/models/get_script_by_path_response_200_kind.py +1 -0
- windmill_api/models/get_script_by_path_response_200_language.py +1 -0
- windmill_api/models/get_script_by_path_with_draft_response_200.py +8 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_draft.py +8 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_draft_kind.py +1 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_draft_language.py +1 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_kind.py +1 -0
- windmill_api/models/get_script_by_path_with_draft_response_200_language.py +1 -0
- windmill_api/models/get_settings_response_200.py +27 -0
- windmill_api/models/get_settings_response_200_operator_settings.py +114 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_0_language.py +1 -0
- windmill_api/models/get_suspended_job_flow_response_200_job_type_1_language.py +1 -0
- windmill_api/models/get_threshold_alert_response_200.py +75 -0
- windmill_api/models/get_triggers_count_of_flow_response_200.py +16 -0
- windmill_api/models/get_triggers_count_of_script_response_200.py +16 -0
- windmill_api/models/get_used_triggers_response_200.py +14 -0
- windmill_api/models/get_websocket_trigger_response_200.py +89 -76
- windmill_api/models/http_trigger.py +36 -36
- windmill_api/models/job_type_0_language.py +1 -0
- windmill_api/models/job_type_1_language.py +1 -0
- windmill_api/models/language.py +8 -0
- windmill_api/models/list_captures_response_200_item.py +94 -0
- windmill_api/models/list_captures_response_200_item_trigger_kind.py +13 -0
- windmill_api/models/list_captures_runnable_kind.py +9 -0
- windmill_api/models/list_captures_trigger_kind.py +13 -0
- windmill_api/models/list_completed_jobs_response_200_item_language.py +1 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_language.py +1 -0
- windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_language.py +1 -0
- windmill_api/models/list_http_triggers_response_200_item.py +36 -36
- windmill_api/models/list_jobs_response_200_item_type_0_language.py +1 -0
- windmill_api/models/list_jobs_response_200_item_type_1_language.py +1 -0
- windmill_api/models/list_nats_triggers_response_200_item.py +196 -0
- windmill_api/models/list_nats_triggers_response_200_item_extra_perms.py +44 -0
- windmill_api/models/list_postgres_replication_slot_response_200_item.py +66 -0
- windmill_api/models/list_postgres_triggers_response_200_item.py +182 -0
- windmill_api/models/list_postgres_triggers_response_200_item_extra_perms.py +44 -0
- windmill_api/models/list_queue_response_200_item_language.py +1 -0
- windmill_api/models/list_scripts_response_200_item.py +8 -0
- windmill_api/models/list_scripts_response_200_item_kind.py +1 -0
- windmill_api/models/list_scripts_response_200_item_language.py +1 -0
- windmill_api/models/list_user_workspaces_response_200_workspaces_item.py +39 -1
- windmill_api/models/list_user_workspaces_response_200_workspaces_item_operator_settings.py +114 -0
- windmill_api/models/list_websocket_triggers_response_200_item.py +89 -76
- windmill_api/models/list_workspaces_as_super_admin_response_200_item.py +8 -0
- windmill_api/models/list_workspaces_response_200_item.py +8 -0
- windmill_api/models/nats_trigger.py +196 -0
- windmill_api/models/nats_trigger_extra_perms.py +44 -0
- windmill_api/models/new_nats_trigger.py +120 -0
- windmill_api/models/new_postgres_trigger.py +125 -0
- windmill_api/models/new_postgres_trigger_publication.py +90 -0
- windmill_api/models/new_postgres_trigger_publication_table_to_track_item.py +86 -0
- windmill_api/models/new_postgres_trigger_publication_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/new_script.py +8 -0
- windmill_api/models/new_script_kind.py +1 -0
- windmill_api/models/new_script_language.py +1 -0
- windmill_api/models/new_script_with_draft.py +8 -0
- windmill_api/models/new_script_with_draft_draft.py +8 -0
- windmill_api/models/new_script_with_draft_draft_kind.py +1 -0
- windmill_api/models/new_script_with_draft_draft_language.py +1 -0
- windmill_api/models/new_script_with_draft_kind.py +1 -0
- windmill_api/models/new_script_with_draft_language.py +1 -0
- windmill_api/models/new_websocket_trigger.py +36 -26
- windmill_api/models/open_flow_w_path.py +8 -0
- windmill_api/models/operator_settings.py +114 -0
- windmill_api/models/ping_capture_config_runnable_kind.py +9 -0
- windmill_api/models/ping_capture_config_trigger_kind.py +13 -0
- windmill_api/models/postgres_trigger.py +178 -0
- windmill_api/models/postgres_trigger_extra_perms.py +44 -0
- windmill_api/models/preview_language.py +1 -0
- windmill_api/models/publication_data.py +86 -0
- windmill_api/models/publication_data_table_to_track_item.py +84 -0
- windmill_api/models/publication_data_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/queued_job_language.py +1 -0
- windmill_api/models/raw_script_for_dependencies_language.py +1 -0
- windmill_api/models/raw_script_language.py +1 -0
- windmill_api/models/relations.py +80 -0
- windmill_api/models/relations_table_to_track_item.py +79 -0
- windmill_api/models/remove_granular_acls_kind.py +2 -0
- windmill_api/models/run_raw_script_dependencies_json_body_raw_scripts_item_language.py +1 -0
- windmill_api/models/run_script_preview_json_body_language.py +1 -0
- windmill_api/models/script.py +8 -0
- windmill_api/models/script_kind.py +1 -0
- windmill_api/models/script_lang.py +25 -0
- windmill_api/models/script_language.py +1 -0
- windmill_api/models/set_capture_config_json_body.py +97 -0
- windmill_api/models/set_capture_config_json_body_trigger_config.py +44 -0
- windmill_api/models/set_capture_config_json_body_trigger_kind.py +13 -0
- windmill_api/models/set_nats_trigger_enabled_json_body.py +58 -0
- windmill_api/models/set_postgres_trigger_enabled_json_body.py +58 -0
- windmill_api/models/set_threshold_alert_json_body.py +58 -0
- windmill_api/models/slot.py +58 -0
- windmill_api/models/slot_list.py +66 -0
- windmill_api/models/sync_teams_response_200_item.py +87 -0
- windmill_api/models/sync_teams_response_200_item_channels_item.py +80 -0
- windmill_api/models/table_to_track_item.py +79 -0
- windmill_api/models/team_info.py +87 -0
- windmill_api/models/team_info_channels_item.py +80 -0
- windmill_api/models/template_script.py +90 -0
- windmill_api/models/template_script_language.py +8 -0
- windmill_api/models/template_script_relations_item.py +82 -0
- windmill_api/models/template_script_relations_item_table_to_track_item.py +79 -0
- windmill_api/models/trigger_extra_property.py +95 -0
- windmill_api/models/trigger_extra_property_extra_perms.py +44 -0
- windmill_api/models/triggers_count.py +16 -0
- windmill_api/models/update_nats_trigger_json_body.py +112 -0
- windmill_api/models/update_operator_settings_json_body.py +114 -0
- windmill_api/models/update_postgres_publication_json_body.py +90 -0
- windmill_api/models/update_postgres_publication_json_body_table_to_track_item.py +86 -0
- windmill_api/models/update_postgres_publication_json_body_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/update_postgres_trigger_json_body.py +123 -0
- windmill_api/models/update_postgres_trigger_json_body_publication.py +92 -0
- windmill_api/models/update_postgres_trigger_json_body_publication_table_to_track_item.py +86 -0
- windmill_api/models/update_postgres_trigger_json_body_publication_table_to_track_item_table_to_track_item.py +79 -0
- windmill_api/models/update_websocket_trigger_json_body.py +40 -24
- windmill_api/models/user_workspace_list_workspaces_item.py +37 -1
- windmill_api/models/user_workspace_list_workspaces_item_operator_settings.py +114 -0
- windmill_api/models/websocket_trigger.py +83 -73
- windmill_api/models/workspace.py +8 -0
- {windmill_api-1.440.1.dist-info → windmill_api-1.450.1.dist-info}/METADATA +1 -1
- {windmill_api-1.440.1.dist-info → windmill_api-1.450.1.dist-info}/RECORD +231 -100
- {windmill_api-1.440.1.dist-info → windmill_api-1.450.1.dist-info}/LICENSE +0 -0
- {windmill_api-1.440.1.dist-info → windmill_api-1.450.1.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from typing import Any, Dict, List, Type, TypeVar, Union
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
from dateutil.parser import isoparse
|
|
7
|
+
|
|
8
|
+
from ..models.capture_trigger_kind import CaptureTriggerKind
|
|
9
|
+
from ..types import UNSET, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="Capture")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class Capture:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
trigger_kind (CaptureTriggerKind):
|
|
19
|
+
payload (Any):
|
|
20
|
+
id (int):
|
|
21
|
+
created_at (datetime.datetime):
|
|
22
|
+
trigger_extra (Union[Unset, Any]):
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
trigger_kind: CaptureTriggerKind
|
|
26
|
+
payload: Any
|
|
27
|
+
id: int
|
|
28
|
+
created_at: datetime.datetime
|
|
29
|
+
trigger_extra: Union[Unset, Any] = UNSET
|
|
30
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
31
|
+
|
|
32
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
33
|
+
trigger_kind = self.trigger_kind.value
|
|
34
|
+
|
|
35
|
+
payload = self.payload
|
|
36
|
+
id = self.id
|
|
37
|
+
created_at = self.created_at.isoformat()
|
|
38
|
+
|
|
39
|
+
trigger_extra = self.trigger_extra
|
|
40
|
+
|
|
41
|
+
field_dict: Dict[str, Any] = {}
|
|
42
|
+
field_dict.update(self.additional_properties)
|
|
43
|
+
field_dict.update(
|
|
44
|
+
{
|
|
45
|
+
"trigger_kind": trigger_kind,
|
|
46
|
+
"payload": payload,
|
|
47
|
+
"id": id,
|
|
48
|
+
"created_at": created_at,
|
|
49
|
+
}
|
|
50
|
+
)
|
|
51
|
+
if trigger_extra is not UNSET:
|
|
52
|
+
field_dict["trigger_extra"] = trigger_extra
|
|
53
|
+
|
|
54
|
+
return field_dict
|
|
55
|
+
|
|
56
|
+
@classmethod
|
|
57
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
58
|
+
d = src_dict.copy()
|
|
59
|
+
trigger_kind = CaptureTriggerKind(d.pop("trigger_kind"))
|
|
60
|
+
|
|
61
|
+
payload = d.pop("payload")
|
|
62
|
+
|
|
63
|
+
id = d.pop("id")
|
|
64
|
+
|
|
65
|
+
created_at = isoparse(d.pop("created_at"))
|
|
66
|
+
|
|
67
|
+
trigger_extra = d.pop("trigger_extra", UNSET)
|
|
68
|
+
|
|
69
|
+
capture = cls(
|
|
70
|
+
trigger_kind=trigger_kind,
|
|
71
|
+
payload=payload,
|
|
72
|
+
id=id,
|
|
73
|
+
created_at=created_at,
|
|
74
|
+
trigger_extra=trigger_extra,
|
|
75
|
+
)
|
|
76
|
+
|
|
77
|
+
capture.additional_properties = d
|
|
78
|
+
return capture
|
|
79
|
+
|
|
80
|
+
@property
|
|
81
|
+
def additional_keys(self) -> List[str]:
|
|
82
|
+
return list(self.additional_properties.keys())
|
|
83
|
+
|
|
84
|
+
def __getitem__(self, key: str) -> Any:
|
|
85
|
+
return self.additional_properties[key]
|
|
86
|
+
|
|
87
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
88
|
+
self.additional_properties[key] = value
|
|
89
|
+
|
|
90
|
+
def __delitem__(self, key: str) -> None:
|
|
91
|
+
del self.additional_properties[key]
|
|
92
|
+
|
|
93
|
+
def __contains__(self, key: str) -> bool:
|
|
94
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from typing import Any, Dict, List, Type, TypeVar, Union
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
from dateutil.parser import isoparse
|
|
7
|
+
|
|
8
|
+
from ..models.capture_config_trigger_kind import CaptureConfigTriggerKind
|
|
9
|
+
from ..types import UNSET, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="CaptureConfig")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class CaptureConfig:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
trigger_kind (CaptureConfigTriggerKind):
|
|
19
|
+
trigger_config (Union[Unset, Any]):
|
|
20
|
+
error (Union[Unset, str]):
|
|
21
|
+
last_server_ping (Union[Unset, datetime.datetime]):
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
trigger_kind: CaptureConfigTriggerKind
|
|
25
|
+
trigger_config: Union[Unset, Any] = UNSET
|
|
26
|
+
error: Union[Unset, str] = UNSET
|
|
27
|
+
last_server_ping: Union[Unset, datetime.datetime] = UNSET
|
|
28
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
29
|
+
|
|
30
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
31
|
+
trigger_kind = self.trigger_kind.value
|
|
32
|
+
|
|
33
|
+
trigger_config = self.trigger_config
|
|
34
|
+
error = self.error
|
|
35
|
+
last_server_ping: Union[Unset, str] = UNSET
|
|
36
|
+
if not isinstance(self.last_server_ping, Unset):
|
|
37
|
+
last_server_ping = self.last_server_ping.isoformat()
|
|
38
|
+
|
|
39
|
+
field_dict: Dict[str, Any] = {}
|
|
40
|
+
field_dict.update(self.additional_properties)
|
|
41
|
+
field_dict.update(
|
|
42
|
+
{
|
|
43
|
+
"trigger_kind": trigger_kind,
|
|
44
|
+
}
|
|
45
|
+
)
|
|
46
|
+
if trigger_config is not UNSET:
|
|
47
|
+
field_dict["trigger_config"] = trigger_config
|
|
48
|
+
if error is not UNSET:
|
|
49
|
+
field_dict["error"] = error
|
|
50
|
+
if last_server_ping is not UNSET:
|
|
51
|
+
field_dict["last_server_ping"] = last_server_ping
|
|
52
|
+
|
|
53
|
+
return field_dict
|
|
54
|
+
|
|
55
|
+
@classmethod
|
|
56
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
57
|
+
d = src_dict.copy()
|
|
58
|
+
trigger_kind = CaptureConfigTriggerKind(d.pop("trigger_kind"))
|
|
59
|
+
|
|
60
|
+
trigger_config = d.pop("trigger_config", UNSET)
|
|
61
|
+
|
|
62
|
+
error = d.pop("error", UNSET)
|
|
63
|
+
|
|
64
|
+
_last_server_ping = d.pop("last_server_ping", UNSET)
|
|
65
|
+
last_server_ping: Union[Unset, datetime.datetime]
|
|
66
|
+
if isinstance(_last_server_ping, Unset):
|
|
67
|
+
last_server_ping = UNSET
|
|
68
|
+
else:
|
|
69
|
+
last_server_ping = isoparse(_last_server_ping)
|
|
70
|
+
|
|
71
|
+
capture_config = cls(
|
|
72
|
+
trigger_kind=trigger_kind,
|
|
73
|
+
trigger_config=trigger_config,
|
|
74
|
+
error=error,
|
|
75
|
+
last_server_ping=last_server_ping,
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
capture_config.additional_properties = d
|
|
79
|
+
return capture_config
|
|
80
|
+
|
|
81
|
+
@property
|
|
82
|
+
def additional_keys(self) -> List[str]:
|
|
83
|
+
return list(self.additional_properties.keys())
|
|
84
|
+
|
|
85
|
+
def __getitem__(self, key: str) -> Any:
|
|
86
|
+
return self.additional_properties[key]
|
|
87
|
+
|
|
88
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
89
|
+
self.additional_properties[key] = value
|
|
90
|
+
|
|
91
|
+
def __delitem__(self, key: str) -> None:
|
|
92
|
+
del self.additional_properties[key]
|
|
93
|
+
|
|
94
|
+
def __contains__(self, key: str) -> bool:
|
|
95
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Type, TypeVar, Union
|
|
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="ChangeWorkspaceColorJsonBody")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class ChangeWorkspaceColorJsonBody:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
color (Union[Unset, str]):
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
color: Union[Unset, str] = UNSET
|
|
19
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
20
|
+
|
|
21
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
22
|
+
color = self.color
|
|
23
|
+
|
|
24
|
+
field_dict: Dict[str, Any] = {}
|
|
25
|
+
field_dict.update(self.additional_properties)
|
|
26
|
+
field_dict.update({})
|
|
27
|
+
if color is not UNSET:
|
|
28
|
+
field_dict["color"] = color
|
|
29
|
+
|
|
30
|
+
return field_dict
|
|
31
|
+
|
|
32
|
+
@classmethod
|
|
33
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
34
|
+
d = src_dict.copy()
|
|
35
|
+
color = d.pop("color", UNSET)
|
|
36
|
+
|
|
37
|
+
change_workspace_color_json_body = cls(
|
|
38
|
+
color=color,
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
change_workspace_color_json_body.additional_properties = d
|
|
42
|
+
return change_workspace_color_json_body
|
|
43
|
+
|
|
44
|
+
@property
|
|
45
|
+
def additional_keys(self) -> List[str]:
|
|
46
|
+
return list(self.additional_properties.keys())
|
|
47
|
+
|
|
48
|
+
def __getitem__(self, key: str) -> Any:
|
|
49
|
+
return self.additional_properties[key]
|
|
50
|
+
|
|
51
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
52
|
+
self.additional_properties[key] = value
|
|
53
|
+
|
|
54
|
+
def __delitem__(self, key: str) -> None:
|
|
55
|
+
del self.additional_properties[key]
|
|
56
|
+
|
|
57
|
+
def __contains__(self, key: str) -> bool:
|
|
58
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
from typing import Any, Dict, List, Type, TypeVar
|
|
2
|
+
|
|
3
|
+
from attrs import define as _attrs_define
|
|
4
|
+
from attrs import field as _attrs_field
|
|
5
|
+
|
|
6
|
+
T = TypeVar("T", bound="ChannelInfo")
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@_attrs_define
|
|
10
|
+
class ChannelInfo:
|
|
11
|
+
"""
|
|
12
|
+
Attributes:
|
|
13
|
+
channel_id (str): The unique identifier of the channel Example: 19:channel123@thread.tacv2.
|
|
14
|
+
channel_name (str): The display name of the channel Example: General.
|
|
15
|
+
tenant_id (str): The Microsoft Teams tenant identifier Example: 12345678-1234-1234-1234-123456789012.
|
|
16
|
+
service_url (str): The service URL for the channel Example:
|
|
17
|
+
https://smba.trafficmanager.net/amer/12345678-1234-1234-1234-123456789012/.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
channel_id: str
|
|
21
|
+
channel_name: str
|
|
22
|
+
tenant_id: str
|
|
23
|
+
service_url: str
|
|
24
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
25
|
+
|
|
26
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
27
|
+
channel_id = self.channel_id
|
|
28
|
+
channel_name = self.channel_name
|
|
29
|
+
tenant_id = self.tenant_id
|
|
30
|
+
service_url = self.service_url
|
|
31
|
+
|
|
32
|
+
field_dict: Dict[str, Any] = {}
|
|
33
|
+
field_dict.update(self.additional_properties)
|
|
34
|
+
field_dict.update(
|
|
35
|
+
{
|
|
36
|
+
"channel_id": channel_id,
|
|
37
|
+
"channel_name": channel_name,
|
|
38
|
+
"tenant_id": tenant_id,
|
|
39
|
+
"service_url": service_url,
|
|
40
|
+
}
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
return field_dict
|
|
44
|
+
|
|
45
|
+
@classmethod
|
|
46
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
47
|
+
d = src_dict.copy()
|
|
48
|
+
channel_id = d.pop("channel_id")
|
|
49
|
+
|
|
50
|
+
channel_name = d.pop("channel_name")
|
|
51
|
+
|
|
52
|
+
tenant_id = d.pop("tenant_id")
|
|
53
|
+
|
|
54
|
+
service_url = d.pop("service_url")
|
|
55
|
+
|
|
56
|
+
channel_info = cls(
|
|
57
|
+
channel_id=channel_id,
|
|
58
|
+
channel_name=channel_name,
|
|
59
|
+
tenant_id=tenant_id,
|
|
60
|
+
service_url=service_url,
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
channel_info.additional_properties = d
|
|
64
|
+
return channel_info
|
|
65
|
+
|
|
66
|
+
@property
|
|
67
|
+
def additional_keys(self) -> List[str]:
|
|
68
|
+
return list(self.additional_properties.keys())
|
|
69
|
+
|
|
70
|
+
def __getitem__(self, key: str) -> Any:
|
|
71
|
+
return self.additional_properties[key]
|
|
72
|
+
|
|
73
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
74
|
+
self.additional_properties[key] = value
|
|
75
|
+
|
|
76
|
+
def __delitem__(self, key: str) -> None:
|
|
77
|
+
del self.additional_properties[key]
|
|
78
|
+
|
|
79
|
+
def __contains__(self, key: str) -> bool:
|
|
80
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,120 @@
|
|
|
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="CreateNatsTriggerJsonBody")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class CreateNatsTriggerJsonBody:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
path (str):
|
|
16
|
+
script_path (str):
|
|
17
|
+
is_flow (bool):
|
|
18
|
+
nats_resource_path (str):
|
|
19
|
+
use_jetstream (bool):
|
|
20
|
+
subjects (List[str]):
|
|
21
|
+
stream_name (Union[Unset, str]):
|
|
22
|
+
consumer_name (Union[Unset, str]):
|
|
23
|
+
enabled (Union[Unset, bool]):
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
path: str
|
|
27
|
+
script_path: str
|
|
28
|
+
is_flow: bool
|
|
29
|
+
nats_resource_path: str
|
|
30
|
+
use_jetstream: bool
|
|
31
|
+
subjects: List[str]
|
|
32
|
+
stream_name: Union[Unset, str] = UNSET
|
|
33
|
+
consumer_name: Union[Unset, str] = UNSET
|
|
34
|
+
enabled: Union[Unset, bool] = UNSET
|
|
35
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
36
|
+
|
|
37
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
38
|
+
path = self.path
|
|
39
|
+
script_path = self.script_path
|
|
40
|
+
is_flow = self.is_flow
|
|
41
|
+
nats_resource_path = self.nats_resource_path
|
|
42
|
+
use_jetstream = self.use_jetstream
|
|
43
|
+
subjects = self.subjects
|
|
44
|
+
|
|
45
|
+
stream_name = self.stream_name
|
|
46
|
+
consumer_name = self.consumer_name
|
|
47
|
+
enabled = self.enabled
|
|
48
|
+
|
|
49
|
+
field_dict: Dict[str, Any] = {}
|
|
50
|
+
field_dict.update(self.additional_properties)
|
|
51
|
+
field_dict.update(
|
|
52
|
+
{
|
|
53
|
+
"path": path,
|
|
54
|
+
"script_path": script_path,
|
|
55
|
+
"is_flow": is_flow,
|
|
56
|
+
"nats_resource_path": nats_resource_path,
|
|
57
|
+
"use_jetstream": use_jetstream,
|
|
58
|
+
"subjects": subjects,
|
|
59
|
+
}
|
|
60
|
+
)
|
|
61
|
+
if stream_name is not UNSET:
|
|
62
|
+
field_dict["stream_name"] = stream_name
|
|
63
|
+
if consumer_name is not UNSET:
|
|
64
|
+
field_dict["consumer_name"] = consumer_name
|
|
65
|
+
if enabled is not UNSET:
|
|
66
|
+
field_dict["enabled"] = enabled
|
|
67
|
+
|
|
68
|
+
return field_dict
|
|
69
|
+
|
|
70
|
+
@classmethod
|
|
71
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
72
|
+
d = src_dict.copy()
|
|
73
|
+
path = d.pop("path")
|
|
74
|
+
|
|
75
|
+
script_path = d.pop("script_path")
|
|
76
|
+
|
|
77
|
+
is_flow = d.pop("is_flow")
|
|
78
|
+
|
|
79
|
+
nats_resource_path = d.pop("nats_resource_path")
|
|
80
|
+
|
|
81
|
+
use_jetstream = d.pop("use_jetstream")
|
|
82
|
+
|
|
83
|
+
subjects = cast(List[str], d.pop("subjects"))
|
|
84
|
+
|
|
85
|
+
stream_name = d.pop("stream_name", UNSET)
|
|
86
|
+
|
|
87
|
+
consumer_name = d.pop("consumer_name", UNSET)
|
|
88
|
+
|
|
89
|
+
enabled = d.pop("enabled", UNSET)
|
|
90
|
+
|
|
91
|
+
create_nats_trigger_json_body = cls(
|
|
92
|
+
path=path,
|
|
93
|
+
script_path=script_path,
|
|
94
|
+
is_flow=is_flow,
|
|
95
|
+
nats_resource_path=nats_resource_path,
|
|
96
|
+
use_jetstream=use_jetstream,
|
|
97
|
+
subjects=subjects,
|
|
98
|
+
stream_name=stream_name,
|
|
99
|
+
consumer_name=consumer_name,
|
|
100
|
+
enabled=enabled,
|
|
101
|
+
)
|
|
102
|
+
|
|
103
|
+
create_nats_trigger_json_body.additional_properties = d
|
|
104
|
+
return create_nats_trigger_json_body
|
|
105
|
+
|
|
106
|
+
@property
|
|
107
|
+
def additional_keys(self) -> List[str]:
|
|
108
|
+
return list(self.additional_properties.keys())
|
|
109
|
+
|
|
110
|
+
def __getitem__(self, key: str) -> Any:
|
|
111
|
+
return self.additional_properties[key]
|
|
112
|
+
|
|
113
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
114
|
+
self.additional_properties[key] = value
|
|
115
|
+
|
|
116
|
+
def __delitem__(self, key: str) -> None:
|
|
117
|
+
del self.additional_properties[key]
|
|
118
|
+
|
|
119
|
+
def __contains__(self, key: str) -> bool:
|
|
120
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
from typing import TYPE_CHECKING, 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
|
+
if TYPE_CHECKING:
|
|
9
|
+
from ..models.create_postgres_publication_json_body_table_to_track_item import (
|
|
10
|
+
CreatePostgresPublicationJsonBodyTableToTrackItem,
|
|
11
|
+
)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
T = TypeVar("T", bound="CreatePostgresPublicationJsonBody")
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
@_attrs_define
|
|
18
|
+
class CreatePostgresPublicationJsonBody:
|
|
19
|
+
"""
|
|
20
|
+
Attributes:
|
|
21
|
+
transaction_to_track (List[str]):
|
|
22
|
+
table_to_track (Union[Unset, List['CreatePostgresPublicationJsonBodyTableToTrackItem']]):
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
transaction_to_track: List[str]
|
|
26
|
+
table_to_track: Union[Unset, List["CreatePostgresPublicationJsonBodyTableToTrackItem"]] = UNSET
|
|
27
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
28
|
+
|
|
29
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
30
|
+
transaction_to_track = self.transaction_to_track
|
|
31
|
+
|
|
32
|
+
table_to_track: Union[Unset, List[Dict[str, Any]]] = UNSET
|
|
33
|
+
if not isinstance(self.table_to_track, Unset):
|
|
34
|
+
table_to_track = []
|
|
35
|
+
for table_to_track_item_data in self.table_to_track:
|
|
36
|
+
table_to_track_item = table_to_track_item_data.to_dict()
|
|
37
|
+
|
|
38
|
+
table_to_track.append(table_to_track_item)
|
|
39
|
+
|
|
40
|
+
field_dict: Dict[str, Any] = {}
|
|
41
|
+
field_dict.update(self.additional_properties)
|
|
42
|
+
field_dict.update(
|
|
43
|
+
{
|
|
44
|
+
"transaction_to_track": transaction_to_track,
|
|
45
|
+
}
|
|
46
|
+
)
|
|
47
|
+
if table_to_track is not UNSET:
|
|
48
|
+
field_dict["table_to_track"] = table_to_track
|
|
49
|
+
|
|
50
|
+
return field_dict
|
|
51
|
+
|
|
52
|
+
@classmethod
|
|
53
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
54
|
+
from ..models.create_postgres_publication_json_body_table_to_track_item import (
|
|
55
|
+
CreatePostgresPublicationJsonBodyTableToTrackItem,
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
d = src_dict.copy()
|
|
59
|
+
transaction_to_track = cast(List[str], d.pop("transaction_to_track"))
|
|
60
|
+
|
|
61
|
+
table_to_track = []
|
|
62
|
+
_table_to_track = d.pop("table_to_track", UNSET)
|
|
63
|
+
for table_to_track_item_data in _table_to_track or []:
|
|
64
|
+
table_to_track_item = CreatePostgresPublicationJsonBodyTableToTrackItem.from_dict(table_to_track_item_data)
|
|
65
|
+
|
|
66
|
+
table_to_track.append(table_to_track_item)
|
|
67
|
+
|
|
68
|
+
create_postgres_publication_json_body = cls(
|
|
69
|
+
transaction_to_track=transaction_to_track,
|
|
70
|
+
table_to_track=table_to_track,
|
|
71
|
+
)
|
|
72
|
+
|
|
73
|
+
create_postgres_publication_json_body.additional_properties = d
|
|
74
|
+
return create_postgres_publication_json_body
|
|
75
|
+
|
|
76
|
+
@property
|
|
77
|
+
def additional_keys(self) -> List[str]:
|
|
78
|
+
return list(self.additional_properties.keys())
|
|
79
|
+
|
|
80
|
+
def __getitem__(self, key: str) -> Any:
|
|
81
|
+
return self.additional_properties[key]
|
|
82
|
+
|
|
83
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
84
|
+
self.additional_properties[key] = value
|
|
85
|
+
|
|
86
|
+
def __delitem__(self, key: str) -> None:
|
|
87
|
+
del self.additional_properties[key]
|
|
88
|
+
|
|
89
|
+
def __contains__(self, key: str) -> bool:
|
|
90
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar
|
|
2
|
+
|
|
3
|
+
from attrs import define as _attrs_define
|
|
4
|
+
from attrs import field as _attrs_field
|
|
5
|
+
|
|
6
|
+
if TYPE_CHECKING:
|
|
7
|
+
from ..models.create_postgres_publication_json_body_table_to_track_item_table_to_track_item import (
|
|
8
|
+
CreatePostgresPublicationJsonBodyTableToTrackItemTableToTrackItem,
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T", bound="CreatePostgresPublicationJsonBodyTableToTrackItem")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@_attrs_define
|
|
16
|
+
class CreatePostgresPublicationJsonBodyTableToTrackItem:
|
|
17
|
+
"""
|
|
18
|
+
Attributes:
|
|
19
|
+
schema_name (str):
|
|
20
|
+
table_to_track (List['CreatePostgresPublicationJsonBodyTableToTrackItemTableToTrackItem']):
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
schema_name: str
|
|
24
|
+
table_to_track: List["CreatePostgresPublicationJsonBodyTableToTrackItemTableToTrackItem"]
|
|
25
|
+
additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
26
|
+
|
|
27
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
28
|
+
schema_name = self.schema_name
|
|
29
|
+
table_to_track = []
|
|
30
|
+
for table_to_track_item_data in self.table_to_track:
|
|
31
|
+
table_to_track_item = table_to_track_item_data.to_dict()
|
|
32
|
+
|
|
33
|
+
table_to_track.append(table_to_track_item)
|
|
34
|
+
|
|
35
|
+
field_dict: Dict[str, Any] = {}
|
|
36
|
+
field_dict.update(self.additional_properties)
|
|
37
|
+
field_dict.update(
|
|
38
|
+
{
|
|
39
|
+
"schema_name": schema_name,
|
|
40
|
+
"table_to_track": table_to_track,
|
|
41
|
+
}
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
return field_dict
|
|
45
|
+
|
|
46
|
+
@classmethod
|
|
47
|
+
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
|
48
|
+
from ..models.create_postgres_publication_json_body_table_to_track_item_table_to_track_item import (
|
|
49
|
+
CreatePostgresPublicationJsonBodyTableToTrackItemTableToTrackItem,
|
|
50
|
+
)
|
|
51
|
+
|
|
52
|
+
d = src_dict.copy()
|
|
53
|
+
schema_name = d.pop("schema_name")
|
|
54
|
+
|
|
55
|
+
table_to_track = []
|
|
56
|
+
_table_to_track = d.pop("table_to_track")
|
|
57
|
+
for table_to_track_item_data in _table_to_track:
|
|
58
|
+
table_to_track_item = CreatePostgresPublicationJsonBodyTableToTrackItemTableToTrackItem.from_dict(
|
|
59
|
+
table_to_track_item_data
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
table_to_track.append(table_to_track_item)
|
|
63
|
+
|
|
64
|
+
create_postgres_publication_json_body_table_to_track_item = cls(
|
|
65
|
+
schema_name=schema_name,
|
|
66
|
+
table_to_track=table_to_track,
|
|
67
|
+
)
|
|
68
|
+
|
|
69
|
+
create_postgres_publication_json_body_table_to_track_item.additional_properties = d
|
|
70
|
+
return create_postgres_publication_json_body_table_to_track_item
|
|
71
|
+
|
|
72
|
+
@property
|
|
73
|
+
def additional_keys(self) -> List[str]:
|
|
74
|
+
return list(self.additional_properties.keys())
|
|
75
|
+
|
|
76
|
+
def __getitem__(self, key: str) -> Any:
|
|
77
|
+
return self.additional_properties[key]
|
|
78
|
+
|
|
79
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
80
|
+
self.additional_properties[key] = value
|
|
81
|
+
|
|
82
|
+
def __delitem__(self, key: str) -> None:
|
|
83
|
+
del self.additional_properties[key]
|
|
84
|
+
|
|
85
|
+
def __contains__(self, key: str) -> bool:
|
|
86
|
+
return key in self.additional_properties
|