dify-oapi2 0.4.0__py3-none-any.whl → 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (215) hide show
  1. dify_oapi/api/chat/v1/model/__init__.py +37 -0
  2. dify_oapi/api/chat/v1/model/agent_thought.py +69 -0
  3. dify_oapi/api/chat/v1/model/annotation_info.py +43 -0
  4. dify_oapi/api/{completion/v1/model/info → chat/v1/model}/app_info.py +6 -14
  5. dify_oapi/api/chat/v1/model/app_parameters.py +494 -0
  6. dify_oapi/api/chat/v1/model/chat_file.py +53 -0
  7. dify_oapi/api/chat/v1/model/chat_request_body.py +26 -13
  8. dify_oapi/api/chat/v1/model/chat_response.py +13 -2
  9. dify_oapi/api/chat/v1/model/chat_types.py +65 -0
  10. dify_oapi/api/chat/v1/model/configure_annotation_reply_request.py +37 -0
  11. dify_oapi/api/chat/v1/model/configure_annotation_reply_request_body.py +39 -0
  12. dify_oapi/api/chat/v1/model/configure_annotation_reply_response.py +10 -0
  13. dify_oapi/api/chat/v1/model/conversation_info.py +57 -0
  14. dify_oapi/api/chat/v1/model/conversation_variable.py +55 -0
  15. dify_oapi/api/chat/v1/model/create_annotation_request.py +30 -0
  16. dify_oapi/api/chat/v1/model/create_annotation_request_body.py +32 -0
  17. dify_oapi/api/chat/v1/model/create_annotation_response.py +9 -0
  18. dify_oapi/api/chat/v1/model/delete_annotation_request.py +26 -0
  19. dify_oapi/api/chat/v1/model/delete_annotation_response.py +7 -0
  20. dify_oapi/api/{completion/v1/model/feedback → chat/v1/model}/feedback_info.py +29 -7
  21. dify_oapi/api/{completion/v1/model/file → chat/v1/model}/file_info.py +6 -0
  22. dify_oapi/api/chat/v1/model/get_annotation_reply_status_request.py +32 -0
  23. dify_oapi/api/chat/v1/model/get_annotation_reply_status_response.py +11 -0
  24. dify_oapi/api/chat/v1/model/get_conversation_list_request.py +25 -24
  25. dify_oapi/api/chat/v1/model/get_conversation_list_response.py +4 -15
  26. dify_oapi/api/chat/v1/model/get_conversation_variables_request.py +54 -0
  27. dify_oapi/api/chat/v1/model/get_conversation_variables_response.py +10 -0
  28. dify_oapi/api/chat/v1/model/get_conversations_request.py +49 -0
  29. dify_oapi/api/chat/v1/model/get_suggested_questions_request.py +36 -0
  30. dify_oapi/api/chat/v1/model/{message_suggested_response.py → get_suggested_questions_response.py} +1 -1
  31. dify_oapi/api/chat/v1/model/list_annotations_request.py +32 -0
  32. dify_oapi/api/chat/v1/model/list_annotations_response.py +11 -0
  33. dify_oapi/api/chat/v1/model/message_file.py +46 -0
  34. dify_oapi/api/chat/v1/model/message_history_request.py +24 -24
  35. dify_oapi/api/chat/v1/model/message_history_response.py +4 -43
  36. dify_oapi/api/chat/v1/model/message_info.py +73 -0
  37. dify_oapi/api/chat/v1/model/pagination_info.py +44 -0
  38. dify_oapi/api/chat/v1/model/rename_conversation_request_body.py +1 -1
  39. dify_oapi/api/chat/v1/model/retriever_resource.py +64 -0
  40. dify_oapi/api/chat/v1/model/site_settings.py +92 -0
  41. dify_oapi/api/chat/v1/model/text_to_audio_response.py +7 -0
  42. dify_oapi/api/chat/v1/model/tool_icon.py +52 -0
  43. dify_oapi/api/chat/v1/model/update_annotation_request.py +34 -0
  44. dify_oapi/api/chat/v1/model/update_annotation_request_body.py +32 -0
  45. dify_oapi/api/chat/v1/model/update_annotation_response.py +9 -0
  46. dify_oapi/api/{completion/v1/model/file → chat/v1/model}/upload_file_request_body.py +9 -3
  47. dify_oapi/api/chat/v1/model/usage_info.py +84 -0
  48. dify_oapi/api/chat/v1/resource/__init__.py +1 -4
  49. dify_oapi/api/chat/v1/resource/annotation.py +87 -0
  50. dify_oapi/api/chat/v1/resource/chat.py +47 -25
  51. dify_oapi/api/chat/v1/resource/conversation.py +45 -33
  52. dify_oapi/api/chat/v1/resource/message.py +22 -20
  53. dify_oapi/api/chat/v1/version.py +18 -5
  54. dify_oapi/api/chatflow/__init__.py +0 -0
  55. dify_oapi/api/chatflow/service.py +8 -0
  56. dify_oapi/api/chatflow/v1/__init__.py +0 -0
  57. dify_oapi/api/chatflow/v1/model/__init__.py +0 -0
  58. dify_oapi/api/chatflow/v1/model/annotation_info.py +43 -0
  59. dify_oapi/api/chatflow/v1/model/annotation_reply_settings_request.py +37 -0
  60. dify_oapi/api/chatflow/v1/model/annotation_reply_settings_request_body.py +33 -0
  61. dify_oapi/api/chatflow/v1/model/annotation_reply_settings_response.py +10 -0
  62. dify_oapi/api/chatflow/v1/model/annotation_reply_status_request.py +36 -0
  63. dify_oapi/api/chatflow/v1/model/annotation_reply_status_response.py +11 -0
  64. dify_oapi/api/chatflow/v1/model/app_info.py +33 -0
  65. dify_oapi/api/chatflow/v1/model/app_parameters.py +276 -0
  66. dify_oapi/api/chatflow/v1/model/chat_file.py +40 -0
  67. dify_oapi/api/chatflow/v1/model/chat_message.py +88 -0
  68. dify_oapi/api/chatflow/v1/model/chatflow_types.py +210 -0
  69. dify_oapi/api/chatflow/v1/model/conversation_info.py +53 -0
  70. dify_oapi/api/chatflow/v1/model/conversation_variable.py +55 -0
  71. dify_oapi/api/chatflow/v1/model/create_annotation_request.py +30 -0
  72. dify_oapi/api/chatflow/v1/model/create_annotation_request_body.py +28 -0
  73. dify_oapi/api/chatflow/v1/model/create_annotation_response.py +9 -0
  74. dify_oapi/api/chatflow/v1/model/delete_annotation_request.py +28 -0
  75. dify_oapi/api/chatflow/v1/model/delete_annotation_response.py +7 -0
  76. dify_oapi/api/chatflow/v1/model/delete_conversation_request.py +36 -0
  77. dify_oapi/api/chatflow/v1/model/delete_conversation_request_body.py +21 -0
  78. dify_oapi/api/chatflow/v1/model/delete_conversation_response.py +17 -0
  79. dify_oapi/api/chatflow/v1/model/feedback_info.py +75 -0
  80. dify_oapi/api/chatflow/v1/model/file_info.py +53 -0
  81. dify_oapi/api/chatflow/v1/model/get_annotations_request.py +30 -0
  82. dify_oapi/api/chatflow/v1/model/get_annotations_response.py +13 -0
  83. dify_oapi/api/chatflow/v1/model/get_conversation_messages_request.py +38 -0
  84. dify_oapi/api/chatflow/v1/model/get_conversation_messages_response.py +33 -0
  85. dify_oapi/api/chatflow/v1/model/get_conversation_variables_request.py +44 -0
  86. dify_oapi/api/chatflow/v1/model/get_conversation_variables_response.py +33 -0
  87. dify_oapi/api/chatflow/v1/model/get_conversations_request.py +40 -0
  88. dify_oapi/api/chatflow/v1/model/get_conversations_response.py +33 -0
  89. dify_oapi/api/chatflow/v1/model/get_suggested_questions_request.py +32 -0
  90. dify_oapi/api/{completion/v1/model/feedback/message_feedback_response.py → chatflow/v1/model/get_suggested_questions_response.py} +2 -3
  91. dify_oapi/api/chatflow/v1/model/rename_conversation_request.py +36 -0
  92. dify_oapi/api/chatflow/v1/model/rename_conversation_request_body.py +31 -0
  93. dify_oapi/api/chatflow/v1/model/rename_conversation_response.py +53 -0
  94. dify_oapi/api/chatflow/v1/model/retriever_resource.py +58 -0
  95. dify_oapi/api/chatflow/v1/model/send_chat_message_request.py +30 -0
  96. dify_oapi/api/chatflow/v1/model/send_chat_message_request_body.py +54 -0
  97. dify_oapi/api/chatflow/v1/model/send_chat_message_response.py +7 -0
  98. dify_oapi/api/chatflow/v1/model/stop_chat_message_request.py +36 -0
  99. dify_oapi/api/chatflow/v1/model/stop_chat_message_request_body.py +21 -0
  100. dify_oapi/api/{dify/v1/model/message_feedback_response.py → chatflow/v1/model/stop_chat_message_response.py} +1 -1
  101. dify_oapi/api/chatflow/v1/model/tool_icon.py +48 -0
  102. dify_oapi/api/chatflow/v1/model/update_annotation_request.py +36 -0
  103. dify_oapi/api/chatflow/v1/model/update_annotation_request_body.py +28 -0
  104. dify_oapi/api/chatflow/v1/model/update_annotation_response.py +9 -0
  105. dify_oapi/api/chatflow/v1/model/usage_info.py +78 -0
  106. dify_oapi/api/chatflow/v1/model/user_input_form.py +141 -0
  107. dify_oapi/api/chatflow/v1/model/webapp_settings.py +88 -0
  108. dify_oapi/api/chatflow/v1/resource/__init__.py +0 -0
  109. dify_oapi/api/chatflow/v1/resource/annotation.py +87 -0
  110. dify_oapi/api/chatflow/v1/resource/chatflow.py +78 -0
  111. dify_oapi/api/chatflow/v1/resource/conversation.py +75 -0
  112. dify_oapi/api/chatflow/v1/version.py +22 -0
  113. dify_oapi/api/completion/v1/resource/__init__.py +0 -6
  114. dify_oapi/api/completion/v1/version.py +8 -6
  115. dify_oapi/api/{chat → dify}/v1/model/audio_to_text_request_body.py +2 -2
  116. dify_oapi/api/{completion/v1/model/feedback → dify/v1/model}/get_feedbacks_request.py +12 -12
  117. dify_oapi/api/dify/v1/model/get_feedbacks_response.py +26 -0
  118. dify_oapi/api/{workflow → dify}/v1/model/get_parameters_request.py +4 -0
  119. dify_oapi/api/dify/v1/model/{get_parameter_response.py → get_parameters_response.py} +6 -2
  120. dify_oapi/api/dify/v1/model/get_site_response.py +17 -0
  121. dify_oapi/api/dify/v1/model/submit_feedback_request.py +34 -0
  122. dify_oapi/api/dify/v1/model/submit_feedback_request_body.py +35 -0
  123. dify_oapi/api/dify/v1/model/submit_feedback_response.py +7 -0
  124. dify_oapi/api/dify/v1/resource/__init__.py +0 -6
  125. dify_oapi/api/dify/v1/resource/audio.py +12 -0
  126. dify_oapi/api/dify/v1/resource/feedback.py +31 -0
  127. dify_oapi/api/dify/v1/resource/info.py +34 -2
  128. dify_oapi/api/dify/v1/version.py +5 -4
  129. dify_oapi/api/knowledge/service.py +3 -3
  130. dify_oapi/api/knowledge/v1/model/create_document_by_file_request.py +1 -3
  131. dify_oapi/api/knowledge/v1/model/create_document_by_file_request_body.py +4 -46
  132. dify_oapi/api/knowledge/v1/model/create_document_by_file_request_body_data.py +73 -0
  133. dify_oapi/api/knowledge/v1/model/data_source_detail.py +23 -0
  134. dify_oapi/api/knowledge/v1/model/dataset_info.py +10 -9
  135. dify_oapi/api/knowledge/v1/model/dataset_metadata.py +14 -0
  136. dify_oapi/api/knowledge/v1/model/document_info.py +18 -6
  137. dify_oapi/api/knowledge/v1/model/external_knowledge_info.py +11 -1
  138. dify_oapi/api/knowledge/v1/model/external_retrieval_model.py +13 -0
  139. dify_oapi/api/knowledge/v1/model/knowledge_types.py +2 -2
  140. dify_oapi/api/knowledge/v1/model/process_rule.py +0 -6
  141. dify_oapi/api/knowledge/v1/model/retrieval_model.py +10 -4
  142. dify_oapi/api/knowledge/v1/model/update_document_by_file_request.py +1 -3
  143. dify_oapi/api/knowledge/v1/model/update_document_by_file_request_body.py +4 -41
  144. dify_oapi/api/knowledge/v1/model/update_document_by_file_request_body_data.py +68 -0
  145. dify_oapi/api/knowledge/v1/model/weights.py +27 -0
  146. dify_oapi/api/knowledge/v1/resource/__init__.py +0 -8
  147. dify_oapi/api/workflow/v1/model/chunk_workflow_event.py +74 -0
  148. dify_oapi/api/workflow/v1/model/input_file_object_workflow.py +76 -0
  149. dify_oapi/api/workflow/v1/model/node_finished_data.py +118 -0
  150. dify_oapi/api/workflow/v1/model/node_started_data.py +81 -0
  151. dify_oapi/api/workflow/v1/model/ping_data.py +28 -0
  152. dify_oapi/api/workflow/v1/model/run_workflow_request_body.py +1 -1
  153. dify_oapi/api/workflow/v1/model/text_chunk_data.py +39 -0
  154. dify_oapi/api/workflow/v1/model/tts_message_data.py +45 -0
  155. dify_oapi/api/workflow/v1/model/tts_message_end_data.py +45 -0
  156. dify_oapi/api/workflow/v1/model/workflow_completion_response.py +50 -0
  157. dify_oapi/api/workflow/v1/model/workflow_finished_data.py +93 -0
  158. dify_oapi/api/workflow/v1/model/workflow_started_data.py +51 -0
  159. dify_oapi/api/workflow/v1/model/workflow_types.py +27 -12
  160. dify_oapi/api/workflow/v1/resource/workflow.py +0 -34
  161. dify_oapi/api/workflow/v1/version.py +9 -0
  162. dify_oapi/client.py +49 -4
  163. dify_oapi/core/http/transport/__init__.py +2 -1
  164. dify_oapi/core/http/transport/async_transport.py +73 -50
  165. dify_oapi/core/http/transport/connection_pool.py +131 -0
  166. dify_oapi/core/http/transport/sync_transport.py +73 -50
  167. dify_oapi/core/model/config.py +10 -0
  168. dify_oapi2-1.0.0.dist-info/METADATA +365 -0
  169. {dify_oapi2-0.4.0.dist-info → dify_oapi2-1.0.0.dist-info}/RECORD +174 -98
  170. dify_oapi/api/chat/v1/model/chat_request_file.py +0 -46
  171. dify_oapi/api/chat/v1/model/message_suggested_request.py +0 -36
  172. dify_oapi/api/chat/v1/resource/audio.py +0 -17
  173. dify_oapi/api/completion/v1/model/audio/audio_info.py +0 -28
  174. dify_oapi/api/completion/v1/model/audio/text_to_audio_request.py +0 -32
  175. dify_oapi/api/completion/v1/model/audio/text_to_audio_request_body.py +0 -33
  176. dify_oapi/api/completion/v1/model/audio/text_to_audio_response.py +0 -9
  177. dify_oapi/api/completion/v1/model/feedback/get_feedbacks_response.py +0 -9
  178. dify_oapi/api/completion/v1/model/feedback/message_feedback_request.py +0 -38
  179. dify_oapi/api/completion/v1/model/feedback/message_feedback_request_body.py +0 -35
  180. dify_oapi/api/completion/v1/model/file/upload_file_request.py +0 -42
  181. dify_oapi/api/completion/v1/model/file/upload_file_response.py +0 -9
  182. dify_oapi/api/completion/v1/model/info/feature_config.py +0 -91
  183. dify_oapi/api/completion/v1/model/info/file_upload_config.py +0 -23
  184. dify_oapi/api/completion/v1/model/info/get_info_request.py +0 -24
  185. dify_oapi/api/completion/v1/model/info/get_info_response.py +0 -9
  186. dify_oapi/api/completion/v1/model/info/get_parameters_request.py +0 -24
  187. dify_oapi/api/completion/v1/model/info/get_parameters_response.py +0 -9
  188. dify_oapi/api/completion/v1/model/info/get_site_response.py +0 -9
  189. dify_oapi/api/completion/v1/model/info/parameters_info.py +0 -75
  190. dify_oapi/api/completion/v1/model/info/site_info.py +0 -90
  191. dify_oapi/api/completion/v1/model/info/system_parameters.py +0 -38
  192. dify_oapi/api/completion/v1/model/info/user_input_form.py +0 -158
  193. dify_oapi/api/completion/v1/resource/audio.py +0 -19
  194. dify_oapi/api/completion/v1/resource/feedback.py +0 -33
  195. dify_oapi/api/completion/v1/resource/file.py +0 -19
  196. dify_oapi/api/completion/v1/resource/info.py +0 -39
  197. dify_oapi/api/dify/v1/model/get_parameter_request.py +0 -30
  198. dify_oapi/api/dify/v1/model/message_feedback_request.py +0 -38
  199. dify_oapi/api/dify/v1/model/message_feedback_request_body.py +0 -30
  200. dify_oapi/api/dify/v1/resource/message.py +0 -21
  201. dify_oapi/api/dify/v1/resource/meta.py +0 -17
  202. dify_oapi/api/dify/v1/resource/parameter.py +0 -19
  203. dify_oapi/api/workflow/v1/model/get_info_request.py +0 -24
  204. dify_oapi/api/workflow/v1/model/get_info_response.py +0 -9
  205. dify_oapi/api/workflow/v1/model/get_parameters_response.py +0 -9
  206. dify_oapi/api/workflow/v1/model/get_site_request.py +0 -24
  207. dify_oapi/api/workflow/v1/model/get_site_response.py +0 -9
  208. dify_oapi/api/workflow/v1/model/upload_file_request.py +0 -42
  209. dify_oapi/api/workflow/v1/model/upload_file_response.py +0 -9
  210. dify_oapi2-0.4.0.dist-info/METADATA +0 -303
  211. /dify_oapi/api/{chat → dify}/v1/model/audio_to_text_request.py +0 -0
  212. /dify_oapi/api/{chat → dify}/v1/model/audio_to_text_response.py +0 -0
  213. /dify_oapi/api/{completion/v1/model/info → dify/v1/model}/get_site_request.py +0 -0
  214. {dify_oapi2-0.4.0.dist-info → dify_oapi2-1.0.0.dist-info}/LICENSE +0 -0
  215. {dify_oapi2-0.4.0.dist-info → dify_oapi2-1.0.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,11 @@
1
+ from dify_oapi.core.model.base_response import BaseResponse
2
+
3
+ from .chat_types import JobStatus
4
+
5
+
6
+ class GetAnnotationReplyStatusResponse(BaseResponse):
7
+ """Response for getting annotation reply settings status."""
8
+
9
+ job_id: str | None = None
10
+ job_status: JobStatus | None = None
11
+ error_msg: str | None = None
@@ -1,48 +1,49 @@
1
1
  from __future__ import annotations
2
2
 
3
+ from dify_oapi.api.chat.v1.model.chat_types import SortBy
3
4
  from dify_oapi.core.enum import HttpMethod
4
5
  from dify_oapi.core.model.base_request import BaseRequest
5
6
 
6
7
 
7
- class GetConversationListRequest(BaseRequest):
8
+ class GetConversationsRequest(BaseRequest):
8
9
  def __init__(self):
9
10
  super().__init__()
10
11
  self.user: str | None = None
11
12
  self.last_id: str | None = None
12
13
  self.limit: int | None = None
13
- self.pinned: bool | None = None
14
+ self.sort_by: SortBy | None = None
14
15
 
15
16
  @staticmethod
16
- def builder() -> GetConversationListRequestBuilder:
17
- return GetConversationListRequestBuilder()
17
+ def builder() -> GetConversationsRequestBuilder:
18
+ return GetConversationsRequestBuilder()
18
19
 
19
20
 
20
- class GetConversationListRequestBuilder:
21
+ class GetConversationsRequestBuilder:
21
22
  def __init__(self):
22
- get_conversation_list_request = GetConversationListRequest()
23
- get_conversation_list_request.http_method = HttpMethod.GET
24
- get_conversation_list_request.uri = "/v1/conversations"
25
- self._get_conversation_list_request = get_conversation_list_request
26
-
27
- def user(self, user: str) -> GetConversationListRequestBuilder:
28
- self._get_conversation_list_request.user = user
29
- self._get_conversation_list_request.add_query("user", user)
23
+ get_conversations_request = GetConversationsRequest()
24
+ get_conversations_request.http_method = HttpMethod.GET
25
+ get_conversations_request.uri = "/v1/conversations"
26
+ self._get_conversations_request = get_conversations_request
27
+
28
+ def user(self, user: str) -> GetConversationsRequestBuilder:
29
+ self._get_conversations_request.user = user
30
+ self._get_conversations_request.add_query("user", user)
30
31
  return self
31
32
 
32
- def last_id(self, last_id: str) -> GetConversationListRequestBuilder:
33
- self._get_conversation_list_request.last_id = last_id
34
- self._get_conversation_list_request.add_query("last_id", last_id)
33
+ def last_id(self, last_id: str) -> GetConversationsRequestBuilder:
34
+ self._get_conversations_request.last_id = last_id
35
+ self._get_conversations_request.add_query("last_id", last_id)
35
36
  return self
36
37
 
37
- def limit(self, limit: int) -> GetConversationListRequestBuilder:
38
- self._get_conversation_list_request.limit = limit
39
- self._get_conversation_list_request.add_query("limit", limit)
38
+ def limit(self, limit: int) -> GetConversationsRequestBuilder:
39
+ self._get_conversations_request.limit = limit
40
+ self._get_conversations_request.add_query("limit", limit)
40
41
  return self
41
42
 
42
- def pinned(self, pinned: bool) -> GetConversationListRequestBuilder:
43
- self._get_conversation_list_request.pinned = pinned
44
- self._get_conversation_list_request.add_query("pinned", str(pinned).lower())
43
+ def sort_by(self, sort_by: SortBy) -> GetConversationsRequestBuilder:
44
+ self._get_conversations_request.sort_by = sort_by
45
+ self._get_conversations_request.add_query("sort_by", sort_by)
45
46
  return self
46
47
 
47
- def build(self) -> GetConversationListRequest:
48
- return self._get_conversation_list_request
48
+ def build(self) -> GetConversationsRequest:
49
+ return self._get_conversations_request
@@ -1,21 +1,10 @@
1
1
  from __future__ import annotations
2
2
 
3
- from pydantic import BaseModel
4
-
3
+ from dify_oapi.api.chat.v1.model.conversation_info import ConversationInfo
5
4
  from dify_oapi.core.model.base_response import BaseResponse
6
5
 
7
6
 
8
- class GetConversationListResponse(BaseResponse):
9
- data: list[GetConversationListData] | None = None
10
- has_more: bool | None = None
7
+ class GetConversationsResponse(BaseResponse):
11
8
  limit: int | None = None
12
-
13
-
14
- class GetConversationListData(BaseModel):
15
- id: str | None = None
16
- name: str | None = None
17
- inputs: dict | None = None
18
- status: str | None = None
19
- introduction: str | None = None
20
- created_at: int | None = None
21
- updated_at: int | None = None
9
+ has_more: bool | None = None
10
+ data: list[ConversationInfo] | None = None
@@ -0,0 +1,54 @@
1
+ from __future__ import annotations
2
+
3
+ from dify_oapi.core.enum import HttpMethod
4
+ from dify_oapi.core.model.base_request import BaseRequest
5
+
6
+
7
+ class GetConversationVariablesRequest(BaseRequest):
8
+ def __init__(self):
9
+ super().__init__()
10
+ self.conversation_id: str | None = None
11
+ self.user: str | None = None
12
+ self.last_id: str | None = None
13
+ self.limit: int | None = None
14
+ self.variable_name: str | None = None
15
+
16
+ @staticmethod
17
+ def builder() -> GetConversationVariablesRequestBuilder:
18
+ return GetConversationVariablesRequestBuilder()
19
+
20
+
21
+ class GetConversationVariablesRequestBuilder:
22
+ def __init__(self):
23
+ get_conversation_variables_request = GetConversationVariablesRequest()
24
+ get_conversation_variables_request.http_method = HttpMethod.GET
25
+ get_conversation_variables_request.uri = "/v1/conversations/:conversation_id/variables"
26
+ self._get_conversation_variables_request = get_conversation_variables_request
27
+
28
+ def conversation_id(self, conversation_id: str) -> GetConversationVariablesRequestBuilder:
29
+ self._get_conversation_variables_request.conversation_id = conversation_id
30
+ self._get_conversation_variables_request.paths["conversation_id"] = conversation_id
31
+ return self
32
+
33
+ def user(self, user: str) -> GetConversationVariablesRequestBuilder:
34
+ self._get_conversation_variables_request.user = user
35
+ self._get_conversation_variables_request.add_query("user", user)
36
+ return self
37
+
38
+ def last_id(self, last_id: str) -> GetConversationVariablesRequestBuilder:
39
+ self._get_conversation_variables_request.last_id = last_id
40
+ self._get_conversation_variables_request.add_query("last_id", last_id)
41
+ return self
42
+
43
+ def limit(self, limit: int) -> GetConversationVariablesRequestBuilder:
44
+ self._get_conversation_variables_request.limit = limit
45
+ self._get_conversation_variables_request.add_query("limit", limit)
46
+ return self
47
+
48
+ def variable_name(self, variable_name: str) -> GetConversationVariablesRequestBuilder:
49
+ self._get_conversation_variables_request.variable_name = variable_name
50
+ self._get_conversation_variables_request.add_query("variable_name", variable_name)
51
+ return self
52
+
53
+ def build(self) -> GetConversationVariablesRequest:
54
+ return self._get_conversation_variables_request
@@ -0,0 +1,10 @@
1
+ from __future__ import annotations
2
+
3
+ from dify_oapi.api.chat.v1.model.conversation_variable import ConversationVariable
4
+ from dify_oapi.core.model.base_response import BaseResponse
5
+
6
+
7
+ class GetConversationVariablesResponse(BaseResponse):
8
+ limit: int | None = None
9
+ has_more: bool | None = None
10
+ data: list[ConversationVariable] | None = None
@@ -0,0 +1,49 @@
1
+ from __future__ import annotations
2
+
3
+ from dify_oapi.api.chat.v1.model.chat_types import SortBy
4
+ from dify_oapi.core.enum import HttpMethod
5
+ from dify_oapi.core.model.base_request import BaseRequest
6
+
7
+
8
+ class GetConversationsRequest(BaseRequest):
9
+ def __init__(self):
10
+ super().__init__()
11
+ self.user: str | None = None
12
+ self.last_id: str | None = None
13
+ self.limit: int | None = None
14
+ self.sort_by: SortBy | None = None
15
+
16
+ @staticmethod
17
+ def builder() -> GetConversationsRequestBuilder:
18
+ return GetConversationsRequestBuilder()
19
+
20
+
21
+ class GetConversationsRequestBuilder:
22
+ def __init__(self):
23
+ get_conversations_request = GetConversationsRequest()
24
+ get_conversations_request.http_method = HttpMethod.GET
25
+ get_conversations_request.uri = "/v1/conversations"
26
+ self._get_conversations_request = get_conversations_request
27
+
28
+ def user(self, user: str) -> GetConversationsRequestBuilder:
29
+ self._get_conversations_request.user = user
30
+ self._get_conversations_request.add_query("user", user)
31
+ return self
32
+
33
+ def last_id(self, last_id: str) -> GetConversationsRequestBuilder:
34
+ self._get_conversations_request.last_id = last_id
35
+ self._get_conversations_request.add_query("last_id", last_id)
36
+ return self
37
+
38
+ def limit(self, limit: int) -> GetConversationsRequestBuilder:
39
+ self._get_conversations_request.limit = limit
40
+ self._get_conversations_request.add_query("limit", limit)
41
+ return self
42
+
43
+ def sort_by(self, sort_by: SortBy) -> GetConversationsRequestBuilder:
44
+ self._get_conversations_request.sort_by = sort_by
45
+ self._get_conversations_request.add_query("sort_by", sort_by)
46
+ return self
47
+
48
+ def build(self) -> GetConversationsRequest:
49
+ return self._get_conversations_request
@@ -0,0 +1,36 @@
1
+ from __future__ import annotations
2
+
3
+ from dify_oapi.core.enum import HttpMethod
4
+ from dify_oapi.core.model.base_request import BaseRequest
5
+
6
+
7
+ class GetSuggestedQuestionsRequest(BaseRequest):
8
+ def __init__(self) -> None:
9
+ super().__init__()
10
+ self.message_id: str | None = None
11
+ self.user: str | None = None
12
+
13
+ @staticmethod
14
+ def builder() -> GetSuggestedQuestionsRequestBuilder:
15
+ return GetSuggestedQuestionsRequestBuilder()
16
+
17
+
18
+ class GetSuggestedQuestionsRequestBuilder:
19
+ def __init__(self) -> None:
20
+ get_suggested_questions_request = GetSuggestedQuestionsRequest()
21
+ get_suggested_questions_request.http_method = HttpMethod.GET
22
+ get_suggested_questions_request.uri = "/v1/messages/:message_id/suggested"
23
+ self._get_suggested_questions_request = get_suggested_questions_request
24
+
25
+ def message_id(self, message_id: str) -> GetSuggestedQuestionsRequestBuilder:
26
+ self._get_suggested_questions_request.message_id = message_id
27
+ self._get_suggested_questions_request.paths["message_id"] = message_id
28
+ return self
29
+
30
+ def user(self, user: str) -> GetSuggestedQuestionsRequestBuilder:
31
+ self._get_suggested_questions_request.user = user
32
+ self._get_suggested_questions_request.add_query("user", user)
33
+ return self
34
+
35
+ def build(self) -> GetSuggestedQuestionsRequest:
36
+ return self._get_suggested_questions_request
@@ -1,6 +1,6 @@
1
1
  from dify_oapi.core.model.base_response import BaseResponse
2
2
 
3
3
 
4
- class MessageSuggestedResponse(BaseResponse):
4
+ class GetSuggestedQuestionsResponse(BaseResponse):
5
5
  result: str | None = None
6
6
  data: list[str] | None = None
@@ -0,0 +1,32 @@
1
+ from dify_oapi.core.enum import HttpMethod
2
+ from dify_oapi.core.model.base_request import BaseRequest
3
+
4
+
5
+ class ListAnnotationsRequest(BaseRequest):
6
+ def __init__(self) -> None:
7
+ super().__init__()
8
+
9
+ @staticmethod
10
+ def builder() -> "ListAnnotationsRequestBuilder":
11
+ return ListAnnotationsRequestBuilder()
12
+
13
+
14
+ class ListAnnotationsRequestBuilder:
15
+ def __init__(self) -> None:
16
+ list_annotations_request = ListAnnotationsRequest()
17
+ list_annotations_request.http_method = HttpMethod.GET
18
+ list_annotations_request.uri = "/v1/apps/annotations"
19
+ self._list_annotations_request = list_annotations_request
20
+
21
+ def page(self, page: int | None) -> "ListAnnotationsRequestBuilder":
22
+ if page is not None:
23
+ self._list_annotations_request.add_query("page", str(page))
24
+ return self
25
+
26
+ def limit(self, limit: int | None) -> "ListAnnotationsRequestBuilder":
27
+ if limit is not None:
28
+ self._list_annotations_request.add_query("limit", str(limit))
29
+ return self
30
+
31
+ def build(self) -> ListAnnotationsRequest:
32
+ return self._list_annotations_request
@@ -0,0 +1,11 @@
1
+ from dify_oapi.core.model.base_response import BaseResponse
2
+
3
+ from .annotation_info import AnnotationInfo
4
+
5
+
6
+ class ListAnnotationsResponse(BaseResponse):
7
+ data: list[AnnotationInfo] = []
8
+ has_more: bool = False
9
+ limit: int = 20
10
+ total: int = 0
11
+ page: int = 1
@@ -0,0 +1,46 @@
1
+ """Message file model for Chat API."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from pydantic import BaseModel
6
+
7
+ from .chat_types import MessageBelongsTo
8
+
9
+
10
+ class MessageFile(BaseModel):
11
+ """Message file model."""
12
+
13
+ id: str | None = None
14
+ type: str | None = None
15
+ url: str | None = None
16
+ belongs_to: MessageBelongsTo | None = None
17
+
18
+ @staticmethod
19
+ def builder() -> MessageFileBuilder:
20
+ return MessageFileBuilder()
21
+
22
+
23
+ class MessageFileBuilder:
24
+ """Builder for MessageFile."""
25
+
26
+ def __init__(self):
27
+ self._message_file = MessageFile()
28
+
29
+ def build(self) -> MessageFile:
30
+ return self._message_file
31
+
32
+ def id(self, id: str) -> MessageFileBuilder:
33
+ self._message_file.id = id
34
+ return self
35
+
36
+ def type(self, type: str) -> MessageFileBuilder:
37
+ self._message_file.type = type
38
+ return self
39
+
40
+ def url(self, url: str) -> MessageFileBuilder:
41
+ self._message_file.url = url
42
+ return self
43
+
44
+ def belongs_to(self, belongs_to: MessageBelongsTo) -> MessageFileBuilder:
45
+ self._message_file.belongs_to = belongs_to
46
+ return self
@@ -4,7 +4,7 @@ from dify_oapi.core.enum import HttpMethod
4
4
  from dify_oapi.core.model.base_request import BaseRequest
5
5
 
6
6
 
7
- class MessageHistoryRequest(BaseRequest):
7
+ class GetMessageHistoryRequest(BaseRequest):
8
8
  def __init__(self):
9
9
  super().__init__()
10
10
  self.conversation_id: str | None = None
@@ -13,36 +13,36 @@ class MessageHistoryRequest(BaseRequest):
13
13
  self.limit: int | None = None
14
14
 
15
15
  @staticmethod
16
- def builder() -> MessageHistoryRequestBuilder:
17
- return MessageHistoryRequestBuilder()
16
+ def builder() -> GetMessageHistoryRequestBuilder:
17
+ return GetMessageHistoryRequestBuilder()
18
18
 
19
19
 
20
- class MessageHistoryRequestBuilder:
20
+ class GetMessageHistoryRequestBuilder:
21
21
  def __init__(self):
22
- message_history_request = MessageHistoryRequest()
23
- message_history_request.http_method = HttpMethod.GET
24
- message_history_request.uri = "/v1/messages"
25
- self._message_history_request = message_history_request
26
-
27
- def build(self) -> MessageHistoryRequest:
28
- return self._message_history_request
29
-
30
- def conversation_id(self, conversation_id: str):
31
- self._message_history_request.conversation_id = conversation_id
32
- self._message_history_request.add_query("conversation_id", conversation_id)
22
+ get_message_history_request = GetMessageHistoryRequest()
23
+ get_message_history_request.http_method = HttpMethod.GET
24
+ get_message_history_request.uri = "/v1/messages"
25
+ self._get_message_history_request = get_message_history_request
26
+
27
+ def conversation_id(self, conversation_id: str) -> GetMessageHistoryRequestBuilder:
28
+ self._get_message_history_request.conversation_id = conversation_id
29
+ self._get_message_history_request.add_query("conversation_id", conversation_id)
33
30
  return self
34
31
 
35
- def user(self, user: str):
36
- self._message_history_request.user = user
37
- self._message_history_request.add_query("user", user)
32
+ def user(self, user: str) -> GetMessageHistoryRequestBuilder:
33
+ self._get_message_history_request.user = user
34
+ self._get_message_history_request.add_query("user", user)
38
35
  return self
39
36
 
40
- def first_id(self, first_id: str):
41
- self._message_history_request.first_id = first_id
42
- self._message_history_request.add_query("first_id", first_id)
37
+ def first_id(self, first_id: str) -> GetMessageHistoryRequestBuilder:
38
+ self._get_message_history_request.first_id = first_id
39
+ self._get_message_history_request.add_query("first_id", first_id)
43
40
  return self
44
41
 
45
- def limit(self, limit: int):
46
- self._message_history_request.limit = limit
47
- self._message_history_request.add_query("limit", limit)
42
+ def limit(self, limit: int) -> GetMessageHistoryRequestBuilder:
43
+ self._get_message_history_request.limit = limit
44
+ self._get_message_history_request.add_query("limit", limit)
48
45
  return self
46
+
47
+ def build(self) -> GetMessageHistoryRequest:
48
+ return self._get_message_history_request
@@ -1,49 +1,10 @@
1
1
  from __future__ import annotations
2
2
 
3
- from pydantic import BaseModel
4
-
3
+ from dify_oapi.api.chat.v1.model.message_info import MessageInfo
5
4
  from dify_oapi.core.model.base_response import BaseResponse
6
5
 
7
6
 
8
- class MessageHistoryResponse(BaseResponse):
9
- data: list[dict] | None = None
10
- id: str | None = None
11
- conversation_id: str | None = None
12
- inputs: list[dict] | None = None
13
- query: str | None = None
14
- message_files: list[MessageHistoryResponseFile] | None = None
15
- answer: str | None = None
16
- created_at: int | None = None
17
- feedback: MessageHistoryResponseFeedback | None = None
18
- retriever_resources: list[dict] | None = None
19
- has_more: bool | None = None
7
+ class GetMessageHistoryResponse(BaseResponse):
20
8
  limit: int | None = None
21
-
22
-
23
- class MessageHistoryResponseFeedback(BaseModel):
24
- rating: str | None = None
25
-
26
-
27
- class MessageHistoryResponseFile(BaseModel):
28
- id: str | None = None
29
- type: str | None = None
30
- url: str | None = None
31
- belongs_to: str | None = None
32
- agent_thoughts: list[MessageHistoryResponseFileAgentThought] | None = None
33
-
34
-
35
- class MessageHistoryResponseFileAgentThought(BaseResponse):
36
- id: str | None = None
37
- message_id: str | None = None
38
- position: int | None = None
39
- thought: str | None = None
40
- observation: str | None = None
41
- tool: str | None = None
42
- tool_input: str | None = None
43
- created_at: int | None = None
44
- message_files: list[MessageHistoryResponseFileAgentThoughtFile] | None = None
45
- conversation_id: str | None = None
46
-
47
-
48
- class MessageHistoryResponseFileAgentThoughtFile(BaseModel):
49
- file_id: str | None = None
9
+ has_more: bool | None = None
10
+ data: list[MessageInfo] | None = None
@@ -0,0 +1,73 @@
1
+ from typing import Any
2
+
3
+ from pydantic import BaseModel
4
+
5
+ from .agent_thought import AgentThought
6
+ from .feedback_info import FeedbackInfo
7
+ from .message_file import MessageFile
8
+ from .retriever_resource import RetrieverResource
9
+
10
+
11
+ class MessageInfo(BaseModel):
12
+ id: str | None = None
13
+ conversation_id: str | None = None
14
+ inputs: dict[str, Any] | None = None
15
+ query: str | None = None
16
+ answer: str | None = None
17
+ message_files: list[MessageFile] | None = None
18
+ feedback: FeedbackInfo | None = None
19
+ retriever_resources: list[RetrieverResource] | None = None
20
+ agent_thoughts: list[AgentThought] | None = None
21
+ created_at: int | None = None
22
+
23
+ @staticmethod
24
+ def builder() -> "MessageInfoBuilder":
25
+ return MessageInfoBuilder()
26
+
27
+
28
+ class MessageInfoBuilder:
29
+ def __init__(self):
30
+ self._message_info = MessageInfo()
31
+
32
+ def id(self, id: str) -> "MessageInfoBuilder":
33
+ self._message_info.id = id
34
+ return self
35
+
36
+ def conversation_id(self, conversation_id: str) -> "MessageInfoBuilder":
37
+ self._message_info.conversation_id = conversation_id
38
+ return self
39
+
40
+ def inputs(self, inputs: dict[str, Any]) -> "MessageInfoBuilder":
41
+ self._message_info.inputs = inputs
42
+ return self
43
+
44
+ def query(self, query: str) -> "MessageInfoBuilder":
45
+ self._message_info.query = query
46
+ return self
47
+
48
+ def answer(self, answer: str) -> "MessageInfoBuilder":
49
+ self._message_info.answer = answer
50
+ return self
51
+
52
+ def message_files(self, message_files: list[MessageFile]) -> "MessageInfoBuilder":
53
+ self._message_info.message_files = message_files
54
+ return self
55
+
56
+ def feedback(self, feedback: FeedbackInfo) -> "MessageInfoBuilder":
57
+ self._message_info.feedback = feedback
58
+ return self
59
+
60
+ def retriever_resources(self, retriever_resources: list[RetrieverResource]) -> "MessageInfoBuilder":
61
+ self._message_info.retriever_resources = retriever_resources
62
+ return self
63
+
64
+ def agent_thoughts(self, agent_thoughts: list[AgentThought]) -> "MessageInfoBuilder":
65
+ self._message_info.agent_thoughts = agent_thoughts
66
+ return self
67
+
68
+ def created_at(self, created_at: int) -> "MessageInfoBuilder":
69
+ self._message_info.created_at = created_at
70
+ return self
71
+
72
+ def build(self) -> MessageInfo:
73
+ return self._message_info
@@ -0,0 +1,44 @@
1
+ """Pagination information model for Chat API."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from pydantic import BaseModel
6
+
7
+
8
+ class PaginationInfo(BaseModel):
9
+ """Pagination information model."""
10
+
11
+ limit: int | None = None
12
+ has_more: bool | None = None
13
+ total: int | None = None
14
+ page: int | None = None
15
+
16
+ @staticmethod
17
+ def builder() -> PaginationInfoBuilder:
18
+ return PaginationInfoBuilder()
19
+
20
+
21
+ class PaginationInfoBuilder:
22
+ """Builder for PaginationInfo."""
23
+
24
+ def __init__(self):
25
+ self._pagination_info = PaginationInfo()
26
+
27
+ def build(self) -> PaginationInfo:
28
+ return self._pagination_info
29
+
30
+ def limit(self, limit: int) -> PaginationInfoBuilder:
31
+ self._pagination_info.limit = limit
32
+ return self
33
+
34
+ def has_more(self, has_more: bool) -> PaginationInfoBuilder:
35
+ self._pagination_info.has_more = has_more
36
+ return self
37
+
38
+ def total(self, total: int) -> PaginationInfoBuilder:
39
+ self._pagination_info.total = total
40
+ return self
41
+
42
+ def page(self, page: int) -> PaginationInfoBuilder:
43
+ self._pagination_info.page = page
44
+ return self
@@ -17,7 +17,7 @@ class RenameConversationRequestBodyBuilder:
17
17
  def __init__(self):
18
18
  self._rename_conversation_request_body = RenameConversationRequestBody()
19
19
 
20
- def builder(self) -> RenameConversationRequestBody:
20
+ def build(self) -> RenameConversationRequestBody:
21
21
  return self._rename_conversation_request_body
22
22
 
23
23
  def name(self, name: str) -> RenameConversationRequestBodyBuilder: