criteo-api-retailmedia-sdk 0.0.250129__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-retailmedia-sdk might be problematic. Click here for more details.

Files changed (22) hide show
  1. criteo_api_retailmedia_preview/__init__.py +1 -1
  2. criteo_api_retailmedia_preview/api/analytics_api.py +142 -0
  3. criteo_api_retailmedia_preview/api/campaign_api.py +161 -0
  4. criteo_api_retailmedia_preview/api/catalog_api.py +0 -161
  5. criteo_api_retailmedia_preview/api/on_site_recommendation_api.py +0 -1
  6. criteo_api_retailmedia_preview/api_client.py +1 -1
  7. criteo_api_retailmedia_preview/configuration.py +1 -1
  8. criteo_api_retailmedia_preview/model/async_accounts_report.py +4 -0
  9. criteo_api_retailmedia_preview/model/async_campaigns_report.py +4 -0
  10. criteo_api_retailmedia_preview/model/{retail_media_contactlist_amendment_attributes.py → async_fill_rate_report.py} +80 -31
  11. criteo_api_retailmedia_preview/model/{http_validation_error.py → async_fill_rate_report_request.py} +9 -9
  12. criteo_api_retailmedia_preview/model/{location_inner.py → async_fill_rate_report_resource.py} +17 -3
  13. criteo_api_retailmedia_preview/model/async_line_items_report.py +4 -0
  14. criteo_api_retailmedia_preview/model/message.py +5 -5
  15. criteo_api_retailmedia_preview/model/retail_media_contactlist_amendment.py +31 -18
  16. criteo_api_retailmedia_preview/models/__init__.py +3 -5
  17. {criteo_api_retailmedia_sdk-0.0.250129.dist-info → criteo_api_retailmedia_sdk-0.0.250205.dist-info}/METADATA +3 -3
  18. {criteo_api_retailmedia_sdk-0.0.250129.dist-info → criteo_api_retailmedia_sdk-0.0.250205.dist-info}/RECORD +20 -22
  19. criteo_api_retailmedia_preview/model/botmessage.py +0 -329
  20. criteo_api_retailmedia_preview/model/validation_error.py +0 -287
  21. {criteo_api_retailmedia_sdk-0.0.250129.dist-info → criteo_api_retailmedia_sdk-0.0.250205.dist-info}/WHEEL +0 -0
  22. {criteo_api_retailmedia_sdk-0.0.250129.dist-info → criteo_api_retailmedia_sdk-0.0.250205.dist-info}/top_level.txt +0 -0
@@ -30,7 +30,7 @@ from criteo_api_retailmedia_preview.exceptions import ApiAttributeError
30
30
 
31
31
 
32
32
 
33
- class RetailMediaContactlistAmendmentAttributes(ModelNormal):
33
+ class AsyncFillRateReport(ModelNormal):
34
34
  """NOTE: This class is auto generated by OpenAPI Generator.
35
35
  Ref: https://openapi-generator.tech
36
36
 
@@ -55,18 +55,47 @@ class RetailMediaContactlistAmendmentAttributes(ModelNormal):
55
55
  """
56
56
 
57
57
  allowed_values = {
58
- ('operation',): {
59
- 'ADD': "add",
60
- 'REMOVE': "remove",
58
+ ('dimensions',): {
59
+ 'DATE': "date",
60
+ 'RETAILERID': "retailerId",
61
+ 'RETAILERNAME': "retailerName",
62
+ 'PLACEMENTID': "placementId",
63
+ 'PLACEMENTNAME': "placementName",
64
+ 'PAGETYPENAME': "pageTypeName",
65
+ 'ENVIRONMENT': "environment",
66
+ 'SERVEDCATEGORY': "servedCategory",
67
+ 'RETAILERCATEGORYID': "retailerCategoryId",
68
+ 'RETAILERCATEGORYNAME': "retailerCategoryName",
61
69
  },
62
- ('identifier_type',): {
70
+ ('metrics',): {
71
+ 'PAGEVIEWS': "pageViews",
72
+ 'AVAILABLEPLACEMENTS': "availablePlacements",
73
+ 'UNFILLEDPLACEMENTS': "unfilledPlacements",
74
+ 'FILLRATE': "fillRate",
75
+ 'PLACEMENTIMPRESSIONS': "placementImpressions",
76
+ 'PRODUCTIMPRESSIONS': "productImpressions",
77
+ 'IMPRESSIONS': "impressions",
78
+ 'PLACEMENTCLICKS': "placementClicks",
79
+ 'PRODUCTCLICKS': "productClicks",
80
+ 'CLICKS': "clicks",
81
+ 'PLACEMENTIMPRESSIONSCTR': "placementImpressionsCTR",
82
+ 'PRODUCTIMPRESSIONSCTR': "productImpressionsCTR",
83
+ 'CPM': "cpm",
84
+ 'CPC': "cpc",
85
+ 'PLACEMENTIMPRESSIONSREVENUE': "placementImpressionsRevenue",
86
+ 'PRODUCTCLICKSREVENUE': "productClicksRevenue",
87
+ 'TOTALREVENUE': "totalRevenue",
88
+ 'WORKINGMEDIA': "workingMedia",
89
+ 'NETREVENUE': "netRevenue",
90
+ 'UNIQUEVISITORS': "uniqueVisitors",
91
+ 'FREQUENCY': "frequency",
92
+ },
93
+ ('format',): {
63
94
  'None': None,
64
- 'EMAIL': "Email",
65
- 'USERIDENTIFIER': "UserIdentifier",
66
- 'IDENTITYLINK': "IdentityLink",
67
- 'GUM': "Gum",
68
- 'CUSTOMERID': "CustomerId",
69
- 'PHONENUMBER': "PhoneNumber",
95
+ 'JSON': "json",
96
+ 'JSON-COMPACT': "json-compact",
97
+ 'JSON-NEWLINE': "json-newline",
98
+ 'CSV': "csv",
70
99
  },
71
100
  }
72
101
 
@@ -94,9 +123,13 @@ class RetailMediaContactlistAmendmentAttributes(ModelNormal):
94
123
  and the value is attribute type.
95
124
  """
96
125
  return {
97
- 'operation': (str,), # noqa: E501
98
- 'identifiers': ([str],), # noqa: E501
99
- 'identifier_type': (str, none_type,), # noqa: E501
126
+ 'dimensions': ([str],), # noqa: E501
127
+ 'metrics': ([str],), # noqa: E501
128
+ 'start_date': (datetime,), # noqa: E501
129
+ 'end_date': (datetime,), # noqa: E501
130
+ 'supply_account_ids': ([str], none_type,), # noqa: E501
131
+ 'format': (str, none_type,), # noqa: E501
132
+ 'timezone': (str, none_type,), # noqa: E501
100
133
  }
101
134
 
102
135
  @cached_property
@@ -105,9 +138,13 @@ class RetailMediaContactlistAmendmentAttributes(ModelNormal):
105
138
 
106
139
 
107
140
  attribute_map = {
108
- 'operation': 'operation', # noqa: E501
109
- 'identifiers': 'identifiers', # noqa: E501
110
- 'identifier_type': 'identifierType', # noqa: E501
141
+ 'dimensions': 'dimensions', # noqa: E501
142
+ 'metrics': 'metrics', # noqa: E501
143
+ 'start_date': 'startDate', # noqa: E501
144
+ 'end_date': 'endDate', # noqa: E501
145
+ 'supply_account_ids': 'supplyAccountIds', # noqa: E501
146
+ 'format': 'format', # noqa: E501
147
+ 'timezone': 'timezone', # noqa: E501
111
148
  }
112
149
 
113
150
  read_only_vars = {
@@ -117,12 +154,14 @@ class RetailMediaContactlistAmendmentAttributes(ModelNormal):
117
154
 
118
155
  @classmethod
119
156
  @convert_js_args_to_python_args
120
- def _from_openapi_data(cls, operation, identifiers, *args, **kwargs): # noqa: E501
121
- """RetailMediaContactlistAmendmentAttributes - a model defined in OpenAPI
157
+ def _from_openapi_data(cls, dimensions, metrics, start_date, end_date, *args, **kwargs): # noqa: E501
158
+ """AsyncFillRateReport - a model defined in OpenAPI
122
159
 
123
160
  Args:
124
- operation (str): Whether to add or remove users
125
- identifiers ([str]): The users to add or remove, each in the schema specified
161
+ dimensions ([str]): List of dimensions to report on
162
+ metrics ([str]): List of metrics to report on
163
+ start_date (datetime): Start date
164
+ end_date (datetime): End date
126
165
 
127
166
  Keyword Args:
128
167
  _check_type (bool): if True, values for parameters in openapi_types
@@ -155,7 +194,9 @@ class RetailMediaContactlistAmendmentAttributes(ModelNormal):
155
194
  Animal class but this time we won't travel
156
195
  through its discriminator because we passed in
157
196
  _visited_composed_classes = (Animal,)
158
- identifier_type (str, none_type): What type of identifiers are used. [optional] # noqa: E501
197
+ supply_account_ids ([str], none_type): Supply account ids to report on. [optional] # noqa: E501
198
+ format (str, none_type): Format of the output. [optional] if omitted the server will use the default value of "json" # noqa: E501
199
+ timezone (str, none_type): Time zone : see criteo developer portal for supported time zones. [optional] if omitted the server will use the default value of "UTC" # noqa: E501
159
200
  """
160
201
 
161
202
  _check_type = kwargs.pop('_check_type', True)
@@ -187,8 +228,10 @@ class RetailMediaContactlistAmendmentAttributes(ModelNormal):
187
228
  self._configuration = _configuration
188
229
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
189
230
 
190
- self.operation = operation
191
- self.identifiers = identifiers
231
+ self.dimensions = dimensions
232
+ self.metrics = metrics
233
+ self.start_date = start_date
234
+ self.end_date = end_date
192
235
  for var_name, var_value in kwargs.items():
193
236
  if var_name not in self.attribute_map and \
194
237
  self._configuration is not None and \
@@ -209,12 +252,14 @@ class RetailMediaContactlistAmendmentAttributes(ModelNormal):
209
252
  ])
210
253
 
211
254
  @convert_js_args_to_python_args
212
- def __init__(self, operation, identifiers, *args, **kwargs): # noqa: E501
213
- """RetailMediaContactlistAmendmentAttributes - a model defined in OpenAPI
255
+ def __init__(self, dimensions, metrics, start_date, end_date, *args, **kwargs): # noqa: E501
256
+ """AsyncFillRateReport - a model defined in OpenAPI
214
257
 
215
258
  Args:
216
- operation (str): Whether to add or remove users
217
- identifiers ([str]): The users to add or remove, each in the schema specified
259
+ dimensions ([str]): List of dimensions to report on
260
+ metrics ([str]): List of metrics to report on
261
+ start_date (datetime): Start date
262
+ end_date (datetime): End date
218
263
 
219
264
  Keyword Args:
220
265
  _check_type (bool): if True, values for parameters in openapi_types
@@ -247,7 +292,9 @@ class RetailMediaContactlistAmendmentAttributes(ModelNormal):
247
292
  Animal class but this time we won't travel
248
293
  through its discriminator because we passed in
249
294
  _visited_composed_classes = (Animal,)
250
- identifier_type (str, none_type): What type of identifiers are used. [optional] # noqa: E501
295
+ supply_account_ids ([str], none_type): Supply account ids to report on. [optional] # noqa: E501
296
+ format (str, none_type): Format of the output. [optional] if omitted the server will use the default value of "json" # noqa: E501
297
+ timezone (str, none_type): Time zone : see criteo developer portal for supported time zones. [optional] if omitted the server will use the default value of "UTC" # noqa: E501
251
298
  """
252
299
 
253
300
  _check_type = kwargs.pop('_check_type', True)
@@ -277,8 +324,10 @@ class RetailMediaContactlistAmendmentAttributes(ModelNormal):
277
324
  self._configuration = _configuration
278
325
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
279
326
 
280
- self.operation = operation
281
- self.identifiers = identifiers
327
+ self.dimensions = dimensions
328
+ self.metrics = metrics
329
+ self.start_date = start_date
330
+ self.end_date = end_date
282
331
  for var_name, var_value in kwargs.items():
283
332
  if var_name not in self.attribute_map and \
284
333
  self._configuration is not None and \
@@ -30,11 +30,11 @@ from criteo_api_retailmedia_preview.exceptions import ApiAttributeError
30
30
 
31
31
 
32
32
  def lazy_import():
33
- from criteo_api_retailmedia_preview.model.validation_error import ValidationError
34
- globals()['ValidationError'] = ValidationError
33
+ from criteo_api_retailmedia_preview.model.async_fill_rate_report_resource import AsyncFillRateReportResource
34
+ globals()['AsyncFillRateReportResource'] = AsyncFillRateReportResource
35
35
 
36
36
 
37
- class HttpValidationError(ModelNormal):
37
+ class AsyncFillRateReportRequest(ModelNormal):
38
38
  """NOTE: This class is auto generated by OpenAPI Generator.
39
39
  Ref: https://openapi-generator.tech
40
40
 
@@ -87,7 +87,7 @@ class HttpValidationError(ModelNormal):
87
87
  """
88
88
  lazy_import()
89
89
  return {
90
- 'detail': ([ValidationError], none_type,), # noqa: E501
90
+ 'data': (AsyncFillRateReportResource,), # noqa: E501
91
91
  }
92
92
 
93
93
  @cached_property
@@ -96,7 +96,7 @@ class HttpValidationError(ModelNormal):
96
96
 
97
97
 
98
98
  attribute_map = {
99
- 'detail': 'detail', # noqa: E501
99
+ 'data': 'data', # noqa: E501
100
100
  }
101
101
 
102
102
  read_only_vars = {
@@ -107,7 +107,7 @@ class HttpValidationError(ModelNormal):
107
107
  @classmethod
108
108
  @convert_js_args_to_python_args
109
109
  def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
110
- """HttpValidationError - a model defined in OpenAPI
110
+ """AsyncFillRateReportRequest - a model defined in OpenAPI
111
111
 
112
112
  Keyword Args:
113
113
  _check_type (bool): if True, values for parameters in openapi_types
@@ -140,7 +140,7 @@ class HttpValidationError(ModelNormal):
140
140
  Animal class but this time we won't travel
141
141
  through its discriminator because we passed in
142
142
  _visited_composed_classes = (Animal,)
143
- detail ([ValidationError], none_type): [optional] # noqa: E501
143
+ data (AsyncFillRateReportResource): [optional] # noqa: E501
144
144
  """
145
145
 
146
146
  _check_type = kwargs.pop('_check_type', True)
@@ -193,7 +193,7 @@ class HttpValidationError(ModelNormal):
193
193
 
194
194
  @convert_js_args_to_python_args
195
195
  def __init__(self, *args, **kwargs): # noqa: E501
196
- """HttpValidationError - a model defined in OpenAPI
196
+ """AsyncFillRateReportRequest - a model defined in OpenAPI
197
197
 
198
198
  Keyword Args:
199
199
  _check_type (bool): if True, values for parameters in openapi_types
@@ -226,7 +226,7 @@ class HttpValidationError(ModelNormal):
226
226
  Animal class but this time we won't travel
227
227
  through its discriminator because we passed in
228
228
  _visited_composed_classes = (Animal,)
229
- detail ([ValidationError], none_type): [optional] # noqa: E501
229
+ data (AsyncFillRateReportResource): [optional] # noqa: E501
230
230
  """
231
231
 
232
232
  _check_type = kwargs.pop('_check_type', True)
@@ -29,8 +29,12 @@ 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.async_fill_rate_report import AsyncFillRateReport
34
+ globals()['AsyncFillRateReport'] = AsyncFillRateReport
32
35
 
33
- class LocationInner(ModelNormal):
36
+
37
+ class AsyncFillRateReportResource(ModelNormal):
34
38
  """NOTE: This class is auto generated by OpenAPI Generator.
35
39
  Ref: https://openapi-generator.tech
36
40
 
@@ -66,6 +70,7 @@ class LocationInner(ModelNormal):
66
70
  This must be a method because a model may have properties that are
67
71
  of type self, this must run after the class is loaded
68
72
  """
73
+ lazy_import()
69
74
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
70
75
 
71
76
  _nullable = False
@@ -80,7 +85,10 @@ class LocationInner(ModelNormal):
80
85
  openapi_types (dict): The key is attribute name
81
86
  and the value is attribute type.
82
87
  """
88
+ lazy_import()
83
89
  return {
90
+ 'type': (str, none_type,), # noqa: E501
91
+ 'attributes': (AsyncFillRateReport,), # noqa: E501
84
92
  }
85
93
 
86
94
  @cached_property
@@ -89,6 +97,8 @@ class LocationInner(ModelNormal):
89
97
 
90
98
 
91
99
  attribute_map = {
100
+ 'type': 'type', # noqa: E501
101
+ 'attributes': 'attributes', # noqa: E501
92
102
  }
93
103
 
94
104
  read_only_vars = {
@@ -99,7 +109,7 @@ class LocationInner(ModelNormal):
99
109
  @classmethod
100
110
  @convert_js_args_to_python_args
101
111
  def _from_openapi_data(cls, *args, **kwargs): # noqa: E501
102
- """LocationInner - a model defined in OpenAPI
112
+ """AsyncFillRateReportResource - a model defined in OpenAPI
103
113
 
104
114
  Keyword Args:
105
115
  _check_type (bool): if True, values for parameters in openapi_types
@@ -132,6 +142,8 @@ class LocationInner(ModelNormal):
132
142
  Animal class but this time we won't travel
133
143
  through its discriminator because we passed in
134
144
  _visited_composed_classes = (Animal,)
145
+ type (str, none_type): [optional] # noqa: E501
146
+ attributes (AsyncFillRateReport): [optional] # noqa: E501
135
147
  """
136
148
 
137
149
  _check_type = kwargs.pop('_check_type', True)
@@ -184,7 +196,7 @@ class LocationInner(ModelNormal):
184
196
 
185
197
  @convert_js_args_to_python_args
186
198
  def __init__(self, *args, **kwargs): # noqa: E501
187
- """LocationInner - a model defined in OpenAPI
199
+ """AsyncFillRateReportResource - a model defined in OpenAPI
188
200
 
189
201
  Keyword Args:
190
202
  _check_type (bool): if True, values for parameters in openapi_types
@@ -217,6 +229,8 @@ class LocationInner(ModelNormal):
217
229
  Animal class but this time we won't travel
218
230
  through its discriminator because we passed in
219
231
  _visited_composed_classes = (Animal,)
232
+ type (str, none_type): [optional] # noqa: E501
233
+ attributes (AsyncFillRateReport): [optional] # noqa: E501
220
234
  """
221
235
 
222
236
  _check_type = kwargs.pop('_check_type', True)
@@ -181,6 +181,10 @@ class AsyncLineItemsReport(ModelNormal):
181
181
  'VIDEOSTARTINGRATE': "videoStartingRate",
182
182
  'VIDEOCPC': "videoCPC",
183
183
  'VIDEOCPCV': "videoCPCV",
184
+ 'NEWTOBRANDATTRIBUTEDSALES': "newToBrandAttributedSales",
185
+ 'NEWTOBRANDATTRIBUTEDSALESRATE': "newToBrandAttributedSalesRate",
186
+ 'NEWTOBRANDATTRIBUTEDUNITS': "newToBrandAttributedUnits",
187
+ 'NEWTOBRANDATTRIBUTEDUNITSRATE': "newToBrandAttributedUnitsRate",
184
188
  'UNIQUEVISITORS': "uniqueVisitors",
185
189
  'FREQUENCY': "frequency",
186
190
  },
@@ -30,8 +30,8 @@ from criteo_api_retailmedia_preview.exceptions import ApiAttributeError
30
30
 
31
31
 
32
32
  def lazy_import():
33
- from criteo_api_retailmedia_preview.model.botmessage import Botmessage
34
- globals()['Botmessage'] = Botmessage
33
+ from criteo_api_retailmedia_preview.model.bot_message import BotMessage
34
+ globals()['BotMessage'] = BotMessage
35
35
 
36
36
 
37
37
  class Message(ModelNormal):
@@ -88,7 +88,7 @@ class Message(ModelNormal):
88
88
  lazy_import()
89
89
  return {
90
90
  'user_message': (str, none_type,), # noqa: E501
91
- 'bot_message': (Botmessage,), # noqa: E501
91
+ 'bot_message': (BotMessage,), # noqa: E501
92
92
  }
93
93
 
94
94
  @cached_property
@@ -143,7 +143,7 @@ class Message(ModelNormal):
143
143
  through its discriminator because we passed in
144
144
  _visited_composed_classes = (Animal,)
145
145
  user_message (str, none_type): user prompt. [optional] # noqa: E501
146
- bot_message (Botmessage): [optional] # noqa: E501
146
+ bot_message (BotMessage): [optional] # noqa: E501
147
147
  """
148
148
 
149
149
  _check_type = kwargs.pop('_check_type', True)
@@ -230,7 +230,7 @@ class Message(ModelNormal):
230
230
  through its discriminator because we passed in
231
231
  _visited_composed_classes = (Animal,)
232
232
  user_message (str, none_type): user prompt. [optional] # noqa: E501
233
- bot_message (Botmessage): [optional] # noqa: E501
233
+ bot_message (BotMessage): [optional] # noqa: E501
234
234
  """
235
235
 
236
236
  _check_type = kwargs.pop('_check_type', True)
@@ -29,10 +29,6 @@ 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.retail_media_contactlist_amendment_attributes import RetailMediaContactlistAmendmentAttributes
34
- globals()['RetailMediaContactlistAmendmentAttributes'] = RetailMediaContactlistAmendmentAttributes
35
-
36
32
 
37
33
  class RetailMediaContactlistAmendment(ModelNormal):
38
34
  """NOTE: This class is auto generated by OpenAPI Generator.
@@ -59,6 +55,19 @@ class RetailMediaContactlistAmendment(ModelNormal):
59
55
  """
60
56
 
61
57
  allowed_values = {
58
+ ('operation',): {
59
+ 'ADD': "add",
60
+ 'REMOVE': "remove",
61
+ },
62
+ ('identifier_type',): {
63
+ 'None': None,
64
+ 'EMAIL': "Email",
65
+ 'USERIDENTIFIER': "UserIdentifier",
66
+ 'IDENTITYLINK': "IdentityLink",
67
+ 'GUM': "Gum",
68
+ 'CUSTOMERID': "CustomerId",
69
+ 'PHONENUMBER': "PhoneNumber",
70
+ },
62
71
  }
63
72
 
64
73
  validations = {
@@ -70,7 +79,6 @@ class RetailMediaContactlistAmendment(ModelNormal):
70
79
  This must be a method because a model may have properties that are
71
80
  of type self, this must run after the class is loaded
72
81
  """
73
- lazy_import()
74
82
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
75
83
 
76
84
  _nullable = False
@@ -85,10 +93,10 @@ class RetailMediaContactlistAmendment(ModelNormal):
85
93
  openapi_types (dict): The key is attribute name
86
94
  and the value is attribute type.
87
95
  """
88
- lazy_import()
89
96
  return {
90
- 'attributes': (RetailMediaContactlistAmendmentAttributes,), # noqa: E501
91
- 'type': (str, none_type,), # noqa: E501
97
+ 'operation': (str,), # noqa: E501
98
+ 'identifiers': ([str],), # noqa: E501
99
+ 'identifier_type': (str, none_type,), # noqa: E501
92
100
  }
93
101
 
94
102
  @cached_property
@@ -97,8 +105,9 @@ class RetailMediaContactlistAmendment(ModelNormal):
97
105
 
98
106
 
99
107
  attribute_map = {
100
- 'attributes': 'attributes', # noqa: E501
101
- 'type': 'type', # noqa: E501
108
+ 'operation': 'operation', # noqa: E501
109
+ 'identifiers': 'identifiers', # noqa: E501
110
+ 'identifier_type': 'identifierType', # noqa: E501
102
111
  }
103
112
 
104
113
  read_only_vars = {
@@ -108,11 +117,12 @@ class RetailMediaContactlistAmendment(ModelNormal):
108
117
 
109
118
  @classmethod
110
119
  @convert_js_args_to_python_args
111
- def _from_openapi_data(cls, attributes, *args, **kwargs): # noqa: E501
120
+ def _from_openapi_data(cls, operation, identifiers, *args, **kwargs): # noqa: E501
112
121
  """RetailMediaContactlistAmendment - a model defined in OpenAPI
113
122
 
114
123
  Args:
115
- attributes (RetailMediaContactlistAmendmentAttributes):
124
+ operation (str): Whether to add or remove users
125
+ identifiers ([str]): The users to add or remove, each in the schema specified
116
126
 
117
127
  Keyword Args:
118
128
  _check_type (bool): if True, values for parameters in openapi_types
@@ -145,7 +155,7 @@ class RetailMediaContactlistAmendment(ModelNormal):
145
155
  Animal class but this time we won't travel
146
156
  through its discriminator because we passed in
147
157
  _visited_composed_classes = (Animal,)
148
- type (str, none_type): User List. [optional] # noqa: E501
158
+ identifier_type (str, none_type): What type of identifiers are used. [optional] # noqa: E501
149
159
  """
150
160
 
151
161
  _check_type = kwargs.pop('_check_type', True)
@@ -177,7 +187,8 @@ class RetailMediaContactlistAmendment(ModelNormal):
177
187
  self._configuration = _configuration
178
188
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
179
189
 
180
- self.attributes = attributes
190
+ self.operation = operation
191
+ self.identifiers = identifiers
181
192
  for var_name, var_value in kwargs.items():
182
193
  if var_name not in self.attribute_map and \
183
194
  self._configuration is not None and \
@@ -198,11 +209,12 @@ class RetailMediaContactlistAmendment(ModelNormal):
198
209
  ])
199
210
 
200
211
  @convert_js_args_to_python_args
201
- def __init__(self, attributes, *args, **kwargs): # noqa: E501
212
+ def __init__(self, operation, identifiers, *args, **kwargs): # noqa: E501
202
213
  """RetailMediaContactlistAmendment - a model defined in OpenAPI
203
214
 
204
215
  Args:
205
- attributes (RetailMediaContactlistAmendmentAttributes):
216
+ operation (str): Whether to add or remove users
217
+ identifiers ([str]): The users to add or remove, each in the schema specified
206
218
 
207
219
  Keyword Args:
208
220
  _check_type (bool): if True, values for parameters in openapi_types
@@ -235,7 +247,7 @@ class RetailMediaContactlistAmendment(ModelNormal):
235
247
  Animal class but this time we won't travel
236
248
  through its discriminator because we passed in
237
249
  _visited_composed_classes = (Animal,)
238
- type (str, none_type): User List. [optional] # noqa: E501
250
+ identifier_type (str, none_type): What type of identifiers are used. [optional] # noqa: E501
239
251
  """
240
252
 
241
253
  _check_type = kwargs.pop('_check_type', True)
@@ -265,7 +277,8 @@ class RetailMediaContactlistAmendment(ModelNormal):
265
277
  self._configuration = _configuration
266
278
  self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
267
279
 
268
- self.attributes = attributes
280
+ self.operation = operation
281
+ self.identifiers = identifiers
269
282
  for var_name, var_value in kwargs.items():
270
283
  if var_name not in self.attribute_map and \
271
284
  self._configuration is not None and \
@@ -22,6 +22,9 @@ from criteo_api_retailmedia_preview.model.async_accounts_report_resource import
22
22
  from criteo_api_retailmedia_preview.model.async_campaigns_report import AsyncCampaignsReport
23
23
  from criteo_api_retailmedia_preview.model.async_campaigns_report_request import AsyncCampaignsReportRequest
24
24
  from criteo_api_retailmedia_preview.model.async_campaigns_report_resource import AsyncCampaignsReportResource
25
+ from criteo_api_retailmedia_preview.model.async_fill_rate_report import AsyncFillRateReport
26
+ from criteo_api_retailmedia_preview.model.async_fill_rate_report_request import AsyncFillRateReportRequest
27
+ from criteo_api_retailmedia_preview.model.async_fill_rate_report_resource import AsyncFillRateReportResource
25
28
  from criteo_api_retailmedia_preview.model.async_line_items_report import AsyncLineItemsReport
26
29
  from criteo_api_retailmedia_preview.model.async_line_items_report_request import AsyncLineItemsReportRequest
27
30
  from criteo_api_retailmedia_preview.model.async_line_items_report_resource import AsyncLineItemsReportResource
@@ -33,7 +36,6 @@ from criteo_api_retailmedia_preview.model.balance_response_v2 import BalanceResp
33
36
  from criteo_api_retailmedia_preview.model.balance_response_v2_response import BalanceResponseV2Response
34
37
  from criteo_api_retailmedia_preview.model.batch_accepted_response import BatchAcceptedResponse
35
38
  from criteo_api_retailmedia_preview.model.bot_message import BotMessage
36
- from criteo_api_retailmedia_preview.model.botmessage import Botmessage
37
39
  from criteo_api_retailmedia_preview.model.brand import Brand
38
40
  from criteo_api_retailmedia_preview.model.brand_id_search_request import BrandIdSearchRequest
39
41
  from criteo_api_retailmedia_preview.model.brand_id_search_result import BrandIdSearchResult
@@ -84,7 +86,6 @@ from criteo_api_retailmedia_preview.model.files_variable_value import FilesVaria
84
86
  from criteo_api_retailmedia_preview.model.grant_consent_input import GrantConsentInput
85
87
  from criteo_api_retailmedia_preview.model.grant_consent_model import GrantConsentModel
86
88
  from criteo_api_retailmedia_preview.model.grant_consent_model_value_resource import GrantConsentModelValueResource
87
- from criteo_api_retailmedia_preview.model.http_validation_error import HttpValidationError
88
89
  from criteo_api_retailmedia_preview.model.hyperlink_variable_value import HyperlinkVariableValue
89
90
  from criteo_api_retailmedia_preview.model.inbot_discussion import InbotDiscussion
90
91
  from criteo_api_retailmedia_preview.model.inbot_discussion_body_model import InbotDiscussionBodyModel
@@ -107,7 +108,6 @@ from criteo_api_retailmedia_preview.model.keywords_model_response import Keyword
107
108
  from criteo_api_retailmedia_preview.model.line_item_bid_multipliers_v2_request import LineItemBidMultipliersV2Request
108
109
  from criteo_api_retailmedia_preview.model.line_item_bid_multipliers_v2_response import LineItemBidMultipliersV2Response
109
110
  from criteo_api_retailmedia_preview.model.line_item_product_status import LineItemProductStatus
110
- from criteo_api_retailmedia_preview.model.location_inner import LocationInner
111
111
  from criteo_api_retailmedia_preview.model.loyalty_points import LoyaltyPoints
112
112
  from criteo_api_retailmedia_preview.model.match_type_model import MatchTypeModel
113
113
  from criteo_api_retailmedia_preview.model.message import Message
@@ -182,7 +182,6 @@ from criteo_api_retailmedia_preview.model.resource_of_sku_slim_data_v2 import Re
182
182
  from criteo_api_retailmedia_preview.model.resource_of_update_balance_model_v2 import ResourceOfUpdateBalanceModelV2
183
183
  from criteo_api_retailmedia_preview.model.resource_outcome import ResourceOutcome
184
184
  from criteo_api_retailmedia_preview.model.retail_media_contactlist_amendment import RetailMediaContactlistAmendment
185
- from criteo_api_retailmedia_preview.model.retail_media_contactlist_amendment_attributes import RetailMediaContactlistAmendmentAttributes
186
185
  from criteo_api_retailmedia_preview.model.retail_media_contactlist_amendment_request import RetailMediaContactlistAmendmentRequest
187
186
  from criteo_api_retailmedia_preview.model.retail_media_contactlist_operation import RetailMediaContactlistOperation
188
187
  from criteo_api_retailmedia_preview.model.retail_media_contactlist_operation_response_attributes import RetailMediaContactlistOperationResponseAttributes
@@ -260,7 +259,6 @@ from criteo_api_retailmedia_preview.model.template_variable_value import Templat
260
259
  from criteo_api_retailmedia_preview.model.text_variable_value import TextVariableValue
261
260
  from criteo_api_retailmedia_preview.model.update_balance_model_v2 import UpdateBalanceModelV2
262
261
  from criteo_api_retailmedia_preview.model.update_balance_model_v2_request import UpdateBalanceModelV2Request
263
- from criteo_api_retailmedia_preview.model.validation_error import ValidationError
264
262
  from criteo_api_retailmedia_preview.model.value_resource_brand_id_search_request import ValueResourceBrandIdSearchRequest
265
263
  from criteo_api_retailmedia_preview.model.value_resource_collection_outcome_of_retail_media_seller import ValueResourceCollectionOutcomeOfRetailMediaSeller
266
264
  from criteo_api_retailmedia_preview.model.value_resource_cpc_min_bids_request import ValueResourceCpcMinBidsRequest
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: criteo-api-retailmedia-sdk
3
- Version: 0.0.250129
3
+ Version: 0.0.250205
4
4
  Summary: Criteo API SDK
5
5
  Home-page: https://github.com/criteo/criteo-api-python-sdk
6
6
  Author: Criteo
@@ -35,9 +35,9 @@ IMPORTANT: This Python package links to Criteo production environment. Any test
35
35
 
36
36
 
37
37
  ```sh
38
- pip install criteo-api-retailmedia-sdk==0.0.250129
38
+ pip install criteo-api-retailmedia-sdk==0.0.250205
39
39
  ```
40
- (you may need to run `pip` with root permission: `sudo pip install criteo-api-retailmedia-sdk==0.0.250129`)
40
+ (you may need to run `pip` with root permission: `sudo pip install criteo-api-retailmedia-sdk==0.0.250205`)
41
41
 
42
42
  Then import the package:
43
43
  ```python