criteo-api-retailmedia-sdk 0.0.240808__py3-none-any.whl → 0.0.250129__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 (130) hide show
  1. criteo_api_retailmedia_preview/__init__.py +1 -1
  2. criteo_api_retailmedia_preview/api/accounts_api.py +45 -198
  3. criteo_api_retailmedia_preview/api/analytics_api.py +3 -3
  4. criteo_api_retailmedia_preview/api/audience_api.py +89 -232
  5. criteo_api_retailmedia_preview/api/balance_api.py +0 -159
  6. criteo_api_retailmedia_preview/api/campaign_api.py +246 -1604
  7. criteo_api_retailmedia_preview/api/catalog_api.py +161 -0
  8. criteo_api_retailmedia_preview/api/on_site_recommendation_api.py +186 -0
  9. criteo_api_retailmedia_preview/api_client.py +4 -4
  10. criteo_api_retailmedia_preview/apis/__init__.py +1 -0
  11. criteo_api_retailmedia_preview/configuration.py +1 -1
  12. criteo_api_retailmedia_preview/model/async_accounts_report.py +40 -0
  13. criteo_api_retailmedia_preview/model/async_campaigns_report.py +40 -0
  14. criteo_api_retailmedia_preview/model/async_line_items_report.py +40 -0
  15. criteo_api_retailmedia_preview/model/balance_response_v2_response.py +1 -1
  16. criteo_api_retailmedia_preview/model/{creative_v2_response.py → bot_message.py} +17 -21
  17. criteo_api_retailmedia_preview/model/botmessage.py +329 -0
  18. criteo_api_retailmedia_preview/model/brand_id_search_request.py +271 -0
  19. criteo_api_retailmedia_preview/model/{external_retailer.py → brand_id_search_result.py} +26 -26
  20. criteo_api_retailmedia_preview/model/category.py +3 -3
  21. criteo_api_retailmedia_preview/model/change_details_v1.py +8 -18
  22. criteo_api_retailmedia_preview/model/{external_choice_variable_value.py → choice_variable_value.py} +4 -10
  23. criteo_api_retailmedia_preview/model/{external_color_variable_value.py → color_variable_value.py} +5 -11
  24. criteo_api_retailmedia_preview/model/{sku_search_request.py → cpc_min_bids_request.py} +11 -16
  25. criteo_api_retailmedia_preview/model/{page_of_insertion_order_history_change_data_capture_v2.py → cpc_min_bids_response.py} +19 -21
  26. criteo_api_retailmedia_preview/model/cpc_rate_card_preview.py +6 -6
  27. criteo_api_retailmedia_preview/model/{external_creative_v2.py → creative2.py} +23 -30
  28. criteo_api_retailmedia_preview/model/{resource_outcome_of_retail_media_account.py → creative2_list_response.py} +9 -9
  29. criteo_api_retailmedia_preview/model/{resource_collection_outcome_of_sku_search_result.py → creative2_response.py} +9 -9
  30. criteo_api_retailmedia_preview/model/{external_creative_create_model_v2.py → creative_create_model2.py} +9 -16
  31. criteo_api_retailmedia_preview/model/{external_creative_update_model_v2.py → creative_update_model2.py} +9 -16
  32. criteo_api_retailmedia_preview/model/{resource_of_retail_media_account.py → entity_resource_brand_id_search_result.py} +13 -13
  33. criteo_api_retailmedia_preview/model/{value_resource_outcome_of_campaign_budget_overrides.py → entity_resource_collection_outcome_brand_id_search_result.py} +16 -16
  34. criteo_api_retailmedia_preview/model/{rm_legacy_audience_get_entity_v1_list_response.py → entity_resource_collection_outcome_of_retail_media_child_account.py} +15 -9
  35. criteo_api_retailmedia_preview/model/{resource_of_add_funds_to_balance_v2.py → entity_resource_of_retail_media_child_account.py} +14 -14
  36. criteo_api_retailmedia_preview/model/external_line_item_bid_multipliers_v2.py +1 -1
  37. criteo_api_retailmedia_preview/model/{external_account.py → external_retail_media_child_account.py} +39 -56
  38. criteo_api_retailmedia_preview/model/{external_files_variable_value.py → files_variable_value.py} +4 -10
  39. criteo_api_retailmedia_preview/model/http_validation_error.py +269 -0
  40. criteo_api_retailmedia_preview/model/{external_hyperlink_variable_value.py → hyperlink_variable_value.py} +5 -11
  41. criteo_api_retailmedia_preview/model/inbot_discussion.py +272 -0
  42. criteo_api_retailmedia_preview/model/{external_brand.py → inbot_discussion_body_model.py} +17 -15
  43. criteo_api_retailmedia_preview/model/inbot_discussion_data_instance_model.py +279 -0
  44. criteo_api_retailmedia_preview/model/json_api_request_of_seller_catalog_request.py +1 -1
  45. criteo_api_retailmedia_preview/model/line_item_bid_multipliers_v2_request.py +1 -1
  46. criteo_api_retailmedia_preview/model/line_item_bid_multipliers_v2_response.py +1 -1
  47. criteo_api_retailmedia_preview/model/{external_text_variable_value.py → location_inner.py} +3 -7
  48. criteo_api_retailmedia_preview/model/message.py +273 -0
  49. criteo_api_retailmedia_preview/model/message_body_model.py +275 -0
  50. criteo_api_retailmedia_preview/model/{json_api_body_with_id_of_int64_and_retailer_and_retailer.py → message_data_instance_model.py} +16 -22
  51. criteo_api_retailmedia_preview/model/message_error.py +275 -0
  52. criteo_api_retailmedia_preview/model/{rm_legacy_segment_customer_list.py → offset_page_metadata.py} +21 -17
  53. criteo_api_retailmedia_preview/model/{resource_of_sku_search_result.py → outcome.py} +15 -17
  54. criteo_api_retailmedia_preview/model/{external_page_type_environment.py → page_type_environment2.py} +4 -10
  55. criteo_api_retailmedia_preview/model/placement_preview.py +4 -0
  56. criteo_api_retailmedia_preview/model/product.py +4 -0
  57. criteo_api_retailmedia_preview/model/product_recommendation.py +305 -0
  58. criteo_api_retailmedia_preview/model/{json_api_body_with_id_of_int64_and_account_and_account.py → report_detail_warning.py} +21 -21
  59. criteo_api_retailmedia_preview/model/report_detail_warnings.py +281 -0
  60. criteo_api_retailmedia_preview/model/report_ok_response.py +31 -17
  61. criteo_api_retailmedia_preview/model/{proposal_status_model_resource.py → resource_of_creative2.py} +14 -14
  62. criteo_api_retailmedia_preview/model/resource_of_line_item_bid_multipliers_v2.py +1 -1
  63. criteo_api_retailmedia_preview/model/resource_of_preferred_line_item_v2.py +1 -1
  64. criteo_api_retailmedia_preview/model/retail_media_seller.py +4 -0
  65. criteo_api_retailmedia_preview/model/rm_algebra_node_v1.py +275 -0
  66. criteo_api_retailmedia_preview/model/{rm_legacy_audience_get_entity_v1_resource.py → rm_audience_entity_v1.py} +45 -24
  67. criteo_api_retailmedia_preview/model/{rm_legacy_audience_get_entity_v2_resource.py → rm_audience_entity_v1_resource.py} +8 -8
  68. criteo_api_retailmedia_preview/model/{creative_v2_list_response.py → rm_audience_entity_v1_rm_audience_search_metadata_v1_list_response.py} +14 -8
  69. criteo_api_retailmedia_preview/model/rm_audience_search_entity_v1.py +271 -0
  70. criteo_api_retailmedia_preview/model/{resource_of_creative_v2.py → rm_audience_search_entity_v1_resource.py} +11 -15
  71. criteo_api_retailmedia_preview/model/{add_funds_to_balance_v2_request.py → rm_audience_search_input_v1.py} +8 -8
  72. criteo_api_retailmedia_preview/model/rm_audience_search_metadata_v1.py +271 -0
  73. criteo_api_retailmedia_preview/model/rm_audience_segment_create_entity_v1.py +17 -9
  74. criteo_api_retailmedia_preview/model/rm_audience_segment_entity_v1.py +7 -7
  75. criteo_api_retailmedia_preview/model/rm_audience_segment_search_entity_v1.py +1 -1
  76. criteo_api_retailmedia_preview/model/rm_contact_list_v1.py +5 -5
  77. criteo_api_retailmedia_preview/model/{rm_user_behavior_v1.py → rm_events_v1.py} +3 -3
  78. criteo_api_retailmedia_preview/model/{retail_media_account.py → sdk_api_rest_common_problem.py} +41 -42
  79. criteo_api_retailmedia_preview/model/seller_catalog_request.py +1 -1
  80. criteo_api_retailmedia_preview/model/{sku_search_request_body.py → seller_search.py} +18 -25
  81. criteo_api_retailmedia_preview/model/sku_data_preview.py +27 -27
  82. criteo_api_retailmedia_preview/model/sku_min_bid.py +269 -0
  83. criteo_api_retailmedia_preview/model/sku_slim_data_v2.py +9 -13
  84. criteo_api_retailmedia_preview/model/sync_attributed_transactions_report.py +4 -0
  85. criteo_api_retailmedia_preview/model/sync_campaigns_report.py +1 -11
  86. criteo_api_retailmedia_preview/model/sync_line_items_report.py +1 -11
  87. criteo_api_retailmedia_preview/model/{external_template_variable_value.py → template_variable_value.py} +36 -43
  88. criteo_api_retailmedia_preview/model/text_variable_value.py +257 -0
  89. criteo_api_retailmedia_preview/model/{json_api_body_with_id_of_int64_and_brand_and_brand.py → validation_error.py} +19 -17
  90. criteo_api_retailmedia_preview/model/{value_resource_of_retail_media_seller_account_creation.py → value_resource_brand_id_search_request.py} +10 -10
  91. criteo_api_retailmedia_preview/model/value_resource_collection_outcome_of_retail_media_seller.py +8 -8
  92. criteo_api_retailmedia_preview/model/{value_resource_of_campaign_budget_overrides.py → value_resource_cpc_min_bids_request.py} +10 -10
  93. criteo_api_retailmedia_preview/model/{value_resource_of_line_item_budget_overrides.py → value_resource_cpc_min_bids_response.py} +10 -10
  94. criteo_api_retailmedia_preview/model/{value_resource_input_of_line_item_budget_overrides.py → value_resource_input_brand_id_search_request.py} +8 -8
  95. criteo_api_retailmedia_preview/model/{value_resource_collection_input_of_retail_media_seller.py → value_resource_input_cpc_min_bids_request.py} +8 -8
  96. criteo_api_retailmedia_preview/model/{value_resource_input_of_campaign_budget_overrides.py → value_resource_input_of_seller_search.py} +8 -8
  97. criteo_api_retailmedia_preview/model/value_resource_of_retail_media_seller.py +2 -2
  98. criteo_api_retailmedia_preview/model/value_resource_of_seller_search.py +266 -0
  99. criteo_api_retailmedia_preview/model/{value_resource_outcome_of_line_item_budget_overrides.py → value_resource_outcome_cpc_min_bids_response.py} +16 -16
  100. criteo_api_retailmedia_preview/model/{external_video_variable_value.py → video_variable_value.py} +4 -10
  101. criteo_api_retailmedia_preview/models/__init__.py +60 -69
  102. {criteo_api_retailmedia_sdk-0.0.240808.dist-info → criteo_api_retailmedia_sdk-0.0.250129.dist-info}/METADATA +14 -5
  103. {criteo_api_retailmedia_sdk-0.0.240808.dist-info → criteo_api_retailmedia_sdk-0.0.250129.dist-info}/RECORD +105 -113
  104. {criteo_api_retailmedia_sdk-0.0.240808.dist-info → criteo_api_retailmedia_sdk-0.0.250129.dist-info}/WHEEL +1 -1
  105. criteo_api_retailmedia_preview/model/add_funds_to_balance_v2.py +0 -277
  106. criteo_api_retailmedia_preview/model/approval_status_model.py +0 -292
  107. criteo_api_retailmedia_preview/model/campaign_budget_overrides.py +0 -276
  108. criteo_api_retailmedia_preview/model/campaign_daily_budget_override.py +0 -283
  109. criteo_api_retailmedia_preview/model/campaign_monthly_budget_override.py +0 -283
  110. criteo_api_retailmedia_preview/model/change_details_v2.py +0 -275
  111. criteo_api_retailmedia_preview/model/daily_line_item_budget_override.py +0 -281
  112. criteo_api_retailmedia_preview/model/insertion_order_history_change_data_capture_v2.py +0 -303
  113. criteo_api_retailmedia_preview/model/json_api_page_response_of_account.py +0 -295
  114. criteo_api_retailmedia_preview/model/json_api_page_response_of_brand.py +0 -295
  115. criteo_api_retailmedia_preview/model/json_api_page_response_of_retailer.py +0 -295
  116. criteo_api_retailmedia_preview/model/line_item_budget_overrides.py +0 -276
  117. criteo_api_retailmedia_preview/model/monthly_line_item_budeget_override.py +0 -283
  118. criteo_api_retailmedia_preview/model/negotiation_state_model.py +0 -293
  119. criteo_api_retailmedia_preview/model/proposal_status_model.py +0 -284
  120. criteo_api_retailmedia_preview/model/proposal_status_model_response.py +0 -274
  121. criteo_api_retailmedia_preview/model/retail_media_seller_account_creation.py +0 -270
  122. criteo_api_retailmedia_preview/model/rm_legacy_audience_get_entity_v1.py +0 -291
  123. criteo_api_retailmedia_preview/model/rm_legacy_audience_get_entity_v2.py +0 -291
  124. criteo_api_retailmedia_preview/model/rm_legacy_audience_get_entity_v2_list_response.py +0 -281
  125. criteo_api_retailmedia_preview/model/rm_legacy_audience_user_behavior_details_v2.py +0 -279
  126. criteo_api_retailmedia_preview/model/rm_legacy_segment_user_behavior_v1.py +0 -306
  127. criteo_api_retailmedia_preview/model/rm_legacy_segment_user_behavior_v2.py +0 -311
  128. criteo_api_retailmedia_preview/model/sku_search_result.py +0 -313
  129. criteo_api_retailmedia_preview/model/value_resource_input_of_retail_media_seller_account_creation.py +0 -262
  130. {criteo_api_retailmedia_sdk-0.0.240808.dist-info → criteo_api_retailmedia_sdk-0.0.250129.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,271 @@
1
+ """
2
+ Criteo API
3
+
4
+ Criteo API - RetailMedia # noqa: E501
5
+
6
+ The version of the OpenAPI document: Preview
7
+ Generated by: https://openapi-generator.tech
8
+ """
9
+
10
+
11
+ import re # noqa: F401
12
+ import sys # noqa: F401
13
+
14
+ from criteo_api_retailmedia_preview.model_utils import ( # noqa: F401
15
+ ApiTypeError,
16
+ ModelComposed,
17
+ ModelNormal,
18
+ ModelSimple,
19
+ cached_property,
20
+ change_keys_js_to_python,
21
+ convert_js_args_to_python_args,
22
+ date,
23
+ datetime,
24
+ file_type,
25
+ none_type,
26
+ validate_get_composed_info,
27
+ OpenApiModel
28
+ )
29
+ from criteo_api_retailmedia_preview.exceptions import ApiAttributeError
30
+
31
+
32
+
33
+ class BrandIdSearchRequest(ModelNormal):
34
+ """NOTE: This class is auto generated by OpenAPI Generator.
35
+ Ref: https://openapi-generator.tech
36
+
37
+ Do not edit the class manually.
38
+
39
+ Attributes:
40
+ allowed_values (dict): The key is the tuple path to the attribute
41
+ and the for var_name this is (var_name,). The value is a dict
42
+ with a capitalized key describing the allowed value and an allowed
43
+ value. These dicts store the allowed enum values.
44
+ attribute_map (dict): The key is attribute name
45
+ and the value is json key in definition.
46
+ discriminator_value_class_map (dict): A dict to go from the discriminator
47
+ variable value to the discriminator class name.
48
+ validations (dict): The key is the tuple path to the attribute
49
+ and the for var_name this is (var_name,). The value is a dict
50
+ that stores validations for max_length, min_length, max_items,
51
+ min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum,
52
+ inclusive_minimum, and regex.
53
+ additional_properties_type (tuple): A tuple of classes accepted
54
+ as additional properties values.
55
+ """
56
+
57
+ allowed_values = {
58
+ ('brand_type',): {
59
+ 'None': None,
60
+ 'UC': "uc",
61
+ 'RETAILER': "retailer",
62
+ 'ALL': "all",
63
+ },
64
+ }
65
+
66
+ validations = {
67
+ }
68
+
69
+ additional_properties_type = None
70
+
71
+ _nullable = False
72
+
73
+ @cached_property
74
+ def openapi_types():
75
+ """
76
+ This must be a method because a model may have properties that are
77
+ of type self, this must run after the class is loaded
78
+
79
+ Returns
80
+ openapi_types (dict): The key is attribute name
81
+ and the value is attribute type.
82
+ """
83
+ return {
84
+ 'retailer_ids': ([int], none_type,), # noqa: E501
85
+ 'name': (str, none_type,), # noqa: E501
86
+ 'brand_type': (str, none_type,), # noqa: E501
87
+ }
88
+
89
+ @cached_property
90
+ def discriminator():
91
+ return None
92
+
93
+
94
+ attribute_map = {
95
+ 'retailer_ids': 'retailerIds', # noqa: E501
96
+ 'name': 'name', # noqa: E501
97
+ 'brand_type': 'brandType', # noqa: E501
98
+ }
99
+
100
+ read_only_vars = {
101
+ }
102
+
103
+ _composed_schemas = {}
104
+
105
+ @classmethod
106
+ @convert_js_args_to_python_args
107
+ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
108
+ """BrandIdSearchRequest - a model defined in OpenAPI
109
+
110
+ Keyword Args:
111
+ _check_type (bool): if True, values for parameters in openapi_types
112
+ will be type checked and a TypeError will be
113
+ raised if the wrong type is input.
114
+ Defaults to True
115
+ _path_to_item (tuple/list): This is a list of keys or values to
116
+ drill down to the model in received_data
117
+ when deserializing a response
118
+ _spec_property_naming (bool): True if the variable names in the input data
119
+ are serialized names, as specified in the OpenAPI document.
120
+ False if the variable names in the input data
121
+ are pythonic names, e.g. snake case (default)
122
+ _configuration (Configuration): the instance to use when
123
+ deserializing a file_type parameter.
124
+ If passed, type conversion is attempted
125
+ If omitted no type conversion is done.
126
+ _visited_composed_classes (tuple): This stores a tuple of
127
+ classes that we have traveled through so that
128
+ if we see that class again we will not use its
129
+ discriminator again.
130
+ When traveling through a discriminator, the
131
+ composed schema that is
132
+ is traveled through is added to this set.
133
+ For example if Animal has a discriminator
134
+ petType and we pass in "Dog", and the class Dog
135
+ allOf includes Animal, we move through Animal
136
+ once using the discriminator, and pick Dog.
137
+ Then in Dog, we will make an instance of the
138
+ Animal class but this time we won't travel
139
+ through its discriminator because we passed in
140
+ _visited_composed_classes = (Animal,)
141
+ retailer_ids ([int], none_type): IDs of the retailers we want to limit the search to. [optional] # noqa: E501
142
+ name (str, none_type): The name of the brand(s) to be searched. [optional] # noqa: E501
143
+ brand_type (str, none_type): The type of brand, primarily where this brand belongs: UC, Retailer or All (both). [optional] # noqa: E501
144
+ """
145
+
146
+ _check_type = kwargs.pop('_check_type', True)
147
+ _spec_property_naming = kwargs.pop('_spec_property_naming', True)
148
+ _path_to_item = kwargs.pop('_path_to_item', ())
149
+ _configuration = kwargs.pop('_configuration', None)
150
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
151
+
152
+ self = super(OpenApiModel, cls).__new__(cls)
153
+
154
+ if args:
155
+ for arg in args:
156
+ if isinstance(arg, dict):
157
+ kwargs.update(arg)
158
+ else:
159
+ raise ApiTypeError(
160
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
161
+ args,
162
+ self.__class__.__name__,
163
+ ),
164
+ path_to_item=_path_to_item,
165
+ valid_classes=(self.__class__,),
166
+ )
167
+
168
+ self._data_store = {}
169
+ self._check_type = _check_type
170
+ self._spec_property_naming = _spec_property_naming
171
+ self._path_to_item = _path_to_item
172
+ self._configuration = _configuration
173
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
174
+
175
+ for var_name, var_value in kwargs.items():
176
+ if var_name not in self.attribute_map and \
177
+ self._configuration is not None and \
178
+ self._configuration.discard_unknown_keys and \
179
+ self.additional_properties_type is None:
180
+ # discard variable.
181
+ continue
182
+ setattr(self, var_name, var_value)
183
+ return self
184
+
185
+ required_properties = set([
186
+ '_data_store',
187
+ '_check_type',
188
+ '_spec_property_naming',
189
+ '_path_to_item',
190
+ '_configuration',
191
+ '_visited_composed_classes',
192
+ ])
193
+
194
+ @convert_js_args_to_python_args
195
+ def __init__(self, *args, **kwargs): # noqa: E501
196
+ """BrandIdSearchRequest - a model defined in OpenAPI
197
+
198
+ Keyword Args:
199
+ _check_type (bool): if True, values for parameters in openapi_types
200
+ will be type checked and a TypeError will be
201
+ raised if the wrong type is input.
202
+ Defaults to True
203
+ _path_to_item (tuple/list): This is a list of keys or values to
204
+ drill down to the model in received_data
205
+ when deserializing a response
206
+ _spec_property_naming (bool): True if the variable names in the input data
207
+ are serialized names, as specified in the OpenAPI document.
208
+ False if the variable names in the input data
209
+ are pythonic names, e.g. snake case (default)
210
+ _configuration (Configuration): the instance to use when
211
+ deserializing a file_type parameter.
212
+ If passed, type conversion is attempted
213
+ If omitted no type conversion is done.
214
+ _visited_composed_classes (tuple): This stores a tuple of
215
+ classes that we have traveled through so that
216
+ if we see that class again we will not use its
217
+ discriminator again.
218
+ When traveling through a discriminator, the
219
+ composed schema that is
220
+ is traveled through is added to this set.
221
+ For example if Animal has a discriminator
222
+ petType and we pass in "Dog", and the class Dog
223
+ allOf includes Animal, we move through Animal
224
+ once using the discriminator, and pick Dog.
225
+ Then in Dog, we will make an instance of the
226
+ Animal class but this time we won't travel
227
+ through its discriminator because we passed in
228
+ _visited_composed_classes = (Animal,)
229
+ retailer_ids ([int], none_type): IDs of the retailers we want to limit the search to. [optional] # noqa: E501
230
+ name (str, none_type): The name of the brand(s) to be searched. [optional] # noqa: E501
231
+ brand_type (str, none_type): The type of brand, primarily where this brand belongs: UC, Retailer or All (both). [optional] # noqa: E501
232
+ """
233
+
234
+ _check_type = kwargs.pop('_check_type', True)
235
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
236
+ _path_to_item = kwargs.pop('_path_to_item', ())
237
+ _configuration = kwargs.pop('_configuration', None)
238
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
239
+
240
+ if args:
241
+ for arg in args:
242
+ if isinstance(arg, dict):
243
+ kwargs.update(arg)
244
+ else:
245
+ raise ApiTypeError(
246
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
247
+ args,
248
+ self.__class__.__name__,
249
+ ),
250
+ path_to_item=_path_to_item,
251
+ valid_classes=(self.__class__,),
252
+ )
253
+
254
+ self._data_store = {}
255
+ self._check_type = _check_type
256
+ self._spec_property_naming = _spec_property_naming
257
+ self._path_to_item = _path_to_item
258
+ self._configuration = _configuration
259
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
260
+
261
+ for var_name, var_value in kwargs.items():
262
+ if var_name not in self.attribute_map and \
263
+ self._configuration is not None and \
264
+ self._configuration.discard_unknown_keys and \
265
+ self.additional_properties_type is None:
266
+ # discard variable.
267
+ continue
268
+ setattr(self, var_name, var_value)
269
+ if var_name in self.read_only_vars:
270
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
271
+ f"class with read only attributes.")
@@ -30,7 +30,7 @@ from criteo_api_retailmedia_preview.exceptions import ApiAttributeError
30
30
 
31
31
 
32
32
 
33
- class ExternalRetailer(ModelNormal):
33
+ class BrandIdSearchResult(ModelNormal):
34
34
  """NOTE: This class is auto generated by OpenAPI Generator.
35
35
  Ref: https://openapi-generator.tech
36
36
 
@@ -55,26 +55,12 @@ class ExternalRetailer(ModelNormal):
55
55
  """
56
56
 
57
57
  allowed_values = {
58
- ('campaign_eligibilities',): {
59
- 'UNKNOWN': "unknown",
60
- 'AUCTION': "auction",
61
- 'PREFERRED': "preferred",
62
- },
63
58
  }
64
59
 
65
60
  validations = {
66
- ('name',): {
67
- 'max_length': 100,
68
- },
69
61
  }
70
62
 
71
- @cached_property
72
- def additional_properties_type():
73
- """
74
- This must be a method because a model may have properties that are
75
- of type self, this must run after the class is loaded
76
- """
77
- return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
63
+ additional_properties_type = None
78
64
 
79
65
  _nullable = False
80
66
 
@@ -89,8 +75,10 @@ class ExternalRetailer(ModelNormal):
89
75
  and the value is attribute type.
90
76
  """
91
77
  return {
78
+ 'id': (str,), # noqa: E501
92
79
  'name': (str,), # noqa: E501
93
- 'campaign_eligibilities': ([str],), # noqa: E501
80
+ 'brand_type': (str,), # noqa: E501
81
+ 'retailer_ids': ([int],), # noqa: E501
94
82
  }
95
83
 
96
84
  @cached_property
@@ -99,8 +87,10 @@ class ExternalRetailer(ModelNormal):
99
87
 
100
88
 
101
89
  attribute_map = {
90
+ 'id': 'id', # noqa: E501
102
91
  'name': 'name', # noqa: E501
103
- 'campaign_eligibilities': 'campaignEligibilities', # noqa: E501
92
+ 'brand_type': 'brandType', # noqa: E501
93
+ 'retailer_ids': 'retailerIds', # noqa: E501
104
94
  }
105
95
 
106
96
  read_only_vars = {
@@ -110,11 +100,14 @@ class ExternalRetailer(ModelNormal):
110
100
 
111
101
  @classmethod
112
102
  @convert_js_args_to_python_args
113
- def _from_openapi_data(cls, name, *args, **kwargs): # noqa: E501
114
- """ExternalRetailer - a model defined in OpenAPI
103
+ def _from_openapi_data(cls, id, name, brand_type, retailer_ids, *args, **kwargs): # noqa: E501
104
+ """BrandIdSearchResult - a model defined in OpenAPI
115
105
 
116
106
  Args:
117
- name (str):
107
+ id (str): The brand id
108
+ name (str): The name of the brand
109
+ brand_type (str): The type of the brand
110
+ retailer_ids ([int]): The retailer ids associated to the brand
118
111
 
119
112
  Keyword Args:
120
113
  _check_type (bool): if True, values for parameters in openapi_types
@@ -147,7 +140,6 @@ class ExternalRetailer(ModelNormal):
147
140
  Animal class but this time we won't travel
148
141
  through its discriminator because we passed in
149
142
  _visited_composed_classes = (Animal,)
150
- campaign_eligibilities ([str]): [optional] # noqa: E501
151
143
  """
152
144
 
153
145
  _check_type = kwargs.pop('_check_type', True)
@@ -179,7 +171,10 @@ class ExternalRetailer(ModelNormal):
179
171
  self._configuration = _configuration
180
172
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
181
173
 
174
+ self.id = id
182
175
  self.name = name
176
+ self.brand_type = brand_type
177
+ self.retailer_ids = retailer_ids
183
178
  for var_name, var_value in kwargs.items():
184
179
  if var_name not in self.attribute_map and \
185
180
  self._configuration is not None and \
@@ -200,11 +195,14 @@ class ExternalRetailer(ModelNormal):
200
195
  ])
201
196
 
202
197
  @convert_js_args_to_python_args
203
- def __init__(self, name, *args, **kwargs): # noqa: E501
204
- """ExternalRetailer - a model defined in OpenAPI
198
+ def __init__(self, id, name, brand_type, retailer_ids, *args, **kwargs): # noqa: E501
199
+ """BrandIdSearchResult - a model defined in OpenAPI
205
200
 
206
201
  Args:
207
- name (str):
202
+ id (str): The brand id
203
+ name (str): The name of the brand
204
+ brand_type (str): The type of the brand
205
+ retailer_ids ([int]): The retailer ids associated to the brand
208
206
 
209
207
  Keyword Args:
210
208
  _check_type (bool): if True, values for parameters in openapi_types
@@ -237,7 +235,6 @@ class ExternalRetailer(ModelNormal):
237
235
  Animal class but this time we won't travel
238
236
  through its discriminator because we passed in
239
237
  _visited_composed_classes = (Animal,)
240
- campaign_eligibilities ([str]): [optional] # noqa: E501
241
238
  """
242
239
 
243
240
  _check_type = kwargs.pop('_check_type', True)
@@ -267,7 +264,10 @@ class ExternalRetailer(ModelNormal):
267
264
  self._configuration = _configuration
268
265
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
269
266
 
267
+ self.id = id
270
268
  self.name = name
269
+ self.brand_type = brand_type
270
+ self.retailer_ids = retailer_ids
271
271
  for var_name, var_value in kwargs.items():
272
272
  if var_name not in self.attribute_map and \
273
273
  self._configuration is not None and \
@@ -85,7 +85,7 @@ class Category(ModelNormal):
85
85
  and the value is attribute type.
86
86
  """
87
87
  return {
88
- 'text': (str,), # noqa: E501
88
+ 'text': (str, none_type,), # noqa: E501
89
89
  }
90
90
 
91
91
  @cached_property
@@ -138,7 +138,7 @@ class Category(ModelNormal):
138
138
  Animal class but this time we won't travel
139
139
  through its discriminator because we passed in
140
140
  _visited_composed_classes = (Animal,)
141
- text (str): The full category breadcrumb in the retailers catalog.. [optional] # noqa: E501
141
+ text (str, none_type): The full category breadcrumb in the retailers catalog.. [optional] # noqa: E501
142
142
  """
143
143
 
144
144
  _check_type = kwargs.pop('_check_type', True)
@@ -224,7 +224,7 @@ class Category(ModelNormal):
224
224
  Animal class but this time we won't travel
225
225
  through its discriminator because we passed in
226
226
  _visited_composed_classes = (Animal,)
227
- text (str): The full category breadcrumb in the retailers catalog.. [optional] # noqa: E501
227
+ text (str, none_type): The full category breadcrumb in the retailers catalog.. [optional] # noqa: E501
228
228
  """
229
229
 
230
230
  _check_type = kwargs.pop('_check_type', True)
@@ -98,14 +98,9 @@ class ChangeDetailsV1(ModelNormal):
98
98
 
99
99
  @classmethod
100
100
  @convert_js_args_to_python_args
101
- def _from_openapi_data(cls, previous_value, current_value, change_value, *args, **kwargs): # noqa: E501
101
+ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
102
102
  """ChangeDetailsV1 - a model defined in OpenAPI
103
103
 
104
- Args:
105
- previous_value (str, none_type): Previous value of a property of the insertion order.
106
- current_value (str, none_type): Current value of a property of the insertion order.
107
- change_value (str, none_type): Change detail of a property of the insertion order.
108
-
109
104
  Keyword Args:
110
105
  _check_type (bool): if True, values for parameters in openapi_types
111
106
  will be type checked and a TypeError will be
@@ -137,6 +132,9 @@ class ChangeDetailsV1(ModelNormal):
137
132
  Animal class but this time we won't travel
138
133
  through its discriminator because we passed in
139
134
  _visited_composed_classes = (Animal,)
135
+ previous_value (str, none_type): Previous value of a property of the insertion order.. [optional] # noqa: E501
136
+ current_value (str, none_type): Current value of a property of the insertion order.. [optional] # noqa: E501
137
+ change_value (str, none_type): Change detail of a property of the insertion order.. [optional] # noqa: E501
140
138
  """
141
139
 
142
140
  _check_type = kwargs.pop('_check_type', True)
@@ -168,9 +166,6 @@ class ChangeDetailsV1(ModelNormal):
168
166
  self._configuration = _configuration
169
167
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
170
168
 
171
- self.previous_value = previous_value
172
- self.current_value = current_value
173
- self.change_value = change_value
174
169
  for var_name, var_value in kwargs.items():
175
170
  if var_name not in self.attribute_map and \
176
171
  self._configuration is not None and \
@@ -191,14 +186,9 @@ class ChangeDetailsV1(ModelNormal):
191
186
  ])
192
187
 
193
188
  @convert_js_args_to_python_args
194
- def __init__(self, previous_value, current_value, change_value, *args, **kwargs): # noqa: E501
189
+ def __init__(self, *args, **kwargs): # noqa: E501
195
190
  """ChangeDetailsV1 - a model defined in OpenAPI
196
191
 
197
- Args:
198
- previous_value (str, none_type): Previous value of a property of the insertion order.
199
- current_value (str, none_type): Current value of a property of the insertion order.
200
- change_value (str, none_type): Change detail of a property of the insertion order.
201
-
202
192
  Keyword Args:
203
193
  _check_type (bool): if True, values for parameters in openapi_types
204
194
  will be type checked and a TypeError will be
@@ -230,6 +220,9 @@ class ChangeDetailsV1(ModelNormal):
230
220
  Animal class but this time we won't travel
231
221
  through its discriminator because we passed in
232
222
  _visited_composed_classes = (Animal,)
223
+ previous_value (str, none_type): Previous value of a property of the insertion order.. [optional] # noqa: E501
224
+ current_value (str, none_type): Current value of a property of the insertion order.. [optional] # noqa: E501
225
+ change_value (str, none_type): Change detail of a property of the insertion order.. [optional] # noqa: E501
233
226
  """
234
227
 
235
228
  _check_type = kwargs.pop('_check_type', True)
@@ -259,9 +252,6 @@ class ChangeDetailsV1(ModelNormal):
259
252
  self._configuration = _configuration
260
253
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
261
254
 
262
- self.previous_value = previous_value
263
- self.current_value = current_value
264
- self.change_value = change_value
265
255
  for var_name, var_value in kwargs.items():
266
256
  if var_name not in self.attribute_map and \
267
257
  self._configuration is not None and \
@@ -30,7 +30,7 @@ from criteo_api_retailmedia_preview.exceptions import ApiAttributeError
30
30
 
31
31
 
32
32
 
33
- class ExternalChoiceVariableValue(ModelNormal):
33
+ class ChoiceVariableValue(ModelNormal):
34
34
  """NOTE: This class is auto generated by OpenAPI Generator.
35
35
  Ref: https://openapi-generator.tech
36
36
 
@@ -60,13 +60,7 @@ class ExternalChoiceVariableValue(ModelNormal):
60
60
  validations = {
61
61
  }
62
62
 
63
- @cached_property
64
- def additional_properties_type():
65
- """
66
- This must be a method because a model may have properties that are
67
- of type self, this must run after the class is loaded
68
- """
69
- return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
63
+ additional_properties_type = None
70
64
 
71
65
  _nullable = False
72
66
 
@@ -101,7 +95,7 @@ class ExternalChoiceVariableValue(ModelNormal):
101
95
  @classmethod
102
96
  @convert_js_args_to_python_args
103
97
  def _from_openapi_data(cls, chosen_options, *args, **kwargs): # noqa: E501
104
- """ExternalChoiceVariableValue - a model defined in OpenAPI
98
+ """ChoiceVariableValue - a model defined in OpenAPI
105
99
 
106
100
  Args:
107
101
  chosen_options ([str]): The chosen options
@@ -190,7 +184,7 @@ class ExternalChoiceVariableValue(ModelNormal):
190
184
 
191
185
  @convert_js_args_to_python_args
192
186
  def __init__(self, chosen_options, *args, **kwargs): # noqa: E501
193
- """ExternalChoiceVariableValue - a model defined in OpenAPI
187
+ """ChoiceVariableValue - a model defined in OpenAPI
194
188
 
195
189
  Args:
196
190
  chosen_options ([str]): The chosen options
@@ -30,7 +30,7 @@ from criteo_api_retailmedia_preview.exceptions import ApiAttributeError
30
30
 
31
31
 
32
32
 
33
- class ExternalColorVariableValue(ModelNormal):
33
+ class ColorVariableValue(ModelNormal):
34
34
  """NOTE: This class is auto generated by OpenAPI Generator.
35
35
  Ref: https://openapi-generator.tech
36
36
 
@@ -65,15 +65,9 @@ class ExternalColorVariableValue(ModelNormal):
65
65
  },
66
66
  }
67
67
 
68
- @cached_property
69
- def additional_properties_type():
70
- """
71
- This must be a method because a model may have properties that are
72
- of type self, this must run after the class is loaded
73
- """
74
- return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
68
+ additional_properties_type = None
75
69
 
76
- _nullable = False
70
+ _nullable = True
77
71
 
78
72
  @cached_property
79
73
  def openapi_types():
@@ -106,7 +100,7 @@ class ExternalColorVariableValue(ModelNormal):
106
100
  @classmethod
107
101
  @convert_js_args_to_python_args
108
102
  def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
109
- """ExternalColorVariableValue - a model defined in OpenAPI
103
+ """ColorVariableValue - a model defined in OpenAPI
110
104
 
111
105
  Keyword Args:
112
106
  _check_type (bool): if True, values for parameters in openapi_types
@@ -192,7 +186,7 @@ class ExternalColorVariableValue(ModelNormal):
192
186
 
193
187
  @convert_js_args_to_python_args
194
188
  def __init__(self, *args, **kwargs): # noqa: E501
195
- """ExternalColorVariableValue - a model defined in OpenAPI
189
+ """ColorVariableValue - a model defined in OpenAPI
196
190
 
197
191
  Keyword Args:
198
192
  _check_type (bool): if True, values for parameters in openapi_types
@@ -29,12 +29,8 @@ from criteo_api_retailmedia_preview.model_utils import ( # noqa: F401
29
29
  from criteo_api_retailmedia_preview.exceptions import ApiAttributeError
30
30
 
31
31
 
32
- def lazy_import():
33
- from criteo_api_retailmedia_preview.model.sku_search_request_body import SkuSearchRequestBody
34
- globals()['SkuSearchRequestBody'] = SkuSearchRequestBody
35
32
 
36
-
37
- class SkuSearchRequest(ModelNormal):
33
+ class CpcMinBidsRequest(ModelNormal):
38
34
  """NOTE: This class is auto generated by OpenAPI Generator.
39
35
  Ref: https://openapi-generator.tech
40
36
 
@@ -78,9 +74,8 @@ class SkuSearchRequest(ModelNormal):
78
74
  openapi_types (dict): The key is attribute name
79
75
  and the value is attribute type.
80
76
  """
81
- lazy_import()
82
77
  return {
83
- 'data': (SkuSearchRequestBody,), # noqa: E501
78
+ 'sku_ids': ([str],), # noqa: E501
84
79
  }
85
80
 
86
81
  @cached_property
@@ -89,7 +84,7 @@ class SkuSearchRequest(ModelNormal):
89
84
 
90
85
 
91
86
  attribute_map = {
92
- 'data': 'data', # noqa: E501
87
+ 'sku_ids': 'skuIds', # noqa: E501
93
88
  }
94
89
 
95
90
  read_only_vars = {
@@ -99,11 +94,11 @@ class SkuSearchRequest(ModelNormal):
99
94
 
100
95
  @classmethod
101
96
  @convert_js_args_to_python_args
102
- def _from_openapi_data(cls, data, *args, **kwargs): # noqa: E501
103
- """SkuSearchRequest - a model defined in OpenAPI
97
+ def _from_openapi_data(cls, sku_ids, *args, **kwargs): # noqa: E501
98
+ """CpcMinBidsRequest - a model defined in OpenAPI
104
99
 
105
100
  Args:
106
- data (SkuSearchRequestBody):
101
+ sku_ids ([str]): Sku id list for which minimum bid amounts are requested.
107
102
 
108
103
  Keyword Args:
109
104
  _check_type (bool): if True, values for parameters in openapi_types
@@ -167,7 +162,7 @@ class SkuSearchRequest(ModelNormal):
167
162
  self._configuration = _configuration
168
163
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
169
164
 
170
- self.data = data
165
+ self.sku_ids = sku_ids
171
166
  for var_name, var_value in kwargs.items():
172
167
  if var_name not in self.attribute_map and \
173
168
  self._configuration is not None and \
@@ -188,11 +183,11 @@ class SkuSearchRequest(ModelNormal):
188
183
  ])
189
184
 
190
185
  @convert_js_args_to_python_args
191
- def __init__(self, data, *args, **kwargs): # noqa: E501
192
- """SkuSearchRequest - a model defined in OpenAPI
186
+ def __init__(self, sku_ids, *args, **kwargs): # noqa: E501
187
+ """CpcMinBidsRequest - a model defined in OpenAPI
193
188
 
194
189
  Args:
195
- data (SkuSearchRequestBody):
190
+ sku_ids ([str]): Sku id list for which minimum bid amounts are requested.
196
191
 
197
192
  Keyword Args:
198
193
  _check_type (bool): if True, values for parameters in openapi_types
@@ -254,7 +249,7 @@ class SkuSearchRequest(ModelNormal):
254
249
  self._configuration = _configuration
255
250
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
256
251
 
257
- self.data = data
252
+ self.sku_ids = sku_ids
258
253
  for var_name, var_value in kwargs.items():
259
254
  if var_name not in self.attribute_map and \
260
255
  self._configuration is not None and \