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,92 @@
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, StrictFloat, StrictInt, StrictStr
13
+ from typing import Any, ClassVar, Dict, List, Optional, Union
14
+ from regula.facesdk.webclient.gen.models.add_image_to_person_request_image import AddImageToPersonRequestImage
15
+ from typing import Optional, Set
16
+ from typing_extensions import Self
17
+ from pydantic import SkipValidation, Field
18
+
19
+ class AddImageToPersonRequestData(BaseModel):
20
+ """
21
+ AddImageToPersonRequestData
22
+ """ # noqa: E501
23
+ tag: SkipValidation[Optional[str]] = Field(alias="tag", default=None, description="Session identificator.")
24
+ image: SkipValidation[AddImageToPersonRequestImage] = Field(alias="image")
25
+ threshold: SkipValidation[Optional[float]] = Field(alias="threshold", default=None, description="The similarity threshold.")
26
+ limit: SkipValidation[Optional[int]] = Field(alias="limit", default=None, description="The maximum number of results to be returned.")
27
+ __properties: ClassVar[List[str]] = ["tag", "image", "threshold", "limit"]
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 AddImageToPersonRequestData 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
+ # override the default output from pydantic by calling `to_dict()` of image
71
+ if self.image:
72
+ _dict['image'] = self.image.to_dict()
73
+ return _dict
74
+
75
+ @classmethod
76
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
77
+ """Create an instance of AddImageToPersonRequestData from a dict"""
78
+ if obj is None:
79
+ return None
80
+
81
+ if not isinstance(obj, dict):
82
+ return cls.model_validate(obj)
83
+
84
+ _obj = cls.model_validate({
85
+ "tag": obj.get("tag"),
86
+ "image": AddImageToPersonRequestImage.from_dict(obj["image"]) if obj.get("image") is not None else None,
87
+ "threshold": obj.get("threshold"),
88
+ "limit": obj.get("limit")
89
+ })
90
+ return _obj
91
+
92
+
@@ -0,0 +1,92 @@
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, StrictBytes, StrictStr
13
+ from typing import Any, ClassVar, Dict, List, Optional, Union
14
+ from regula.facesdk.webclient.gen.models.resize_options import ResizeOptions
15
+ from typing import Optional, Set
16
+ from typing_extensions import Self
17
+ from pydantic import SkipValidation, Field
18
+
19
+ class AddImageToPersonRequestImage(BaseModel):
20
+ """
21
+ Uploaded image.
22
+ """ # noqa: E501
23
+ content_type: SkipValidation[Optional[str]] = Field(alias="contentType", default=None, description="Original media type of the uploaded image.")
24
+ content: SkipValidation[Optional[bytearray]] = Field(alias="content", default=None, description="Base64-encoded image.")
25
+ image_url: SkipValidation[Optional[str]] = Field(alias="imageUrl", default=None, description="Image URL.")
26
+ resize_options: SkipValidation[Optional[ResizeOptions]] = Field(alias="resizeOptions", default=None)
27
+ __properties: ClassVar[List[str]] = ["contentType", "content", "imageUrl", "resizeOptions"]
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 AddImageToPersonRequestImage 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
+ # override the default output from pydantic by calling `to_dict()` of resize_options
71
+ if self.resize_options:
72
+ _dict['resizeOptions'] = self.resize_options.to_dict()
73
+ return _dict
74
+
75
+ @classmethod
76
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
77
+ """Create an instance of AddImageToPersonRequestImage from a dict"""
78
+ if obj is None:
79
+ return None
80
+
81
+ if not isinstance(obj, dict):
82
+ return cls.model_validate(obj)
83
+
84
+ _obj = cls.model_validate({
85
+ "contentType": obj.get("contentType"),
86
+ "content": obj.get("content"),
87
+ "imageUrl": obj.get("imageUrl"),
88
+ "resizeOptions": ResizeOptions.from_dict(obj["resizeOptions"]) if obj.get("resizeOptions") is not None else None
89
+ })
90
+ return _obj
91
+
92
+
@@ -0,0 +1,92 @@
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 typing import Optional, Set
15
+ from typing_extensions import Self
16
+ from pydantic import SkipValidation, Field
17
+
18
+ class AddImageToPersonResponse(BaseModel):
19
+ """
20
+ Image in the response.
21
+ """ # noqa: E501
22
+ id: SkipValidation[Optional[str]] = Field(alias="id", default=None, description="Response image ID. The list is sorted by decreasing ID value.")
23
+ content_type: SkipValidation[Optional[str]] = Field(alias="contentType", default=None, description="Original media type of the returned image.")
24
+ created_at: SkipValidation[Optional[str]] = Field(alias="createdAt", default=None, description="Returned image creation date.")
25
+ path: SkipValidation[Optional[str]] = Field(alias="path", default=None, description="Returned image path.")
26
+ url: SkipValidation[Optional[str]] = Field(alias="url", default=None, description="Returned image URL.")
27
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None, description="A free-form object containing person's extended attributes.")
28
+ __properties: ClassVar[List[str]] = ["id", "contentType", "createdAt", "path", "url", "metadata"]
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 AddImageToPersonResponse 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 AddImageToPersonResponse 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
+ "id": obj.get("id"),
84
+ "contentType": obj.get("contentType"),
85
+ "createdAt": obj.get("createdAt"),
86
+ "path": obj.get("path"),
87
+ "url": obj.get("url"),
88
+ "metadata": obj.get("metadata")
89
+ })
90
+ return _obj
91
+
92
+
@@ -0,0 +1,83 @@
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.face_attribute import FaceAttribute
15
+ from typing import Optional, Set
16
+ from typing_extensions import Self
17
+ from pydantic import SkipValidation, Field
18
+
19
+ class AttributeConfig(BaseModel):
20
+ """
21
+ The configuration that defines the list of returned attribute check characteristics.
22
+ """ # noqa: E501
23
+ name: SkipValidation[Optional[FaceAttribute]] = Field(alias="name", default=None)
24
+ __properties: ClassVar[List[str]] = ["name"]
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 AttributeConfig 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 AttributeConfig 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
+ "name": obj.get("name")
80
+ })
81
+ return _obj
82
+
83
+
@@ -0,0 +1,82 @@
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 AttributesData(BaseModel):
19
+ """
20
+ AttributesData
21
+ """ # noqa: E501
22
+ value: SkipValidation[Optional[List[int]]] = Field(alias="value", default=None, description="The estimated value for the attribute, see the [Returned values column](https://docs.regulaforensics.com/develop/face-sdk/web-service/development/usage/face-detection/attributes-detection/).")
23
+ __properties: ClassVar[List[str]] = ["value"]
24
+
25
+ model_config = ConfigDict(
26
+ populate_by_name=True,
27
+ validate_assignment=True,
28
+ protected_namespaces=(),
29
+ arbitrary_types_allowed=True,
30
+ use_enum_values=True
31
+ )
32
+
33
+
34
+ def to_str(self) -> str:
35
+ """Returns the string representation of the model using alias"""
36
+ return pprint.pformat(self.model_dump(by_alias=True))
37
+
38
+ def to_json(self) -> str:
39
+ """Returns the JSON representation of the model using alias"""
40
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
41
+ return json.dumps(self.to_dict())
42
+
43
+ @classmethod
44
+ def from_json(cls, json_str: str) -> Optional[Self]:
45
+ """Create an instance of AttributesData from a JSON string"""
46
+ return cls.from_dict(json.loads(json_str))
47
+
48
+ def to_dict(self) -> Dict[str, Any]:
49
+ """Return the dictionary representation of the model using alias.
50
+
51
+ This has the following differences from calling pydantic's
52
+ `self.model_dump(by_alias=True)`:
53
+
54
+ * `None` is only added to the output dict for nullable fields that
55
+ were set at model initialization. Other fields with value `None`
56
+ are ignored.
57
+ """
58
+ excluded_fields: Set[str] = set([
59
+ ])
60
+
61
+ _dict = self.model_dump(
62
+ by_alias=True,
63
+ exclude=excluded_fields,
64
+ exclude_none=True,
65
+ )
66
+ return _dict
67
+
68
+ @classmethod
69
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
70
+ """Create an instance of AttributesData from a dict"""
71
+ if obj is None:
72
+ return None
73
+
74
+ if not isinstance(obj, dict):
75
+ return cls.model_validate(obj)
76
+
77
+ _obj = cls.model_validate({
78
+ "value": obj.get("value")
79
+ })
80
+ return _obj
81
+
82
+
@@ -0,0 +1,88 @@
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_extensions import Annotated
15
+ from regula.facesdk.webclient.gen.models.face_image_quality_align_type import FaceImageQualityAlignType
16
+ from typing import Optional, Set
17
+ from typing_extensions import Self
18
+ from pydantic import SkipValidation, Field
19
+
20
+ class Crop(BaseModel):
21
+ """
22
+ Whether to return a Base64-encoded image of each aligned and cropped portrait in the `crop` field. Faces are aligned to a straight vertical line based on the value in the `crop.type` field, correcting any tilt present in the original image. If the image contains multiple faces, the system will detect and process each face separately, returning individual portraits. For example, if there are five people in the photo, five processed portraits will be returned. Each portrait is available for download.
23
+ """ # noqa: E501
24
+ type: SkipValidation[Optional[FaceImageQualityAlignType]] = Field(alias="type", default=None)
25
+ pad_color: SkipValidation[Optional[List[int]]] = Field(alias="padColor", default=None, description="The RGB value of a color for filling background behind a person's silhouette and for aligning the image.")
26
+ size: SkipValidation[Optional[List[int]]] = Field(alias="size", default=None, description="The resize value in case `type` matches this value. If it doesn't, no resize is performed.")
27
+ __properties: ClassVar[List[str]] = ["type", "padColor", "size"]
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 Crop 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 Crop 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
+ "type": obj.get("type"),
83
+ "padColor": obj.get("padColor"),
84
+ "size": obj.get("size")
85
+ })
86
+ return _obj
87
+
88
+
@@ -0,0 +1,136 @@
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 importlib import import_module
13
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
14
+ from typing import Any, ClassVar, Dict, List, Optional, Union
15
+ from typing import Optional, Set
16
+ from typing_extensions import Self
17
+ from pydantic import SkipValidation, Field
18
+
19
+ from typing import TYPE_CHECKING
20
+ if TYPE_CHECKING:
21
+ from regula.facesdk.webclient.gen.models.detect_attributes_details import DetectAttributesDetails
22
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
23
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
24
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
25
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
26
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
27
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
28
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
29
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
30
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
31
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
32
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
33
+ from regula.facesdk.webclient.gen.models.detect_details_meta import DetectDetailsMeta
34
+
35
+ class DetailItem(BaseModel):
36
+ """
37
+ DetailItem
38
+ """ # noqa: E501
39
+ name: SkipValidation[Optional[str]] = Field(alias="name", default=None, description="The name of the attribute.")
40
+ __properties: ClassVar[List[str]] = ["name"]
41
+
42
+ model_config = ConfigDict(
43
+ populate_by_name=True,
44
+ validate_assignment=True,
45
+ protected_namespaces=(),
46
+ arbitrary_types_allowed=True,
47
+ use_enum_values=True
48
+ )
49
+
50
+
51
+ # JSON field name that stores the object type
52
+ __discriminator_property_name: ClassVar[str] = 'name'
53
+
54
+ # discriminator mappings
55
+ __discriminator_value_class_map: ClassVar[Dict[str, str]] = {
56
+ 'Age': 'DetectAttributesDetails','Emotion': 'DetectDetailsMeta','EyeLeft': 'DetectDetailsMeta','EyeRight': 'DetectDetailsMeta','ForeheadCovering': 'DetectDetailsMeta','Glasses': 'DetectDetailsMeta','HeadCovering': 'DetectDetailsMeta','Headphones': 'DetectDetailsMeta','MedicalMask': 'DetectDetailsMeta','Mouth': 'DetectDetailsMeta','Occlusion': 'DetectDetailsMeta','Smile': 'DetectDetailsMeta','StrongMakeup': 'DetectDetailsMeta'
57
+ }
58
+
59
+ @classmethod
60
+ def get_discriminator_value(cls, obj: Dict[str, Any]) -> Optional[str]:
61
+ """Returns the discriminator value (object type) of the data"""
62
+ discriminator_value = obj[cls.__discriminator_property_name]
63
+ if discriminator_value:
64
+ return cls.__discriminator_value_class_map.get(discriminator_value)
65
+ else:
66
+ return None
67
+
68
+ def to_str(self) -> str:
69
+ """Returns the string representation of the model using alias"""
70
+ return pprint.pformat(self.model_dump(by_alias=True))
71
+
72
+ def to_json(self) -> str:
73
+ """Returns the JSON representation of the model using alias"""
74
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
75
+ return json.dumps(self.to_dict())
76
+
77
+ @classmethod
78
+ def from_json(cls, json_str: str) -> Optional[Union[DetectAttributesDetails, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta]]:
79
+ """Create an instance of DetailItem from a JSON string"""
80
+ return cls.from_dict(json.loads(json_str))
81
+
82
+ def to_dict(self) -> Dict[str, Any]:
83
+ """Return the dictionary representation of the model using alias.
84
+
85
+ This has the following differences from calling pydantic's
86
+ `self.model_dump(by_alias=True)`:
87
+
88
+ * `None` is only added to the output dict for nullable fields that
89
+ were set at model initialization. Other fields with value `None`
90
+ are ignored.
91
+ """
92
+ excluded_fields: Set[str] = set([
93
+ ])
94
+
95
+ _dict = self.model_dump(
96
+ by_alias=True,
97
+ exclude=excluded_fields,
98
+ exclude_none=True,
99
+ )
100
+ return _dict
101
+
102
+ @classmethod
103
+ def from_dict(cls, obj: Dict[str, Any]) -> Optional[Union[DetectAttributesDetails, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta, DetectDetailsMeta]]:
104
+ """Create an instance of DetailItem from a dict"""
105
+ # look up the object type based on discriminator mapping
106
+ object_type = cls.get_discriminator_value(obj)
107
+ if object_type == 'DetectAttributesDetails':
108
+ return import_module("regula.facesdk.webclient.gen.models.detect_attributes_details").DetectAttributesDetails.from_dict(obj)
109
+ if object_type == 'DetectDetailsMeta':
110
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
111
+ if object_type == 'DetectDetailsMeta':
112
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
113
+ if object_type == 'DetectDetailsMeta':
114
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
115
+ if object_type == 'DetectDetailsMeta':
116
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
117
+ if object_type == 'DetectDetailsMeta':
118
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
119
+ if object_type == 'DetectDetailsMeta':
120
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
121
+ if object_type == 'DetectDetailsMeta':
122
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
123
+ if object_type == 'DetectDetailsMeta':
124
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
125
+ if object_type == 'DetectDetailsMeta':
126
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
127
+ if object_type == 'DetectDetailsMeta':
128
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
129
+ if object_type == 'DetectDetailsMeta':
130
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
131
+ if object_type == 'DetectDetailsMeta':
132
+ return import_module("regula.facesdk.webclient.gen.models.detect_details_meta").DetectDetailsMeta.from_dict(obj)
133
+
134
+ return None
135
+
136
+