qanswer-sdk 0.46.0.dev0__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 (624) hide show
  1. qanswer_sdk/__init__.py +1268 -0
  2. qanswer_sdk/api/__init__.py +64 -0
  3. qanswer_sdk/api/admin_api.py +7383 -0
  4. qanswer_sdk/api/ai_assistant_access_rights_api.py +5879 -0
  5. qanswer_sdk/api/ai_assistant_api.py +8960 -0
  6. qanswer_sdk/api/auto_complete_api.py +612 -0
  7. qanswer_sdk/api/bot_slack_api.py +1069 -0
  8. qanswer_sdk/api/branding_api.py +5723 -0
  9. qanswer_sdk/api/chatbot_api.py +1102 -0
  10. qanswer_sdk/api/connector_audio_api.py +3264 -0
  11. qanswer_sdk/api/connector_document_api.py +1990 -0
  12. qanswer_sdk/api/connector_e_consilium_api.py +313 -0
  13. qanswer_sdk/api/connector_e_consilium_search_index_api_api.py +1164 -0
  14. qanswer_sdk/api/connector_google_drive_api.py +1896 -0
  15. qanswer_sdk/api/connector_imapapi_api.py +1775 -0
  16. qanswer_sdk/api/connector_one_drive_api.py +1579 -0
  17. qanswer_sdk/api/connector_onenote_api.py +1596 -0
  18. qanswer_sdk/api/connector_pinecone_api.py +893 -0
  19. qanswer_sdk/api/connector_publication_office_api_api.py +1230 -0
  20. qanswer_sdk/api/connector_qn_a_api.py +1521 -0
  21. qanswer_sdk/api/connector_rdf_answer_api.py +1393 -0
  22. qanswer_sdk/api/connector_rdf_api.py +5093 -0
  23. qanswer_sdk/api/connector_sharepoint_api.py +3445 -0
  24. qanswer_sdk/api/connector_websearch_api.py +332 -0
  25. qanswer_sdk/api/connector_website_api.py +2829 -0
  26. qanswer_sdk/api/connectors_api.py +6824 -0
  27. qanswer_sdk/api/connectors_data_api.py +5415 -0
  28. qanswer_sdk/api/conversation_logs_api.py +13159 -0
  29. qanswer_sdk/api/dataset_api.py +6487 -0
  30. qanswer_sdk/api/dataset_config_api.py +4643 -0
  31. qanswer_sdk/api/debug_api.py +278 -0
  32. qanswer_sdk/api/default_api.py +763 -0
  33. qanswer_sdk/api/embedder_endpoint_api.py +3330 -0
  34. qanswer_sdk/api/frontend_config_api.py +270 -0
  35. qanswer_sdk/api/health_check_api_api.py +278 -0
  36. qanswer_sdk/api/llm_endpoint_api.py +4660 -0
  37. qanswer_sdk/api/mcp_api.py +11201 -0
  38. qanswer_sdk/api/metadata_api.py +2070 -0
  39. qanswer_sdk/api/notifications_api.py +1841 -0
  40. qanswer_sdk/api/o_auth2_api.py +648 -0
  41. qanswer_sdk/api/payment_api.py +1852 -0
  42. qanswer_sdk/api/socket_api.py +4220 -0
  43. qanswer_sdk/api/speech_to_text_api.py +919 -0
  44. qanswer_sdk/api/task_ai_excel_api.py +7541 -0
  45. qanswer_sdk/api/task_chat_api.py +2598 -0
  46. qanswer_sdk/api/task_document_parsing_api.py +619 -0
  47. qanswer_sdk/api/task_entity_linking_api.py +315 -0
  48. qanswer_sdk/api/task_rdf_linker_api.py +4408 -0
  49. qanswer_sdk/api/task_rdf_sparql_endpoint_api.py +3189 -0
  50. qanswer_sdk/api/task_rdf_text_linker_api.py +1452 -0
  51. qanswer_sdk/api/task_report_copilot_api.py +7010 -0
  52. qanswer_sdk/api/task_search_api.py +2012 -0
  53. qanswer_sdk/api/task_text2sparql_api.py +902 -0
  54. qanswer_sdk/api/task_text_classification_api.py +592 -0
  55. qanswer_sdk/api/tasks_api.py +318 -0
  56. qanswer_sdk/api/tool_embedder_api.py +5208 -0
  57. qanswer_sdk/api/tool_llm_api.py +6518 -0
  58. qanswer_sdk/api/unit_organizations_api.py +7086 -0
  59. qanswer_sdk/api/unit_teams_api.py +4255 -0
  60. qanswer_sdk/api/unit_user_api.py +11948 -0
  61. qanswer_sdk/api/v1_chat_completion_api.py +330 -0
  62. qanswer_sdk/api/v1_embeddings_api.py +297 -0
  63. qanswer_sdk/api_client.py +804 -0
  64. qanswer_sdk/api_response.py +21 -0
  65. qanswer_sdk/configuration.py +614 -0
  66. qanswer_sdk/exceptions.py +216 -0
  67. qanswer_sdk/models/__init__.py +567 -0
  68. qanswer_sdk/models/access_audio_spans_response_model.py +91 -0
  69. qanswer_sdk/models/access_pdf_payload_model.py +111 -0
  70. qanswer_sdk/models/access_type.py +42 -0
  71. qanswer_sdk/models/access_type_shared.py +38 -0
  72. qanswer_sdk/models/add_qn_a_request.py +103 -0
  73. qanswer_sdk/models/add_synonyms.py +93 -0
  74. qanswer_sdk/models/add_synonyms_resp.py +89 -0
  75. qanswer_sdk/models/admin_overall_stats_response.py +105 -0
  76. qanswer_sdk/models/admin_user_overall_stats.py +99 -0
  77. qanswer_sdk/models/advanced_o_auth2_mcp_authentication_config.py +95 -0
  78. qanswer_sdk/models/aggregate.py +93 -0
  79. qanswer_sdk/models/aggregation.py +116 -0
  80. qanswer_sdk/models/aggregation_type.py +41 -0
  81. qanswer_sdk/models/aggregations_group.py +102 -0
  82. qanswer_sdk/models/ai_assistant_clone_response.py +91 -0
  83. qanswer_sdk/models/ai_assistant_dto.py +122 -0
  84. qanswer_sdk/models/ai_assistant_filter_dto.py +113 -0
  85. qanswer_sdk/models/ai_assistant_list.py +101 -0
  86. qanswer_sdk/models/ai_assistant_share_response.py +93 -0
  87. qanswer_sdk/models/ai_assistant_shared_access.py +113 -0
  88. qanswer_sdk/models/ai_excel_task_settings.py +125 -0
  89. qanswer_sdk/models/ai_excel_task_update.py +125 -0
  90. qanswer_sdk/models/ai_task_settings_update_payload.py +95 -0
  91. qanswer_sdk/models/ai_template_base_with_id.py +95 -0
  92. qanswer_sdk/models/ai_template_cell.py +113 -0
  93. qanswer_sdk/models/ai_template_cell_base.py +87 -0
  94. qanswer_sdk/models/ai_template_cell_update_payload.py +95 -0
  95. qanswer_sdk/models/ai_template_column.py +99 -0
  96. qanswer_sdk/models/ai_template_column_base.py +93 -0
  97. qanswer_sdk/models/ai_template_column_update_payload.py +109 -0
  98. qanswer_sdk/models/ai_template_column_with_cells.py +109 -0
  99. qanswer_sdk/models/ai_template_create_payload.py +128 -0
  100. qanswer_sdk/models/ai_template_row.py +93 -0
  101. qanswer_sdk/models/ai_template_row_base.py +87 -0
  102. qanswer_sdk/models/ai_template_row_update_payload.py +103 -0
  103. qanswer_sdk/models/ai_template_row_with_cells.py +103 -0
  104. qanswer_sdk/models/ai_template_with_cells.py +134 -0
  105. qanswer_sdk/models/ai_template_with_cells_new_column_id.py +136 -0
  106. qanswer_sdk/models/allowed_extension.py +53 -0
  107. qanswer_sdk/models/allowed_file_extensions.py +98 -0
  108. qanswer_sdk/models/api_key_header_type.py +38 -0
  109. qanswer_sdk/models/api_key_mcp_authentication_config.py +94 -0
  110. qanswer_sdk/models/applied_filter_type.py +37 -0
  111. qanswer_sdk/models/applied_metadata_filter.py +103 -0
  112. qanswer_sdk/models/apply_template_task_settings_to_slots_response.py +89 -0
  113. qanswer_sdk/models/assistant_category_color_definition.py +89 -0
  114. qanswer_sdk/models/assistant_category_color_item.py +89 -0
  115. qanswer_sdk/models/assistant_category_colors_update_payload.py +95 -0
  116. qanswer_sdk/models/assistant_category_count.py +91 -0
  117. qanswer_sdk/models/assistant_message_stop.py +93 -0
  118. qanswer_sdk/models/assistant_task.py +43 -0
  119. qanswer_sdk/models/assistant_template.py +111 -0
  120. qanswer_sdk/models/assistant_template_filter_dto.py +120 -0
  121. qanswer_sdk/models/assistant_template_with_tools_selection_dto.py +121 -0
  122. qanswer_sdk/models/audio_allowed_file_extensions.py +87 -0
  123. qanswer_sdk/models/audio_file_upload_payload.py +107 -0
  124. qanswer_sdk/models/audio_format.py +37 -0
  125. qanswer_sdk/models/audio_segment.py +95 -0
  126. qanswer_sdk/models/audio_segment_update_payload.py +97 -0
  127. qanswer_sdk/models/audio_segment_update_response.py +91 -0
  128. qanswer_sdk/models/audio_speaker_update_payload.py +99 -0
  129. qanswer_sdk/models/audio_speaker_update_response.py +91 -0
  130. qanswer_sdk/models/audio_transcription_list_response.py +101 -0
  131. qanswer_sdk/models/audio_transcription_mode.py +37 -0
  132. qanswer_sdk/models/audio_transcription_record.py +101 -0
  133. qanswer_sdk/models/audio_upload_response.py +99 -0
  134. qanswer_sdk/models/audio_upload_transcription.py +99 -0
  135. qanswer_sdk/models/audio_word_segment.py +93 -0
  136. qanswer_sdk/models/audio_word_span_change.py +94 -0
  137. qanswer_sdk/models/audio_word_span_update_payload.py +104 -0
  138. qanswer_sdk/models/audio_word_span_update_response.py +91 -0
  139. qanswer_sdk/models/audio_word_update_payload.py +100 -0
  140. qanswer_sdk/models/audio_word_update_response.py +91 -0
  141. qanswer_sdk/models/auth_link_response.py +91 -0
  142. qanswer_sdk/models/auto_bot_description_request.py +89 -0
  143. qanswer_sdk/models/auto_bot_description_response.py +87 -0
  144. qanswer_sdk/models/available_aggregation.py +98 -0
  145. qanswer_sdk/models/available_connectors_response.py +99 -0
  146. qanswer_sdk/models/available_embedding_models_response.py +95 -0
  147. qanswer_sdk/models/available_endpoints_response.py +95 -0
  148. qanswer_sdk/models/available_logs_visibility_policy.py +103 -0
  149. qanswer_sdk/models/available_space_quota_for_dataset.py +95 -0
  150. qanswer_sdk/models/available_storage_preference.py +103 -0
  151. qanswer_sdk/models/base_connectors_response.py +89 -0
  152. qanswer_sdk/models/base_conversation_response.py +89 -0
  153. qanswer_sdk/models/base_feedback_response.py +89 -0
  154. qanswer_sdk/models/bot_answer_length.py +38 -0
  155. qanswer_sdk/models/branding_app_title.py +87 -0
  156. qanswer_sdk/models/branding_system_message.py +87 -0
  157. qanswer_sdk/models/bulk_update_tool_selections_request.py +87 -0
  158. qanswer_sdk/models/capability_type.py +37 -0
  159. qanswer_sdk/models/cell.py +89 -0
  160. qanswer_sdk/models/change_password.py +89 -0
  161. qanswer_sdk/models/change_password_admin.py +89 -0
  162. qanswer_sdk/models/change_role.py +96 -0
  163. qanswer_sdk/models/chat_task_settings.py +141 -0
  164. qanswer_sdk/models/chat_task_settings_update_payload.py +95 -0
  165. qanswer_sdk/models/chat_task_update.py +139 -0
  166. qanswer_sdk/models/chatbot_chat_payload.py +148 -0
  167. qanswer_sdk/models/chatbot_default_settings_response.py +95 -0
  168. qanswer_sdk/models/chatbot_llm_dto.py +147 -0
  169. qanswer_sdk/models/chatbot_response.py +151 -0
  170. qanswer_sdk/models/chatbot_setting_dto.py +99 -0
  171. qanswer_sdk/models/chatbot_setting_request.py +91 -0
  172. qanswer_sdk/models/class_info.py +89 -0
  173. qanswer_sdk/models/clone_dataset_request.py +104 -0
  174. qanswer_sdk/models/clone_dataset_response.py +91 -0
  175. qanswer_sdk/models/config.py +228 -0
  176. qanswer_sdk/models/config1.py +138 -0
  177. qanswer_sdk/models/connector_config_list_response.py +99 -0
  178. qanswer_sdk/models/connector_config_model.py +102 -0
  179. qanswer_sdk/models/connector_config_patch_payload.py +93 -0
  180. qanswer_sdk/models/connector_config_response.py +95 -0
  181. qanswer_sdk/models/connector_config_sync_response.py +93 -0
  182. qanswer_sdk/models/connector_config_type.py +37 -0
  183. qanswer_sdk/models/connector_model.py +118 -0
  184. qanswer_sdk/models/connector_type.py +50 -0
  185. qanswer_sdk/models/connector_type_dto.py +98 -0
  186. qanswer_sdk/models/connector_type_list_dto.py +95 -0
  187. qanswer_sdk/models/content_item.py +130 -0
  188. qanswer_sdk/models/content_item_type.py +39 -0
  189. qanswer_sdk/models/conversation_message.py +259 -0
  190. qanswer_sdk/models/conversation_message_error_key.py +52 -0
  191. qanswer_sdk/models/conversation_message_search_result.py +121 -0
  192. qanswer_sdk/models/conversation_model.py +169 -0
  193. qanswer_sdk/models/conversation_overall_stats.py +97 -0
  194. qanswer_sdk/models/conversation_overall_stats_response.py +95 -0
  195. qanswer_sdk/models/conversation_retention_response.py +91 -0
  196. qanswer_sdk/models/conversation_statistics.py +95 -0
  197. qanswer_sdk/models/conversation_update.py +93 -0
  198. qanswer_sdk/models/conversation_users_stats.py +99 -0
  199. qanswer_sdk/models/conversation_users_stats_response.py +99 -0
  200. qanswer_sdk/models/coordinates.py +89 -0
  201. qanswer_sdk/models/cost_summary_dto.py +99 -0
  202. qanswer_sdk/models/create_connector_request.py +95 -0
  203. qanswer_sdk/models/create_connector_response.py +95 -0
  204. qanswer_sdk/models/create_dataset_request.py +145 -0
  205. qanswer_sdk/models/create_imap_connector_request.py +105 -0
  206. qanswer_sdk/models/create_pinecone_connector_request.py +97 -0
  207. qanswer_sdk/models/create_sharepoint_connector_from_certificate_request.py +105 -0
  208. qanswer_sdk/models/create_sharepoint_connector_request.py +103 -0
  209. qanswer_sdk/models/credits_info_global_dto.py +97 -0
  210. qanswer_sdk/models/credits_info_organization_dto.py +95 -0
  211. qanswer_sdk/models/currency.py +38 -0
  212. qanswer_sdk/models/data_filling_mode.py +39 -0
  213. qanswer_sdk/models/data_storage_preference.py +38 -0
  214. qanswer_sdk/models/dataset_config_request.py +138 -0
  215. qanswer_sdk/models/dataset_default_values_model.py +138 -0
  216. qanswer_sdk/models/dataset_detail.py +137 -0
  217. qanswer_sdk/models/dataset_detail_kg.py +97 -0
  218. qanswer_sdk/models/dataset_schema.py +242 -0
  219. qanswer_sdk/models/dataset_size_response.py +91 -0
  220. qanswer_sdk/models/dataset_type.py +38 -0
  221. qanswer_sdk/models/dataset_update_object.py +216 -0
  222. qanswer_sdk/models/dataset_users_response.py +87 -0
  223. qanswer_sdk/models/default_prompt.py +106 -0
  224. qanswer_sdk/models/delete_connector_model.py +96 -0
  225. qanswer_sdk/models/delete_connector_request.py +99 -0
  226. qanswer_sdk/models/delete_connectors_response.py +89 -0
  227. qanswer_sdk/models/delete_files_status_response.py +91 -0
  228. qanswer_sdk/models/delete_index.py +91 -0
  229. qanswer_sdk/models/delete_index_resp.py +89 -0
  230. qanswer_sdk/models/delete_qn_a_pair_request.py +95 -0
  231. qanswer_sdk/models/delete_qn_a_pair_response.py +89 -0
  232. qanswer_sdk/models/delete_synonym.py +93 -0
  233. qanswer_sdk/models/delete_synonym_resp.py +89 -0
  234. qanswer_sdk/models/delete_synonyms.py +91 -0
  235. qanswer_sdk/models/delete_user_response.py +89 -0
  236. qanswer_sdk/models/diarization_queue_status.py +99 -0
  237. qanswer_sdk/models/document_content_response.py +91 -0
  238. qanswer_sdk/models/document_content_update_model.py +99 -0
  239. qanswer_sdk/models/document_file_delete_by_connector_model.py +101 -0
  240. qanswer_sdk/models/document_file_delete_by_id_model.py +91 -0
  241. qanswer_sdk/models/document_metadata.py +173 -0
  242. qanswer_sdk/models/document_metadata_list_wrapper.py +100 -0
  243. qanswer_sdk/models/document_parsing_task_settings.py +130 -0
  244. qanswer_sdk/models/document_parsing_task_settings_update_payload.py +95 -0
  245. qanswer_sdk/models/document_parsing_task_update.py +127 -0
  246. qanswer_sdk/models/document_status_response.py +89 -0
  247. qanswer_sdk/models/dummy_error.py +89 -0
  248. qanswer_sdk/models/duplicate_report_template_payload.py +97 -0
  249. qanswer_sdk/models/duplicate_report_template_response.py +87 -0
  250. qanswer_sdk/models/e_consilium_connector_config.py +108 -0
  251. qanswer_sdk/models/e_consilium_search_index_search_response.py +113 -0
  252. qanswer_sdk/models/econsilium_file_metadata.py +105 -0
  253. qanswer_sdk/models/econsilium_search_index_add_payload.py +107 -0
  254. qanswer_sdk/models/econsilium_search_index_additional_fields.py +103 -0
  255. qanswer_sdk/models/email_folder.py +91 -0
  256. qanswer_sdk/models/email_request.py +87 -0
  257. qanswer_sdk/models/embedder_cost_entry.py +91 -0
  258. qanswer_sdk/models/embedder_cost_filter.py +112 -0
  259. qanswer_sdk/models/embedder_cost_list.py +111 -0
  260. qanswer_sdk/models/embedder_create_dto.py +149 -0
  261. qanswer_sdk/models/embedder_detailed_dto.py +171 -0
  262. qanswer_sdk/models/embedder_dto.py +101 -0
  263. qanswer_sdk/models/embedder_list_dto.py +101 -0
  264. qanswer_sdk/models/embedder_update_dto.py +143 -0
  265. qanswer_sdk/models/embedding_endpoint.py +149 -0
  266. qanswer_sdk/models/embedding_endpoint_create.py +147 -0
  267. qanswer_sdk/models/embedding_endpoint_export_payload.py +87 -0
  268. qanswer_sdk/models/embedding_endpoint_import_failure.py +89 -0
  269. qanswer_sdk/models/embedding_endpoint_import_response.py +99 -0
  270. qanswer_sdk/models/embedding_endpoint_modality.py +37 -0
  271. qanswer_sdk/models/embedding_endpoint_names_validation_payload.py +87 -0
  272. qanswer_sdk/models/embedding_endpoint_update.py +141 -0
  273. qanswer_sdk/models/embedding_endpoint_validation_response.py +96 -0
  274. qanswer_sdk/models/embedding_model.py +96 -0
  275. qanswer_sdk/models/embedding_provider.py +44 -0
  276. qanswer_sdk/models/enable_enhanced_context_payload.py +91 -0
  277. qanswer_sdk/models/enable_enhanced_context_response.py +87 -0
  278. qanswer_sdk/models/endpoint_status.py +38 -0
  279. qanswer_sdk/models/entity_description.py +93 -0
  280. qanswer_sdk/models/entity_description_dto.py +93 -0
  281. qanswer_sdk/models/entity_linking_payload.py +97 -0
  282. qanswer_sdk/models/entity_linking_response.py +97 -0
  283. qanswer_sdk/models/entity_model_in_linking.py +95 -0
  284. qanswer_sdk/models/es_meta_data.py +98 -0
  285. qanswer_sdk/models/es_meta_data_value.py +87 -0
  286. qanswer_sdk/models/evaluate_feedback_response.py +109 -0
  287. qanswer_sdk/models/evaluate_single_feedback_response.py +97 -0
  288. qanswer_sdk/models/external_sources_quota_request.py +91 -0
  289. qanswer_sdk/models/external_sources_quota_response.py +89 -0
  290. qanswer_sdk/models/extra_body.py +91 -0
  291. qanswer_sdk/models/extract_hyper_links_payload.py +100 -0
  292. qanswer_sdk/models/extract_robot_links_payload.py +88 -0
  293. qanswer_sdk/models/extract_robot_links_response.py +88 -0
  294. qanswer_sdk/models/fact.py +96 -0
  295. qanswer_sdk/models/feedback_evaluation_history_entries_response.py +101 -0
  296. qanswer_sdk/models/feedback_evaluation_history_entry_model.py +105 -0
  297. qanswer_sdk/models/feedback_model.py +141 -0
  298. qanswer_sdk/models/feedback_response.py +95 -0
  299. qanswer_sdk/models/feedback_update.py +105 -0
  300. qanswer_sdk/models/file_es_meta_data.py +116 -0
  301. qanswer_sdk/models/file_failure_reason.py +48 -0
  302. qanswer_sdk/models/file_folder_model.py +115 -0
  303. qanswer_sdk/models/file_model.py +130 -0
  304. qanswer_sdk/models/file_status.py +43 -0
  305. qanswer_sdk/models/file_type.py +37 -0
  306. qanswer_sdk/models/file_upload_payload.py +107 -0
  307. qanswer_sdk/models/files_by_connector_model.py +89 -0
  308. qanswer_sdk/models/g_drive_connector_info.py +96 -0
  309. qanswer_sdk/models/g_drive_download_by_ids.py +89 -0
  310. qanswer_sdk/models/g_drive_download_request.py +103 -0
  311. qanswer_sdk/models/generate_ai_cells_by_dimension_payload.py +91 -0
  312. qanswer_sdk/models/generate_ai_cells_payload.py +95 -0
  313. qanswer_sdk/models/generation_params.py +89 -0
  314. qanswer_sdk/models/get_aggregations_payload.py +104 -0
  315. qanswer_sdk/models/get_connector_by_id_response.py +91 -0
  316. qanswer_sdk/models/get_conversation_response.py +95 -0
  317. qanswer_sdk/models/global_config_dto.py +135 -0
  318. qanswer_sdk/models/google_drive_connector_config.py +110 -0
  319. qanswer_sdk/models/guardrail_endpoint.py +121 -0
  320. qanswer_sdk/models/guardrail_mode.py +38 -0
  321. qanswer_sdk/models/highlight_audio_payload_model.py +109 -0
  322. qanswer_sdk/models/http_validation_error.py +95 -0
  323. qanswer_sdk/models/iframe_strategy.py +38 -0
  324. qanswer_sdk/models/image_url_detail.py +38 -0
  325. qanswer_sdk/models/imap_add_payload.py +105 -0
  326. qanswer_sdk/models/imap_additional_fields.py +101 -0
  327. qanswer_sdk/models/imap_file_metadata.py +114 -0
  328. qanswer_sdk/models/imap_search_response.py +113 -0
  329. qanswer_sdk/models/index_config.py +89 -0
  330. qanswer_sdk/models/install_response.py +89 -0
  331. qanswer_sdk/models/interface_origin.py +48 -0
  332. qanswer_sdk/models/ip2_geo_response.py +91 -0
  333. qanswer_sdk/models/is_enabled_response.py +87 -0
  334. qanswer_sdk/models/jwt_authentication_response.py +93 -0
  335. qanswer_sdk/models/label.py +89 -0
  336. qanswer_sdk/models/labeled_node.py +89 -0
  337. qanswer_sdk/models/language.py +42 -0
  338. qanswer_sdk/models/last_updated_template_conversation_id_response.py +87 -0
  339. qanswer_sdk/models/link.py +99 -0
  340. qanswer_sdk/models/link_extraction_response.py +97 -0
  341. qanswer_sdk/models/link_result_paginated.py +97 -0
  342. qanswer_sdk/models/linked_entity_model_in_linking.py +99 -0
  343. qanswer_sdk/models/linker.py +103 -0
  344. qanswer_sdk/models/linking_result_input.py +95 -0
  345. qanswer_sdk/models/linking_result_output.py +95 -0
  346. qanswer_sdk/models/links.py +99 -0
  347. qanswer_sdk/models/list_ai_templates_response.py +101 -0
  348. qanswer_sdk/models/list_connectors_response.py +95 -0
  349. qanswer_sdk/models/list_conversation_response.py +105 -0
  350. qanswer_sdk/models/list_feedback_response.py +105 -0
  351. qanswer_sdk/models/list_files_connector_response.py +107 -0
  352. qanswer_sdk/models/list_published_assistants_payload.py +115 -0
  353. qanswer_sdk/models/list_socket_events.py +95 -0
  354. qanswer_sdk/models/list_synonyms_model.py +95 -0
  355. qanswer_sdk/models/llm_context_ranges.py +93 -0
  356. qanswer_sdk/models/llm_context_ranges_response.py +93 -0
  357. qanswer_sdk/models/llm_cost_entry.py +97 -0
  358. qanswer_sdk/models/llm_cost_filter.py +112 -0
  359. qanswer_sdk/models/llm_cost_list.py +111 -0
  360. qanswer_sdk/models/llm_create_dto.py +208 -0
  361. qanswer_sdk/models/llm_detailed_dto.py +231 -0
  362. qanswer_sdk/models/llm_details.py +123 -0
  363. qanswer_sdk/models/llm_dto.py +147 -0
  364. qanswer_sdk/models/llm_endpoint.py +212 -0
  365. qanswer_sdk/models/llm_endpoint_create.py +204 -0
  366. qanswer_sdk/models/llm_endpoint_default_prompts.py +93 -0
  367. qanswer_sdk/models/llm_endpoint_export_payload.py +87 -0
  368. qanswer_sdk/models/llm_endpoint_import_failure.py +89 -0
  369. qanswer_sdk/models/llm_endpoint_import_response.py +99 -0
  370. qanswer_sdk/models/llm_endpoint_input.py +212 -0
  371. qanswer_sdk/models/llm_endpoint_modality.py +37 -0
  372. qanswer_sdk/models/llm_endpoint_names_validation_payload.py +87 -0
  373. qanswer_sdk/models/llm_endpoint_provider.py +44 -0
  374. qanswer_sdk/models/llm_endpoint_read_input.py +212 -0
  375. qanswer_sdk/models/llm_endpoint_read_output.py +212 -0
  376. qanswer_sdk/models/llm_endpoint_update.py +204 -0
  377. qanswer_sdk/models/llm_endpoint_usage_migration_response.py +93 -0
  378. qanswer_sdk/models/llm_endpoint_validation_response.py +96 -0
  379. qanswer_sdk/models/llm_filter_dto.py +111 -0
  380. qanswer_sdk/models/llm_health_response.py +89 -0
  381. qanswer_sdk/models/llm_list_detailed_dto.py +101 -0
  382. qanswer_sdk/models/llm_list_dto.py +101 -0
  383. qanswer_sdk/models/llm_update_dto.py +208 -0
  384. qanswer_sdk/models/llm_usage_origin.py +63 -0
  385. qanswer_sdk/models/location_details.py +97 -0
  386. qanswer_sdk/models/log_request.py +125 -0
  387. qanswer_sdk/models/login_request.py +89 -0
  388. qanswer_sdk/models/logs_visibility_policy.py +38 -0
  389. qanswer_sdk/models/logs_visibility_policy_payload.py +98 -0
  390. qanswer_sdk/models/logs_visibility_policy_response.py +98 -0
  391. qanswer_sdk/models/mcp_authentication_type.py +39 -0
  392. qanswer_sdk/models/mcp_connection.py +105 -0
  393. qanswer_sdk/models/mcp_connection_create.py +98 -0
  394. qanswer_sdk/models/mcp_server.py +167 -0
  395. qanswer_sdk/models/mcp_server0.py +167 -0
  396. qanswer_sdk/models/mcp_server_create.py +133 -0
  397. qanswer_sdk/models/mcp_server_dto.py +167 -0
  398. qanswer_sdk/models/mcp_server_type.py +37 -0
  399. qanswer_sdk/models/mcp_server_update.py +131 -0
  400. qanswer_sdk/models/mcp_tool_dto.py +141 -0
  401. qanswer_sdk/models/mcp_tool_info.py +95 -0
  402. qanswer_sdk/models/mcp_tool_selection_source.py +37 -0
  403. qanswer_sdk/models/mcp_tool_update.py +91 -0
  404. qanswer_sdk/models/mcp_transport.py +37 -0
  405. qanswer_sdk/models/mcp_visibility.py +38 -0
  406. qanswer_sdk/models/mcpo_auth2_initiating_origin.py +42 -0
  407. qanswer_sdk/models/message_role.py +38 -0
  408. qanswer_sdk/models/messages_stats_per_day_response.py +99 -0
  409. qanswer_sdk/models/microsoft_connector_config.py +110 -0
  410. qanswer_sdk/models/modify_connector_request.py +107 -0
  411. qanswer_sdk/models/modify_file_display_name_request.py +97 -0
  412. qanswer_sdk/models/notification_dto.py +137 -0
  413. qanswer_sdk/models/notification_filter.py +116 -0
  414. qanswer_sdk/models/notification_list_dto.py +101 -0
  415. qanswer_sdk/models/notification_payload_add_to_org_dto.py +87 -0
  416. qanswer_sdk/models/notification_payload_add_to_team_dto.py +89 -0
  417. qanswer_sdk/models/notification_payload_ai_assistant_shared_dto.py +109 -0
  418. qanswer_sdk/models/notification_payload_conversation_shared_dto.py +105 -0
  419. qanswer_sdk/models/notification_payload_dto.py +193 -0
  420. qanswer_sdk/models/notification_payload_human_takeover_requested_dto.py +89 -0
  421. qanswer_sdk/models/notification_payload_quota_reaching_dto.py +91 -0
  422. qanswer_sdk/models/notification_read_dto.py +89 -0
  423. qanswer_sdk/models/notification_type.py +44 -0
  424. qanswer_sdk/models/o_auth_redirect_response.py +89 -0
  425. qanswer_sdk/models/o_auth_service_dto.py +89 -0
  426. qanswer_sdk/models/one_drive_download_by_ids.py +89 -0
  427. qanswer_sdk/models/one_drive_download_request.py +103 -0
  428. qanswer_sdk/models/one_note_download_by_ids.py +91 -0
  429. qanswer_sdk/models/one_note_download_request.py +103 -0
  430. qanswer_sdk/models/org_llm_detailed_dto.py +105 -0
  431. qanswer_sdk/models/organization.py +93 -0
  432. qanswer_sdk/models/organization_creation.py +91 -0
  433. qanswer_sdk/models/organization_dto.py +93 -0
  434. qanswer_sdk/models/organization_filter_dto.py +134 -0
  435. qanswer_sdk/models/organization_list_dto.py +101 -0
  436. qanswer_sdk/models/paginated_report_templates.py +101 -0
  437. qanswer_sdk/models/password.py +89 -0
  438. qanswer_sdk/models/pinecone_index_model.py +91 -0
  439. qanswer_sdk/models/plan_dto.py +132 -0
  440. qanswer_sdk/models/predicted_class.py +89 -0
  441. qanswer_sdk/models/prepare_synonyms_upload_resp.py +99 -0
  442. qanswer_sdk/models/prepared_synonym_group.py +87 -0
  443. qanswer_sdk/models/pricing_plan.py +51 -0
  444. qanswer_sdk/models/pricing_type.py +38 -0
  445. qanswer_sdk/models/prompt_type.py +51 -0
  446. qanswer_sdk/models/provider.py +87 -0
  447. qanswer_sdk/models/publication_add_payload.py +105 -0
  448. qanswer_sdk/models/publication_file_metadata.py +105 -0
  449. qanswer_sdk/models/publication_office_additional_fields.py +111 -0
  450. qanswer_sdk/models/publication_office_connector_config.py +110 -0
  451. qanswer_sdk/models/publication_search_index_search_response.py +113 -0
  452. qanswer_sdk/models/published_assistant_from_java.py +94 -0
  453. qanswer_sdk/models/put_cell_payload.py +89 -0
  454. qanswer_sdk/models/qa_context.py +129 -0
  455. qanswer_sdk/models/qa_context_display_type.py +44 -0
  456. qanswer_sdk/models/qa_contexts.py +116 -0
  457. qanswer_sdk/models/qa_table.py +100 -0
  458. qanswer_sdk/models/qn_a_pair_model.py +103 -0
  459. qanswer_sdk/models/qn_a_pair_response.py +95 -0
  460. qanswer_sdk/models/question_suggestion_response.py +87 -0
  461. qanswer_sdk/models/rag_params.py +89 -0
  462. qanswer_sdk/models/rag_payload.py +186 -0
  463. qanswer_sdk/models/rag_response.py +155 -0
  464. qanswer_sdk/models/rdf_entity_linker_response.py +99 -0
  465. qanswer_sdk/models/rdf_linked_entity.py +97 -0
  466. qanswer_sdk/models/reasoning_effort.py +39 -0
  467. qanswer_sdk/models/reference_model.py +99 -0
  468. qanswer_sdk/models/refresh_frequency.py +39 -0
  469. qanswer_sdk/models/refresh_token_request.py +87 -0
  470. qanswer_sdk/models/refresh_website_connector_payload.py +94 -0
  471. qanswer_sdk/models/register_pinecone_connector_request.py +95 -0
  472. qanswer_sdk/models/report_copilot_generation_from_slots_ack.py +91 -0
  473. qanswer_sdk/models/report_copilot_generation_from_slots_payload.py +95 -0
  474. qanswer_sdk/models/report_copilot_refinement_payload.py +106 -0
  475. qanswer_sdk/models/report_copilot_refinement_response.py +87 -0
  476. qanswer_sdk/models/report_copilot_slot_feedback_update.py +95 -0
  477. qanswer_sdk/models/report_copilot_slot_feedback_update_response.py +95 -0
  478. qanswer_sdk/models/report_copilot_slot_task_settings.py +127 -0
  479. qanswer_sdk/models/report_copilot_slot_task_settings_update.py +127 -0
  480. qanswer_sdk/models/report_copilot_task_settings.py +125 -0
  481. qanswer_sdk/models/report_copilot_task_settings_update_payload.py +95 -0
  482. qanswer_sdk/models/report_copilot_task_update.py +125 -0
  483. qanswer_sdk/models/report_template.py +139 -0
  484. qanswer_sdk/models/report_template_create_payload.py +117 -0
  485. qanswer_sdk/models/report_template_image_upload_response.py +87 -0
  486. qanswer_sdk/models/report_template_simplified.py +115 -0
  487. qanswer_sdk/models/report_template_simplified_payload.py +91 -0
  488. qanswer_sdk/models/report_template_task_settings_update_payload.py +91 -0
  489. qanswer_sdk/models/report_template_update_payload.py +121 -0
  490. qanswer_sdk/models/report_templates_search_payload.py +106 -0
  491. qanswer_sdk/models/reset_password.py +87 -0
  492. qanswer_sdk/models/response_audit_model.py +99 -0
  493. qanswer_sdk/models/response_audit_stats_response.py +101 -0
  494. qanswer_sdk/models/response_get_dummy_union_connector_config_model_backend_api_connectors_config_dummy_models_union_get.py +228 -0
  495. qanswer_sdk/models/retreive_all_synonyms_resp.py +99 -0
  496. qanswer_sdk/models/retry_params.py +89 -0
  497. qanswer_sdk/models/return_type.py +38 -0
  498. qanswer_sdk/models/role.py +99 -0
  499. qanswer_sdk/models/role_name.py +37 -0
  500. qanswer_sdk/models/scrolling_strategy.py +37 -0
  501. qanswer_sdk/models/search_conversation_messages_response.py +105 -0
  502. qanswer_sdk/models/search_document_response.py +105 -0
  503. qanswer_sdk/models/search_index_payload.py +114 -0
  504. qanswer_sdk/models/search_metadata_filter.py +94 -0
  505. qanswer_sdk/models/search_payload.py +146 -0
  506. qanswer_sdk/models/search_response.py +125 -0
  507. qanswer_sdk/models/search_synonyms_resp.py +91 -0
  508. qanswer_sdk/models/search_task_settings.py +139 -0
  509. qanswer_sdk/models/search_task_settings_update_payload.py +95 -0
  510. qanswer_sdk/models/search_task_update.py +137 -0
  511. qanswer_sdk/models/sender_type.py +38 -0
  512. qanswer_sdk/models/share_point_connector_settings.py +94 -0
  513. qanswer_sdk/models/share_point_download_by_ids.py +99 -0
  514. qanswer_sdk/models/share_point_download_request.py +103 -0
  515. qanswer_sdk/models/shared_by.py +38 -0
  516. qanswer_sdk/models/shared_entity_type.py +38 -0
  517. qanswer_sdk/models/shared_organization_access.py +125 -0
  518. qanswer_sdk/models/shared_organization_access_dto.py +125 -0
  519. qanswer_sdk/models/shared_team_access.py +125 -0
  520. qanswer_sdk/models/shared_team_access_dto.py +125 -0
  521. qanswer_sdk/models/shared_user.py +99 -0
  522. qanswer_sdk/models/sign_up_request.py +108 -0
  523. qanswer_sdk/models/signout_request.py +87 -0
  524. qanswer_sdk/models/slot.py +162 -0
  525. qanswer_sdk/models/slot_history_entry.py +127 -0
  526. qanswer_sdk/models/slot_in_prompt.py +91 -0
  527. qanswer_sdk/models/slot_info_with_latest_version.py +95 -0
  528. qanswer_sdk/models/slot_update.py +142 -0
  529. qanswer_sdk/models/socker_join_user.py +91 -0
  530. qanswer_sdk/models/socket_ai_cell_generation.py +99 -0
  531. qanswer_sdk/models/socket_conversation_message.py +280 -0
  532. qanswer_sdk/models/socket_events_q_answer.py +51 -0
  533. qanswer_sdk/models/socket_feedback_evaluation_progress.py +114 -0
  534. qanswer_sdk/models/socket_file_metadata.py +207 -0
  535. qanswer_sdk/models/socket_join_conversation.py +97 -0
  536. qanswer_sdk/models/socket_join_dataset.py +93 -0
  537. qanswer_sdk/models/socket_message_status.py +40 -0
  538. qanswer_sdk/models/socket_notification.py +127 -0
  539. qanswer_sdk/models/socket_report_continuation_response.py +106 -0
  540. qanswer_sdk/models/socket_report_copilot_generation_from_slots_response.py +122 -0
  541. qanswer_sdk/models/socket_report_copilot_generation_from_template_response.py +122 -0
  542. qanswer_sdk/models/socket_report_copilot_refinement_response.py +108 -0
  543. qanswer_sdk/models/socket_speech2_text_response.py +131 -0
  544. qanswer_sdk/models/socket_stop_conversation.py +97 -0
  545. qanswer_sdk/models/source.py +125 -0
  546. qanswer_sdk/models/source_metadata.py +109 -0
  547. qanswer_sdk/models/speech2_text_response.py +119 -0
  548. qanswer_sdk/models/stat_per_date.py +89 -0
  549. qanswer_sdk/models/status_response.py +89 -0
  550. qanswer_sdk/models/stop_template_generation_payload.py +91 -0
  551. qanswer_sdk/models/storage_active_status.py +37 -0
  552. qanswer_sdk/models/subscription_response.py +101 -0
  553. qanswer_sdk/models/subscription_status.py +39 -0
  554. qanswer_sdk/models/suggestion_list_response.py +87 -0
  555. qanswer_sdk/models/summa_server.py +101 -0
  556. qanswer_sdk/models/task_category.py +58 -0
  557. qanswer_sdk/models/task_name.py +43 -0
  558. qanswer_sdk/models/team.py +93 -0
  559. qanswer_sdk/models/team_creation.py +89 -0
  560. qanswer_sdk/models/team_creation_dto.py +89 -0
  561. qanswer_sdk/models/team_dto.py +93 -0
  562. qanswer_sdk/models/team_filter_dto.py +141 -0
  563. qanswer_sdk/models/team_list_dto.py +101 -0
  564. qanswer_sdk/models/template_clip_structure.py +114 -0
  565. qanswer_sdk/models/template_toggle_request.py +93 -0
  566. qanswer_sdk/models/terms_bucket.py +94 -0
  567. qanswer_sdk/models/test_imap_connection_payload.py +95 -0
  568. qanswer_sdk/models/text2_sparql_payload.py +188 -0
  569. qanswer_sdk/models/text2_sparql_task_settings.py +125 -0
  570. qanswer_sdk/models/text2_sparql_task_settings_update_payload.py +95 -0
  571. qanswer_sdk/models/text2_sparql_task_update.py +125 -0
  572. qanswer_sdk/models/text_classification_payload.py +99 -0
  573. qanswer_sdk/models/text_classification_response.py +87 -0
  574. qanswer_sdk/models/text_classification_v2_payload.py +99 -0
  575. qanswer_sdk/models/text_classification_v2_response.py +95 -0
  576. qanswer_sdk/models/thinking_block.py +91 -0
  577. qanswer_sdk/models/tool_selection.py +89 -0
  578. qanswer_sdk/models/total_stat.py +96 -0
  579. qanswer_sdk/models/ui_mappings.py +141 -0
  580. qanswer_sdk/models/update_cells_payload.py +93 -0
  581. qanswer_sdk/models/update_file_es_meta_data.py +116 -0
  582. qanswer_sdk/models/update_metadata_model_input.py +97 -0
  583. qanswer_sdk/models/update_metadata_model_output.py +97 -0
  584. qanswer_sdk/models/update_qn_a_pair_request.py +101 -0
  585. qanswer_sdk/models/update_qn_a_pair_response.py +89 -0
  586. qanswer_sdk/models/update_synonyms.py +95 -0
  587. qanswer_sdk/models/update_synonyms_resp.py +89 -0
  588. qanswer_sdk/models/update_template_cells_payload.py +101 -0
  589. qanswer_sdk/models/upload_metadata.py +115 -0
  590. qanswer_sdk/models/user.py +91 -0
  591. qanswer_sdk/models/user_credits_config_dto.py +99 -0
  592. qanswer_sdk/models/user_credits_dto.py +106 -0
  593. qanswer_sdk/models/user_dataset_api_key.py +120 -0
  594. qanswer_sdk/models/user_dataset_api_key_dto.py +120 -0
  595. qanswer_sdk/models/user_dataset_mcp_tool_selection_dto.py +102 -0
  596. qanswer_sdk/models/user_dto.py +91 -0
  597. qanswer_sdk/models/user_filter_dto.py +155 -0
  598. qanswer_sdk/models/user_identity_availability.py +87 -0
  599. qanswer_sdk/models/user_info_dto.py +95 -0
  600. qanswer_sdk/models/user_list_dto.py +101 -0
  601. qanswer_sdk/models/user_log.py +102 -0
  602. qanswer_sdk/models/user_log_dto.py +102 -0
  603. qanswer_sdk/models/user_logs_list_dto.py +97 -0
  604. qanswer_sdk/models/user_mcp_tool_selection_dto.py +118 -0
  605. qanswer_sdk/models/user_oauth_token.py +96 -0
  606. qanswer_sdk/models/user_oauth_token_dto.py +96 -0
  607. qanswer_sdk/models/user_profile_dto.py +200 -0
  608. qanswer_sdk/models/user_profile_list_dto.py +101 -0
  609. qanswer_sdk/models/user_stat_per_date.py +90 -0
  610. qanswer_sdk/models/validation_error.py +108 -0
  611. qanswer_sdk/models/validation_error_loc_inner.py +138 -0
  612. qanswer_sdk/models/warn_visibility.py +40 -0
  613. qanswer_sdk/models/websearch_connector_config.py +102 -0
  614. qanswer_sdk/models/websearch_scraping_site.py +91 -0
  615. qanswer_sdk/models/website_add_payload.py +102 -0
  616. qanswer_sdk/models/website_connector_config.py +102 -0
  617. qanswer_sdk/models/website_connector_settings.py +160 -0
  618. qanswer_sdk/models/widget_configs.py +109 -0
  619. qanswer_sdk/py.typed +0 -0
  620. qanswer_sdk/rest.py +258 -0
  621. qanswer_sdk-0.46.0.dev0.dist-info/METADATA +252 -0
  622. qanswer_sdk-0.46.0.dev0.dist-info/RECORD +624 -0
  623. qanswer_sdk-0.46.0.dev0.dist-info/WHEEL +5 -0
  624. qanswer_sdk-0.46.0.dev0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,1775 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ free-text-client
5
+
6
+ QAnswer 2.0 API
7
+
8
+ The version of the OpenAPI document: 2.0.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from pydantic import StrictInt, StrictStr
20
+ from typing import List, Optional
21
+ from qanswer_sdk.models.aggregations_group import AggregationsGroup
22
+ from qanswer_sdk.models.create_connector_response import CreateConnectorResponse
23
+ from qanswer_sdk.models.create_imap_connector_request import CreateImapConnectorRequest
24
+ from qanswer_sdk.models.email_folder import EmailFolder
25
+ from qanswer_sdk.models.imap_add_payload import ImapAddPayload
26
+ from qanswer_sdk.models.imap_search_response import ImapSearchResponse
27
+ from qanswer_sdk.models.search_index_payload import SearchIndexPayload
28
+ from qanswer_sdk.models.status_response import StatusResponse
29
+ from qanswer_sdk.models.test_imap_connection_payload import TestImapConnectionPayload
30
+
31
+ from qanswer_sdk.api_client import ApiClient, RequestSerialized
32
+ from qanswer_sdk.api_response import ApiResponse
33
+ from qanswer_sdk.rest import RESTResponseType
34
+
35
+
36
+ class ConnectorIMAPAPIApi:
37
+ """NOTE: This class is auto generated by OpenAPI Generator
38
+ Ref: https://openapi-generator.tech
39
+
40
+ Do not edit the class manually.
41
+ """
42
+
43
+ def __init__(self, api_client=None) -> None:
44
+ if api_client is None:
45
+ api_client = ApiClient.get_default()
46
+ self.api_client = api_client
47
+
48
+
49
+ @validate_call
50
+ def add_imap_files(
51
+ self,
52
+ imap_add_payload: ImapAddPayload,
53
+ _request_timeout: Union[
54
+ None,
55
+ Annotated[StrictFloat, Field(gt=0)],
56
+ Tuple[
57
+ Annotated[StrictFloat, Field(gt=0)],
58
+ Annotated[StrictFloat, Field(gt=0)]
59
+ ]
60
+ ] = None,
61
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
62
+ _content_type: Optional[StrictStr] = None,
63
+ _headers: Optional[Dict[StrictStr, Any]] = None,
64
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
65
+ ) -> StatusResponse:
66
+ """Add Imap Files
67
+
68
+ Add emails to IMAP connector
69
+
70
+ :param imap_add_payload: (required)
71
+ :type imap_add_payload: ImapAddPayload
72
+ :param _request_timeout: timeout setting for this request. If one
73
+ number provided, it will be total request
74
+ timeout. It can also be a pair (tuple) of
75
+ (connection, read) timeouts.
76
+ :type _request_timeout: int, tuple(int, int), optional
77
+ :param _request_auth: set to override the auth_settings for an a single
78
+ request; this effectively ignores the
79
+ authentication in the spec for a single request.
80
+ :type _request_auth: dict, optional
81
+ :param _content_type: force content-type for the request.
82
+ :type _content_type: str, Optional
83
+ :param _headers: set to override the headers for a single
84
+ request; this effectively ignores the headers
85
+ in the spec for a single request.
86
+ :type _headers: dict, optional
87
+ :param _host_index: set to override the host_index for a single
88
+ request; this effectively ignores the host_index
89
+ in the spec for a single request.
90
+ :type _host_index: int, optional
91
+ :return: Returns the result object.
92
+ """ # noqa: E501
93
+
94
+ _param = self._add_imap_files_serialize(
95
+ imap_add_payload=imap_add_payload,
96
+ _request_auth=_request_auth,
97
+ _content_type=_content_type,
98
+ _headers=_headers,
99
+ _host_index=_host_index
100
+ )
101
+
102
+ _response_types_map: Dict[str, Optional[str]] = {
103
+ '200': "StatusResponse",
104
+ '422': "HTTPValidationError",
105
+ }
106
+ response_data = self.api_client.call_api(
107
+ *_param,
108
+ _request_timeout=_request_timeout
109
+ )
110
+ response_data.read()
111
+ return self.api_client.response_deserialize(
112
+ response_data=response_data,
113
+ response_types_map=_response_types_map,
114
+ ).data
115
+
116
+
117
+ @validate_call
118
+ def add_imap_files_with_http_info(
119
+ self,
120
+ imap_add_payload: ImapAddPayload,
121
+ _request_timeout: Union[
122
+ None,
123
+ Annotated[StrictFloat, Field(gt=0)],
124
+ Tuple[
125
+ Annotated[StrictFloat, Field(gt=0)],
126
+ Annotated[StrictFloat, Field(gt=0)]
127
+ ]
128
+ ] = None,
129
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
130
+ _content_type: Optional[StrictStr] = None,
131
+ _headers: Optional[Dict[StrictStr, Any]] = None,
132
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
133
+ ) -> ApiResponse[StatusResponse]:
134
+ """Add Imap Files
135
+
136
+ Add emails to IMAP connector
137
+
138
+ :param imap_add_payload: (required)
139
+ :type imap_add_payload: ImapAddPayload
140
+ :param _request_timeout: timeout setting for this request. If one
141
+ number provided, it will be total request
142
+ timeout. It can also be a pair (tuple) of
143
+ (connection, read) timeouts.
144
+ :type _request_timeout: int, tuple(int, int), optional
145
+ :param _request_auth: set to override the auth_settings for an a single
146
+ request; this effectively ignores the
147
+ authentication in the spec for a single request.
148
+ :type _request_auth: dict, optional
149
+ :param _content_type: force content-type for the request.
150
+ :type _content_type: str, Optional
151
+ :param _headers: set to override the headers for a single
152
+ request; this effectively ignores the headers
153
+ in the spec for a single request.
154
+ :type _headers: dict, optional
155
+ :param _host_index: set to override the host_index for a single
156
+ request; this effectively ignores the host_index
157
+ in the spec for a single request.
158
+ :type _host_index: int, optional
159
+ :return: Returns the result object.
160
+ """ # noqa: E501
161
+
162
+ _param = self._add_imap_files_serialize(
163
+ imap_add_payload=imap_add_payload,
164
+ _request_auth=_request_auth,
165
+ _content_type=_content_type,
166
+ _headers=_headers,
167
+ _host_index=_host_index
168
+ )
169
+
170
+ _response_types_map: Dict[str, Optional[str]] = {
171
+ '200': "StatusResponse",
172
+ '422': "HTTPValidationError",
173
+ }
174
+ response_data = self.api_client.call_api(
175
+ *_param,
176
+ _request_timeout=_request_timeout
177
+ )
178
+ response_data.read()
179
+ return self.api_client.response_deserialize(
180
+ response_data=response_data,
181
+ response_types_map=_response_types_map,
182
+ )
183
+
184
+
185
+ @validate_call
186
+ def add_imap_files_without_preload_content(
187
+ self,
188
+ imap_add_payload: ImapAddPayload,
189
+ _request_timeout: Union[
190
+ None,
191
+ Annotated[StrictFloat, Field(gt=0)],
192
+ Tuple[
193
+ Annotated[StrictFloat, Field(gt=0)],
194
+ Annotated[StrictFloat, Field(gt=0)]
195
+ ]
196
+ ] = None,
197
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
198
+ _content_type: Optional[StrictStr] = None,
199
+ _headers: Optional[Dict[StrictStr, Any]] = None,
200
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
201
+ ) -> RESTResponseType:
202
+ """Add Imap Files
203
+
204
+ Add emails to IMAP connector
205
+
206
+ :param imap_add_payload: (required)
207
+ :type imap_add_payload: ImapAddPayload
208
+ :param _request_timeout: timeout setting for this request. If one
209
+ number provided, it will be total request
210
+ timeout. It can also be a pair (tuple) of
211
+ (connection, read) timeouts.
212
+ :type _request_timeout: int, tuple(int, int), optional
213
+ :param _request_auth: set to override the auth_settings for an a single
214
+ request; this effectively ignores the
215
+ authentication in the spec for a single request.
216
+ :type _request_auth: dict, optional
217
+ :param _content_type: force content-type for the request.
218
+ :type _content_type: str, Optional
219
+ :param _headers: set to override the headers for a single
220
+ request; this effectively ignores the headers
221
+ in the spec for a single request.
222
+ :type _headers: dict, optional
223
+ :param _host_index: set to override the host_index for a single
224
+ request; this effectively ignores the host_index
225
+ in the spec for a single request.
226
+ :type _host_index: int, optional
227
+ :return: Returns the result object.
228
+ """ # noqa: E501
229
+
230
+ _param = self._add_imap_files_serialize(
231
+ imap_add_payload=imap_add_payload,
232
+ _request_auth=_request_auth,
233
+ _content_type=_content_type,
234
+ _headers=_headers,
235
+ _host_index=_host_index
236
+ )
237
+
238
+ _response_types_map: Dict[str, Optional[str]] = {
239
+ '200': "StatusResponse",
240
+ '422': "HTTPValidationError",
241
+ }
242
+ response_data = self.api_client.call_api(
243
+ *_param,
244
+ _request_timeout=_request_timeout
245
+ )
246
+ return response_data.response
247
+
248
+
249
+ def _add_imap_files_serialize(
250
+ self,
251
+ imap_add_payload,
252
+ _request_auth,
253
+ _content_type,
254
+ _headers,
255
+ _host_index,
256
+ ) -> RequestSerialized:
257
+
258
+ _host = None
259
+
260
+ _collection_formats: Dict[str, str] = {
261
+ }
262
+
263
+ _path_params: Dict[str, str] = {}
264
+ _query_params: List[Tuple[str, str]] = []
265
+ _header_params: Dict[str, Optional[str]] = _headers or {}
266
+ _form_params: List[Tuple[str, str]] = []
267
+ _files: Dict[
268
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
269
+ ] = {}
270
+ _body_params: Optional[bytes] = None
271
+
272
+ # process the path parameters
273
+ # process the query parameters
274
+ # process the header parameters
275
+ # process the form parameters
276
+ # process the body parameter
277
+ if imap_add_payload is not None:
278
+ _body_params = imap_add_payload
279
+
280
+
281
+ # set the HTTP header `Accept`
282
+ if 'Accept' not in _header_params:
283
+ _header_params['Accept'] = self.api_client.select_header_accept(
284
+ [
285
+ 'application/json'
286
+ ]
287
+ )
288
+
289
+ # set the HTTP header `Content-Type`
290
+ if _content_type:
291
+ _header_params['Content-Type'] = _content_type
292
+ else:
293
+ _default_content_type = (
294
+ self.api_client.select_header_content_type(
295
+ [
296
+ 'application/json'
297
+ ]
298
+ )
299
+ )
300
+ if _default_content_type is not None:
301
+ _header_params['Content-Type'] = _default_content_type
302
+
303
+ # authentication setting
304
+ _auth_settings: List[str] = [
305
+ 'QAnswer-Api-Key',
306
+ 'Bearer token'
307
+ ]
308
+
309
+ return self.api_client.param_serialize(
310
+ method='POST',
311
+ resource_path='/backend/api/connectors/imap-connector/add',
312
+ path_params=_path_params,
313
+ query_params=_query_params,
314
+ header_params=_header_params,
315
+ body=_body_params,
316
+ post_params=_form_params,
317
+ files=_files,
318
+ auth_settings=_auth_settings,
319
+ collection_formats=_collection_formats,
320
+ _host=_host,
321
+ _request_auth=_request_auth
322
+ )
323
+
324
+
325
+
326
+
327
+ @validate_call
328
+ def create_imap_connector_request(
329
+ self,
330
+ create_imap_connector_request: CreateImapConnectorRequest,
331
+ _request_timeout: Union[
332
+ None,
333
+ Annotated[StrictFloat, Field(gt=0)],
334
+ Tuple[
335
+ Annotated[StrictFloat, Field(gt=0)],
336
+ Annotated[StrictFloat, Field(gt=0)]
337
+ ]
338
+ ] = None,
339
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
340
+ _content_type: Optional[StrictStr] = None,
341
+ _headers: Optional[Dict[StrictStr, Any]] = None,
342
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
343
+ ) -> CreateConnectorResponse:
344
+ """Create Imap Connector
345
+
346
+ Create IMAP Connector
347
+
348
+ :param create_imap_connector_request: (required)
349
+ :type create_imap_connector_request: CreateImapConnectorRequest
350
+ :param _request_timeout: timeout setting for this request. If one
351
+ number provided, it will be total request
352
+ timeout. It can also be a pair (tuple) of
353
+ (connection, read) timeouts.
354
+ :type _request_timeout: int, tuple(int, int), optional
355
+ :param _request_auth: set to override the auth_settings for an a single
356
+ request; this effectively ignores the
357
+ authentication in the spec for a single request.
358
+ :type _request_auth: dict, optional
359
+ :param _content_type: force content-type for the request.
360
+ :type _content_type: str, Optional
361
+ :param _headers: set to override the headers for a single
362
+ request; this effectively ignores the headers
363
+ in the spec for a single request.
364
+ :type _headers: dict, optional
365
+ :param _host_index: set to override the host_index for a single
366
+ request; this effectively ignores the host_index
367
+ in the spec for a single request.
368
+ :type _host_index: int, optional
369
+ :return: Returns the result object.
370
+ """ # noqa: E501
371
+
372
+ _param = self._create_imap_connector_request_serialize(
373
+ create_imap_connector_request=create_imap_connector_request,
374
+ _request_auth=_request_auth,
375
+ _content_type=_content_type,
376
+ _headers=_headers,
377
+ _host_index=_host_index
378
+ )
379
+
380
+ _response_types_map: Dict[str, Optional[str]] = {
381
+ '200': "CreateConnectorResponse",
382
+ '422': "HTTPValidationError",
383
+ }
384
+ response_data = self.api_client.call_api(
385
+ *_param,
386
+ _request_timeout=_request_timeout
387
+ )
388
+ response_data.read()
389
+ return self.api_client.response_deserialize(
390
+ response_data=response_data,
391
+ response_types_map=_response_types_map,
392
+ ).data
393
+
394
+
395
+ @validate_call
396
+ def create_imap_connector_request_with_http_info(
397
+ self,
398
+ create_imap_connector_request: CreateImapConnectorRequest,
399
+ _request_timeout: Union[
400
+ None,
401
+ Annotated[StrictFloat, Field(gt=0)],
402
+ Tuple[
403
+ Annotated[StrictFloat, Field(gt=0)],
404
+ Annotated[StrictFloat, Field(gt=0)]
405
+ ]
406
+ ] = None,
407
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
408
+ _content_type: Optional[StrictStr] = None,
409
+ _headers: Optional[Dict[StrictStr, Any]] = None,
410
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
411
+ ) -> ApiResponse[CreateConnectorResponse]:
412
+ """Create Imap Connector
413
+
414
+ Create IMAP Connector
415
+
416
+ :param create_imap_connector_request: (required)
417
+ :type create_imap_connector_request: CreateImapConnectorRequest
418
+ :param _request_timeout: timeout setting for this request. If one
419
+ number provided, it will be total request
420
+ timeout. It can also be a pair (tuple) of
421
+ (connection, read) timeouts.
422
+ :type _request_timeout: int, tuple(int, int), optional
423
+ :param _request_auth: set to override the auth_settings for an a single
424
+ request; this effectively ignores the
425
+ authentication in the spec for a single request.
426
+ :type _request_auth: dict, optional
427
+ :param _content_type: force content-type for the request.
428
+ :type _content_type: str, Optional
429
+ :param _headers: set to override the headers for a single
430
+ request; this effectively ignores the headers
431
+ in the spec for a single request.
432
+ :type _headers: dict, optional
433
+ :param _host_index: set to override the host_index for a single
434
+ request; this effectively ignores the host_index
435
+ in the spec for a single request.
436
+ :type _host_index: int, optional
437
+ :return: Returns the result object.
438
+ """ # noqa: E501
439
+
440
+ _param = self._create_imap_connector_request_serialize(
441
+ create_imap_connector_request=create_imap_connector_request,
442
+ _request_auth=_request_auth,
443
+ _content_type=_content_type,
444
+ _headers=_headers,
445
+ _host_index=_host_index
446
+ )
447
+
448
+ _response_types_map: Dict[str, Optional[str]] = {
449
+ '200': "CreateConnectorResponse",
450
+ '422': "HTTPValidationError",
451
+ }
452
+ response_data = self.api_client.call_api(
453
+ *_param,
454
+ _request_timeout=_request_timeout
455
+ )
456
+ response_data.read()
457
+ return self.api_client.response_deserialize(
458
+ response_data=response_data,
459
+ response_types_map=_response_types_map,
460
+ )
461
+
462
+
463
+ @validate_call
464
+ def create_imap_connector_request_without_preload_content(
465
+ self,
466
+ create_imap_connector_request: CreateImapConnectorRequest,
467
+ _request_timeout: Union[
468
+ None,
469
+ Annotated[StrictFloat, Field(gt=0)],
470
+ Tuple[
471
+ Annotated[StrictFloat, Field(gt=0)],
472
+ Annotated[StrictFloat, Field(gt=0)]
473
+ ]
474
+ ] = None,
475
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
476
+ _content_type: Optional[StrictStr] = None,
477
+ _headers: Optional[Dict[StrictStr, Any]] = None,
478
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
479
+ ) -> RESTResponseType:
480
+ """Create Imap Connector
481
+
482
+ Create IMAP Connector
483
+
484
+ :param create_imap_connector_request: (required)
485
+ :type create_imap_connector_request: CreateImapConnectorRequest
486
+ :param _request_timeout: timeout setting for this request. If one
487
+ number provided, it will be total request
488
+ timeout. It can also be a pair (tuple) of
489
+ (connection, read) timeouts.
490
+ :type _request_timeout: int, tuple(int, int), optional
491
+ :param _request_auth: set to override the auth_settings for an a single
492
+ request; this effectively ignores the
493
+ authentication in the spec for a single request.
494
+ :type _request_auth: dict, optional
495
+ :param _content_type: force content-type for the request.
496
+ :type _content_type: str, Optional
497
+ :param _headers: set to override the headers for a single
498
+ request; this effectively ignores the headers
499
+ in the spec for a single request.
500
+ :type _headers: dict, optional
501
+ :param _host_index: set to override the host_index for a single
502
+ request; this effectively ignores the host_index
503
+ in the spec for a single request.
504
+ :type _host_index: int, optional
505
+ :return: Returns the result object.
506
+ """ # noqa: E501
507
+
508
+ _param = self._create_imap_connector_request_serialize(
509
+ create_imap_connector_request=create_imap_connector_request,
510
+ _request_auth=_request_auth,
511
+ _content_type=_content_type,
512
+ _headers=_headers,
513
+ _host_index=_host_index
514
+ )
515
+
516
+ _response_types_map: Dict[str, Optional[str]] = {
517
+ '200': "CreateConnectorResponse",
518
+ '422': "HTTPValidationError",
519
+ }
520
+ response_data = self.api_client.call_api(
521
+ *_param,
522
+ _request_timeout=_request_timeout
523
+ )
524
+ return response_data.response
525
+
526
+
527
+ def _create_imap_connector_request_serialize(
528
+ self,
529
+ create_imap_connector_request,
530
+ _request_auth,
531
+ _content_type,
532
+ _headers,
533
+ _host_index,
534
+ ) -> RequestSerialized:
535
+
536
+ _host = None
537
+
538
+ _collection_formats: Dict[str, str] = {
539
+ }
540
+
541
+ _path_params: Dict[str, str] = {}
542
+ _query_params: List[Tuple[str, str]] = []
543
+ _header_params: Dict[str, Optional[str]] = _headers or {}
544
+ _form_params: List[Tuple[str, str]] = []
545
+ _files: Dict[
546
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
547
+ ] = {}
548
+ _body_params: Optional[bytes] = None
549
+
550
+ # process the path parameters
551
+ # process the query parameters
552
+ # process the header parameters
553
+ # process the form parameters
554
+ # process the body parameter
555
+ if create_imap_connector_request is not None:
556
+ _body_params = create_imap_connector_request
557
+
558
+
559
+ # set the HTTP header `Accept`
560
+ if 'Accept' not in _header_params:
561
+ _header_params['Accept'] = self.api_client.select_header_accept(
562
+ [
563
+ 'application/json'
564
+ ]
565
+ )
566
+
567
+ # set the HTTP header `Content-Type`
568
+ if _content_type:
569
+ _header_params['Content-Type'] = _content_type
570
+ else:
571
+ _default_content_type = (
572
+ self.api_client.select_header_content_type(
573
+ [
574
+ 'application/json'
575
+ ]
576
+ )
577
+ )
578
+ if _default_content_type is not None:
579
+ _header_params['Content-Type'] = _default_content_type
580
+
581
+ # authentication setting
582
+ _auth_settings: List[str] = [
583
+ 'QAnswer-Api-Key',
584
+ 'Bearer token'
585
+ ]
586
+
587
+ return self.api_client.param_serialize(
588
+ method='POST',
589
+ resource_path='/backend/api/connectors/imap-connector/create',
590
+ path_params=_path_params,
591
+ query_params=_query_params,
592
+ header_params=_header_params,
593
+ body=_body_params,
594
+ post_params=_form_params,
595
+ files=_files,
596
+ auth_settings=_auth_settings,
597
+ collection_formats=_collection_formats,
598
+ _host=_host,
599
+ _request_auth=_request_auth
600
+ )
601
+
602
+
603
+
604
+
605
+ @validate_call
606
+ def get_imap_filter_definitions(
607
+ self,
608
+ username: StrictStr,
609
+ dataset: StrictStr,
610
+ connector_id: StrictInt,
611
+ _request_timeout: Union[
612
+ None,
613
+ Annotated[StrictFloat, Field(gt=0)],
614
+ Tuple[
615
+ Annotated[StrictFloat, Field(gt=0)],
616
+ Annotated[StrictFloat, Field(gt=0)]
617
+ ]
618
+ ] = None,
619
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
620
+ _content_type: Optional[StrictStr] = None,
621
+ _headers: Optional[Dict[StrictStr, Any]] = None,
622
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
623
+ ) -> List[AggregationsGroup]:
624
+ """Get Imap Aggregations
625
+
626
+ Get IMAP filter definitions (aggregations)
627
+
628
+ :param username: (required)
629
+ :type username: str
630
+ :param dataset: (required)
631
+ :type dataset: str
632
+ :param connector_id: (required)
633
+ :type connector_id: int
634
+ :param _request_timeout: timeout setting for this request. If one
635
+ number provided, it will be total request
636
+ timeout. It can also be a pair (tuple) of
637
+ (connection, read) timeouts.
638
+ :type _request_timeout: int, tuple(int, int), optional
639
+ :param _request_auth: set to override the auth_settings for an a single
640
+ request; this effectively ignores the
641
+ authentication in the spec for a single request.
642
+ :type _request_auth: dict, optional
643
+ :param _content_type: force content-type for the request.
644
+ :type _content_type: str, Optional
645
+ :param _headers: set to override the headers for a single
646
+ request; this effectively ignores the headers
647
+ in the spec for a single request.
648
+ :type _headers: dict, optional
649
+ :param _host_index: set to override the host_index for a single
650
+ request; this effectively ignores the host_index
651
+ in the spec for a single request.
652
+ :type _host_index: int, optional
653
+ :return: Returns the result object.
654
+ """ # noqa: E501
655
+
656
+ _param = self._get_imap_filter_definitions_serialize(
657
+ username=username,
658
+ dataset=dataset,
659
+ connector_id=connector_id,
660
+ _request_auth=_request_auth,
661
+ _content_type=_content_type,
662
+ _headers=_headers,
663
+ _host_index=_host_index
664
+ )
665
+
666
+ _response_types_map: Dict[str, Optional[str]] = {
667
+ '200': "List[AggregationsGroup]",
668
+ '422': "HTTPValidationError",
669
+ }
670
+ response_data = self.api_client.call_api(
671
+ *_param,
672
+ _request_timeout=_request_timeout
673
+ )
674
+ response_data.read()
675
+ return self.api_client.response_deserialize(
676
+ response_data=response_data,
677
+ response_types_map=_response_types_map,
678
+ ).data
679
+
680
+
681
+ @validate_call
682
+ def get_imap_filter_definitions_with_http_info(
683
+ self,
684
+ username: StrictStr,
685
+ dataset: StrictStr,
686
+ connector_id: StrictInt,
687
+ _request_timeout: Union[
688
+ None,
689
+ Annotated[StrictFloat, Field(gt=0)],
690
+ Tuple[
691
+ Annotated[StrictFloat, Field(gt=0)],
692
+ Annotated[StrictFloat, Field(gt=0)]
693
+ ]
694
+ ] = None,
695
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
696
+ _content_type: Optional[StrictStr] = None,
697
+ _headers: Optional[Dict[StrictStr, Any]] = None,
698
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
699
+ ) -> ApiResponse[List[AggregationsGroup]]:
700
+ """Get Imap Aggregations
701
+
702
+ Get IMAP filter definitions (aggregations)
703
+
704
+ :param username: (required)
705
+ :type username: str
706
+ :param dataset: (required)
707
+ :type dataset: str
708
+ :param connector_id: (required)
709
+ :type connector_id: int
710
+ :param _request_timeout: timeout setting for this request. If one
711
+ number provided, it will be total request
712
+ timeout. It can also be a pair (tuple) of
713
+ (connection, read) timeouts.
714
+ :type _request_timeout: int, tuple(int, int), optional
715
+ :param _request_auth: set to override the auth_settings for an a single
716
+ request; this effectively ignores the
717
+ authentication in the spec for a single request.
718
+ :type _request_auth: dict, optional
719
+ :param _content_type: force content-type for the request.
720
+ :type _content_type: str, Optional
721
+ :param _headers: set to override the headers for a single
722
+ request; this effectively ignores the headers
723
+ in the spec for a single request.
724
+ :type _headers: dict, optional
725
+ :param _host_index: set to override the host_index for a single
726
+ request; this effectively ignores the host_index
727
+ in the spec for a single request.
728
+ :type _host_index: int, optional
729
+ :return: Returns the result object.
730
+ """ # noqa: E501
731
+
732
+ _param = self._get_imap_filter_definitions_serialize(
733
+ username=username,
734
+ dataset=dataset,
735
+ connector_id=connector_id,
736
+ _request_auth=_request_auth,
737
+ _content_type=_content_type,
738
+ _headers=_headers,
739
+ _host_index=_host_index
740
+ )
741
+
742
+ _response_types_map: Dict[str, Optional[str]] = {
743
+ '200': "List[AggregationsGroup]",
744
+ '422': "HTTPValidationError",
745
+ }
746
+ response_data = self.api_client.call_api(
747
+ *_param,
748
+ _request_timeout=_request_timeout
749
+ )
750
+ response_data.read()
751
+ return self.api_client.response_deserialize(
752
+ response_data=response_data,
753
+ response_types_map=_response_types_map,
754
+ )
755
+
756
+
757
+ @validate_call
758
+ def get_imap_filter_definitions_without_preload_content(
759
+ self,
760
+ username: StrictStr,
761
+ dataset: StrictStr,
762
+ connector_id: StrictInt,
763
+ _request_timeout: Union[
764
+ None,
765
+ Annotated[StrictFloat, Field(gt=0)],
766
+ Tuple[
767
+ Annotated[StrictFloat, Field(gt=0)],
768
+ Annotated[StrictFloat, Field(gt=0)]
769
+ ]
770
+ ] = None,
771
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
772
+ _content_type: Optional[StrictStr] = None,
773
+ _headers: Optional[Dict[StrictStr, Any]] = None,
774
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
775
+ ) -> RESTResponseType:
776
+ """Get Imap Aggregations
777
+
778
+ Get IMAP filter definitions (aggregations)
779
+
780
+ :param username: (required)
781
+ :type username: str
782
+ :param dataset: (required)
783
+ :type dataset: str
784
+ :param connector_id: (required)
785
+ :type connector_id: int
786
+ :param _request_timeout: timeout setting for this request. If one
787
+ number provided, it will be total request
788
+ timeout. It can also be a pair (tuple) of
789
+ (connection, read) timeouts.
790
+ :type _request_timeout: int, tuple(int, int), optional
791
+ :param _request_auth: set to override the auth_settings for an a single
792
+ request; this effectively ignores the
793
+ authentication in the spec for a single request.
794
+ :type _request_auth: dict, optional
795
+ :param _content_type: force content-type for the request.
796
+ :type _content_type: str, Optional
797
+ :param _headers: set to override the headers for a single
798
+ request; this effectively ignores the headers
799
+ in the spec for a single request.
800
+ :type _headers: dict, optional
801
+ :param _host_index: set to override the host_index for a single
802
+ request; this effectively ignores the host_index
803
+ in the spec for a single request.
804
+ :type _host_index: int, optional
805
+ :return: Returns the result object.
806
+ """ # noqa: E501
807
+
808
+ _param = self._get_imap_filter_definitions_serialize(
809
+ username=username,
810
+ dataset=dataset,
811
+ connector_id=connector_id,
812
+ _request_auth=_request_auth,
813
+ _content_type=_content_type,
814
+ _headers=_headers,
815
+ _host_index=_host_index
816
+ )
817
+
818
+ _response_types_map: Dict[str, Optional[str]] = {
819
+ '200': "List[AggregationsGroup]",
820
+ '422': "HTTPValidationError",
821
+ }
822
+ response_data = self.api_client.call_api(
823
+ *_param,
824
+ _request_timeout=_request_timeout
825
+ )
826
+ return response_data.response
827
+
828
+
829
+ def _get_imap_filter_definitions_serialize(
830
+ self,
831
+ username,
832
+ dataset,
833
+ connector_id,
834
+ _request_auth,
835
+ _content_type,
836
+ _headers,
837
+ _host_index,
838
+ ) -> RequestSerialized:
839
+
840
+ _host = None
841
+
842
+ _collection_formats: Dict[str, str] = {
843
+ }
844
+
845
+ _path_params: Dict[str, str] = {}
846
+ _query_params: List[Tuple[str, str]] = []
847
+ _header_params: Dict[str, Optional[str]] = _headers or {}
848
+ _form_params: List[Tuple[str, str]] = []
849
+ _files: Dict[
850
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
851
+ ] = {}
852
+ _body_params: Optional[bytes] = None
853
+
854
+ # process the path parameters
855
+ # process the query parameters
856
+ if username is not None:
857
+
858
+ _query_params.append(('username', username))
859
+
860
+ if dataset is not None:
861
+
862
+ _query_params.append(('dataset', dataset))
863
+
864
+ if connector_id is not None:
865
+
866
+ _query_params.append(('connector_id', connector_id))
867
+
868
+ # process the header parameters
869
+ # process the form parameters
870
+ # process the body parameter
871
+
872
+
873
+ # set the HTTP header `Accept`
874
+ if 'Accept' not in _header_params:
875
+ _header_params['Accept'] = self.api_client.select_header_accept(
876
+ [
877
+ 'application/json'
878
+ ]
879
+ )
880
+
881
+
882
+ # authentication setting
883
+ _auth_settings: List[str] = [
884
+ 'QAnswer-Api-Key',
885
+ 'Bearer token'
886
+ ]
887
+
888
+ return self.api_client.param_serialize(
889
+ method='GET',
890
+ resource_path='/backend/api/connectors/imap-connector/filter-definitions',
891
+ path_params=_path_params,
892
+ query_params=_query_params,
893
+ header_params=_header_params,
894
+ body=_body_params,
895
+ post_params=_form_params,
896
+ files=_files,
897
+ auth_settings=_auth_settings,
898
+ collection_formats=_collection_formats,
899
+ _host=_host,
900
+ _request_auth=_request_auth
901
+ )
902
+
903
+
904
+
905
+
906
+ @validate_call
907
+ def refresh_imap_connector(
908
+ self,
909
+ username: StrictStr,
910
+ dataset: StrictStr,
911
+ connector_id: StrictInt,
912
+ quota: Optional[StrictInt] = None,
913
+ _request_timeout: Union[
914
+ None,
915
+ Annotated[StrictFloat, Field(gt=0)],
916
+ Tuple[
917
+ Annotated[StrictFloat, Field(gt=0)],
918
+ Annotated[StrictFloat, Field(gt=0)]
919
+ ]
920
+ ] = None,
921
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
922
+ _content_type: Optional[StrictStr] = None,
923
+ _headers: Optional[Dict[StrictStr, Any]] = None,
924
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
925
+ ) -> StatusResponse:
926
+ """Refresh Imap Connector
927
+
928
+ Refresh IMAP connector by fetching new emails
929
+
930
+ :param username: (required)
931
+ :type username: str
932
+ :param dataset: (required)
933
+ :type dataset: str
934
+ :param connector_id: (required)
935
+ :type connector_id: int
936
+ :param quota:
937
+ :type quota: int
938
+ :param _request_timeout: timeout setting for this request. If one
939
+ number provided, it will be total request
940
+ timeout. It can also be a pair (tuple) of
941
+ (connection, read) timeouts.
942
+ :type _request_timeout: int, tuple(int, int), optional
943
+ :param _request_auth: set to override the auth_settings for an a single
944
+ request; this effectively ignores the
945
+ authentication in the spec for a single request.
946
+ :type _request_auth: dict, optional
947
+ :param _content_type: force content-type for the request.
948
+ :type _content_type: str, Optional
949
+ :param _headers: set to override the headers for a single
950
+ request; this effectively ignores the headers
951
+ in the spec for a single request.
952
+ :type _headers: dict, optional
953
+ :param _host_index: set to override the host_index for a single
954
+ request; this effectively ignores the host_index
955
+ in the spec for a single request.
956
+ :type _host_index: int, optional
957
+ :return: Returns the result object.
958
+ """ # noqa: E501
959
+
960
+ _param = self._refresh_imap_connector_serialize(
961
+ username=username,
962
+ dataset=dataset,
963
+ connector_id=connector_id,
964
+ quota=quota,
965
+ _request_auth=_request_auth,
966
+ _content_type=_content_type,
967
+ _headers=_headers,
968
+ _host_index=_host_index
969
+ )
970
+
971
+ _response_types_map: Dict[str, Optional[str]] = {
972
+ '200': "StatusResponse",
973
+ '422': "HTTPValidationError",
974
+ }
975
+ response_data = self.api_client.call_api(
976
+ *_param,
977
+ _request_timeout=_request_timeout
978
+ )
979
+ response_data.read()
980
+ return self.api_client.response_deserialize(
981
+ response_data=response_data,
982
+ response_types_map=_response_types_map,
983
+ ).data
984
+
985
+
986
+ @validate_call
987
+ def refresh_imap_connector_with_http_info(
988
+ self,
989
+ username: StrictStr,
990
+ dataset: StrictStr,
991
+ connector_id: StrictInt,
992
+ quota: Optional[StrictInt] = None,
993
+ _request_timeout: Union[
994
+ None,
995
+ Annotated[StrictFloat, Field(gt=0)],
996
+ Tuple[
997
+ Annotated[StrictFloat, Field(gt=0)],
998
+ Annotated[StrictFloat, Field(gt=0)]
999
+ ]
1000
+ ] = None,
1001
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1002
+ _content_type: Optional[StrictStr] = None,
1003
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1004
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1005
+ ) -> ApiResponse[StatusResponse]:
1006
+ """Refresh Imap Connector
1007
+
1008
+ Refresh IMAP connector by fetching new emails
1009
+
1010
+ :param username: (required)
1011
+ :type username: str
1012
+ :param dataset: (required)
1013
+ :type dataset: str
1014
+ :param connector_id: (required)
1015
+ :type connector_id: int
1016
+ :param quota:
1017
+ :type quota: int
1018
+ :param _request_timeout: timeout setting for this request. If one
1019
+ number provided, it will be total request
1020
+ timeout. It can also be a pair (tuple) of
1021
+ (connection, read) timeouts.
1022
+ :type _request_timeout: int, tuple(int, int), optional
1023
+ :param _request_auth: set to override the auth_settings for an a single
1024
+ request; this effectively ignores the
1025
+ authentication in the spec for a single request.
1026
+ :type _request_auth: dict, optional
1027
+ :param _content_type: force content-type for the request.
1028
+ :type _content_type: str, Optional
1029
+ :param _headers: set to override the headers for a single
1030
+ request; this effectively ignores the headers
1031
+ in the spec for a single request.
1032
+ :type _headers: dict, optional
1033
+ :param _host_index: set to override the host_index for a single
1034
+ request; this effectively ignores the host_index
1035
+ in the spec for a single request.
1036
+ :type _host_index: int, optional
1037
+ :return: Returns the result object.
1038
+ """ # noqa: E501
1039
+
1040
+ _param = self._refresh_imap_connector_serialize(
1041
+ username=username,
1042
+ dataset=dataset,
1043
+ connector_id=connector_id,
1044
+ quota=quota,
1045
+ _request_auth=_request_auth,
1046
+ _content_type=_content_type,
1047
+ _headers=_headers,
1048
+ _host_index=_host_index
1049
+ )
1050
+
1051
+ _response_types_map: Dict[str, Optional[str]] = {
1052
+ '200': "StatusResponse",
1053
+ '422': "HTTPValidationError",
1054
+ }
1055
+ response_data = self.api_client.call_api(
1056
+ *_param,
1057
+ _request_timeout=_request_timeout
1058
+ )
1059
+ response_data.read()
1060
+ return self.api_client.response_deserialize(
1061
+ response_data=response_data,
1062
+ response_types_map=_response_types_map,
1063
+ )
1064
+
1065
+
1066
+ @validate_call
1067
+ def refresh_imap_connector_without_preload_content(
1068
+ self,
1069
+ username: StrictStr,
1070
+ dataset: StrictStr,
1071
+ connector_id: StrictInt,
1072
+ quota: Optional[StrictInt] = None,
1073
+ _request_timeout: Union[
1074
+ None,
1075
+ Annotated[StrictFloat, Field(gt=0)],
1076
+ Tuple[
1077
+ Annotated[StrictFloat, Field(gt=0)],
1078
+ Annotated[StrictFloat, Field(gt=0)]
1079
+ ]
1080
+ ] = None,
1081
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1082
+ _content_type: Optional[StrictStr] = None,
1083
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1084
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1085
+ ) -> RESTResponseType:
1086
+ """Refresh Imap Connector
1087
+
1088
+ Refresh IMAP connector by fetching new emails
1089
+
1090
+ :param username: (required)
1091
+ :type username: str
1092
+ :param dataset: (required)
1093
+ :type dataset: str
1094
+ :param connector_id: (required)
1095
+ :type connector_id: int
1096
+ :param quota:
1097
+ :type quota: int
1098
+ :param _request_timeout: timeout setting for this request. If one
1099
+ number provided, it will be total request
1100
+ timeout. It can also be a pair (tuple) of
1101
+ (connection, read) timeouts.
1102
+ :type _request_timeout: int, tuple(int, int), optional
1103
+ :param _request_auth: set to override the auth_settings for an a single
1104
+ request; this effectively ignores the
1105
+ authentication in the spec for a single request.
1106
+ :type _request_auth: dict, optional
1107
+ :param _content_type: force content-type for the request.
1108
+ :type _content_type: str, Optional
1109
+ :param _headers: set to override the headers for a single
1110
+ request; this effectively ignores the headers
1111
+ in the spec for a single request.
1112
+ :type _headers: dict, optional
1113
+ :param _host_index: set to override the host_index for a single
1114
+ request; this effectively ignores the host_index
1115
+ in the spec for a single request.
1116
+ :type _host_index: int, optional
1117
+ :return: Returns the result object.
1118
+ """ # noqa: E501
1119
+
1120
+ _param = self._refresh_imap_connector_serialize(
1121
+ username=username,
1122
+ dataset=dataset,
1123
+ connector_id=connector_id,
1124
+ quota=quota,
1125
+ _request_auth=_request_auth,
1126
+ _content_type=_content_type,
1127
+ _headers=_headers,
1128
+ _host_index=_host_index
1129
+ )
1130
+
1131
+ _response_types_map: Dict[str, Optional[str]] = {
1132
+ '200': "StatusResponse",
1133
+ '422': "HTTPValidationError",
1134
+ }
1135
+ response_data = self.api_client.call_api(
1136
+ *_param,
1137
+ _request_timeout=_request_timeout
1138
+ )
1139
+ return response_data.response
1140
+
1141
+
1142
+ def _refresh_imap_connector_serialize(
1143
+ self,
1144
+ username,
1145
+ dataset,
1146
+ connector_id,
1147
+ quota,
1148
+ _request_auth,
1149
+ _content_type,
1150
+ _headers,
1151
+ _host_index,
1152
+ ) -> RequestSerialized:
1153
+
1154
+ _host = None
1155
+
1156
+ _collection_formats: Dict[str, str] = {
1157
+ }
1158
+
1159
+ _path_params: Dict[str, str] = {}
1160
+ _query_params: List[Tuple[str, str]] = []
1161
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1162
+ _form_params: List[Tuple[str, str]] = []
1163
+ _files: Dict[
1164
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1165
+ ] = {}
1166
+ _body_params: Optional[bytes] = None
1167
+
1168
+ # process the path parameters
1169
+ # process the query parameters
1170
+ if username is not None:
1171
+
1172
+ _query_params.append(('username', username))
1173
+
1174
+ if dataset is not None:
1175
+
1176
+ _query_params.append(('dataset', dataset))
1177
+
1178
+ if connector_id is not None:
1179
+
1180
+ _query_params.append(('connector_id', connector_id))
1181
+
1182
+ if quota is not None:
1183
+
1184
+ _query_params.append(('quota', quota))
1185
+
1186
+ # process the header parameters
1187
+ # process the form parameters
1188
+ # process the body parameter
1189
+
1190
+
1191
+ # set the HTTP header `Accept`
1192
+ if 'Accept' not in _header_params:
1193
+ _header_params['Accept'] = self.api_client.select_header_accept(
1194
+ [
1195
+ 'application/json'
1196
+ ]
1197
+ )
1198
+
1199
+
1200
+ # authentication setting
1201
+ _auth_settings: List[str] = [
1202
+ 'QAnswer-Api-Key',
1203
+ 'Bearer token'
1204
+ ]
1205
+
1206
+ return self.api_client.param_serialize(
1207
+ method='POST',
1208
+ resource_path='/backend/api/connectors/imap-connector/refresh',
1209
+ path_params=_path_params,
1210
+ query_params=_query_params,
1211
+ header_params=_header_params,
1212
+ body=_body_params,
1213
+ post_params=_form_params,
1214
+ files=_files,
1215
+ auth_settings=_auth_settings,
1216
+ collection_formats=_collection_formats,
1217
+ _host=_host,
1218
+ _request_auth=_request_auth
1219
+ )
1220
+
1221
+
1222
+
1223
+
1224
+ @validate_call
1225
+ def search_imap_connector(
1226
+ self,
1227
+ search_index_payload: SearchIndexPayload,
1228
+ _request_timeout: Union[
1229
+ None,
1230
+ Annotated[StrictFloat, Field(gt=0)],
1231
+ Tuple[
1232
+ Annotated[StrictFloat, Field(gt=0)],
1233
+ Annotated[StrictFloat, Field(gt=0)]
1234
+ ]
1235
+ ] = None,
1236
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1237
+ _content_type: Optional[StrictStr] = None,
1238
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1239
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1240
+ ) -> ImapSearchResponse:
1241
+ """Search For Imap Emails
1242
+
1243
+ Search for emails in IMAP connector
1244
+
1245
+ :param search_index_payload: (required)
1246
+ :type search_index_payload: SearchIndexPayload
1247
+ :param _request_timeout: timeout setting for this request. If one
1248
+ number provided, it will be total request
1249
+ timeout. It can also be a pair (tuple) of
1250
+ (connection, read) timeouts.
1251
+ :type _request_timeout: int, tuple(int, int), optional
1252
+ :param _request_auth: set to override the auth_settings for an a single
1253
+ request; this effectively ignores the
1254
+ authentication in the spec for a single request.
1255
+ :type _request_auth: dict, optional
1256
+ :param _content_type: force content-type for the request.
1257
+ :type _content_type: str, Optional
1258
+ :param _headers: set to override the headers for a single
1259
+ request; this effectively ignores the headers
1260
+ in the spec for a single request.
1261
+ :type _headers: dict, optional
1262
+ :param _host_index: set to override the host_index for a single
1263
+ request; this effectively ignores the host_index
1264
+ in the spec for a single request.
1265
+ :type _host_index: int, optional
1266
+ :return: Returns the result object.
1267
+ """ # noqa: E501
1268
+
1269
+ _param = self._search_imap_connector_serialize(
1270
+ search_index_payload=search_index_payload,
1271
+ _request_auth=_request_auth,
1272
+ _content_type=_content_type,
1273
+ _headers=_headers,
1274
+ _host_index=_host_index
1275
+ )
1276
+
1277
+ _response_types_map: Dict[str, Optional[str]] = {
1278
+ '200': "ImapSearchResponse",
1279
+ '422': "HTTPValidationError",
1280
+ }
1281
+ response_data = self.api_client.call_api(
1282
+ *_param,
1283
+ _request_timeout=_request_timeout
1284
+ )
1285
+ response_data.read()
1286
+ return self.api_client.response_deserialize(
1287
+ response_data=response_data,
1288
+ response_types_map=_response_types_map,
1289
+ ).data
1290
+
1291
+
1292
+ @validate_call
1293
+ def search_imap_connector_with_http_info(
1294
+ self,
1295
+ search_index_payload: SearchIndexPayload,
1296
+ _request_timeout: Union[
1297
+ None,
1298
+ Annotated[StrictFloat, Field(gt=0)],
1299
+ Tuple[
1300
+ Annotated[StrictFloat, Field(gt=0)],
1301
+ Annotated[StrictFloat, Field(gt=0)]
1302
+ ]
1303
+ ] = None,
1304
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1305
+ _content_type: Optional[StrictStr] = None,
1306
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1307
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1308
+ ) -> ApiResponse[ImapSearchResponse]:
1309
+ """Search For Imap Emails
1310
+
1311
+ Search for emails in IMAP connector
1312
+
1313
+ :param search_index_payload: (required)
1314
+ :type search_index_payload: SearchIndexPayload
1315
+ :param _request_timeout: timeout setting for this request. If one
1316
+ number provided, it will be total request
1317
+ timeout. It can also be a pair (tuple) of
1318
+ (connection, read) timeouts.
1319
+ :type _request_timeout: int, tuple(int, int), optional
1320
+ :param _request_auth: set to override the auth_settings for an a single
1321
+ request; this effectively ignores the
1322
+ authentication in the spec for a single request.
1323
+ :type _request_auth: dict, optional
1324
+ :param _content_type: force content-type for the request.
1325
+ :type _content_type: str, Optional
1326
+ :param _headers: set to override the headers for a single
1327
+ request; this effectively ignores the headers
1328
+ in the spec for a single request.
1329
+ :type _headers: dict, optional
1330
+ :param _host_index: set to override the host_index for a single
1331
+ request; this effectively ignores the host_index
1332
+ in the spec for a single request.
1333
+ :type _host_index: int, optional
1334
+ :return: Returns the result object.
1335
+ """ # noqa: E501
1336
+
1337
+ _param = self._search_imap_connector_serialize(
1338
+ search_index_payload=search_index_payload,
1339
+ _request_auth=_request_auth,
1340
+ _content_type=_content_type,
1341
+ _headers=_headers,
1342
+ _host_index=_host_index
1343
+ )
1344
+
1345
+ _response_types_map: Dict[str, Optional[str]] = {
1346
+ '200': "ImapSearchResponse",
1347
+ '422': "HTTPValidationError",
1348
+ }
1349
+ response_data = self.api_client.call_api(
1350
+ *_param,
1351
+ _request_timeout=_request_timeout
1352
+ )
1353
+ response_data.read()
1354
+ return self.api_client.response_deserialize(
1355
+ response_data=response_data,
1356
+ response_types_map=_response_types_map,
1357
+ )
1358
+
1359
+
1360
+ @validate_call
1361
+ def search_imap_connector_without_preload_content(
1362
+ self,
1363
+ search_index_payload: SearchIndexPayload,
1364
+ _request_timeout: Union[
1365
+ None,
1366
+ Annotated[StrictFloat, Field(gt=0)],
1367
+ Tuple[
1368
+ Annotated[StrictFloat, Field(gt=0)],
1369
+ Annotated[StrictFloat, Field(gt=0)]
1370
+ ]
1371
+ ] = None,
1372
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1373
+ _content_type: Optional[StrictStr] = None,
1374
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1375
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1376
+ ) -> RESTResponseType:
1377
+ """Search For Imap Emails
1378
+
1379
+ Search for emails in IMAP connector
1380
+
1381
+ :param search_index_payload: (required)
1382
+ :type search_index_payload: SearchIndexPayload
1383
+ :param _request_timeout: timeout setting for this request. If one
1384
+ number provided, it will be total request
1385
+ timeout. It can also be a pair (tuple) of
1386
+ (connection, read) timeouts.
1387
+ :type _request_timeout: int, tuple(int, int), optional
1388
+ :param _request_auth: set to override the auth_settings for an a single
1389
+ request; this effectively ignores the
1390
+ authentication in the spec for a single request.
1391
+ :type _request_auth: dict, optional
1392
+ :param _content_type: force content-type for the request.
1393
+ :type _content_type: str, Optional
1394
+ :param _headers: set to override the headers for a single
1395
+ request; this effectively ignores the headers
1396
+ in the spec for a single request.
1397
+ :type _headers: dict, optional
1398
+ :param _host_index: set to override the host_index for a single
1399
+ request; this effectively ignores the host_index
1400
+ in the spec for a single request.
1401
+ :type _host_index: int, optional
1402
+ :return: Returns the result object.
1403
+ """ # noqa: E501
1404
+
1405
+ _param = self._search_imap_connector_serialize(
1406
+ search_index_payload=search_index_payload,
1407
+ _request_auth=_request_auth,
1408
+ _content_type=_content_type,
1409
+ _headers=_headers,
1410
+ _host_index=_host_index
1411
+ )
1412
+
1413
+ _response_types_map: Dict[str, Optional[str]] = {
1414
+ '200': "ImapSearchResponse",
1415
+ '422': "HTTPValidationError",
1416
+ }
1417
+ response_data = self.api_client.call_api(
1418
+ *_param,
1419
+ _request_timeout=_request_timeout
1420
+ )
1421
+ return response_data.response
1422
+
1423
+
1424
+ def _search_imap_connector_serialize(
1425
+ self,
1426
+ search_index_payload,
1427
+ _request_auth,
1428
+ _content_type,
1429
+ _headers,
1430
+ _host_index,
1431
+ ) -> RequestSerialized:
1432
+
1433
+ _host = None
1434
+
1435
+ _collection_formats: Dict[str, str] = {
1436
+ }
1437
+
1438
+ _path_params: Dict[str, str] = {}
1439
+ _query_params: List[Tuple[str, str]] = []
1440
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1441
+ _form_params: List[Tuple[str, str]] = []
1442
+ _files: Dict[
1443
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1444
+ ] = {}
1445
+ _body_params: Optional[bytes] = None
1446
+
1447
+ # process the path parameters
1448
+ # process the query parameters
1449
+ # process the header parameters
1450
+ # process the form parameters
1451
+ # process the body parameter
1452
+ if search_index_payload is not None:
1453
+ _body_params = search_index_payload
1454
+
1455
+
1456
+ # set the HTTP header `Accept`
1457
+ if 'Accept' not in _header_params:
1458
+ _header_params['Accept'] = self.api_client.select_header_accept(
1459
+ [
1460
+ 'application/json'
1461
+ ]
1462
+ )
1463
+
1464
+ # set the HTTP header `Content-Type`
1465
+ if _content_type:
1466
+ _header_params['Content-Type'] = _content_type
1467
+ else:
1468
+ _default_content_type = (
1469
+ self.api_client.select_header_content_type(
1470
+ [
1471
+ 'application/json'
1472
+ ]
1473
+ )
1474
+ )
1475
+ if _default_content_type is not None:
1476
+ _header_params['Content-Type'] = _default_content_type
1477
+
1478
+ # authentication setting
1479
+ _auth_settings: List[str] = [
1480
+ 'QAnswer-Api-Key',
1481
+ 'Bearer token'
1482
+ ]
1483
+
1484
+ return self.api_client.param_serialize(
1485
+ method='POST',
1486
+ resource_path='/backend/api/connectors/imap-connector/search',
1487
+ path_params=_path_params,
1488
+ query_params=_query_params,
1489
+ header_params=_header_params,
1490
+ body=_body_params,
1491
+ post_params=_form_params,
1492
+ files=_files,
1493
+ auth_settings=_auth_settings,
1494
+ collection_formats=_collection_formats,
1495
+ _host=_host,
1496
+ _request_auth=_request_auth
1497
+ )
1498
+
1499
+
1500
+
1501
+
1502
+ @validate_call
1503
+ def test_imap_connection(
1504
+ self,
1505
+ test_imap_connection_payload: TestImapConnectionPayload,
1506
+ _request_timeout: Union[
1507
+ None,
1508
+ Annotated[StrictFloat, Field(gt=0)],
1509
+ Tuple[
1510
+ Annotated[StrictFloat, Field(gt=0)],
1511
+ Annotated[StrictFloat, Field(gt=0)]
1512
+ ]
1513
+ ] = None,
1514
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1515
+ _content_type: Optional[StrictStr] = None,
1516
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1517
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1518
+ ) -> List[EmailFolder]:
1519
+ """Test Imap Connection
1520
+
1521
+ Test IMAP connection and return folder structure
1522
+
1523
+ :param test_imap_connection_payload: (required)
1524
+ :type test_imap_connection_payload: TestImapConnectionPayload
1525
+ :param _request_timeout: timeout setting for this request. If one
1526
+ number provided, it will be total request
1527
+ timeout. It can also be a pair (tuple) of
1528
+ (connection, read) timeouts.
1529
+ :type _request_timeout: int, tuple(int, int), optional
1530
+ :param _request_auth: set to override the auth_settings for an a single
1531
+ request; this effectively ignores the
1532
+ authentication in the spec for a single request.
1533
+ :type _request_auth: dict, optional
1534
+ :param _content_type: force content-type for the request.
1535
+ :type _content_type: str, Optional
1536
+ :param _headers: set to override the headers for a single
1537
+ request; this effectively ignores the headers
1538
+ in the spec for a single request.
1539
+ :type _headers: dict, optional
1540
+ :param _host_index: set to override the host_index for a single
1541
+ request; this effectively ignores the host_index
1542
+ in the spec for a single request.
1543
+ :type _host_index: int, optional
1544
+ :return: Returns the result object.
1545
+ """ # noqa: E501
1546
+
1547
+ _param = self._test_imap_connection_serialize(
1548
+ test_imap_connection_payload=test_imap_connection_payload,
1549
+ _request_auth=_request_auth,
1550
+ _content_type=_content_type,
1551
+ _headers=_headers,
1552
+ _host_index=_host_index
1553
+ )
1554
+
1555
+ _response_types_map: Dict[str, Optional[str]] = {
1556
+ '200': "List[EmailFolder]",
1557
+ '422': "HTTPValidationError",
1558
+ }
1559
+ response_data = self.api_client.call_api(
1560
+ *_param,
1561
+ _request_timeout=_request_timeout
1562
+ )
1563
+ response_data.read()
1564
+ return self.api_client.response_deserialize(
1565
+ response_data=response_data,
1566
+ response_types_map=_response_types_map,
1567
+ ).data
1568
+
1569
+
1570
+ @validate_call
1571
+ def test_imap_connection_with_http_info(
1572
+ self,
1573
+ test_imap_connection_payload: TestImapConnectionPayload,
1574
+ _request_timeout: Union[
1575
+ None,
1576
+ Annotated[StrictFloat, Field(gt=0)],
1577
+ Tuple[
1578
+ Annotated[StrictFloat, Field(gt=0)],
1579
+ Annotated[StrictFloat, Field(gt=0)]
1580
+ ]
1581
+ ] = None,
1582
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1583
+ _content_type: Optional[StrictStr] = None,
1584
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1585
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1586
+ ) -> ApiResponse[List[EmailFolder]]:
1587
+ """Test Imap Connection
1588
+
1589
+ Test IMAP connection and return folder structure
1590
+
1591
+ :param test_imap_connection_payload: (required)
1592
+ :type test_imap_connection_payload: TestImapConnectionPayload
1593
+ :param _request_timeout: timeout setting for this request. If one
1594
+ number provided, it will be total request
1595
+ timeout. It can also be a pair (tuple) of
1596
+ (connection, read) timeouts.
1597
+ :type _request_timeout: int, tuple(int, int), optional
1598
+ :param _request_auth: set to override the auth_settings for an a single
1599
+ request; this effectively ignores the
1600
+ authentication in the spec for a single request.
1601
+ :type _request_auth: dict, optional
1602
+ :param _content_type: force content-type for the request.
1603
+ :type _content_type: str, Optional
1604
+ :param _headers: set to override the headers for a single
1605
+ request; this effectively ignores the headers
1606
+ in the spec for a single request.
1607
+ :type _headers: dict, optional
1608
+ :param _host_index: set to override the host_index for a single
1609
+ request; this effectively ignores the host_index
1610
+ in the spec for a single request.
1611
+ :type _host_index: int, optional
1612
+ :return: Returns the result object.
1613
+ """ # noqa: E501
1614
+
1615
+ _param = self._test_imap_connection_serialize(
1616
+ test_imap_connection_payload=test_imap_connection_payload,
1617
+ _request_auth=_request_auth,
1618
+ _content_type=_content_type,
1619
+ _headers=_headers,
1620
+ _host_index=_host_index
1621
+ )
1622
+
1623
+ _response_types_map: Dict[str, Optional[str]] = {
1624
+ '200': "List[EmailFolder]",
1625
+ '422': "HTTPValidationError",
1626
+ }
1627
+ response_data = self.api_client.call_api(
1628
+ *_param,
1629
+ _request_timeout=_request_timeout
1630
+ )
1631
+ response_data.read()
1632
+ return self.api_client.response_deserialize(
1633
+ response_data=response_data,
1634
+ response_types_map=_response_types_map,
1635
+ )
1636
+
1637
+
1638
+ @validate_call
1639
+ def test_imap_connection_without_preload_content(
1640
+ self,
1641
+ test_imap_connection_payload: TestImapConnectionPayload,
1642
+ _request_timeout: Union[
1643
+ None,
1644
+ Annotated[StrictFloat, Field(gt=0)],
1645
+ Tuple[
1646
+ Annotated[StrictFloat, Field(gt=0)],
1647
+ Annotated[StrictFloat, Field(gt=0)]
1648
+ ]
1649
+ ] = None,
1650
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1651
+ _content_type: Optional[StrictStr] = None,
1652
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1653
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1654
+ ) -> RESTResponseType:
1655
+ """Test Imap Connection
1656
+
1657
+ Test IMAP connection and return folder structure
1658
+
1659
+ :param test_imap_connection_payload: (required)
1660
+ :type test_imap_connection_payload: TestImapConnectionPayload
1661
+ :param _request_timeout: timeout setting for this request. If one
1662
+ number provided, it will be total request
1663
+ timeout. It can also be a pair (tuple) of
1664
+ (connection, read) timeouts.
1665
+ :type _request_timeout: int, tuple(int, int), optional
1666
+ :param _request_auth: set to override the auth_settings for an a single
1667
+ request; this effectively ignores the
1668
+ authentication in the spec for a single request.
1669
+ :type _request_auth: dict, optional
1670
+ :param _content_type: force content-type for the request.
1671
+ :type _content_type: str, Optional
1672
+ :param _headers: set to override the headers for a single
1673
+ request; this effectively ignores the headers
1674
+ in the spec for a single request.
1675
+ :type _headers: dict, optional
1676
+ :param _host_index: set to override the host_index for a single
1677
+ request; this effectively ignores the host_index
1678
+ in the spec for a single request.
1679
+ :type _host_index: int, optional
1680
+ :return: Returns the result object.
1681
+ """ # noqa: E501
1682
+
1683
+ _param = self._test_imap_connection_serialize(
1684
+ test_imap_connection_payload=test_imap_connection_payload,
1685
+ _request_auth=_request_auth,
1686
+ _content_type=_content_type,
1687
+ _headers=_headers,
1688
+ _host_index=_host_index
1689
+ )
1690
+
1691
+ _response_types_map: Dict[str, Optional[str]] = {
1692
+ '200': "List[EmailFolder]",
1693
+ '422': "HTTPValidationError",
1694
+ }
1695
+ response_data = self.api_client.call_api(
1696
+ *_param,
1697
+ _request_timeout=_request_timeout
1698
+ )
1699
+ return response_data.response
1700
+
1701
+
1702
+ def _test_imap_connection_serialize(
1703
+ self,
1704
+ test_imap_connection_payload,
1705
+ _request_auth,
1706
+ _content_type,
1707
+ _headers,
1708
+ _host_index,
1709
+ ) -> RequestSerialized:
1710
+
1711
+ _host = None
1712
+
1713
+ _collection_formats: Dict[str, str] = {
1714
+ }
1715
+
1716
+ _path_params: Dict[str, str] = {}
1717
+ _query_params: List[Tuple[str, str]] = []
1718
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1719
+ _form_params: List[Tuple[str, str]] = []
1720
+ _files: Dict[
1721
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1722
+ ] = {}
1723
+ _body_params: Optional[bytes] = None
1724
+
1725
+ # process the path parameters
1726
+ # process the query parameters
1727
+ # process the header parameters
1728
+ # process the form parameters
1729
+ # process the body parameter
1730
+ if test_imap_connection_payload is not None:
1731
+ _body_params = test_imap_connection_payload
1732
+
1733
+
1734
+ # set the HTTP header `Accept`
1735
+ if 'Accept' not in _header_params:
1736
+ _header_params['Accept'] = self.api_client.select_header_accept(
1737
+ [
1738
+ 'application/json'
1739
+ ]
1740
+ )
1741
+
1742
+ # set the HTTP header `Content-Type`
1743
+ if _content_type:
1744
+ _header_params['Content-Type'] = _content_type
1745
+ else:
1746
+ _default_content_type = (
1747
+ self.api_client.select_header_content_type(
1748
+ [
1749
+ 'application/json'
1750
+ ]
1751
+ )
1752
+ )
1753
+ if _default_content_type is not None:
1754
+ _header_params['Content-Type'] = _default_content_type
1755
+
1756
+ # authentication setting
1757
+ _auth_settings: List[str] = [
1758
+ ]
1759
+
1760
+ return self.api_client.param_serialize(
1761
+ method='POST',
1762
+ resource_path='/backend/api/connectors/imap-connector/test-connection',
1763
+ path_params=_path_params,
1764
+ query_params=_query_params,
1765
+ header_params=_header_params,
1766
+ body=_body_params,
1767
+ post_params=_form_params,
1768
+ files=_files,
1769
+ auth_settings=_auth_settings,
1770
+ collection_formats=_collection_formats,
1771
+ _host=_host,
1772
+ _request_auth=_request_auth
1773
+ )
1774
+
1775
+