rapidata 2.21.0__py3-none-any.whl → 2.21.2__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.
- rapidata/api_client/__init__.py +2 -0
- rapidata/api_client/api/feedback_api.py +273 -3
- rapidata/api_client/api/rapid_api.py +0 -270
- rapidata/api_client/api/validation_set_api.py +513 -0
- rapidata/api_client/models/__init__.py +2 -0
- rapidata/api_client/models/add_campaign_model.py +6 -1
- rapidata/api_client/models/compare_result.py +10 -3
- rapidata/api_client/models/comparison_operator.py +41 -0
- rapidata/api_client/models/create_order_model.py +6 -1
- rapidata/api_client/models/create_order_model_user_filters_inner.py +23 -9
- rapidata/api_client/models/report_model.py +9 -4
- rapidata/api_client/models/response_count_user_filter_model.py +107 -0
- rapidata/api_client_README.md +5 -1
- rapidata/rapidata_client/__init__.py +1 -0
- rapidata/rapidata_client/api/__init__.py +0 -0
- rapidata/rapidata_client/api/rapidata_exception.py +105 -0
- rapidata/rapidata_client/filter/__init__.py +1 -0
- rapidata/rapidata_client/filter/response_count_filter.py +46 -0
- rapidata/rapidata_client/validation/rapids/rapids_manager.py +3 -0
- rapidata/service/openapi_service.py +2 -2
- {rapidata-2.21.0.dist-info → rapidata-2.21.2.dist-info}/METADATA +1 -1
- {rapidata-2.21.0.dist-info → rapidata-2.21.2.dist-info}/RECORD +24 -19
- {rapidata-2.21.0.dist-info → rapidata-2.21.2.dist-info}/LICENSE +0 -0
- {rapidata-2.21.0.dist-info → rapidata-2.21.2.dist-info}/WHEEL +0 -0
|
@@ -24,12 +24,13 @@ from rapidata.api_client.models.custom_user_filter_model import CustomUserFilter
|
|
|
24
24
|
from rapidata.api_client.models.gender_user_filter_model import GenderUserFilterModel
|
|
25
25
|
from rapidata.api_client.models.language_user_filter_model import LanguageUserFilterModel
|
|
26
26
|
from rapidata.api_client.models.new_user_filter_model import NewUserFilterModel
|
|
27
|
+
from rapidata.api_client.models.response_count_user_filter_model import ResponseCountUserFilterModel
|
|
27
28
|
from rapidata.api_client.models.user_score_user_filter_model import UserScoreUserFilterModel
|
|
28
29
|
from pydantic import StrictStr, Field
|
|
29
30
|
from typing import Union, List, Set, Optional, Dict
|
|
30
31
|
from typing_extensions import Literal, Self
|
|
31
32
|
|
|
32
|
-
CREATEORDERMODELUSERFILTERSINNER_ONE_OF_SCHEMAS = ["AgeUserFilterModel", "CampaignUserFilterModel", "CountryUserFilterModel", "CustomUserFilterModel", "GenderUserFilterModel", "LanguageUserFilterModel", "NewUserFilterModel", "NotUserFilterModel", "OrUserFilterModel", "UserScoreUserFilterModel"]
|
|
33
|
+
CREATEORDERMODELUSERFILTERSINNER_ONE_OF_SCHEMAS = ["AgeUserFilterModel", "CampaignUserFilterModel", "CountryUserFilterModel", "CustomUserFilterModel", "GenderUserFilterModel", "LanguageUserFilterModel", "NewUserFilterModel", "NotUserFilterModel", "OrUserFilterModel", "ResponseCountUserFilterModel", "UserScoreUserFilterModel"]
|
|
33
34
|
|
|
34
35
|
class CreateOrderModelUserFiltersInner(BaseModel):
|
|
35
36
|
"""
|
|
@@ -53,10 +54,12 @@ class CreateOrderModelUserFiltersInner(BaseModel):
|
|
|
53
54
|
oneof_schema_8_validator: Optional[NotUserFilterModel] = None
|
|
54
55
|
# data type: OrUserFilterModel
|
|
55
56
|
oneof_schema_9_validator: Optional[OrUserFilterModel] = None
|
|
57
|
+
# data type: ResponseCountUserFilterModel
|
|
58
|
+
oneof_schema_10_validator: Optional[ResponseCountUserFilterModel] = None
|
|
56
59
|
# data type: UserScoreUserFilterModel
|
|
57
|
-
|
|
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" }
|
|
60
|
+
oneof_schema_11_validator: Optional[UserScoreUserFilterModel] = None
|
|
61
|
+
actual_instance: Optional[Union[AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, ResponseCountUserFilterModel, UserScoreUserFilterModel]] = None
|
|
62
|
+
one_of_schemas: Set[str] = { "AgeUserFilterModel", "CampaignUserFilterModel", "CountryUserFilterModel", "CustomUserFilterModel", "GenderUserFilterModel", "LanguageUserFilterModel", "NewUserFilterModel", "NotUserFilterModel", "OrUserFilterModel", "ResponseCountUserFilterModel", "UserScoreUserFilterModel" }
|
|
60
63
|
|
|
61
64
|
model_config = ConfigDict(
|
|
62
65
|
validate_assignment=True,
|
|
@@ -127,6 +130,11 @@ class CreateOrderModelUserFiltersInner(BaseModel):
|
|
|
127
130
|
error_messages.append(f"Error! Input type `{type(v)}` is not `OrUserFilterModel`")
|
|
128
131
|
else:
|
|
129
132
|
match += 1
|
|
133
|
+
# validate data type: ResponseCountUserFilterModel
|
|
134
|
+
if not isinstance(v, ResponseCountUserFilterModel):
|
|
135
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `ResponseCountUserFilterModel`")
|
|
136
|
+
else:
|
|
137
|
+
match += 1
|
|
130
138
|
# validate data type: UserScoreUserFilterModel
|
|
131
139
|
if not isinstance(v, UserScoreUserFilterModel):
|
|
132
140
|
error_messages.append(f"Error! Input type `{type(v)}` is not `UserScoreUserFilterModel`")
|
|
@@ -134,10 +142,10 @@ class CreateOrderModelUserFiltersInner(BaseModel):
|
|
|
134
142
|
match += 1
|
|
135
143
|
if match > 1:
|
|
136
144
|
# more than 1 match
|
|
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))
|
|
145
|
+
raise ValueError("Multiple matches found when setting `actual_instance` in CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, ResponseCountUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
|
|
138
146
|
elif match == 0:
|
|
139
147
|
# no match
|
|
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))
|
|
148
|
+
raise ValueError("No match found when setting `actual_instance` in CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, ResponseCountUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
|
|
141
149
|
else:
|
|
142
150
|
return v
|
|
143
151
|
|
|
@@ -206,6 +214,12 @@ class CreateOrderModelUserFiltersInner(BaseModel):
|
|
|
206
214
|
match += 1
|
|
207
215
|
except (ValidationError, ValueError) as e:
|
|
208
216
|
error_messages.append(str(e))
|
|
217
|
+
# deserialize data into ResponseCountUserFilterModel
|
|
218
|
+
try:
|
|
219
|
+
instance.actual_instance = ResponseCountUserFilterModel.from_json(json_str)
|
|
220
|
+
match += 1
|
|
221
|
+
except (ValidationError, ValueError) as e:
|
|
222
|
+
error_messages.append(str(e))
|
|
209
223
|
# deserialize data into UserScoreUserFilterModel
|
|
210
224
|
try:
|
|
211
225
|
instance.actual_instance = UserScoreUserFilterModel.from_json(json_str)
|
|
@@ -215,10 +229,10 @@ class CreateOrderModelUserFiltersInner(BaseModel):
|
|
|
215
229
|
|
|
216
230
|
if match > 1:
|
|
217
231
|
# more than 1 match
|
|
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))
|
|
232
|
+
raise ValueError("Multiple matches found when deserializing the JSON string into CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, ResponseCountUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
|
|
219
233
|
elif match == 0:
|
|
220
234
|
# no match
|
|
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))
|
|
235
|
+
raise ValueError("No match found when deserializing the JSON string into CreateOrderModelUserFiltersInner with oneOf schemas: AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, ResponseCountUserFilterModel, UserScoreUserFilterModel. Details: " + ", ".join(error_messages))
|
|
222
236
|
else:
|
|
223
237
|
return instance
|
|
224
238
|
|
|
@@ -232,7 +246,7 @@ class CreateOrderModelUserFiltersInner(BaseModel):
|
|
|
232
246
|
else:
|
|
233
247
|
return json.dumps(self.actual_instance)
|
|
234
248
|
|
|
235
|
-
def to_dict(self) -> Optional[Union[Dict[str, Any], AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, UserScoreUserFilterModel]]:
|
|
249
|
+
def to_dict(self) -> Optional[Union[Dict[str, Any], AgeUserFilterModel, CampaignUserFilterModel, CountryUserFilterModel, CustomUserFilterModel, GenderUserFilterModel, LanguageUserFilterModel, NewUserFilterModel, NotUserFilterModel, OrUserFilterModel, ResponseCountUserFilterModel, UserScoreUserFilterModel]]:
|
|
236
250
|
"""Returns the dict representation of the actual instance"""
|
|
237
251
|
if self.actual_instance is None:
|
|
238
252
|
return None
|
|
@@ -26,11 +26,11 @@ class ReportModel(BaseModel):
|
|
|
26
26
|
"""
|
|
27
27
|
The model for reporting an issue with a rapid.
|
|
28
28
|
""" # noqa: E501
|
|
29
|
-
rapid_id: Optional[StrictStr] = Field(default=None, description="The rapid an issue was encountered with.", alias="rapidId")
|
|
30
29
|
issue: StrictStr
|
|
31
30
|
message: Optional[StrictStr] = Field(default=None, description="An optional message typed by the user.")
|
|
32
31
|
dump: Optional[StrictStr] = Field(default=None, description="A dump, that the frontend defines and can read again.")
|
|
33
|
-
|
|
32
|
+
source: Optional[StrictStr] = Field(default=None, description="An optional identifier where the report originated from.")
|
|
33
|
+
__properties: ClassVar[List[str]] = ["issue", "message", "dump", "source"]
|
|
34
34
|
|
|
35
35
|
@field_validator('issue')
|
|
36
36
|
def issue_validate_enum(cls, value):
|
|
@@ -88,6 +88,11 @@ class ReportModel(BaseModel):
|
|
|
88
88
|
if self.dump is None and "dump" in self.model_fields_set:
|
|
89
89
|
_dict['dump'] = None
|
|
90
90
|
|
|
91
|
+
# set to None if source (nullable) is None
|
|
92
|
+
# and model_fields_set contains the field
|
|
93
|
+
if self.source is None and "source" in self.model_fields_set:
|
|
94
|
+
_dict['source'] = None
|
|
95
|
+
|
|
91
96
|
return _dict
|
|
92
97
|
|
|
93
98
|
@classmethod
|
|
@@ -100,10 +105,10 @@ class ReportModel(BaseModel):
|
|
|
100
105
|
return cls.model_validate(obj)
|
|
101
106
|
|
|
102
107
|
_obj = cls.model_validate({
|
|
103
|
-
"rapidId": obj.get("rapidId"),
|
|
104
108
|
"issue": obj.get("issue"),
|
|
105
109
|
"message": obj.get("message"),
|
|
106
|
-
"dump": obj.get("dump")
|
|
110
|
+
"dump": obj.get("dump"),
|
|
111
|
+
"source": obj.get("source")
|
|
107
112
|
})
|
|
108
113
|
return _obj
|
|
109
114
|
|
|
@@ -0,0 +1,107 @@
|
|
|
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, field_validator
|
|
21
|
+
from typing import Any, ClassVar, Dict, List
|
|
22
|
+
from typing import Optional, Set
|
|
23
|
+
from typing_extensions import Self
|
|
24
|
+
|
|
25
|
+
class ResponseCountUserFilterModel(BaseModel):
|
|
26
|
+
"""
|
|
27
|
+
ResponseCountUserFilterModel
|
|
28
|
+
""" # noqa: E501
|
|
29
|
+
t: StrictStr = Field(description="Discriminator value for ResponseCountFilter", alias="_t")
|
|
30
|
+
response_count: StrictInt = Field(alias="responseCount")
|
|
31
|
+
dimension: StrictStr
|
|
32
|
+
operator: StrictStr
|
|
33
|
+
__properties: ClassVar[List[str]] = ["_t", "responseCount", "dimension", "operator"]
|
|
34
|
+
|
|
35
|
+
@field_validator('t')
|
|
36
|
+
def t_validate_enum(cls, value):
|
|
37
|
+
"""Validates the enum"""
|
|
38
|
+
if value not in set(['ResponseCountFilter']):
|
|
39
|
+
raise ValueError("must be one of enum values ('ResponseCountFilter')")
|
|
40
|
+
return value
|
|
41
|
+
|
|
42
|
+
@field_validator('operator')
|
|
43
|
+
def operator_validate_enum(cls, value):
|
|
44
|
+
"""Validates the enum"""
|
|
45
|
+
if value not in set(['Equal', 'NotEqual', 'LessThan', 'LessThanOrEqual', 'GreaterThan', 'GreaterThanOrEqual']):
|
|
46
|
+
raise ValueError("must be one of enum values ('Equal', 'NotEqual', 'LessThan', 'LessThanOrEqual', 'GreaterThan', 'GreaterThanOrEqual')")
|
|
47
|
+
return value
|
|
48
|
+
|
|
49
|
+
model_config = ConfigDict(
|
|
50
|
+
populate_by_name=True,
|
|
51
|
+
validate_assignment=True,
|
|
52
|
+
protected_namespaces=(),
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
def to_str(self) -> str:
|
|
57
|
+
"""Returns the string representation of the model using alias"""
|
|
58
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
59
|
+
|
|
60
|
+
def to_json(self) -> str:
|
|
61
|
+
"""Returns the JSON representation of the model using alias"""
|
|
62
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
63
|
+
return json.dumps(self.to_dict())
|
|
64
|
+
|
|
65
|
+
@classmethod
|
|
66
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
67
|
+
"""Create an instance of ResponseCountUserFilterModel from a JSON string"""
|
|
68
|
+
return cls.from_dict(json.loads(json_str))
|
|
69
|
+
|
|
70
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
71
|
+
"""Return the dictionary representation of the model using alias.
|
|
72
|
+
|
|
73
|
+
This has the following differences from calling pydantic's
|
|
74
|
+
`self.model_dump(by_alias=True)`:
|
|
75
|
+
|
|
76
|
+
* `None` is only added to the output dict for nullable fields that
|
|
77
|
+
were set at model initialization. Other fields with value `None`
|
|
78
|
+
are ignored.
|
|
79
|
+
"""
|
|
80
|
+
excluded_fields: Set[str] = set([
|
|
81
|
+
])
|
|
82
|
+
|
|
83
|
+
_dict = self.model_dump(
|
|
84
|
+
by_alias=True,
|
|
85
|
+
exclude=excluded_fields,
|
|
86
|
+
exclude_none=True,
|
|
87
|
+
)
|
|
88
|
+
return _dict
|
|
89
|
+
|
|
90
|
+
@classmethod
|
|
91
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
92
|
+
"""Create an instance of ResponseCountUserFilterModel from a dict"""
|
|
93
|
+
if obj is None:
|
|
94
|
+
return None
|
|
95
|
+
|
|
96
|
+
if not isinstance(obj, dict):
|
|
97
|
+
return cls.model_validate(obj)
|
|
98
|
+
|
|
99
|
+
_obj = cls.model_validate({
|
|
100
|
+
"_t": obj.get("_t") if obj.get("_t") is not None else 'ResponseCountFilter',
|
|
101
|
+
"responseCount": obj.get("responseCount"),
|
|
102
|
+
"dimension": obj.get("dimension"),
|
|
103
|
+
"operator": obj.get("operator")
|
|
104
|
+
})
|
|
105
|
+
return _obj
|
|
106
|
+
|
|
107
|
+
|
rapidata/api_client_README.md
CHANGED
|
@@ -111,6 +111,7 @@ Class | Method | HTTP request | Description
|
|
|
111
111
|
*DatasetApi* | [**dataset_updatename_post**](rapidata/api_client/docs/DatasetApi.md#dataset_updatename_post) | **POST** /dataset/updatename | Updates the name of a dataset.
|
|
112
112
|
*DatasetApi* | [**dataset_uploadfilesfroms3_post**](rapidata/api_client/docs/DatasetApi.md#dataset_uploadfilesfroms3_post) | **POST** /dataset/uploadfilesfroms3 | Uploads files from an S3 bucket to a dataset.
|
|
113
113
|
*FeedbackApi* | [**feedback_feedback_post**](rapidata/api_client/docs/FeedbackApi.md#feedback_feedback_post) | **POST** /feedback/feedback | Submits feedback about our services.
|
|
114
|
+
*FeedbackApi* | [**feedback_post**](rapidata/api_client/docs/FeedbackApi.md#feedback_post) | **POST** /feedback | Submits feedback about our services.
|
|
114
115
|
*IdentityApi* | [**identity_bridge_token_get**](rapidata/api_client/docs/IdentityApi.md#identity_bridge_token_get) | **GET** /identity/bridge-token | Tries to read the bridge token keys for a given read key. The read key is used to retrieve the authentication result written by the write key.
|
|
115
116
|
*IdentityApi* | [**identity_bridge_token_post**](rapidata/api_client/docs/IdentityApi.md#identity_bridge_token_post) | **POST** /identity/bridge-token | Creates a pair of read and write keys for a client. The write key is used to store the authentication result. The read key is used to retrieve the authentication result.
|
|
116
117
|
*IdentityApi* | [**identity_createbridgetoken_post**](rapidata/api_client/docs/IdentityApi.md#identity_createbridgetoken_post) | **POST** /identity/createbridgetoken | Creates a pair of read and write keys for a client. The write key is used to store the authentication result. The read key is used to retrieve the authentication result.
|
|
@@ -177,7 +178,6 @@ Class | Method | HTTP request | Description
|
|
|
177
178
|
*RapidApi* | [**rapid_rapid_id_delete**](rapidata/api_client/docs/RapidApi.md#rapid_rapid_id_delete) | **DELETE** /rapid/{rapidId} | Deletes a rapid.
|
|
178
179
|
*RapidApi* | [**rapid_rapid_id_report_post**](rapidata/api_client/docs/RapidApi.md#rapid_rapid_id_report_post) | **POST** /rapid/{rapidId}/report | Used to report an issue with a rapid.
|
|
179
180
|
*RapidApi* | [**rapid_rapid_id_responses_get**](rapidata/api_client/docs/RapidApi.md#rapid_rapid_id_responses_get) | **GET** /rapid/{rapidId}/responses | Gets all responses for a given rapid.
|
|
180
|
-
*RapidApi* | [**rapid_report_post**](rapidata/api_client/docs/RapidApi.md#rapid_report_post) | **POST** /rapid/report | Used to report an issue with a rapid.
|
|
181
181
|
*RapidApi* | [**rapid_report_report_id_get**](rapidata/api_client/docs/RapidApi.md#rapid_report_report_id_get) | **GET** /rapid/report/{reportId} | Inspects a report's dump. can be used to restore zustand state or anything alike.
|
|
182
182
|
*RapidApi* | [**rapid_response_post**](rapidata/api_client/docs/RapidApi.md#rapid_response_post) | **POST** /rapid/response | Submits a response for a Rapid.
|
|
183
183
|
*RapidApi* | [**rapid_skip_post**](rapidata/api_client/docs/RapidApi.md#rapid_skip_post) | **POST** /rapid/skip | Skips a Rapid for the user.
|
|
@@ -197,7 +197,9 @@ Class | Method | HTTP request | Description
|
|
|
197
197
|
*ValidationSetApi* | [**validation_importcompare_post**](rapidata/api_client/docs/ValidationSetApi.md#validation_importcompare_post) | **POST** /validation/importcompare | Imports a compare validation set from a zip file.
|
|
198
198
|
*ValidationSetApi* | [**validation_queryvalidationsets_get**](rapidata/api_client/docs/ValidationSetApi.md#validation_queryvalidationsets_get) | **GET** /validation/queryvalidationsets | Queries validation sets based on the provided filter, paging and sorting criteria.
|
|
199
199
|
*ValidationSetApi* | [**validation_set_post**](rapidata/api_client/docs/ValidationSetApi.md#validation_set_post) | **POST** /validation-set | Creates a new empty validation set.
|
|
200
|
+
*ValidationSetApi* | [**validation_set_validation_set_id_delete**](rapidata/api_client/docs/ValidationSetApi.md#validation_set_validation_set_id_delete) | **DELETE** /validation-set/{validationSetId} | Gets a validation set by the id.
|
|
200
201
|
*ValidationSetApi* | [**validation_set_validation_set_id_dimensions_put**](rapidata/api_client/docs/ValidationSetApi.md#validation_set_validation_set_id_dimensions_put) | **PUT** /validation-set/{validationSetId}/dimensions | Updates the dimensions of all rapids within a validation set.
|
|
202
|
+
*ValidationSetApi* | [**validation_set_validation_set_id_export_get**](rapidata/api_client/docs/ValidationSetApi.md#validation_set_validation_set_id_export_get) | **GET** /validation-set/{validationSetId}/export | Exports all rapids of a validationset to a file.
|
|
201
203
|
*ValidationSetApi* | [**validation_set_validation_set_id_get**](rapidata/api_client/docs/ValidationSetApi.md#validation_set_validation_set_id_get) | **GET** /validation-set/{validationSetId} | Gets a validation set by the id.
|
|
202
204
|
*ValidationSetApi* | [**validation_set_validation_set_id_rapid_files_post**](rapidata/api_client/docs/ValidationSetApi.md#validation_set_validation_set_id_rapid_files_post) | **POST** /validation-set/{validationSetId}/rapid/files | Adds a new validation rapid to the specified validation set using files to create the assets.
|
|
203
205
|
*ValidationSetApi* | [**validation_set_validation_set_id_rapid_texts_post**](rapidata/api_client/docs/ValidationSetApi.md#validation_set_validation_set_id_rapid_texts_post) | **POST** /validation-set/{validationSetId}/rapid/texts | Adds a new validation rapid to the specified validation set using text sources to create the assets.
|
|
@@ -272,6 +274,7 @@ Class | Method | HTTP request | Description
|
|
|
272
274
|
- [CompareWorkflowModel1PairMakerInformation](rapidata/api_client/docs/CompareWorkflowModel1PairMakerInformation.md)
|
|
273
275
|
- [CompareWorkflowModel1Referee](rapidata/api_client/docs/CompareWorkflowModel1Referee.md)
|
|
274
276
|
- [CompareWorkflowModelPairMakerConfig](rapidata/api_client/docs/CompareWorkflowModelPairMakerConfig.md)
|
|
277
|
+
- [ComparisonOperator](rapidata/api_client/docs/ComparisonOperator.md)
|
|
275
278
|
- [ConditionalValidationSelection](rapidata/api_client/docs/ConditionalValidationSelection.md)
|
|
276
279
|
- [Coordinate](rapidata/api_client/docs/Coordinate.md)
|
|
277
280
|
- [CountClassificationMetadataFilterConfig](rapidata/api_client/docs/CountClassificationMetadataFilterConfig.md)
|
|
@@ -440,6 +443,7 @@ Class | Method | HTTP request | Description
|
|
|
440
443
|
- [RegisterTemporaryCustomerModel](rapidata/api_client/docs/RegisterTemporaryCustomerModel.md)
|
|
441
444
|
- [RegisterTemporaryCustomerResult](rapidata/api_client/docs/RegisterTemporaryCustomerResult.md)
|
|
442
445
|
- [ReportModel](rapidata/api_client/docs/ReportModel.md)
|
|
446
|
+
- [ResponseCountUserFilterModel](rapidata/api_client/docs/ResponseCountUserFilterModel.md)
|
|
443
447
|
- [RootFilter](rapidata/api_client/docs/RootFilter.md)
|
|
444
448
|
- [ScrubPayload](rapidata/api_client/docs/ScrubPayload.md)
|
|
445
449
|
- [ScrubRange](rapidata/api_client/docs/ScrubRange.md)
|
|
File without changes
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
from typing import Optional, Any
|
|
2
|
+
from rapidata.api_client.api_client import ApiClient, rest, ApiResponse, ApiResponseT
|
|
3
|
+
from rapidata.api_client.exceptions import ApiException
|
|
4
|
+
import json
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class RapidataError(Exception):
|
|
8
|
+
"""Custom error class for Rapidata API errors."""
|
|
9
|
+
|
|
10
|
+
def __init__(
|
|
11
|
+
self,
|
|
12
|
+
status_code: Optional[int] = None,
|
|
13
|
+
message: str | None = None,
|
|
14
|
+
original_exception: Exception | None = None,
|
|
15
|
+
details: Any = None
|
|
16
|
+
):
|
|
17
|
+
self.status_code = status_code
|
|
18
|
+
self.message = message
|
|
19
|
+
self.original_exception = original_exception
|
|
20
|
+
self.details = details
|
|
21
|
+
|
|
22
|
+
# Create a nice error message
|
|
23
|
+
error_msg = "Rapidata API Error"
|
|
24
|
+
if status_code:
|
|
25
|
+
error_msg += f" ({status_code})"
|
|
26
|
+
if message:
|
|
27
|
+
error_msg += f": {message}"
|
|
28
|
+
|
|
29
|
+
super().__init__(error_msg)
|
|
30
|
+
|
|
31
|
+
def __str__(self):
|
|
32
|
+
"""Return a string representation of the error."""
|
|
33
|
+
# Extract information from message if available
|
|
34
|
+
title = None
|
|
35
|
+
errors = None
|
|
36
|
+
trace_id = None
|
|
37
|
+
|
|
38
|
+
# Try to extract from details if available and is a dict
|
|
39
|
+
if self.details and isinstance(self.details, dict):
|
|
40
|
+
title = self.details.get('title')
|
|
41
|
+
errors = self.details.get('errors')
|
|
42
|
+
trace_id = self.details.get('traceId')
|
|
43
|
+
|
|
44
|
+
# Build the error string
|
|
45
|
+
error_parts = []
|
|
46
|
+
|
|
47
|
+
# Main error line
|
|
48
|
+
if title:
|
|
49
|
+
error_parts.append(f"{title}")
|
|
50
|
+
else:
|
|
51
|
+
error_parts.append(f"{self.message or 'Unknown error'}")
|
|
52
|
+
|
|
53
|
+
# Reasons
|
|
54
|
+
if errors:
|
|
55
|
+
if isinstance(errors, dict):
|
|
56
|
+
error_parts.append(f"Reasons: {json.dumps({'errors': errors})}")
|
|
57
|
+
else:
|
|
58
|
+
error_parts.append(f"Reasons: {errors}")
|
|
59
|
+
|
|
60
|
+
# Trace ID
|
|
61
|
+
if trace_id:
|
|
62
|
+
error_parts.append(f"Trace Id: {trace_id}")
|
|
63
|
+
else:
|
|
64
|
+
error_parts.append("Trace Id: N/A")
|
|
65
|
+
|
|
66
|
+
return "\n".join(error_parts)
|
|
67
|
+
|
|
68
|
+
class RapidataApiClient(ApiClient):
|
|
69
|
+
"""Custom API client that wraps errors in RapidataError."""
|
|
70
|
+
|
|
71
|
+
def response_deserialize(
|
|
72
|
+
self,
|
|
73
|
+
response_data: rest.RESTResponse,
|
|
74
|
+
response_types_map: Optional[dict[str, ApiResponseT]] = None
|
|
75
|
+
) -> ApiResponse[ApiResponseT]:
|
|
76
|
+
"""Override the response_deserialize method to catch and convert exceptions."""
|
|
77
|
+
try:
|
|
78
|
+
return super().response_deserialize(response_data, response_types_map)
|
|
79
|
+
except ApiException as e:
|
|
80
|
+
status_code = getattr(e, 'status', None)
|
|
81
|
+
message = str(e)
|
|
82
|
+
details = None
|
|
83
|
+
|
|
84
|
+
# Extract more detailed error message from response body if available
|
|
85
|
+
if hasattr(e, 'body') and e.body:
|
|
86
|
+
try:
|
|
87
|
+
body_json = json.loads(e.body)
|
|
88
|
+
if isinstance(body_json, dict):
|
|
89
|
+
if 'message' in body_json:
|
|
90
|
+
message = body_json['message']
|
|
91
|
+
elif 'error' in body_json:
|
|
92
|
+
message = body_json['error']
|
|
93
|
+
|
|
94
|
+
# Store the full error details for debugging
|
|
95
|
+
details = body_json
|
|
96
|
+
except (json.JSONDecodeError, AttributeError):
|
|
97
|
+
# If we can't parse the body as JSON, use the original message
|
|
98
|
+
pass
|
|
99
|
+
|
|
100
|
+
raise RapidataError(
|
|
101
|
+
status_code=status_code,
|
|
102
|
+
message=message,
|
|
103
|
+
original_exception=e,
|
|
104
|
+
details=details
|
|
105
|
+
) from None
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
from typing import Any
|
|
2
|
+
from rapidata.rapidata_client.filter._base_filter import RapidataFilter
|
|
3
|
+
from rapidata.api_client.models.response_count_user_filter_model import (
|
|
4
|
+
ResponseCountUserFilterModel,
|
|
5
|
+
)
|
|
6
|
+
|
|
7
|
+
class ResponseCountFilter(RapidataFilter):
|
|
8
|
+
"""ResponseCountFilter Class
|
|
9
|
+
Can be used to filter users based on the number of responses they have given on validation tasks with the specified dimension.
|
|
10
|
+
|
|
11
|
+
response_count (int): The number of user responses to filter by.
|
|
12
|
+
dimension (str): The dimension to apply the filter on (e.g. "default", "electrical", etc.).
|
|
13
|
+
operator (str): The comparison operator to use. Must be one of:
|
|
14
|
+
- "Equal"
|
|
15
|
+
- "NotEqual"
|
|
16
|
+
- "LessThan"
|
|
17
|
+
- "LessThanOrEqual"
|
|
18
|
+
- "GreaterThan"
|
|
19
|
+
- "GreaterThanOrEqual"
|
|
20
|
+
|
|
21
|
+
Raises:
|
|
22
|
+
ValueError: If `response_count` is not an integer.
|
|
23
|
+
ValueError: If `dimension` is not a string.
|
|
24
|
+
ValueError: If `operator` is not a string or not one of the allowed values.
|
|
25
|
+
|
|
26
|
+
Example:
|
|
27
|
+
```python
|
|
28
|
+
from rapidata import ResponseCountFilter
|
|
29
|
+
|
|
30
|
+
filter = ResponseCountFilter(response_count=10, dimension="electrical", operator="GreaterThan")
|
|
31
|
+
```
|
|
32
|
+
This will filter users who have a response count greater than 10 for the "electrical" dimension.
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
def __init__(self, response_count: int, dimension: str, operator: str):
|
|
36
|
+
if operator not in ["Equal", "NotEqual", "LessThan", "LessThanOrEqual", "GreaterThan", "GreaterThanOrEqual"]:
|
|
37
|
+
raise ValueError("Operator must be one of Equal, NotEqual, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual")
|
|
38
|
+
|
|
39
|
+
self.response_count = response_count
|
|
40
|
+
self.dimension = dimension
|
|
41
|
+
self.operator = operator
|
|
42
|
+
|
|
43
|
+
def _to_model(self):
|
|
44
|
+
return ResponseCountUserFilterModel(
|
|
45
|
+
_t="ResponseCountFilter", responseCount=self.response_count, dimension=self.dimension, operator=self.operator
|
|
46
|
+
)
|
|
@@ -43,6 +43,9 @@ class RapidsManager:
|
|
|
43
43
|
else:
|
|
44
44
|
raise ValueError(f"Unsupported data type: {data_type}")
|
|
45
45
|
|
|
46
|
+
if not isinstance(truths, list):
|
|
47
|
+
raise ValueError("Truths must be a list of strings")
|
|
48
|
+
|
|
46
49
|
if not all(truth in answer_options for truth in truths):
|
|
47
50
|
raise ValueError("Truths must be part of the answer options")
|
|
48
51
|
|
|
@@ -8,9 +8,9 @@ from rapidata.api_client.api.pipeline_api import PipelineApi
|
|
|
8
8
|
from rapidata.api_client.api.rapid_api import RapidApi
|
|
9
9
|
from rapidata.api_client.api.validation_api import ValidationApi
|
|
10
10
|
from rapidata.api_client.api.workflow_api import WorkflowApi
|
|
11
|
-
from rapidata.api_client.api_client import ApiClient
|
|
12
11
|
from rapidata.api_client.configuration import Configuration
|
|
13
12
|
from rapidata.service.credential_manager import CredentialManager
|
|
13
|
+
from rapidata.rapidata_client.api.rapidata_exception import RapidataApiClient
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
class OpenAPIService:
|
|
@@ -36,7 +36,7 @@ class OpenAPIService:
|
|
|
36
36
|
)
|
|
37
37
|
|
|
38
38
|
client_configuration = Configuration(host=endpoint, ssl_ca_cert=cert_path)
|
|
39
|
-
self.api_client =
|
|
39
|
+
self.api_client = RapidataApiClient(
|
|
40
40
|
configuration=client_configuration,
|
|
41
41
|
header_name="X-Client",
|
|
42
42
|
header_value=f"RapidataPythonSDK/{self._get_rapidata_package_version()}",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
rapidata/__init__.py,sha256=-uqhIlYjh1gb4HiE_7ga8pXa2oIFfpYRvyPd6Axx4wo,655
|
|
2
|
-
rapidata/api_client/__init__.py,sha256=
|
|
2
|
+
rapidata/api_client/__init__.py,sha256=CzKRy4Y5N3xTE0pAFkKY8koBmNNQAJEgZDXHVFqmz3g,26599
|
|
3
3
|
rapidata/api_client/api/__init__.py,sha256=z_KCn1Nw9RrVXzdC2RCpoEk7_vU19JT261Opw04RqNI,1129
|
|
4
4
|
rapidata/api_client/api/campaign_api.py,sha256=1ajX0hSnA4O5GacJLIGkAgorPlNDRVaEZY029Pkutl4,71353
|
|
5
5
|
rapidata/api_client/api/client_api.py,sha256=qGiNJHQarNEFNmkrgWeHmlVX96WuDZINozhYaNfiy3c,53357
|
|
@@ -7,27 +7,27 @@ rapidata/api_client/api/coco_api.py,sha256=IdXoawGadGo9FaVUbqxHOGYgNmSLjvvEZczBG
|
|
|
7
7
|
rapidata/api_client/api/compare_workflow_api.py,sha256=BG_cNnR1UO48Jfy2_ZLEcR2mknD0wXbDYKHLNVt4Szw,12833
|
|
8
8
|
rapidata/api_client/api/datapoint_api.py,sha256=TF0pUq98imO4hxDbxuNu86HmgRQnC-m4YI2oNY8tOdo,52596
|
|
9
9
|
rapidata/api_client/api/dataset_api.py,sha256=M-FwzuKrBu-dcZEK0FfcvAGd-lk4DLipntkLsRPwXLI,187066
|
|
10
|
-
rapidata/api_client/api/feedback_api.py,sha256=
|
|
10
|
+
rapidata/api_client/api/feedback_api.py,sha256=efOJOVsdDKXZ8eqIuOR_XsSrrpu_6UihFUDXWZA7Vfo,22342
|
|
11
11
|
rapidata/api_client/api/identity_api.py,sha256=glClYKwEPyGUDY_SWef-8FGjbbui_RIpOeBhwfzTxAk,78117
|
|
12
12
|
rapidata/api_client/api/newsletter_api.py,sha256=pdJ7Gdxw7yKZromzGNhM1hRhzrqm4nDRib5xVvnClME,34230
|
|
13
13
|
rapidata/api_client/api/order_api.py,sha256=aAf6bS4gTdSlDI42wjUMDRw0lYP4L3VQjk7JsZsEqKk,413101
|
|
14
14
|
rapidata/api_client/api/pipeline_api.py,sha256=n4JPczdE01qc1AbIgx9nqJvd7ltdo_LsHX4N_lyLwNs,110546
|
|
15
|
-
rapidata/api_client/api/rapid_api.py,sha256=
|
|
15
|
+
rapidata/api_client/api/rapid_api.py,sha256=rtshrcw9b4lt1ng-0lcAzDN1MfGsQD3GRiica19iTco,162705
|
|
16
16
|
rapidata/api_client/api/rapidata_identity_api_api.py,sha256=-kgoDuLdh-R4MQ7JPi3kQ0WDFKbmI0MkCjxwHXBmksA,9824
|
|
17
17
|
rapidata/api_client/api/simple_workflow_api.py,sha256=676u_J6hIL5u1V0jLuSEkkvHwBQBcpHGSfyd0147x-0,12806
|
|
18
18
|
rapidata/api_client/api/user_info_api.py,sha256=FuuA95Beeky-rnqIoSUe2-WQ7oVTfq0RElX0jfKXT0w,10042
|
|
19
19
|
rapidata/api_client/api/validation_api.py,sha256=XET31snfRc78TJre3jGOlb0bAs8wr82qhRiURiitUaE,98706
|
|
20
|
-
rapidata/api_client/api/validation_set_api.py,sha256=
|
|
20
|
+
rapidata/api_client/api/validation_set_api.py,sha256=p3VeYzM9jIkT8csO3Af5fZmIFRRifDcNIibbs1VmpQQ,234035
|
|
21
21
|
rapidata/api_client/api/workflow_api.py,sha256=a4LSlqk4X08YEKm4pS7wQeK1tK3JPKJ2xW0ye252r7A,98898
|
|
22
22
|
rapidata/api_client/api_client.py,sha256=EDhxAOUc5JFWvFsF1zc726Q7GoEFkuB8uor5SlGx9K4,27503
|
|
23
23
|
rapidata/api_client/api_response.py,sha256=eMxw1mpmJcoGZ3gs9z6jM4oYoZ10Gjk333s9sKxGv7s,652
|
|
24
24
|
rapidata/api_client/configuration.py,sha256=g472vHVPLBotq8EkfSXP4sbp7xnn-3sb8O8BBlRWK1I,15931
|
|
25
25
|
rapidata/api_client/exceptions.py,sha256=eLLd1fxM0Ygf3IIG6aNx9hdy79drst5Cem0UjI_NamM,5978
|
|
26
|
-
rapidata/api_client/models/__init__.py,sha256=
|
|
26
|
+
rapidata/api_client/models/__init__.py,sha256=_e3ZxEpsHvJyQVcbQUgHcVhRPnVZ5UCo-Wiz4HIkjQ0,24929
|
|
27
27
|
rapidata/api_client/models/ab_test_selection.py,sha256=xQcE1BgKSnkTcmIuroeVOAQcAhGkHLlMP9XjakMFgDc,4327
|
|
28
28
|
rapidata/api_client/models/ab_test_selection_a_inner.py,sha256=2sM9nimGo85Fk1k7yZQnp-3ncMXcz_wvYBCR8NG1Sb8,10771
|
|
29
29
|
rapidata/api_client/models/add_campaign_artifact_result.py,sha256=4IvFVS-tLlL6eHsWp-IZ_ul5T30-h3YEwd2B5ioBbgY,2582
|
|
30
|
-
rapidata/api_client/models/add_campaign_model.py,sha256=
|
|
30
|
+
rapidata/api_client/models/add_campaign_model.py,sha256=YuE11VA1uxcSpWwBzAoWzh_K1HlFhftYFNvz08cCkNs,7732
|
|
31
31
|
rapidata/api_client/models/add_campaign_model_user_filters_inner.py,sha256=i7R_ToWdsfkOZechTm_-KE01kucRGvsJ_tVIJWqkGgw,11152
|
|
32
32
|
rapidata/api_client/models/add_user_response_result.py,sha256=gON-mQagMa1gi6fIUFSNLc7R8CozOdx0-nYnRJksL3Y,4015
|
|
33
33
|
rapidata/api_client/models/add_user_response_result_validation_truth.py,sha256=1_BKJKBayJ2h3HspPoMwbCrtG_zzMIy8y_b4RC8r6oM,11916
|
|
@@ -72,7 +72,7 @@ rapidata/api_client/models/clone_order_result.py,sha256=YKZzWptburCz3N9bahiEtWvi
|
|
|
72
72
|
rapidata/api_client/models/compare_match_status.py,sha256=Xq0aeUbe0bI3n76gZOMSEhxp_wxOxrv1AuKzliYBb6o,827
|
|
73
73
|
rapidata/api_client/models/compare_payload.py,sha256=In-lIEGOZVO6DdI5Vfsyu02ykmEoWbe8xVIJL4eaRrg,2944
|
|
74
74
|
rapidata/api_client/models/compare_rapid_blueprint.py,sha256=hCHLGAuZ6yK8Zv09lLqDBsxf-2r28I_PhZs1Lmr-CMw,2980
|
|
75
|
-
rapidata/api_client/models/compare_result.py,sha256=
|
|
75
|
+
rapidata/api_client/models/compare_result.py,sha256=0cDxru1ILElz1wcXPohQqh5jtIPrf1zOXzAel2zh5Q0,3418
|
|
76
76
|
rapidata/api_client/models/compare_truth.py,sha256=1aVg80bn_0Q_ZnuA0uaoQ9wmiQ4GhaGaGQrx4povU0s,2955
|
|
77
77
|
rapidata/api_client/models/compare_workflow_config.py,sha256=Rv94nLBSIdVxMtY2Fz1gmtsK0OF7bz4_BPY2zvH7-U8,5476
|
|
78
78
|
rapidata/api_client/models/compare_workflow_config_metadata_value.py,sha256=ZJ113eW0xUSn-z1bC-_zVYyh7R9L8hZ-HGvqpIJydW8,11512
|
|
@@ -87,6 +87,7 @@ rapidata/api_client/models/compare_workflow_model1.py,sha256=ZRZuZGtB3PHb0LY4u_G
|
|
|
87
87
|
rapidata/api_client/models/compare_workflow_model1_pair_maker_information.py,sha256=zWpfdMZHt9Ktp2Bm7H4R1DLHi5kwoJUtevyol1F5jCc,5048
|
|
88
88
|
rapidata/api_client/models/compare_workflow_model1_referee.py,sha256=opTltLO2arZUUhQSiLOea6_aRT35fLDCnTyPE3GgnJc,6956
|
|
89
89
|
rapidata/api_client/models/compare_workflow_model_pair_maker_config.py,sha256=44eLrMIGsxSj7fiBnTepn2Wiy6GjVu8-moKL-OqH7VA,5045
|
|
90
|
+
rapidata/api_client/models/comparison_operator.py,sha256=pBp_ux9ZO9F93qLVlrucGXWAE5QA5wx5zd0TKVEosmk,919
|
|
90
91
|
rapidata/api_client/models/completed_rapid_model.py,sha256=rOqZYpcM0eYOL-qX162S_OPclUC1P8OZLYZZAsagVE4,3512
|
|
91
92
|
rapidata/api_client/models/completed_rapid_model_asset.py,sha256=zyuzQfn3eucLZBC_vyIzceH4T0Iy5eIilRYV4CFUNNU,7192
|
|
92
93
|
rapidata/api_client/models/conditional_validation_rapid_selection_config.py,sha256=2VFuxKq_QrlG36hB0s67OWfA9y7MgohvJXNga8fhZtc,4285
|
|
@@ -121,10 +122,10 @@ rapidata/api_client/models/create_independent_workflow_model_workflow_config.py,
|
|
|
121
122
|
rapidata/api_client/models/create_independent_workflow_result.py,sha256=JOhS75mAH-VvarvDDFsycahPlIezVKT1upuqIo93hC0,2719
|
|
122
123
|
rapidata/api_client/models/create_legacy_client_model.py,sha256=8LcKnjv3Lq6w28ku6NG6nG9qfxWQnfPow53maGlwNdE,2802
|
|
123
124
|
rapidata/api_client/models/create_legacy_order_result.py,sha256=BR1XqPKq9QkDe0UytTW6dpihAeNyfCc4C1m0XfY53hQ,2672
|
|
124
|
-
rapidata/api_client/models/create_order_model.py,sha256=
|
|
125
|
+
rapidata/api_client/models/create_order_model.py,sha256=DSq4aALcL6KdmJAg5mh6G15WrpxCFcs0AqF9ciX7Yo8,10456
|
|
125
126
|
rapidata/api_client/models/create_order_model_referee.py,sha256=dxQ9SDiBjFIKYjctVNeiuGvjZwzIa0Q8JpW7iRei00I,5748
|
|
126
127
|
rapidata/api_client/models/create_order_model_selections_inner.py,sha256=9p9BJKHN3WhRiu-FwWf421COAxeGmm1KkkyDT7UW5uc,8354
|
|
127
|
-
rapidata/api_client/models/create_order_model_user_filters_inner.py,sha256=
|
|
128
|
+
rapidata/api_client/models/create_order_model_user_filters_inner.py,sha256=o_VLpuU9iWFe6mHDjj731YEGRxLArXnaqUeG8WYejzc,13906
|
|
128
129
|
rapidata/api_client/models/create_order_model_workflow.py,sha256=cy7bD2kWvLkCgFdrViAG63xtYDIdVOn0dD74GRxni_A,6638
|
|
129
130
|
rapidata/api_client/models/create_order_result.py,sha256=zGr4EOKdjfy5SBLvox_iiCwwc7dXOfi70M0WYSZGgH4,3272
|
|
130
131
|
rapidata/api_client/models/create_rapid_result.py,sha256=ECREjyzsTg6leWTF19E-QtqmyaTIeIZzpp_sO9iA4kY,2535
|
|
@@ -326,8 +327,9 @@ rapidata/api_client/models/rapid_state.py,sha256=ef3uvUJ89b-ch0KD11xBipgbaFFy0E9
|
|
|
326
327
|
rapidata/api_client/models/read_bridge_token_keys_result.py,sha256=FG7YLQTGAlQeAxY0sVP3i3J3rm73fKf47iveqJkzVGo,5083
|
|
327
328
|
rapidata/api_client/models/register_temporary_customer_model.py,sha256=E4GPQtiA8FKa7aDUgQmQqOQuKm-CpWBfcRKhKWkMTSg,2643
|
|
328
329
|
rapidata/api_client/models/register_temporary_customer_result.py,sha256=uxMFNwPaQvMp0MziTBbllhFlCfaRlyx6gRAFJfRKl8o,4200
|
|
329
|
-
rapidata/api_client/models/report_model.py,sha256=
|
|
330
|
+
rapidata/api_client/models/report_model.py,sha256=9FhseE1gs7er-d7WualeaIWfn7PI7XAim7M0nW-CKls,4229
|
|
330
331
|
rapidata/api_client/models/request_password_reset_command.py,sha256=6bSYVzN3KNKd5u0Xl0vSjHRKI2uowIavU_wMbmLktvo,3174
|
|
332
|
+
rapidata/api_client/models/response_count_user_filter_model.py,sha256=oKDakECJuzoRk37epPUq_qBipZTMCrUL2ETLFiKR0T0,3650
|
|
331
333
|
rapidata/api_client/models/root_filter.py,sha256=ee1rX_2CSUV7etI1sryrgZU1s85ifKVQ8PhpD6PMzRE,3363
|
|
332
334
|
rapidata/api_client/models/scrub_payload.py,sha256=tX-QU_a8GUQWBPb1GofGLFupucZF5TY2LUpqdyfHDSI,2920
|
|
333
335
|
rapidata/api_client/models/scrub_range.py,sha256=2P__eZ4HeAxWcjFkp-p938Ih8GHf0rJea18sIGxUN0A,2527
|
|
@@ -411,8 +413,10 @@ rapidata/api_client/models/workflow_split_model.py,sha256=zthOSaUl8dbLhLymLK_lrP
|
|
|
411
413
|
rapidata/api_client/models/workflow_split_model_filter_configs_inner.py,sha256=1Fx9uZtztiiAdMXkj7YeCqt7o6VkG9lKf7D7UP_h088,7447
|
|
412
414
|
rapidata/api_client/models/workflow_state.py,sha256=5LAK1se76RCoozeVB6oxMPb8p_5bhLZJqn7q5fFQWis,850
|
|
413
415
|
rapidata/api_client/rest.py,sha256=WTkaOPZhB24TG2mV7Ih5Km76lo2ySQXFjR98nyFIGIM,9013
|
|
414
|
-
rapidata/api_client_README.md,sha256=
|
|
415
|
-
rapidata/rapidata_client/__init__.py,sha256=
|
|
416
|
+
rapidata/api_client_README.md,sha256=XxKjqTKsOlLbAyeUNmJWnQU2Kc7LYOsJLUZ0Q_SEIIo,55005
|
|
417
|
+
rapidata/rapidata_client/__init__.py,sha256=XP9btoeEBcUfLP_4Hi-tqmIsy__L7Q0l4LY1GRQZSKk,974
|
|
418
|
+
rapidata/rapidata_client/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
419
|
+
rapidata/rapidata_client/api/rapidata_exception.py,sha256=pJDMX5Pk1SSkxyt6PE0MCP2PQ13374qsi9SBWJYXbJI,3726
|
|
416
420
|
rapidata/rapidata_client/assets/__init__.py,sha256=hKgrOSn8gJcBSULaf4auYhH1S1N5AfcwIhBSq1BOKwQ,323
|
|
417
421
|
rapidata/rapidata_client/assets/_base_asset.py,sha256=B2YWH1NgaeYUYHDW3OPpHM_bqawHbH4EjnRCE2BYwiM,298
|
|
418
422
|
rapidata/rapidata_client/assets/_media_asset.py,sha256=9IKNKWarBJ-aAxfTjh80ScNsHlWGJnd55fsDbrf8x4s,10336
|
|
@@ -423,7 +427,7 @@ rapidata/rapidata_client/country_codes/__init__.py,sha256=FB9Dcks44J6C6YBSYmTmNZ
|
|
|
423
427
|
rapidata/rapidata_client/country_codes/country_codes.py,sha256=ePHqeb7y9DWQZAnddBzPx1puYBcrgUjdR2sbFijuFD8,283
|
|
424
428
|
rapidata/rapidata_client/demographic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
425
429
|
rapidata/rapidata_client/demographic/demographic_manager.py,sha256=XlgXngx-37Sow2B3jisVIWo6NrMWVI7aJqu9OwF9kCA,2143
|
|
426
|
-
rapidata/rapidata_client/filter/__init__.py,sha256=
|
|
430
|
+
rapidata/rapidata_client/filter/__init__.py,sha256=uHemzncxZrrs3fiKQ-spbNe6EJZ1aWxHIH6DVy2pLUo,471
|
|
427
431
|
rapidata/rapidata_client/filter/_base_filter.py,sha256=ytiSyeb9dvNZf93zwgb4PRDzf9ebsAu4wHBn4x49Re0,195
|
|
428
432
|
rapidata/rapidata_client/filter/age_filter.py,sha256=oRjGY65gE_X8oa0D0XRyvKAb4_Z6XOOaGTWykRSfLFA,739
|
|
429
433
|
rapidata/rapidata_client/filter/campaign_filter.py,sha256=6ZT11-gub8349QcRwuHt8AcBY18F7BdLRZ2Ch_vjLyU,735
|
|
@@ -437,6 +441,7 @@ rapidata/rapidata_client/filter/models/gender.py,sha256=aXg6Kql2BIy8d5d1lCVi1axM
|
|
|
437
441
|
rapidata/rapidata_client/filter/not_filter.py,sha256=I7crEyOCs53uS0VI48s9EqC6PAFfV9EZG3upwFBJwZo,1189
|
|
438
442
|
rapidata/rapidata_client/filter/or_filter.py,sha256=u6vkXMTG_j15SbY3bkbnXbxJMDgEsH5rdoFLbuoLQmo,1345
|
|
439
443
|
rapidata/rapidata_client/filter/rapidata_filters.py,sha256=ZOayFtIlACfegZSoA94YFZ-fJmqr5Pf161Z_IjiZWPg,1559
|
|
444
|
+
rapidata/rapidata_client/filter/response_count_filter.py,sha256=sDv9Dvy0FbnIQRSAxFGrUf9SIMISTNxnlAQcrFKBjXE,1989
|
|
440
445
|
rapidata/rapidata_client/filter/user_score_filter.py,sha256=2C78zkWm5TnfkxGbV1ER2xB7s9ynpacaibzyRZKG8Cc,1566
|
|
441
446
|
rapidata/rapidata_client/metadata/__init__.py,sha256=cVAGs3F1i5BiimZ9m-aVXAiVyfqLMtSn59nqfRFmIxs,248
|
|
442
447
|
rapidata/rapidata_client/metadata/_base_metadata.py,sha256=t2kFqaz5BkEaYYj93Pw3h7zWVDq_S5ZkDxjDIRd21_I,189
|
|
@@ -482,7 +487,7 @@ rapidata/rapidata_client/validation/rapidata_validation_set.py,sha256=GaatGGuJCH
|
|
|
482
487
|
rapidata/rapidata_client/validation/rapids/__init__.py,sha256=WU5PPwtTJlte6U90MDakzx4I8Y0laj7siw9teeXj5R0,21
|
|
483
488
|
rapidata/rapidata_client/validation/rapids/box.py,sha256=t3_Kn6doKXdnJdtbwefXnYKPiTKHneJl9E2inkDSqL8,589
|
|
484
489
|
rapidata/rapidata_client/validation/rapids/rapids.py,sha256=uCKnoSn1RykNHgTFbrvCFlfzU8lF42cff-2I-Pd48w0,4620
|
|
485
|
-
rapidata/rapidata_client/validation/rapids/rapids_manager.py,sha256=
|
|
490
|
+
rapidata/rapidata_client/validation/rapids/rapids_manager.py,sha256=s5VAq8H5CKACWfmIQuz9kHC8t2nd-xEHGGUj9pIfXKI,14386
|
|
486
491
|
rapidata/rapidata_client/validation/validation_set_manager.py,sha256=GCFDyruCz6EIN67cc2fwRjzirUoGfs3KLTIg7n6wXbI,26722
|
|
487
492
|
rapidata/rapidata_client/workflow/__init__.py,sha256=7nXcY91xkxjHudBc9H0fP35eBBtgwHGWTQKbb-M4h7Y,477
|
|
488
493
|
rapidata/rapidata_client/workflow/_base_workflow.py,sha256=XyIZFKS_RxAuwIHS848S3AyLEHqd07oTD_5jm2oUbsw,762
|
|
@@ -498,8 +503,8 @@ rapidata/rapidata_client/workflow/_timestamp_workflow.py,sha256=tPi2zu1-SlE_ppbG
|
|
|
498
503
|
rapidata/service/__init__.py,sha256=s9bS1AJZaWIhLtJX_ZA40_CK39rAAkwdAmymTMbeWl4,68
|
|
499
504
|
rapidata/service/credential_manager.py,sha256=3x-Fb6tyqmgtpjI1MSOtXWW_SkzTK8Lo7I0SSL2YD7E,8602
|
|
500
505
|
rapidata/service/local_file_service.py,sha256=pgorvlWcx52Uh3cEG6VrdMK_t__7dacQ_5AnfY14BW8,877
|
|
501
|
-
rapidata/service/openapi_service.py,sha256=
|
|
502
|
-
rapidata-2.21.
|
|
503
|
-
rapidata-2.21.
|
|
504
|
-
rapidata-2.21.
|
|
505
|
-
rapidata-2.21.
|
|
506
|
+
rapidata/service/openapi_service.py,sha256=nh7gAmNRdZ5qu3sG7khi-pZmXhfg5u8KHdmEDQd_z9U,4075
|
|
507
|
+
rapidata-2.21.2.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
508
|
+
rapidata-2.21.2.dist-info/METADATA,sha256=npRKolQ9iiiUYn9FbocwGWJCWYzjMTS9DJJOTLNR1Oc,1227
|
|
509
|
+
rapidata-2.21.2.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
|
|
510
|
+
rapidata-2.21.2.dist-info/RECORD,,
|
|
File without changes
|