rapidata 2.18.0__py3-none-any.whl → 2.19.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.

Potentially problematic release.


This version of rapidata might be problematic. Click here for more details.

Files changed (29) hide show
  1. rapidata/__init__.py +2 -0
  2. rapidata/api_client/__init__.py +7 -5
  3. rapidata/api_client/api/order_api.py +3 -6
  4. rapidata/api_client/api/pipeline_api.py +665 -98
  5. rapidata/api_client/api/validation_set_api.py +6 -6
  6. rapidata/api_client/models/__init__.py +7 -5
  7. rapidata/api_client/models/add_user_response_result.py +3 -3
  8. rapidata/api_client/models/campaign_query_result.py +2 -2
  9. rapidata/api_client/models/campaign_status.py +2 -1
  10. rapidata/api_client/models/create_order_model_user_filters_inner.py +39 -9
  11. rapidata/api_client/models/get_simple_workflow_results_result.py +3 -3
  12. rapidata/api_client/models/get_validation_rapids_result.py +143 -0
  13. rapidata/api_client/models/get_validation_rapids_result_asset.py +174 -0
  14. rapidata/api_client/models/get_validation_rapids_result_paged_result.py +105 -0
  15. rapidata/api_client/models/get_validation_rapids_result_payload.py +252 -0
  16. rapidata/api_client/models/get_validation_rapids_result_truth.py +258 -0
  17. rapidata/api_client/models/not_user_filter_model.py +102 -0
  18. rapidata/api_client/models/or_user_filter_model.py +106 -0
  19. rapidata/api_client/models/query_validation_rapids_result.py +9 -9
  20. rapidata/api_client_README.md +9 -5
  21. rapidata/rapidata_client/__init__.py +2 -0
  22. rapidata/rapidata_client/filter/__init__.py +2 -0
  23. rapidata/rapidata_client/filter/not_filter.py +30 -0
  24. rapidata/rapidata_client/filter/or_filter.py +30 -0
  25. rapidata/rapidata_client/filter/rapidata_filters.py +6 -3
  26. {rapidata-2.18.0.dist-info → rapidata-2.19.0.dist-info}/METADATA +1 -1
  27. {rapidata-2.18.0.dist-info → rapidata-2.19.0.dist-info}/RECORD +29 -20
  28. {rapidata-2.18.0.dist-info → rapidata-2.19.0.dist-info}/LICENSE +0 -0
  29. {rapidata-2.18.0.dist-info → rapidata-2.19.0.dist-info}/WHEEL +0 -0
@@ -25,7 +25,7 @@ from rapidata.api_client.models.add_validation_text_rapid_model import AddValida
25
25
  from rapidata.api_client.models.create_empty_validation_set_result import CreateEmptyValidationSetResult
26
26
  from rapidata.api_client.models.create_validation_set_model import CreateValidationSetModel
27
27
  from rapidata.api_client.models.get_available_validation_sets_result import GetAvailableValidationSetsResult
28
- from rapidata.api_client.models.get_validation_rapids_query_paged_result import GetValidationRapidsQueryPagedResult
28
+ from rapidata.api_client.models.get_validation_rapids_result_paged_result import GetValidationRapidsResultPagedResult
29
29
  from rapidata.api_client.models.get_validation_set_by_id_result import GetValidationSetByIdResult
30
30
  from rapidata.api_client.models.import_validation_set_from_file_result import ImportValidationSetFromFileResult
31
31
  from rapidata.api_client.models.query_model import QueryModel
@@ -3656,7 +3656,7 @@ class ValidationSetApi:
3656
3656
  _content_type: Optional[StrictStr] = None,
3657
3657
  _headers: Optional[Dict[StrictStr, Any]] = None,
3658
3658
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3659
- ) -> GetValidationRapidsQueryPagedResult:
3659
+ ) -> GetValidationRapidsResultPagedResult:
3660
3660
  """Queries the validation rapids for a specific validation set.
3661
3661
 
3662
3662
 
@@ -3696,7 +3696,7 @@ class ValidationSetApi:
3696
3696
  )
3697
3697
 
3698
3698
  _response_types_map: Dict[str, Optional[str]] = {
3699
- '200': "GetValidationRapidsQueryPagedResult",
3699
+ '200': "GetValidationRapidsResultPagedResult",
3700
3700
  }
3701
3701
  response_data = self.api_client.call_api(
3702
3702
  *_param,
@@ -3726,7 +3726,7 @@ class ValidationSetApi:
3726
3726
  _content_type: Optional[StrictStr] = None,
3727
3727
  _headers: Optional[Dict[StrictStr, Any]] = None,
3728
3728
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
3729
- ) -> ApiResponse[GetValidationRapidsQueryPagedResult]:
3729
+ ) -> ApiResponse[GetValidationRapidsResultPagedResult]:
3730
3730
  """Queries the validation rapids for a specific validation set.
3731
3731
 
3732
3732
 
@@ -3766,7 +3766,7 @@ class ValidationSetApi:
3766
3766
  )
3767
3767
 
3768
3768
  _response_types_map: Dict[str, Optional[str]] = {
3769
- '200': "GetValidationRapidsQueryPagedResult",
3769
+ '200': "GetValidationRapidsResultPagedResult",
3770
3770
  }
3771
3771
  response_data = self.api_client.call_api(
3772
3772
  *_param,
@@ -3836,7 +3836,7 @@ class ValidationSetApi:
3836
3836
  )
3837
3837
 
3838
3838
  _response_types_map: Dict[str, Optional[str]] = {
3839
- '200': "GetValidationRapidsQueryPagedResult",
3839
+ '200': "GetValidationRapidsResultPagedResult",
3840
3840
  }
3841
3841
  response_data = self.api_client.call_api(
3842
3842
  *_param,
@@ -19,7 +19,6 @@ from rapidata.api_client.models.ab_test_selection_a_inner import AbTestSelection
19
19
  from rapidata.api_client.models.add_campaign_artifact_result import AddCampaignArtifactResult
20
20
  from rapidata.api_client.models.add_campaign_model import AddCampaignModel
21
21
  from rapidata.api_client.models.add_user_response_result import AddUserResponseResult
22
- from rapidata.api_client.models.add_user_response_result_validation_truth import AddUserResponseResultValidationTruth
23
22
  from rapidata.api_client.models.add_validation_rapid_model import AddValidationRapidModel
24
23
  from rapidata.api_client.models.add_validation_rapid_model_payload import AddValidationRapidModelPayload
25
24
  from rapidata.api_client.models.add_validation_rapid_model_truth import AddValidationRapidModelTruth
@@ -149,8 +148,11 @@ from rapidata.api_client.models.get_responses_result import GetResponsesResult
149
148
  from rapidata.api_client.models.get_simple_workflow_results_model import GetSimpleWorkflowResultsModel
150
149
  from rapidata.api_client.models.get_simple_workflow_results_result import GetSimpleWorkflowResultsResult
151
150
  from rapidata.api_client.models.get_simple_workflow_results_result_paged_result import GetSimpleWorkflowResultsResultPagedResult
152
- from rapidata.api_client.models.get_validation_rapids_query import GetValidationRapidsQuery
153
- from rapidata.api_client.models.get_validation_rapids_query_paged_result import GetValidationRapidsQueryPagedResult
151
+ from rapidata.api_client.models.get_validation_rapids_result import GetValidationRapidsResult
152
+ from rapidata.api_client.models.get_validation_rapids_result_asset import GetValidationRapidsResultAsset
153
+ from rapidata.api_client.models.get_validation_rapids_result_paged_result import GetValidationRapidsResultPagedResult
154
+ from rapidata.api_client.models.get_validation_rapids_result_payload import GetValidationRapidsResultPayload
155
+ from rapidata.api_client.models.get_validation_rapids_result_truth import GetValidationRapidsResultTruth
154
156
  from rapidata.api_client.models.get_validation_set_by_id_result import GetValidationSetByIdResult
155
157
  from rapidata.api_client.models.get_workflow_by_id_result import GetWorkflowByIdResult
156
158
  from rapidata.api_client.models.get_workflow_by_id_result_workflow import GetWorkflowByIdResultWorkflow
@@ -191,10 +193,12 @@ from rapidata.api_client.models.never_ending_referee_config import NeverEndingRe
191
193
  from rapidata.api_client.models.new_user_filter_model import NewUserFilterModel
192
194
  from rapidata.api_client.models.newsletter_model import NewsletterModel
193
195
  from rapidata.api_client.models.not_available_yet_result import NotAvailableYetResult
196
+ from rapidata.api_client.models.not_user_filter_model import NotUserFilterModel
194
197
  from rapidata.api_client.models.null_asset_model import NullAssetModel
195
198
  from rapidata.api_client.models.online_pair_maker_config import OnlinePairMakerConfig
196
199
  from rapidata.api_client.models.online_pair_maker_config_model import OnlinePairMakerConfigModel
197
200
  from rapidata.api_client.models.online_pair_maker_information import OnlinePairMakerInformation
201
+ from rapidata.api_client.models.or_user_filter_model import OrUserFilterModel
198
202
  from rapidata.api_client.models.order_model import OrderModel
199
203
  from rapidata.api_client.models.order_model_paged_result import OrderModelPagedResult
200
204
  from rapidata.api_client.models.order_state import OrderState
@@ -217,9 +221,7 @@ from rapidata.api_client.models.public_order_model import PublicOrderModel
217
221
  from rapidata.api_client.models.public_text_metadata_input import PublicTextMetadataInput
218
222
  from rapidata.api_client.models.query_model import QueryModel
219
223
  from rapidata.api_client.models.query_validation_rapids_result import QueryValidationRapidsResult
220
- from rapidata.api_client.models.query_validation_rapids_result_asset import QueryValidationRapidsResultAsset
221
224
  from rapidata.api_client.models.query_validation_rapids_result_paged_result import QueryValidationRapidsResultPagedResult
222
- from rapidata.api_client.models.query_validation_rapids_result_payload import QueryValidationRapidsResultPayload
223
225
  from rapidata.api_client.models.query_workflows_model import QueryWorkflowsModel
224
226
  from rapidata.api_client.models.rapid_issue import RapidIssue
225
227
  from rapidata.api_client.models.rapid_response import RapidResponse
@@ -19,7 +19,7 @@ import json
19
19
 
20
20
  from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictFloat, StrictInt
21
21
  from typing import Any, ClassVar, Dict, List, Optional, Union
22
- from rapidata.api_client.models.add_user_response_result_validation_truth import AddUserResponseResultValidationTruth
22
+ from rapidata.api_client.models.get_validation_rapids_result_truth import GetValidationRapidsResultTruth
23
23
  from rapidata.api_client.models.translated_string import TranslatedString
24
24
  from typing import Optional, Set
25
25
  from typing_extensions import Self
@@ -29,7 +29,7 @@ class AddUserResponseResult(BaseModel):
29
29
  AddUserResponseResult
30
30
  """ # noqa: E501
31
31
  is_accepted: StrictBool = Field(alias="isAccepted")
32
- validation_truth: Optional[AddUserResponseResultValidationTruth] = Field(default=None, alias="validationTruth")
32
+ validation_truth: Optional[GetValidationRapidsResultTruth] = Field(default=None, alias="validationTruth")
33
33
  explanation: Optional[TranslatedString] = None
34
34
  user_score: Union[StrictFloat, StrictInt] = Field(alias="userScore")
35
35
  __properties: ClassVar[List[str]] = ["isAccepted", "validationTruth", "explanation", "userScore"]
@@ -97,7 +97,7 @@ class AddUserResponseResult(BaseModel):
97
97
 
98
98
  _obj = cls.model_validate({
99
99
  "isAccepted": obj.get("isAccepted"),
100
- "validationTruth": AddUserResponseResultValidationTruth.from_dict(obj["validationTruth"]) if obj.get("validationTruth") is not None else None,
100
+ "validationTruth": GetValidationRapidsResultTruth.from_dict(obj["validationTruth"]) if obj.get("validationTruth") is not None else None,
101
101
  "explanation": TranslatedString.from_dict(obj["explanation"]) if obj.get("explanation") is not None else None,
102
102
  "userScore": obj.get("userScore")
103
103
  })
@@ -38,8 +38,8 @@ class CampaignQueryResult(BaseModel):
38
38
  @field_validator('status')
39
39
  def status_validate_enum(cls, value):
40
40
  """Validates the enum"""
41
- if value not in set(['Created', 'Active', 'Paused', 'Preview', 'Completed']):
42
- raise ValueError("must be one of enum values ('Created', 'Active', 'Paused', 'Preview', 'Completed')")
41
+ if value not in set(['Created', 'Preview', 'Active', 'Analysis', 'Paused', 'Completed']):
42
+ raise ValueError("must be one of enum values ('Created', 'Preview', 'Active', 'Analysis', 'Paused', 'Completed')")
43
43
  return value
44
44
 
45
45
  model_config = ConfigDict(
@@ -27,9 +27,10 @@ class CampaignStatus(str, Enum):
27
27
  allowed enum values
28
28
  """
29
29
  CREATED = 'Created'
30
+ PREVIEW = 'Preview'
30
31
  ACTIVE = 'Active'
32
+ ANALYSIS = 'Analysis'
31
33
  PAUSED = 'Paused'
32
- PREVIEW = 'Preview'
33
34
  COMPLETED = 'Completed'
34
35
 
35
36
  @classmethod
@@ -29,7 +29,7 @@ from pydantic import StrictStr, Field
29
29
  from typing import Union, List, Set, Optional, Dict
30
30
  from typing_extensions import Literal, Self
31
31
 
32
- CREATEORDERMODELUSERFILTERSINNER_ONE_OF_SCHEMAS = ["AgeUserFilterModel", "CampaignUserFilterModel", "CountryUserFilterModel", "CustomUserFilterModel", "GenderUserFilterModel", "LanguageUserFilterModel", "NewUserFilterModel", "UserScoreUserFilterModel"]
32
+ CREATEORDERMODELUSERFILTERSINNER_ONE_OF_SCHEMAS = ["AgeUserFilterModel", "CampaignUserFilterModel", "CountryUserFilterModel", "CustomUserFilterModel", "GenderUserFilterModel", "LanguageUserFilterModel", "NewUserFilterModel", "NotUserFilterModel", "OrUserFilterModel", "UserScoreUserFilterModel"]
33
33
 
34
34
  class CreateOrderModelUserFiltersInner(BaseModel):
35
35
  """
@@ -49,10 +49,14 @@ class CreateOrderModelUserFiltersInner(BaseModel):
49
49
  oneof_schema_6_validator: Optional[LanguageUserFilterModel] = None
50
50
  # data type: NewUserFilterModel
51
51
  oneof_schema_7_validator: Optional[NewUserFilterModel] = None
52
+ # data type: NotUserFilterModel
53
+ oneof_schema_8_validator: Optional[NotUserFilterModel] = None
54
+ # data type: OrUserFilterModel
55
+ oneof_schema_9_validator: Optional[OrUserFilterModel] = None
52
56
  # data type: UserScoreUserFilterModel
53
- oneof_schema_8_validator: Optional[UserScoreUserFilterModel] = None
54
- actual_instance: Optional[Union[AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, UserScoreUserFilterModel]] = None
55
- one_of_schemas: Set[str] = { "AgeUserFilterModel", "CampaignUserFilterModel", "CountryUserFilterModel", "CustomUserFilterModel", "GenderUserFilterModel", "LanguageUserFilterModel", "NewUserFilterModel", "UserScoreUserFilterModel" }
57
+ oneof_schema_10_validator: Optional[UserScoreUserFilterModel] = None
58
+ actual_instance: Optional[Union[AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, UserScoreUserFilterModel]] = None
59
+ one_of_schemas: Set[str] = { "AgeUserFilterModel", "CampaignUserFilterModel", "CountryUserFilterModel", "CustomUserFilterModel", "GenderUserFilterModel", "LanguageUserFilterModel", "NewUserFilterModel", "NotUserFilterModel", "OrUserFilterModel", "UserScoreUserFilterModel" }
56
60
 
57
61
  model_config = ConfigDict(
58
62
  validate_assignment=True,
@@ -113,6 +117,16 @@ class CreateOrderModelUserFiltersInner(BaseModel):
113
117
  error_messages.append(f"Error! Input type `{type(v)}` is not `NewUserFilterModel`")
114
118
  else:
115
119
  match += 1
120
+ # validate data type: NotUserFilterModel
121
+ if not isinstance(v, NotUserFilterModel):
122
+ error_messages.append(f"Error! Input type `{type(v)}` is not `NotUserFilterModel`")
123
+ else:
124
+ match += 1
125
+ # validate data type: OrUserFilterModel
126
+ if not isinstance(v, OrUserFilterModel):
127
+ error_messages.append(f"Error! Input type `{type(v)}` is not `OrUserFilterModel`")
128
+ else:
129
+ match += 1
116
130
  # validate data type: UserScoreUserFilterModel
117
131
  if not isinstance(v, UserScoreUserFilterModel):
118
132
  error_messages.append(f"Error! Input type `{type(v)}` is not `UserScoreUserFilterModel`")
@@ -120,10 +134,10 @@ class CreateOrderModelUserFiltersInner(BaseModel):
120
134
  match += 1
121
135
  if match > 1:
122
136
  # more than 1 match
123
- raise ValueError("Multiple matches found when setting `actual_instance` in CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
137
+ raise ValueError("Multiple matches found when setting `actual_instance` in CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
124
138
  elif match == 0:
125
139
  # no match
126
- raise ValueError("No match found when setting `actual_instance` in CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
140
+ raise ValueError("No match found when setting `actual_instance` in CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
127
141
  else:
128
142
  return v
129
143
 
@@ -180,6 +194,18 @@ class CreateOrderModelUserFiltersInner(BaseModel):
180
194
  match += 1
181
195
  except (ValidationError, ValueError) as e:
182
196
  error_messages.append(str(e))
197
+ # deserialize data into NotUserFilterModel
198
+ try:
199
+ instance.actual_instance = NotUserFilterModel.from_json(json_str)
200
+ match += 1
201
+ except (ValidationError, ValueError) as e:
202
+ error_messages.append(str(e))
203
+ # deserialize data into OrUserFilterModel
204
+ try:
205
+ instance.actual_instance = OrUserFilterModel.from_json(json_str)
206
+ match += 1
207
+ except (ValidationError, ValueError) as e:
208
+ error_messages.append(str(e))
183
209
  # deserialize data into UserScoreUserFilterModel
184
210
  try:
185
211
  instance.actual_instance = UserScoreUserFilterModel.from_json(json_str)
@@ -189,10 +215,10 @@ class CreateOrderModelUserFiltersInner(BaseModel):
189
215
 
190
216
  if match > 1:
191
217
  # more than 1 match
192
- raise ValueError("Multiple matches found when deserializing the JSON string into CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
218
+ raise ValueError("Multiple matches found when deserializing the JSON string into CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
193
219
  elif match == 0:
194
220
  # no match
195
- raise ValueError("No match found when deserializing the JSON string into CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
221
+ raise ValueError("No match found when deserializing the JSON string into CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
196
222
  else:
197
223
  return instance
198
224
 
@@ -206,7 +232,7 @@ class CreateOrderModelUserFiltersInner(BaseModel):
206
232
  else:
207
233
  return json.dumps(self.actual_instance)
208
234
 
209
- def to_dict(self) -> Optional[Union[Dict[str, Any], AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, UserScoreUserFilterModel]]:
235
+ def to_dict(self) -> Optional[Union[Dict[str, Any], AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, UserScoreUserFilterModel]]:
210
236
  """Returns the dict representation of the actual instance"""
211
237
  if self.actual_instance is None:
212
238
  return None
@@ -221,4 +247,8 @@ class CreateOrderModelUserFiltersInner(BaseModel):
221
247
  """Returns the string representation of the actual instance"""
222
248
  return pprint.pformat(self.model_dump())
223
249
 
250
+ from rapidata.api_client.models.not_user_filter_model import NotUserFilterModel
251
+ from rapidata.api_client.models.or_user_filter_model import OrUserFilterModel
252
+ # TODO: Rewrite to not use raise_errors
253
+ CreateOrderModelUserFiltersInner.model_rebuild(raise_errors=False)
224
254
 
@@ -20,7 +20,7 @@ import json
20
20
  from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
21
21
  from typing import Any, ClassVar, Dict, List
22
22
  from rapidata.api_client.models.datapoint_asset import DatapointAsset
23
- from rapidata.api_client.models.query_validation_rapids_result_payload import QueryValidationRapidsResultPayload
23
+ from rapidata.api_client.models.get_validation_rapids_result_payload import GetValidationRapidsResultPayload
24
24
  from rapidata.api_client.models.rapid_response import RapidResponse
25
25
  from typing import Optional, Set
26
26
  from typing_extensions import Self
@@ -30,7 +30,7 @@ class GetSimpleWorkflowResultsResult(BaseModel):
30
30
  GetSimpleWorkflowResultsResult
31
31
  """ # noqa: E501
32
32
  rapid_id: StrictStr = Field(alias="rapidId")
33
- payload: QueryValidationRapidsResultPayload
33
+ payload: GetValidationRapidsResultPayload
34
34
  asset: DatapointAsset
35
35
  responses: List[RapidResponse]
36
36
  state: StrictStr
@@ -108,7 +108,7 @@ class GetSimpleWorkflowResultsResult(BaseModel):
108
108
 
109
109
  _obj = cls.model_validate({
110
110
  "rapidId": obj.get("rapidId"),
111
- "payload": QueryValidationRapidsResultPayload.from_dict(obj["payload"]) if obj.get("payload") is not None else None,
111
+ "payload": GetValidationRapidsResultPayload.from_dict(obj["payload"]) if obj.get("payload") is not None else None,
112
112
  "asset": DatapointAsset.from_dict(obj["asset"]) if obj.get("asset") is not None else None,
113
113
  "responses": [RapidResponse.from_dict(_item) for _item in obj["responses"]] if obj.get("responses") is not None else None,
114
114
  "state": obj.get("state")
@@ -0,0 +1,143 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Rapidata.Dataset
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: v1
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, StrictInt, StrictStr
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from rapidata.api_client.models.file_asset_model_metadata_value import FileAssetModelMetadataValue
23
+ from rapidata.api_client.models.get_validation_rapids_result_asset import GetValidationRapidsResultAsset
24
+ from rapidata.api_client.models.get_validation_rapids_result_payload import GetValidationRapidsResultPayload
25
+ from rapidata.api_client.models.get_validation_rapids_result_truth import GetValidationRapidsResultTruth
26
+ from typing import Optional, Set
27
+ from typing_extensions import Self
28
+
29
+ class GetValidationRapidsResult(BaseModel):
30
+ """
31
+ GetValidationRapidsResult
32
+ """ # noqa: E501
33
+ id: StrictStr
34
+ type: StrictStr
35
+ asset: Optional[GetValidationRapidsResultAsset] = None
36
+ truth: Optional[GetValidationRapidsResultTruth] = None
37
+ payload: GetValidationRapidsResultPayload
38
+ metadata: Dict[str, FileAssetModelMetadataValue]
39
+ correct_validation_count: StrictInt = Field(alias="correctValidationCount")
40
+ invalid_validation_count: StrictInt = Field(alias="invalidValidationCount")
41
+ explanation: Optional[StrictStr] = None
42
+ __properties: ClassVar[List[str]] = ["id", "type", "asset", "truth", "payload", "metadata", "correctValidationCount", "invalidValidationCount", "explanation"]
43
+
44
+ model_config = ConfigDict(
45
+ populate_by_name=True,
46
+ validate_assignment=True,
47
+ protected_namespaces=(),
48
+ )
49
+
50
+
51
+ def to_str(self) -> str:
52
+ """Returns the string representation of the model using alias"""
53
+ return pprint.pformat(self.model_dump(by_alias=True))
54
+
55
+ def to_json(self) -> str:
56
+ """Returns the JSON representation of the model using alias"""
57
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
58
+ return json.dumps(self.to_dict())
59
+
60
+ @classmethod
61
+ def from_json(cls, json_str: str) -> Optional[Self]:
62
+ """Create an instance of GetValidationRapidsResult from a JSON string"""
63
+ return cls.from_dict(json.loads(json_str))
64
+
65
+ def to_dict(self) -> Dict[str, Any]:
66
+ """Return the dictionary representation of the model using alias.
67
+
68
+ This has the following differences from calling pydantic's
69
+ `self.model_dump(by_alias=True)`:
70
+
71
+ * `None` is only added to the output dict for nullable fields that
72
+ were set at model initialization. Other fields with value `None`
73
+ are ignored.
74
+ """
75
+ excluded_fields: Set[str] = set([
76
+ ])
77
+
78
+ _dict = self.model_dump(
79
+ by_alias=True,
80
+ exclude=excluded_fields,
81
+ exclude_none=True,
82
+ )
83
+ # override the default output from pydantic by calling `to_dict()` of asset
84
+ if self.asset:
85
+ _dict['asset'] = self.asset.to_dict()
86
+ # override the default output from pydantic by calling `to_dict()` of truth
87
+ if self.truth:
88
+ _dict['truth'] = self.truth.to_dict()
89
+ # override the default output from pydantic by calling `to_dict()` of payload
90
+ if self.payload:
91
+ _dict['payload'] = self.payload.to_dict()
92
+ # override the default output from pydantic by calling `to_dict()` of each value in metadata (dict)
93
+ _field_dict = {}
94
+ if self.metadata:
95
+ for _key_metadata in self.metadata:
96
+ if self.metadata[_key_metadata]:
97
+ _field_dict[_key_metadata] = self.metadata[_key_metadata].to_dict()
98
+ _dict['metadata'] = _field_dict
99
+ # set to None if asset (nullable) is None
100
+ # and model_fields_set contains the field
101
+ if self.asset is None and "asset" in self.model_fields_set:
102
+ _dict['asset'] = None
103
+
104
+ # set to None if truth (nullable) is None
105
+ # and model_fields_set contains the field
106
+ if self.truth is None and "truth" in self.model_fields_set:
107
+ _dict['truth'] = None
108
+
109
+ # set to None if explanation (nullable) is None
110
+ # and model_fields_set contains the field
111
+ if self.explanation is None and "explanation" in self.model_fields_set:
112
+ _dict['explanation'] = None
113
+
114
+ return _dict
115
+
116
+ @classmethod
117
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
118
+ """Create an instance of GetValidationRapidsResult from a dict"""
119
+ if obj is None:
120
+ return None
121
+
122
+ if not isinstance(obj, dict):
123
+ return cls.model_validate(obj)
124
+
125
+ _obj = cls.model_validate({
126
+ "id": obj.get("id"),
127
+ "type": obj.get("type"),
128
+ "asset": GetValidationRapidsResultAsset.from_dict(obj["asset"]) if obj.get("asset") is not None else None,
129
+ "truth": GetValidationRapidsResultTruth.from_dict(obj["truth"]) if obj.get("truth") is not None else None,
130
+ "payload": GetValidationRapidsResultPayload.from_dict(obj["payload"]) if obj.get("payload") is not None else None,
131
+ "metadata": dict(
132
+ (_k, FileAssetModelMetadataValue.from_dict(_v))
133
+ for _k, _v in obj["metadata"].items()
134
+ )
135
+ if obj.get("metadata") is not None
136
+ else None,
137
+ "correctValidationCount": obj.get("correctValidationCount"),
138
+ "invalidValidationCount": obj.get("invalidValidationCount"),
139
+ "explanation": obj.get("explanation")
140
+ })
141
+ return _obj
142
+
143
+
@@ -0,0 +1,174 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Rapidata.Dataset
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: v1
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 json
17
+ import pprint
18
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator
19
+ from typing import Any, List, Optional
20
+ from rapidata.api_client.models.file_asset_model import FileAssetModel
21
+ from rapidata.api_client.models.multi_asset_model import MultiAssetModel
22
+ from rapidata.api_client.models.null_asset_model import NullAssetModel
23
+ from rapidata.api_client.models.text_asset_model import TextAssetModel
24
+ from pydantic import StrictStr, Field
25
+ from typing import Union, List, Set, Optional, Dict
26
+ from typing_extensions import Literal, Self
27
+
28
+ GETVALIDATIONRAPIDSRESULTASSET_ONE_OF_SCHEMAS = ["FileAssetModel", "MultiAssetModel", "NullAssetModel", "TextAssetModel"]
29
+
30
+ class GetValidationRapidsResultAsset(BaseModel):
31
+ """
32
+ GetValidationRapidsResultAsset
33
+ """
34
+ # data type: FileAssetModel
35
+ oneof_schema_1_validator: Optional[FileAssetModel] = None
36
+ # data type: MultiAssetModel
37
+ oneof_schema_2_validator: Optional[MultiAssetModel] = None
38
+ # data type: NullAssetModel
39
+ oneof_schema_3_validator: Optional[NullAssetModel] = None
40
+ # data type: TextAssetModel
41
+ oneof_schema_4_validator: Optional[TextAssetModel] = None
42
+ actual_instance: Optional[Union[FileAssetModel, MultiAssetModel, NullAssetModel, TextAssetModel]] = None
43
+ one_of_schemas: Set[str] = { "FileAssetModel", "MultiAssetModel", "NullAssetModel", "TextAssetModel" }
44
+
45
+ model_config = ConfigDict(
46
+ validate_assignment=True,
47
+ protected_namespaces=(),
48
+ )
49
+
50
+
51
+ discriminator_value_class_map: Dict[str, str] = {
52
+ }
53
+
54
+ def __init__(self, *args, **kwargs) -> None:
55
+ if args:
56
+ if len(args) > 1:
57
+ raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`")
58
+ if kwargs:
59
+ raise ValueError("If a position argument is used, keyword arguments cannot be used.")
60
+ super().__init__(actual_instance=args[0])
61
+ else:
62
+ super().__init__(**kwargs)
63
+
64
+ @field_validator('actual_instance')
65
+ def actual_instance_must_validate_oneof(cls, v):
66
+ if v is None:
67
+ return v
68
+
69
+ instance = GetValidationRapidsResultAsset.model_construct()
70
+ error_messages = []
71
+ match = 0
72
+ # validate data type: FileAssetModel
73
+ if not isinstance(v, FileAssetModel):
74
+ error_messages.append(f"Error! Input type `{type(v)}` is not `FileAssetModel`")
75
+ else:
76
+ match += 1
77
+ # validate data type: MultiAssetModel
78
+ if not isinstance(v, MultiAssetModel):
79
+ error_messages.append(f"Error! Input type `{type(v)}` is not `MultiAssetModel`")
80
+ else:
81
+ match += 1
82
+ # validate data type: NullAssetModel
83
+ if not isinstance(v, NullAssetModel):
84
+ error_messages.append(f"Error! Input type `{type(v)}` is not `NullAssetModel`")
85
+ else:
86
+ match += 1
87
+ # validate data type: TextAssetModel
88
+ if not isinstance(v, TextAssetModel):
89
+ error_messages.append(f"Error! Input type `{type(v)}` is not `TextAssetModel`")
90
+ else:
91
+ match += 1
92
+ if match > 1:
93
+ # more than 1 match
94
+ raise ValueError("Multiple matches found when setting `actual_instance` in GetValidationRapidsResultAsset with oneOf schemas: FileAssetModel, MultiAssetModel, NullAssetModel, TextAssetModel. Details: " + ", ".join(error_messages))
95
+ elif match == 0:
96
+ # no match
97
+ raise ValueError("No match found when setting `actual_instance` in GetValidationRapidsResultAsset with oneOf schemas: FileAssetModel, MultiAssetModel, NullAssetModel, TextAssetModel. Details: " + ", ".join(error_messages))
98
+ else:
99
+ return v
100
+
101
+ @classmethod
102
+ def from_dict(cls, obj: Union[str, Dict[str, Any]]) -> Self:
103
+ return cls.from_json(json.dumps(obj))
104
+
105
+ @classmethod
106
+ def from_json(cls, json_str: Optional[str]) -> Self:
107
+ """Returns the object represented by the json string"""
108
+ instance = cls.model_construct()
109
+ if json_str is None:
110
+ return instance
111
+
112
+ error_messages = []
113
+ match = 0
114
+
115
+ # deserialize data into FileAssetModel
116
+ try:
117
+ instance.actual_instance = FileAssetModel.from_json(json_str)
118
+ match += 1
119
+ except (ValidationError, ValueError) as e:
120
+ error_messages.append(str(e))
121
+ # deserialize data into MultiAssetModel
122
+ try:
123
+ instance.actual_instance = MultiAssetModel.from_json(json_str)
124
+ match += 1
125
+ except (ValidationError, ValueError) as e:
126
+ error_messages.append(str(e))
127
+ # deserialize data into NullAssetModel
128
+ try:
129
+ instance.actual_instance = NullAssetModel.from_json(json_str)
130
+ match += 1
131
+ except (ValidationError, ValueError) as e:
132
+ error_messages.append(str(e))
133
+ # deserialize data into TextAssetModel
134
+ try:
135
+ instance.actual_instance = TextAssetModel.from_json(json_str)
136
+ match += 1
137
+ except (ValidationError, ValueError) as e:
138
+ error_messages.append(str(e))
139
+
140
+ if match > 1:
141
+ # more than 1 match
142
+ raise ValueError("Multiple matches found when deserializing the JSON string into GetValidationRapidsResultAsset with oneOf schemas: FileAssetModel, MultiAssetModel, NullAssetModel, TextAssetModel. Details: " + ", ".join(error_messages))
143
+ elif match == 0:
144
+ # no match
145
+ raise ValueError("No match found when deserializing the JSON string into GetValidationRapidsResultAsset with oneOf schemas: FileAssetModel, MultiAssetModel, NullAssetModel, TextAssetModel. Details: " + ", ".join(error_messages))
146
+ else:
147
+ return instance
148
+
149
+ def to_json(self) -> str:
150
+ """Returns the JSON representation of the actual instance"""
151
+ if self.actual_instance is None:
152
+ return "null"
153
+
154
+ if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json):
155
+ return self.actual_instance.to_json()
156
+ else:
157
+ return json.dumps(self.actual_instance)
158
+
159
+ def to_dict(self) -> Optional[Union[Dict[str, Any], FileAssetModel, MultiAssetModel, NullAssetModel, TextAssetModel]]:
160
+ """Returns the dict representation of the actual instance"""
161
+ if self.actual_instance is None:
162
+ return None
163
+
164
+ if hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict):
165
+ return self.actual_instance.to_dict()
166
+ else:
167
+ # primitive type
168
+ return self.actual_instance
169
+
170
+ def to_str(self) -> str:
171
+ """Returns the string representation of the actual instance"""
172
+ return pprint.pformat(self.model_dump())
173
+
174
+