criteo-api-marketingsolutions-sdk 0.0.241029__py3-none-any.whl → 0.0.250205__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 criteo-api-marketingsolutions-sdk might be problematic. Click here for more details.

Files changed (68) hide show
  1. criteo_api_marketingsolutions_preview/__init__.py +1 -1
  2. criteo_api_marketingsolutions_preview/api/campaign_api.py +0 -877
  3. criteo_api_marketingsolutions_preview/api/creative_api.py +107 -101
  4. criteo_api_marketingsolutions_preview/api_client.py +1 -1
  5. criteo_api_marketingsolutions_preview/configuration.py +1 -1
  6. criteo_api_marketingsolutions_preview/model/ad.py +4 -0
  7. criteo_api_marketingsolutions_preview/model/ad_set_frequency_capping_v24_q3.py +1 -1
  8. criteo_api_marketingsolutions_preview/model/adaptive_attributes.py +0 -10
  9. criteo_api_marketingsolutions_preview/model/adaptive_write_attributes.py +0 -4
  10. criteo_api_marketingsolutions_preview/model/coupon.py +4 -2
  11. criteo_api_marketingsolutions_preview/model/coupon_supported_sizes.py +0 -4
  12. criteo_api_marketingsolutions_preview/model/create_ad_set_attribution_configuration_v24_q3.py +284 -0
  13. criteo_api_marketingsolutions_preview/model/create_ad_set_v24_q3.py +6 -0
  14. criteo_api_marketingsolutions_preview/model/create_coupon.py +0 -2
  15. criteo_api_marketingsolutions_preview/model/create_image_slide.py +0 -2
  16. criteo_api_marketingsolutions_preview/model/creative.py +4 -0
  17. criteo_api_marketingsolutions_preview/model/dynamic_attributes.py +0 -4
  18. criteo_api_marketingsolutions_preview/model/dynamic_write_attributes.py +6 -6
  19. criteo_api_marketingsolutions_preview/model/html_tag_attributes.py +0 -2
  20. criteo_api_marketingsolutions_preview/model/html_tag_write_attributes.py +0 -2
  21. criteo_api_marketingsolutions_preview/model/image_attributes.py +0 -2
  22. criteo_api_marketingsolutions_preview/model/image_set.py +0 -2
  23. criteo_api_marketingsolutions_preview/model/image_slide.py +0 -2
  24. criteo_api_marketingsolutions_preview/model/json_report_rows.py +3 -3
  25. criteo_api_marketingsolutions_preview/model/nillable_lookback_window_v24_q3.py +271 -0
  26. criteo_api_marketingsolutions_preview/model/patch_ad_set_attribution_configuration_v24_q3.py +282 -0
  27. criteo_api_marketingsolutions_preview/model/patch_ad_set_v24_q3.py +6 -0
  28. criteo_api_marketingsolutions_preview/model/read_ad_set_attribution_configuration_v24_q3.py +284 -0
  29. criteo_api_marketingsolutions_preview/model/read_ad_set_v24_q3.py +6 -0
  30. criteo_api_marketingsolutions_preview/model/report_ok_response.py +18 -18
  31. criteo_api_marketingsolutions_preview/model/{creative_response.py → resource_collection_outcome_of_ad.py} +8 -12
  32. criteo_api_marketingsolutions_preview/model/{ad_list_response.py → resource_collection_outcome_of_coupon.py} +8 -14
  33. criteo_api_marketingsolutions_preview/model/resource_collection_outcome_of_creative.py +281 -0
  34. criteo_api_marketingsolutions_preview/model/{ad_write_request.py → resource_input_of_ad_write.py} +8 -8
  35. criteo_api_marketingsolutions_preview/model/{create_coupon_request.py → resource_input_of_create_coupon.py} +8 -8
  36. criteo_api_marketingsolutions_preview/model/{creative_write_request.py → resource_input_of_creative_write.py} +8 -8
  37. criteo_api_marketingsolutions_preview/model/{update_coupon_request.py → resource_input_of_update_coupon.py} +8 -8
  38. criteo_api_marketingsolutions_preview/model/{ad_resource.py → resource_of_ad.py} +5 -5
  39. criteo_api_marketingsolutions_preview/model/{ad_write_resource.py → resource_of_ad_write.py} +5 -5
  40. criteo_api_marketingsolutions_preview/model/{coupon_resource.py → resource_of_coupon.py} +5 -5
  41. criteo_api_marketingsolutions_preview/model/{coupon_supported_sizes_resource.py → resource_of_coupon_supported_sizes.py} +5 -5
  42. criteo_api_marketingsolutions_preview/model/{create_coupon_resource.py → resource_of_create_coupon.py} +5 -5
  43. criteo_api_marketingsolutions_preview/model/{creative_resource.py → resource_of_creative.py} +5 -5
  44. criteo_api_marketingsolutions_preview/model/{creative_write_resource.py → resource_of_creative_write.py} +5 -5
  45. criteo_api_marketingsolutions_preview/model/{update_coupon_resource.py → resource_of_update_coupon.py} +5 -5
  46. criteo_api_marketingsolutions_preview/model/{ad_response.py → resource_outcome_of_ad.py} +8 -12
  47. criteo_api_marketingsolutions_preview/model/{coupon_response.py → resource_outcome_of_coupon.py} +8 -12
  48. criteo_api_marketingsolutions_preview/model/{coupon_list_response.py → resource_outcome_of_coupon_supported_sizes.py} +8 -14
  49. criteo_api_marketingsolutions_preview/model/resource_outcome_of_creative.py +281 -0
  50. criteo_api_marketingsolutions_preview/models/__init__.py +23 -31
  51. {criteo_api_marketingsolutions_sdk-0.0.241029.dist-info → criteo_api_marketingsolutions_sdk-0.0.250205.dist-info}/METADATA +14 -5
  52. {criteo_api_marketingsolutions_sdk-0.0.241029.dist-info → criteo_api_marketingsolutions_sdk-0.0.250205.dist-info}/RECORD +54 -62
  53. {criteo_api_marketingsolutions_sdk-0.0.241029.dist-info → criteo_api_marketingsolutions_sdk-0.0.250205.dist-info}/WHEEL +1 -1
  54. criteo_api_marketingsolutions_preview/model/coupon_supported_sizes_response.py +0 -285
  55. criteo_api_marketingsolutions_preview/model/creative_list_response.py +0 -287
  56. criteo_api_marketingsolutions_preview/model/oci_brand_safety_response.py +0 -279
  57. criteo_api_marketingsolutions_preview/model/oci_brand_safety_response_data.py +0 -287
  58. criteo_api_marketingsolutions_preview/model/oci_brand_safety_rule.py +0 -275
  59. criteo_api_marketingsolutions_preview/model/oci_brand_safety_segment.py +0 -320
  60. criteo_api_marketingsolutions_preview/model/oci_targeting_node.py +0 -277
  61. criteo_api_marketingsolutions_preview/model/oci_targeting_response.py +0 -279
  62. criteo_api_marketingsolutions_preview/model/oci_targeting_response_data.py +0 -287
  63. criteo_api_marketingsolutions_preview/model/oci_targeting_rule.py +0 -275
  64. criteo_api_marketingsolutions_preview/model/target.py +0 -274
  65. criteo_api_marketingsolutions_preview/model/target_type.py +0 -290
  66. criteo_api_marketingsolutions_preview/model/targeting_error_model.py +0 -299
  67. criteo_api_marketingsolutions_preview/model/targeting_operator.py +0 -292
  68. {criteo_api_marketingsolutions_sdk-0.0.241029.dist-info → criteo_api_marketingsolutions_sdk-0.0.250205.dist-info}/top_level.txt +0 -0
@@ -76,7 +76,7 @@ class ApiClient(object):
76
76
  self.default_headers[header_name] = header_value
77
77
  self.cookie = cookie
78
78
  # Set default User-Agent.
79
- self.user_agent = 'OpenAPI-Generator/0.0.241029/python'
79
+ self.user_agent = 'OpenAPI-Generator/0.0.250205/python'
80
80
 
81
81
  def __enter__(self):
82
82
  return self
@@ -395,7 +395,7 @@ class Configuration(object):
395
395
  "OS: {env}\n"\
396
396
  "Python Version: {pyversion}\n"\
397
397
  "Version of the API: preview\n"\
398
- "SDK Package Version: 0.0.241029".\
398
+ "SDK Package Version: 0.0.250205".\
399
399
  format(env=sys.platform, pyversion=sys.version)
400
400
 
401
401
  def get_host_settings(self):
@@ -94,6 +94,7 @@ class Ad(ModelNormal):
94
94
  'inventory_type': (str, none_type,), # noqa: E501
95
95
  'start_date': (str, none_type,), # noqa: E501
96
96
  'end_date': (str, none_type,), # noqa: E501
97
+ 'id': (str, none_type,), # noqa: E501
97
98
  }
98
99
 
99
100
  @cached_property
@@ -109,6 +110,7 @@ class Ad(ModelNormal):
109
110
  'inventory_type': 'inventoryType', # noqa: E501
110
111
  'start_date': 'startDate', # noqa: E501
111
112
  'end_date': 'endDate', # noqa: E501
113
+ 'id': 'id', # noqa: E501
112
114
  }
113
115
 
114
116
  read_only_vars = {
@@ -159,6 +161,7 @@ class Ad(ModelNormal):
159
161
  inventory_type (str, none_type): The inventory the Ad belongs to. Possible values are \"Display\" and \"Native\". This is optional since this doesn't make sense for every creative type but will throw an error if not set for a dynamic creative.. [optional] # noqa: E501
160
162
  start_date (str, none_type): The date when the ad will be launched String must be in ISO8601 format. [optional] # noqa: E501
161
163
  end_date (str, none_type): The date when when we will stop to show this ad. If the end date is not specified (i.e. null) then the ad will go on forever String must be in ISO8601 format. [optional] # noqa: E501
164
+ id (str, none_type): Unique identifier (duplicate of the parent id).. [optional] # noqa: E501
162
165
  """
163
166
 
164
167
  _check_type = kwargs.pop('_check_type', True)
@@ -251,6 +254,7 @@ class Ad(ModelNormal):
251
254
  inventory_type (str, none_type): The inventory the Ad belongs to. Possible values are \"Display\" and \"Native\". This is optional since this doesn't make sense for every creative type but will throw an error if not set for a dynamic creative.. [optional] # noqa: E501
252
255
  start_date (str, none_type): The date when the ad will be launched String must be in ISO8601 format. [optional] # noqa: E501
253
256
  end_date (str, none_type): The date when when we will stop to show this ad. If the end date is not specified (i.e. null) then the ad will go on forever String must be in ISO8601 format. [optional] # noqa: E501
257
+ id (str, none_type): Unique identifier (duplicate of the parent id).. [optional] # noqa: E501
254
258
  """
255
259
 
256
260
  _check_type = kwargs.pop('_check_type', True)
@@ -75,7 +75,7 @@ class AdSetFrequencyCappingV24Q3(ModelNormal):
75
75
  """
76
76
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
77
77
 
78
- _nullable = False
78
+ _nullable = True
79
79
 
80
80
  @cached_property
81
81
  def openapi_types():
@@ -78,16 +78,6 @@ class AdaptiveAttributes(ModelNormal):
78
78
  }
79
79
 
80
80
  validations = {
81
- ('layouts',): {
82
- },
83
- ('logos',): {
84
- },
85
- ('calls_to_action',): {
86
- },
87
- ('image_sets',): {
88
- },
89
- ('videos',): {
90
- },
91
81
  }
92
82
 
93
83
  @cached_property
@@ -80,10 +80,6 @@ class AdaptiveWriteAttributes(ModelNormal):
80
80
  ('calls_to_action',): {
81
81
  'min_items': 1,
82
82
  },
83
- ('image_sets_base64',): {
84
- },
85
- ('video_base64_strings',): {
86
- },
87
83
  }
88
84
 
89
85
  @cached_property
@@ -62,8 +62,6 @@ class Coupon(ModelNormal):
62
62
  }
63
63
 
64
64
  validations = {
65
- ('images',): {
66
- },
67
65
  }
68
66
 
69
67
  @cached_property
@@ -103,6 +101,7 @@ class Coupon(ModelNormal):
103
101
  'show_every': (int, none_type,), # noqa: E501
104
102
  'show_duration': (int, none_type,), # noqa: E501
105
103
  'rotations_number': (int, none_type,), # noqa: E501
104
+ 'id': (str, none_type,), # noqa: E501
106
105
  }
107
106
 
108
107
  @cached_property
@@ -125,6 +124,7 @@ class Coupon(ModelNormal):
125
124
  'show_every': 'showEvery', # noqa: E501
126
125
  'show_duration': 'showDuration', # noqa: E501
127
126
  'rotations_number': 'rotationsNumber', # noqa: E501
127
+ 'id': 'id', # noqa: E501
128
128
  }
129
129
 
130
130
  read_only_vars = {
@@ -182,6 +182,7 @@ class Coupon(ModelNormal):
182
182
  show_every (int, none_type): Show the Coupon every N seconds (between 1 and 10). [optional] # noqa: E501
183
183
  show_duration (int, none_type): Show Coupon for a duration of N seconds (between 1 and 5). [optional] # noqa: E501
184
184
  rotations_number (int, none_type): Number of rotations for the Coupons (from 1 to 10 times). [optional] # noqa: E501
185
+ id (str, none_type): Unique identifier (duplicate of the parent id).. [optional] # noqa: E501
185
186
  """
186
187
 
187
188
  _check_type = kwargs.pop('_check_type', True)
@@ -281,6 +282,7 @@ class Coupon(ModelNormal):
281
282
  show_every (int, none_type): Show the Coupon every N seconds (between 1 and 10). [optional] # noqa: E501
282
283
  show_duration (int, none_type): Show Coupon for a duration of N seconds (between 1 and 5). [optional] # noqa: E501
283
284
  rotations_number (int, none_type): Number of rotations for the Coupons (from 1 to 10 times). [optional] # noqa: E501
285
+ id (str, none_type): Unique identifier (duplicate of the parent id).. [optional] # noqa: E501
284
286
  """
285
287
 
286
288
  _check_type = kwargs.pop('_check_type', True)
@@ -58,10 +58,6 @@ class CouponSupportedSizes(ModelNormal):
58
58
  }
59
59
 
60
60
  validations = {
61
- ('logo_zone',): {
62
- },
63
- ('full_frame',): {
64
- },
65
61
  }
66
62
 
67
63
  @cached_property
@@ -0,0 +1,284 @@
1
+ """
2
+ Criteo API
3
+
4
+ Criteo API - MarketingSolutions # 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_marketingsolutions_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_marketingsolutions_preview.exceptions import ApiAttributeError
30
+
31
+
32
+
33
+ class CreateAdSetAttributionConfigurationV24Q3(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
+ ('attribution_method',): {
59
+ 'None': None,
60
+ 'UNKNOWN': "unknown",
61
+ 'CRITEOATTRIBUTION': "criteoAttribution",
62
+ 'GOOGLEANALYTICSLASTCLICK': "googleAnalyticsLastClick",
63
+ 'GOOGLEANALYTICSDATADRIVEN': "googleAnalyticsDataDriven",
64
+ 'LASTCLICK': "lastClick",
65
+ 'POSTCLICK': "postClick",
66
+ },
67
+ ('lookback_window',): {
68
+ 'None': None,
69
+ 'UNKNOWN': "unknown",
70
+ 'SAMESESSION': "sameSession",
71
+ 'TWENTYFOURHOURS': "twentyFourHours",
72
+ 'SEVENDAYS': "sevenDays",
73
+ 'THIRTYDAYS': "thirtyDays",
74
+ },
75
+ }
76
+
77
+ validations = {
78
+ }
79
+
80
+ @cached_property
81
+ def additional_properties_type():
82
+ """
83
+ This must be a method because a model may have properties that are
84
+ of type self, this must run after the class is loaded
85
+ """
86
+ return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
87
+
88
+ _nullable = False
89
+
90
+ @cached_property
91
+ def openapi_types():
92
+ """
93
+ This must be a method because a model may have properties that are
94
+ of type self, this must run after the class is loaded
95
+
96
+ Returns
97
+ openapi_types (dict): The key is attribute name
98
+ and the value is attribute type.
99
+ """
100
+ return {
101
+ 'attribution_method': (str, none_type,), # noqa: E501
102
+ 'lookback_window': (str, none_type,), # noqa: E501
103
+ }
104
+
105
+ @cached_property
106
+ def discriminator():
107
+ return None
108
+
109
+
110
+ attribute_map = {
111
+ 'attribution_method': 'attributionMethod', # noqa: E501
112
+ 'lookback_window': 'lookbackWindow', # noqa: E501
113
+ }
114
+
115
+ read_only_vars = {
116
+ }
117
+
118
+ _composed_schemas = {}
119
+
120
+ @classmethod
121
+ @convert_js_args_to_python_args
122
+ def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
123
+ """CreateAdSetAttributionConfigurationV24Q3 - a model defined in OpenAPI
124
+
125
+ Keyword Args:
126
+ _check_type (bool): if True, values for parameters in openapi_types
127
+ will be type checked and a TypeError will be
128
+ raised if the wrong type is input.
129
+ Defaults to True
130
+ _path_to_item (tuple/list): This is a list of keys or values to
131
+ drill down to the model in received_data
132
+ when deserializing a response
133
+ _spec_property_naming (bool): True if the variable names in the input data
134
+ are serialized names, as specified in the OpenAPI document.
135
+ False if the variable names in the input data
136
+ are pythonic names, e.g. snake case (default)
137
+ _configuration (Configuration): the instance to use when
138
+ deserializing a file_type parameter.
139
+ If passed, type conversion is attempted
140
+ If omitted no type conversion is done.
141
+ _visited_composed_classes (tuple): This stores a tuple of
142
+ classes that we have traveled through so that
143
+ if we see that class again we will not use its
144
+ discriminator again.
145
+ When traveling through a discriminator, the
146
+ composed schema that is
147
+ is traveled through is added to this set.
148
+ For example if Animal has a discriminator
149
+ petType and we pass in "Dog", and the class Dog
150
+ allOf includes Animal, we move through Animal
151
+ once using the discriminator, and pick Dog.
152
+ Then in Dog, we will make an instance of the
153
+ Animal class but this time we won't travel
154
+ through its discriminator because we passed in
155
+ _visited_composed_classes = (Animal,)
156
+ attribution_method (str, none_type): The attribution method.. [optional] # noqa: E501
157
+ lookback_window (str, none_type): The lookback window. Optional, should be specified only for attribution methods PostClick and LastClick.. [optional] # noqa: E501
158
+ """
159
+
160
+ _check_type = kwargs.pop('_check_type', True)
161
+ _spec_property_naming = kwargs.pop('_spec_property_naming', True)
162
+ _path_to_item = kwargs.pop('_path_to_item', ())
163
+ _configuration = kwargs.pop('_configuration', None)
164
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
165
+
166
+ self = super(OpenApiModel, cls).__new__(cls)
167
+
168
+ if args:
169
+ for arg in args:
170
+ if isinstance(arg, dict):
171
+ kwargs.update(arg)
172
+ else:
173
+ raise ApiTypeError(
174
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
175
+ args,
176
+ self.__class__.__name__,
177
+ ),
178
+ path_to_item=_path_to_item,
179
+ valid_classes=(self.__class__,),
180
+ )
181
+
182
+ self._data_store = {}
183
+ self._check_type = _check_type
184
+ self._spec_property_naming = _spec_property_naming
185
+ self._path_to_item = _path_to_item
186
+ self._configuration = _configuration
187
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
188
+
189
+ for var_name, var_value in kwargs.items():
190
+ if var_name not in self.attribute_map and \
191
+ self._configuration is not None and \
192
+ self._configuration.discard_unknown_keys and \
193
+ self.additional_properties_type is None:
194
+ # discard variable.
195
+ continue
196
+ setattr(self, var_name, var_value)
197
+ return self
198
+
199
+ required_properties = set([
200
+ '_data_store',
201
+ '_check_type',
202
+ '_spec_property_naming',
203
+ '_path_to_item',
204
+ '_configuration',
205
+ '_visited_composed_classes',
206
+ ])
207
+
208
+ @convert_js_args_to_python_args
209
+ def __init__(self, *args, **kwargs): # noqa: E501
210
+ """CreateAdSetAttributionConfigurationV24Q3 - a model defined in OpenAPI
211
+
212
+ Keyword Args:
213
+ _check_type (bool): if True, values for parameters in openapi_types
214
+ will be type checked and a TypeError will be
215
+ raised if the wrong type is input.
216
+ Defaults to True
217
+ _path_to_item (tuple/list): This is a list of keys or values to
218
+ drill down to the model in received_data
219
+ when deserializing a response
220
+ _spec_property_naming (bool): True if the variable names in the input data
221
+ are serialized names, as specified in the OpenAPI document.
222
+ False if the variable names in the input data
223
+ are pythonic names, e.g. snake case (default)
224
+ _configuration (Configuration): the instance to use when
225
+ deserializing a file_type parameter.
226
+ If passed, type conversion is attempted
227
+ If omitted no type conversion is done.
228
+ _visited_composed_classes (tuple): This stores a tuple of
229
+ classes that we have traveled through so that
230
+ if we see that class again we will not use its
231
+ discriminator again.
232
+ When traveling through a discriminator, the
233
+ composed schema that is
234
+ is traveled through is added to this set.
235
+ For example if Animal has a discriminator
236
+ petType and we pass in "Dog", and the class Dog
237
+ allOf includes Animal, we move through Animal
238
+ once using the discriminator, and pick Dog.
239
+ Then in Dog, we will make an instance of the
240
+ Animal class but this time we won't travel
241
+ through its discriminator because we passed in
242
+ _visited_composed_classes = (Animal,)
243
+ attribution_method (str, none_type): The attribution method.. [optional] # noqa: E501
244
+ lookback_window (str, none_type): The lookback window. Optional, should be specified only for attribution methods PostClick and LastClick.. [optional] # noqa: E501
245
+ """
246
+
247
+ _check_type = kwargs.pop('_check_type', True)
248
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
249
+ _path_to_item = kwargs.pop('_path_to_item', ())
250
+ _configuration = kwargs.pop('_configuration', None)
251
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
252
+
253
+ if args:
254
+ for arg in args:
255
+ if isinstance(arg, dict):
256
+ kwargs.update(arg)
257
+ else:
258
+ raise ApiTypeError(
259
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
260
+ args,
261
+ self.__class__.__name__,
262
+ ),
263
+ path_to_item=_path_to_item,
264
+ valid_classes=(self.__class__,),
265
+ )
266
+
267
+ self._data_store = {}
268
+ self._check_type = _check_type
269
+ self._spec_property_naming = _spec_property_naming
270
+ self._path_to_item = _path_to_item
271
+ self._configuration = _configuration
272
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
273
+
274
+ for var_name, var_value in kwargs.items():
275
+ if var_name not in self.attribute_map and \
276
+ self._configuration is not None and \
277
+ self._configuration.discard_unknown_keys and \
278
+ self.additional_properties_type is None:
279
+ # discard variable.
280
+ continue
281
+ setattr(self, var_name, var_value)
282
+ if var_name in self.read_only_vars:
283
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
284
+ f"class with read only attributes.")
@@ -30,10 +30,12 @@ from criteo_api_marketingsolutions_preview.exceptions import ApiAttributeError
30
30
 
31
31
 
32
32
  def lazy_import():
33
+ from criteo_api_marketingsolutions_preview.model.create_ad_set_attribution_configuration_v24_q3 import CreateAdSetAttributionConfigurationV24Q3
33
34
  from criteo_api_marketingsolutions_preview.model.create_ad_set_bidding_v24_q3 import CreateAdSetBiddingV24Q3
34
35
  from criteo_api_marketingsolutions_preview.model.create_ad_set_budget_v24_q3 import CreateAdSetBudgetV24Q3
35
36
  from criteo_api_marketingsolutions_preview.model.create_ad_set_schedule_v24_q3 import CreateAdSetScheduleV24Q3
36
37
  from criteo_api_marketingsolutions_preview.model.create_ad_set_targeting_v24_q3 import CreateAdSetTargetingV24Q3
38
+ globals()['CreateAdSetAttributionConfigurationV24Q3'] = CreateAdSetAttributionConfigurationV24Q3
37
39
  globals()['CreateAdSetBiddingV24Q3'] = CreateAdSetBiddingV24Q3
38
40
  globals()['CreateAdSetBudgetV24Q3'] = CreateAdSetBudgetV24Q3
39
41
  globals()['CreateAdSetScheduleV24Q3'] = CreateAdSetScheduleV24Q3
@@ -120,6 +122,7 @@ class CreateAdSetV24Q3(ModelNormal):
120
122
  'budget': (CreateAdSetBudgetV24Q3,), # noqa: E501
121
123
  'tracking_code': (str, none_type,), # noqa: E501
122
124
  'media_type': (str,), # noqa: E501
125
+ 'attribution_configuration': (CreateAdSetAttributionConfigurationV24Q3,), # noqa: E501
123
126
  }
124
127
 
125
128
  @cached_property
@@ -138,6 +141,7 @@ class CreateAdSetV24Q3(ModelNormal):
138
141
  'budget': 'budget', # noqa: E501
139
142
  'tracking_code': 'trackingCode', # noqa: E501
140
143
  'media_type': 'mediaType', # noqa: E501
144
+ 'attribution_configuration': 'attributionConfiguration', # noqa: E501
141
145
  }
142
146
 
143
147
  read_only_vars = {
@@ -193,6 +197,7 @@ class CreateAdSetV24Q3(ModelNormal):
193
197
  Animal class but this time we won't travel
194
198
  through its discriminator because we passed in
195
199
  _visited_composed_classes = (Animal,)
200
+ attribution_configuration (CreateAdSetAttributionConfigurationV24Q3): [optional] # noqa: E501
196
201
  """
197
202
 
198
203
  _check_type = kwargs.pop('_check_type', True)
@@ -300,6 +305,7 @@ class CreateAdSetV24Q3(ModelNormal):
300
305
  Animal class but this time we won't travel
301
306
  through its discriminator because we passed in
302
307
  _visited_composed_classes = (Animal,)
308
+ attribution_configuration (CreateAdSetAttributionConfigurationV24Q3): [optional] # noqa: E501
303
309
  """
304
310
 
305
311
  _check_type = kwargs.pop('_check_type', True)
@@ -66,8 +66,6 @@ class CreateCoupon(ModelNormal):
66
66
  }
67
67
 
68
68
  validations = {
69
- ('images',): {
70
- },
71
69
  ('show_every',): {
72
70
  'inclusive_maximum': 10,
73
71
  'inclusive_minimum': 1,
@@ -58,8 +58,6 @@ class CreateImageSlide(ModelNormal):
58
58
  }
59
59
 
60
60
  validations = {
61
- ('slide_base64_strings',): {
62
- },
63
61
  }
64
62
 
65
63
  @cached_property
@@ -104,6 +104,7 @@ class Creative(ModelNormal):
104
104
  'html_tag_attributes': (HtmlTagAttributes,), # noqa: E501
105
105
  'dynamic_attributes': (DynamicAttributes,), # noqa: E501
106
106
  'adaptive_attributes': (AdaptiveAttributes,), # noqa: E501
107
+ 'id': (str, none_type,), # noqa: E501
107
108
  }
108
109
 
109
110
  @cached_property
@@ -123,6 +124,7 @@ class Creative(ModelNormal):
123
124
  'html_tag_attributes': 'htmlTagAttributes', # noqa: E501
124
125
  'dynamic_attributes': 'dynamicAttributes', # noqa: E501
125
126
  'adaptive_attributes': 'adaptiveAttributes', # noqa: E501
127
+ 'id': 'id', # noqa: E501
126
128
  }
127
129
 
128
130
  read_only_vars = {
@@ -179,6 +181,7 @@ class Creative(ModelNormal):
179
181
  html_tag_attributes (HtmlTagAttributes): [optional] # noqa: E501
180
182
  dynamic_attributes (DynamicAttributes): [optional] # noqa: E501
181
183
  adaptive_attributes (AdaptiveAttributes): [optional] # noqa: E501
184
+ id (str, none_type): Unique identifier (duplicate of the parent id).. [optional] # noqa: E501
182
185
  """
183
186
 
184
187
  _check_type = kwargs.pop('_check_type', True)
@@ -281,6 +284,7 @@ class Creative(ModelNormal):
281
284
  html_tag_attributes (HtmlTagAttributes): [optional] # noqa: E501
282
285
  dynamic_attributes (DynamicAttributes): [optional] # noqa: E501
283
286
  adaptive_attributes (AdaptiveAttributes): [optional] # noqa: E501
287
+ id (str, none_type): Unique identifier (duplicate of the parent id).. [optional] # noqa: E501
284
288
  """
285
289
 
286
290
  _check_type = kwargs.pop('_check_type', True)
@@ -67,10 +67,6 @@ class DynamicAttributes(ModelNormal):
67
67
  }
68
68
 
69
69
  validations = {
70
- ('logos',): {
71
- },
72
- ('calls_to_action',): {
73
- },
74
70
  }
75
71
 
76
72
  @cached_property
@@ -124,8 +124,8 @@ class DynamicWriteAttributes(ModelNormal):
124
124
 
125
125
  Args:
126
126
  logo_base64_string (str): Logo image as a base-64 encoded string
127
- body_text_color (str): Color of the creative's body text Valid hexadecimal RGB color (e.g. \"AB00FF\")
128
- prices_color (str): Color of the creative's prices Valid hexadecimal RGB color (e.g. \"AB00FF\")
127
+ body_text_color (str): Color of the creative's body text Valid hexadecimal color (e.g. \"AB00FF\")
128
+ prices_color (str): Color of the creative's prices Valid hexadecimal color (e.g. \"AB00FF\")
129
129
  calls_to_action ([str]): A Call-to-Action (CTA) is an action-driven instruction to your audience intended to provoke an immediate response, such as “Buy now” or “Go!”.
130
130
  product_image_display (str): Value can be \"ShowFullImage\" or \"ZoomOnImage\". Choose whether your product catalog images should fit inside the allocated space (\"ShowFullImage\") or whether they should fill that space (\"ZoomOnImage\"). If you choose ZoomOnImage, there may be some image cropping.
131
131
 
@@ -160,7 +160,7 @@ class DynamicWriteAttributes(ModelNormal):
160
160
  Animal class but this time we won't travel
161
161
  through its discriminator because we passed in
162
162
  _visited_composed_classes = (Animal,)
163
- creative_background_color (str, none_type): Color of the creative's background Valid hexadecimal RGB color (e.g. \"AB00FF\"). [optional] # noqa: E501
163
+ creative_background_color (str, none_type): Color of the creative's background Valid hexadecimal color (e.g. \"AB00FF\"). [optional] # noqa: E501
164
164
  primary_font (str, none_type): Font of the primary font Valid supported font like \"Arial\". [optional] # noqa: E501
165
165
  """
166
166
 
@@ -223,8 +223,8 @@ class DynamicWriteAttributes(ModelNormal):
223
223
 
224
224
  Args:
225
225
  logo_base64_string (str): Logo image as a base-64 encoded string
226
- body_text_color (str): Color of the creative's body text Valid hexadecimal RGB color (e.g. \"AB00FF\")
227
- prices_color (str): Color of the creative's prices Valid hexadecimal RGB color (e.g. \"AB00FF\")
226
+ body_text_color (str): Color of the creative's body text Valid hexadecimal color (e.g. \"AB00FF\")
227
+ prices_color (str): Color of the creative's prices Valid hexadecimal color (e.g. \"AB00FF\")
228
228
  calls_to_action ([str]): A Call-to-Action (CTA) is an action-driven instruction to your audience intended to provoke an immediate response, such as “Buy now” or “Go!”.
229
229
  product_image_display (str): Value can be \"ShowFullImage\" or \"ZoomOnImage\". Choose whether your product catalog images should fit inside the allocated space (\"ShowFullImage\") or whether they should fill that space (\"ZoomOnImage\"). If you choose ZoomOnImage, there may be some image cropping.
230
230
 
@@ -259,7 +259,7 @@ class DynamicWriteAttributes(ModelNormal):
259
259
  Animal class but this time we won't travel
260
260
  through its discriminator because we passed in
261
261
  _visited_composed_classes = (Animal,)
262
- creative_background_color (str, none_type): Color of the creative's background Valid hexadecimal RGB color (e.g. \"AB00FF\"). [optional] # noqa: E501
262
+ creative_background_color (str, none_type): Color of the creative's background Valid hexadecimal color (e.g. \"AB00FF\"). [optional] # noqa: E501
263
263
  primary_font (str, none_type): Font of the primary font Valid supported font like \"Arial\". [optional] # noqa: E501
264
264
  """
265
265
 
@@ -62,8 +62,6 @@ class HtmlTagAttributes(ModelNormal):
62
62
  }
63
63
 
64
64
  validations = {
65
- ('tags',): {
66
- },
67
65
  }
68
66
 
69
67
  @cached_property
@@ -62,8 +62,6 @@ class HtmlTagWriteAttributes(ModelNormal):
62
62
  }
63
63
 
64
64
  validations = {
65
- ('tags',): {
66
- },
67
65
  }
68
66
 
69
67
  @cached_property
@@ -58,8 +58,6 @@ class ImageAttributes(ModelNormal):
58
58
  }
59
59
 
60
60
  validations = {
61
- ('urls',): {
62
- },
63
61
  }
64
62
 
65
63
  @cached_property
@@ -62,8 +62,6 @@ class ImageSet(ModelNormal):
62
62
  }
63
63
 
64
64
  validations = {
65
- ('images',): {
66
- },
67
65
  }
68
66
 
69
67
  @cached_property
@@ -58,8 +58,6 @@ class ImageSlide(ModelNormal):
58
58
  }
59
59
 
60
60
  validations = {
61
- ('slide_urls',): {
62
- },
63
61
  }
64
62
 
65
63
  @cached_property
@@ -75,7 +75,7 @@ class JsonReportRows(ModelNormal):
75
75
  and the value is attribute type.
76
76
  """
77
77
  return {
78
- 'rows': ([{str: (str,)}], none_type,), # noqa: E501
78
+ 'rows': ([{str: (str, none_type)}], none_type,), # noqa: E501
79
79
  }
80
80
 
81
81
  @cached_property
@@ -128,7 +128,7 @@ class JsonReportRows(ModelNormal):
128
128
  Animal class but this time we won't travel
129
129
  through its discriminator because we passed in
130
130
  _visited_composed_classes = (Animal,)
131
- rows ([{str: (str,)}], none_type): [optional] # noqa: E501
131
+ rows ([{str: (str, none_type)}], none_type): [optional] # noqa: E501
132
132
  """
133
133
 
134
134
  _check_type = kwargs.pop('_check_type', True)
@@ -214,7 +214,7 @@ class JsonReportRows(ModelNormal):
214
214
  Animal class but this time we won't travel
215
215
  through its discriminator because we passed in
216
216
  _visited_composed_classes = (Animal,)
217
- rows ([{str: (str,)}], none_type): [optional] # noqa: E501
217
+ rows ([{str: (str, none_type)}], none_type): [optional] # noqa: E501
218
218
  """
219
219
 
220
220
  _check_type = kwargs.pop('_check_type', True)