windmill-api 1.474.0__py3-none-any.whl → 1.475.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.

Files changed (109) hide show
  1. windmill_api/api/folder/exists_folder.py +160 -0
  2. windmill_api/api/helpers/file_download.py +4 -4
  3. windmill_api/api/mqtt_trigger/__init__.py +0 -0
  4. windmill_api/api/mqtt_trigger/create_mqtt_trigger.py +105 -0
  5. windmill_api/api/mqtt_trigger/delete_mqtt_trigger.py +101 -0
  6. windmill_api/api/mqtt_trigger/exists_mqtt_trigger.py +160 -0
  7. windmill_api/api/mqtt_trigger/get_mqtt_trigger.py +166 -0
  8. windmill_api/api/mqtt_trigger/list_mqtt_triggers.py +237 -0
  9. windmill_api/api/mqtt_trigger/set_mqtt_trigger_enabled.py +113 -0
  10. windmill_api/api/mqtt_trigger/test_mqtt_connection.py +105 -0
  11. windmill_api/api/mqtt_trigger/update_mqtt_trigger.py +113 -0
  12. windmill_api/models/add_granular_acls_kind.py +1 -0
  13. windmill_api/models/app_with_last_version_policy.py +22 -0
  14. windmill_api/models/app_with_last_version_policy_allowed_s3_keys_item.py +66 -0
  15. windmill_api/models/app_with_last_version_w_draft_policy.py +26 -0
  16. windmill_api/models/app_with_last_version_w_draft_policy_allowed_s3_keys_item.py +66 -0
  17. windmill_api/models/capture_config_trigger_kind.py +1 -0
  18. windmill_api/models/capture_trigger_kind.py +1 -0
  19. windmill_api/models/create_app_json_body_policy.py +22 -0
  20. windmill_api/models/create_app_json_body_policy_allowed_s3_keys_item.py +66 -0
  21. windmill_api/models/create_mqtt_trigger_json_body.py +177 -0
  22. windmill_api/models/create_mqtt_trigger_json_body_client_version.py +9 -0
  23. windmill_api/models/create_mqtt_trigger_json_body_subscribe_topics_item.py +70 -0
  24. windmill_api/models/create_mqtt_trigger_json_body_subscribe_topics_item_qos.py +10 -0
  25. windmill_api/models/create_mqtt_trigger_json_body_v3_config.py +58 -0
  26. windmill_api/models/create_mqtt_trigger_json_body_v5_config.py +74 -0
  27. windmill_api/models/edit_mqtt_trigger.py +171 -0
  28. windmill_api/models/edit_mqtt_trigger_client_version.py +9 -0
  29. windmill_api/models/edit_mqtt_trigger_subscribe_topics_item.py +68 -0
  30. windmill_api/models/edit_mqtt_trigger_subscribe_topics_item_qos.py +10 -0
  31. windmill_api/models/edit_mqtt_trigger_v3_config.py +58 -0
  32. windmill_api/models/edit_mqtt_trigger_v5_config.py +74 -0
  33. windmill_api/models/edit_workspace_deploy_ui_settings_json_body_deploy_ui_settings_include_type_item.py +1 -0
  34. windmill_api/models/get_app_by_path_response_200_policy.py +26 -0
  35. windmill_api/models/get_app_by_path_response_200_policy_allowed_s3_keys_item.py +66 -0
  36. windmill_api/models/get_app_by_path_with_draft_response_200_policy.py +28 -0
  37. windmill_api/models/get_app_by_path_with_draft_response_200_policy_allowed_s3_keys_item.py +66 -0
  38. windmill_api/models/get_app_by_version_response_200_policy.py +28 -0
  39. windmill_api/models/get_app_by_version_response_200_policy_allowed_s3_keys_item.py +66 -0
  40. windmill_api/models/get_app_lite_by_path_response_200_policy.py +28 -0
  41. windmill_api/models/get_app_lite_by_path_response_200_policy_allowed_s3_keys_item.py +66 -0
  42. windmill_api/models/get_capture_configs_response_200_item_trigger_kind.py +1 -0
  43. windmill_api/models/get_capture_response_200_trigger_kind.py +1 -0
  44. windmill_api/models/get_granular_acls_kind.py +1 -0
  45. windmill_api/models/get_mqtt_trigger_response_200.py +249 -0
  46. windmill_api/models/get_mqtt_trigger_response_200_client_version.py +9 -0
  47. windmill_api/models/get_mqtt_trigger_response_200_extra_perms.py +44 -0
  48. windmill_api/models/get_mqtt_trigger_response_200_subscribe_topics_item.py +70 -0
  49. windmill_api/models/get_mqtt_trigger_response_200_subscribe_topics_item_qos.py +10 -0
  50. windmill_api/models/get_mqtt_trigger_response_200v3_config.py +58 -0
  51. windmill_api/models/get_mqtt_trigger_response_200v5_config.py +74 -0
  52. windmill_api/models/get_public_app_by_custom_path_response_200_policy.py +28 -0
  53. windmill_api/models/get_public_app_by_custom_path_response_200_policy_allowed_s3_keys_item.py +66 -0
  54. windmill_api/models/get_public_app_by_secret_response_200_policy.py +28 -0
  55. windmill_api/models/get_public_app_by_secret_response_200_policy_allowed_s3_keys_item.py +66 -0
  56. windmill_api/models/get_settings_response_200_deploy_ui_include_type_item.py +1 -0
  57. windmill_api/models/get_triggers_count_of_flow_response_200.py +8 -0
  58. windmill_api/models/get_triggers_count_of_script_response_200.py +8 -0
  59. windmill_api/models/get_used_triggers_response_200.py +7 -0
  60. windmill_api/models/list_captures_response_200_item_trigger_kind.py +1 -0
  61. windmill_api/models/list_captures_trigger_kind.py +1 -0
  62. windmill_api/models/list_mqtt_triggers_response_200_item.py +251 -0
  63. windmill_api/models/list_mqtt_triggers_response_200_item_client_version.py +9 -0
  64. windmill_api/models/list_mqtt_triggers_response_200_item_extra_perms.py +44 -0
  65. windmill_api/models/list_mqtt_triggers_response_200_item_subscribe_topics_item.py +70 -0
  66. windmill_api/models/list_mqtt_triggers_response_200_item_subscribe_topics_item_qos.py +10 -0
  67. windmill_api/models/list_mqtt_triggers_response_200_item_v3_config.py +58 -0
  68. windmill_api/models/list_mqtt_triggers_response_200_item_v5_config.py +74 -0
  69. windmill_api/models/mqtt_client_version.py +9 -0
  70. windmill_api/models/mqtt_qo_s.py +10 -0
  71. windmill_api/models/mqtt_subscribe_topic.py +68 -0
  72. windmill_api/models/mqtt_subscribe_topic_qos.py +10 -0
  73. windmill_api/models/mqtt_trigger.py +245 -0
  74. windmill_api/models/mqtt_trigger_client_version.py +9 -0
  75. windmill_api/models/mqtt_trigger_extra_perms.py +44 -0
  76. windmill_api/models/mqtt_trigger_subscribe_topics_item.py +68 -0
  77. windmill_api/models/mqtt_trigger_subscribe_topics_item_qos.py +10 -0
  78. windmill_api/models/mqtt_trigger_v3_config.py +58 -0
  79. windmill_api/models/mqtt_trigger_v5_config.py +74 -0
  80. windmill_api/models/mqtt_v3_config.py +58 -0
  81. windmill_api/models/mqtt_v5_config.py +74 -0
  82. windmill_api/models/new_mqtt_trigger.py +173 -0
  83. windmill_api/models/new_mqtt_trigger_client_version.py +9 -0
  84. windmill_api/models/new_mqtt_trigger_subscribe_topics_item.py +68 -0
  85. windmill_api/models/new_mqtt_trigger_subscribe_topics_item_qos.py +10 -0
  86. windmill_api/models/new_mqtt_trigger_v3_config.py +58 -0
  87. windmill_api/models/new_mqtt_trigger_v5_config.py +74 -0
  88. windmill_api/models/ping_capture_config_trigger_kind.py +1 -0
  89. windmill_api/models/policy.py +22 -0
  90. windmill_api/models/policy_allowed_s3_keys_item.py +66 -0
  91. windmill_api/models/remove_granular_acls_kind.py +1 -0
  92. windmill_api/models/set_capture_config_json_body_trigger_kind.py +1 -0
  93. windmill_api/models/set_mqtt_trigger_enabled_json_body.py +58 -0
  94. windmill_api/models/test_mqtt_connection_json_body.py +64 -0
  95. windmill_api/models/test_mqtt_connection_json_body_connection.py +44 -0
  96. windmill_api/models/triggers_count.py +8 -0
  97. windmill_api/models/update_app_json_body_policy.py +22 -0
  98. windmill_api/models/update_app_json_body_policy_allowed_s3_keys_item.py +66 -0
  99. windmill_api/models/update_mqtt_trigger_json_body.py +175 -0
  100. windmill_api/models/update_mqtt_trigger_json_body_client_version.py +9 -0
  101. windmill_api/models/update_mqtt_trigger_json_body_subscribe_topics_item.py +70 -0
  102. windmill_api/models/update_mqtt_trigger_json_body_subscribe_topics_item_qos.py +10 -0
  103. windmill_api/models/update_mqtt_trigger_json_body_v3_config.py +58 -0
  104. windmill_api/models/update_mqtt_trigger_json_body_v5_config.py +74 -0
  105. windmill_api/models/workspace_deploy_ui_settings_include_type_item.py +1 -0
  106. {windmill_api-1.474.0.dist-info → windmill_api-1.475.1.dist-info}/METADATA +1 -1
  107. {windmill_api-1.474.0.dist-info → windmill_api-1.475.1.dist-info}/RECORD +109 -34
  108. {windmill_api-1.474.0.dist-info → windmill_api-1.475.1.dist-info}/LICENSE +0 -0
  109. {windmill_api-1.474.0.dist-info → windmill_api-1.475.1.dist-info}/WHEEL +0 -0
@@ -0,0 +1,44 @@
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="TestMqttConnectionJsonBodyConnection")
7
+
8
+
9
+ @_attrs_define
10
+ class TestMqttConnectionJsonBodyConnection:
11
+ """ """
12
+
13
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
14
+
15
+ def to_dict(self) -> Dict[str, Any]:
16
+ field_dict: Dict[str, Any] = {}
17
+ field_dict.update(self.additional_properties)
18
+ field_dict.update({})
19
+
20
+ return field_dict
21
+
22
+ @classmethod
23
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
24
+ d = src_dict.copy()
25
+ test_mqtt_connection_json_body_connection = cls()
26
+
27
+ test_mqtt_connection_json_body_connection.additional_properties = d
28
+ return test_mqtt_connection_json_body_connection
29
+
30
+ @property
31
+ def additional_keys(self) -> List[str]:
32
+ return list(self.additional_properties.keys())
33
+
34
+ def __getitem__(self, key: str) -> Any:
35
+ return self.additional_properties[key]
36
+
37
+ def __setitem__(self, key: str, value: Any) -> None:
38
+ self.additional_properties[key] = value
39
+
40
+ def __delitem__(self, key: str) -> None:
41
+ del self.additional_properties[key]
42
+
43
+ def __contains__(self, key: str) -> bool:
44
+ return key in self.additional_properties
@@ -25,6 +25,7 @@ class TriggersCount:
25
25
  postgres_count (Union[Unset, float]):
26
26
  kafka_count (Union[Unset, float]):
27
27
  nats_count (Union[Unset, float]):
28
+ mqtt_count (Union[Unset, float]):
28
29
  sqs_count (Union[Unset, float]):
29
30
  """
30
31
 
@@ -37,6 +38,7 @@ class TriggersCount:
37
38
  postgres_count: Union[Unset, float] = UNSET
38
39
  kafka_count: Union[Unset, float] = UNSET
39
40
  nats_count: Union[Unset, float] = UNSET
41
+ mqtt_count: Union[Unset, float] = UNSET
40
42
  sqs_count: Union[Unset, float] = UNSET
41
43
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
42
44
 
@@ -53,6 +55,7 @@ class TriggersCount:
53
55
  postgres_count = self.postgres_count
54
56
  kafka_count = self.kafka_count
55
57
  nats_count = self.nats_count
58
+ mqtt_count = self.mqtt_count
56
59
  sqs_count = self.sqs_count
57
60
 
58
61
  field_dict: Dict[str, Any] = {}
@@ -76,6 +79,8 @@ class TriggersCount:
76
79
  field_dict["kafka_count"] = kafka_count
77
80
  if nats_count is not UNSET:
78
81
  field_dict["nats_count"] = nats_count
82
+ if mqtt_count is not UNSET:
83
+ field_dict["mqtt_count"] = mqtt_count
79
84
  if sqs_count is not UNSET:
80
85
  field_dict["sqs_count"] = sqs_count
81
86
 
@@ -109,6 +114,8 @@ class TriggersCount:
109
114
 
110
115
  nats_count = d.pop("nats_count", UNSET)
111
116
 
117
+ mqtt_count = d.pop("mqtt_count", UNSET)
118
+
112
119
  sqs_count = d.pop("sqs_count", UNSET)
113
120
 
114
121
  triggers_count = cls(
@@ -121,6 +128,7 @@ class TriggersCount:
121
128
  postgres_count=postgres_count,
122
129
  kafka_count=kafka_count,
123
130
  nats_count=nats_count,
131
+ mqtt_count=mqtt_count,
124
132
  sqs_count=sqs_count,
125
133
  )
126
134
 
@@ -7,6 +7,7 @@ from ..models.update_app_json_body_policy_execution_mode import UpdateAppJsonBod
7
7
  from ..types import UNSET, Unset
8
8
 
9
9
  if TYPE_CHECKING:
10
+ from ..models.update_app_json_body_policy_allowed_s3_keys_item import UpdateAppJsonBodyPolicyAllowedS3KeysItem
10
11
  from ..models.update_app_json_body_policy_s3_inputs_item import UpdateAppJsonBodyPolicyS3InputsItem
11
12
  from ..models.update_app_json_body_policy_triggerables import UpdateAppJsonBodyPolicyTriggerables
12
13
  from ..models.update_app_json_body_policy_triggerables_v2 import UpdateAppJsonBodyPolicyTriggerablesV2
@@ -22,6 +23,7 @@ class UpdateAppJsonBodyPolicy:
22
23
  triggerables (Union[Unset, UpdateAppJsonBodyPolicyTriggerables]):
23
24
  triggerables_v2 (Union[Unset, UpdateAppJsonBodyPolicyTriggerablesV2]):
24
25
  s3_inputs (Union[Unset, List['UpdateAppJsonBodyPolicyS3InputsItem']]):
26
+ allowed_s3_keys (Union[Unset, List['UpdateAppJsonBodyPolicyAllowedS3KeysItem']]):
25
27
  execution_mode (Union[Unset, UpdateAppJsonBodyPolicyExecutionMode]):
26
28
  on_behalf_of (Union[Unset, str]):
27
29
  on_behalf_of_email (Union[Unset, str]):
@@ -30,6 +32,7 @@ class UpdateAppJsonBodyPolicy:
30
32
  triggerables: Union[Unset, "UpdateAppJsonBodyPolicyTriggerables"] = UNSET
31
33
  triggerables_v2: Union[Unset, "UpdateAppJsonBodyPolicyTriggerablesV2"] = UNSET
32
34
  s3_inputs: Union[Unset, List["UpdateAppJsonBodyPolicyS3InputsItem"]] = UNSET
35
+ allowed_s3_keys: Union[Unset, List["UpdateAppJsonBodyPolicyAllowedS3KeysItem"]] = UNSET
33
36
  execution_mode: Union[Unset, UpdateAppJsonBodyPolicyExecutionMode] = UNSET
34
37
  on_behalf_of: Union[Unset, str] = UNSET
35
38
  on_behalf_of_email: Union[Unset, str] = UNSET
@@ -52,6 +55,14 @@ class UpdateAppJsonBodyPolicy:
52
55
 
53
56
  s3_inputs.append(s3_inputs_item)
54
57
 
58
+ allowed_s3_keys: Union[Unset, List[Dict[str, Any]]] = UNSET
59
+ if not isinstance(self.allowed_s3_keys, Unset):
60
+ allowed_s3_keys = []
61
+ for allowed_s3_keys_item_data in self.allowed_s3_keys:
62
+ allowed_s3_keys_item = allowed_s3_keys_item_data.to_dict()
63
+
64
+ allowed_s3_keys.append(allowed_s3_keys_item)
65
+
55
66
  execution_mode: Union[Unset, str] = UNSET
56
67
  if not isinstance(self.execution_mode, Unset):
57
68
  execution_mode = self.execution_mode.value
@@ -68,6 +79,8 @@ class UpdateAppJsonBodyPolicy:
68
79
  field_dict["triggerables_v2"] = triggerables_v2
69
80
  if s3_inputs is not UNSET:
70
81
  field_dict["s3_inputs"] = s3_inputs
82
+ if allowed_s3_keys is not UNSET:
83
+ field_dict["allowed_s3_keys"] = allowed_s3_keys
71
84
  if execution_mode is not UNSET:
72
85
  field_dict["execution_mode"] = execution_mode
73
86
  if on_behalf_of is not UNSET:
@@ -79,6 +92,7 @@ class UpdateAppJsonBodyPolicy:
79
92
 
80
93
  @classmethod
81
94
  def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
95
+ from ..models.update_app_json_body_policy_allowed_s3_keys_item import UpdateAppJsonBodyPolicyAllowedS3KeysItem
82
96
  from ..models.update_app_json_body_policy_s3_inputs_item import UpdateAppJsonBodyPolicyS3InputsItem
83
97
  from ..models.update_app_json_body_policy_triggerables import UpdateAppJsonBodyPolicyTriggerables
84
98
  from ..models.update_app_json_body_policy_triggerables_v2 import UpdateAppJsonBodyPolicyTriggerablesV2
@@ -105,6 +119,13 @@ class UpdateAppJsonBodyPolicy:
105
119
 
106
120
  s3_inputs.append(s3_inputs_item)
107
121
 
122
+ allowed_s3_keys = []
123
+ _allowed_s3_keys = d.pop("allowed_s3_keys", UNSET)
124
+ for allowed_s3_keys_item_data in _allowed_s3_keys or []:
125
+ allowed_s3_keys_item = UpdateAppJsonBodyPolicyAllowedS3KeysItem.from_dict(allowed_s3_keys_item_data)
126
+
127
+ allowed_s3_keys.append(allowed_s3_keys_item)
128
+
108
129
  _execution_mode = d.pop("execution_mode", UNSET)
109
130
  execution_mode: Union[Unset, UpdateAppJsonBodyPolicyExecutionMode]
110
131
  if isinstance(_execution_mode, Unset):
@@ -120,6 +141,7 @@ class UpdateAppJsonBodyPolicy:
120
141
  triggerables=triggerables,
121
142
  triggerables_v2=triggerables_v2,
122
143
  s3_inputs=s3_inputs,
144
+ allowed_s3_keys=allowed_s3_keys,
123
145
  execution_mode=execution_mode,
124
146
  on_behalf_of=on_behalf_of,
125
147
  on_behalf_of_email=on_behalf_of_email,
@@ -0,0 +1,66 @@
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="UpdateAppJsonBodyPolicyAllowedS3KeysItem")
9
+
10
+
11
+ @_attrs_define
12
+ class UpdateAppJsonBodyPolicyAllowedS3KeysItem:
13
+ """
14
+ Attributes:
15
+ s3_path (Union[Unset, str]):
16
+ resource (Union[Unset, str]):
17
+ """
18
+
19
+ s3_path: Union[Unset, str] = UNSET
20
+ resource: Union[Unset, str] = UNSET
21
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
22
+
23
+ def to_dict(self) -> Dict[str, Any]:
24
+ s3_path = self.s3_path
25
+ resource = self.resource
26
+
27
+ field_dict: Dict[str, Any] = {}
28
+ field_dict.update(self.additional_properties)
29
+ field_dict.update({})
30
+ if s3_path is not UNSET:
31
+ field_dict["s3_path"] = s3_path
32
+ if resource is not UNSET:
33
+ field_dict["resource"] = resource
34
+
35
+ return field_dict
36
+
37
+ @classmethod
38
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
39
+ d = src_dict.copy()
40
+ s3_path = d.pop("s3_path", UNSET)
41
+
42
+ resource = d.pop("resource", UNSET)
43
+
44
+ update_app_json_body_policy_allowed_s3_keys_item = cls(
45
+ s3_path=s3_path,
46
+ resource=resource,
47
+ )
48
+
49
+ update_app_json_body_policy_allowed_s3_keys_item.additional_properties = d
50
+ return update_app_json_body_policy_allowed_s3_keys_item
51
+
52
+ @property
53
+ def additional_keys(self) -> List[str]:
54
+ return list(self.additional_properties.keys())
55
+
56
+ def __getitem__(self, key: str) -> Any:
57
+ return self.additional_properties[key]
58
+
59
+ def __setitem__(self, key: str, value: Any) -> None:
60
+ self.additional_properties[key] = value
61
+
62
+ def __delitem__(self, key: str) -> None:
63
+ del self.additional_properties[key]
64
+
65
+ def __contains__(self, key: str) -> bool:
66
+ return key in self.additional_properties
@@ -0,0 +1,175 @@
1
+ from typing import TYPE_CHECKING, 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 ..models.update_mqtt_trigger_json_body_client_version import UpdateMqttTriggerJsonBodyClientVersion
7
+ from ..types import UNSET, Unset
8
+
9
+ if TYPE_CHECKING:
10
+ from ..models.update_mqtt_trigger_json_body_subscribe_topics_item import (
11
+ UpdateMqttTriggerJsonBodySubscribeTopicsItem,
12
+ )
13
+ from ..models.update_mqtt_trigger_json_body_v3_config import UpdateMqttTriggerJsonBodyV3Config
14
+ from ..models.update_mqtt_trigger_json_body_v5_config import UpdateMqttTriggerJsonBodyV5Config
15
+
16
+
17
+ T = TypeVar("T", bound="UpdateMqttTriggerJsonBody")
18
+
19
+
20
+ @_attrs_define
21
+ class UpdateMqttTriggerJsonBody:
22
+ """
23
+ Attributes:
24
+ mqtt_resource_path (str):
25
+ subscribe_topics (List['UpdateMqttTriggerJsonBodySubscribeTopicsItem']):
26
+ path (str):
27
+ script_path (str):
28
+ is_flow (bool):
29
+ enabled (bool):
30
+ client_id (Union[Unset, str]):
31
+ v3_config (Union[Unset, UpdateMqttTriggerJsonBodyV3Config]):
32
+ v5_config (Union[Unset, UpdateMqttTriggerJsonBodyV5Config]):
33
+ client_version (Union[Unset, UpdateMqttTriggerJsonBodyClientVersion]):
34
+ """
35
+
36
+ mqtt_resource_path: str
37
+ subscribe_topics: List["UpdateMqttTriggerJsonBodySubscribeTopicsItem"]
38
+ path: str
39
+ script_path: str
40
+ is_flow: bool
41
+ enabled: bool
42
+ client_id: Union[Unset, str] = UNSET
43
+ v3_config: Union[Unset, "UpdateMqttTriggerJsonBodyV3Config"] = UNSET
44
+ v5_config: Union[Unset, "UpdateMqttTriggerJsonBodyV5Config"] = UNSET
45
+ client_version: Union[Unset, UpdateMqttTriggerJsonBodyClientVersion] = UNSET
46
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
47
+
48
+ def to_dict(self) -> Dict[str, Any]:
49
+ mqtt_resource_path = self.mqtt_resource_path
50
+ subscribe_topics = []
51
+ for subscribe_topics_item_data in self.subscribe_topics:
52
+ subscribe_topics_item = subscribe_topics_item_data.to_dict()
53
+
54
+ subscribe_topics.append(subscribe_topics_item)
55
+
56
+ path = self.path
57
+ script_path = self.script_path
58
+ is_flow = self.is_flow
59
+ enabled = self.enabled
60
+ client_id = self.client_id
61
+ v3_config: Union[Unset, Dict[str, Any]] = UNSET
62
+ if not isinstance(self.v3_config, Unset):
63
+ v3_config = self.v3_config.to_dict()
64
+
65
+ v5_config: Union[Unset, Dict[str, Any]] = UNSET
66
+ if not isinstance(self.v5_config, Unset):
67
+ v5_config = self.v5_config.to_dict()
68
+
69
+ client_version: Union[Unset, str] = UNSET
70
+ if not isinstance(self.client_version, Unset):
71
+ client_version = self.client_version.value
72
+
73
+ field_dict: Dict[str, Any] = {}
74
+ field_dict.update(self.additional_properties)
75
+ field_dict.update(
76
+ {
77
+ "mqtt_resource_path": mqtt_resource_path,
78
+ "subscribe_topics": subscribe_topics,
79
+ "path": path,
80
+ "script_path": script_path,
81
+ "is_flow": is_flow,
82
+ "enabled": enabled,
83
+ }
84
+ )
85
+ if client_id is not UNSET:
86
+ field_dict["client_id"] = client_id
87
+ if v3_config is not UNSET:
88
+ field_dict["v3_config"] = v3_config
89
+ if v5_config is not UNSET:
90
+ field_dict["v5_config"] = v5_config
91
+ if client_version is not UNSET:
92
+ field_dict["client_version"] = client_version
93
+
94
+ return field_dict
95
+
96
+ @classmethod
97
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
98
+ from ..models.update_mqtt_trigger_json_body_subscribe_topics_item import (
99
+ UpdateMqttTriggerJsonBodySubscribeTopicsItem,
100
+ )
101
+ from ..models.update_mqtt_trigger_json_body_v3_config import UpdateMqttTriggerJsonBodyV3Config
102
+ from ..models.update_mqtt_trigger_json_body_v5_config import UpdateMqttTriggerJsonBodyV5Config
103
+
104
+ d = src_dict.copy()
105
+ mqtt_resource_path = d.pop("mqtt_resource_path")
106
+
107
+ subscribe_topics = []
108
+ _subscribe_topics = d.pop("subscribe_topics")
109
+ for subscribe_topics_item_data in _subscribe_topics:
110
+ subscribe_topics_item = UpdateMqttTriggerJsonBodySubscribeTopicsItem.from_dict(subscribe_topics_item_data)
111
+
112
+ subscribe_topics.append(subscribe_topics_item)
113
+
114
+ path = d.pop("path")
115
+
116
+ script_path = d.pop("script_path")
117
+
118
+ is_flow = d.pop("is_flow")
119
+
120
+ enabled = d.pop("enabled")
121
+
122
+ client_id = d.pop("client_id", UNSET)
123
+
124
+ _v3_config = d.pop("v3_config", UNSET)
125
+ v3_config: Union[Unset, UpdateMqttTriggerJsonBodyV3Config]
126
+ if isinstance(_v3_config, Unset):
127
+ v3_config = UNSET
128
+ else:
129
+ v3_config = UpdateMqttTriggerJsonBodyV3Config.from_dict(_v3_config)
130
+
131
+ _v5_config = d.pop("v5_config", UNSET)
132
+ v5_config: Union[Unset, UpdateMqttTriggerJsonBodyV5Config]
133
+ if isinstance(_v5_config, Unset):
134
+ v5_config = UNSET
135
+ else:
136
+ v5_config = UpdateMqttTriggerJsonBodyV5Config.from_dict(_v5_config)
137
+
138
+ _client_version = d.pop("client_version", UNSET)
139
+ client_version: Union[Unset, UpdateMqttTriggerJsonBodyClientVersion]
140
+ if isinstance(_client_version, Unset):
141
+ client_version = UNSET
142
+ else:
143
+ client_version = UpdateMqttTriggerJsonBodyClientVersion(_client_version)
144
+
145
+ update_mqtt_trigger_json_body = cls(
146
+ mqtt_resource_path=mqtt_resource_path,
147
+ subscribe_topics=subscribe_topics,
148
+ path=path,
149
+ script_path=script_path,
150
+ is_flow=is_flow,
151
+ enabled=enabled,
152
+ client_id=client_id,
153
+ v3_config=v3_config,
154
+ v5_config=v5_config,
155
+ client_version=client_version,
156
+ )
157
+
158
+ update_mqtt_trigger_json_body.additional_properties = d
159
+ return update_mqtt_trigger_json_body
160
+
161
+ @property
162
+ def additional_keys(self) -> List[str]:
163
+ return list(self.additional_properties.keys())
164
+
165
+ def __getitem__(self, key: str) -> Any:
166
+ return self.additional_properties[key]
167
+
168
+ def __setitem__(self, key: str, value: Any) -> None:
169
+ self.additional_properties[key] = value
170
+
171
+ def __delitem__(self, key: str) -> None:
172
+ del self.additional_properties[key]
173
+
174
+ def __contains__(self, key: str) -> bool:
175
+ return key in self.additional_properties
@@ -0,0 +1,9 @@
1
+ from enum import Enum
2
+
3
+
4
+ class UpdateMqttTriggerJsonBodyClientVersion(str, Enum):
5
+ V3 = "v3"
6
+ V5 = "v5"
7
+
8
+ def __str__(self) -> str:
9
+ return str(self.value)
@@ -0,0 +1,70 @@
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
+ from ..models.update_mqtt_trigger_json_body_subscribe_topics_item_qos import (
7
+ UpdateMqttTriggerJsonBodySubscribeTopicsItemQos,
8
+ )
9
+
10
+ T = TypeVar("T", bound="UpdateMqttTriggerJsonBodySubscribeTopicsItem")
11
+
12
+
13
+ @_attrs_define
14
+ class UpdateMqttTriggerJsonBodySubscribeTopicsItem:
15
+ """
16
+ Attributes:
17
+ qos (UpdateMqttTriggerJsonBodySubscribeTopicsItemQos):
18
+ topic (str):
19
+ """
20
+
21
+ qos: UpdateMqttTriggerJsonBodySubscribeTopicsItemQos
22
+ topic: str
23
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
24
+
25
+ def to_dict(self) -> Dict[str, Any]:
26
+ qos = self.qos.value
27
+
28
+ topic = self.topic
29
+
30
+ field_dict: Dict[str, Any] = {}
31
+ field_dict.update(self.additional_properties)
32
+ field_dict.update(
33
+ {
34
+ "qos": qos,
35
+ "topic": topic,
36
+ }
37
+ )
38
+
39
+ return field_dict
40
+
41
+ @classmethod
42
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
43
+ d = src_dict.copy()
44
+ qos = UpdateMqttTriggerJsonBodySubscribeTopicsItemQos(d.pop("qos"))
45
+
46
+ topic = d.pop("topic")
47
+
48
+ update_mqtt_trigger_json_body_subscribe_topics_item = cls(
49
+ qos=qos,
50
+ topic=topic,
51
+ )
52
+
53
+ update_mqtt_trigger_json_body_subscribe_topics_item.additional_properties = d
54
+ return update_mqtt_trigger_json_body_subscribe_topics_item
55
+
56
+ @property
57
+ def additional_keys(self) -> List[str]:
58
+ return list(self.additional_properties.keys())
59
+
60
+ def __getitem__(self, key: str) -> Any:
61
+ return self.additional_properties[key]
62
+
63
+ def __setitem__(self, key: str, value: Any) -> None:
64
+ self.additional_properties[key] = value
65
+
66
+ def __delitem__(self, key: str) -> None:
67
+ del self.additional_properties[key]
68
+
69
+ def __contains__(self, key: str) -> bool:
70
+ return key in self.additional_properties
@@ -0,0 +1,10 @@
1
+ from enum import Enum
2
+
3
+
4
+ class UpdateMqttTriggerJsonBodySubscribeTopicsItemQos(str, Enum):
5
+ QOS0 = "qos0"
6
+ QOS1 = "qos1"
7
+ QOS2 = "qos2"
8
+
9
+ def __str__(self) -> str:
10
+ return str(self.value)
@@ -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="UpdateMqttTriggerJsonBodyV3Config")
9
+
10
+
11
+ @_attrs_define
12
+ class UpdateMqttTriggerJsonBodyV3Config:
13
+ """
14
+ Attributes:
15
+ clean_session (Union[Unset, bool]):
16
+ """
17
+
18
+ clean_session: Union[Unset, bool] = UNSET
19
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
20
+
21
+ def to_dict(self) -> Dict[str, Any]:
22
+ clean_session = self.clean_session
23
+
24
+ field_dict: Dict[str, Any] = {}
25
+ field_dict.update(self.additional_properties)
26
+ field_dict.update({})
27
+ if clean_session is not UNSET:
28
+ field_dict["clean_session"] = clean_session
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
+ clean_session = d.pop("clean_session", UNSET)
36
+
37
+ update_mqtt_trigger_json_body_v3_config = cls(
38
+ clean_session=clean_session,
39
+ )
40
+
41
+ update_mqtt_trigger_json_body_v3_config.additional_properties = d
42
+ return update_mqtt_trigger_json_body_v3_config
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,74 @@
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="UpdateMqttTriggerJsonBodyV5Config")
9
+
10
+
11
+ @_attrs_define
12
+ class UpdateMqttTriggerJsonBodyV5Config:
13
+ """
14
+ Attributes:
15
+ clean_start (Union[Unset, bool]):
16
+ topic_alias (Union[Unset, float]):
17
+ session_expiry_interval (Union[Unset, float]):
18
+ """
19
+
20
+ clean_start: Union[Unset, bool] = UNSET
21
+ topic_alias: Union[Unset, float] = UNSET
22
+ session_expiry_interval: Union[Unset, float] = UNSET
23
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
24
+
25
+ def to_dict(self) -> Dict[str, Any]:
26
+ clean_start = self.clean_start
27
+ topic_alias = self.topic_alias
28
+ session_expiry_interval = self.session_expiry_interval
29
+
30
+ field_dict: Dict[str, Any] = {}
31
+ field_dict.update(self.additional_properties)
32
+ field_dict.update({})
33
+ if clean_start is not UNSET:
34
+ field_dict["clean_start"] = clean_start
35
+ if topic_alias is not UNSET:
36
+ field_dict["topic_alias"] = topic_alias
37
+ if session_expiry_interval is not UNSET:
38
+ field_dict["session_expiry_interval"] = session_expiry_interval
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
+ clean_start = d.pop("clean_start", UNSET)
46
+
47
+ topic_alias = d.pop("topic_alias", UNSET)
48
+
49
+ session_expiry_interval = d.pop("session_expiry_interval", UNSET)
50
+
51
+ update_mqtt_trigger_json_body_v5_config = cls(
52
+ clean_start=clean_start,
53
+ topic_alias=topic_alias,
54
+ session_expiry_interval=session_expiry_interval,
55
+ )
56
+
57
+ update_mqtt_trigger_json_body_v5_config.additional_properties = d
58
+ return update_mqtt_trigger_json_body_v5_config
59
+
60
+ @property
61
+ def additional_keys(self) -> List[str]:
62
+ return list(self.additional_properties.keys())
63
+
64
+ def __getitem__(self, key: str) -> Any:
65
+ return self.additional_properties[key]
66
+
67
+ def __setitem__(self, key: str, value: Any) -> None:
68
+ self.additional_properties[key] = value
69
+
70
+ def __delitem__(self, key: str) -> None:
71
+ del self.additional_properties[key]
72
+
73
+ def __contains__(self, key: str) -> bool:
74
+ return key in self.additional_properties
@@ -7,6 +7,7 @@ class WorkspaceDeployUISettingsIncludeTypeItem(str, Enum):
7
7
  RESOURCE = "resource"
8
8
  SCRIPT = "script"
9
9
  SECRET = "secret"
10
+ TRIGGER = "trigger"
10
11
  VARIABLE = "variable"
11
12
 
12
13
  def __str__(self) -> str:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: windmill-api
3
- Version: 1.474.0
3
+ Version: 1.475.1
4
4
  Summary: A client library for accessing Windmill API
5
5
  License: Apache-2.0
6
6
  Author: Ruben Fiszel