criteo-api-retailmedia-sdk 2025.1.0.250217__py3-none-any.whl → 2025.1.0.250317__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 (121) hide show
  1. {criteo_api_retailmedia_sdk-2025.1.0.250217.dist-info → criteo_api_retailmedia_sdk-2025.1.0.250317.dist-info}/METADATA +3 -3
  2. {criteo_api_retailmedia_sdk-2025.1.0.250217.dist-info → criteo_api_retailmedia_sdk-2025.1.0.250317.dist-info}/RECORD +121 -120
  3. {criteo_api_retailmedia_sdk-2025.1.0.250217.dist-info → criteo_api_retailmedia_sdk-2025.1.0.250317.dist-info}/WHEEL +1 -1
  4. criteo_api_retailmedia_v2025_01/__init__.py +1 -1
  5. criteo_api_retailmedia_v2025_01/api/accounts_api.py +1 -5
  6. criteo_api_retailmedia_v2025_01/api_client.py +1 -1
  7. criteo_api_retailmedia_v2025_01/configuration.py +1 -1
  8. criteo_api_retailmedia_v2025_01/model/add_remove_keyword_model.py +3 -3
  9. criteo_api_retailmedia_v2025_01/model/application_summary_model.py +1 -1
  10. criteo_api_retailmedia_v2025_01/model/application_summary_model_resource.py +1 -1
  11. criteo_api_retailmedia_v2025_01/model/asset.py +1 -1
  12. criteo_api_retailmedia_v2025_01/model/asset_resource.py +1 -1
  13. criteo_api_retailmedia_v2025_01/model/async_campaigns_report.py +39 -49
  14. criteo_api_retailmedia_v2025_01/model/async_campaigns_report_resource.py +3 -3
  15. criteo_api_retailmedia_v2025_01/model/async_line_items_report.py +39 -49
  16. criteo_api_retailmedia_v2025_01/model/async_line_items_report_resource.py +3 -3
  17. criteo_api_retailmedia_v2025_01/model/async_revenue_report.py +60 -73
  18. criteo_api_retailmedia_v2025_01/model/async_revenue_report_resource.py +3 -3
  19. criteo_api_retailmedia_v2025_01/model/balance_response_v2.py +1 -1
  20. criteo_api_retailmedia_v2025_01/model/campaign_budget_overrides.py +1 -1
  21. criteo_api_retailmedia_v2025_01/model/choice_variable_specification.py +1 -1
  22. criteo_api_retailmedia_v2025_01/model/choice_variable_value.py +1 -1
  23. criteo_api_retailmedia_v2025_01/model/common_error.py +26 -31
  24. criteo_api_retailmedia_v2025_01/model/common_warning.py +26 -31
  25. criteo_api_retailmedia_v2025_01/model/create_balance_v2.py +3 -3
  26. criteo_api_retailmedia_v2025_01/model/creative2.py +5 -1
  27. criteo_api_retailmedia_v2025_01/model/creative202110.py +1 -1
  28. criteo_api_retailmedia_v2025_01/model/creative202210.py +1 -1
  29. criteo_api_retailmedia_v2025_01/model/creative_update_model202207.py +3 -3
  30. criteo_api_retailmedia_v2025_01/model/entity_resource_of_retail_media_account.py +5 -12
  31. criteo_api_retailmedia_v2025_01/model/entity_resource_outcome_of_retail_media_account.py +10 -17
  32. criteo_api_retailmedia_v2025_01/model/external_account.py +2 -8
  33. criteo_api_retailmedia_v2025_01/model/external_auction_line_item.py +4 -0
  34. criteo_api_retailmedia_v2025_01/model/external_auction_line_item_create_model.py +3 -3
  35. criteo_api_retailmedia_v2025_01/model/external_auction_line_item_update_model.py +3 -3
  36. criteo_api_retailmedia_v2025_01/model/external_brand.py +2 -8
  37. criteo_api_retailmedia_v2025_01/model/external_line_item_bid_multipliers_v2.py +4 -0
  38. criteo_api_retailmedia_v2025_01/model/external_line_item_page_v2.py +3 -3
  39. criteo_api_retailmedia_v2025_01/model/external_preferred_line_item_v2.py +4 -0
  40. criteo_api_retailmedia_v2025_01/model/external_retail_media_account.py +19 -25
  41. criteo_api_retailmedia_v2025_01/model/external_retail_media_brand_account_creation.py +9 -15
  42. criteo_api_retailmedia_v2025_01/model/external_retail_media_brands.py +12 -12
  43. criteo_api_retailmedia_v2025_01/model/external_retail_media_seller.py +15 -13
  44. criteo_api_retailmedia_v2025_01/model/external_retail_media_seller_account_creation.py +20 -21
  45. criteo_api_retailmedia_v2025_01/model/external_retailer.py +6 -11
  46. criteo_api_retailmedia_v2025_01/model/files_variable_value.py +1 -1
  47. criteo_api_retailmedia_v2025_01/model/files_variables_specification.py +1 -1
  48. criteo_api_retailmedia_v2025_01/model/grant_consent_model.py +3 -3
  49. criteo_api_retailmedia_v2025_01/model/grant_consent_model_value_resource.py +3 -3
  50. criteo_api_retailmedia_v2025_01/model/json_api_body_with_id_of_int64_and_account_and_account.py +1 -8
  51. criteo_api_retailmedia_v2025_01/model/json_api_body_with_id_of_int64_and_brand_and_brand.py +1 -8
  52. criteo_api_retailmedia_v2025_01/model/json_api_body_with_id_of_int64_and_line_item_bid_multipliers_v2_and_line_item_bid_multipliers_v2.py +2 -8
  53. criteo_api_retailmedia_v2025_01/model/json_api_body_with_id_of_int64_and_retailer_and_retailer.py +1 -8
  54. criteo_api_retailmedia_v2025_01/model/json_api_page_response_of_account.py +7 -14
  55. criteo_api_retailmedia_v2025_01/model/json_api_page_response_of_brand.py +7 -14
  56. criteo_api_retailmedia_v2025_01/model/json_api_page_response_of_retailer.py +7 -14
  57. criteo_api_retailmedia_v2025_01/model/keyword_data_model.py +6 -6
  58. criteo_api_retailmedia_v2025_01/model/keywords.py +12 -14
  59. criteo_api_retailmedia_v2025_01/model/keywords_model.py +1 -1
  60. criteo_api_retailmedia_v2025_01/model/keywords_model_resource.py +1 -1
  61. criteo_api_retailmedia_v2025_01/model/line_item_budget_overrides.py +1 -1
  62. criteo_api_retailmedia_v2025_01/model/line_item_product_status.py +2 -1
  63. criteo_api_retailmedia_v2025_01/model/nillable_string.py +1 -1
  64. criteo_api_retailmedia_v2025_01/model/page_metadata.py +7 -13
  65. criteo_api_retailmedia_v2025_01/model/product_metadata.py +1 -1
  66. criteo_api_retailmedia_v2025_01/model/promoted_product.py +1 -1
  67. criteo_api_retailmedia_v2025_01/model/promoted_product_resource_collection_input.py +3 -3
  68. criteo_api_retailmedia_v2025_01/model/recommended_keywords_result.py +1 -1
  69. criteo_api_retailmedia_v2025_01/model/resource_of_add_funds_to_balance_v2.py +6 -6
  70. criteo_api_retailmedia_v2025_01/model/resource_of_auction_line_item_update_model.py +6 -6
  71. criteo_api_retailmedia_v2025_01/model/resource_of_balance_response_v2.py +1 -1
  72. criteo_api_retailmedia_v2025_01/model/resource_of_change_dates_of_balance_v2.py +6 -6
  73. criteo_api_retailmedia_v2025_01/model/resource_of_create_balance_v2.py +6 -6
  74. criteo_api_retailmedia_v2025_01/model/resource_of_preferred_line_item_update_model_v2.py +6 -6
  75. criteo_api_retailmedia_v2025_01/model/resource_of_update_balance_model_v2.py +6 -6
  76. criteo_api_retailmedia_v2025_01/model/retail_media_contactlist_amendment.py +3 -3
  77. criteo_api_retailmedia_v2025_01/model/retail_media_contactlist_amendment_attributes.py +3 -4
  78. criteo_api_retailmedia_v2025_01/model/rm_algebra_node_v1.py +1 -1
  79. criteo_api_retailmedia_v2025_01/model/rm_audience_entity_v1.py +1 -1
  80. criteo_api_retailmedia_v2025_01/model/rm_audience_search_entity_v1.py +9 -9
  81. criteo_api_retailmedia_v2025_01/model/rm_audience_search_entity_v1_resource.py +3 -3
  82. criteo_api_retailmedia_v2025_01/model/rm_audience_search_metadata_v1.py +1 -1
  83. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_bulk_create_input_v1.py +3 -3
  84. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_bulk_delete_input_v1.py +3 -3
  85. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_bulk_update_input_v1.py +3 -3
  86. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_create_entity_v1.py +3 -3
  87. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_create_entity_v1_resource.py +3 -3
  88. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_delete_entity_v1_resource.py +6 -6
  89. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_entity_v1.py +1 -1
  90. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_id_entity_v1_resource.py +3 -3
  91. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_search_entity_v1.py +9 -10
  92. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_search_entity_v1_resource.py +3 -3
  93. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_search_metadata_v1.py +1 -1
  94. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_update_entity_v1.py +3 -3
  95. criteo_api_retailmedia_v2025_01/model/rm_audience_segment_update_entity_v1_resource.py +6 -6
  96. criteo_api_retailmedia_v2025_01/model/rm_contact_list_create_v1.py +3 -4
  97. criteo_api_retailmedia_v2025_01/model/rm_contact_list_statistics_entity_v1.py +1 -1
  98. criteo_api_retailmedia_v2025_01/model/rm_contact_list_statistics_entity_v1_resource.py +1 -1
  99. criteo_api_retailmedia_v2025_01/model/rm_contact_list_v1.py +1 -1
  100. criteo_api_retailmedia_v2025_01/model/rm_events_v1.py +1 -1
  101. criteo_api_retailmedia_v2025_01/model/sdk_api_rest_common_problem.py +296 -0
  102. criteo_api_retailmedia_v2025_01/model/seller_catalog_request.py +3 -3
  103. criteo_api_retailmedia_v2025_01/model/status_response.py +1 -1
  104. criteo_api_retailmedia_v2025_01/model/status_response_resource.py +1 -1
  105. criteo_api_retailmedia_v2025_01/model/template.py +1 -1
  106. criteo_api_retailmedia_v2025_01/model/value_resource_collection_input_of_retail_media_seller.py +5 -12
  107. criteo_api_retailmedia_v2025_01/model/value_resource_collection_outcome_of_retail_media_seller.py +10 -17
  108. criteo_api_retailmedia_v2025_01/model/value_resource_input_of_retail_media_brand_account_creation.py +1 -8
  109. criteo_api_retailmedia_v2025_01/model/value_resource_input_of_retail_media_brands.py +2 -9
  110. criteo_api_retailmedia_v2025_01/model/value_resource_input_of_retail_media_seller_account_creation.py +2 -9
  111. criteo_api_retailmedia_v2025_01/model/value_resource_of_campaign_budget_overrides.py +1 -1
  112. criteo_api_retailmedia_v2025_01/model/value_resource_of_line_item_budget_overrides.py +1 -1
  113. criteo_api_retailmedia_v2025_01/model/value_resource_of_recommended_keywords_result.py +1 -1
  114. criteo_api_retailmedia_v2025_01/model/value_resource_of_retail_media_brand_account_creation.py +3 -10
  115. criteo_api_retailmedia_v2025_01/model/value_resource_of_retail_media_brands.py +3 -10
  116. criteo_api_retailmedia_v2025_01/model/value_resource_of_retail_media_seller.py +4 -11
  117. criteo_api_retailmedia_v2025_01/model/value_resource_of_retail_media_seller_account_creation.py +4 -11
  118. criteo_api_retailmedia_v2025_01/model/value_resource_outcome_of_retail_media_brands.py +10 -17
  119. criteo_api_retailmedia_v2025_01/model/video_variable_value.py +1 -1
  120. criteo_api_retailmedia_v2025_01/models/__init__.py +1 -0
  121. {criteo_api_retailmedia_sdk-2025.1.0.250217.dist-info → criteo_api_retailmedia_sdk-2025.1.0.250317.dist-info}/top_level.txt +0 -0
@@ -82,8 +82,8 @@ class RmAudienceSegmentDeleteEntityV1Resource(ModelNormal):
82
82
  """
83
83
  return {
84
84
  'attributes': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), # noqa: E501
85
- 'id': (str, none_type,), # noqa: E501
86
- 'type': (str, none_type,), # noqa: E501
85
+ 'id': (str,), # noqa: E501
86
+ 'type': (str,), # noqa: E501
87
87
  }
88
88
 
89
89
  @cached_property
@@ -139,8 +139,8 @@ class RmAudienceSegmentDeleteEntityV1Resource(ModelNormal):
139
139
  through its discriminator because we passed in
140
140
  _visited_composed_classes = (Animal,)
141
141
  attributes ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): Segment to delete. [optional] # noqa: E501
142
- id (str, none_type): Id of the entity. [optional] # noqa: E501
143
- type (str, none_type): [optional] # noqa: E501
142
+ id (str): Id of the entity. [optional] # noqa: E501
143
+ type (str): [optional] # noqa: E501
144
144
  """
145
145
 
146
146
  _check_type = kwargs.pop('_check_type', True)
@@ -227,8 +227,8 @@ class RmAudienceSegmentDeleteEntityV1Resource(ModelNormal):
227
227
  through its discriminator because we passed in
228
228
  _visited_composed_classes = (Animal,)
229
229
  attributes ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): Segment to delete. [optional] # noqa: E501
230
- id (str, none_type): Id of the entity. [optional] # noqa: E501
231
- type (str, none_type): [optional] # noqa: E501
230
+ id (str): Id of the entity. [optional] # noqa: E501
231
+ type (str): [optional] # noqa: E501
232
232
  """
233
233
 
234
234
  _check_type = kwargs.pop('_check_type', True)
@@ -87,7 +87,7 @@ class RmAudienceSegmentEntityV1(ModelNormal):
87
87
  lazy_import()
88
88
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
89
89
 
90
- _nullable = False
90
+ _nullable = True
91
91
 
92
92
  @cached_property
93
93
  def openapi_types():
@@ -81,7 +81,7 @@ class RmAudienceSegmentIdEntityV1Resource(ModelNormal):
81
81
  and the value is attribute type.
82
82
  """
83
83
  return {
84
- 'attributes': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), # noqa: E501
84
+ 'attributes': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type,), # noqa: E501
85
85
  'id': (str, none_type,), # noqa: E501
86
86
  'type': (str, none_type,), # noqa: E501
87
87
  }
@@ -138,7 +138,7 @@ class RmAudienceSegmentIdEntityV1Resource(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
- attributes ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): Audience Segment entity only with its ID. [optional] # noqa: E501
141
+ attributes ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type): Audience Segment entity only with its ID. [optional] # noqa: E501
142
142
  id (str, none_type): Id of the entity. [optional] # noqa: E501
143
143
  type (str, none_type): [optional] # noqa: E501
144
144
  """
@@ -226,7 +226,7 @@ class RmAudienceSegmentIdEntityV1Resource(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
- attributes ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): Audience Segment entity only with its ID. [optional] # noqa: E501
229
+ attributes ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}, none_type): Audience Segment entity only with its ID. [optional] # noqa: E501
230
230
  id (str, none_type): Id of the entity. [optional] # noqa: E501
231
231
  type (str, none_type): [optional] # noqa: E501
232
232
  """
@@ -56,7 +56,6 @@ class RmAudienceSegmentSearchEntityV1(ModelNormal):
56
56
 
57
57
  allowed_values = {
58
58
  ('audience_segment_types',): {
59
- 'None': None,
60
59
  'UNKNOWN': "Unknown",
61
60
  'CONTACTLIST': "ContactList",
62
61
  'EVENTS': "Events",
@@ -87,9 +86,9 @@ class RmAudienceSegmentSearchEntityV1(ModelNormal):
87
86
  and the value is attribute type.
88
87
  """
89
88
  return {
90
- 'audience_segment_ids': ([str], none_type,), # noqa: E501
91
- 'retailer_ids': ([str], none_type,), # noqa: E501
92
- 'audience_segment_types': ([str], none_type,), # noqa: E501
89
+ 'audience_segment_ids': ([str],), # noqa: E501
90
+ 'retailer_ids': ([str],), # noqa: E501
91
+ 'audience_segment_types': ([str],), # noqa: E501
93
92
  }
94
93
 
95
94
  @cached_property
@@ -144,9 +143,9 @@ class RmAudienceSegmentSearchEntityV1(ModelNormal):
144
143
  Animal class but this time we won't travel
145
144
  through its discriminator because we passed in
146
145
  _visited_composed_classes = (Animal,)
147
- audience_segment_ids ([str], none_type): List of segment ids. [optional] # noqa: E501
148
- retailer_ids ([str], none_type): List of retailer ids. [optional] # noqa: E501
149
- audience_segment_types ([str], none_type): List of segment types. [optional] # noqa: E501
146
+ audience_segment_ids ([str]): List of segment ids. [optional] # noqa: E501
147
+ retailer_ids ([str]): List of retailer ids. [optional] # noqa: E501
148
+ audience_segment_types ([str]): List of segment types. [optional] # noqa: E501
150
149
  """
151
150
 
152
151
  _check_type = kwargs.pop('_check_type', True)
@@ -232,9 +231,9 @@ class RmAudienceSegmentSearchEntityV1(ModelNormal):
232
231
  Animal class but this time we won't travel
233
232
  through its discriminator because we passed in
234
233
  _visited_composed_classes = (Animal,)
235
- audience_segment_ids ([str], none_type): List of segment ids. [optional] # noqa: E501
236
- retailer_ids ([str], none_type): List of retailer ids. [optional] # noqa: E501
237
- audience_segment_types ([str], none_type): List of segment types. [optional] # noqa: E501
234
+ audience_segment_ids ([str]): List of segment ids. [optional] # noqa: E501
235
+ retailer_ids ([str]): List of retailer ids. [optional] # noqa: E501
236
+ audience_segment_types ([str]): List of segment types. [optional] # noqa: E501
238
237
  """
239
238
 
240
239
  _check_type = kwargs.pop('_check_type', True)
@@ -87,7 +87,7 @@ class RmAudienceSegmentSearchEntityV1Resource(ModelNormal):
87
87
  """
88
88
  lazy_import()
89
89
  return {
90
- 'type': (str, none_type,), # noqa: E501
90
+ 'type': (str,), # noqa: E501
91
91
  'attributes': (RmAudienceSegmentSearchEntityV1,), # noqa: E501
92
92
  }
93
93
 
@@ -142,7 +142,7 @@ class RmAudienceSegmentSearchEntityV1Resource(ModelNormal):
142
142
  Animal class but this time we won't travel
143
143
  through its discriminator because we passed in
144
144
  _visited_composed_classes = (Animal,)
145
- type (str, none_type): [optional] # noqa: E501
145
+ type (str): [optional] # noqa: E501
146
146
  attributes (RmAudienceSegmentSearchEntityV1): [optional] # noqa: E501
147
147
  """
148
148
 
@@ -229,7 +229,7 @@ class RmAudienceSegmentSearchEntityV1Resource(ModelNormal):
229
229
  Animal class but this time we won't travel
230
230
  through its discriminator because we passed in
231
231
  _visited_composed_classes = (Animal,)
232
- type (str, none_type): [optional] # noqa: E501
232
+ type (str): [optional] # noqa: E501
233
233
  attributes (RmAudienceSegmentSearchEntityV1): [optional] # noqa: E501
234
234
  """
235
235
 
@@ -68,7 +68,7 @@ class RmAudienceSegmentSearchMetadataV1(ModelNormal):
68
68
  """
69
69
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
70
70
 
71
- _nullable = False
71
+ _nullable = True
72
72
 
73
73
  @cached_property
74
74
  def openapi_types():
@@ -87,7 +87,7 @@ class RmAudienceSegmentUpdateEntityV1(ModelNormal):
87
87
  """
88
88
  lazy_import()
89
89
  return {
90
- 'name': (str, none_type,), # noqa: E501
90
+ 'name': (str,), # noqa: E501
91
91
  'description': (NillableString,), # noqa: E501
92
92
  'contact_list': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},), # noqa: E501
93
93
  }
@@ -144,7 +144,7 @@ class RmAudienceSegmentUpdateEntityV1(ModelNormal):
144
144
  Animal class but this time we won't travel
145
145
  through its discriminator because we passed in
146
146
  _visited_composed_classes = (Animal,)
147
- name (str, none_type): Name of the segment. [optional] # noqa: E501
147
+ name (str): Name of the segment. [optional] # noqa: E501
148
148
  description (NillableString): [optional] # noqa: E501
149
149
  contact_list ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): Settings to update the contact list of the segment. [optional] # noqa: E501
150
150
  """
@@ -232,7 +232,7 @@ class RmAudienceSegmentUpdateEntityV1(ModelNormal):
232
232
  Animal class but this time we won't travel
233
233
  through its discriminator because we passed in
234
234
  _visited_composed_classes = (Animal,)
235
- name (str, none_type): Name of the segment. [optional] # noqa: E501
235
+ name (str): Name of the segment. [optional] # noqa: E501
236
236
  description (NillableString): [optional] # noqa: E501
237
237
  contact_list ({str: (bool, date, datetime, dict, float, int, list, str, none_type)}): Settings to update the contact list of the segment. [optional] # noqa: E501
238
238
  """
@@ -88,8 +88,8 @@ class RmAudienceSegmentUpdateEntityV1Resource(ModelNormal):
88
88
  lazy_import()
89
89
  return {
90
90
  'attributes': (RmAudienceSegmentUpdateEntityV1,), # noqa: E501
91
- 'id': (str, none_type,), # noqa: E501
92
- 'type': (str, none_type,), # noqa: E501
91
+ 'id': (str,), # noqa: E501
92
+ 'type': (str,), # noqa: E501
93
93
  }
94
94
 
95
95
  @cached_property
@@ -145,8 +145,8 @@ class RmAudienceSegmentUpdateEntityV1Resource(ModelNormal):
145
145
  through its discriminator because we passed in
146
146
  _visited_composed_classes = (Animal,)
147
147
  attributes (RmAudienceSegmentUpdateEntityV1): [optional] # noqa: E501
148
- id (str, none_type): Id of the entity. [optional] # noqa: E501
149
- type (str, none_type): [optional] # noqa: E501
148
+ id (str): Id of the entity. [optional] # noqa: E501
149
+ type (str): [optional] # noqa: E501
150
150
  """
151
151
 
152
152
  _check_type = kwargs.pop('_check_type', True)
@@ -233,8 +233,8 @@ class RmAudienceSegmentUpdateEntityV1Resource(ModelNormal):
233
233
  through its discriminator because we passed in
234
234
  _visited_composed_classes = (Animal,)
235
235
  attributes (RmAudienceSegmentUpdateEntityV1): [optional] # noqa: E501
236
- id (str, none_type): Id of the entity. [optional] # noqa: E501
237
- type (str, none_type): [optional] # noqa: E501
236
+ id (str): Id of the entity. [optional] # noqa: E501
237
+ type (str): [optional] # noqa: E501
238
238
  """
239
239
 
240
240
  _check_type = kwargs.pop('_check_type', True)
@@ -56,7 +56,6 @@ class RmContactListCreateV1(ModelNormal):
56
56
 
57
57
  allowed_values = {
58
58
  ('identifier_type',): {
59
- 'None': None,
60
59
  'EMAIL': "Email",
61
60
  'USERIDENTIFIER': "UserIdentifier",
62
61
  'IDENTITYLINK': "IdentityLink",
@@ -88,7 +87,7 @@ class RmContactListCreateV1(ModelNormal):
88
87
  and the value is attribute type.
89
88
  """
90
89
  return {
91
- 'identifier_type': (str, none_type,), # noqa: E501
90
+ 'identifier_type': (str,), # noqa: E501
92
91
  }
93
92
 
94
93
  @cached_property
@@ -141,7 +140,7 @@ class RmContactListCreateV1(ModelNormal):
141
140
  Animal class but this time we won't travel
142
141
  through its discriminator because we passed in
143
142
  _visited_composed_classes = (Animal,)
144
- identifier_type (str, none_type): Indicates contact list type. [optional] # noqa: E501
143
+ identifier_type (str): Indicates contact list type. [optional] # noqa: E501
145
144
  """
146
145
 
147
146
  _check_type = kwargs.pop('_check_type', True)
@@ -227,7 +226,7 @@ class RmContactListCreateV1(ModelNormal):
227
226
  Animal class but this time we won't travel
228
227
  through its discriminator because we passed in
229
228
  _visited_composed_classes = (Animal,)
230
- identifier_type (str, none_type): Indicates contact list type. [optional] # noqa: E501
229
+ identifier_type (str): Indicates contact list type. [optional] # noqa: E501
231
230
  """
232
231
 
233
232
  _check_type = kwargs.pop('_check_type', True)
@@ -68,7 +68,7 @@ class RmContactListStatisticsEntityV1(ModelNormal):
68
68
  """
69
69
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
70
70
 
71
- _nullable = False
71
+ _nullable = True
72
72
 
73
73
  @cached_property
74
74
  def openapi_types():
@@ -73,7 +73,7 @@ class RmContactListStatisticsEntityV1Resource(ModelNormal):
73
73
  lazy_import()
74
74
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
75
75
 
76
- _nullable = False
76
+ _nullable = True
77
77
 
78
78
  @cached_property
79
79
  def openapi_types():
@@ -83,7 +83,7 @@ class RmContactListV1(ModelNormal):
83
83
  """
84
84
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
85
85
 
86
- _nullable = False
86
+ _nullable = True
87
87
 
88
88
  @cached_property
89
89
  def openapi_types():
@@ -88,7 +88,7 @@ class RmEventsV1(ModelNormal):
88
88
  """
89
89
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
90
90
 
91
- _nullable = False
91
+ _nullable = True
92
92
 
93
93
  @cached_property
94
94
  def openapi_types():
@@ -0,0 +1,296 @@
1
+ """
2
+ Criteo API
3
+
4
+ Criteo API - RetailMedia # noqa: E501
5
+
6
+ The version of the OpenAPI document: 2025-01
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_v2025_01.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_v2025_01.exceptions import ApiAttributeError
30
+
31
+
32
+
33
+ class SdkApiRestCommonProblem(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
+ ('type',): {
59
+ 'None': None,
60
+ 'UNKNOWN': "unknown",
61
+ 'ACCESS-CONTROL': "access-control",
62
+ 'AUTHENTICATION': "authentication",
63
+ 'AUTHORIZATION': "authorization",
64
+ 'AVAILABILITY': "availability",
65
+ 'DEPRECATION': "deprecation",
66
+ 'QUOTA': "quota",
67
+ 'VALIDATION': "validation",
68
+ },
69
+ }
70
+
71
+ validations = {
72
+ }
73
+
74
+ additional_properties_type = None
75
+
76
+ _nullable = False
77
+
78
+ @cached_property
79
+ def openapi_types():
80
+ """
81
+ This must be a method because a model may have properties that are
82
+ of type self, this must run after the class is loaded
83
+
84
+ Returns
85
+ openapi_types (dict): The key is attribute name
86
+ and the value is attribute type.
87
+ """
88
+ return {
89
+ 'trace_id': (str, none_type,), # noqa: E501
90
+ 'type': (str, none_type,), # noqa: E501
91
+ 'code': (str, none_type,), # noqa: E501
92
+ 'instance': (str, none_type,), # noqa: E501
93
+ 'title': (str, none_type,), # noqa: E501
94
+ 'detail': (str, none_type,), # noqa: E501
95
+ 'source': ({str: (str,)}, none_type,), # noqa: E501
96
+ 'stack_trace': (str, none_type,), # noqa: E501
97
+ }
98
+
99
+ @cached_property
100
+ def discriminator():
101
+ return None
102
+
103
+
104
+ attribute_map = {
105
+ 'trace_id': 'traceId', # noqa: E501
106
+ 'type': 'type', # noqa: E501
107
+ 'code': 'code', # noqa: E501
108
+ 'instance': 'instance', # noqa: E501
109
+ 'title': 'title', # noqa: E501
110
+ 'detail': 'detail', # noqa: E501
111
+ 'source': 'source', # noqa: E501
112
+ 'stack_trace': 'stackTrace', # 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
+ """SdkApiRestCommonProblem - 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
+ trace_id (str, none_type): The request correlation ID this problem comes from.. [optional] # noqa: E501
157
+ type (str, none_type): The problem's category.. [optional] # noqa: E501
158
+ code (str, none_type): A machine-readable error code, expressed as a string value.. [optional] # noqa: E501
159
+ instance (str, none_type): A URI that identifies the specific occurrence of the problem.. [optional] # noqa: E501
160
+ title (str, none_type): A short human-readable description of the problem type.. [optional] # noqa: E501
161
+ detail (str, none_type): A human-readable explanation specific to this occurrence of the problem.. [optional] # noqa: E501
162
+ source ({str: (str,)}, none_type): A machine-readable structure to reference to the exact location(s) causing the error(s).. [optional] # noqa: E501
163
+ stack_trace (str, none_type): . [optional] # noqa: E501
164
+ """
165
+
166
+ _check_type = kwargs.pop('_check_type', True)
167
+ _spec_property_naming = kwargs.pop('_spec_property_naming', True)
168
+ _path_to_item = kwargs.pop('_path_to_item', ())
169
+ _configuration = kwargs.pop('_configuration', None)
170
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
171
+
172
+ self = super(OpenApiModel, cls).__new__(cls)
173
+
174
+ if args:
175
+ for arg in args:
176
+ if isinstance(arg, dict):
177
+ kwargs.update(arg)
178
+ else:
179
+ raise ApiTypeError(
180
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
181
+ args,
182
+ self.__class__.__name__,
183
+ ),
184
+ path_to_item=_path_to_item,
185
+ valid_classes=(self.__class__,),
186
+ )
187
+
188
+ self._data_store = {}
189
+ self._check_type = _check_type
190
+ self._spec_property_naming = _spec_property_naming
191
+ self._path_to_item = _path_to_item
192
+ self._configuration = _configuration
193
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
194
+
195
+ for var_name, var_value in kwargs.items():
196
+ if var_name not in self.attribute_map and \
197
+ self._configuration is not None and \
198
+ self._configuration.discard_unknown_keys and \
199
+ self.additional_properties_type is None:
200
+ # discard variable.
201
+ continue
202
+ setattr(self, var_name, var_value)
203
+ return self
204
+
205
+ required_properties = set([
206
+ '_data_store',
207
+ '_check_type',
208
+ '_spec_property_naming',
209
+ '_path_to_item',
210
+ '_configuration',
211
+ '_visited_composed_classes',
212
+ ])
213
+
214
+ @convert_js_args_to_python_args
215
+ def __init__(self, *args, **kwargs): # noqa: E501
216
+ """SdkApiRestCommonProblem - a model defined in OpenAPI
217
+
218
+ Keyword Args:
219
+ _check_type (bool): if True, values for parameters in openapi_types
220
+ will be type checked and a TypeError will be
221
+ raised if the wrong type is input.
222
+ Defaults to True
223
+ _path_to_item (tuple/list): This is a list of keys or values to
224
+ drill down to the model in received_data
225
+ when deserializing a response
226
+ _spec_property_naming (bool): True if the variable names in the input data
227
+ are serialized names, as specified in the OpenAPI document.
228
+ False if the variable names in the input data
229
+ are pythonic names, e.g. snake case (default)
230
+ _configuration (Configuration): the instance to use when
231
+ deserializing a file_type parameter.
232
+ If passed, type conversion is attempted
233
+ If omitted no type conversion is done.
234
+ _visited_composed_classes (tuple): This stores a tuple of
235
+ classes that we have traveled through so that
236
+ if we see that class again we will not use its
237
+ discriminator again.
238
+ When traveling through a discriminator, the
239
+ composed schema that is
240
+ is traveled through is added to this set.
241
+ For example if Animal has a discriminator
242
+ petType and we pass in "Dog", and the class Dog
243
+ allOf includes Animal, we move through Animal
244
+ once using the discriminator, and pick Dog.
245
+ Then in Dog, we will make an instance of the
246
+ Animal class but this time we won't travel
247
+ through its discriminator because we passed in
248
+ _visited_composed_classes = (Animal,)
249
+ trace_id (str, none_type): The request correlation ID this problem comes from.. [optional] # noqa: E501
250
+ type (str, none_type): The problem's category.. [optional] # noqa: E501
251
+ code (str, none_type): A machine-readable error code, expressed as a string value.. [optional] # noqa: E501
252
+ instance (str, none_type): A URI that identifies the specific occurrence of the problem.. [optional] # noqa: E501
253
+ title (str, none_type): A short human-readable description of the problem type.. [optional] # noqa: E501
254
+ detail (str, none_type): A human-readable explanation specific to this occurrence of the problem.. [optional] # noqa: E501
255
+ source ({str: (str,)}, none_type): A machine-readable structure to reference to the exact location(s) causing the error(s).. [optional] # noqa: E501
256
+ stack_trace (str, none_type): . [optional] # noqa: E501
257
+ """
258
+
259
+ _check_type = kwargs.pop('_check_type', True)
260
+ _spec_property_naming = kwargs.pop('_spec_property_naming', False)
261
+ _path_to_item = kwargs.pop('_path_to_item', ())
262
+ _configuration = kwargs.pop('_configuration', None)
263
+ _visited_composed_classes = kwargs.pop('_visited_composed_classes', ())
264
+
265
+ if args:
266
+ for arg in args:
267
+ if isinstance(arg, dict):
268
+ kwargs.update(arg)
269
+ else:
270
+ raise ApiTypeError(
271
+ "Invalid positional arguments=%s passed to %s. Remove those invalid positional arguments." % (
272
+ args,
273
+ self.__class__.__name__,
274
+ ),
275
+ path_to_item=_path_to_item,
276
+ valid_classes=(self.__class__,),
277
+ )
278
+
279
+ self._data_store = {}
280
+ self._check_type = _check_type
281
+ self._spec_property_naming = _spec_property_naming
282
+ self._path_to_item = _path_to_item
283
+ self._configuration = _configuration
284
+ self._visited_composed_classes = _visited_composed_classes + (self.__class__,)
285
+
286
+ for var_name, var_value in kwargs.items():
287
+ if var_name not in self.attribute_map and \
288
+ self._configuration is not None and \
289
+ self._configuration.discard_unknown_keys and \
290
+ self.additional_properties_type is None:
291
+ # discard variable.
292
+ continue
293
+ setattr(self, var_name, var_value)
294
+ if var_name in self.read_only_vars:
295
+ raise ApiAttributeError(f"`{var_name}` is a read-only attribute. Use `from_openapi_data` to instantiate "
296
+ f"class with read only attributes.")
@@ -87,7 +87,7 @@ class SellerCatalogRequest(ModelNormal):
87
87
  """
88
88
  lazy_import()
89
89
  return {
90
- 'sellers': ([SellerIdentifier], none_type,), # noqa: E501
90
+ 'sellers': ([SellerIdentifier],), # noqa: E501
91
91
  }
92
92
 
93
93
  @cached_property
@@ -140,7 +140,7 @@ class SellerCatalogRequest(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
- sellers ([SellerIdentifier], none_type): A list of sellers to restict the catalog to.. [optional] # noqa: E501
143
+ sellers ([SellerIdentifier]): A list of sellers to restict the catalog to.. [optional] # noqa: E501
144
144
  """
145
145
 
146
146
  _check_type = kwargs.pop('_check_type', True)
@@ -226,7 +226,7 @@ class SellerCatalogRequest(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
- sellers ([SellerIdentifier], none_type): A list of sellers to restict the catalog to.. [optional] # noqa: E501
229
+ sellers ([SellerIdentifier]): A list of sellers to restict the catalog to.. [optional] # noqa: E501
230
230
  """
231
231
 
232
232
  _check_type = kwargs.pop('_check_type', True)
@@ -75,7 +75,7 @@ class StatusResponse(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():
@@ -73,7 +73,7 @@ class StatusResponseResource(ModelNormal):
73
73
  lazy_import()
74
74
  return (bool, date, datetime, dict, float, int, list, str, none_type,) # noqa: E501
75
75
 
76
- _nullable = False
76
+ _nullable = True
77
77
 
78
78
  @cached_property
79
79
  def openapi_types():
@@ -78,7 +78,7 @@ class Template(ModelNormal):
78
78
 
79
79
  additional_properties_type = None
80
80
 
81
- _nullable = False
81
+ _nullable = True
82
82
 
83
83
  @cached_property
84
84
  def openapi_types():