rapidata 0.4.1__py3-none-any.whl → 0.5.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. rapidata/__init__.py +4 -3
  2. rapidata/api_client/__init__.py +22 -12
  3. rapidata/api_client/api/__init__.py +2 -0
  4. rapidata/api_client/api/campaign_api.py +1044 -0
  5. rapidata/api_client/api/order_api.py +0 -556
  6. rapidata/api_client/api/pipeline_api.py +843 -0
  7. rapidata/api_client/models/__init__.py +20 -12
  8. rapidata/api_client/models/add_campaign_artifact_result.py +87 -0
  9. rapidata/api_client/models/add_campaign_model.py +149 -0
  10. rapidata/api_client/models/campaign_artifact_model.py +98 -0
  11. rapidata/api_client/models/campaign_query_model.py +105 -0
  12. rapidata/api_client/models/campaign_query_model_paged_result.py +105 -0
  13. rapidata/api_client/models/campaign_status.py +39 -0
  14. rapidata/api_client/models/compare_workflow_config.py +2 -12
  15. rapidata/api_client/models/compare_workflow_config_model.py +138 -0
  16. rapidata/api_client/models/conditional_validation_selection.py +106 -0
  17. rapidata/api_client/models/create_order_model_selections_inner.py +26 -12
  18. rapidata/api_client/models/dataset_artifact_model.py +98 -0
  19. rapidata/api_client/models/demographic_rapid_selection_config.py +7 -5
  20. rapidata/api_client/models/demographic_selection.py +7 -5
  21. rapidata/api_client/models/file_artifact_model.py +98 -0
  22. rapidata/api_client/models/get_pipeline_by_id_result.py +100 -0
  23. rapidata/api_client/models/get_pipeline_by_id_result_artifacts_value.py +182 -0
  24. rapidata/api_client/models/query_campaigns_model.py +112 -0
  25. rapidata/api_client/models/simple_workflow_config.py +2 -12
  26. rapidata/api_client/models/simple_workflow_config_model.py +132 -0
  27. rapidata/api_client/models/simple_workflow_config_model_blueprint.py +238 -0
  28. rapidata/api_client/models/update_workflow_config_request.py +107 -0
  29. rapidata/api_client/models/update_workflow_config_request_config.py +140 -0
  30. rapidata/api_client/models/workflow_artifact_model.py +98 -0
  31. rapidata/api_client/models/workflow_config_artifact_model.py +102 -0
  32. rapidata/api_client/models/workflow_config_artifact_model_workflow_config.py +140 -0
  33. rapidata/api_client_README.md +31 -21
  34. rapidata/rapidata_client/__init__.py +6 -1
  35. rapidata/rapidata_client/selection/__init__.py +1 -0
  36. rapidata/rapidata_client/selection/conditional_validation_rapid_selection.py +41 -0
  37. rapidata/rapidata_client/selection/demographic_selection.py +3 -5
  38. {rapidata-0.4.1.dist-info → rapidata-0.5.0.dist-info}/METADATA +1 -1
  39. {rapidata-0.4.1.dist-info → rapidata-0.5.0.dist-info}/RECORD +41 -18
  40. {rapidata-0.4.1.dist-info → rapidata-0.5.0.dist-info}/LICENSE +0 -0
  41. {rapidata-0.4.1.dist-info → rapidata-0.5.0.dist-info}/WHEEL +0 -0
@@ -14,6 +14,8 @@
14
14
 
15
15
 
16
16
  # import models into model package
17
+ from rapidata.api_client.models.add_campaign_artifact_result import AddCampaignArtifactResult
18
+ from rapidata.api_client.models.add_campaign_model import AddCampaignModel
17
19
  from rapidata.api_client.models.add_validation_rapid_model import AddValidationRapidModel
18
20
  from rapidata.api_client.models.add_validation_rapid_model_payload import AddValidationRapidModelPayload
19
21
  from rapidata.api_client.models.add_validation_rapid_model_truth import AddValidationRapidModelTruth
@@ -32,6 +34,10 @@ from rapidata.api_client.models.bounding_box_rapid_blueprint import BoundingBoxR
32
34
  from rapidata.api_client.models.bounding_box_result import BoundingBoxResult
33
35
  from rapidata.api_client.models.bounding_box_truth import BoundingBoxTruth
34
36
  from rapidata.api_client.models.box_shape import BoxShape
37
+ from rapidata.api_client.models.campaign_artifact_model import CampaignArtifactModel
38
+ from rapidata.api_client.models.campaign_query_model import CampaignQueryModel
39
+ from rapidata.api_client.models.campaign_query_model_paged_result import CampaignQueryModelPagedResult
40
+ from rapidata.api_client.models.campaign_status import CampaignStatus
35
41
  from rapidata.api_client.models.campaign_user_filter_model import CampaignUserFilterModel
36
42
  from rapidata.api_client.models.classification_metadata import ClassificationMetadata
37
43
  from rapidata.api_client.models.classification_metadata_filter_config import ClassificationMetadataFilterConfig
@@ -44,15 +50,14 @@ from rapidata.api_client.models.compare_rapid_blueprint import CompareRapidBluep
44
50
  from rapidata.api_client.models.compare_result import CompareResult
45
51
  from rapidata.api_client.models.compare_truth import CompareTruth
46
52
  from rapidata.api_client.models.compare_workflow_config import CompareWorkflowConfig
47
- from rapidata.api_client.models.compare_workflow_config_rapid_selection_configs_inner import CompareWorkflowConfigRapidSelectionConfigsInner
53
+ from rapidata.api_client.models.compare_workflow_config_model import CompareWorkflowConfigModel
48
54
  from rapidata.api_client.models.compare_workflow_config_referee import CompareWorkflowConfigReferee
49
55
  from rapidata.api_client.models.compare_workflow_get_result_overview_get200_response import CompareWorkflowGetResultOverviewGet200Response
50
56
  from rapidata.api_client.models.compare_workflow_model import CompareWorkflowModel
51
57
  from rapidata.api_client.models.compare_workflow_model1 import CompareWorkflowModel1
52
58
  from rapidata.api_client.models.completed_rapid_model import CompletedRapidModel
53
- from rapidata.api_client.models.conditional_validation_rapid_selection_config import ConditionalValidationRapidSelectionConfig
59
+ from rapidata.api_client.models.conditional_validation_selection import ConditionalValidationSelection
54
60
  from rapidata.api_client.models.coordinate import Coordinate
55
- from rapidata.api_client.models.correlated_rapid_selection_config import CorrelatedRapidSelectionConfig
56
61
  from rapidata.api_client.models.count_classification_metadata_filter_config import CountClassificationMetadataFilterConfig
57
62
  from rapidata.api_client.models.count_metadata import CountMetadata
58
63
  from rapidata.api_client.models.country_user_filter_model import CountryUserFilterModel
@@ -86,8 +91,8 @@ from rapidata.api_client.models.datapoint_metadata_model import DatapointMetadat
86
91
  from rapidata.api_client.models.datapoint_metadata_model_metadata_inner import DatapointMetadataModelMetadataInner
87
92
  from rapidata.api_client.models.datapoint_model import DatapointModel
88
93
  from rapidata.api_client.models.datapoint_model_asset import DatapointModelAsset
94
+ from rapidata.api_client.models.dataset_artifact_model import DatasetArtifactModel
89
95
  from rapidata.api_client.models.dataset_evaluation_step_model import DatasetEvaluationStepModel
90
- from rapidata.api_client.models.demographic_rapid_selection_config import DemographicRapidSelectionConfig
91
96
  from rapidata.api_client.models.demographic_selection import DemographicSelection
92
97
  from rapidata.api_client.models.early_stopping_referee_model import EarlyStoppingRefereeModel
93
98
  from rapidata.api_client.models.empty_validation_truth import EmptyValidationTruth
@@ -95,6 +100,7 @@ from rapidata.api_client.models.error_type import ErrorType
95
100
  from rapidata.api_client.models.feature_flag import FeatureFlag
96
101
  from rapidata.api_client.models.feature_flag_model import FeatureFlagModel
97
102
  from rapidata.api_client.models.feedback_model import FeedbackModel
103
+ from rapidata.api_client.models.file_artifact_model import FileArtifactModel
98
104
  from rapidata.api_client.models.file_asset import FileAsset
99
105
  from rapidata.api_client.models.file_asset_metadata_inner import FileAssetMetadataInner
100
106
  from rapidata.api_client.models.file_asset_model import FileAssetModel
@@ -113,12 +119,12 @@ from rapidata.api_client.models.get_datapoints_by_dataset_id_result import GetDa
113
119
  from rapidata.api_client.models.get_dataset_by_id_result import GetDatasetByIdResult
114
120
  from rapidata.api_client.models.get_order_by_id_result import GetOrderByIdResult
115
121
  from rapidata.api_client.models.get_order_results_result import GetOrderResultsResult
122
+ from rapidata.api_client.models.get_pipeline_by_id_result import GetPipelineByIdResult
123
+ from rapidata.api_client.models.get_pipeline_by_id_result_artifacts_value import GetPipelineByIdResultArtifactsValue
116
124
  from rapidata.api_client.models.get_public_orders_result import GetPublicOrdersResult
117
125
  from rapidata.api_client.models.get_simple_workflow_result_overview_result import GetSimpleWorkflowResultOverviewResult
118
126
  from rapidata.api_client.models.get_workflow_by_id_result import GetWorkflowByIdResult
119
127
  from rapidata.api_client.models.get_workflow_by_id_result_workflow import GetWorkflowByIdResultWorkflow
120
- from rapidata.api_client.models.get_workflow_config_result import GetWorkflowConfigResult
121
- from rapidata.api_client.models.get_workflow_config_result_workflow_config import GetWorkflowConfigResultWorkflowConfig
122
128
  from rapidata.api_client.models.get_workflow_progress_result import GetWorkflowProgressResult
123
129
  from rapidata.api_client.models.get_workflow_result_overview_result import GetWorkflowResultOverviewResult
124
130
  from rapidata.api_client.models.i_workflow_model_paged_result import IWorkflowModelPagedResult
@@ -157,11 +163,9 @@ from rapidata.api_client.models.named_entity_result import NamedEntityResult
157
163
  from rapidata.api_client.models.named_entity_truth import NamedEntityTruth
158
164
  from rapidata.api_client.models.never_ending_referee_config import NeverEndingRefereeConfig
159
165
  from rapidata.api_client.models.newsletter_model import NewsletterModel
160
- from rapidata.api_client.models.no_validation_workflow_rapid_selection_config import NoValidationWorkflowRapidSelectionConfig
161
166
  from rapidata.api_client.models.not_started_rapid_model import NotStartedRapidModel
162
167
  from rapidata.api_client.models.null_asset import NullAsset
163
168
  from rapidata.api_client.models.null_asset_model import NullAssetModel
164
- from rapidata.api_client.models.only_validation_workflow_rapid_selection_config import OnlyValidationWorkflowRapidSelectionConfig
165
169
  from rapidata.api_client.models.order_model import OrderModel
166
170
  from rapidata.api_client.models.order_query_get200_response import OrderQueryGet200Response
167
171
  from rapidata.api_client.models.order_state import OrderState
@@ -176,6 +180,7 @@ from rapidata.api_client.models.probabilistic_attach_category_referee_config imp
176
180
  from rapidata.api_client.models.prompt_metadata import PromptMetadata
177
181
  from rapidata.api_client.models.prompt_metadata_input import PromptMetadataInput
178
182
  from rapidata.api_client.models.public_text_metadata_input import PublicTextMetadataInput
183
+ from rapidata.api_client.models.query_campaigns_model import QueryCampaignsModel
179
184
  from rapidata.api_client.models.query_model import QueryModel
180
185
  from rapidata.api_client.models.query_orders_model import QueryOrdersModel
181
186
  from rapidata.api_client.models.query_validation_rapids_result import QueryValidationRapidsResult
@@ -197,6 +202,8 @@ from rapidata.api_client.models.signup_customer_model import SignupCustomerModel
197
202
  from rapidata.api_client.models.signup_shadow_customer_model import SignupShadowCustomerModel
198
203
  from rapidata.api_client.models.simple_workflow_config import SimpleWorkflowConfig
199
204
  from rapidata.api_client.models.simple_workflow_config_blueprint import SimpleWorkflowConfigBlueprint
205
+ from rapidata.api_client.models.simple_workflow_config_model import SimpleWorkflowConfigModel
206
+ from rapidata.api_client.models.simple_workflow_config_model_blueprint import SimpleWorkflowConfigModelBlueprint
200
207
  from rapidata.api_client.models.simple_workflow_get_result_overview_get200_response import SimpleWorkflowGetResultOverviewGet200Response
201
208
  from rapidata.api_client.models.simple_workflow_model import SimpleWorkflowModel
202
209
  from rapidata.api_client.models.simple_workflow_model1 import SimpleWorkflowModel1
@@ -204,7 +211,6 @@ from rapidata.api_client.models.simple_workflow_model_blueprint import SimpleWor
204
211
  from rapidata.api_client.models.skip_result import SkipResult
205
212
  from rapidata.api_client.models.sort_criterion import SortCriterion
206
213
  from rapidata.api_client.models.sort_direction import SortDirection
207
- from rapidata.api_client.models.static_rapid_selection_config import StaticRapidSelectionConfig
208
214
  from rapidata.api_client.models.static_selection import StaticSelection
209
215
  from rapidata.api_client.models.submit_coco_model import SubmitCocoModel
210
216
  from rapidata.api_client.models.submit_coco_result import SubmitCocoResult
@@ -222,8 +228,8 @@ from rapidata.api_client.models.transcription_word import TranscriptionWord
222
228
  from rapidata.api_client.models.unlock_order_result import UnlockOrderResult
223
229
  from rapidata.api_client.models.update_access_model import UpdateAccessModel
224
230
  from rapidata.api_client.models.update_order_model import UpdateOrderModel
225
- from rapidata.api_client.models.update_workflow_config_model import UpdateWorkflowConfigModel
226
- from rapidata.api_client.models.update_workflow_config_model_workflow_config import UpdateWorkflowConfigModelWorkflowConfig
231
+ from rapidata.api_client.models.update_workflow_config_request import UpdateWorkflowConfigRequest
232
+ from rapidata.api_client.models.update_workflow_config_request_config import UpdateWorkflowConfigRequestConfig
227
233
  from rapidata.api_client.models.upload_coco_result import UploadCocoResult
228
234
  from rapidata.api_client.models.upload_datapoints_result import UploadDatapointsResult
229
235
  from rapidata.api_client.models.upload_files_from_s3_bucket_model import UploadFilesFromS3BucketModel
@@ -231,12 +237,14 @@ from rapidata.api_client.models.upload_text_sources_to_dataset_model import Uplo
231
237
  from rapidata.api_client.models.user_score_user_filter_model import UserScoreUserFilterModel
232
238
  from rapidata.api_client.models.validation_chance import ValidationChance
233
239
  from rapidata.api_client.models.validation_import_post_request_blueprint import ValidationImportPostRequestBlueprint
234
- from rapidata.api_client.models.validation_rapid_selection_config import ValidationRapidSelectionConfig
235
240
  from rapidata.api_client.models.validation_selection import ValidationSelection
236
241
  from rapidata.api_client.models.validation_set import ValidationSet
237
242
  from rapidata.api_client.models.validation_set_overview_model import ValidationSetOverviewModel
238
243
  from rapidata.api_client.models.validation_set_paged_result import ValidationSetPagedResult
239
244
  from rapidata.api_client.models.workflow_aggregation_step_model import WorkflowAggregationStepModel
245
+ from rapidata.api_client.models.workflow_artifact_model import WorkflowArtifactModel
246
+ from rapidata.api_client.models.workflow_config_artifact_model import WorkflowConfigArtifactModel
247
+ from rapidata.api_client.models.workflow_config_artifact_model_workflow_config import WorkflowConfigArtifactModelWorkflowConfig
240
248
  from rapidata.api_client.models.workflow_labeling_step_model import WorkflowLabelingStepModel
241
249
  from rapidata.api_client.models.workflow_split_model import WorkflowSplitModel
242
250
  from rapidata.api_client.models.workflow_split_model_filter_configs_inner import WorkflowSplitModelFilterConfigsInner
@@ -0,0 +1,87 @@
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, StrictStr
21
+ from typing import Any, ClassVar, Dict, List
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
24
+
25
+ class AddCampaignArtifactResult(BaseModel):
26
+ """
27
+ AddCampaignArtifactResult
28
+ """ # noqa: E501
29
+ campaign_id: StrictStr = Field(alias="campaignId")
30
+ __properties: ClassVar[List[str]] = ["campaignId"]
31
+
32
+ model_config = ConfigDict(
33
+ populate_by_name=True,
34
+ validate_assignment=True,
35
+ protected_namespaces=(),
36
+ )
37
+
38
+
39
+ def to_str(self) -> str:
40
+ """Returns the string representation of the model using alias"""
41
+ return pprint.pformat(self.model_dump(by_alias=True))
42
+
43
+ def to_json(self) -> str:
44
+ """Returns the JSON representation of the model using alias"""
45
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
46
+ return json.dumps(self.to_dict())
47
+
48
+ @classmethod
49
+ def from_json(cls, json_str: str) -> Optional[Self]:
50
+ """Create an instance of AddCampaignArtifactResult 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 AddCampaignArtifactResult 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
+ "campaignId": obj.get("campaignId")
84
+ })
85
+ return _obj
86
+
87
+
@@ -0,0 +1,149 @@
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, Optional
22
+ from rapidata.api_client.models.create_order_model_selections_inner import CreateOrderModelSelectionsInner
23
+ from rapidata.api_client.models.create_order_model_user_filters_inner import CreateOrderModelUserFiltersInner
24
+ from rapidata.api_client.models.feature_flag import FeatureFlag
25
+ from typing import Optional, Set
26
+ from typing_extensions import Self
27
+
28
+ class AddCampaignModel(BaseModel):
29
+ """
30
+ The model for adding a campaign to an existing pipeline.
31
+ """ # noqa: E501
32
+ t: StrictStr = Field(description="Discriminator value for AddCampaignModel", alias="_t")
33
+ pipeline_id: StrictStr = Field(description="The pipeline the campaign should belong to.", alias="pipelineId")
34
+ artifact_id: Optional[StrictStr] = Field(default=None, description="The id of the campaign artifact. If not provided a random value will be used.", alias="artifactId")
35
+ campaign_name: StrictStr = Field(description="The name of the campaign.", alias="campaignName")
36
+ user_filters: List[CreateOrderModelUserFiltersInner] = Field(description="The user filters to apply to the campaign.", alias="userFilters")
37
+ validation_set_id: Optional[StrictStr] = Field(default=None, description="A validation set that should be used.", alias="validationSetId")
38
+ selections: Optional[List[CreateOrderModelSelectionsInner]] = Field(description="The selections that the campaign should have.")
39
+ feature_flags: List[FeatureFlag] = Field(description="The feature flags that should be applied to the campaign.", alias="featureFlags")
40
+ priority: StrictInt = Field(description="The priority of the campaign.")
41
+ __properties: ClassVar[List[str]] = ["_t", "pipelineId", "artifactId", "campaignName", "userFilters", "validationSetId", "selections", "featureFlags", "priority"]
42
+
43
+ @field_validator('t')
44
+ def t_validate_enum(cls, value):
45
+ """Validates the enum"""
46
+ if value not in set(['AddCampaignModel']):
47
+ raise ValueError("must be one of enum values ('AddCampaignModel')")
48
+ return value
49
+
50
+ model_config = ConfigDict(
51
+ populate_by_name=True,
52
+ validate_assignment=True,
53
+ protected_namespaces=(),
54
+ )
55
+
56
+
57
+ def to_str(self) -> str:
58
+ """Returns the string representation of the model using alias"""
59
+ return pprint.pformat(self.model_dump(by_alias=True))
60
+
61
+ def to_json(self) -> str:
62
+ """Returns the JSON representation of the model using alias"""
63
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
64
+ return json.dumps(self.to_dict())
65
+
66
+ @classmethod
67
+ def from_json(cls, json_str: str) -> Optional[Self]:
68
+ """Create an instance of AddCampaignModel from a JSON string"""
69
+ return cls.from_dict(json.loads(json_str))
70
+
71
+ def to_dict(self) -> Dict[str, Any]:
72
+ """Return the dictionary representation of the model using alias.
73
+
74
+ This has the following differences from calling pydantic's
75
+ `self.model_dump(by_alias=True)`:
76
+
77
+ * `None` is only added to the output dict for nullable fields that
78
+ were set at model initialization. Other fields with value `None`
79
+ are ignored.
80
+ """
81
+ excluded_fields: Set[str] = set([
82
+ ])
83
+
84
+ _dict = self.model_dump(
85
+ by_alias=True,
86
+ exclude=excluded_fields,
87
+ exclude_none=True,
88
+ )
89
+ # override the default output from pydantic by calling `to_dict()` of each item in user_filters (list)
90
+ _items = []
91
+ if self.user_filters:
92
+ for _item_user_filters in self.user_filters:
93
+ if _item_user_filters:
94
+ _items.append(_item_user_filters.to_dict())
95
+ _dict['userFilters'] = _items
96
+ # override the default output from pydantic by calling `to_dict()` of each item in selections (list)
97
+ _items = []
98
+ if self.selections:
99
+ for _item_selections in self.selections:
100
+ if _item_selections:
101
+ _items.append(_item_selections.to_dict())
102
+ _dict['selections'] = _items
103
+ # override the default output from pydantic by calling `to_dict()` of each item in feature_flags (list)
104
+ _items = []
105
+ if self.feature_flags:
106
+ for _item_feature_flags in self.feature_flags:
107
+ if _item_feature_flags:
108
+ _items.append(_item_feature_flags.to_dict())
109
+ _dict['featureFlags'] = _items
110
+ # set to None if artifact_id (nullable) is None
111
+ # and model_fields_set contains the field
112
+ if self.artifact_id is None and "artifact_id" in self.model_fields_set:
113
+ _dict['artifactId'] = None
114
+
115
+ # set to None if validation_set_id (nullable) is None
116
+ # and model_fields_set contains the field
117
+ if self.validation_set_id is None and "validation_set_id" in self.model_fields_set:
118
+ _dict['validationSetId'] = None
119
+
120
+ # set to None if selections (nullable) is None
121
+ # and model_fields_set contains the field
122
+ if self.selections is None and "selections" in self.model_fields_set:
123
+ _dict['selections'] = None
124
+
125
+ return _dict
126
+
127
+ @classmethod
128
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
129
+ """Create an instance of AddCampaignModel from a dict"""
130
+ if obj is None:
131
+ return None
132
+
133
+ if not isinstance(obj, dict):
134
+ return cls.model_validate(obj)
135
+
136
+ _obj = cls.model_validate({
137
+ "_t": obj.get("_t") if obj.get("_t") is not None else 'AddCampaignModel',
138
+ "pipelineId": obj.get("pipelineId"),
139
+ "artifactId": obj.get("artifactId"),
140
+ "campaignName": obj.get("campaignName"),
141
+ "userFilters": [CreateOrderModelUserFiltersInner.from_dict(_item) for _item in obj["userFilters"]] if obj.get("userFilters") is not None else None,
142
+ "validationSetId": obj.get("validationSetId"),
143
+ "selections": [CreateOrderModelSelectionsInner.from_dict(_item) for _item in obj["selections"]] if obj.get("selections") is not None else None,
144
+ "featureFlags": [FeatureFlag.from_dict(_item) for _item in obj["featureFlags"]] if obj.get("featureFlags") is not None else None,
145
+ "priority": obj.get("priority")
146
+ })
147
+ return _obj
148
+
149
+
@@ -0,0 +1,98 @@
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, 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 CampaignArtifactModel(BaseModel):
26
+ """
27
+ CampaignArtifactModel
28
+ """ # noqa: E501
29
+ t: StrictStr = Field(description="Discriminator value for CampaignArtifactModel", alias="_t")
30
+ campaign_id: StrictStr = Field(alias="campaignId")
31
+ identifier: StrictStr
32
+ __properties: ClassVar[List[str]] = ["_t", "campaignId", "identifier"]
33
+
34
+ @field_validator('t')
35
+ def t_validate_enum(cls, value):
36
+ """Validates the enum"""
37
+ if value not in set(['CampaignArtifactModel']):
38
+ raise ValueError("must be one of enum values ('CampaignArtifactModel')")
39
+ return value
40
+
41
+ model_config = ConfigDict(
42
+ populate_by_name=True,
43
+ validate_assignment=True,
44
+ protected_namespaces=(),
45
+ )
46
+
47
+
48
+ def to_str(self) -> str:
49
+ """Returns the string representation of the model using alias"""
50
+ return pprint.pformat(self.model_dump(by_alias=True))
51
+
52
+ def to_json(self) -> str:
53
+ """Returns the JSON representation of the model using alias"""
54
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
55
+ return json.dumps(self.to_dict())
56
+
57
+ @classmethod
58
+ def from_json(cls, json_str: str) -> Optional[Self]:
59
+ """Create an instance of CampaignArtifactModel from a JSON string"""
60
+ return cls.from_dict(json.loads(json_str))
61
+
62
+ def to_dict(self) -> Dict[str, Any]:
63
+ """Return the dictionary representation of the model using alias.
64
+
65
+ This has the following differences from calling pydantic's
66
+ `self.model_dump(by_alias=True)`:
67
+
68
+ * `None` is only added to the output dict for nullable fields that
69
+ were set at model initialization. Other fields with value `None`
70
+ are ignored.
71
+ """
72
+ excluded_fields: Set[str] = set([
73
+ ])
74
+
75
+ _dict = self.model_dump(
76
+ by_alias=True,
77
+ exclude=excluded_fields,
78
+ exclude_none=True,
79
+ )
80
+ return _dict
81
+
82
+ @classmethod
83
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
84
+ """Create an instance of CampaignArtifactModel from a dict"""
85
+ if obj is None:
86
+ return None
87
+
88
+ if not isinstance(obj, dict):
89
+ return cls.model_validate(obj)
90
+
91
+ _obj = cls.model_validate({
92
+ "_t": obj.get("_t") if obj.get("_t") is not None else 'CampaignArtifactModel',
93
+ "campaignId": obj.get("campaignId"),
94
+ "identifier": obj.get("identifier")
95
+ })
96
+ return _obj
97
+
98
+
@@ -0,0 +1,105 @@
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 datetime import datetime
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr, field_validator
22
+ from typing import Any, ClassVar, Dict, List
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class CampaignQueryModel(BaseModel):
27
+ """
28
+ CampaignQueryModel
29
+ """ # noqa: E501
30
+ id: StrictStr
31
+ owner: StrictStr
32
+ name: StrictStr
33
+ status: StrictStr
34
+ priority: StrictInt
35
+ created_at: datetime = Field(alias="createdAt")
36
+ __properties: ClassVar[List[str]] = ["id", "owner", "name", "status", "priority", "createdAt"]
37
+
38
+ @field_validator('status')
39
+ def status_validate_enum(cls, value):
40
+ """Validates the enum"""
41
+ if value not in set(['Created', 'Active', 'Paused', 'Completed']):
42
+ raise ValueError("must be one of enum values ('Created', 'Active', 'Paused', 'Completed')")
43
+ return value
44
+
45
+ model_config = ConfigDict(
46
+ populate_by_name=True,
47
+ validate_assignment=True,
48
+ protected_namespaces=(),
49
+ )
50
+
51
+
52
+ def to_str(self) -> str:
53
+ """Returns the string representation of the model using alias"""
54
+ return pprint.pformat(self.model_dump(by_alias=True))
55
+
56
+ def to_json(self) -> str:
57
+ """Returns the JSON representation of the model using alias"""
58
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
59
+ return json.dumps(self.to_dict())
60
+
61
+ @classmethod
62
+ def from_json(cls, json_str: str) -> Optional[Self]:
63
+ """Create an instance of CampaignQueryModel from a JSON string"""
64
+ return cls.from_dict(json.loads(json_str))
65
+
66
+ def to_dict(self) -> Dict[str, Any]:
67
+ """Return the dictionary representation of the model using alias.
68
+
69
+ This has the following differences from calling pydantic's
70
+ `self.model_dump(by_alias=True)`:
71
+
72
+ * `None` is only added to the output dict for nullable fields that
73
+ were set at model initialization. Other fields with value `None`
74
+ are ignored.
75
+ """
76
+ excluded_fields: Set[str] = set([
77
+ ])
78
+
79
+ _dict = self.model_dump(
80
+ by_alias=True,
81
+ exclude=excluded_fields,
82
+ exclude_none=True,
83
+ )
84
+ return _dict
85
+
86
+ @classmethod
87
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
88
+ """Create an instance of CampaignQueryModel from a dict"""
89
+ if obj is None:
90
+ return None
91
+
92
+ if not isinstance(obj, dict):
93
+ return cls.model_validate(obj)
94
+
95
+ _obj = cls.model_validate({
96
+ "id": obj.get("id"),
97
+ "owner": obj.get("owner"),
98
+ "name": obj.get("name"),
99
+ "status": obj.get("status"),
100
+ "priority": obj.get("priority"),
101
+ "createdAt": obj.get("createdAt")
102
+ })
103
+ return _obj
104
+
105
+
@@ -0,0 +1,105 @@
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
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from rapidata.api_client.models.campaign_query_model import CampaignQueryModel
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class CampaignQueryModelPagedResult(BaseModel):
27
+ """
28
+ CampaignQueryModelPagedResult
29
+ """ # noqa: E501
30
+ total: StrictInt
31
+ page: StrictInt
32
+ page_size: StrictInt = Field(alias="pageSize")
33
+ items: List[CampaignQueryModel]
34
+ total_pages: Optional[StrictInt] = Field(default=None, alias="totalPages")
35
+ __properties: ClassVar[List[str]] = ["total", "page", "pageSize", "items", "totalPages"]
36
+
37
+ model_config = ConfigDict(
38
+ populate_by_name=True,
39
+ validate_assignment=True,
40
+ protected_namespaces=(),
41
+ )
42
+
43
+
44
+ def to_str(self) -> str:
45
+ """Returns the string representation of the model using alias"""
46
+ return pprint.pformat(self.model_dump(by_alias=True))
47
+
48
+ def to_json(self) -> str:
49
+ """Returns the JSON representation of the model using alias"""
50
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
51
+ return json.dumps(self.to_dict())
52
+
53
+ @classmethod
54
+ def from_json(cls, json_str: str) -> Optional[Self]:
55
+ """Create an instance of CampaignQueryModelPagedResult from a JSON string"""
56
+ return cls.from_dict(json.loads(json_str))
57
+
58
+ def to_dict(self) -> Dict[str, Any]:
59
+ """Return the dictionary representation of the model using alias.
60
+
61
+ This has the following differences from calling pydantic's
62
+ `self.model_dump(by_alias=True)`:
63
+
64
+ * `None` is only added to the output dict for nullable fields that
65
+ were set at model initialization. Other fields with value `None`
66
+ are ignored.
67
+ * OpenAPI `readOnly` fields are excluded.
68
+ """
69
+ excluded_fields: Set[str] = set([
70
+ "total_pages",
71
+ ])
72
+
73
+ _dict = self.model_dump(
74
+ by_alias=True,
75
+ exclude=excluded_fields,
76
+ exclude_none=True,
77
+ )
78
+ # override the default output from pydantic by calling `to_dict()` of each item in items (list)
79
+ _items = []
80
+ if self.items:
81
+ for _item_items in self.items:
82
+ if _item_items:
83
+ _items.append(_item_items.to_dict())
84
+ _dict['items'] = _items
85
+ return _dict
86
+
87
+ @classmethod
88
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
89
+ """Create an instance of CampaignQueryModelPagedResult from a dict"""
90
+ if obj is None:
91
+ return None
92
+
93
+ if not isinstance(obj, dict):
94
+ return cls.model_validate(obj)
95
+
96
+ _obj = cls.model_validate({
97
+ "total": obj.get("total"),
98
+ "page": obj.get("page"),
99
+ "pageSize": obj.get("pageSize"),
100
+ "items": [CampaignQueryModel.from_dict(_item) for _item in obj["items"]] if obj.get("items") is not None else None,
101
+ "totalPages": obj.get("totalPages")
102
+ })
103
+ return _obj
104
+
105
+