qanswer_sdk 3.1213.0__py3-none-any.whl → 3.1245.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. qanswer_sdk/__init__.py +66 -43
  2. qanswer_sdk/api/__init__.py +7 -4
  3. qanswer_sdk/api/admin_api.py +590 -7695
  4. qanswer_sdk/api/ai_assistant_access_rights_api.py +72 -73
  5. qanswer_sdk/api/ai_assistant_api.py +567 -46
  6. qanswer_sdk/api/branding_api.py +4578 -0
  7. qanswer_sdk/api/chatbot_api.py +72 -87
  8. qanswer_sdk/api/{tag_api.py → connector_imap_connector_api.py} +415 -997
  9. qanswer_sdk/api/connector_rdf_api.py +30 -31
  10. qanswer_sdk/api/connectors_api.py +183 -166
  11. qanswer_sdk/api/connectors_data_api.py +345 -1
  12. qanswer_sdk/api/dataset_config_api.py +0 -245
  13. qanswer_sdk/api/llm_api.py +30 -30
  14. qanswer_sdk/api/payment_api.py +17 -16
  15. qanswer_sdk/api/speech_to_text_api.py +2 -2
  16. qanswer_sdk/api/task_chat_api.py +8 -7
  17. qanswer_sdk/api/task_rdf_linker_api.py +35 -36
  18. qanswer_sdk/api/task_rdf_sparql_endpoint_api.py +16 -16
  19. qanswer_sdk/api/task_report_copilot_api.py +895 -281
  20. qanswer_sdk/api/task_search_api.py +8 -7
  21. qanswer_sdk/api/tool_embedder_api.py +4040 -0
  22. qanswer_sdk/api/{user_api.py → tool_llm_api.py} +735 -2749
  23. qanswer_sdk/api/unit_organizations_api.py +4547 -0
  24. qanswer_sdk/api/unit_teams_api.py +3906 -0
  25. qanswer_sdk/api/{organizations_teams_api.py → unit_user_api.py} +1345 -1394
  26. qanswer_sdk/api_client.py +1 -1
  27. qanswer_sdk/configuration.py +1 -1
  28. qanswer_sdk/models/__init__.py +58 -38
  29. qanswer_sdk/models/aggregation.py +2 -2
  30. qanswer_sdk/models/ai_assistant_filter_dto.py +105 -0
  31. qanswer_sdk/models/{user_profile_paginated.py → ai_assistant_list.py} +18 -18
  32. qanswer_sdk/models/{embedding_model.py → available_aggregation.py} +13 -11
  33. qanswer_sdk/models/available_connectors_response.py +2 -2
  34. qanswer_sdk/models/{branding_data.py → branding_app_title.py} +4 -4
  35. qanswer_sdk/models/{api_response.py → branding_system_message.py} +8 -8
  36. qanswer_sdk/models/chat_task_settings.py +12 -12
  37. qanswer_sdk/models/chat_task_update.py +13 -5
  38. qanswer_sdk/models/chatbot_chat_payload.py +19 -2
  39. qanswer_sdk/models/chatbot_conversation_model.py +10 -0
  40. qanswer_sdk/models/chatbot_response.py +22 -2
  41. qanswer_sdk/models/{user_chatbot_setting_payload.py → chatbot_setting_dto.py} +12 -13
  42. qanswer_sdk/models/chatbot_setting_request.py +96 -0
  43. qanswer_sdk/models/{question_completion.py → clip_connector_file_structure.py} +9 -9
  44. qanswer_sdk/models/clip_connector_structure.py +97 -0
  45. qanswer_sdk/models/connector_model.py +2 -2
  46. qanswer_sdk/models/conversation_message.py +4 -12
  47. qanswer_sdk/models/{cost_summary.py → cost_summary_dto.py} +4 -4
  48. qanswer_sdk/models/create_connector_request.py +4 -2
  49. qanswer_sdk/models/create_imap_connector_request.py +105 -0
  50. qanswer_sdk/models/create_pinecone_connector_request.py +3 -1
  51. qanswer_sdk/models/create_sharepoint_connector_from_certificate_request.py +3 -1
  52. qanswer_sdk/models/create_sharepoint_connector_request.py +3 -1
  53. qanswer_sdk/models/dataset_detail_kg.py +27 -1
  54. qanswer_sdk/models/dataset_schema.py +4 -2
  55. qanswer_sdk/models/dataset_update_object.py +3 -1
  56. qanswer_sdk/models/delete_connector_model.py +2 -2
  57. qanswer_sdk/models/delete_connectors_response.py +2 -4
  58. qanswer_sdk/models/{json_nullable_source_metadata.py → duplicate_report_template_response.py} +11 -9
  59. qanswer_sdk/models/{json_nullable_file_failure_reason.py → email_folder.py} +12 -8
  60. qanswer_sdk/models/{embedding_endpoint.py → embedder_detailed_dto.py} +16 -8
  61. qanswer_sdk/models/{tag_payload.py → embedder_dto.py} +11 -7
  62. qanswer_sdk/models/{pageable_object.py → embedder_list_dto.py} +20 -20
  63. qanswer_sdk/models/embedding_endpoint_create.py +3 -1
  64. qanswer_sdk/models/embedding_endpoint_update.py +4 -2
  65. qanswer_sdk/models/{sort_object.py → entity_description.py} +16 -12
  66. qanswer_sdk/models/{dataset_description.py → entity_description_dto.py} +9 -7
  67. qanswer_sdk/models/file_model.py +2 -2
  68. qanswer_sdk/models/imap_add_payload.py +103 -0
  69. qanswer_sdk/models/imap_additional_fields.py +101 -0
  70. qanswer_sdk/models/imap_file_metadata.py +114 -0
  71. qanswer_sdk/models/imap_search_response.py +113 -0
  72. qanswer_sdk/models/llm.py +129 -0
  73. qanswer_sdk/models/llm_consumption.py +118 -0
  74. qanswer_sdk/models/{pageable.py → llm_context_ranges.py} +14 -13
  75. qanswer_sdk/models/{llm_cost.py → llm_cost_filter.py} +11 -7
  76. qanswer_sdk/models/llm_cost_list.py +101 -0
  77. qanswer_sdk/models/llm_detailed_dto.py +179 -0
  78. qanswer_sdk/models/{llm_details.py → llm_dto.py} +14 -18
  79. qanswer_sdk/models/llm_endpoint.py +8 -2
  80. qanswer_sdk/models/llm_endpoint_read_input.py +173 -0
  81. qanswer_sdk/models/llm_endpoint_read_output.py +173 -0
  82. qanswer_sdk/models/llm_filter_dto.py +99 -0
  83. qanswer_sdk/models/llm_list_detailed_dto.py +101 -0
  84. qanswer_sdk/models/llm_list_dto.py +101 -0
  85. qanswer_sdk/models/modify_connector_request.py +5 -11
  86. qanswer_sdk/models/{o_auth_service.py → o_auth_service_dto.py} +4 -4
  87. qanswer_sdk/models/organization_admin.py +95 -0
  88. qanswer_sdk/models/organization_filter_dto.py +97 -0
  89. qanswer_sdk/models/organization_list_dto.py +101 -0
  90. qanswer_sdk/models/organization_llm.py +103 -0
  91. qanswer_sdk/models/{plan.py → plan_dto.py} +4 -4
  92. qanswer_sdk/models/prompt_token_count_details.py +3 -3
  93. qanswer_sdk/models/rag_payload.py +4 -4
  94. qanswer_sdk/models/rag_response.py +4 -2
  95. qanswer_sdk/models/relation_extraction_task_settings.py +12 -10
  96. qanswer_sdk/models/relation_extraction_task_update.py +14 -4
  97. qanswer_sdk/models/report_copilot_slot_task_settings.py +12 -10
  98. qanswer_sdk/models/report_copilot_slot_task_update.py +13 -3
  99. qanswer_sdk/models/report_copilot_task_settings.py +12 -10
  100. qanswer_sdk/models/report_copilot_task_update.py +14 -4
  101. qanswer_sdk/models/{report_copilot_template.py → report_template.py} +17 -7
  102. qanswer_sdk/models/{report_copilot_create_payload.py → report_template_create_payload.py} +4 -4
  103. qanswer_sdk/models/{report_copilot_template_simplified.py → report_template_simplified.py} +11 -7
  104. qanswer_sdk/models/{report_copilot_export_template_as_docx_payload_simplified.py → report_template_simplified_payload.py} +4 -4
  105. qanswer_sdk/models/{report_copilot_update_payload.py → report_template_update_payload.py} +15 -9
  106. qanswer_sdk/models/search_task_settings.py +12 -12
  107. qanswer_sdk/models/search_task_update.py +13 -3
  108. qanswer_sdk/models/{set_logo1_request.py → set_logo2_request.py} +4 -4
  109. qanswer_sdk/models/shared_organization_access.py +7 -3
  110. qanswer_sdk/models/shared_team_access.py +10 -4
  111. qanswer_sdk/models/slot.py +5 -1
  112. qanswer_sdk/models/slot_update.py +5 -1
  113. qanswer_sdk/models/socket_conversation_message.py +3 -11
  114. qanswer_sdk/models/socket_file_metadata.py +17 -11
  115. qanswer_sdk/models/source_metadata.py +109 -0
  116. qanswer_sdk/models/{tag_qa_list_payload.py → subscription_response.py} +22 -21
  117. qanswer_sdk/models/{team_with_count.py → team_admin.py} +8 -8
  118. qanswer_sdk/models/{team_filter.py → team_filter_dto.py} +16 -6
  119. qanswer_sdk/models/team_list_dto.py +101 -0
  120. qanswer_sdk/models/{available_endpoints_response.py → template_clip_structure_input.py} +14 -14
  121. qanswer_sdk/models/{available_embedding_models_response.py → template_clip_structure_output.py} +14 -14
  122. qanswer_sdk/models/test_imap_connection_payload.py +95 -0
  123. qanswer_sdk/models/text2_sparql_payload.py +4 -4
  124. qanswer_sdk/models/text2_sparql_task_settings.py +12 -10
  125. qanswer_sdk/models/text2_sparql_task_update.py +14 -4
  126. qanswer_sdk/models/{user_chatbot_setting_response.py → user_chatbot_setting.py} +24 -24
  127. qanswer_sdk/models/user_dataset.py +38 -2
  128. qanswer_sdk/models/{qa_metadata_payload.py → user_dataset_shared.py} +27 -37
  129. qanswer_sdk/models/{user_filter.py → user_filter_dto.py} +4 -4
  130. qanswer_sdk/models/{user_profile.py → user_profile_dto.py} +10 -10
  131. qanswer_sdk/models/user_profile_list_dto.py +3 -3
  132. qanswer_sdk/models/widget_configs.py +4 -2
  133. {qanswer_sdk-3.1213.0.dist-info → qanswer_sdk-3.1245.0.dist-info}/METADATA +2 -2
  134. {qanswer_sdk-3.1213.0.dist-info → qanswer_sdk-3.1245.0.dist-info}/RECORD +135 -112
  135. qanswer_sdk/api/llm_consumption_controller_api.py +0 -310
  136. qanswer_sdk/models/organization_filter.py +0 -87
  137. qanswer_sdk/models/page_organization.py +0 -123
  138. qanswer_sdk/models/page_team_with_count.py +0 -123
  139. qanswer_sdk/models/tag_qa_payload.py +0 -91
  140. {qanswer_sdk-3.1213.0.dist-info → qanswer_sdk-3.1245.0.dist-info}/WHEEL +0 -0
@@ -1,310 +0,0 @@
1
- # coding: utf-8
2
-
3
- """
4
- QAnswer: Api Documentation
5
-
6
- APIs provided by QAnswer
7
-
8
- The version of the OpenAPI document: 1.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 typing import List
20
- from qanswer_sdk.models.cost_summary import CostSummary
21
- from qanswer_sdk.models.llm_cost import LlmCost
22
-
23
- from qanswer_sdk.api_client import ApiClient, RequestSerialized
24
- from qanswer_sdk.api_response import ApiResponse
25
- from qanswer_sdk.rest import RESTResponseType
26
-
27
-
28
- class LlmConsumptionControllerApi:
29
- """NOTE: This class is auto generated by OpenAPI Generator
30
- Ref: https://openapi-generator.tech
31
-
32
- Do not edit the class manually.
33
- """
34
-
35
- def __init__(self, api_client=None) -> None:
36
- if api_client is None:
37
- api_client = ApiClient.get_default()
38
- self.api_client = api_client
39
-
40
-
41
- @validate_call
42
- def get_costs(
43
- self,
44
- llm_cost: LlmCost,
45
- _request_timeout: Union[
46
- None,
47
- Annotated[StrictFloat, Field(gt=0)],
48
- Tuple[
49
- Annotated[StrictFloat, Field(gt=0)],
50
- Annotated[StrictFloat, Field(gt=0)]
51
- ]
52
- ] = None,
53
- _request_auth: Optional[Dict[StrictStr, Any]] = None,
54
- _content_type: Optional[StrictStr] = None,
55
- _headers: Optional[Dict[StrictStr, Any]] = None,
56
- _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
57
- ) -> List[CostSummary]:
58
- """API to get analytics of LLM consumption costs
59
-
60
-
61
- :param llm_cost: (required)
62
- :type llm_cost: LlmCost
63
- :param _request_timeout: timeout setting for this request. If one
64
- number provided, it will be total request
65
- timeout. It can also be a pair (tuple) of
66
- (connection, read) timeouts.
67
- :type _request_timeout: int, tuple(int, int), optional
68
- :param _request_auth: set to override the auth_settings for an a single
69
- request; this effectively ignores the
70
- authentication in the spec for a single request.
71
- :type _request_auth: dict, optional
72
- :param _content_type: force content-type for the request.
73
- :type _content_type: str, Optional
74
- :param _headers: set to override the headers for a single
75
- request; this effectively ignores the headers
76
- in the spec for a single request.
77
- :type _headers: dict, optional
78
- :param _host_index: set to override the host_index for a single
79
- request; this effectively ignores the host_index
80
- in the spec for a single request.
81
- :type _host_index: int, optional
82
- :return: Returns the result object.
83
- """ # noqa: E501
84
-
85
- _param = self._get_costs_serialize(
86
- llm_cost=llm_cost,
87
- _request_auth=_request_auth,
88
- _content_type=_content_type,
89
- _headers=_headers,
90
- _host_index=_host_index
91
- )
92
-
93
- _response_types_map: Dict[str, Optional[str]] = {
94
- '200': "List[CostSummary]",
95
- }
96
- response_data = self.api_client.call_api(
97
- *_param,
98
- _request_timeout=_request_timeout
99
- )
100
- response_data.read()
101
- return self.api_client.response_deserialize(
102
- response_data=response_data,
103
- response_types_map=_response_types_map,
104
- ).data
105
-
106
-
107
- @validate_call
108
- def get_costs_with_http_info(
109
- self,
110
- llm_cost: LlmCost,
111
- _request_timeout: Union[
112
- None,
113
- Annotated[StrictFloat, Field(gt=0)],
114
- Tuple[
115
- Annotated[StrictFloat, Field(gt=0)],
116
- Annotated[StrictFloat, Field(gt=0)]
117
- ]
118
- ] = None,
119
- _request_auth: Optional[Dict[StrictStr, Any]] = None,
120
- _content_type: Optional[StrictStr] = None,
121
- _headers: Optional[Dict[StrictStr, Any]] = None,
122
- _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
123
- ) -> ApiResponse[List[CostSummary]]:
124
- """API to get analytics of LLM consumption costs
125
-
126
-
127
- :param llm_cost: (required)
128
- :type llm_cost: LlmCost
129
- :param _request_timeout: timeout setting for this request. If one
130
- number provided, it will be total request
131
- timeout. It can also be a pair (tuple) of
132
- (connection, read) timeouts.
133
- :type _request_timeout: int, tuple(int, int), optional
134
- :param _request_auth: set to override the auth_settings for an a single
135
- request; this effectively ignores the
136
- authentication in the spec for a single request.
137
- :type _request_auth: dict, optional
138
- :param _content_type: force content-type for the request.
139
- :type _content_type: str, Optional
140
- :param _headers: set to override the headers for a single
141
- request; this effectively ignores the headers
142
- in the spec for a single request.
143
- :type _headers: dict, optional
144
- :param _host_index: set to override the host_index for a single
145
- request; this effectively ignores the host_index
146
- in the spec for a single request.
147
- :type _host_index: int, optional
148
- :return: Returns the result object.
149
- """ # noqa: E501
150
-
151
- _param = self._get_costs_serialize(
152
- llm_cost=llm_cost,
153
- _request_auth=_request_auth,
154
- _content_type=_content_type,
155
- _headers=_headers,
156
- _host_index=_host_index
157
- )
158
-
159
- _response_types_map: Dict[str, Optional[str]] = {
160
- '200': "List[CostSummary]",
161
- }
162
- response_data = self.api_client.call_api(
163
- *_param,
164
- _request_timeout=_request_timeout
165
- )
166
- response_data.read()
167
- return self.api_client.response_deserialize(
168
- response_data=response_data,
169
- response_types_map=_response_types_map,
170
- )
171
-
172
-
173
- @validate_call
174
- def get_costs_without_preload_content(
175
- self,
176
- llm_cost: LlmCost,
177
- _request_timeout: Union[
178
- None,
179
- Annotated[StrictFloat, Field(gt=0)],
180
- Tuple[
181
- Annotated[StrictFloat, Field(gt=0)],
182
- Annotated[StrictFloat, Field(gt=0)]
183
- ]
184
- ] = None,
185
- _request_auth: Optional[Dict[StrictStr, Any]] = None,
186
- _content_type: Optional[StrictStr] = None,
187
- _headers: Optional[Dict[StrictStr, Any]] = None,
188
- _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
189
- ) -> RESTResponseType:
190
- """API to get analytics of LLM consumption costs
191
-
192
-
193
- :param llm_cost: (required)
194
- :type llm_cost: LlmCost
195
- :param _request_timeout: timeout setting for this request. If one
196
- number provided, it will be total request
197
- timeout. It can also be a pair (tuple) of
198
- (connection, read) timeouts.
199
- :type _request_timeout: int, tuple(int, int), optional
200
- :param _request_auth: set to override the auth_settings for an a single
201
- request; this effectively ignores the
202
- authentication in the spec for a single request.
203
- :type _request_auth: dict, optional
204
- :param _content_type: force content-type for the request.
205
- :type _content_type: str, Optional
206
- :param _headers: set to override the headers for a single
207
- request; this effectively ignores the headers
208
- in the spec for a single request.
209
- :type _headers: dict, optional
210
- :param _host_index: set to override the host_index for a single
211
- request; this effectively ignores the host_index
212
- in the spec for a single request.
213
- :type _host_index: int, optional
214
- :return: Returns the result object.
215
- """ # noqa: E501
216
-
217
- _param = self._get_costs_serialize(
218
- llm_cost=llm_cost,
219
- _request_auth=_request_auth,
220
- _content_type=_content_type,
221
- _headers=_headers,
222
- _host_index=_host_index
223
- )
224
-
225
- _response_types_map: Dict[str, Optional[str]] = {
226
- '200': "List[CostSummary]",
227
- }
228
- response_data = self.api_client.call_api(
229
- *_param,
230
- _request_timeout=_request_timeout
231
- )
232
- return response_data.response
233
-
234
-
235
- def _get_costs_serialize(
236
- self,
237
- llm_cost,
238
- _request_auth,
239
- _content_type,
240
- _headers,
241
- _host_index,
242
- ) -> RequestSerialized:
243
-
244
- _host = None
245
-
246
- _collection_formats: Dict[str, str] = {
247
- }
248
-
249
- _path_params: Dict[str, str] = {}
250
- _query_params: List[Tuple[str, str]] = []
251
- _header_params: Dict[str, Optional[str]] = _headers or {}
252
- _form_params: List[Tuple[str, str]] = []
253
- _files: Dict[
254
- str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
255
- ] = {}
256
- _body_params: Optional[bytes] = None
257
-
258
- # process the path parameters
259
- # process the query parameters
260
- # process the header parameters
261
- # process the form parameters
262
- # process the body parameter
263
- if llm_cost is not None:
264
- _body_params = llm_cost
265
-
266
-
267
- # set the HTTP header `Accept`
268
- if 'Accept' not in _header_params:
269
- _header_params['Accept'] = self.api_client.select_header_accept(
270
- [
271
- '*/*'
272
- ]
273
- )
274
-
275
- # set the HTTP header `Content-Type`
276
- if _content_type:
277
- _header_params['Content-Type'] = _content_type
278
- else:
279
- _default_content_type = (
280
- self.api_client.select_header_content_type(
281
- [
282
- 'application/json'
283
- ]
284
- )
285
- )
286
- if _default_content_type is not None:
287
- _header_params['Content-Type'] = _default_content_type
288
-
289
- # authentication setting
290
- _auth_settings: List[str] = [
291
- 'QAnswer-Api-Key',
292
- 'Bearer'
293
- ]
294
-
295
- return self.api_client.param_serialize(
296
- method='POST',
297
- resource_path='/api/consumption/costs',
298
- path_params=_path_params,
299
- query_params=_query_params,
300
- header_params=_header_params,
301
- body=_body_params,
302
- post_params=_form_params,
303
- files=_files,
304
- auth_settings=_auth_settings,
305
- collection_formats=_collection_formats,
306
- _host=_host,
307
- _request_auth=_request_auth
308
- )
309
-
310
-
@@ -1,87 +0,0 @@
1
- # coding: utf-8
2
-
3
- """
4
- QAnswer: Api Documentation
5
-
6
- APIs provided by QAnswer
7
-
8
- The version of the OpenAPI document: 1.0
9
- Generated by OpenAPI Generator (https://openapi-generator.tech)
10
-
11
- Do not edit the class manually.
12
- """ # noqa: E501
13
-
14
-
15
- from __future__ import annotations
16
- import pprint
17
- import re # noqa: F401
18
- import json
19
-
20
- from pydantic import BaseModel, ConfigDict, StrictStr
21
- from typing import Any, ClassVar, Dict, List, Optional
22
- from typing import Optional, Set
23
- from typing_extensions import Self
24
-
25
- class OrganizationFilter(BaseModel):
26
- """
27
- OrganizationFilter
28
- """ # noqa: E501
29
- search: Optional[StrictStr] = None
30
- __properties: ClassVar[List[str]] = ["search"]
31
-
32
- model_config = ConfigDict(
33
- populate_by_name=True,
34
- validate_assignment=True,
35
- protected_namespaces=(),
36
- )
37
-
38
-
39
- def to_str(self) -> str:
40
- """Returns the string representation of the model using alias"""
41
- return pprint.pformat(self.model_dump(by_alias=True))
42
-
43
- def to_json(self) -> str:
44
- """Returns the JSON representation of the model using alias"""
45
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
46
- return json.dumps(self.to_dict())
47
-
48
- @classmethod
49
- def from_json(cls, json_str: str) -> Optional[Self]:
50
- """Create an instance of OrganizationFilter from a JSON string"""
51
- return cls.from_dict(json.loads(json_str))
52
-
53
- def to_dict(self) -> Dict[str, Any]:
54
- """Return the dictionary representation of the model using alias.
55
-
56
- This has the following differences from calling pydantic's
57
- `self.model_dump(by_alias=True)`:
58
-
59
- * `None` is only added to the output dict for nullable fields that
60
- were set at model initialization. Other fields with value `None`
61
- are ignored.
62
- """
63
- excluded_fields: Set[str] = set([
64
- ])
65
-
66
- _dict = self.model_dump(
67
- by_alias=True,
68
- exclude=excluded_fields,
69
- exclude_none=True,
70
- )
71
- return _dict
72
-
73
- @classmethod
74
- def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
75
- """Create an instance of OrganizationFilter from a dict"""
76
- if obj is None:
77
- return None
78
-
79
- if not isinstance(obj, dict):
80
- return cls.model_validate(obj)
81
-
82
- _obj = cls.model_validate({
83
- "search": obj.get("search")
84
- })
85
- return _obj
86
-
87
-
@@ -1,123 +0,0 @@
1
- # coding: utf-8
2
-
3
- """
4
- QAnswer: Api Documentation
5
-
6
- APIs provided by QAnswer
7
-
8
- The version of the OpenAPI document: 1.0
9
- Generated by OpenAPI Generator (https://openapi-generator.tech)
10
-
11
- Do not edit the class manually.
12
- """ # noqa: E501
13
-
14
-
15
- from __future__ import annotations
16
- import pprint
17
- import re # noqa: F401
18
- import json
19
-
20
- from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt
21
- from typing import Any, ClassVar, Dict, List, Optional
22
- from qanswer_sdk.models.organization import Organization
23
- from qanswer_sdk.models.pageable_object import PageableObject
24
- from qanswer_sdk.models.sort_object import SortObject
25
- from typing import Optional, Set
26
- from typing_extensions import Self
27
-
28
- class PageOrganization(BaseModel):
29
- """
30
- PageOrganization
31
- """ # noqa: E501
32
- total_pages: Optional[StrictInt] = Field(default=None, alias="totalPages")
33
- total_elements: Optional[StrictInt] = Field(default=None, alias="totalElements")
34
- pageable: Optional[PageableObject] = None
35
- sort: Optional[SortObject] = None
36
- number_of_elements: Optional[StrictInt] = Field(default=None, alias="numberOfElements")
37
- first: Optional[StrictBool] = None
38
- last: Optional[StrictBool] = None
39
- size: Optional[StrictInt] = None
40
- content: Optional[List[Organization]] = None
41
- number: Optional[StrictInt] = None
42
- empty: Optional[StrictBool] = None
43
- __properties: ClassVar[List[str]] = ["totalPages", "totalElements", "pageable", "sort", "numberOfElements", "first", "last", "size", "content", "number", "empty"]
44
-
45
- model_config = ConfigDict(
46
- populate_by_name=True,
47
- validate_assignment=True,
48
- protected_namespaces=(),
49
- )
50
-
51
-
52
- def to_str(self) -> str:
53
- """Returns the string representation of the model using alias"""
54
- return pprint.pformat(self.model_dump(by_alias=True))
55
-
56
- def to_json(self) -> str:
57
- """Returns the JSON representation of the model using alias"""
58
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
59
- return json.dumps(self.to_dict())
60
-
61
- @classmethod
62
- def from_json(cls, json_str: str) -> Optional[Self]:
63
- """Create an instance of PageOrganization from a JSON string"""
64
- return cls.from_dict(json.loads(json_str))
65
-
66
- def to_dict(self) -> Dict[str, Any]:
67
- """Return the dictionary representation of the model using alias.
68
-
69
- This has the following differences from calling pydantic's
70
- `self.model_dump(by_alias=True)`:
71
-
72
- * `None` is only added to the output dict for nullable fields that
73
- were set at model initialization. Other fields with value `None`
74
- are ignored.
75
- """
76
- excluded_fields: Set[str] = set([
77
- ])
78
-
79
- _dict = self.model_dump(
80
- by_alias=True,
81
- exclude=excluded_fields,
82
- exclude_none=True,
83
- )
84
- # override the default output from pydantic by calling `to_dict()` of pageable
85
- if self.pageable:
86
- _dict['pageable'] = self.pageable.to_dict()
87
- # override the default output from pydantic by calling `to_dict()` of sort
88
- if self.sort:
89
- _dict['sort'] = self.sort.to_dict()
90
- # override the default output from pydantic by calling `to_dict()` of each item in content (list)
91
- _items = []
92
- if self.content:
93
- for _item_content in self.content:
94
- if _item_content:
95
- _items.append(_item_content.to_dict())
96
- _dict['content'] = _items
97
- return _dict
98
-
99
- @classmethod
100
- def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
101
- """Create an instance of PageOrganization from a dict"""
102
- if obj is None:
103
- return None
104
-
105
- if not isinstance(obj, dict):
106
- return cls.model_validate(obj)
107
-
108
- _obj = cls.model_validate({
109
- "totalPages": obj.get("totalPages"),
110
- "totalElements": obj.get("totalElements"),
111
- "pageable": PageableObject.from_dict(obj["pageable"]) if obj.get("pageable") is not None else None,
112
- "sort": SortObject.from_dict(obj["sort"]) if obj.get("sort") is not None else None,
113
- "numberOfElements": obj.get("numberOfElements"),
114
- "first": obj.get("first"),
115
- "last": obj.get("last"),
116
- "size": obj.get("size"),
117
- "content": [Organization.from_dict(_item) for _item in obj["content"]] if obj.get("content") is not None else None,
118
- "number": obj.get("number"),
119
- "empty": obj.get("empty")
120
- })
121
- return _obj
122
-
123
-
@@ -1,123 +0,0 @@
1
- # coding: utf-8
2
-
3
- """
4
- QAnswer: Api Documentation
5
-
6
- APIs provided by QAnswer
7
-
8
- The version of the OpenAPI document: 1.0
9
- Generated by OpenAPI Generator (https://openapi-generator.tech)
10
-
11
- Do not edit the class manually.
12
- """ # noqa: E501
13
-
14
-
15
- from __future__ import annotations
16
- import pprint
17
- import re # noqa: F401
18
- import json
19
-
20
- from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt
21
- from typing import Any, ClassVar, Dict, List, Optional
22
- from qanswer_sdk.models.pageable_object import PageableObject
23
- from qanswer_sdk.models.sort_object import SortObject
24
- from qanswer_sdk.models.team_with_count import TeamWithCount
25
- from typing import Optional, Set
26
- from typing_extensions import Self
27
-
28
- class PageTeamWithCount(BaseModel):
29
- """
30
- PageTeamWithCount
31
- """ # noqa: E501
32
- total_pages: Optional[StrictInt] = Field(default=None, alias="totalPages")
33
- total_elements: Optional[StrictInt] = Field(default=None, alias="totalElements")
34
- pageable: Optional[PageableObject] = None
35
- sort: Optional[SortObject] = None
36
- number_of_elements: Optional[StrictInt] = Field(default=None, alias="numberOfElements")
37
- first: Optional[StrictBool] = None
38
- last: Optional[StrictBool] = None
39
- size: Optional[StrictInt] = None
40
- content: Optional[List[TeamWithCount]] = None
41
- number: Optional[StrictInt] = None
42
- empty: Optional[StrictBool] = None
43
- __properties: ClassVar[List[str]] = ["totalPages", "totalElements", "pageable", "sort", "numberOfElements", "first", "last", "size", "content", "number", "empty"]
44
-
45
- model_config = ConfigDict(
46
- populate_by_name=True,
47
- validate_assignment=True,
48
- protected_namespaces=(),
49
- )
50
-
51
-
52
- def to_str(self) -> str:
53
- """Returns the string representation of the model using alias"""
54
- return pprint.pformat(self.model_dump(by_alias=True))
55
-
56
- def to_json(self) -> str:
57
- """Returns the JSON representation of the model using alias"""
58
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
59
- return json.dumps(self.to_dict())
60
-
61
- @classmethod
62
- def from_json(cls, json_str: str) -> Optional[Self]:
63
- """Create an instance of PageTeamWithCount from a JSON string"""
64
- return cls.from_dict(json.loads(json_str))
65
-
66
- def to_dict(self) -> Dict[str, Any]:
67
- """Return the dictionary representation of the model using alias.
68
-
69
- This has the following differences from calling pydantic's
70
- `self.model_dump(by_alias=True)`:
71
-
72
- * `None` is only added to the output dict for nullable fields that
73
- were set at model initialization. Other fields with value `None`
74
- are ignored.
75
- """
76
- excluded_fields: Set[str] = set([
77
- ])
78
-
79
- _dict = self.model_dump(
80
- by_alias=True,
81
- exclude=excluded_fields,
82
- exclude_none=True,
83
- )
84
- # override the default output from pydantic by calling `to_dict()` of pageable
85
- if self.pageable:
86
- _dict['pageable'] = self.pageable.to_dict()
87
- # override the default output from pydantic by calling `to_dict()` of sort
88
- if self.sort:
89
- _dict['sort'] = self.sort.to_dict()
90
- # override the default output from pydantic by calling `to_dict()` of each item in content (list)
91
- _items = []
92
- if self.content:
93
- for _item_content in self.content:
94
- if _item_content:
95
- _items.append(_item_content.to_dict())
96
- _dict['content'] = _items
97
- return _dict
98
-
99
- @classmethod
100
- def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
101
- """Create an instance of PageTeamWithCount from a dict"""
102
- if obj is None:
103
- return None
104
-
105
- if not isinstance(obj, dict):
106
- return cls.model_validate(obj)
107
-
108
- _obj = cls.model_validate({
109
- "totalPages": obj.get("totalPages"),
110
- "totalElements": obj.get("totalElements"),
111
- "pageable": PageableObject.from_dict(obj["pageable"]) if obj.get("pageable") is not None else None,
112
- "sort": SortObject.from_dict(obj["sort"]) if obj.get("sort") is not None else None,
113
- "numberOfElements": obj.get("numberOfElements"),
114
- "first": obj.get("first"),
115
- "last": obj.get("last"),
116
- "size": obj.get("size"),
117
- "content": [TeamWithCount.from_dict(_item) for _item in obj["content"]] if obj.get("content") is not None else None,
118
- "number": obj.get("number"),
119
- "empty": obj.get("empty")
120
- })
121
- return _obj
122
-
123
-