regula-facesdk-webclient 7.2.388.dev0__py3-none-any.whl → 8.1.433.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 (227) hide show
  1. regula/facesdk/webclient/__init__.py +5 -5
  2. regula/facesdk/webclient/ext/api/group_api.py +2 -27
  3. regula/facesdk/webclient/ext/api/match_api.py +3 -29
  4. regula/facesdk/webclient/ext/api/person_api.py +8 -34
  5. regula/facesdk/webclient/ext/api/sdk.py +5 -3
  6. regula/facesdk/webclient/ext/api/search_api.py +2 -6
  7. regula/facesdk/webclient/ext/models/detect_request.py +6 -5
  8. regula/facesdk/webclient/ext/models/match_image.py +3 -3
  9. regula/facesdk/webclient/ext/models/match_request.py +7 -5
  10. regula/facesdk/webclient/gen/__init__.py +349 -18
  11. regula/facesdk/webclient/gen/api/__init__.py +30 -3
  12. regula/facesdk/webclient/gen/api/group_api.py +1854 -799
  13. regula/facesdk/webclient/gen/api/healthcheck_api.py +475 -215
  14. regula/facesdk/webclient/gen/api/liveness20_api.py +565 -0
  15. regula/facesdk/webclient/gen/api/match_api.py +801 -355
  16. regula/facesdk/webclient/gen/api/person_api.py +2399 -1039
  17. regula/facesdk/webclient/gen/api/search_api.py +286 -130
  18. regula/facesdk/webclient/gen/api_client.py +577 -476
  19. regula/facesdk/webclient/gen/api_response.py +21 -0
  20. regula/facesdk/webclient/gen/configuration.py +231 -105
  21. regula/facesdk/webclient/gen/exceptions.py +82 -33
  22. regula/facesdk/webclient/gen/models/__init__.py +202 -95
  23. regula/facesdk/webclient/gen/models/add_image_to_person_request.py +96 -0
  24. regula/facesdk/webclient/gen/models/add_image_to_person_request_data.py +92 -0
  25. regula/facesdk/webclient/gen/models/add_image_to_person_request_image.py +92 -0
  26. regula/facesdk/webclient/gen/models/add_image_to_person_response.py +92 -0
  27. regula/facesdk/webclient/gen/models/attribute_config.py +83 -0
  28. regula/facesdk/webclient/gen/models/attributes_data.py +82 -0
  29. regula/facesdk/webclient/gen/models/crop.py +88 -0
  30. regula/facesdk/webclient/gen/models/detail_item.py +136 -0
  31. regula/facesdk/webclient/gen/models/detect_attributes_details.py +84 -0
  32. regula/facesdk/webclient/gen/models/detect_details_meta.py +86 -0
  33. regula/facesdk/webclient/gen/models/detect_meta_data.py +84 -0
  34. regula/facesdk/webclient/gen/models/detect_request.py +94 -0
  35. regula/facesdk/webclient/gen/models/detect_request_data.py +90 -0
  36. regula/facesdk/webclient/gen/models/detect_response.py +89 -0
  37. regula/facesdk/webclient/gen/models/detect_response_results.py +86 -0
  38. regula/facesdk/webclient/gen/models/detect_result.py +98 -0
  39. regula/facesdk/webclient/gen/models/detection.py +98 -0
  40. regula/facesdk/webclient/gen/models/detection_attributes.py +92 -0
  41. regula/facesdk/webclient/gen/models/detection_attributes_details_inner.py +132 -0
  42. regula/facesdk/webclient/gen/models/detection_face.py +90 -0
  43. regula/facesdk/webclient/gen/models/detection_quality.py +107 -0
  44. regula/facesdk/webclient/gen/models/device_info.py +111 -0
  45. regula/facesdk/webclient/gen/models/face_attribute.py +40 -0
  46. regula/facesdk/webclient/gen/models/face_image_quality_align_type.py +32 -0
  47. regula/facesdk/webclient/gen/models/face_image_quality_groups.py +35 -0
  48. regula/facesdk/webclient/gen/models/face_image_quality_groups_strings.py +35 -0
  49. regula/facesdk/webclient/gen/models/face_image_quality_status.py +30 -0
  50. regula/facesdk/webclient/gen/models/face_quality_config_name.py +75 -0
  51. regula/facesdk/webclient/gen/models/face_quality_scenarios.py +37 -0
  52. regula/facesdk/webclient/gen/models/face_sdk_result.py +83 -0
  53. regula/facesdk/webclient/gen/models/face_sdk_result_code.py +68 -0
  54. regula/facesdk/webclient/gen/models/faces_response.py +100 -0
  55. regula/facesdk/webclient/gen/models/faces_response_data.py +90 -0
  56. regula/facesdk/webclient/gen/models/filter_op.py +29 -0
  57. regula/facesdk/webclient/gen/models/filter_search_request.py +87 -0
  58. regula/facesdk/webclient/gen/models/group.py +89 -0
  59. regula/facesdk/webclient/gen/models/group_data.py +85 -0
  60. regula/facesdk/webclient/gen/models/group_page.py +94 -0
  61. regula/facesdk/webclient/gen/models/group_page_items.py +90 -0
  62. regula/facesdk/webclient/gen/models/group_response.py +84 -0
  63. regula/facesdk/webclient/gen/models/group_to_create.py +86 -0
  64. regula/facesdk/webclient/gen/models/image.py +96 -0
  65. regula/facesdk/webclient/gen/models/image_fields.py +100 -0
  66. regula/facesdk/webclient/gen/models/image_fields_image.py +92 -0
  67. regula/facesdk/webclient/gen/models/image_page.py +94 -0
  68. regula/facesdk/webclient/gen/models/image_page_items.py +90 -0
  69. regula/facesdk/webclient/gen/models/image_source.py +34 -0
  70. regula/facesdk/webclient/gen/models/liveness_type.py +29 -0
  71. regula/facesdk/webclient/gen/models/match_and_search_request.py +103 -0
  72. regula/facesdk/webclient/gen/models/match_and_search_request_images_item.py +87 -0
  73. regula/facesdk/webclient/gen/models/match_and_search_response.py +107 -0
  74. regula/facesdk/webclient/gen/models/match_and_search_response_data.py +104 -0
  75. regula/facesdk/webclient/gen/models/match_and_search_response_data_detections_item.py +95 -0
  76. regula/facesdk/webclient/gen/models/match_image.py +89 -0
  77. regula/facesdk/webclient/gen/models/match_image_detection.py +95 -0
  78. regula/facesdk/webclient/gen/models/match_image_result.py +97 -0
  79. regula/facesdk/webclient/gen/models/match_request.py +102 -0
  80. regula/facesdk/webclient/gen/models/match_request_data.py +98 -0
  81. regula/facesdk/webclient/gen/models/match_response.py +105 -0
  82. regula/facesdk/webclient/gen/models/match_response_data.py +102 -0
  83. regula/facesdk/webclient/gen/models/operation_log.py +88 -0
  84. regula/facesdk/webclient/gen/models/output_image_params.py +89 -0
  85. regula/facesdk/webclient/gen/models/page.py +84 -0
  86. regula/facesdk/webclient/gen/models/person.py +97 -0
  87. regula/facesdk/webclient/gen/models/person_data.py +87 -0
  88. regula/facesdk/webclient/gen/models/person_fields.py +91 -0
  89. regula/facesdk/webclient/gen/models/person_items.py +90 -0
  90. regula/facesdk/webclient/gen/models/person_to_update_fields.py +89 -0
  91. regula/facesdk/webclient/gen/models/person_with_images.py +107 -0
  92. regula/facesdk/webclient/gen/models/person_with_images_data.py +90 -0
  93. regula/facesdk/webclient/gen/models/persons_page.py +94 -0
  94. regula/facesdk/webclient/gen/models/process_param.py +103 -0
  95. regula/facesdk/webclient/gen/models/process_param_attributes.py +90 -0
  96. regula/facesdk/webclient/gen/models/quality_config.py +86 -0
  97. regula/facesdk/webclient/gen/models/quality_detail.py +94 -0
  98. regula/facesdk/webclient/gen/models/quality_details_groups.py +90 -0
  99. regula/facesdk/webclient/gen/models/quality_request.py +93 -0
  100. regula/facesdk/webclient/gen/models/recognize_image.py +100 -0
  101. regula/facesdk/webclient/gen/models/recognize_image_data.py +84 -0
  102. regula/facesdk/webclient/gen/models/resize_options.py +86 -0
  103. regula/facesdk/webclient/gen/models/search_bad_params.py +86 -0
  104. regula/facesdk/webclient/gen/models/search_detection.py +102 -0
  105. regula/facesdk/webclient/gen/models/search_parameters.py +95 -0
  106. regula/facesdk/webclient/gen/models/search_parameters_create_person.py +86 -0
  107. regula/facesdk/webclient/gen/models/search_person.py +113 -0
  108. regula/facesdk/webclient/gen/models/search_person_data.py +96 -0
  109. regula/facesdk/webclient/gen/models/search_request.py +119 -0
  110. regula/facesdk/webclient/gen/models/search_result.py +92 -0
  111. regula/facesdk/webclient/gen/models/transaction_info.py +99 -0
  112. regula/facesdk/webclient/gen/models/transaction_labels.py +84 -0
  113. regula/facesdk/webclient/gen/models/update_group.py +85 -0
  114. regula/facesdk/webclient/gen/py.typed +0 -0
  115. regula/facesdk/webclient/gen/rest.py +136 -232
  116. {regula_facesdk_webclient-7.2.388.dev0.dist-info → regula_facesdk_webclient-8.1.433.dev0.dist-info}/METADATA +7 -4
  117. regula_facesdk_webclient-8.1.433.dev0.dist-info/RECORD +125 -0
  118. {regula_facesdk_webclient-7.2.388.dev0.dist-info → regula_facesdk_webclient-8.1.433.dev0.dist-info}/WHEEL +1 -1
  119. regula/facesdk/webclient/gen/api/diagnostics_api.py +0 -162
  120. regula/facesdk/webclient/gen/api/liveness_2_0_api.py +0 -306
  121. regula/facesdk/webclient/gen/api/liveness_api.py +0 -424
  122. regula/facesdk/webclient/gen/apis/__init__.py +0 -22
  123. regula/facesdk/webclient/gen/model/__init__.py +0 -5
  124. regula/facesdk/webclient/gen/model/add_image_to_person_request.py +0 -261
  125. regula/facesdk/webclient/gen/model/add_image_to_person_request_image.py +0 -204
  126. regula/facesdk/webclient/gen/model/add_image_to_person_response.py +0 -262
  127. regula/facesdk/webclient/gen/model/attribute_config.py +0 -120
  128. regula/facesdk/webclient/gen/model/attribute_config_list.py +0 -92
  129. regula/facesdk/webclient/gen/model/crop.py +0 -180
  130. regula/facesdk/webclient/gen/model/detect_attributes_details.py +0 -150
  131. regula/facesdk/webclient/gen/model/detect_details_meta.py +0 -178
  132. regula/facesdk/webclient/gen/model/detect_request.py +0 -232
  133. regula/facesdk/webclient/gen/model/detect_request_attributes.py +0 -120
  134. regula/facesdk/webclient/gen/model/detect_response.py +0 -147
  135. regula/facesdk/webclient/gen/model/detect_response_all_of.py +0 -120
  136. regula/facesdk/webclient/gen/model/detect_result.py +0 -235
  137. regula/facesdk/webclient/gen/model/detection.py +0 -230
  138. regula/facesdk/webclient/gen/model/detection_attributes.py +0 -150
  139. regula/facesdk/webclient/gen/model/detection_face.py +0 -232
  140. regula/facesdk/webclient/gen/model/detection_quality.py +0 -234
  141. regula/facesdk/webclient/gen/model/device_info.py +0 -231
  142. regula/facesdk/webclient/gen/model/face_align_type_quality.py +0 -109
  143. regula/facesdk/webclient/gen/model/face_attribute.py +0 -133
  144. regula/facesdk/webclient/gen/model/face_image_quality_align_type.py +0 -109
  145. regula/facesdk/webclient/gen/model/face_image_quality_groups.py +0 -118
  146. regula/facesdk/webclient/gen/model/face_image_quality_groups_strings.py +0 -118
  147. regula/facesdk/webclient/gen/model/face_image_quality_status.py +0 -103
  148. regula/facesdk/webclient/gen/model/face_quality_config_name.py +0 -238
  149. regula/facesdk/webclient/gen/model/face_quality_scenarios.py +0 -124
  150. regula/facesdk/webclient/gen/model/face_quality_status.py +0 -103
  151. regula/facesdk/webclient/gen/model/face_rectangular.py +0 -92
  152. regula/facesdk/webclient/gen/model/face_sdk_result.py +0 -121
  153. regula/facesdk/webclient/gen/model/face_sdk_result_code.py +0 -217
  154. regula/facesdk/webclient/gen/model/faces_response.py +0 -258
  155. regula/facesdk/webclient/gen/model/faces_response_all_of.py +0 -148
  156. regula/facesdk/webclient/gen/model/filter_op.py +0 -100
  157. regula/facesdk/webclient/gen/model/filter_search_request.py +0 -176
  158. regula/facesdk/webclient/gen/model/group.py +0 -206
  159. regula/facesdk/webclient/gen/model/group_all_of.py +0 -150
  160. regula/facesdk/webclient/gen/model/group_page.py +0 -178
  161. regula/facesdk/webclient/gen/model/group_page_all_of.py +0 -122
  162. regula/facesdk/webclient/gen/model/group_response.py +0 -150
  163. regula/facesdk/webclient/gen/model/group_to_create.py +0 -180
  164. regula/facesdk/webclient/gen/model/image.py +0 -318
  165. regula/facesdk/webclient/gen/model/image_fields.py +0 -258
  166. regula/facesdk/webclient/gen/model/image_fields_image.py +0 -204
  167. regula/facesdk/webclient/gen/model/image_page.py +0 -176
  168. regula/facesdk/webclient/gen/model/image_page_all_of.py +0 -120
  169. regula/facesdk/webclient/gen/model/image_source.py +0 -115
  170. regula/facesdk/webclient/gen/model/liveness_transaction.py +0 -334
  171. regula/facesdk/webclient/gen/model/liveness_type.py +0 -100
  172. regula/facesdk/webclient/gen/model/match_and_search_request.py +0 -290
  173. regula/facesdk/webclient/gen/model/match_and_search_request_all_of.py +0 -234
  174. regula/facesdk/webclient/gen/model/match_and_search_request_all_of_images.py +0 -148
  175. regula/facesdk/webclient/gen/model/match_and_search_request_images.py +0 -176
  176. regula/facesdk/webclient/gen/model/match_and_search_response.py +0 -233
  177. regula/facesdk/webclient/gen/model/match_and_search_response_all_of.py +0 -206
  178. regula/facesdk/webclient/gen/model/match_and_search_response_all_of_detections.py +0 -176
  179. regula/facesdk/webclient/gen/model/match_image.py +0 -205
  180. regula/facesdk/webclient/gen/model/match_image_detection.py +0 -178
  181. regula/facesdk/webclient/gen/model/match_image_result.py +0 -316
  182. regula/facesdk/webclient/gen/model/match_request.py +0 -233
  183. regula/facesdk/webclient/gen/model/match_request_output_image_params.py +0 -148
  184. regula/facesdk/webclient/gen/model/match_request_output_image_params_crop.py +0 -212
  185. regula/facesdk/webclient/gen/model/match_response.py +0 -205
  186. regula/facesdk/webclient/gen/model/match_response_all_of.py +0 -178
  187. regula/facesdk/webclient/gen/model/operation_log.py +0 -206
  188. regula/facesdk/webclient/gen/model/output_image_params.py +0 -146
  189. regula/facesdk/webclient/gen/model/page.py +0 -150
  190. regula/facesdk/webclient/gen/model/person.py +0 -319
  191. regula/facesdk/webclient/gen/model/person_all_of.py +0 -206
  192. regula/facesdk/webclient/gen/model/person_created_response.py +0 -178
  193. regula/facesdk/webclient/gen/model/person_fields.py +0 -235
  194. regula/facesdk/webclient/gen/model/person_to_update_fields.py +0 -206
  195. regula/facesdk/webclient/gen/model/person_with_images.py +0 -347
  196. regula/facesdk/webclient/gen/model/person_with_images_all_of.py +0 -122
  197. regula/facesdk/webclient/gen/model/persons_page.py +0 -176
  198. regula/facesdk/webclient/gen/model/persons_page_all_of.py +0 -120
  199. regula/facesdk/webclient/gen/model/persons_request.py +0 -291
  200. regula/facesdk/webclient/gen/model/persons_request_all_of.py +0 -150
  201. regula/facesdk/webclient/gen/model/process_param.py +0 -226
  202. regula/facesdk/webclient/gen/model/process_param_attributes.py +0 -120
  203. regula/facesdk/webclient/gen/model/quality_config.py +0 -154
  204. regula/facesdk/webclient/gen/model/quality_config_list.py +0 -92
  205. regula/facesdk/webclient/gen/model/quality_detail.py +0 -234
  206. regula/facesdk/webclient/gen/model/quality_details_groups.py +0 -202
  207. regula/facesdk/webclient/gen/model/quality_request.py +0 -146
  208. regula/facesdk/webclient/gen/model/recognize_image.py +0 -374
  209. regula/facesdk/webclient/gen/model/recognize_image_all_of.py +0 -150
  210. regula/facesdk/webclient/gen/model/resize_options.py +0 -178
  211. regula/facesdk/webclient/gen/model/rgb.py +0 -92
  212. regula/facesdk/webclient/gen/model/search_bad_params.py +0 -172
  213. regula/facesdk/webclient/gen/model/search_detection.py +0 -398
  214. regula/facesdk/webclient/gen/model/search_parameters.py +0 -174
  215. regula/facesdk/webclient/gen/model/search_parameters_create_person.py +0 -177
  216. regula/facesdk/webclient/gen/model/search_person.py +0 -373
  217. regula/facesdk/webclient/gen/model/search_person_all_of.py +0 -148
  218. regula/facesdk/webclient/gen/model/search_request.py +0 -394
  219. regula/facesdk/webclient/gen/model/search_request_all_of.py +0 -150
  220. regula/facesdk/webclient/gen/model/search_result.py +0 -150
  221. regula/facesdk/webclient/gen/model/search_result_all_of.py +0 -122
  222. regula/facesdk/webclient/gen/model/transaction_config.py +0 -92
  223. regula/facesdk/webclient/gen/model/transaction_info.py +0 -344
  224. regula/facesdk/webclient/gen/model/update_group.py +0 -150
  225. regula/facesdk/webclient/gen/model_utils.py +0 -2037
  226. regula_facesdk_webclient-7.2.388.dev0.dist-info/RECORD +0 -138
  227. {regula_facesdk_webclient-7.2.388.dev0.dist-info → regula_facesdk_webclient-8.1.433.dev0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,84 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Generated by: https://openapi-generator.tech
5
+ """
6
+
7
+ from __future__ import annotations
8
+ import pprint
9
+ import re # noqa: F401
10
+ import json
11
+
12
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt
13
+ from typing import Any, ClassVar, Dict, List, Optional
14
+ from typing import Optional, Set
15
+ from typing_extensions import Self
16
+ from pydantic import SkipValidation, Field
17
+
18
+ class Page(BaseModel):
19
+ """
20
+ Information about current page number and total pages count
21
+ """ # noqa: E501
22
+ page: SkipValidation[Optional[int]] = Field(alias="page", default=None, description="Current page number.")
23
+ total_pages: SkipValidation[Optional[int]] = Field(alias="totalPages", default=None, description="Total number of pages.")
24
+ __properties: ClassVar[List[str]] = ["page", "totalPages"]
25
+
26
+ model_config = ConfigDict(
27
+ populate_by_name=True,
28
+ validate_assignment=True,
29
+ protected_namespaces=(),
30
+ arbitrary_types_allowed=True,
31
+ use_enum_values=True
32
+ )
33
+
34
+
35
+ def to_str(self) -> str:
36
+ """Returns the string representation of the model using alias"""
37
+ return pprint.pformat(self.model_dump(by_alias=True))
38
+
39
+ def to_json(self) -> str:
40
+ """Returns the JSON representation of the model using alias"""
41
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
42
+ return json.dumps(self.to_dict())
43
+
44
+ @classmethod
45
+ def from_json(cls, json_str: str) -> Optional[Self]:
46
+ """Create an instance of Page from a JSON string"""
47
+ return cls.from_dict(json.loads(json_str))
48
+
49
+ def to_dict(self) -> Dict[str, Any]:
50
+ """Return the dictionary representation of the model using alias.
51
+
52
+ This has the following differences from calling pydantic's
53
+ `self.model_dump(by_alias=True)`:
54
+
55
+ * `None` is only added to the output dict for nullable fields that
56
+ were set at model initialization. Other fields with value `None`
57
+ are ignored.
58
+ """
59
+ excluded_fields: Set[str] = set([
60
+ ])
61
+
62
+ _dict = self.model_dump(
63
+ by_alias=True,
64
+ exclude=excluded_fields,
65
+ exclude_none=True,
66
+ )
67
+ return _dict
68
+
69
+ @classmethod
70
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
71
+ """Create an instance of Page from a dict"""
72
+ if obj is None:
73
+ return None
74
+
75
+ if not isinstance(obj, dict):
76
+ return cls.model_validate(obj)
77
+
78
+ _obj = cls.model_validate({
79
+ "page": obj.get("page"),
80
+ "totalPages": obj.get("totalPages")
81
+ })
82
+ return _obj
83
+
84
+
@@ -0,0 +1,97 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Generated by: https://openapi-generator.tech
5
+ """
6
+
7
+ from __future__ import annotations
8
+ import pprint
9
+ import re # noqa: F401
10
+ import json
11
+
12
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
13
+ from typing import Any, ClassVar, Dict, List, Optional
14
+ from uuid import UUID
15
+ from typing import Optional, Set
16
+ from typing_extensions import Self
17
+ from pydantic import SkipValidation, Field
18
+
19
+ class Person(BaseModel):
20
+ """
21
+ Person response body: person ID, creation date, update date if any.
22
+ """ # noqa: E501
23
+ name: SkipValidation[str] = Field(alias="name", description="Person's name.")
24
+ external_id: SkipValidation[Optional[str]] = Field(alias="externalId", default=None, description="Person's ID, used for linking search results to an ID in an external system. Can be set when creating a Person, stored in the database, and included in the search to return only Persons with the specified ID. Optional.")
25
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None, description="A free-form object containing person's extended attributes.")
26
+ groups: SkipValidation[Optional[List[str]]] = Field(alias="groups", default=None, description="Groups a person should be placed to. If no group is specified in request, a Default group is created and the person is placed to it.")
27
+ expire_at: SkipValidation[Optional[str]] = Field(alias="expireAt", default=None, description="Person expiration date.")
28
+ id: SkipValidation[Optional[str]] = Field(alias="id", default=None, description="Person ID. The list of persons is sorted by decreasing ID value.")
29
+ created_at: SkipValidation[Optional[str]] = Field(alias="createdAt", default=None, description="Person creation date.")
30
+ updated_at: SkipValidation[Optional[str]] = Field(alias="updatedAt", default=None, description="Person update date.")
31
+ __properties: ClassVar[List[str]] = ["name", "externalId", "metadata", "groups", "expireAt", "id", "createdAt", "updatedAt"]
32
+
33
+ model_config = ConfigDict(
34
+ populate_by_name=True,
35
+ validate_assignment=True,
36
+ protected_namespaces=(),
37
+ arbitrary_types_allowed=True,
38
+ use_enum_values=True
39
+ )
40
+
41
+
42
+ def to_str(self) -> str:
43
+ """Returns the string representation of the model using alias"""
44
+ return pprint.pformat(self.model_dump(by_alias=True))
45
+
46
+ def to_json(self) -> str:
47
+ """Returns the JSON representation of the model using alias"""
48
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
49
+ return json.dumps(self.to_dict())
50
+
51
+ @classmethod
52
+ def from_json(cls, json_str: str) -> Optional[Self]:
53
+ """Create an instance of Person from a JSON string"""
54
+ return cls.from_dict(json.loads(json_str))
55
+
56
+ def to_dict(self) -> Dict[str, Any]:
57
+ """Return the dictionary representation of the model using alias.
58
+
59
+ This has the following differences from calling pydantic's
60
+ `self.model_dump(by_alias=True)`:
61
+
62
+ * `None` is only added to the output dict for nullable fields that
63
+ were set at model initialization. Other fields with value `None`
64
+ are ignored.
65
+ """
66
+ excluded_fields: Set[str] = set([
67
+ ])
68
+
69
+ _dict = self.model_dump(
70
+ by_alias=True,
71
+ exclude=excluded_fields,
72
+ exclude_none=True,
73
+ )
74
+ return _dict
75
+
76
+ @classmethod
77
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
78
+ """Create an instance of Person from a dict"""
79
+ if obj is None:
80
+ return None
81
+
82
+ if not isinstance(obj, dict):
83
+ return cls.model_validate(obj)
84
+
85
+ _obj = cls.model_validate({
86
+ "name": obj.get("name"),
87
+ "externalId": obj.get("externalId"),
88
+ "metadata": obj.get("metadata"),
89
+ "groups": obj.get("groups"),
90
+ "expireAt": obj.get("expireAt"),
91
+ "id": obj.get("id"),
92
+ "createdAt": obj.get("createdAt"),
93
+ "updatedAt": obj.get("updatedAt")
94
+ })
95
+ return _obj
96
+
97
+
@@ -0,0 +1,87 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Generated by: https://openapi-generator.tech
5
+ """
6
+
7
+ from __future__ import annotations
8
+ import pprint
9
+ import re # noqa: F401
10
+ import json
11
+
12
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
13
+ from typing import Any, ClassVar, Dict, List, Optional
14
+ from uuid import UUID
15
+ from typing import Optional, Set
16
+ from typing_extensions import Self
17
+ from pydantic import SkipValidation, Field
18
+
19
+ class PersonData(BaseModel):
20
+ """
21
+ PersonData
22
+ """ # noqa: E501
23
+ id: SkipValidation[Optional[str]] = Field(alias="id", default=None, description="Person ID. The list of persons is sorted by decreasing ID value.")
24
+ created_at: SkipValidation[Optional[str]] = Field(alias="createdAt", default=None, description="Person creation date.")
25
+ updated_at: SkipValidation[Optional[str]] = Field(alias="updatedAt", default=None, description="Person update date.")
26
+ __properties: ClassVar[List[str]] = ["id", "createdAt", "updatedAt"]
27
+
28
+ model_config = ConfigDict(
29
+ populate_by_name=True,
30
+ validate_assignment=True,
31
+ protected_namespaces=(),
32
+ arbitrary_types_allowed=True,
33
+ use_enum_values=True
34
+ )
35
+
36
+
37
+ def to_str(self) -> str:
38
+ """Returns the string representation of the model using alias"""
39
+ return pprint.pformat(self.model_dump(by_alias=True))
40
+
41
+ def to_json(self) -> str:
42
+ """Returns the JSON representation of the model using alias"""
43
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
44
+ return json.dumps(self.to_dict())
45
+
46
+ @classmethod
47
+ def from_json(cls, json_str: str) -> Optional[Self]:
48
+ """Create an instance of PersonData from a JSON string"""
49
+ return cls.from_dict(json.loads(json_str))
50
+
51
+ def to_dict(self) -> Dict[str, Any]:
52
+ """Return the dictionary representation of the model using alias.
53
+
54
+ This has the following differences from calling pydantic's
55
+ `self.model_dump(by_alias=True)`:
56
+
57
+ * `None` is only added to the output dict for nullable fields that
58
+ were set at model initialization. Other fields with value `None`
59
+ are ignored.
60
+ """
61
+ excluded_fields: Set[str] = set([
62
+ ])
63
+
64
+ _dict = self.model_dump(
65
+ by_alias=True,
66
+ exclude=excluded_fields,
67
+ exclude_none=True,
68
+ )
69
+ return _dict
70
+
71
+ @classmethod
72
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
73
+ """Create an instance of PersonData from a dict"""
74
+ if obj is None:
75
+ return None
76
+
77
+ if not isinstance(obj, dict):
78
+ return cls.model_validate(obj)
79
+
80
+ _obj = cls.model_validate({
81
+ "id": obj.get("id"),
82
+ "createdAt": obj.get("createdAt"),
83
+ "updatedAt": obj.get("updatedAt")
84
+ })
85
+ return _obj
86
+
87
+
@@ -0,0 +1,91 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Generated by: https://openapi-generator.tech
5
+ """
6
+
7
+ from __future__ import annotations
8
+ import pprint
9
+ import re # noqa: F401
10
+ import json
11
+
12
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
13
+ from typing import Any, ClassVar, Dict, List, Optional
14
+ from uuid import UUID
15
+ from typing import Optional, Set
16
+ from typing_extensions import Self
17
+ from pydantic import SkipValidation, Field
18
+
19
+ class PersonFields(BaseModel):
20
+ """
21
+ Person Request body: name and metadata.
22
+ """ # noqa: E501
23
+ name: SkipValidation[str] = Field(alias="name", description="Person's name.")
24
+ external_id: SkipValidation[Optional[str]] = Field(alias="externalId", default=None, description="Person's ID, used for linking search results to an ID in an external system. Can be set when creating a Person, stored in the database, and included in the search to return only Persons with the specified ID. Optional.")
25
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None, description="A free-form object containing person's extended attributes.")
26
+ groups: SkipValidation[Optional[List[str]]] = Field(alias="groups", default=None, description="Groups a person should be placed to. If no group is specified in request, a Default group is created and the person is placed to it.")
27
+ expire_at: SkipValidation[Optional[str]] = Field(alias="expireAt", default=None, description="Person expiration date.")
28
+ __properties: ClassVar[List[str]] = ["name", "externalId", "metadata", "groups", "expireAt"]
29
+
30
+ model_config = ConfigDict(
31
+ populate_by_name=True,
32
+ validate_assignment=True,
33
+ protected_namespaces=(),
34
+ arbitrary_types_allowed=True,
35
+ use_enum_values=True
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 PersonFields 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 PersonFields 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
+ "name": obj.get("name"),
84
+ "externalId": obj.get("externalId"),
85
+ "metadata": obj.get("metadata"),
86
+ "groups": obj.get("groups"),
87
+ "expireAt": obj.get("expireAt")
88
+ })
89
+ return _obj
90
+
91
+
@@ -0,0 +1,90 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Generated by: https://openapi-generator.tech
5
+ """
6
+
7
+ from __future__ import annotations
8
+ import pprint
9
+ import re # noqa: F401
10
+ import json
11
+
12
+ from pydantic import BaseModel, ConfigDict
13
+ from typing import Any, ClassVar, Dict, List, Optional
14
+ from regula.facesdk.webclient.gen.models.person import Person
15
+ from typing import Optional, Set
16
+ from typing_extensions import Self
17
+ from pydantic import SkipValidation, Field
18
+
19
+ class PersonItems(BaseModel):
20
+ """
21
+ PersonItems
22
+ """ # noqa: E501
23
+ items: SkipValidation[Optional[List[Person]]] = Field(alias="items", default=None)
24
+ __properties: ClassVar[List[str]] = ["items"]
25
+
26
+ model_config = ConfigDict(
27
+ populate_by_name=True,
28
+ validate_assignment=True,
29
+ protected_namespaces=(),
30
+ arbitrary_types_allowed=True,
31
+ use_enum_values=True
32
+ )
33
+
34
+
35
+ def to_str(self) -> str:
36
+ """Returns the string representation of the model using alias"""
37
+ return pprint.pformat(self.model_dump(by_alias=True))
38
+
39
+ def to_json(self) -> str:
40
+ """Returns the JSON representation of the model using alias"""
41
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
42
+ return json.dumps(self.to_dict())
43
+
44
+ @classmethod
45
+ def from_json(cls, json_str: str) -> Optional[Self]:
46
+ """Create an instance of PersonItems from a JSON string"""
47
+ return cls.from_dict(json.loads(json_str))
48
+
49
+ def to_dict(self) -> Dict[str, Any]:
50
+ """Return the dictionary representation of the model using alias.
51
+
52
+ This has the following differences from calling pydantic's
53
+ `self.model_dump(by_alias=True)`:
54
+
55
+ * `None` is only added to the output dict for nullable fields that
56
+ were set at model initialization. Other fields with value `None`
57
+ are ignored.
58
+ """
59
+ excluded_fields: Set[str] = set([
60
+ ])
61
+
62
+ _dict = self.model_dump(
63
+ by_alias=True,
64
+ exclude=excluded_fields,
65
+ exclude_none=True,
66
+ )
67
+ # override the default output from pydantic by calling `to_dict()` of each item in items (list)
68
+ _items = []
69
+ if self.items:
70
+ for _item_items in self.items:
71
+ if _item_items:
72
+ _items.append(_item_items.to_dict())
73
+ _dict['items'] = _items
74
+ return _dict
75
+
76
+ @classmethod
77
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
78
+ """Create an instance of PersonItems from a dict"""
79
+ if obj is None:
80
+ return None
81
+
82
+ if not isinstance(obj, dict):
83
+ return cls.model_validate(obj)
84
+
85
+ _obj = cls.model_validate({
86
+ "items": [Person.from_dict(_item) for _item in obj.get("items", []) if Person.from_dict(_item) is not None]
87
+ })
88
+ return _obj
89
+
90
+
@@ -0,0 +1,89 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Generated by: https://openapi-generator.tech
5
+ """
6
+
7
+ from __future__ import annotations
8
+ import pprint
9
+ import re # noqa: F401
10
+ import json
11
+
12
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
13
+ from typing import Any, ClassVar, Dict, List, Optional
14
+ from uuid import UUID
15
+ from typing import Optional, Set
16
+ from typing_extensions import Self
17
+ from pydantic import SkipValidation, Field
18
+
19
+ class PersonToUpdateFields(BaseModel):
20
+ """
21
+ Person Request body: name and metadata.
22
+ """ # noqa: E501
23
+ external_id: SkipValidation[Optional[str]] = Field(alias="externalId", default=None, description="Person's ID, used for linking search results to an ID in an external system. Can be set when creating a Person, stored in the database, and included in the search to return only Persons with the specified ID. Optional.")
24
+ name: SkipValidation[Optional[str]] = Field(alias="name", default=None, description="Person's name.")
25
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None, description="A free-form object containing person's extended attributes.")
26
+ groups: SkipValidation[Optional[List[str]]] = Field(alias="groups", default=None, description="Groups a person should be placed to. If no group is specified in request, a Default group is created and the person is placed to it.")
27
+ __properties: ClassVar[List[str]] = ["externalId", "name", "metadata", "groups"]
28
+
29
+ model_config = ConfigDict(
30
+ populate_by_name=True,
31
+ validate_assignment=True,
32
+ protected_namespaces=(),
33
+ arbitrary_types_allowed=True,
34
+ use_enum_values=True
35
+ )
36
+
37
+
38
+ def to_str(self) -> str:
39
+ """Returns the string representation of the model using alias"""
40
+ return pprint.pformat(self.model_dump(by_alias=True))
41
+
42
+ def to_json(self) -> str:
43
+ """Returns the JSON representation of the model using alias"""
44
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
45
+ return json.dumps(self.to_dict())
46
+
47
+ @classmethod
48
+ def from_json(cls, json_str: str) -> Optional[Self]:
49
+ """Create an instance of PersonToUpdateFields from a JSON string"""
50
+ return cls.from_dict(json.loads(json_str))
51
+
52
+ def to_dict(self) -> Dict[str, Any]:
53
+ """Return the dictionary representation of the model using alias.
54
+
55
+ This has the following differences from calling pydantic's
56
+ `self.model_dump(by_alias=True)`:
57
+
58
+ * `None` is only added to the output dict for nullable fields that
59
+ were set at model initialization. Other fields with value `None`
60
+ are ignored.
61
+ """
62
+ excluded_fields: Set[str] = set([
63
+ ])
64
+
65
+ _dict = self.model_dump(
66
+ by_alias=True,
67
+ exclude=excluded_fields,
68
+ exclude_none=True,
69
+ )
70
+ return _dict
71
+
72
+ @classmethod
73
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
74
+ """Create an instance of PersonToUpdateFields from a dict"""
75
+ if obj is None:
76
+ return None
77
+
78
+ if not isinstance(obj, dict):
79
+ return cls.model_validate(obj)
80
+
81
+ _obj = cls.model_validate({
82
+ "externalId": obj.get("externalId"),
83
+ "name": obj.get("name"),
84
+ "metadata": obj.get("metadata"),
85
+ "groups": obj.get("groups")
86
+ })
87
+ return _obj
88
+
89
+
@@ -0,0 +1,107 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Generated by: https://openapi-generator.tech
5
+ """
6
+
7
+ from __future__ import annotations
8
+ import pprint
9
+ import re # noqa: F401
10
+ import json
11
+
12
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
13
+ from typing import Any, ClassVar, Dict, List, Optional
14
+ from uuid import UUID
15
+ from regula.facesdk.webclient.gen.models.recognize_image import RecognizeImage
16
+ from typing import Optional, Set
17
+ from typing_extensions import Self
18
+ from pydantic import SkipValidation, Field
19
+
20
+ class PersonWithImages(BaseModel):
21
+ """
22
+ PersonWithImages
23
+ """ # noqa: E501
24
+ images: SkipValidation[Optional[List[RecognizeImage]]] = Field(alias="images", default=None, description="Detected Persons.")
25
+ name: SkipValidation[str] = Field(alias="name", description="Person's name.")
26
+ external_id: SkipValidation[Optional[str]] = Field(alias="externalId", default=None, description="Person's ID, used for linking search results to an ID in an external system. Can be set when creating a Person, stored in the database, and included in the search to return only Persons with the specified ID. Optional.")
27
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None, description="A free-form object containing person's extended attributes.")
28
+ groups: SkipValidation[Optional[List[str]]] = Field(alias="groups", default=None, description="Groups a person should be placed to. If no group is specified in request, a Default group is created and the person is placed to it.")
29
+ expire_at: SkipValidation[Optional[str]] = Field(alias="expireAt", default=None, description="Person expiration date.")
30
+ id: SkipValidation[Optional[str]] = Field(alias="id", default=None, description="Person ID. The list of persons is sorted by decreasing ID value.")
31
+ created_at: SkipValidation[Optional[str]] = Field(alias="createdAt", default=None, description="Person creation date.")
32
+ updated_at: SkipValidation[Optional[str]] = Field(alias="updatedAt", default=None, description="Person update date.")
33
+ __properties: ClassVar[List[str]] = ["images", "name", "externalId", "metadata", "groups", "expireAt", "id", "createdAt", "updatedAt"]
34
+
35
+ model_config = ConfigDict(
36
+ populate_by_name=True,
37
+ validate_assignment=True,
38
+ protected_namespaces=(),
39
+ arbitrary_types_allowed=True,
40
+ use_enum_values=True
41
+ )
42
+
43
+
44
+ def to_str(self) -> str:
45
+ """Returns the string representation of the model using alias"""
46
+ return pprint.pformat(self.model_dump(by_alias=True))
47
+
48
+ def to_json(self) -> str:
49
+ """Returns the JSON representation of the model using alias"""
50
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
51
+ return json.dumps(self.to_dict())
52
+
53
+ @classmethod
54
+ def from_json(cls, json_str: str) -> Optional[Self]:
55
+ """Create an instance of PersonWithImages from a JSON string"""
56
+ return cls.from_dict(json.loads(json_str))
57
+
58
+ def to_dict(self) -> Dict[str, Any]:
59
+ """Return the dictionary representation of the model using alias.
60
+
61
+ This has the following differences from calling pydantic's
62
+ `self.model_dump(by_alias=True)`:
63
+
64
+ * `None` is only added to the output dict for nullable fields that
65
+ were set at model initialization. Other fields with value `None`
66
+ are ignored.
67
+ """
68
+ excluded_fields: Set[str] = set([
69
+ ])
70
+
71
+ _dict = self.model_dump(
72
+ by_alias=True,
73
+ exclude=excluded_fields,
74
+ exclude_none=True,
75
+ )
76
+ # override the default output from pydantic by calling `to_dict()` of each item in images (list)
77
+ _items = []
78
+ if self.images:
79
+ for _item_images in self.images:
80
+ if _item_images:
81
+ _items.append(_item_images.to_dict())
82
+ _dict['images'] = _items
83
+ return _dict
84
+
85
+ @classmethod
86
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
87
+ """Create an instance of PersonWithImages from a dict"""
88
+ if obj is None:
89
+ return None
90
+
91
+ if not isinstance(obj, dict):
92
+ return cls.model_validate(obj)
93
+
94
+ _obj = cls.model_validate({
95
+ "images": [RecognizeImage.from_dict(_item) for _item in obj.get("images", []) if RecognizeImage.from_dict(_item) is not None],
96
+ "name": obj.get("name"),
97
+ "externalId": obj.get("externalId"),
98
+ "metadata": obj.get("metadata"),
99
+ "groups": obj.get("groups"),
100
+ "expireAt": obj.get("expireAt"),
101
+ "id": obj.get("id"),
102
+ "createdAt": obj.get("createdAt"),
103
+ "updatedAt": obj.get("updatedAt")
104
+ })
105
+ return _obj
106
+
107
+