windmill-api 1.553.0__py3-none-any.whl → 1.555.2__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 (53) hide show
  1. windmill_api/api/app/get_public_secret_of_latest_version_of_app.py +101 -0
  2. windmill_api/api/flow_conversation/__init__.py +0 -0
  3. windmill_api/api/flow_conversation/delete_flow_conversation.py +101 -0
  4. windmill_api/api/flow_conversation/list_conversation_messages.py +206 -0
  5. windmill_api/api/flow_conversation/list_flow_conversations.py +207 -0
  6. windmill_api/api/job/run_and_stream_flow_by_path.py +171 -0
  7. windmill_api/api/job/run_and_stream_flow_by_path_get.py +169 -0
  8. windmill_api/api/job/run_and_stream_script_by_hash.py +189 -0
  9. windmill_api/api/job/run_and_stream_script_by_hash_get.py +187 -0
  10. windmill_api/api/job/run_and_stream_script_by_path.py +189 -0
  11. windmill_api/api/job/run_and_stream_script_by_path_get.py +187 -0
  12. windmill_api/api/job/run_flow_by_path.py +9 -0
  13. windmill_api/api/job/run_wait_result_flow_by_path.py +9 -0
  14. windmill_api/models/completed_job_raw_flow.py +8 -0
  15. windmill_api/models/delete_completed_job_response_200_raw_flow.py +8 -0
  16. windmill_api/models/extended_jobs_jobs_item_type_0_raw_flow.py +8 -0
  17. windmill_api/models/extended_jobs_jobs_item_type_1_raw_flow.py +8 -0
  18. windmill_api/models/flow_conversation.py +107 -0
  19. windmill_api/models/flow_conversation_message.py +101 -0
  20. windmill_api/models/flow_conversation_message_message_type.py +10 -0
  21. windmill_api/models/flow_preview_value.py +8 -0
  22. windmill_api/models/get_completed_job_response_200_raw_flow.py +8 -0
  23. windmill_api/models/get_flow_by_path_response_200_value.py +8 -0
  24. windmill_api/models/get_flow_by_path_with_draft_response_200_draft_value.py +8 -0
  25. windmill_api/models/get_flow_version_response_200_value.py +8 -0
  26. windmill_api/models/get_hub_flow_by_id_response_200_flow_value.py +8 -0
  27. windmill_api/models/get_job_response_200_type_0_raw_flow.py +8 -0
  28. windmill_api/models/get_job_response_200_type_1_raw_flow.py +8 -0
  29. windmill_api/models/get_suspended_job_flow_response_200_job_type_0_raw_flow.py +8 -0
  30. windmill_api/models/get_suspended_job_flow_response_200_job_type_1_raw_flow.py +8 -0
  31. windmill_api/models/list_completed_jobs_response_200_item_raw_flow.py +8 -0
  32. windmill_api/models/list_conversation_messages_response_200_item.py +103 -0
  33. windmill_api/models/list_conversation_messages_response_200_item_message_type.py +10 -0
  34. windmill_api/models/list_extended_jobs_response_200_jobs_item_type_0_raw_flow.py +8 -0
  35. windmill_api/models/list_extended_jobs_response_200_jobs_item_type_1_raw_flow.py +8 -0
  36. windmill_api/models/list_flow_conversations_response_200_item.py +107 -0
  37. windmill_api/models/list_jobs_response_200_item_type_0_raw_flow.py +8 -0
  38. windmill_api/models/list_jobs_response_200_item_type_1_raw_flow.py +8 -0
  39. windmill_api/models/list_queue_response_200_item_raw_flow.py +8 -0
  40. windmill_api/models/list_user_workspaces_response_200_workspaces_item.py +7 -0
  41. windmill_api/models/open_flow_value.py +8 -0
  42. windmill_api/models/open_flow_w_path_value.py +8 -0
  43. windmill_api/models/queued_job_raw_flow.py +8 -0
  44. windmill_api/models/run_and_stream_flow_by_path_json_body.py +44 -0
  45. windmill_api/models/run_and_stream_script_by_hash_json_body.py +44 -0
  46. windmill_api/models/run_and_stream_script_by_path_json_body.py +44 -0
  47. windmill_api/models/run_flow_preview_and_wait_result_json_body_value.py +8 -0
  48. windmill_api/models/run_flow_preview_json_body_value.py +8 -0
  49. windmill_api/models/user_workspace_list_workspaces_item.py +7 -0
  50. {windmill_api-1.553.0.dist-info → windmill_api-1.555.2.dist-info}/METADATA +1 -1
  51. {windmill_api-1.553.0.dist-info → windmill_api-1.555.2.dist-info}/RECORD +53 -33
  52. {windmill_api-1.553.0.dist-info → windmill_api-1.555.2.dist-info}/LICENSE +0 -0
  53. {windmill_api-1.553.0.dist-info → windmill_api-1.555.2.dist-info}/WHEEL +0 -0
@@ -35,6 +35,7 @@ class GetHubFlowByIdResponse200FlowValue:
35
35
  cache_ttl (Union[Unset, float]):
36
36
  priority (Union[Unset, float]):
37
37
  early_return (Union[Unset, str]):
38
+ chat_input_enabled (Union[Unset, bool]): Whether this flow accepts chat-style input
38
39
  """
39
40
 
40
41
  modules: List["GetHubFlowByIdResponse200FlowValueModulesItem"]
@@ -48,6 +49,7 @@ class GetHubFlowByIdResponse200FlowValue:
48
49
  cache_ttl: Union[Unset, float] = UNSET
49
50
  priority: Union[Unset, float] = UNSET
50
51
  early_return: Union[Unset, str] = UNSET
52
+ chat_input_enabled: Union[Unset, bool] = UNSET
51
53
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
52
54
 
53
55
  def to_dict(self) -> Dict[str, Any]:
@@ -73,6 +75,7 @@ class GetHubFlowByIdResponse200FlowValue:
73
75
  cache_ttl = self.cache_ttl
74
76
  priority = self.priority
75
77
  early_return = self.early_return
78
+ chat_input_enabled = self.chat_input_enabled
76
79
 
77
80
  field_dict: Dict[str, Any] = {}
78
81
  field_dict.update(self.additional_properties)
@@ -101,6 +104,8 @@ class GetHubFlowByIdResponse200FlowValue:
101
104
  field_dict["priority"] = priority
102
105
  if early_return is not UNSET:
103
106
  field_dict["early_return"] = early_return
107
+ if chat_input_enabled is not UNSET:
108
+ field_dict["chat_input_enabled"] = chat_input_enabled
104
109
 
105
110
  return field_dict
106
111
 
@@ -154,6 +159,8 @@ class GetHubFlowByIdResponse200FlowValue:
154
159
 
155
160
  early_return = d.pop("early_return", UNSET)
156
161
 
162
+ chat_input_enabled = d.pop("chat_input_enabled", UNSET)
163
+
157
164
  get_hub_flow_by_id_response_200_flow_value = cls(
158
165
  modules=modules,
159
166
  failure_module=failure_module,
@@ -166,6 +173,7 @@ class GetHubFlowByIdResponse200FlowValue:
166
173
  cache_ttl=cache_ttl,
167
174
  priority=priority,
168
175
  early_return=early_return,
176
+ chat_input_enabled=chat_input_enabled,
169
177
  )
170
178
 
171
179
  get_hub_flow_by_id_response_200_flow_value.additional_properties = d
@@ -31,6 +31,7 @@ class GetJobResponse200Type0RawFlow:
31
31
  cache_ttl (Union[Unset, float]):
32
32
  priority (Union[Unset, float]):
33
33
  early_return (Union[Unset, str]):
34
+ chat_input_enabled (Union[Unset, bool]): Whether this flow accepts chat-style input
34
35
  """
35
36
 
36
37
  modules: List["GetJobResponse200Type0RawFlowModulesItem"]
@@ -44,6 +45,7 @@ class GetJobResponse200Type0RawFlow:
44
45
  cache_ttl: Union[Unset, float] = UNSET
45
46
  priority: Union[Unset, float] = UNSET
46
47
  early_return: Union[Unset, str] = UNSET
48
+ chat_input_enabled: Union[Unset, bool] = UNSET
47
49
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
48
50
 
49
51
  def to_dict(self) -> Dict[str, Any]:
@@ -69,6 +71,7 @@ class GetJobResponse200Type0RawFlow:
69
71
  cache_ttl = self.cache_ttl
70
72
  priority = self.priority
71
73
  early_return = self.early_return
74
+ chat_input_enabled = self.chat_input_enabled
72
75
 
73
76
  field_dict: Dict[str, Any] = {}
74
77
  field_dict.update(self.additional_properties)
@@ -97,6 +100,8 @@ class GetJobResponse200Type0RawFlow:
97
100
  field_dict["priority"] = priority
98
101
  if early_return is not UNSET:
99
102
  field_dict["early_return"] = early_return
103
+ if chat_input_enabled is not UNSET:
104
+ field_dict["chat_input_enabled"] = chat_input_enabled
100
105
 
101
106
  return field_dict
102
107
 
@@ -148,6 +153,8 @@ class GetJobResponse200Type0RawFlow:
148
153
 
149
154
  early_return = d.pop("early_return", UNSET)
150
155
 
156
+ chat_input_enabled = d.pop("chat_input_enabled", UNSET)
157
+
151
158
  get_job_response_200_type_0_raw_flow = cls(
152
159
  modules=modules,
153
160
  failure_module=failure_module,
@@ -160,6 +167,7 @@ class GetJobResponse200Type0RawFlow:
160
167
  cache_ttl=cache_ttl,
161
168
  priority=priority,
162
169
  early_return=early_return,
170
+ chat_input_enabled=chat_input_enabled,
163
171
  )
164
172
 
165
173
  get_job_response_200_type_0_raw_flow.additional_properties = d
@@ -31,6 +31,7 @@ class GetJobResponse200Type1RawFlow:
31
31
  cache_ttl (Union[Unset, float]):
32
32
  priority (Union[Unset, float]):
33
33
  early_return (Union[Unset, str]):
34
+ chat_input_enabled (Union[Unset, bool]): Whether this flow accepts chat-style input
34
35
  """
35
36
 
36
37
  modules: List["GetJobResponse200Type1RawFlowModulesItem"]
@@ -44,6 +45,7 @@ class GetJobResponse200Type1RawFlow:
44
45
  cache_ttl: Union[Unset, float] = UNSET
45
46
  priority: Union[Unset, float] = UNSET
46
47
  early_return: Union[Unset, str] = UNSET
48
+ chat_input_enabled: Union[Unset, bool] = UNSET
47
49
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
48
50
 
49
51
  def to_dict(self) -> Dict[str, Any]:
@@ -69,6 +71,7 @@ class GetJobResponse200Type1RawFlow:
69
71
  cache_ttl = self.cache_ttl
70
72
  priority = self.priority
71
73
  early_return = self.early_return
74
+ chat_input_enabled = self.chat_input_enabled
72
75
 
73
76
  field_dict: Dict[str, Any] = {}
74
77
  field_dict.update(self.additional_properties)
@@ -97,6 +100,8 @@ class GetJobResponse200Type1RawFlow:
97
100
  field_dict["priority"] = priority
98
101
  if early_return is not UNSET:
99
102
  field_dict["early_return"] = early_return
103
+ if chat_input_enabled is not UNSET:
104
+ field_dict["chat_input_enabled"] = chat_input_enabled
100
105
 
101
106
  return field_dict
102
107
 
@@ -148,6 +153,8 @@ class GetJobResponse200Type1RawFlow:
148
153
 
149
154
  early_return = d.pop("early_return", UNSET)
150
155
 
156
+ chat_input_enabled = d.pop("chat_input_enabled", UNSET)
157
+
151
158
  get_job_response_200_type_1_raw_flow = cls(
152
159
  modules=modules,
153
160
  failure_module=failure_module,
@@ -160,6 +167,7 @@ class GetJobResponse200Type1RawFlow:
160
167
  cache_ttl=cache_ttl,
161
168
  priority=priority,
162
169
  early_return=early_return,
170
+ chat_input_enabled=chat_input_enabled,
163
171
  )
164
172
 
165
173
  get_job_response_200_type_1_raw_flow.additional_properties = d
@@ -35,6 +35,7 @@ class GetSuspendedJobFlowResponse200JobType0RawFlow:
35
35
  cache_ttl (Union[Unset, float]):
36
36
  priority (Union[Unset, float]):
37
37
  early_return (Union[Unset, str]):
38
+ chat_input_enabled (Union[Unset, bool]): Whether this flow accepts chat-style input
38
39
  """
39
40
 
40
41
  modules: List["GetSuspendedJobFlowResponse200JobType0RawFlowModulesItem"]
@@ -48,6 +49,7 @@ class GetSuspendedJobFlowResponse200JobType0RawFlow:
48
49
  cache_ttl: Union[Unset, float] = UNSET
49
50
  priority: Union[Unset, float] = UNSET
50
51
  early_return: Union[Unset, str] = UNSET
52
+ chat_input_enabled: Union[Unset, bool] = UNSET
51
53
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
52
54
 
53
55
  def to_dict(self) -> Dict[str, Any]:
@@ -73,6 +75,7 @@ class GetSuspendedJobFlowResponse200JobType0RawFlow:
73
75
  cache_ttl = self.cache_ttl
74
76
  priority = self.priority
75
77
  early_return = self.early_return
78
+ chat_input_enabled = self.chat_input_enabled
76
79
 
77
80
  field_dict: Dict[str, Any] = {}
78
81
  field_dict.update(self.additional_properties)
@@ -101,6 +104,8 @@ class GetSuspendedJobFlowResponse200JobType0RawFlow:
101
104
  field_dict["priority"] = priority
102
105
  if early_return is not UNSET:
103
106
  field_dict["early_return"] = early_return
107
+ if chat_input_enabled is not UNSET:
108
+ field_dict["chat_input_enabled"] = chat_input_enabled
104
109
 
105
110
  return field_dict
106
111
 
@@ -156,6 +161,8 @@ class GetSuspendedJobFlowResponse200JobType0RawFlow:
156
161
 
157
162
  early_return = d.pop("early_return", UNSET)
158
163
 
164
+ chat_input_enabled = d.pop("chat_input_enabled", UNSET)
165
+
159
166
  get_suspended_job_flow_response_200_job_type_0_raw_flow = cls(
160
167
  modules=modules,
161
168
  failure_module=failure_module,
@@ -168,6 +175,7 @@ class GetSuspendedJobFlowResponse200JobType0RawFlow:
168
175
  cache_ttl=cache_ttl,
169
176
  priority=priority,
170
177
  early_return=early_return,
178
+ chat_input_enabled=chat_input_enabled,
171
179
  )
172
180
 
173
181
  get_suspended_job_flow_response_200_job_type_0_raw_flow.additional_properties = d
@@ -35,6 +35,7 @@ class GetSuspendedJobFlowResponse200JobType1RawFlow:
35
35
  cache_ttl (Union[Unset, float]):
36
36
  priority (Union[Unset, float]):
37
37
  early_return (Union[Unset, str]):
38
+ chat_input_enabled (Union[Unset, bool]): Whether this flow accepts chat-style input
38
39
  """
39
40
 
40
41
  modules: List["GetSuspendedJobFlowResponse200JobType1RawFlowModulesItem"]
@@ -48,6 +49,7 @@ class GetSuspendedJobFlowResponse200JobType1RawFlow:
48
49
  cache_ttl: Union[Unset, float] = UNSET
49
50
  priority: Union[Unset, float] = UNSET
50
51
  early_return: Union[Unset, str] = UNSET
52
+ chat_input_enabled: Union[Unset, bool] = UNSET
51
53
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
52
54
 
53
55
  def to_dict(self) -> Dict[str, Any]:
@@ -73,6 +75,7 @@ class GetSuspendedJobFlowResponse200JobType1RawFlow:
73
75
  cache_ttl = self.cache_ttl
74
76
  priority = self.priority
75
77
  early_return = self.early_return
78
+ chat_input_enabled = self.chat_input_enabled
76
79
 
77
80
  field_dict: Dict[str, Any] = {}
78
81
  field_dict.update(self.additional_properties)
@@ -101,6 +104,8 @@ class GetSuspendedJobFlowResponse200JobType1RawFlow:
101
104
  field_dict["priority"] = priority
102
105
  if early_return is not UNSET:
103
106
  field_dict["early_return"] = early_return
107
+ if chat_input_enabled is not UNSET:
108
+ field_dict["chat_input_enabled"] = chat_input_enabled
104
109
 
105
110
  return field_dict
106
111
 
@@ -156,6 +161,8 @@ class GetSuspendedJobFlowResponse200JobType1RawFlow:
156
161
 
157
162
  early_return = d.pop("early_return", UNSET)
158
163
 
164
+ chat_input_enabled = d.pop("chat_input_enabled", UNSET)
165
+
159
166
  get_suspended_job_flow_response_200_job_type_1_raw_flow = cls(
160
167
  modules=modules,
161
168
  failure_module=failure_module,
@@ -168,6 +175,7 @@ class GetSuspendedJobFlowResponse200JobType1RawFlow:
168
175
  cache_ttl=cache_ttl,
169
176
  priority=priority,
170
177
  early_return=early_return,
178
+ chat_input_enabled=chat_input_enabled,
171
179
  )
172
180
 
173
181
  get_suspended_job_flow_response_200_job_type_1_raw_flow.additional_properties = d
@@ -35,6 +35,7 @@ class ListCompletedJobsResponse200ItemRawFlow:
35
35
  cache_ttl (Union[Unset, float]):
36
36
  priority (Union[Unset, float]):
37
37
  early_return (Union[Unset, str]):
38
+ chat_input_enabled (Union[Unset, bool]): Whether this flow accepts chat-style input
38
39
  """
39
40
 
40
41
  modules: List["ListCompletedJobsResponse200ItemRawFlowModulesItem"]
@@ -48,6 +49,7 @@ class ListCompletedJobsResponse200ItemRawFlow:
48
49
  cache_ttl: Union[Unset, float] = UNSET
49
50
  priority: Union[Unset, float] = UNSET
50
51
  early_return: Union[Unset, str] = UNSET
52
+ chat_input_enabled: Union[Unset, bool] = UNSET
51
53
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
52
54
 
53
55
  def to_dict(self) -> Dict[str, Any]:
@@ -73,6 +75,7 @@ class ListCompletedJobsResponse200ItemRawFlow:
73
75
  cache_ttl = self.cache_ttl
74
76
  priority = self.priority
75
77
  early_return = self.early_return
78
+ chat_input_enabled = self.chat_input_enabled
76
79
 
77
80
  field_dict: Dict[str, Any] = {}
78
81
  field_dict.update(self.additional_properties)
@@ -101,6 +104,8 @@ class ListCompletedJobsResponse200ItemRawFlow:
101
104
  field_dict["priority"] = priority
102
105
  if early_return is not UNSET:
103
106
  field_dict["early_return"] = early_return
107
+ if chat_input_enabled is not UNSET:
108
+ field_dict["chat_input_enabled"] = chat_input_enabled
104
109
 
105
110
  return field_dict
106
111
 
@@ -156,6 +161,8 @@ class ListCompletedJobsResponse200ItemRawFlow:
156
161
 
157
162
  early_return = d.pop("early_return", UNSET)
158
163
 
164
+ chat_input_enabled = d.pop("chat_input_enabled", UNSET)
165
+
159
166
  list_completed_jobs_response_200_item_raw_flow = cls(
160
167
  modules=modules,
161
168
  failure_module=failure_module,
@@ -168,6 +175,7 @@ class ListCompletedJobsResponse200ItemRawFlow:
168
175
  cache_ttl=cache_ttl,
169
176
  priority=priority,
170
177
  early_return=early_return,
178
+ chat_input_enabled=chat_input_enabled,
171
179
  )
172
180
 
173
181
  list_completed_jobs_response_200_item_raw_flow.additional_properties = d
@@ -0,0 +1,103 @@
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.list_conversation_messages_response_200_item_message_type import (
9
+ ListConversationMessagesResponse200ItemMessageType,
10
+ )
11
+ from ..types import UNSET, Unset
12
+
13
+ T = TypeVar("T", bound="ListConversationMessagesResponse200Item")
14
+
15
+
16
+ @_attrs_define
17
+ class ListConversationMessagesResponse200Item:
18
+ """
19
+ Attributes:
20
+ id (str): Unique identifier for the message
21
+ conversation_id (str): The conversation this message belongs to
22
+ message_type (ListConversationMessagesResponse200ItemMessageType): Type of the message
23
+ content (str): The message content
24
+ created_at (datetime.datetime): When the message was created
25
+ job_id (Union[Unset, None, str]): Associated job ID if this message came from a flow run
26
+ """
27
+
28
+ id: str
29
+ conversation_id: str
30
+ message_type: ListConversationMessagesResponse200ItemMessageType
31
+ content: str
32
+ created_at: datetime.datetime
33
+ job_id: Union[Unset, None, str] = UNSET
34
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
35
+
36
+ def to_dict(self) -> Dict[str, Any]:
37
+ id = self.id
38
+ conversation_id = self.conversation_id
39
+ message_type = self.message_type.value
40
+
41
+ content = self.content
42
+ created_at = self.created_at.isoformat()
43
+
44
+ job_id = self.job_id
45
+
46
+ field_dict: Dict[str, Any] = {}
47
+ field_dict.update(self.additional_properties)
48
+ field_dict.update(
49
+ {
50
+ "id": id,
51
+ "conversation_id": conversation_id,
52
+ "message_type": message_type,
53
+ "content": content,
54
+ "created_at": created_at,
55
+ }
56
+ )
57
+ if job_id is not UNSET:
58
+ field_dict["job_id"] = job_id
59
+
60
+ return field_dict
61
+
62
+ @classmethod
63
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
64
+ d = src_dict.copy()
65
+ id = d.pop("id")
66
+
67
+ conversation_id = d.pop("conversation_id")
68
+
69
+ message_type = ListConversationMessagesResponse200ItemMessageType(d.pop("message_type"))
70
+
71
+ content = d.pop("content")
72
+
73
+ created_at = isoparse(d.pop("created_at"))
74
+
75
+ job_id = d.pop("job_id", UNSET)
76
+
77
+ list_conversation_messages_response_200_item = cls(
78
+ id=id,
79
+ conversation_id=conversation_id,
80
+ message_type=message_type,
81
+ content=content,
82
+ created_at=created_at,
83
+ job_id=job_id,
84
+ )
85
+
86
+ list_conversation_messages_response_200_item.additional_properties = d
87
+ return list_conversation_messages_response_200_item
88
+
89
+ @property
90
+ def additional_keys(self) -> List[str]:
91
+ return list(self.additional_properties.keys())
92
+
93
+ def __getitem__(self, key: str) -> Any:
94
+ return self.additional_properties[key]
95
+
96
+ def __setitem__(self, key: str, value: Any) -> None:
97
+ self.additional_properties[key] = value
98
+
99
+ def __delitem__(self, key: str) -> None:
100
+ del self.additional_properties[key]
101
+
102
+ def __contains__(self, key: str) -> bool:
103
+ return key in self.additional_properties
@@ -0,0 +1,10 @@
1
+ from enum import Enum
2
+
3
+
4
+ class ListConversationMessagesResponse200ItemMessageType(str, Enum):
5
+ ASSISTANT = "assistant"
6
+ SYSTEM = "system"
7
+ USER = "user"
8
+
9
+ def __str__(self) -> str:
10
+ return str(self.value)
@@ -35,6 +35,7 @@ class ListExtendedJobsResponse200JobsItemType0RawFlow:
35
35
  cache_ttl (Union[Unset, float]):
36
36
  priority (Union[Unset, float]):
37
37
  early_return (Union[Unset, str]):
38
+ chat_input_enabled (Union[Unset, bool]): Whether this flow accepts chat-style input
38
39
  """
39
40
 
40
41
  modules: List["ListExtendedJobsResponse200JobsItemType0RawFlowModulesItem"]
@@ -48,6 +49,7 @@ class ListExtendedJobsResponse200JobsItemType0RawFlow:
48
49
  cache_ttl: Union[Unset, float] = UNSET
49
50
  priority: Union[Unset, float] = UNSET
50
51
  early_return: Union[Unset, str] = UNSET
52
+ chat_input_enabled: Union[Unset, bool] = UNSET
51
53
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
52
54
 
53
55
  def to_dict(self) -> Dict[str, Any]:
@@ -73,6 +75,7 @@ class ListExtendedJobsResponse200JobsItemType0RawFlow:
73
75
  cache_ttl = self.cache_ttl
74
76
  priority = self.priority
75
77
  early_return = self.early_return
78
+ chat_input_enabled = self.chat_input_enabled
76
79
 
77
80
  field_dict: Dict[str, Any] = {}
78
81
  field_dict.update(self.additional_properties)
@@ -101,6 +104,8 @@ class ListExtendedJobsResponse200JobsItemType0RawFlow:
101
104
  field_dict["priority"] = priority
102
105
  if early_return is not UNSET:
103
106
  field_dict["early_return"] = early_return
107
+ if chat_input_enabled is not UNSET:
108
+ field_dict["chat_input_enabled"] = chat_input_enabled
104
109
 
105
110
  return field_dict
106
111
 
@@ -156,6 +161,8 @@ class ListExtendedJobsResponse200JobsItemType0RawFlow:
156
161
 
157
162
  early_return = d.pop("early_return", UNSET)
158
163
 
164
+ chat_input_enabled = d.pop("chat_input_enabled", UNSET)
165
+
159
166
  list_extended_jobs_response_200_jobs_item_type_0_raw_flow = cls(
160
167
  modules=modules,
161
168
  failure_module=failure_module,
@@ -168,6 +175,7 @@ class ListExtendedJobsResponse200JobsItemType0RawFlow:
168
175
  cache_ttl=cache_ttl,
169
176
  priority=priority,
170
177
  early_return=early_return,
178
+ chat_input_enabled=chat_input_enabled,
171
179
  )
172
180
 
173
181
  list_extended_jobs_response_200_jobs_item_type_0_raw_flow.additional_properties = d
@@ -35,6 +35,7 @@ class ListExtendedJobsResponse200JobsItemType1RawFlow:
35
35
  cache_ttl (Union[Unset, float]):
36
36
  priority (Union[Unset, float]):
37
37
  early_return (Union[Unset, str]):
38
+ chat_input_enabled (Union[Unset, bool]): Whether this flow accepts chat-style input
38
39
  """
39
40
 
40
41
  modules: List["ListExtendedJobsResponse200JobsItemType1RawFlowModulesItem"]
@@ -48,6 +49,7 @@ class ListExtendedJobsResponse200JobsItemType1RawFlow:
48
49
  cache_ttl: Union[Unset, float] = UNSET
49
50
  priority: Union[Unset, float] = UNSET
50
51
  early_return: Union[Unset, str] = UNSET
52
+ chat_input_enabled: Union[Unset, bool] = UNSET
51
53
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
52
54
 
53
55
  def to_dict(self) -> Dict[str, Any]:
@@ -73,6 +75,7 @@ class ListExtendedJobsResponse200JobsItemType1RawFlow:
73
75
  cache_ttl = self.cache_ttl
74
76
  priority = self.priority
75
77
  early_return = self.early_return
78
+ chat_input_enabled = self.chat_input_enabled
76
79
 
77
80
  field_dict: Dict[str, Any] = {}
78
81
  field_dict.update(self.additional_properties)
@@ -101,6 +104,8 @@ class ListExtendedJobsResponse200JobsItemType1RawFlow:
101
104
  field_dict["priority"] = priority
102
105
  if early_return is not UNSET:
103
106
  field_dict["early_return"] = early_return
107
+ if chat_input_enabled is not UNSET:
108
+ field_dict["chat_input_enabled"] = chat_input_enabled
104
109
 
105
110
  return field_dict
106
111
 
@@ -156,6 +161,8 @@ class ListExtendedJobsResponse200JobsItemType1RawFlow:
156
161
 
157
162
  early_return = d.pop("early_return", UNSET)
158
163
 
164
+ chat_input_enabled = d.pop("chat_input_enabled", UNSET)
165
+
159
166
  list_extended_jobs_response_200_jobs_item_type_1_raw_flow = cls(
160
167
  modules=modules,
161
168
  failure_module=failure_module,
@@ -168,6 +175,7 @@ class ListExtendedJobsResponse200JobsItemType1RawFlow:
168
175
  cache_ttl=cache_ttl,
169
176
  priority=priority,
170
177
  early_return=early_return,
178
+ chat_input_enabled=chat_input_enabled,
171
179
  )
172
180
 
173
181
  list_extended_jobs_response_200_jobs_item_type_1_raw_flow.additional_properties = d
@@ -0,0 +1,107 @@
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 ..types import UNSET, Unset
9
+
10
+ T = TypeVar("T", bound="ListFlowConversationsResponse200Item")
11
+
12
+
13
+ @_attrs_define
14
+ class ListFlowConversationsResponse200Item:
15
+ """
16
+ Attributes:
17
+ id (str): Unique identifier for the conversation
18
+ workspace_id (str): The workspace ID where the conversation belongs
19
+ flow_path (str): Path of the flow this conversation is for
20
+ created_at (datetime.datetime): When the conversation was created
21
+ updated_at (datetime.datetime): When the conversation was last updated
22
+ created_by (str): Username who created the conversation
23
+ title (Union[Unset, None, str]): Optional title for the conversation
24
+ """
25
+
26
+ id: str
27
+ workspace_id: str
28
+ flow_path: str
29
+ created_at: datetime.datetime
30
+ updated_at: datetime.datetime
31
+ created_by: str
32
+ title: Union[Unset, None, str] = UNSET
33
+ additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
34
+
35
+ def to_dict(self) -> Dict[str, Any]:
36
+ id = self.id
37
+ workspace_id = self.workspace_id
38
+ flow_path = self.flow_path
39
+ created_at = self.created_at.isoformat()
40
+
41
+ updated_at = self.updated_at.isoformat()
42
+
43
+ created_by = self.created_by
44
+ title = self.title
45
+
46
+ field_dict: Dict[str, Any] = {}
47
+ field_dict.update(self.additional_properties)
48
+ field_dict.update(
49
+ {
50
+ "id": id,
51
+ "workspace_id": workspace_id,
52
+ "flow_path": flow_path,
53
+ "created_at": created_at,
54
+ "updated_at": updated_at,
55
+ "created_by": created_by,
56
+ }
57
+ )
58
+ if title is not UNSET:
59
+ field_dict["title"] = title
60
+
61
+ return field_dict
62
+
63
+ @classmethod
64
+ def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
65
+ d = src_dict.copy()
66
+ id = d.pop("id")
67
+
68
+ workspace_id = d.pop("workspace_id")
69
+
70
+ flow_path = d.pop("flow_path")
71
+
72
+ created_at = isoparse(d.pop("created_at"))
73
+
74
+ updated_at = isoparse(d.pop("updated_at"))
75
+
76
+ created_by = d.pop("created_by")
77
+
78
+ title = d.pop("title", UNSET)
79
+
80
+ list_flow_conversations_response_200_item = cls(
81
+ id=id,
82
+ workspace_id=workspace_id,
83
+ flow_path=flow_path,
84
+ created_at=created_at,
85
+ updated_at=updated_at,
86
+ created_by=created_by,
87
+ title=title,
88
+ )
89
+
90
+ list_flow_conversations_response_200_item.additional_properties = d
91
+ return list_flow_conversations_response_200_item
92
+
93
+ @property
94
+ def additional_keys(self) -> List[str]:
95
+ return list(self.additional_properties.keys())
96
+
97
+ def __getitem__(self, key: str) -> Any:
98
+ return self.additional_properties[key]
99
+
100
+ def __setitem__(self, key: str, value: Any) -> None:
101
+ self.additional_properties[key] = value
102
+
103
+ def __delitem__(self, key: str) -> None:
104
+ del self.additional_properties[key]
105
+
106
+ def __contains__(self, key: str) -> bool:
107
+ return key in self.additional_properties
@@ -35,6 +35,7 @@ class ListJobsResponse200ItemType0RawFlow:
35
35
  cache_ttl (Union[Unset, float]):
36
36
  priority (Union[Unset, float]):
37
37
  early_return (Union[Unset, str]):
38
+ chat_input_enabled (Union[Unset, bool]): Whether this flow accepts chat-style input
38
39
  """
39
40
 
40
41
  modules: List["ListJobsResponse200ItemType0RawFlowModulesItem"]
@@ -48,6 +49,7 @@ class ListJobsResponse200ItemType0RawFlow:
48
49
  cache_ttl: Union[Unset, float] = UNSET
49
50
  priority: Union[Unset, float] = UNSET
50
51
  early_return: Union[Unset, str] = UNSET
52
+ chat_input_enabled: Union[Unset, bool] = UNSET
51
53
  additional_properties: Dict[str, Any] = _attrs_field(init=False, factory=dict)
52
54
 
53
55
  def to_dict(self) -> Dict[str, Any]:
@@ -73,6 +75,7 @@ class ListJobsResponse200ItemType0RawFlow:
73
75
  cache_ttl = self.cache_ttl
74
76
  priority = self.priority
75
77
  early_return = self.early_return
78
+ chat_input_enabled = self.chat_input_enabled
76
79
 
77
80
  field_dict: Dict[str, Any] = {}
78
81
  field_dict.update(self.additional_properties)
@@ -101,6 +104,8 @@ class ListJobsResponse200ItemType0RawFlow:
101
104
  field_dict["priority"] = priority
102
105
  if early_return is not UNSET:
103
106
  field_dict["early_return"] = early_return
107
+ if chat_input_enabled is not UNSET:
108
+ field_dict["chat_input_enabled"] = chat_input_enabled
104
109
 
105
110
  return field_dict
106
111
 
@@ -154,6 +159,8 @@ class ListJobsResponse200ItemType0RawFlow:
154
159
 
155
160
  early_return = d.pop("early_return", UNSET)
156
161
 
162
+ chat_input_enabled = d.pop("chat_input_enabled", UNSET)
163
+
157
164
  list_jobs_response_200_item_type_0_raw_flow = cls(
158
165
  modules=modules,
159
166
  failure_module=failure_module,
@@ -166,6 +173,7 @@ class ListJobsResponse200ItemType0RawFlow:
166
173
  cache_ttl=cache_ttl,
167
174
  priority=priority,
168
175
  early_return=early_return,
176
+ chat_input_enabled=chat_input_enabled,
169
177
  )
170
178
 
171
179
  list_jobs_response_200_item_type_0_raw_flow.additional_properties = d